Что такое префикс в программировании
Перейти к содержимому

Что такое префикс в программировании

Префикс (информатика)

В информатике подстрока — это непустая связная часть строки.

Формальное определение

Пусть L=c_0\dots c_<n-1>» width=»» height=»» /> — строка длины <i>n</i> . <br />Любая строка <img decoding=, где 0\le i\le j\le n-1, является подстрокой L длины ji + 1 .
Если i = 0 , то S называется префиксом L длины j + 1 .
Если j = n − 1 , то Sсуффикс L длины ji + 1 .

Пример

С точки зрения информатики строки «кипед», «Вики», «дия» являются подстроками строки «Википедия»; при этом «Вики» — префиксом, а «дия» — суффиксом.

Получение подстроки

Если line — исходная строка, begin — позиция первого символа подстроки, end — позиция последнего символа подстроки, то подстрока subline вычисляется следующим образом:

В языке C

char * subline = (char *)malloc(end — begin + 2);
if (subline == NULL)
<
fprintf(stderr, «ERROR: malloc failed!»);
exit(1);
>
subline[end — begin + 1] = ‘\0’;

В языке python подстрока является слайсом (срезом) (англ. slice ).

В языке

В языке Pascal

SubStr := Copy(SourceStr, StartCharIndex, SubStrLength);

Операции с подстрокой

Помимо простой задачи выделения подстроки из строки по двум индексам существует и более сложная задача поиска индексов, указывающих на заданную подстроку в строке (поиск вхождения подстроки в строку).

См. также

Wikimedia Foundation . 2010 .

Полезное

Смотреть что такое «Префикс (информатика)» в других словарях:

Суффиксное дерево — Суффиксное дерево  бор, содержащий все суффиксы некоторой строки (и только их). Позволяет выяснять, входит ли строка w в исходную строку t, за время O(|w|), где |w|  длина строки w. Содержание 1 Основные определения и описание структуры … Википедия

Дерево суффиксов — Суффиксное дерево способ организации данных (строк), позволяющий выяснять, входит ли строка w в строку t, за время O(|w|), где |w| длина строки w. Содержание 1 Основные определения и описание структуры 2 Свойства суффиксных д … Википедия

Идентификатор цифрового объекта — (также используется словосочетание Цифровой идентификатор объекта, ЦИО, digital object identif … Википедия

Пи-исчисление — исчисление в теоретической информатике   исчисление процессов, изначально разработанное Робином Милнером, Иоахимом Парровом и Дэвидом Уолкером как продолжение работы над исчислением общающихся систем. Целью исчисления является возможность… … Википедия

Франция — (France) Французская Республика, физико географическая характеристика Франции, история Французской республики Символика Франции, государственно политическое устройство Франции, вооружённые силы и полиция Франции, деятельность Франции в НАТО,… … Энциклопедия инвестора

Зализняк, Андрей Анатольевич — Андрей Анатольевич Зализняк А. А. Зализняк во время лекции о берестяных грамотах из раскопок 2008 года Дата рождения … Википедия

Префиксное дерево — Префиксное дерево  абстрактный тип данных (АТД), структура данных, позволяющая хранить ассоциативный массив, ключами которого являются строки. В отличие от б … Википедия

Префиксный код — Эту статью следует викифицировать. Пожалуйста, оформите её согласно правилам оформления статей. Префиксный код в теории кодирования  код со словом переменной длины, имеющий такое св … Википедия

Позиционная система — счисления система счисления, в которой один и тот же числовой знак (цифра) в записи числа имеет различные значения в зависимости от того места (разряда), где он расположен. Изобретение позиционной нумерации, основанной на поместном значении цифр … Википедия

Практическое руководство по именованию классов, функций и переменных

В компьютерном программировании соглашение об именах — набор правил для выбора последовательности символов, которая будет использоваться для идентификаторов, которые обозначают переменные, типы, функции и другие объекты в исходном коде и документации, — «Википедия»

Придумывать названия сложно!

В этой статье мы сосредоточимся на методе именования (P)A/HC/LC для того, чтобы улучшить читаемость кода. Эти рекомендации можно применить к любому языку программирования, в статье для примеров кода используется JavaScript.

Что значит (P)A/HC/LC?

В этой практике используется следующий шаблон для именования функции:

Что обозначает префикс (P)?

Префикс расширяет смысл функции.

Описывает свойство или состояние текущего контекста (обычно — логическое значение).

Указывает, имеет ли текущий контекст определенное значение или состояние (обычно — логическое значение).

Отражает положительный условный оператор (обычно — логическое значение), связанный с определенным действием.

Действие — это сердце функции

Действие — это глагольная часть имени функции. Это самая важная часть в описании того, что делает функция.

Получает доступ к данным немедленно (сокращение от getter для внутренних данных).

Безусловно присваивает переменной со значением A значение B.

Возвращает переменную к её начальному значению или состоянию.

Выполняет запрос данных, для которого требуется время (например, асинхронный запрос).

Удаляет что-то откуда-то.

Например, если у вас есть коллекция выбранных фильтров на странице поиска, удаление одного из них из коллекции — это removeFilter , а не deleteFilter (именно так вы и скажете на английском языке):

Полностью стирает что-то. После операции сущность перестаёт существовать.

Представьте, что вы редактор контента, и есть пост, от которого вы хотите избавиться. Как только вы нажали на кнопку delete-post, CMS выполнила действие deletePost , а не removePost .

Создает новые данные из существующих. Обычно это применимо к строкам, объектам или функциям.

Обработка действия. Часто используется при именовании обратного вызова.

Контекст

Контекст — это область, с которой работает функция.

Функция — это часто действие с чем-то. Важно указать, какова её рабочая область или, по крайней мере, ожидаемый тип данных.

В итоге

Пять принципов именования переменных

В этом разделе мы предложим некоторые правила именования переменных, которые улучшат читаемость кода.

1. Следуйте S-I-D

Имя должно быть коротким (Short), интуитивно понятным (Intuitive) и описательным (Descriptive).

2. Избегайте сокращений

Не используйте сокращения. Обычно они только ухудшают читаемость кода. Найти короткое, описательное имя может быть сложно, но сокращения не могут быть оправданием для того, чтобы этого не делать. Например:

3. Избегайте дублирования контекста

Всегда удаляйте контекст из имени, если это не снижает его читабельность.

4. Отражайте в имени ожидаемый результат

5. Учитывайте единственное/множественное число

Как и префикс, имена переменных могут быть единственного или множественного числа в зависимости от того, имеют ли они одно значение или несколько.

6. Используйте осмысленные и произносимые имена

Что значит «префикс» в языке программирования си?

Префикс — первая часть имени переменной, обычно общая для разных переменных одного типа.

Например:
string strAddress nofollow» href=»http://test/» target=»_blank»>http://test/»;
Здесь «str» — это префикс. Это префикс по типу переменной, str для string, i или n — для int и т. д.
Примерно так делается в соответствии с венгерской нотации.

Возможен еще префикс «по смыслу»:
string rawAnswer = HTTPLibrary::get(«http://service/api.json»);
JSONObject jsonAnswer = JSONLibrary::parse(rawAnswer);
Здесь «raw» означает, что первая переменная содержит «сырой» (необработанный) ответ сервера в виде строки в формате JSON, из нее сложно извлечь значения и этого не нужно делать непосредственно, а затем мы эту строку парсим и во второй переменной у нас лежит модель JSON на базе класса JSONObject, который позволяет извлекать значения.
Применяется в ботах, работающих с API, возвращающих ответ в формате XML/JSON, например, у otvet.mail.ru именно такое API

Иногда это удобно, если правильно применять, позволяет фильтровать список всплывающих подсказок (IntelliSense или подобных) и таким образом быстрее вспоминать полное имя переменной

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *