Термины в программировании
Основы программирования, термины и понятия!
Приветствую всех сегодня рассмотрим основные понятия, термины в программировании, так как без понимания их не возможно будет выучить ни один из языков программирования:
- ОЗУ (Оперативное запоминающее устройство) – RAM(RandomAccessMemory, память с произвольным доступом) – энергозависимая память в которой хранятся данные и команды
необходимые процессору для выполнения им операций. - CPU (Centralprocessingunit – ЦПУ, центральное обрабатывающее устройство) – исполнитель машинных инструкций (кода программ).
- ALU (Arithmeticandlogicunit – АЛУ, Арифметико-логическое устройство) – блок процессора, который служит для выполнения арифметических и логических преобразований над данными.
- Система счисления – символический метод записи чисел.
- Позиционная система счисления (позиционная нумерация) – система счисления, в которой значение каждого числового знака (цифры) в записи числа зависит от его позиции (разряда).
- Двоичная система счисления — это позиционная система счисления с основанием 2. В этой системе счисления числа записываются с помощью двух символов (0 и 1).
- Шестнадцатеричная система счисления — позиционная система счисления по целочисленному основанию 16. Обычно в качестве шестнадцатеричных цифр используются десятичные цифры от 0 до 9 и латинские буквы от A до F, то есть (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F).
- Дополнительный код (two’s complement, или twos-complement) — способ представления знаковых (положительных и отрицательных) целых чисел.
- Бит (Bit — binary digit) – единица измерения информации — один двоичный разряд в двоичной системе счисления. Впервые слово bit, было использовано Клодом Шенноном для логарифмической единицы информации в 1948 г. В вычислительной технике, слово «бит» часто применяется в значении «двоичный разряд».
- Тетрада (от греч. tetrás, родительный падеж tetrádos — четвёрка), совокупность 4 бит.
- Байт (byte) — единица хранения и обработки цифровой информации. В настольных вычислительных системах байт считается равным восьми битам, в этом случае он может принимать одно из 256 (2 8 ) различных значений.
- Разрядность процесора— способность одновременно обрабатывать какое-то количество бит. Часто, разрядностью компьютера называют разрядность его машинного слова.
- Машинное слово — машинно-зависимая и платформенно зависимая величина, измеряемая в битах или байтах (тритах или трайтах – машина Сетунь-70), равная разрядности регистров процессора и/или разрядности шины данных. Для 32-битных процессоров x86: исторически машинным словом считается 16 бит, реально -32 бита. Это правило распространяется на двойные слова (32 бита – 64 бита), учетверенные слова (64 бита – 128 бит) и параграф (128 бит – 256 бит).
- Килобайт (KB): 1 KB = 1024B= 2 10 B, где B — байт
- Мегабайт (MB): 1 MB = 1024 KB=1024 2 B= 2 20 B= 1048576 B
- Гигабайт (GB): 1 GB = 1024 MB=1024 3 B= 2 30 B= 1 073 741 824 B
- Терабайт (TB): 1 TB = 1024 GB=1024 4 B= 2 40 B = 1 099 511 627 776 B
- Вещественное число или действительное число (от лат. realis — действительный) — в информатике — тип данных, содержащий числа, записанные с десятичной точкой и/или с десятичным порядком.
- Плавающая запятая -форма представления действительных чисел, в которой число хранится в форме мантиссы и показателя степени. При этом число с плавающей запятой имеет фиксированную относительную точность и изменяющуюся абсолютную. Наиболее часто используемое представление утверждено в стандарте IEEE 754. Реализация математических операций с числами с плавающей запятой в вычислительных системах может быть как аппаратная, так и программная.
- Число одинарной точности (англ. Single precision) — компьютерный формат представления чисел, занимающий в памяти одну ячейку (машинное слово; в случае 32-битного компьютера-32 бита или 4 байта). Как правило, обозначает формат числа с плавающей точкой стандарта IEEE 754.Числа одинарной точности с плавающей точкой обеспечивают относительную точность 7-8 десятичных цифр и масштабы в диапазоне от 10 38 до примерно 10 38 Числа одинарной/двойной/расширенной точности (32, 64 и 80 бит) поддерживаются на аппаратном уровне сопроцессором (FPU).
- Число двойной точности (англ. Double precision) — компьютерный формат представления чисел, занимающий в памяти две последовательных ячейки (компьютерных слова; в случае 32- битного компьютера — 64 бита или 8 байт). Как правило, обозначает формат числа с плавающей запятой стандарта IEEE 754. Числа двойной точности с плавающей точкой обеспечивают относительную точность около 16 десятичных цифр и масштабы в диапазоне от 10 308 до примерно 10 308 . В компьютерах, которые имеют 64-разрядные с плавающей точкой арифметические единицы, большинство численных вычислений осуществляется в двойной точности с плавающей точкой, поскольку использование чисел одинарной точности обеспечивает почти такую же производительность.
- Математический сопроцессор — сопроцессор для расширения командного множества центрального процессора и обеспечивающий его функциональностью модуля операций с плавающей запятой, для процессоров, не имеющих интегрированного модуля.
- Модуль операций с плавающей запятой (или с плавающей точкой; англ. floating point unit (FPU)) часть процессора для выполнения математических операций над вещественными числами.
- Переменная (Variable) – это область памяти, которая хранит в себе некоторое значение, которое можно изменить.
- Инициализация переменной – это первое присвоение ей значения. Все последующие присвоения новых значений этой переменной, не считаются инициализацией. Правило: При создании переменной обязательно указать ее тип, а при дальнейшем ее использовании, тип указывать не нужно.
- В языке C# нет базовых типов — все типы реализуются как классы библиотеки NET Framework, но в нем есть набор встроенных типов, которые рассматриваются как псевдонимы (алиасы–aliases, короткие и упрощенные формы записи) типов из пространства имен System.
- Псевдоним — альтернативный тип, который можно использовать вместо системных типов. Например: decimal — это псевдоним типа Decimal, а тип int — псевдоним типа Int32. В случае использования псевдонимов, как типов для переменных можно не использовать подключение пространства имен System (т.е. не писать using System;)
- C# является строго типизированным языком. Каждая переменная должна иметь четко определенный тип. При создании переменной, используйте название-псевдоним, когда это возможно, а не полное имя типа.
- Идентификатор — последовательность символов, которые используется для именования членов, таких как переменные, методы, параметры, а также множество других программных конструкций, которые будут рассмотрены позже. Иными словами: идентификатор переменной – это имя этой переменной.
Спецификация языка C # рекомендует придерживаться определенных правил (casing conventions) при создании идентификаторов (выбора имен для ваших переменных, методов ит.д).
К таким правилам можно отнести:
- Pascal casing – каждое слово в идентификаторе начинается с большой буквы;
- Camel casing – каждое слово, исключая первое, в идентификаторе начинается с большой буквы;
- Uppercase – идентификатор состоит из букв написанных в верхнем регистре (все буквы большие)
- Технически, имена переменных могут начинаться со знака «_» — нижнее подчеркивание и с любого алфавитного символа. (Имена не могут начинаться с цифр и других символов.)
- Для именования локальных переменных в C#, рекомендуется использовать соглашение Camel Casing. Чтобы выделить слова в идентификаторе, первые буквы каждого слова (кроме первого)сделайте заглавными. Например: myAge, myName.
- Язык C# чувствительный к регистру (case sensitivity) Например: MyName и myName – это разные имена.
- Не используйте символы подчеркивания, дефисы и любые другие неалфавитно-цифровые символы для разделения слов в идентификаторе.
- Не используйте венгерскую нотацию. Суть венгерской нотации сводится к тому, что имена идентификаторов предваряются заранее оговорёнными префиксами, состоящими из одного или нескольких символов. Например: string sClientName; int iSize; Имена переменных должны быть понятны и передавать смысл каждого элемента. В редких случаях, если у идентификатора нет точного семантического значения, используйте общие названия. Например: value, item. Если вы используете псевдонимы для переменных, и ваше приложение будет выполняться с применением других .NET поддерживаемых языков, желательно ограничиться лишь CLS — совместимыми типами, к которым можно отнести все типы за исключением беззнаковых целочисленных типов и sbyte.
- Символы Юникода — это 16-разрядные символы, которые используются для представления большинства известных письменных языков мира.
Когда часто приходиться работать с двоичным кодом или шестнадцатеричным, не всегда удобно использовать калькулятор, а уж тем более все это запоминать. Для этого выкладываю таблицу где можно посмотреть изменения представления в различных системах исчислениях.
Словарь программиста
АДРЕС — число, обозначающее номер ячейки памяти с данными или командой. Как правило, записывается в шестнадцатиричном коде.
АДРЕСНОЕ ПРОСТРАНСТВО МИКРОПРОЦЕССОРА — совокупность адресов внутренних регистров и запоминающих устройств, регистров внешних устройств (ввода/вывода, памяти). Содержимого регистра адреса микропроцессора достаточно для обращения к каждому из названных устройств. Объем адресного пространства микропроцессора определяется разрядностью его шины адреса. У микропроцессора КР580ВМ80А она шестнадцатиразрядная, следовательно, адресное пространство составляет 2 16 ячеек памяти.
АДРЕСАЦИЯ — обращение микропроцессора к заданной области памяти или внешнему устройству.
АДАПТЕР — устройство для согласования входных и выходных сигналов разных устройств, чаще всего используется для согласования устройства ввода/вывода с магнитофоном, телефонной или линиями связи.
АССЕМБЛЕР — этот термин употребляется в двух значениях. В одним случае это — символьный язык программирования, каждому оператору которого соответствует одна операция ЭВ. В другом — программа, преобразующая исходную, написанную на языке АССЕМБЛЕР, в команды, «понятные» микропроцессору.
АЛГОРИТМ — последовательность действий, которая приводит к решению поставленной задачи. Алгоритмы для ЭВМ удобнее составлять в виде блок-схемы.
БАЙТ — единица информации, равная восьми битам. В микропроцессоре KP580BM80A, имеющем 8-разрядную шину данных, обработка ведется байтами. В 16-разрядных микропроцессорах можно обрабатывать сразу два байта.
БИТ — минимальная единица измерения объема информации. Может принимать только два значения «1» или «0». Форма записи — двоичная.
ДРАЙВЕР — обслуживающая программа, обеспечивающая управление, данными при вводе и выводе. Например, драйвер кассетного магнитофона — это программа записи и чтения данных с линейного выхода магнитофона.
ДАННЫЕ — информация, представленная в такой форме, которую можно распознать автоматическому устройству или человеку.
ДЕКРЕМЕНТ — величина, на которую автоматически уменьшается другая величина.
ДЕШИФРАТОР — преобразователь кода в управляющие сигналы.
ДИРЕКТИВА — предложение, обычно в форме приказа, в языках программирования.
ДИСКЕТА — небольшой гибкий пластиковый диск с нанесенным на его поверхность гибким слоем магнитного вещества. Предназначен для долговременного хранения программ и данных.
ДИСКОВОД — механизм, приводящий дискету во вращение при считывании или записи информации.
ДИСПЛЕЙ — устройство для отображения данных. В нашем первом модуле «ЮТ-88» используется простейший шестиразрядный алфавитно-цифровой дисплей на светодиодных индикаторах.
ЗАГРУЗЧИК — программа, размещающая готовую к выполнению рабочую программу непосредственно в ОЗУ пользователя.
ЗУ — запоминающее устройство, фиксирующее информацию таким образом, чтобы она могла быть в любой момент воспроизведена.
ВНЕШНЕЕ ЗУ — запоминающее устройство, размещающееся вне микропроцессора.
ИНДИКАТОР — устройство для визуальною или акустического отображения информации. Например, семисегментный светодиодный индикатор, пьезоэлемент.
ИНТЕРПРЕТАТОР — специальная программа, которая последовательно преобразует по смыслу каждый отдельный оператор программы и исполняет его.
ИНТЕРФЕЙС — система подключения к портам ввода/вывода внешних устройств — клавиатуры, дисплея, графопостроителя, магнитофона, дисковода.
КАНАЛ — совокупность технических средств для передачи данных от одного устройства к другому.
КЛАВИАТУРА — набор клавиш для ручного ввода данных в ЭВМ.
КОД — данные, представленные в определенном виде.
КОМАНДА — управляющий сигнал, вызывающий выполнение определенной операции в исполнительном устройстве. Арифметическая команда — команда, определяющая арифметическую операцию. Команда арифметического сдвига — команда сдвига во всех позициях, кроме знаковой. Команда ассемблера — команда, управляющая ходом работы программы ассемблера. Команда безусловного перехода — команда, изменяющая порядок естественной выборки команд. Команда ввода/вывода — команда микропроцессора, вызывающая выполнение программы ввода/вывода информации. Логическая команда — машинная команда, определяющая логическую операцию. Команда логического сдвига — команда сдвига во всех позициях ячейки. Машинная команда — команда, входящая в состав системы команд ЭВМ. Команда останова — машинная команда, вызывающая прекращение выборки и исполнения команд в программе. Команда перехода — команда, вызывающая изменения в естественной последовательности выборки команд. Прерываемая команда — машинная команда, и ходе исполнения которой допустимо прерывание. Команда процессора — машинная команда, определяющая действие микропроцессора. Регистровая команда — машинная команда, операнды которой находятся в регистрах микропроцессора. Команда сдвига — машинная команда, вызывающая перемещение всех значений разрядов ячейки или части этих значений на заданное количество разрядов. Команда условного перехода — машинная команда перехода по одному из указанных адресов в зависимости от условия, заданного и этой же команде.
КОММЕНТАРИЙ — фрагмент программы, предназначенный для восприятия ее человеком. При вводе в ЭВМ игнорируется.
КОМПИЛЯТОР — программа, переводящая программу, написанную на каком-либо языке программирования, на другой язык.
КОНСТАНТА — постоянная величина.
КОНТРОЛЛЕР — устройство для управления внешними устройствами.
КОНТРОЛЛЕР ПРОГРАММИРУЕМЫЙ — специализированная микроЭВМ, предназначенная для решения узкого круга задач.
ЛИСТИНГ — вывод данных на печатающие устройства; распечатанные данные.
МАГИСТРАЛЬ — канал передачи информации, обеспечивающий обмен ею между устройствами.
МАССИВ — в программировании: матрица элементов одинаковою типа.
МИКРОЭВМ — вычислительное устройство на основе микропроцессора или портативная ЭВМ для индивидуального использования.
МИНИ-ЭВМ — ЭВМ массового использования (персональный компьютер). Отличительные особенности: высокая надежность, невысокая стоимость, развитое программное обеспечение.
МОДЕМ (модулятор — демодулятор) ТОНАЛЬНЫЙ — устройство для подключения информационного входа ЭВМ к телефонной линии для обмена информацией с другими ЭВМ и банками данных.
МОНИТОР — специальная программа, входящая в состав системного программного обеспечения микроЭВМ. осуществляющая взаимодействие микропроцессора с клавиатурой, дисплеем, ОЗУ. Она управляет вводом и исполнением других программ. В директивы МОНИТОРА входят также функции отладки, запуска и исполнения программ пользователя.
МУЛЬТИПЛЕКСИРОВАНИЕ — разбивка одного канала данных на два или несколько. Для этой цели обычно используются специальные микросхемы-мультиплексоры.
НАКОПИТЕЛЬ — устройство для записи и хранения информации. Накопитель может быть выполнен на базе кассетного магнитофона, гибкого магнитного диска (НГМД) и так далее.
ОБРАЩЕНИЕ к памяти — запрос на чтение из памяти, запись в память или поиск в памяти заданной информации.
ОБЪЕКТНЫЙ КОД — программа в машинном коде.
ОПЕРАТИВНОЕ ЗАПОМИНАЮЩЕЕ УСТРОЙСТВО (ОЗУ) — устройство, предназначенное дли кратковременного хранения информации, работающее как на запись, так и на чтение данных. Микросхемы ОЗУ бывают двух типов. Микросхемы статического ОЗУ, как правило, имеют небольшой объем (до 1 Кбайта). Информация в них сохраняется все время, пока на них подается напряжение питания. Микросхемы динамического ОЗУ имеют значительно больший объем памяти (до 64 Кбайт), но для сохранения записанной в них информации на специальный вход микросхемы необходимо постоянно подавать сигналы регенерации (восстановления) содержимого ОЗУ. При прекращении поступления сигналов регенерации все данные из памяти стираются. В большинстве микроЭВМ используются микросхемы динамического ОЗУ, например К565РУ5. Считывание информации из ОЗУ занимает доли секунды.
ОПЕРАНД — символы, которые определяют место операции и памяти.
ОПЕРАТОР — символы, которыми закодирована определенная последовательность выполнения команд.
ОПЕРАЦИЯ — последовательность действий ЭВМ.
ОПЕРАЦИОННАЯ СИСТЕМА — система программного обеспечения, расширяющая возможности ЭВМ, повышающая эффективность использования прикладных программ и облегчающая работу пользователя.
ПОДПРОГРАММА — вспомогательная программа, облегчающая и ускоряющая процесс обработки данных или работу другой, более сложной программы.
ПЕРЕХОД — передача управления.
ПРЕРЫВАНИЕ — прекращение выборки и исполнения команд программы, которая в настоящее время выполняется. При этом по соответствующему сигналу можно продолжить выполнение программы с того места, в котором она была прервана. Прерывание может осуществляться как по команде извне, так и программным способом.
РЕГИСТР — блок памяти малого объема, встроенный в микропроцессор, к которому он адресуется независимо от шины адреса. Емкость регистра определяется длиной машинного слова, а время доступа к регистру значительно меньше, чем к ОЗУ. Адресный регистр — в нем хранятся данные адреса. Базовый регистр — в нем хранятся базовые адреса. Индексный регистр — регистр для хранения индекса для адресов. Регистр команд — предназначен для оперативного хранения текущей выполняемой команды.
РЕДАКТОР — специальная программа для составления и корректировки программ пользователя с учетом языка программирования и архитектуры ЭВМ.
РЕПРОГРАММИРУЕМОЕ ПОСТОЯННОЕ ЗАПОМИНАЮЩЕЕ УСТРОЙСТВО — микросхема памяти, предназначенная для долговременного хранения записанной информации. При необходимости записанную информацию можно стереть и записать новую. Чаще всего в радиолюбительской практике встречаются микросхемы РПЗУ КР573РФ2, стереть информацию из которых можно ультрафиолетовым излучением.
СБРОС — приведение в исходное состояние.
СЛОВО МАШИННОЕ — данные, соответствующие одной ячейке оперативной памяти ЭВМ.
СОВМЕСТИМОСТЬ — свойство одной или нескольких моделей ЭВМ одинаково исполнять программы.
СОСТОЯНИЕ — распределение сигналов микропроцессора. Состояние ожидания — в этом состоянии микропроцессора команды не обрабатываются, однако разрешенные прерывания могут происходить. Состояние прерывания — состояние микропроцессора от момента прерывания до момента сброса управляющего сигнала прерывания. Состояние останова — переход микропроцессора в состояние, при котором прекращается автоматическая выборка команд из памяти и их исполнение.
ТРАНСЛЯТОР — программа, переводящая исходную программу и объектный (машинный) код.
СУММА КОНТРОЛЬНАЯ — заложенный в программу определенный набор символов, позволяющий проконтролировать правильность ввода программы пользователем. Вычисляется контрольная сумма после ввода программы в ОЗУ.
ТАКТ — промежуток времени между двумя последовательными сигналами синхронизации работы блоков микропроцессора. Каждая команда выполняется за один или несколько тактов. В некоторых случаях под тактом подразумевают промежуток времени между сменой состояний микропроцессора.
ТЕСТ — программа для проверки работоспособности ЭВМ в целом и ее отдельных узлов.
ТРАНСЛЯТОР — специальная программа преобразования программ на некотором языке в программу на другом языке с сохранением ее функций.
ФАЙЛ — набор данных.
ФЛАГ — одноразрядный индикатор.
ЯЗЫК ПРОГРАММИРОВАНИЯ — искусственный язык для представления программ в виде, «понятном» ЭВМ. Основные языки персональных компьютеров — БЕЙСИК, ФОКАЛ, ПАСКАЛЬ, АДА и другие.
10 программистских терминов на понятном языке
Все термины, приведенные ниже, уже раскрывали множество раз миллионами разных слов. Но у нас нет ни времени, ни возможностей обработать такое количество информации. По этой причине я поставила перед собой задачу раскрыть смысл каждого термина как можно проще и доступнее.
1. Иммутабельность (неизменяемый объект)
Иммутабельность — это то же самое, что и неизменяемый объект. Если состояние является immutable — это означает, что оно не может быть изменено после создания.
В JavaScript, const — это способ частично объявить immutable (неизменяемое) значение. Вы по-прежнему сможете изменить значение const, но для этого потребуется больше усилий, чем для let и var.
2. Класс
Класс — это структурированный блок кода, написанный определенным образом, чтобы обозначить набор или целую категорию вещей.
Люди используют классы, чтобы создавать больше вещей. Они создают новые классы, присваивают им значения и используют методы (также известные как функции) для работы с экземплярами класса.
3. Прототип
Он выглядит как класс. Пахнет как класс. Зачастую, люди принимают его за класс. Но это не класс.
Прототипом является сам экземпляр класса, но скопированный (replicated). То есть прототипом текущего объекта называют некий другой объект, из которого текущий объект черпает недостающие методы и свойства.
Если мы хотим, чтобы у всех экземпляров какого-то класса был некий метод, мы не должны добавлять этот метод к каждому экземпляру отдельно — достаточно добавить этот метод прототипу.
4. Функции первого класса
Функции первого класса рассматриваются как объекты.
Они могут быть переданы другим функциям и их можно вернуть из функций. Также данные функции могут быть назначены переменным.
5. Рекурсия
Рекурсия — это когда алгоритм или функция вызывает сама себя.
Например, цикл for является рекурсией. Обязательным условием рекурсии является условие, которое его завершает. Если его не указать, функция будет вызываться до тех пор, пока программа не выйдет из строя.
6. Инкапсуляция
Инкапсуляция — это механизм, который ограждает группу методов или данных от внешнего вмешательства или неправильного использования.
Инкапсуляция хранит код и данные внутри так называемого “черного ящика”.
7. Полиморфизм
Полиморфизм — это способность программы идентично использовать объекты с одинаковым интерфейсом без информации о конкретном типе этого объекта.
Например, объект является полиморфным, потому что он blueprint (шаблон проектного документа), в котором уникальные переменные можно задать для нескольких его экземпляров.
Кошки полиморфны. Каждая кошка остается кошкой, но у каждой из них разный внешний вид и характер. Однако броня штурмовиков из Звездных Войн не полиморфна, поскольку каждый экземпляр абсолютно одинаковый.
8. Наследование
Та же концепция, что и при наследования имущества или денег.
Ребенок наследует все, что есть у родителя/родителей. Наследование — это процесс, посредством которого ребенок наследует свойства и значения родителя.
В большинстве языков программирования наследование течет вовнутрь — это означает, что поток наследования идет от родителя к потомку, а не наоборот.
9. Тип данных
JavaScript — это слабо типизированный язык. Это означает, что мы просто создаем переменную, как пустой контейнер, а затем уже помещаем в него значение, которое может быть абсолютно любого типа. Это делается через var, let и const.
Java же, напротив, строго типизированный язык, потому что при создании переменной вы не просто задаете ей имя, а обязательно указываете, какой тип информации вы собираетесь хранить в этой переменной — boolean, char, short, int, long, float, double и т.д.
10. Живучесть (persistence)
Живучесть — это способность объекта сохранять работоспособность в условиях всех видов вредных воздействий.
Например, объявленная переменная и экземпляр объекта обладают живучестью, так как при их повторном вызове они будут на месте.
Заключительные слова
Если вы что-то не можете объяснить шестилетнему ребёнку, вы сами этого не понимаете — Альберт Эйнштейн
Со временем, все вышеперечисленные концепции обрастали все большим и большим количеством слов, дабы распространить и развить основную идею. В этом нет ничего плохого, но новичков в программировании это может отпугнуть и шокировать. Я знаю о чем говорю, потому что пять лет назад была на их месте.
Я надеюсь, что, сократив количество слов, смогла облегчить вам жизнь.
Словарь программиста. Сленг, который должен знать каждый кодер
FRANKENSTEIN
- 18 Дек 2017
- 892
- 537
Примечание: Если вы заметили, что какое-то слово пропустили или неверно истолковали — сообщите об этом в комментариях, буду очень признателен.
Айди (от англ. «identificator») – идентификатор.
Айпи (от англ. «Internet Protocol») – уникальный адрес. Каждый компьютер имеет свой IP, который предоставляет ему провайдер.
Айтишник – программист, специалист в информационных технологиях (ИТ). С английского аббревиатура IT (Information Technology) читается как «Ай Ти».
Апдейт (от англ «update») – обновление.
Аутсорс (от англ. «outsourcing») – передача предприятием/компанией выполнение определенной работы не своим работникам, а другим (фрилансерам или работникам других компаний). Например, вместо того, чтобы иметь в штате на постоянной основе бухгалтера — его можно нанять по аутсорсинге. Выходит дешевле, удобнее и нередко компетентнее.
Баг – ошибка в программе, коде. Произошло от английского слова «bug» – жук. (не путать с глюком)
Батник – командный файл с расширением .bat. Используется для работы с командной строкой в Windows.
Биткоин (от англ. «bitcoin») – криптовалюта, электронная валюта, поколение цифровых денег, которые никем не контролируются и существуют только в Интернете.
Битый – неработающий. Например, битые ссылки – ссылки, которые ведут в никуда, Error 404.
Блокчейн (от англ. «blockchain») – система учета проводимых транзакций с криптовалютой.
Буржунет – зарубежная часть Интернета. Сайты из Европы и США.
Бэкап (от англ. «backup») – резервное копирование. Создание копии проекта, сайта, данных, чтобы в случаи непредвиденных обстоятельств/сбоя можно было вернуть всю систему в прежнее состояние. Хорошей практикой является регулярное обновление бэкапов и их хранение в нескольких местах (не только в рабочем компьютере).
Бэкенд (от англ. «back-end») – разработка «внутренней части» сайтов, программ, приложений. Работа с сервером. Более подробно здесь.
Валидный (от англ. «valid») — корректный, действительный, который соответствует требованиям/условиям/правилам.
Варез (от англ. «warez») — любая интеллектуальная собственность или программное обеспечение, которое свободно распространяется в сети Интернет, нарушая при этом права правообладателя.
Варезник — сайт, который распространяет варез (пиратское программное обеспечение, пиратские фильмы, музыку и т.д.). Обычно, термин «варезник» применяется к файлообменникам.
Вебинар (от англ. «web based seminar») — это семинар, презентация или лекция, которая проходит онлайн, в прямой трансляции в Интернете. Ну или запись этой трансляции.
Виндоус — операционная система Windows.
Воркшоп (от англ. «workshop») — обучающее мероприятие для работников из определенной области (программистов, фотографов, дизайнеров и т.д.). Есть главный «ведущий» работник, который и проводит обучение других. Есть задание и все работники, вместе с «ведущим», его выполняют, при этом общаясь и помогая друг другу.
Галера – компания/предприятие/организация, в которой трудится программист. В основном галера применяется к компаниям, где практикуется плохое отношение к работникам.
Геймдев (от англ. «game development») – разработка/создание игр.
Гик (от англ. «geek») – человек, который хорошо разбирается в определенном направлении, является фанатиком своего дела. Сейчас гиками распространено называть программистов.
Глюк – непонятный сбой, торможение процессов в программе или игре.
Говнокод – плохой код, в котором сложно разобраться и который сложно поддерживать/модифицировать/изменять.
Говнокодер – человек, который пишет говнокод.
Гребцы – работники галеры (компании).
Гуглить – искать информацию в поисковике Google.
Дебажить (от англ «debug, debugging») – искать и исправлять ошибки в программе.
Девайс (от англ. «device») – любое компактное устройство (смартфон, планшет, умные часы и т.д.).
Девелопер (от англ. «developer») – разработчик.
Девелопмент (от англ. «development») – разработка чего-либо: программ, приложений, игр и т.д.
Дедлайн (от англ. «deadline») – крайний срок выполнения или сдачи проекта/задания/работы.
Дезигнер (от англ. «designer») – дизайнер.
Дефолтный (по дефолту, от англ. «default») – тот, что используется по умолчанию, стандартный.
Джуниор (от англ. «Junior Developer», Джун, Июнь) – младший программист, который не имеет опыта или он у него небольшой. Как правило, джуниорами называют всех новичков, которые начали работать в IT-индустрии.
Задрот – человек, который слишком много времени уделяет играм, программированию или любому другому делу. Человек, который живет в своем «виртуальном» мире и плохо приспособлен к реальной жизни.
Запилить (запилил) – загрузить или создать что-либо, вынести на всеобщее обозрение. Например, «запилил видосик» — значит, загрузил видео в YouTube или другой видеохостинг.
Кейс (от англ. «case») – реальная ситуация/случай, которые произошли с автором.
Коворкинг (от англ. «coworking») – место для организации труда специалистами одной или сразу нескольких сфер деятельности. Т.е. современный арендованный офис для работы специалистов. Сейчас распространено сдавать в аренду коворкинги, при этом арендодатель не является начальником людей, которые работают в его коворкинге.
Кодер (от англ. «coder») – программист.
Копипаст (от англ. «copy/paste») – скопировать и вставить. «Copy» — скопировать, «Paste» — вставить.
Костыль – исправление серьезных багов/дыр/ошибок без должного исправления целой системы. Т.е. когда что-то сломалось, и нужно исправить на скорую руку в кротчайшие сроки.
Кракозябры – набор непонятных символов, бессмыслица. Возникают в результате неправильной кодировки. Иногда можно наблюдать на сайтах, выглядят следующим образом: «РџСЂРёРІРµС‚! Меня».
Кряк (таблетка, от англ. «crack») – специальная программа или дополнение для взлома разного программного обеспечения. В основном используется для превращения лицензионной (платной) программы в бесплатную.
Ламер (от англ. «lamer») – неопытный пользователь, человек, который не разбирается в чем-то, но думает что он продвинутый. Не путать с чайником.
Левел (от англ. «level») – уровень.
Ликбез – ликвидация безграмотности. Обучение азам, основам.
Линукс (Linux) – бесплатная операционная система, которую используют программисты или те, кто не хочет покупать лицензионный Windows.
Линуксоид – человек, который использует операционную систему Линукс (Linux).
Лог (от англ. «log») – журнал, в котором записываются в хронологическом порядке все действия в программе. Например: время возникновения ошибок, сбоев, действия пользователей и т.д.
Локалка – локальная сеть. Сеть, которая состоит из нескольких компьютеров, соединенных кабелями.
Локейшн (от англ. «location») – месторасположение.
Майнинг (от англ. «mining») – добыча чего-либо. Сейчас майнинг ассоциируется с добычей криптовалюты, путем выполнения компьютером сложных математических операций.
Манагер (от англ. «manager») – менеджер, руководитель.
Мануал (от англ. «manual») – руководство, инструкция.
Мидл (от англ. «Middle Developer») – уже «средний программист», имеет опыт, но еще не дорос до выполнения очень сложных заданий.
Митап (от англ. «meetup») – собрание/встреча специалистов определенной сферы деятельности для обмена опытом, в образовательных целях или просто для общения в неформальной обстановке.
Нативный (от англ. «native») – родной. Часто используют словосочетание «нативный код» — код, написанный разработчиками.
Нетворкинг (от англ. «networking») — окружение специалистов определенной сферы деятельности, где можно решать проблемы или какие-то задачи, используя связи между людьми из этого нетворкинга.
Нуб (нубчик, нубас, нубарь, нубак) — новичок или человек у которого ничего не получается, или он не знает как правильно делать. Неопытный, новенький.
Овертайм (от англ. «overtime») – дополнительное время после окончания рабочего дня для выполнения заданий руководства/начальства.
Опенсорс (от англ. «open source software») – программное обеспечение/софт с открытым исходным кодом, которое может использовать/дополнять/изменять любой желающий. В большинстве случаев это программное обеспечение является некоммерческим.
Откат – возвращение на исходную позицию из бэкапа.
Оффтоп (оффтопик, от англ. «off topic») – любое сообщение не по теме разговора/дискуссии на определенном ресурсе (чаще всего, на форуме).
Патч – дополнение или обновление, которое исправляет ошибки/баги/глюки. От анлийского «patch» — пластырь. Применение патча к программе называют «пропатчиванием».
Песочница (англ. аналог — «sandbox») – специальная область (среда) для безопасного выполнения программ. Раздел «Песочница» на сайте обозначает категорию для новичков и их постов (своеобразный фильтр для новоприбывших).
ПО — программное обеспечение.
Подкаст (от англ. «podcast») — видео или аудио уроки, рассказы на определенную тему, чаще всего образовательного характера. Сейчас очень распространены подкасты-интервью или подкасты TED.
Профан – человек, который не имеет опыта в определенной сфере, не разбирается в чем-то.
Редизайн (от англ. «redesign») – обновление/модернизация системы не только внешне, но и внутренне.
Релиз (от англ. «release») – представление публике готовый продукт, выпуск его на всеобщее обозрение. Например: релиз программы – выпуск программы для старта продаж, релиз песни – выпуск песни.
Рут (от англ. «root») права – права, которые позволяют пользователю иметь расширенные возможности для контроля системой/менять внутренние настройки.
Сабж (сабжект, сабдж, топик, от англ. «subject») – тема дискуссии между людьми на определенном ресурсе (чаще всего, на форуме). Тема начала разговора.
Саппорт (от англ. «support») – служба поддержки.
Сеньор (сеньйор, сениор, от англ. «Senior Developer») – опытный программист. Выполняет задания любой сложности, может находиться на руководящих позициях.
Скилл (от англ. «skill») – умение хорошо что-то делать.
Скрин (скриншот, от англ. «screenshot») – снимок экрана.
Слоупок – медленный, тормоз. Произошло от названия розового покемона «Слоупок».
Софт (от англ. «software») – программное обеспечение, программа.
Тимлид (тимлидер, от англ. «team leader») – ведущий разработчик, лидер команды девелоперов.
Трейни (от англ. «trainee») – стажер, работник, который не дотягивает до уровня Junior-специалиста.
ТС (топик стартер, от англ. «topic starter») – человек, который начал обсуждение определенной темы на определенном ресурсе (чаще всего, на форуме).
Туториал (от англ. «tutorial») – уроки, обучение чему-либо, учебник. Например, туториал по JavaScript – уроки, обучение Javascript.
Тян – подруга, девушка.
Фаервол (от англ. «firewall») – антивирус, который защищает компьютер от вирусов. С английского означает «горящая стена» — здесь следует понимать стену, которая защищает другие здания от распространения пожара. Другое название — Brandmauer (в переводе с немецкого тоже означает «горящая стена»).
Фидбек (от англ. «feedback») – обратная связь. Например, фидбек от пользователей — обратная связь от пользователей. Под обратной связью подразумеваются любые упоминания или отзывы о бренде/компании/сайте.
Фиксить (фикс, от англ. «fix») – исправлять ошибки.
Фича (от англ. « feature») – особенность, уникальная возможность, свойство. Популярный пример: когда программа производит неожиданные результаты, либо неверные, и которые произошли по вине программиста, то сам программист говорит – «Это не баг, а фича». Т.е. уникальная возможность программы.
Флейм (флэйминг, от англ. «flame») – спор ради спора, когда пользователи начинают общение не по теме разговора/дискуссии и переходят на личности и взаимные оскорбления.
Фреймворк (от англ. « framework») – программный продукт/система/платформа, основная цель которой — облегчение/упрощение создания и поддержки разного рода проектов, приложений, сайтов и прочего.
Фронтенд (от англ. « front-end») – разработка «внешнего вида» сайта, клиентская часть. Используются HTML, CSS и JavaScript.
Хакатон (от англ. «hack marathon») — мероприятие, на которое собираются специалисты из разных отраслей разработки программного обеспечения (программисты, дизайнеры, тестеры) для разработки определенного решения, приложения или программы. Т.е. марафоны программирования, на которые собираются программисты попрограммировать.
Холивар (от англ. «holy war») – споры между людьми, которые имеют противоположные взгляды и пытаются навязать их друг другу.
Чайник — новичок, неопытный пользователь.
ЧСВ — Чувство Собственной Важности.
Эникей (от англ. «any key») – любая кнопка. Часто, при установке или загрузке чего-либо, нас просят “Press any key”. Отсюда и слово.
Эникейщик – синоним чайника, неопытного пользователя, который не знает, что ему нужно делать – ищет кнопку «эникей». Либо IT-специалист невысокого ранга, который занимается несложными заданиями (установка Windows, про граммного обеспечения, антивирусов и т.д.).
Юзер (юзверь, от англ. «user») – пользователь.
Специальные термины, используемые в программировании
У программистов имеется профессиональный жаргон, с помощью которого они могут обмениваться мыслями более лаконично. Мы сейчас познакомимся с той частью специальной терминологии, которая общепризнанна и широко применяется программистами при обсуждении языка и программ как в устной, так и письменной речи. Вот некоторые термины.
Регистровая зависимость — зависимость выражений языка или их частей (например, имен переменных, функций и т. д.) от того, строчными или прописными буквами они написаны. Так, в регистрозависимых языках переменные myvar, myvar и myVar различны, а в регистронезависимых — это одна и та же переменная. Например, язык JavaScript полностью регистрозависимый, а РНР — регистрозависимый, но не в полной мере.
Идентификатор (identifier) — имя переменной, функции, объекта и др.; идентификатор не должен быть ключевым или зарезервированным словом. Программист обычно выбирает идентификаторы по своему усмотрению, но в соответствии с определенными правилами. В большинстве случаев идентификаторы состоят из печатных символов (букв, цифр и символа подчеркивания), причем идентификатор не должен начинаться с цифры и содержать символы пробела. Примеры: х , myvar , userName , иsеr_name , var12 .
Ключевое слово (keyword) — слово, являющееся частью языка. Ключевые слова недопустимы в качестве идентификаторов Примеры: function , if , while , var .
Зарезервированное слово (reserved word) — слово, которое не рекомендуется использовать в качестве идентификатора. Зарезервированные слова могут оказаться ключевыми в более поздних версиях языка.
Оператор (statement) — команда, предписывающая компьютеру выполнить некоторое действие; операторы обычно приводят к изменению состояния окружения (например, переменной или определения). Примеры: х = х + 5 , function myfunc (x, у)
Литерал (literal) — значение, содержащееся непосредственно в тексте программы. Примеры: 5 , «Привет всем!» , [3, 7, 9, 25] , false .
Лексема (token) — наименьшая и неделимая единица языка. Примеры: все идентификаторы, ключевые слова, а также литералы типа 5.2 и «Привет всем! «.
Знак операции (operator) — лексемы, представляющие собой встроенные операторы языка. Примеры: = , + , — , * , / (оператор присваивания и арифметические операторы). Операции нередко называют операторами.
Выражение (expression) — группа лексем (обычно литералов и идентификаторов) в сочетании со знаками операций, для которых можно вычислить значение. Примеры: 3.141 , «Привет!» , (2 + х) * 5 , myfunc() , x = у + myfunc () .
Все эти определения нелегко запомнить. Но со временем, при чтении литературы по программированию и обсуждении программ с коллегами и друзьями, вы научитесь правильно употреблять перечисленные термины. Однако поначалу можно вполне обойтись и только такими понятиями, как идентификатор (имя), ключевое слово, значение и оператор (операция).
Резюме.
Итак, мы рассмотрели наиболее важные понятия, присущие большинству современных языков программирования: переменные, типы данных, массивы, функции, классы и объекты, операторы и выражения. Давайте вспомним их краткие определения.
Переменные — это контейнеры для хранения данных, называемых значениями переменных; переменная имеет имя или идентификатор, чтобы отличить ее от других переменных и обращаться к ней по имени для получения содержащегося в ней значения.
Значения — могут быть различных типов: числового, символьного (строкового), логического и др. Тип — множество допустимых значений — может быть задан явным перечислением элементов либо посредством формулировки некоторого ограничения или правила. Так, например, логический тип данных есть множество из двух элементов (true и false), интерпретируемых как «истина» и «ложь» соответственно. Множество чисел бесконечно и не может быть задано перечислением своих элементов. Поэтому числовой тип определяют неким правилом формирования относящихся к нему элементов: последовательность цифр, перед которой может быть указан знак, а разделителем целой и дробной частей служит точка.
Переменная — принимает значение или, другими словами, в переменную записывается значение с помощью оператора присваивания. Доступ к значению переменной осуществляют по ее имени (идентификатору).
Массив — упорядоченный набор (последовательность данных). Можно сказать, что конкретный массив — это значение составного типа, который также называется массивом.
Функция — это поименованный блок программного кода (тело функции), который можно вызвать для выполнения из основной (внешней по отношению к коду функции) программы.
Класс — описание объекта в виде набора его свойств, которые аналогичны обычным переменным и функциям. Часто свойства-переменные называют просто свойствами, а свойства-функции — методами. С формальной точки зрения класс — это контейнер для хранения данных о свойствах объекта. С помощью специальной функции (конструктора), в программе создается экземпляр класса. Свойства и методы экземпляра класса могут быть доступными из внешней программы.
Операторы — предназначены для задания команд, которые последовательно выполняет компьютер. Выражения содержат один или несколько операторов. Наиболее часто встречается оператор присваивания значения переменной. Для управления ходом вычислений служат условные операторы и циклы. Если бы не эти специальные операторы, программа выполнялась только в одном направлении — сверху вниз, в порядке упоминания выражений в листинге (исходном тексте).
Далее мы рассмотрим эти и другие понятия программирования на примере конкретных языков JavaScript и РНР. Вы увидите, что между ними очень много общего, что позволит вам освоить их одновременно. Тем не менее, между ними есть и существенные различия, которыми нельзя пренебречь. Если вам удастся без особых проблем изучить оба этих языка, то, возможно, вы обретете способность к изучению и других (более сложных) языков программирования, таких как С, Java или Pascal.
Базовые понятия, с которыми вы уже познакомились в общих чертах при изучении конкретных языков или при чтении специальной литературы, могут воплощаться по-разному. Одно дело теория, другое — конкретная реализация в том или ином программном продукте, на той или иной платформе. Не стоит паниковать, обнаружив что-то такое, что не работает у вас. В действительности все программисты преодолевают, так или иначе, возникшие трудности, связанные с особенностями операционных систем, исполнительных систем и приложений.
Если вы, пользователи компьютера или просто читатели, столкнулись с чем-то, что не работает на вашем компьютере, хотя вы и сделали все, что указывалось в рекомендациях, то, скорее всего, дело в мелочах, которые разрешаются легко и просто. Но иногда возможны и более существенные осложнения, устранение которых лучше поручить специалисту-диагносту. Врачи и программисты знают, как по поверхностным (клиническим) симптомам можно судить о далеко идущих внутрь организма причинах неполадок, а также о том, какое, хотя бы в общих чертах, назначить лечение (устранение неполадок или ошибок). Да, все это не просто, но вполне преодолимо со временем, было бы желание.
Post navigation
Добавить комментарий Отменить ответ
Для отправки комментария вам необходимо авторизоваться.