§2. Переменные. Основы ввода вывода. Имена программ. Комментарии.
Переменные. Основы ввода вывода.
Любая программа обрабатывает какую-либо информацию и результат своей работы должна донести до человека. Информацию, которую обрабатывает программа и доносит до человека, называют данными. Для того, что бы программа могла пользоваться данными необходимо их ввести.
Для того что бы данные можно было воспринять человеку их нужно вывести на какое-либо устройство вывода данных, это монитор, принтер или что-либо другое. Ввести данные можно с устройства ввода данных. В самом распространённом случае этим устройством может быть клавиатура.
Во время работы программы данные хранятся в памяти вычислительной машины (компьютера). Для того что бы программа могла считать данные из нужной ячейки памяти у каждой ячейки есть свой порядковый номер или, как ещё называют, адрес. В языке Pascal в отличие от языков низкого уровня программисту не нужно задумываться об адресах памяти. За него это сделает компилятор. Необходимо просто создать переменную, в которой будет храниться какая-либо информация, число, символ или строка символов.
Павел Воля — О детстве, настоящем имени и Comedy Club
Дать чёткое определение тому, что такое переменная достаточно трудно. Попробую объяснить общими словами. Переменная – это некая субстанция, под которую выделен какой-то кусочек оперативной памяти, и которая имеет какое-то имя. В этом кусочке оперативной памяти может содержаться какая-то информация, которая может быть изменена во время работы программы.
Само название «переменная» как раз и происходит от того, что значение информации может меняться. Обратиться к этой информации можно через имя переменной. В дальнейшем при изучении учебника и выполнении задач, к вам придёт более полное понимание того, что такое переменная. Сейчас особо на этом не зацикливайтесь.
Чтобы создать переменную её необходимо объявить. Для этого перед телом программы (перед словом begin) необходимо создать раздел, называемый разделом объявления переменных. Этот раздел начинается со слова Var, а после которого идёт перечисление переменных и их типов. Как это всё выглядит покажем чуть позже, а сейчас есть смысл остановиться на типах данных, которые будут храниться в переменных.
В компьютере данные хранятся в виде единичек и ноликов. Каждая ячейка памяти может принимать значение либо единички, либо нолика. Для того, что бы хранить в памяти какое-либо число от нуля до одного достаточно иметь лишь одну ячейку памяти, которая будет принимать значения или ноль или единица. Если нам нужно хранить число от нуля до трёх, то нам понадобятся две ячейки памяти.
Тогда для хранения нуля обе ячейки будут иметь значение ноль. Для хранения единицы – первая ячейка будет иметь значения нуль, а вторая единицу. Не будем расписывать весь процесс словами, а для наглядности приведём таблицу:
Источник: www.dvkuklin.ru
Какая профессия подходит вам больше всего? | Личностный тест
Правильные имена для вашего кода
Не важно, пишете ли вы программу только для себя или с вашими исходниками будет работать кто-то ещё, выбор правильных имён – важный этап в написании кода. Грамотные названия сказываются на трёх факторах:
- Информативность. Имена говорят о том, что происходит в коде.
- Изменяемость. Добавить или изменить названия переменных проще при правильной иерархии.
- Безопасность. При внесении изменений вы ничего не упустите и не потеряете.
Для начала давайте разберёмся, каких имен лучше избегать в своём коде.
Плохие названия
Фундаментальный пункт — не используйте имена, запрещённые в языке, на котором вы пишете. Это касается названий базовых типов, классов, операторов. В некоторых языках, например, C++, лучше не пользоваться нижними подчёркиваниями, особенно в начале названий, так как они зарезервированы компилятором. Ну и конечно большинство спецсимволов — табу.
Второй пункт — неинформативные имена. Есть достаточно узкий перечень назначений переменных, где имя не играет роли — например, локальные счётчики. Однако лучше совсем избегать следующих имён:
- состоящих из одной-двух букв;
- созданных с добавлением порядкового числа на конце;
- не имеющие конкретной привязки к области применения.
Переменные с такими именами легко потерять в коде, что снижает читаемость и удобство работы.
Третий вид плохих имён — сокращения и аббревиатуры. С одной стороны, это уже уникальные названия, они легко распознаются глазом, быстро пишутся. С другой — для стороннего читателя ваши сокращения могут оказаться непонятными. Например, вместо VisNam проще написать VisibleName, или придётся каждый раз добавлять комментарии. Важно сохранять баланс между информативностью и длиной.
Иногда можно обойтись популярной аббревиатурой, а иногда будет уместно создать имя длиной в 15−20 символов.
Ну и финальный вид «плохого» — отрицания. При чтении кода разработчику мысленно придётся выполнять двойную работу: вспоминать действительное значение переменной и сопоставлять с отрицаемой. Поэтому количество таких имён надо минимизировать или исключить совсем.
Теперь, когда мы разобрались с неудачными именами для кода, пора поговорить о создании хороших.
Хорошие названия
Правило первое — соответствие уровню абстракции. Это означает, что ваше имя должно быть привязано к окружающему коду, раскрывать свое назначение.
Допустим, у нас есть база данных студентов, куда внесены ФИО, возраст, пол и пр. Нам надо создать функцию, которая бы выводила имена всех студентов с одного курса. Варианты плохих имен: ShowAll (CourseName), DisplayStudents (CourseName), DisStudN (CourseName), ShowStudentsNamesFromCourse (CourseName). Лишь последнее из них обладает требуемой информативностью, но его длина избыточна для столь простой функции.
Вариант удачного имени: ShowStudentsFIO(CourseName). Любой разработчик, который будет читать код, сразу поймёт назначение функции.
Второе правило — создавать уникальные типы, большинство языков это позволяет делать. Например, для задания возраста не нужно использовать int, так как диапазон допустимых значений избыточен. Поэтому мы можем создать новый тип (класс) age, наследовать его от int, ограничить от 0 до 100 и использовать его для соответствующей переменной. Этим мы исключим нежелательные значения и повысим читаемость кода.
Правило три — компактность. Никакой избыточной информации и подробных описаний. К примеру, возьмём название ValueAddedTax — лаконичное и понятное. Но в данном случае более узнаваемой и понятной будет аббревиатура НДС (VAT). Или в описанном выше примере про студентов имя ShowStudentsNamesFromCourse (CourseName) функция содержит ненужную часть «FromCourse», которая является аргументом.
Грамотный выбор имён для будущего кода — операция не менее важная, чем тестирование или отладка. Она позволяет избежать ошибок, повышая читаемость. Перед тем, как приступить к коду, потратьте пару часов на составление списка переменных и их имён. В будущем это время окупится многократно.
Источник: gb.ru
Как задать короткое имя программы?
UPD спасибо сергей кузьмин, ответ оказался в реестре:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionApp Paths
- Вопрос задан более трёх лет назад
- 170 просмотров
Комментировать
Решения вопроса 1
Программист
это имена прграмм путь к которым прописан в переменной path
Ответ написан более трёх лет назад
Нравится 1 7 комментариев
т.е. один из путей в Path должен вести к файлу firefox.exe, я правильно понял?
В общем среди путей в path, я у себя не вижу ни одного, который бы вёл к firefox (хотя данной командой firefox запускается)
Игорь, у меня не запускается 🙂
Возможно у вас в одном из путей прописанных в PATH лежит какой-нибудь батник или ПоШ скрипт с именем firefox, который уже и запускает непосредственно сам firefox.
Поищите по маске firefox.* в каталоге c:windows ну и в других каталогах из PATH. можно поискать. Схема запуска работает достаточно примитивно, тут нет никаких чудес, схема эта была точно такой же еще в DOSе. В никсах, кстати, запуск работает почти так же.
Не помню с какой версии винды появилось разделение на пользовательские и системные переменные окружения.
Итоговая переменная PATH будет включать в себя пути из обоих вариантов.
Из командной строки посмотреть содержимое PATH можно командой:
set PATH
помоему PATH непричем
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionApp Paths
У меня все что там было нашлось через
C:UsersSerguei>help start Starts a separate window to run a specified program or command.
например, положил
c:Program Files (x86)StarDictstardict.exe
в
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionApp Pathsstardict.exedefault
заработало
start stardict
тут же — до этого неработало
сергей кузьмин, во, это то, что нужно, спасибо! (как чувствовал, что в реестре)
Жалко ваш ответ пометить решением нельзя
Игорь Вам спасибо что спросили — я не знал об этой фиче пока не узнал отвечая. надо наверное тул написать с гуем чтобы добавлять эти ключи — напр. на повершеле
Источник: qna.habr.com