Pull to refresh

Comments 16

UFO just landed and posted this here
На хабре, к сожалению, пока подсветки синтаксиса для TypeScript я не нашел. Да и Typescript — надмножество Javascript
UFO just landed and posted this here
Уж поверьте: тайпскрипту я только рад. Хотя бы за типизацию и () => { blablabla }.
Но это не означает, что я больше никогда не буду писать код на чистом js
UFO just landed and posted this here
Складывается впечатление, что Вы про TypeScript совем ничего не читали/знаете.
TypeScript — это не новый язык. Это своего рода управление вашим любимым IDE, позволяющая писать код более грамотно. Вы также можете писать код на Javascript, в коде TypeScript — в любом случае все будет переведено в первое. Это своего рода сахар на этапе разработки — не более.

Кстати, свежий пост от Nicholas C. Zakas — Does JavaScript need classes?
Согласен. Уже указывал в статье про TypeScript на Хабре, что его использование (когда речь идет о статической типизации), на мой взгляд, мало отличается от использования jsdoc, при условии, что jsdoc поддерживается IDE.
       constructor (public _Element: HTMLElement, public _Binding: Object) {
            this.Element = _Element;
            this.Binding = _Binding;
        }


public _Element: HTMLElement в сигнатуре конструктора — уже объявляет публичное поле класса, объявление поля и присваивание в теле конструктора избыточно
Спасибо за поправку. Вот что происходит, когда пытаешься перенести опыт с одного ЯП на другой не прочитав досконально Language Specification
Я думаю стоит ещё раз всё таки повторить, что TS это не язык программирования, это надстройка, это JS.

Далее, я конечно всё понимаю, что вы пришли из .NET (видно по первым строкам кода), что вы любите Microsoft и так далее. Но поверьте, вот эти ваши названия переменных, свойств, методов с большой буквы — просто ужасно режут глаза! Пытаешь понять, ну сколько там конструкторов, когда смотришь на певый пример кода.
Да и не все, да даже большинство фронт-енд разработчиков не разделают вашего радостного мнения о Microsoft, ибо то, что оно делал на протяжении эН лет, никогда не забут, хоть тому у них и были какие то причины.
позволю себе с Вами не согласится. все-таки TypeScript — язык.
по той же логике точно также можно сказать, что EcmaScript 4 (он же ActionScript) — лишь надстройка на ES3 (JavaScript).
если существует обратная совместимость (!!!) и компиляция в JS, это не является доказательством обратного.
Можно вообще сразу компилировать TypeScript в CIL, ASM и т.д. при наличии соответствующего компилятора.
Что изменится, если взять Java, сделать компилятор в него из препроцессора с похожим синтаксисом. Вот мы из этого препроцессора получаем Java исходник, а потом создаёт бинарник штатными методами. Что поменяется, это будет новый язык?

Новый язык, это когда у него есть своя виртуальная машина, спецификация и так далее. В TS это даже толком не спицификация. Да и он просто транслируется в JS, и исполняется потом JS.

Вы ведь не называется less и sass новыми языками таблиц стилей, который придумали такие то люди/компании?
т.е. все Си-подобные языки идут лесом — ибо (по этой логике) — они лишь надстройка над Си.
смешно :)

более того, если мы говорим про языки именно, то нельзя включать виртуальную машину в спецификацию.

>Новый язык, это когда у него есть своя виртуальная машина, спецификация и так далее

это платформа.
Короткое объявление функций, классы, модульная система из ECMAScript 6 радуют. Чего уж там, лучше бы сразу организовали транслятор из es6 в es5 да поддержку в ie и было бы всем счастье.
Работа с этими методами в различных браузерах может быть даже медленнее, чем с innerHTML…

А не надо создавать поэлементно, создайте структуру и клонируйте ее, получится гораздо быстрее, особенно на сложных структурах.
Здорово что хоть кто-то посмотрел в сторону dom-шаблонов. Предполагаю статья была больше про typescript нежели про шаблоны, но все таки дайте представить дальнейшее развитие событий ;)
Дальше вам будет не удобно создавать структуру поэлементно ручками, захочется получать ее из описания в виде xml/html — нужен будет парсер и конструктор. Потом захочется проще получать ссылки на нужные узлы и атрибуты. Нужно чтото будет делать с событиями, как то их снимать с шаблона. Потом захочется упростить работу с dom-структурой чтобы проще «ложить» в нее данные и их синхронизировать. Затем захочется хранить шаблоны отдельных файлах и автоматическое подключение нужного css относящегося к шаблону. Потом включение одого шаблона в другой, динамическое обновление, локализация, темы и т.д. В общем придете к тому что сейчас есть в шаблонах basis.js :)
А начилось все примерно с того что описано у вас в статье…
Sign up to leave a comment.

Articles