Comments 42
Извините, не удержался — новый тренд в js — «написать TaskName в 30 строк»
А по теме, да, интересно, спасибо
А по теме, да, интересно, спасибо
+6
Ну, не сказать, чтобы тренд, и не сказать, чтобы в js — думаю, это было всегда с тех самых пор, когда программирование только появилось — «написать X используя язык Y в N строк». Думаю, просто js для этого очень хорошо подходит, а тут ещё и этот триклятый (всю ночь ведь код писал) пост с excel'ем:)
А вообще — да, ждем новых поступлений js-микроговнокода:)
А вообще — да, ждем новых поступлений js-микроговнокода:)
+2
Астрологи объявили неделю игр на JS. Количество строк сократилось до 30.
+5
Красиво и просто! Скоро на хабре можно будет целую коллекцию 30-строчных программ собрать. Ждем следующую…
+2
на хабре неделя ненормального программирования
gist.github.com/aemkei/1134658 — game of life
habrahabr.ru/post/138335/ — тетрис
habrahabr.ru/post/202304/ — excel
habrahabr.ru/post/202476/ — змейка
habrahabr.ru/post/202530/ — арканоид
gist.github.com/aemkei/1134658 — game of life
habrahabr.ru/post/138335/ — тетрис
habrahabr.ru/post/202304/ — excel
habrahabr.ru/post/202476/ — змейка
habrahabr.ru/post/202530/ — арканоид
+12
habrahabr.ru/post/202556/ — гонки
+4
еще и пинг — понг:
habrahabr.ru/post/202578/
habrahabr.ru/post/202578/
+1
А что еще было? Добавил вроде все — 30lines.info
+2
Сокобан — habrahabr.ru/post/202756/
Пианино (тут правда меньше 30 строк) — habrahabr.ru/post/202646/
Было еще несколько топиков, но там не JS
Пианино (тут правда меньше 30 строк) — habrahabr.ru/post/202646/
Было еще несколько топиков, но там не JS
+1
Астрологи объявили двухкратный прирост постов про JS
+4
Ждём серию статей: CRM в 30 000 строк кода.
+10
а то фиддл всю ночь 500кой отвечал.
Так всю ночь народ свои тридцатистрочники постил ;)
По сабжу — элегантно, даже хватило места двум пустым строкам и переменной px
+2
Между рендерингом и осознанием того, что страница загрузилась — потерял первую жизнь, дёрнув мышкой загнал шарик под ракетку и он дважды быстро ударился об нижнюю часть экрана :(
+1
Жду-не дождусь «пишем шутер от первого лица на JS, в 30 строк». Пусть даже на порядок больше было бы, пусть 300. Но было бы адски круто о_О
+2
Я немного знаком с OpenGL и с её высокоуровневой js-оберткой Three.js и могу точно сказать что в 300 строк не уложить (не используя что-то ещё более высокоуровневое). В 3000 — вот тут можно поспорить уже. Ну а на чистом js без библиотек точно не выйдет.
И, да — буду только счастлив узнать, что я ошибаюсь)
И, да — буду только счастлив узнать, что я ошибаюсь)
+1
Ну на чистом JS+Canvas можно попробовать замутить нечто вроде Wolfenstein 3D (без обсчета полигональных моделей, никакого освещения, только спрайты). Но тоже думаю, 3000 будет мало, да. Тоже немного писал на OpenGL)
+2
Хм, если вы этого не знали, то вам, думаю, будет интересно — Wolfenstein был портирован под браузер (читай — WebGL). Правда, сейчас переход по ссылке твердит 403, но он там был, клянусь)
+1
О, я видел запуск в браузере и Doom'а, и даже Quake 1 ) Но речь то шла о «в минимальное число строк» )
+1
Вольфенштейно-подобную графику в 300 строк — вполне реально, думаю)
+1
На Opera Presto кирпичи немного не умещаются, и игра очень странно выглядит.На Opera Blink вроде порядок.
+2
У меня опера 12 c чем-то, тестировал в ней, вроде все работало. Это какой движок?
К слову, я, пока писал, себе 300 раз сказал спасибо за то, что jQuery использую только там, где это того стоит. Разумеется, речь идет о кроссбраузерности голого js — я его знаю(!).
И ещё интересный момент, который для мне непонятен до сих пор. Лежат кирпичи, точно знаю, что их длина в ряд 320px. Открываю документ на локальной машине — всё нормально. Открываю на фиддле — в каждом ряду последний кирпич не взлазит и сползает на следующий ряд. Код ровно тот же. Так и не понял почему это происходит. Пришлось для кроссФиддловости сделать ширину поля 322px.
К слову, я, пока писал, себе 300 раз сказал спасибо за то, что jQuery использую только там, где это того стоит. Разумеется, речь идет о кроссбраузерности голого js — я его знаю(!).
И ещё интересный момент, который для мне непонятен до сих пор. Лежат кирпичи, точно знаю, что их длина в ряд 320px. Открываю документ на локальной машине — всё нормально. Открываю на фиддле — в каждом ряду последний кирпич не взлазит и сползает на следующий ряд. Код ровно тот же. Так и не понял почему это происходит. Пришлось для кроссФиддловости сделать ширину поля 322px.
+1
Ребята, но ведь количество строк не значит ничего, правда? У меня вот на проекте весь функционал умещается в одну строку… после closure compiler…
+4
Разумеется, вы правы — любой код можно написать в одну строку, можно размазать на 1оо5оо)
Здесь речь идет не много о другом, и, каюсь, я не могу строго сформулировать эту идею, но суть в том, чтобы строки были логичными — здесь думаю, суть в том, чтобы каждая строка выполняла не более одной высокоуровневневой операции. И чтобы этот код можно было разобрать 'без лупы'.
Разумеется, 'высокоуровневневость' вещь катострофически относительная, и вот здесь-то, на мой взгляд, вся субъективность и кроется.
Как бы ты это не определял, всегда можно просто взять и найти контрпример, который выставит несостоятельными все предыдущие аргументы).
Но я сдесь к задаче подошел скорее с точки зрения синтаксической нежели семантической. Если по простому — один 'if' — одна строка, то есть больше опирался на языковые конструкции чем на логические.
Здесь речь идет не много о другом, и, каюсь, я не могу строго сформулировать эту идею, но суть в том, чтобы строки были логичными — здесь думаю, суть в том, чтобы каждая строка выполняла не более одной высокоуровневневой операции. И чтобы этот код можно было разобрать 'без лупы'.
Разумеется, 'высокоуровневневость' вещь катострофически относительная, и вот здесь-то, на мой взгляд, вся субъективность и кроется.
Как бы ты это не определял, всегда можно просто взять и найти контрпример, который выставит несостоятельными все предыдущие аргументы).
Но я сдесь к задаче подошел скорее с точки зрения синтаксической нежели семантической. Если по простому — один 'if' — одна строка, то есть больше опирался на языковые конструкции чем на логические.
+3
Извиняюсь за сумбур и ошибки — спешил.
+1
Обычно в таких случаях считают в символах. Вот, например, шахматы в 1433 значимых символа на C.
0
Есть такая нотация для листинга программ — мне кажется, «академическая» называется. Точно не знаю, откуда такой термин. Думаю, этот вид нотации рассчитан на то, что студенты к каждой строке могут захотеть написать комментарий, а значит там много переводов строк и много свободного места справа.
+1
C двадцатью четырьмя жизнями игру можно пройти не шевеля мышкой.
+1
делаем общую репу на гитхабе для 30-строчного js?
+7
Не очень понимаю, что такое общий репозиторий, но идея мне понравилась
Речь идёт о публичном репозитории? Вот — сделал, добавляйтесь в колабораторы.
github.com/pvolyntsev/thirty-lines-js-games: A set of small browser games that comprises about 30 lines of JavaScript
Если ошибся — подскажите в личку, что сделал не так.
У меня тоже есть мозголомка на javascript, но она с использованием jQuery UI, потому что drag&drop: projects.copist.ru/gues-color/ — делал как демо простого визуального программирования для дочери.
Вряд ли смогу её переписать в 30 строк.
Речь идёт о публичном репозитории? Вот — сделал, добавляйтесь в колабораторы.
github.com/pvolyntsev/thirty-lines-js-games: A set of small browser games that comprises about 30 lines of JavaScript
Если ошибся — подскажите в личку, что сделал не так.
У меня тоже есть мозголомка на javascript, но она с использованием jQuery UI, потому что drag&drop: projects.copist.ru/gues-color/ — делал как демо простого визуального программирования для дочери.
Вряд ли смогу её переписать в 30 строк.
+2
Хм, а если сделать минимизацию, то получится крошечный арканоид на одну строку кода?
+2
Хмм, прочитав пост, первым делом мне подумалось о том что выйдет, лет так через десять, новость на хабре и будет называться она «Battlefield на досуге. 30 строк кода».
+3
Sign up to leave a comment.
Крошечный арканоид на JavaScript (30 строк кода)