Основы программирования от любителя для любителей



Попробую описать свой опыт программирования в домашних условиях, на примере одной программы в стиле треш.
Если вы профессионал в программировании то вам не сюда. Остальным велкам. Будет любительский междусобойчик.

Часть первая. История и интересные факты.


Бейсик был придуман в 1963 году преподавателями Дартмутского Колледжа Джоном Кемени и Томасом Куртцом, и под их руководством был реализован командой студентов колледжа. Со временем, когда стали появляться другие диалекты, этот «изначальный» диалект стали называть Dartmouth BASIC. Синтаксис языка напоминает Fortran, и многие элементы — явные заимствования из него. Язык задумывался для обучения, поэтому его конструкции максимально просты.

Для упрощения оперативного редактирования программы сложилась практика нумеровать строки с шагом 10 — это позволяло практически во всех случаях вставлять новые строки без изменения номеров ранее введённых. Например, чтобы добавить третью строку между строками 20 и 30, нужно было написать строку с номером 25. Типичная строка из программы на Бейсике выглядела так:
10 PRINT «Hello, World!»
Изменять вручную номера уже имеющихся строк было небезопасно, так как номера выполняли роль меток для оператора GOTO

Условный оператор (IF..THEN) изначально имел только одну ветвь — ветвь ELSE в нём отсутствовала и моделировалась с помощью безусловного перехода. Так, в нижеследующей программе выполняется элементарная операция — ввод числа и вывод сообщения «Отрицательное число» или «Положительное число или нуль» в зависимости от его значения:
10 INPUT I
20 IF I >= 0 THEN PRINT «Positive number or null»: GOTO 40
30 PRINT «Negative number»
40 END

Использование функций определяемых пользователем (участков кода, для многократного использования) было возможно двумя способами: определяемые функции и подпрограммы. Подпрограммы не являлись аналогом функций таких языков, как Си или Паскаль, так как не имели имён и не могли принимать и/или возвращать параметры. Параметры и результаты передавались через глобальные переменные.

В некоторых диалектах Бейсика имелась возможность загрузить файл с кодом непосредственно при выполнении программы (текущий при этом выгружался) оператором CHAIN. Это была одна из самых полезных возможностей языка, так как она позволяла разбить большой проект на модули, вызывая их в порядке необходимости.

Поздние версии


Одним из наиболее распространённых вариантов языка Бейсик стала реализация интерпретатора QBASIC корпорации Microsoft. Долгие годы она включалась как бесплатное приложение, входящее в операционные системы MS-DOS и ранних Windows. Особо следует выделить довольно мощные графические и звуковые возможности QBASIC, позволяющие программировать на этом языке даже игры.

Практически все недостатки, присущие ранним версиям языка, были исправлены, и программирование на современных диалектах Бейсика мало отличается от использования других языков и сред (например, таких, как Delphi). Оборотной стороной процесса модификации Basic является то, что язык стал гораздо объёмнее и сложнее, его освоение требует больше времени и усилий.

Бейсик подвергается жёсткой критике за то, что его простота и бесструктурность поощряют порочные методики и привычки программирования, которые могут быть уместны при создании малых программ, но способны привести к краху крупных проектов.
Одной из «визитных карточек» Эдсгера Дейкстры стало высказывание: «Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации». Однако, это высказывание цитируется вне контекста, в котором Дейкстра подверг критике и многие другие популярные в то время языки.

При должной тренировке на этом языке через пол года ваши навыки будут не хуже профессиональных :)
P.S. Это мой первый топик по программированию, если что-то забыл или заблуждаюсь в каких либо вопросах, уточняйте.

Заключение


Статья являет собой знак протеста и недовольства той тенденции, которая наблюдается в последнее время на некогда серьёзном IT сайте, и оформлена в виде «пародии» на другой топик, вызвавший восторг читателей. Да поддержат меня солидарные с этой мыслью пользователи.


0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.