All streams
Search
Write a publication
Pull to refresh
28
0
Ivan Dembicki @iviv

Dart, Flutter, Adobe Flash Developer

Send message
Почти досмотрел первую лекцию. Жутко выбешивает передёргивание и искажение фактов и манипуляции. В остальном хоть и водянисто, но кажется, что дальнейшее может быть полезно. Видимо первая лекция больше вводная, чем обучающая.
Да, интересное направление мысли. Спасибо.
Я вот про нас прикинул:

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

Блин, если бы я так разговаривал, меня бы никто не понимал. Как написать правильно? Особенно учитывая, что вышеописанное лишь небольшая доля проекта.
Я начинал заниматься Flash еще в те времена, когда они не набрали 50 человек в штат разработчиков. И помню, в каком-то блоге, они сказали, что Flash создали его пользователи-энтузиасты, которые с помощью минимума команд умудрялись делать совершенно фантастические штуки, о которых они даже не мечтали.
Я тоже горел желанием сделать что-то эдакое и пару раз даже удалось.

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

Каждая новая версия Flash еще до релиза попадала в кривом альфа-виде в тусовку и народ выцарапывал и описывал новые возможности, которые там появятся. Ажиотаж жуткий был.

К слову сказать, разработчики до сих пор вполне себе радуют флэшеров уровнем и конкурентоспособностью Flash-технологии. Они чутка проворонили 3Д, но сейчас активно наверстывают.
Не совсем так.
Все возможности для дизайнеров, которые были во флэше, остались. До сих пор можно программировать ровно также, как и раньше — прямо во Flash IDE, без типизаций и ООП.
Другое дело, что уровень требований к Flash проектам настолько возрос, что обычный дизайнер с большинством задач уже не справится.
Для того, чтобы в разговоре хотя бы иногда не употреблять слово «животное».
Я не знаю что такое человек.
Ну вот, посмотрите: отрезаем ногу и начинаем внимательно изучать. Обратите внимание на то, что нога не человек. Более того, нога используется не только людьми. У собаки тоже есть нога, она к тому же легче и бегает быстрее. И да, нога не составляет и 80% процентов тела. Теперь то же самое проделаем с остальными частями тела и увидим аналогичную картину. В итоге, оказывается, что человек это вовсе не человек, поскольку состоит не из человеков.
Поэтому я и не понимаю, что такое человек.
Ну, не устарел совсем уж. Тут я палку перегнул, наверное. Но поотстал от требований пользователей, это да.
Узнаю себя.
Давным-давно я был фанатом AS1 и жутко ненавидел AS2. Да и пересел на программирование на классах только, когда вышел AS3.
Но.
На AS2 была сделана масса проектов, кторые резко расширили область применения Flash. При этом, производительность была ниже, чем на AS1, кода писать больше, и так далее.

«Задач где на JS действительно нужно много абстракций — мало.» — это как раз про эту фразу. Область применимости языка из-за его устаревшего синтаксиса существенно ниже.

«И не понятно чем она облегчает жизнь, кода написано еще больше чем выполняющий тоже самое на JS»
— кода должно быть ровно столько, чтобы его было легко читать. Писать за программера код должен редактор. Что современные редакторы с успехом делают.
Просто посчитай сколько «лишних» прослоек находится между пользователем и приложением.
И как эти усложнения упрощают им жизнь.
Именно лишними сущностями и прослойками решается!!! Именно ими! И НИЧЕМ БОЛЬШЕ.

Называется это повышением уровня абстракции. Который идёт с момента создания первого языка программирования.

Вся история развития отрасли программирования и языков программирования это доказывает.
Если бы не эти прослойки, писал бы ты единички и нолики руками на харде :)

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

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

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

Да, далеко не всегда в JS нужны интерфейсы, абстрактные классы и т.д. Но иметь лучше, чем не иметь. Тот же AS3 позволяет писать в стиле AS1 (читай JS), и это активно используется баннеростроителями. Зачем городить огород из классов, если нужно обработать один клик.
Но уже появляются задачи, типа гугловых доков, которые без ООП практически нереально реализовать.

Phyton под браузером не запустишь. А тенденция такова, что приложения мигрируют в браузер. И возникает спрос на инструментарий, позволяющий эти приложения делать в нормальной среде используя полноценный язык. Точка.

Брат-уродец Java и косящий под него С# занимают подавляющую часть рынка. Эту часть они отобрали в том числе и у питона. Ты можешь сражаться за свой любимый язык (и я тебя понимаю), но тенденция тут налицо и спорить с ней бессмысленно.
Если ты про European Association for Psychotherapy, то нет наверное. Если про Extensible Authentication Protocol, то это к автору поста. Я не настоящий сварщик, просто мимо проходил.
Соглашусь.
Но тут ситуация объяснима — такая моща в руках, хочется и то и то попробовать, и разными способами, и новые операторы ввести и концепции, и там поиграться и тут поэкспериментировать.

Понимание правил создания синтаксиса языковых расширений придёт, как только эти правила выработаются. А для этого нужно опыта набраться, слышать фидбэк от пользователей, шишек набить — куда уж без этого.

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

Или в данном случае всё работает как-то иначе — иначе. Прежде всего контролируемо: не нравится результат трансформации? — Залез в код языкового расширения, что нужно исправил.

ничего не мешает нормально и эффективно писать на даже чистом JS — писать-то можно. Но помимо «писать» есть ещё больше десятка пунктов, характеризующих потребительские свойства языка программирования.

Развитием же JS всегда были спецификации EcmaScript — были. Но тут возникла проблема: не решились перейти на ООП. Хотя давно пора — рынок в этом нуждается и его ничем не остановить. Отсюда и подобные решения.
Даже более того: рынок нуждается в инструменте, благодаря которому можно было бы делать приложения под разные платформы. Рынок нуждается в простых языках, максимально приближенных к предметной области.
Повышение уровня абстракции — общий вектор развития отрасли. На сегодняшний день, решение Jetbrains MPS мне представляется для этого наиболее эффективным.

А про типизацию вы Python’истам, мне в том числе, расскажите ;) — примите мои глубочайшие соболезнования.
Ну, а если серьезно, то об этом мы уже говорили: У каждого языка своё предназначение и диапазон применения, предметная область. Но кто делает погоду в нашей психушке?

JS не пойдет стопами AS — есть другой путь? Я не знаю такого. Чтобы JS не пошел по пути AS, он должен стоять на месте. Что он с успехом и делает.
Есть задачи разного уровня сложности. И действительно, в большинстве случаев JS вполне соответствует стоящим перед ним задачам.
В свое время ActionScript1 также соответствовал. И пилили на нем баннеры да тетрисы. И до сих пор на нем же пилят — синтаксис AS1 практически сохранился во Flash IDE именно для этих целей.

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

Ну и, JS программисты воспряли духом на тему очередного кровавого убийства Flash с помощью HTML5. Ок, AS программисты в очередной раз посыпали голову пеплом и в печали взирают на эти попытки. И они видят, как HTML5 наступает на пятки технологии Flash — ведь чтобы обогнать, нужно пройти тот же путь и только потом вырваться вперёд.

В 2003 году Macromedia выпустила ActionScript2. Это была в сущности надстройка над AS1 — при компиляции код из AS2 выгонялся в AS1. Примерно то же самое (но на другом уровне и со множеством дополнительных возможностей, разумеется) сейчас делает Realaxy ActionScript Editor.

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

В итоге, это тупиковый путь создания DSL. Но + за попытку! :)
Вот, вижу человека, считающего Flash злом.
А можно аргументы в студию? Очень интересно.

Information

Rating
Does not participate
Location
Maple Ridge, British Columbia, Канада
Date of birth
Registered
Activity