PDA

Просмотр полной версии : Ненормальное программирование или игра в 0 строк кода на чистом JS


J-Fobos
21.11.2013, 17:47
Последние недели на хабрахабре начали выкладывать интересные статьи, которые демонстрируют возможности JS. Профессионалы делают небольшие игрушки в минимальным количеством исполняемого кода (не путать с форматированным html/css текстом).

Арканоид на JavaScript ([Ссылки могут видеть только зарегистрированные и активированные пользователи])
Змейка на JavaScript ([Ссылки могут видеть только зарегистрированные и активированные пользователи])
Гоночка на JavaScript ([Ссылки могут видеть только зарегистрированные и активированные пользователи])
Pong на Javascript ([Ссылки могут видеть только зарегистрированные и активированные пользователи])
Tetris на Javascript ([Ссылки могут видеть только зарегистрированные и активированные пользователи])
Пианино на Javascript ([Ссылки могут видеть только зарегистрированные и активированные пользователи])
Roguelike/RPG на JavaScript ([Ссылки могут видеть только зарегистрированные и активированные пользователи])
Сокобан на Javascript ([Ссылки могут видеть только зарегистрированные и активированные пользователи])
Windows сапер ([Ссылки могут видеть только зарегистрированные и активированные пользователи])
Миникрафт на Javascript ([Ссылки могут видеть только зарегистрированные и активированные пользователи])
Блэкджек на LiveScript ([Ссылки могут видеть только зарегистрированные и активированные пользователи])
Игра Жизнь на LiveScript ([Ссылки могут видеть только зарегистрированные и активированные пользователи])

Сегодня выложили ну очень уж интересную статью, о игре без исполняемого кода ([Ссылки могут видеть только зарегистрированные и активированные пользователи]).

Автор 0xy


Я написал игру, используя JavaScript, HTML и CSS, при этом использовал всего 0 строк кода. После этого поста я не мог спать. Я мучался бессоницей и, взяв себя в руки, сел писать игру. Понимая что мне придется использовать 0 строк кода на Javascript — я сильно боялся. Написать программу в 1000 строк кода и больше — не составляет проблем. Но вот написать 0 строк кода… Это безумие. Это переворачивает мозг. Меняет отношение к вебу. Понимаешь, что раньше ты писал как-то не так…

Для тех, кто не привык ждать — ДЕМКА ([Ссылки могут видеть только зарегистрированные и активированные пользователи]).

Это не фейк, а полноценная игра.



Требования

Браузеры: Chrome, FF, Safari, IE10+

Как играть

Начать игру можно наведя курсор на поле с игрой.
Управление корабля осуществляется движением мыши.
При столкновении с кораблем противника — раунд заканчивается. Чтобы начать заново нужно увести курсор с игрового поля и занового его навести на поле.
Чтобы подобрать бонус, нужно навести корабль кормовой частью на бонус и кликнуть. Если бонус подобран — он будет засчитан и в строке статуса появится значок вознаграждения. Если вы пройдете игру — то программа вам сообщит об этом приветсвенным попапом.

Для наглядности есть видеотуториал:
[Ссылки могут видеть только зарегистрированные и активированные пользователи]=0

лентапостыq&aсобытияхабыкомпании
сегодня в 12:20
Игра в 0 строк кода на чистом JS
JavaScript*, CSS*, Ненормальное программирование*

Я не хотел принимать участие в недельном тренде хабра — «Все пишем в 30 строк кода!», нет времени лишнего. Но пост theaqua про Hello world в 1 строчку на чистом JavaScript вдохновил меня побить этот рекорд. Я написал игру, используя JavaScript, HTML и CSS, при этом использовал всего 0 строк кода. После этого поста я не мог спать. Я мучался бессоницей и, взяв себя в руки, сел писать игру. Понимая что мне придется использовать 0 строк кода на Javascript — я сильно боялся. Написать программу в 1000 строк кода и больше — не составляет проблем. Но вот написать 0 строк кода… Это безумие. Это переворачивает мозг. Меняет отношение к вебу. Понимаешь, что раньше ты писал как-то не так…

Для тех, кто не привык ждать — ДЕМКА.

Это не фейк, а полноценная игра. Подробности под катом.



Требования

Браузеры: Chrome, FF, Safari, IE10+

Как играть

Начать игру можно наведя курсор на поле с игрой.
Управление корабля осуществляется движением мыши.
При столкновении с кораблем противника — раунд заканчивается. Чтобы начать заново нужно увести курсор с игрового поля и занового его навести на поле.
Чтобы подобрать бонус, нужно навести корабль кормовой частью на бонус и кликнуть. Если бонус подобран — он будет засчитан и в строке статуса появится значок вознаграждения. Если вы пройдете игру — то программа вам сообщит об этом приветсвенным попапом.

Для наглядности есть видеотуториал:



Постскриптум

Я давно занимаюсь программированием. И именно по этой причине подумал, что я смогу осилить такую сложную задачу, как создание игры, написанной с использованием JS, в котором будет 0 строк кода.

Раньше я снисходительно относился к HTML-программистам. Но теперь я понял, что скоро они могут завоевать мир. Вы вспомните как когда-то JS программистов не воспринимали всерьез. Помните эти темные времена? А сейчас оглянитесь… JavaScript — это не просто тренд. Он уже везде. В браузерах, на сервере, в микроконтроллерах, мобильных ОС… На нем пишут ОС, игры… И вот тихо подкрадываются к нам HTML-программисты.

Однажды писать 0 строк кода на JS cтанет нормой. JS будет таким же немодным как сейчас Flash. Зачем писать на JS, если он работает медленнее чем HTML программа, написанная HTML программистом с использованием CSS.

Вот вся игра, для наглядности [Ссылки могут видеть только зарегистрированные и активированные пользователи]



Объясню код автора.

Корабль - это курсор, в котором вместо стандартного стоит картинка космолета. Наведя курсор (космолет) на элемент получаем срабатывание :hover, в котором через before и after пишем стили и текст для фаил скрина.
Бонусы - это чекбоксы, у них есть состояние :checked. Так что если попали на бонус он становится чекед и у него просто меняется свойство, описывающее позиционирование.



И так как у нас чит форум сразу добавлю баг на бессмертие)))
1. Правый клик по полю.
2. Убираем мышь с поля.
3. Выигрываем.