Программирование командной строки

Молодой разработчик может изучить процедурное программирование как свою первую парадигму программирования. Парадигма программирования, известная как программирование командной строки/процедурное программирование, основана на представлении о том, что программы представляют собой наборы инструкций, которые необходимо выполнить. Они уделяли большое внимание разделению программ на именованные, похожие на функции наборы инструкций, называемые процедурами. Процедурный код в его простейшей форме — это код, который сообщает устройству, как выполнять задание в логической последовательности. Эта парадигма рассматривает данные и методы как две разные вещи и следует линейной нисходящей методологии. Процедурное программирование разделяет программу на процедуры, которые иногда называют подпрограммами или функциями и просто включают в себя набор действий, которые должны быть выполнены, на основе идеи вызова процедуры. Процедура может получать доступ и изменять глобальные переменные данных, а также локальные данные, которые недоступны за пределами области действия процесса. Fortran и ALGOL были парой первых процедурных языков программирования. Идеи ALGOL по-прежнему актуальны и часто используются в современных языках программирования.

Ключевые особенности программирования из командной строки

Предопределенные функции. Как правило, предопределенная функция представляет собой инструкцию с именем. Предопределенные функции обычно включаются в языки программирования более высокого уровня, хотя они поступают из библиотек или реестров, а не из программ. «charAt()», предопределенная функция, которая ищет символ в строке, является одним из примеров.

Локальные переменные. Локальная переменная — это переменная, которая определена в основной структуре метода и используется только внутри локальной области действия метода. Если локальная переменная используется вне метода, в котором она объявлена, код перестанет работать. Локальная переменная может использоваться только в том методе, в котором она определена.

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

Передача параметров. Система передачи параметров функциям, подпрограммам и процедурам называется передачей параметров. Для передачи параметров используются термины «передача по значению», «передача по ссылке», «передача по результату», «передача по значению-результату» и «передача по имени».

Преимущества

· Присущая простоте и простоте реализации компиляторов и интерпретаторов делает процедурное программирование хорошим для программирования общего назначения.

· Доступны многочисленные книги и онлайн-курсы по проверенным и надежным алгоритмам, что упрощает процесс изучения.

· Поскольку исходный код является переносимым, его также можно использовать для работы с другим процессором.

· Без необходимости дублировать код можно использовать в нескольких областях приложения.

· Дополнительно за счет использования процедурного программирования уменьшается потребность в памяти.

· Отслеживание потока программы просто.

Недостатки

· Когда используется программирование из командной строки, написание программного кода становится более сложным.

· Поскольку процедурный код часто нельзя использовать повторно, может потребоваться его пересборка, если его нужно использовать в другом приложении.

· трудно связать с предметами в реальном мире

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

· Поскольку данные доступны для всей программы, это менее безопасно.

Программирование, управляемое событиями

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

Как работают мероприятия?

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

· положение указателя мыши

· какие кнопки мыши нажимаются

Несмотря на то, что события часто организуются, они могут состоять только из больших двоичных объектов данных (например, раздела JSON), которыми пользователи должны иметь возможность управлять и понимать.

Это основные элементы программы, управляемой событиями:

· Когда происходит событие, вызывается функция обратного вызова (также известная как обработчик события).

· цикл событий, вызывающий соответствующий обработчик событий для каждого события по мере его возникновения.

Преимущества

· Гибкость: проще изменить определенные области кода по мере необходимости.

· Пригодность графического интерфейса: он позволяет пользователю выбирать инструменты (например, радиокнопки и т. д.) прямо с панели инструментов.

· простота программирования: он предлагает предиктивное кодирование, которое расширяет возможности программистов.

· Естественные разделительные линии легко найти: естественные разделительные линии для инфраструктуры модульного тестирования легко доступны.

· Моделирование системы сделано хорошо: полезный подход к моделированию систем, которые должны быть реактивными и асинхронными.

Недостатки

· Сложные: Простые программы всегда становятся слишком сложными.

· Менее очевидный и рациональный Как правило, поток программы более ясен и менее логичен.

· сложно увидеть ошибки: сложно отлаживать программное обеспечение, управляемое событиями.

· Слишком много форм в программном обеспечении может разочаровать программиста и/или запутать его.

· Тесная связь: потребители схемы событий и схемы событий будут тесно связаны.

Ссылка

· https://aiven.io/blog/introduction-to-event-based-programming#:~:text=Что%20является%20событием%2Dуправляемым%20программированием%20обрабатывается%20%20потребителями%20.

· https://www.geeksforgeeks.org/explain-event-driven-programming-in-node-js/#:~:text=Event%2Ddriven%20programming%20is%20used, when%20an%20event%20is% 20 срабатывает.

· https://www.tutorialspoint.com/index.htm

· https://www.techopedia.com/definition/21481/procedural-programming