Долго ли, коротко ли это продолжалось, но пришли им на смену маги — особая раса, говорящая на языке Ассемблер. Свои разговоры с машинами писали они на дли-и-инные папирусы и называли непонятным словом «листинги». Речь сия была понятна обычным людям не больше, чем арабские письмена европейцам.
Компьютеры становились меньше, их становилось всё больше, и всё больше людей хотели говорить с умными машинами. Поднатужились маги, подсуетились волшебники и дали человечеству особый язык. Скажешь заветное слово — и машина выполнит, что ты хочешь. А прикрикнешь на нее: «FOR 1 TO 100000» — и станет она трудиться уже без остановки. Людей же, допущенных писать волшебные свитки, стали называть программистами.
Но случилось непредвиденное и наступил день компьютерного Вавилона. И заговорили программисты на разных языках. И произошли отсюда народы компьютерные: паскалисты, сишники, бесиковцы, фортранисты, лиспсовики и прочие. Всплеснули руками маги-волшебники, но было уже поздно. Воцарился хаос.
И восстал программист на программиста, и пошел войной хакер на хакера. Начались крестовые походы паскалистов-крестоносцев против неверных иноязычников. И бились свободолюбивые пингвины с Биловскими ордами сарацинскими. И лились строчки кода программного, как полноводные реки. И вирусы наводнили программные коды.
Жены программистов рыдали в холодных опустевших постелях. Они с надеждой смотрели по ночам в черные окна, но мужья-подпольщики не возвращались с компьютерных фронтов. Скоро сказка сказывается, да не скоро дело делается. Время шло. Дети не знали своих отцов, не учили родных языков и придумывали новые…
Языки крепчали в битвах. Паскалисты стали дельфийцами, сишники — сипэпэшниками… Возникли новые компьютерные наречия: ява, перл, аштиэмел, фокс, эскуель, аксесс… И языки все стали визуальными. Это значит, что рисуешь кнопочку, а потом пишешь, что она должна делать. Многим красота сия по вкусу пришлась, но некоторым — не понравилась. «Мастдайщики! — кричали они. — Эникейщики! Вам лучше вязанием идти заниматься, а не программированием». Но, как говорится, плоха та кухарка, что не хочет управлять государством, и плох тот ламер, который не хочет стать программистом. Однако несмотря на большие упрощения, всё равно сложным оставался процесс написания программ… Вот именно, написания. А так хотелось бы ее просто рисовать, как блок-схему.
И вот свершилось! 10 лет назад появился язык программирования, который позволяет нарисовать программу мышкой. Называется он HiAsm. Вы не верите, что программу можно нарисовать? Ну и напрасно. Теперь любая кухарка, набросав нечто, очень похожее на блок-схему, и нажав на кнопку «скомпилировать», может получить работающую программу. Конечно, кухарки никогда не превзойдут профессиональных программистов по части изощренности кода. Но ведь не всегда для написания программы обязательно знать о существовании ООП. В конце концов, тот, кто считает себя слишком крутым, может пропустить эту статью. А мы запасемся медом-пивом, пригладим усы, чтоб по ним не текло, и возрадуемся новому шагу в технологии программирования. Закончилось время слушания сказок, наступает пора творчества.
HiAsm является полностью визуальным редактором. В процессе создания программы, не пишется ни строчки полноценного кода (хотя можно в специальные блоки вставить любой ранее написанный код, практически на любом известном языке программирования). Элементы программы переносятся поле редактирования путем выбора элемента на панели элементов с последующим щелчком на рабочем столе программы.
Построение алгоритма программы осуществляется путем соединения элементов-кубиков линиями связи. Причем линии связей могут идти исключительно от правой стороны одного кубика к левой стороне другого или от нижней стороны одного к верхней другого.
Простейшая программа выглядит так: при нажатии на кнопку [1] строку текста «Здравствуй, мир!» [2] вывести в текстовую надпись [3]. В квадратных скобках указаны номера соответствующих элементов на блок-схеме. (Рис. 1)
Причем данная программа выглядит совершенно одинаково для модуля обычной программы, приложения для мобильного телефона или сайта. Соответственно, можно создать обычную Windows программу (не хуже, чем в Delfi), приложение для мобильного или сайт (интернет-магазин делается на «Ура!»).
***
Давным-давно, когда в ходу были еще ZX-Spectrum'ы, загружаемые с кассетных магнитофонов, была для них написана на BASIC’е игра «Букмекер». Это был достаточно простой симулятор тотализатора на лошадиных скачках. Несмотря на простоту, она доставила мне и моим друзьям немало интересных минут. Мы играли на «фантики» по безобразно простым правилам:
• делаются ставки на лошадей и дается старт забега;
• ставки, сделанные на лошадь, пришедшую второй, возвращаются обратно;
• остаток делится между победителями пропорционально их ставок.
Недавно встретились мы с друзьями старой компанией и решили вспомнить прежние забавы. Ан не тут-то было! Сгнили Spectrum’ы в чуланах, потерлись аудиокассеты с программами. Поискали мы в И-нете… Нет аналогов. Только рулетки и однорукие бандиты. В общем, так в тот день мы ни во что и не поиграли.
А мысль у меня засела, чтобы игрушку эту к жизни возродить. Так и появилась игра «Старые клячи». (Рис. 2.) Алгоритм ее заключается в том, что спрайты двигаются по полю на случайное число пикселей и вычисляется, какой из них достиг противоположного конца быстрее. Реализовано это в HiAsm’е, т.к. такие простые алгоритмы на нем реализовывать достаточно легко. На первый вариант «Обычное приложение для Windows» времени ушло менее часа. На создание JavaScript-варианта для вставки на сайт этой же игры у меня ушло около 20 минут. При условии, что это была моя первая полноценная программа на JavaScript’е.
Вот такой язык программирования. Изучайте, творите, делитесь новыми знаниями.