Написание программы
Обратимся теперь непосредственно к процессу написания программ. В первом разделе рассматривается вопрос о выборе языка программирования, во втором — связанный с ним вопрос о стандартах языков программирования, который важен, если программа должна эксплуатироваться на различном оборудовании. В разделе обсуждается выбор способов ввода и вывода, который иногда вызывает большие трудности, в разделе — конкретные вопросы обеспечения взаимодействия человек — ЭВМ. Наконец, в разделе описываются методы программирования, получившие название структурное программирование, причем описание дается в языково-независимой форме, хотя в примерах используются широко известные языки программирования.
Выбор языка
Рассмотрение вопроса о выборе языка программирования проводится исходя из предположения, что возможность такого выбора существует. Во многих случаях выбора нет. Это может быть вызвано либо указанием руководства, либо недоступностью других языков, либо отсутствием альтернативы использованию определенного языка. В таких ситуациях рекомендациями Данного раздела непосредственно воспользоваться нельзя. Может случиться так, что Вы прочитаете эту книгу в тот момент, когда будете только начинать карьеру программиста и изучите лишь один язык программирования. В таком случае будет вполне понятно, если Вы подумаете, что у Вас было достаточно проблем с изучением одного языка, и если перспектива рассмотрения нескольких языков представится Вам совершенно ужасной.
Несмотря на это, последующее обсуждение выбора языка все же должно представлять интерес для людей, оказавшихся в любой из указанных ситуаций, поскольку оно Включает в себя анализ преимуществ использования тех или иных языков для решения конкретных задач и может дать некоторые знания о способе оценки трудоемкости программирования в случае, когда реально доступен только один язык. Следует сказать, что серьезному программисту, будь он профессионалом или любителем, стоит потратить время на расширение своих знаний за пределы одного языка программирования.
Начинающие могут быть уверены в том, что трудности в овладении вторым, третьим и последующими языками, когда один уже изучен, носят в основном психологический характер. Технические трудности могут возникнуть либо если первый изученный Вами язык, например RPG, достаточно далек от основных языков, либо если он примитивен и ограничен, как, например, большинство версий Бейсика, но основная проблема состоит в естественном стремлении придерживаться того языка, который знаешь, а не изучать новый.
Начинающих иногда удивляет существование большого числа языков программирования. Как правило, они начинают знакомство с программированием именно с одного языка, который либо выдается обучающим их человеком за наилучший язык или, как минимум, лучший (с его точки зрения) из имеющихся в наличии, либо представляется как нечто данное без оценки достоинств и недостатков или существующей альтернативы, поэтому новички некритически относятся к этому языку.

