HiAsm – мольберт для программиста?

Реклама
Профессионал

В далекие-далекие годы моего детства жили-были люди, которых считали волшебниками. Эти люди умели говорить с машинами — огромными, как дом, компьютерами. Их речь была абсолютно не понятна окружающим и, как справедливо полагают, даже им самим. Их древний язык, записанный на картонные таблички, очень смахивал на древнюю клинопись.

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

Компьютеры становились меньше, их становилось всё больше, и всё больше людей хотели говорить с умными машинами. Поднатужились маги, подсуетились волшебники и дали человечеству особый язык. Скажешь заветное слово — и машина выполнит, что ты хочешь. А прикрикнешь на нее: «FOR 1 TO 100000» — и станет она трудиться уже без остановки. Людей же, допущенных писать волшебные свитки, стали называть программистами.

Реклама

Но случилось непредвиденное и наступил день компьютерного Вавилона. И заговорили программисты на разных языках. И произошли отсюда народы компьютерные: паскалисты, сишники, бесиковцы, фортранисты, лиспсовики и прочие. Всплеснули руками маги-волшебники, но было уже поздно. Воцарился хаос.

И восстал программист на программиста, и пошел войной хакер на хакера. Начались крестовые походы паскалистов-крестоносцев против неверных иноязычников. И бились свободолюбивые пингвины с Биловскими ордами сарацинскими. И лились строчки кода программного, как полноводные реки. И вирусы наводнили программные коды.

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

Реклама

Языки крепчали в битвах. Паскалисты стали дельфийцами, сишники — сипэпэшниками… Возникли новые компьютерные наречия: ява, перл, аштиэмел, фокс, эскуель, аксесс… И языки все стали визуальными. Это значит, что рисуешь кнопочку, а потом пишешь, что она должна делать. Многим красота сия по вкусу пришлась, но некоторым — не понравилась. «Мастдайщики! — кричали они. — Эникейщики! Вам лучше вязанием идти заниматься, а не программированием». Но, как говорится, плоха та кухарка, что не хочет управлять государством, и плох тот ламер, который не хочет стать программистом. Однако несмотря на большие упрощения, всё равно сложным оставался процесс написания программ… Вот именно, написания. А так хотелось бы ее просто рисовать, как блок-схему.

Реклама

И вот свершилось! 10 лет назад появился язык программирования, который позволяет нарисовать программу мышкой. Называется он HiAsm. Вы не верите, что программу можно нарисовать? Ну и напрасно. Теперь любая кухарка, набросав нечто, очень похожее на блок-схему, и нажав на кнопку «скомпилировать», может получить работающую программу. Конечно, кухарки никогда не превзойдут профессиональных программистов по части изощренности кода. Но ведь не всегда для написания программы обязательно знать о существовании ООП. В конце концов, тот, кто считает себя слишком крутым, может пропустить эту статью. А мы запасемся медом-пивом, пригладим усы, чтоб по ним не текло, и возрадуемся новому шагу в технологии программирования. Закончилось время слушания сказок, наступает пора творчества.

Реклама

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

Построение алгоритма программы осуществляется путем соединения элементов-кубиков линиями связи. Причем линии связей могут идти исключительно от правой стороны одного кубика к левой стороне другого или от нижней стороны одного к верхней другого.

Простейшая программа выглядит так: при нажатии на кнопку [1] строку текста «Здравствуй, мир!» [2] вывести в текстовую надпись [3]. В квадратных скобках указаны номера соответствующих элементов на блок-схеме. (Рис. 1)

Реклама

Причем данная программа выглядит совершенно одинаково для модуля обычной программы, приложения для мобильного телефона или сайта. Соответственно, можно создать обычную Windows программу (не хуже, чем в Delfi), приложение для мобильного или сайт (интернет-магазин делается на «Ура!»).

***
Давным-давно, когда в ходу были еще ZX-Spectrum'ы, загружаемые с кассетных магнитофонов, была для них написана на BASIC’е игра «Букмекер». Это был достаточно простой симулятор тотализатора на лошадиных скачках. Несмотря на простоту, она доставила мне и моим друзьям немало интересных минут. Мы играли на «фантики» по безобразно простым правилам:

• делаются ставки на лошадей и дается старт забега;

Реклама

• ставки, сделанные на лошадь, пришедшую второй, возвращаются обратно;
• остаток делится между победителями пропорционально их ставок.

Недавно встретились мы с друзьями старой компанией и решили вспомнить прежние забавы. Ан не тут-то было! Сгнили Spectrum’ы в чуланах, потерлись аудиокассеты с программами. Поискали мы в И-нете… Нет аналогов. Только рулетки и однорукие бандиты. В общем, так в тот день мы ни во что и не поиграли.

А мысль у меня засела, чтобы игрушку эту к жизни возродить. Так и появилась игра «Старые клячи». (Рис. 2.) Алгоритм ее заключается в том, что спрайты двигаются по полю на случайное число пикселей и вычисляется, какой из них достиг противоположного конца быстрее. Реализовано это в HiAsm’е, т.к. такие простые алгоритмы на нем реализовывать достаточно легко. На первый вариант «Обычное приложение для Windows» времени ушло менее часа. На создание JavaScript-варианта для вставки на сайт этой же игры у меня ушло около 20 минут. При условии, что это была моя первая полноценная программа на JavaScript’е.

Вот такой язык программирования. Изучайте, творите, делитесь новыми знаниями.

Реклама