Если это поле нигде не учитывается в коде, то ничего нигде и не сломается. Новое поле просто будет игнорироваться.
А, к примеру, если в де/сериализаторе учитывалась контрольная сумма по полученным полям, и с новым полем у вас получаются другие суммы, то, скорее всего, неверен код сериализатора. Или же он ожидал конкретную структуру, значит, вы должны строго придерживаться её, значит, должна быть валидация получаемых данных. Приложение ругнётся, но вылетать ему необязательно.
Думаю, что распаковка аргументов в конструкторе — это здорово и питонично. Но мы тут её не видим, потому, что всякие концепции (чистого кода, DDD и прочее) описывались Робертом Мартиным, Эриком Эвансом, Мартиным Фаулером и прочими для статически типизированных языков как Java или C#. Просто опыт работы с данными методологиями ещё не обтесался и не питонизировался. Надеюсь, всё ещё впереди.
мне казалось, что тдд хорошо для модульных тестов, а тут какие то интеграционных тесты получаются. действительно ли необходимы такие тесты, не являются ли они хрупкими?
Идею закапывания флеш я тоже не поддерживаю. Я за флеш. Но на мой дилетантский взгляд, разница между as3 и haxe всё же существенна. Haxe подхватил as3, который был выпущен в 2006 году и остановился, в то время, как haxe развивается до сих пор и вскоре ожидается версия 3.3.
А так, если ваша платформа только Flash (player или Air), то да, можно на as3 писать… но на хаксе будет слаще и вкуснее )))
P.S. забыл добавить ещё одно из преимуществ haxe — менеджер библиотек. Как бы тоже немалая вещь.
Несколько лет назад интересовался производительностью html5. На тестах с зайчиками десятки тысяч объектов рисовались на ура, но вот на больших канвасах fps существенно проседал. Флеш на этом фоне выглядел достойнее. Как сейчас обстоят дела — не знаю, но не думаю, что что-то изменилось.
Привет, Миш. Про котлетки и супчик хотел написать.
Jsx в React описывает компоненты, шаблоны которых небольшие (иначе стоит подумать о декомпозиции). Так что, иметь html внутри js реально удобно и уместно. И, думаю, React полюбили не за то, что у него есть виртуальный Dom, а как раз за jsx, то есть, за супчик с котлетами в одной тарелке. И ни дай Бог их разделить.
На мой взгляд, вычленять разметку из JSX не стоит. Почему?
1) Метод render у меня ещё ни разу не оказывался больше высоты экрана (обычно вообще строк 12-20).
2) В шаблоне логики вообще нет, никаких условных конструкций или циклов. Вся логика реализована выше в самом JS.
3) Желательно видеть, какие ноды какими ref я подписал, или какой метод вызвать при каком-то событии. Значит всё должно быть под рукой, а не переключаться между двумя файлами.
Причины за «выделение шаблона в отдельный файл» мне в голову не приходят. Станет хуже.
P.S.
По началу тоже думал, что html в JS — это какая-то дикость. Но изменил свою точку зрения. По поводу поддержки IDE — работал с jsx в Sublime без какой либо поддержки React, подсветки синтаксиса JS вполне хватало.
К сожалению, в БД как и в ORM глубоких познаний нет. Описанный подход мне понравился… Подумываю, не заменить ли таким подходом в своём проекте PeeWee. Но… в силу недостаточности знаний… имеется какое-то неосязаемое опасение… ряд вопросов…
А безопасно-ли с точки зрения sql-инъекций? (хотя с чего я взял, что ORM безопасны, если и в них, по-сути, происходит конкатенация и форматирование строк)
А есть ли выйгрыш в скорости при генерации sql-запроса шаблонизатором (Jinja2) и ORM (Sql-Alchemy)?
А на сколько это удобно с точки зрения рефакторинга?! Если мы переименуем сущность (таблицу), это ж менять по всем шаблонам вручную?!
В том, что Югославию бомбили силы НАТО (кроме стран региона), БЕЗ РЕЗОЛЮЦИИ ООН, Россия и Китай выступали против применения силы. Их проигнорировали. Погибло мирное население.
Хоть на одну страну НАТО (или страну региона) были наложены санкции?!
Россия вернула Крым бескровно, мирно. Нам объявили санкции. Объявили страной-агрессором.
Разве не двойные стандарты?!
При объединении ФРГ и ГДР были нарушены международные договора.
При выходе стран Прибалтики из состава СССР были нарушены международные договора.
При распаде СССР были нарушены международные договора.
При отделении Коссово были нарушены международные договора.
Но вспомнили вы о них только при присоединении Крыма к России.
А про принцип территориальной целостности… Где он был, когда Чехословакию передавали нацистской Германии для последующего разделения с Польшей?! Международная общественность, вроде, ЗА была?!
Или всё это можно, если делать не «типичным для России образом»?
А, к примеру, если в де/сериализаторе учитывалась контрольная сумма по полученным полям, и с новым полем у вас получаются другие суммы, то, скорее всего, неверен код сериализатора. Или же он ожидал конкретную структуру, значит, вы должны строго придерживаться её, значит, должна быть валидация получаемых данных. Приложение ругнётся, но вылетать ему необязательно.
А так, если ваша платформа только Flash (player или Air), то да, можно на as3 писать… но на хаксе будет слаще и вкуснее )))
P.S. забыл добавить ещё одно из преимуществ haxe — менеджер библиотек. Как бы тоже немалая вещь.
Я не знаток, но вот что приходит в голову относительно отличий haxe от As3:
var b:Null<Int> = null;(аналог? в C#);function bar( ?y : Int) {};var d:Dynamic = ...);Так что… Отличии у haxe от as3 как у c#5.0 от c#1.0. На поверхности одно и то же, а вот глубина разная.
Jsx в React описывает компоненты, шаблоны которых небольшие (иначе стоит подумать о декомпозиции). Так что, иметь html внутри js реально удобно и уместно. И, думаю, React полюбили не за то, что у него есть виртуальный Dom, а как раз за jsx, то есть, за супчик с котлетами в одной тарелке. И ни дай Бог их разделить.
1) Метод render у меня ещё ни разу не оказывался больше высоты экрана (обычно вообще строк 12-20).
2) В шаблоне логики вообще нет, никаких условных конструкций или циклов. Вся логика реализована выше в самом JS.
3) Желательно видеть, какие ноды какими ref я подписал, или какой метод вызвать при каком-то событии. Значит всё должно быть под рукой, а не переключаться между двумя файлами.
Причины за «выделение шаблона в отдельный файл» мне в голову не приходят. Станет хуже.
P.S.
По началу тоже думал, что html в JS — это какая-то дикость. Но изменил свою точку зрения. По поводу поддержки IDE — работал с jsx в Sublime без какой либо поддержки React, подсветки синтаксиса JS вполне хватало.
www.ant-karlov.ru/kak-sdelat-horoshiy-platformer-rekomendatsii.html
Хоть на одну страну НАТО (или страну региона) были наложены санкции?!
Россия вернула Крым бескровно, мирно. Нам объявили санкции. Объявили страной-агрессором.
Разве не двойные стандарты?!
При выходе стран Прибалтики из состава СССР были нарушены международные договора.
При распаде СССР были нарушены международные договора.
При отделении Коссово были нарушены международные договора.
Но вспомнили вы о них только при присоединении Крыма к России.
А про принцип территориальной целостности… Где он был, когда Чехословакию передавали нацистской Германии для последующего разделения с Польшей?! Международная общественность, вроде, ЗА была?!
Или всё это можно, если делать не «типичным для России образом»?