Цитата:
|
Народ, да что вы накинулись на автора то, он молодец, трудится, а труд нужно уважать. Если вам не интересна поделка, то просто пройдите мимо и всё.
|
Цитата:
|
Цитата:
Цитата:
Цитата:
|
Цитата:
|
Парень делает реально крутую штуку...
Уважуха. Ему бы найти фирму где это требуется. Может в mail.ru Angular не самое лучшее решение. Но синтаксис все равно придется менять. Скажу так синтаксис не продакшен... И дело не в том что сделал плохо. Синтаксис это вообще особая тема. Под час очень сложная. |
Мне было бы очень интересно почитать его пост на хабре, с какими проблемами он столкнулся, что нашел интересного, как решал, что он знает про Angular внутри.
Я смотрел Angular внутри - мне не понравилось, мозг выносит. Использую исходники проектов как учебники по javascript :) |
Благодарю за отзыв. Прошу прощения, что сперва плохо о тебе подумал.
Я изучал исходники Angular и Ember недели 2 подряд, и потом к ним несколько раз возвращался. Мне это нужно было чтоб собрать требования для Лавы. Меня от этих исходников просто тошнило - это даже не фрактал дефектов, а как бы сказать... целый "улей". Поэтому в issues на гите тыщи багов - такой код не может быть надежным. Если речь про синтаксис шаблонов - то я понимаю, что очень непривычно, но все таки это синтаксис для создания конфигов. У Microsoft WinJS есть что-то похожее - там объекты пишутся в атрибутах. Мой вариант мне видится более удобным, так что пока буду склонять людей на свою сторону. Насчет "пойти к дяде из mail.ru" - для дяди это была бы лафа, которую он не заслужил. Вот если станет мой фреймворк популярным - тогда и продам его, но за намного большую цену чем мог бы отдать сейчас. Если не станет - не продам, но даром никто ничего не получит. Если кому и продамся - то либо Google либо Microsoft - на меньшее я не согласен. Вы только не подумайте, что я на что-то там рассчитываю. Я просто буду продолжать делать свой фреймворк, и посмотрю, чего я смогу добиться. Цитата:
Я до сих пор жду пока меня включат в TodoMVC. У них нет возражений, просто процесс все еще тянется. А пока вот сделал небольшой тест производительности: мои классы такие же быстрые, как если бы вы писали их руками. Ну или почти такие же: http://jsperf.com/liquidlava-class-system-performance/3 Кому нравится фреймворк - поставьте звезду на GitHub, буду очень благодарен. Мне нужно 80 звезд чтобы попасть на javascripting.com. |
Постараюсь объяснить несколько моментов, надеюсь будет понятно))
Походу получился сумбур :( Делал кучу своих велосипедов, все говорили зачем делаешь и чем больше мне это говорили тем с большим усердием я их делал, потому что не нравятся все библиотеки, фреймворки которые есть. Нравятся определенные моменты, но нет реально либы на которой хотелось программировать. Когда начал делать свое, понял что у меня получается по сравнению с уже существующими в разы хуже 1 - куча ошибок, не возможно на этом работать 2 - синтаксис .... 3 - никому не нужно 4 - денег на этом не сделаешь И в итоге понимаешь, в других библиотеках сделано плохо не потому что люди не умеют программировать, а потому что это очень сложно сделать так, чтобы продукт был классным. 5-7 раз начинал с нуля... Чем больше стараешься - понимать как работают другие библиотеки изнутри. Еще один момент, исходники проектов, того же JQuery, Angular и прочих помогают лучше понять JS. Но если тебе проект нравится, то начинаешь в этом стиле писать код. Стиль кода, тоже очень важная штука. Не помню как называется, вроде guideline code style. За многие годы пришел к определенному стилю кода. Каждый разработчик приходит к определенному стилю. Но есть стиль разработчика, а есть классический стиль кода. Постараюсь объяснить. Это как Венгерская нотация. Приведу самые элементарные примеры. Про camelCase уж писать не буду)) Твой стиль - это perl. Не будут люди пользоваться продуктом если там my_cool_function для js. Еще пример //Bad if(n) a = 5; //Good if(n){ a = 5; } К сожалению в таком стиле до сих пор программируют. Нельзя. Ошибок дает кучу. Случайно добавил лишнюю строку - 2 дня ищешь ошибку. А еще снижает читабельность. Во многих вакансия написано: Умение понимать чужой код. Умение писать структурированный код. Потому что хороший код, повышаешь кпд разработки, особенно командной. Еще пример //Bad var a = 5; var b = 7; var c = 10; У тебя в такой стиле все примеры. Далее использование спец символов. Давай вспомним для чего используется символ _ перед названиями переменных/свойств. Для того чтобы сказать, что это свойство или метод private. Надеюсь не перепутал... Короче пользоваться исключительно внутри фреймворка, библиотеки. Не используют в API названия с _, есть такая договоренность. А вообще я бы советовал стараться никогда не пользоваться _ сразу снижает читабельность кода. лично я пользуюсь _ только в самом крайнем случае. Идем дальше. У тебя пишется Extends С твоих слов ты взял это из MooTools Почему так сделали MooTools - потому что слово extends зарезервировано. В данном случае лучше просто extend. MooTools классная штука. Но это не означает, что они все делают правильно. Они многое делают так, что никто не будет пользоваться им. Например: глобальные переменные, добавление в глобальные прототипы функций. Вот если бы они Class, сделали не глобальным А хотя бы Mt.Class И не делали Array.implement('limitTop', function(top){ for (var i = 0, l = this.length; i < l; i++){ if (this[i] > top) this[i] = top; } return this; }); [1, 2, 3, 4, 5, 6].limitTop(4); // returns [1, 2, 3, 4, 4, 4] А сделали вот так Mt.Array.limitTop([1, 2, 3, 4, 5, 6], 4); То даже я задумался про MooTools в реальных проектах. Теперь про названия свойств Это что за жесть... this.Text$broadcastInDOM(); var element = this._input_container.getDOMElement(); И это даже не внутри библиотеки, а реальный код примера. Очень многие библиотеки имеют плохой API. Но у тебя API пока, ну сам понимаешь... Работа над API - не простая штука. Но API должно быть красивым. Про то что ты сможешь кому-нибудь это продать. Я бы сказал так. Не знаю кто-ты, откуда. Предположим ты студень на 4 курсе. Скорее всего(в самом лучше случае) тебе предложат работу, в mail, возможно в иностранной фирме. Возможно получится на своем продукте что-то сделать. Конечно это самый идеальный вариант. Но унывать тут не надо, если нужны деньги, то просто иди на работу пробуй себя в js в Москве. Или же может в будущем как Дмитрий Сошников будешь работать в FaceBook :) Понимание как писать JS SDK, библиотеки востребовано. |
Цитата:
И то не факт. Сама идея сделать свой Angular - в этом нет ничего такого. При необходимости mail может дать задание своим спецам разработать Российский аналог JQuery, Angular. Тем более что там работают программисты, у которых есть свои аналоги для них... Например Octane, еще 5 лета назад сделал js-core А теперь в mail.ru а уж про monolithed... который ушел с форума(кстати тоже в mail.ru сейчас) можно много сказать. Парень мега спец. |
Часовой пояс GMT +3, время: 23:05. |