Pull to refresh

Comments 18

а не было такого случайно во фреймворке от майкрософта? тот, который добавляется scriptManager'ом? вообще интересная возможность, джаваскрипт все больше сишарпеет (или наоборот?))
Я микрософтовский фрейморк не ковырял — ничего сказать не могу. Многие языки уже давно занимаются заимствованиями друг у друга, просто меня и коллег достало в свое время заниматься постоянной самоцензурой и что бы не писать
var s = 'str'.concat(...);

или
var s = ['str', ... ].join('');

или вообще непотребство
var s = 'str'+...;
Красиво конечно. Но Клиентское программирование имеет некоторые особенности. Так вот по 4К всякой мелочевки накапливается, а потом люди удивляются — почему все так тормозит?
Клиентское это да, проблема с объемами тут имеет место. Но еще последнее время люди пытаются использовать JS на сервере ( habrahabr.ru/blogs/nginx/82511/, habrahabr.ru/blogs/javascript/27915/, habrahabr.ru/blogs/javascript/71858/, и еще можно тут почитать steve-yegge.blogspot.com/2008/06/rhinos-and-tigers.html ) и тут уже проблем с маленькими, но вкусными механизмами нет т.к. никуда не передается.
А вот серверное применение — это то что мне совсем не понять. По крайней мере на сегодняшнем уровне.
Jscript для сервера можно было использовать много лет назад в ASP/NET. Но как-то на практике предпочитают предпочитают С++/C# или омерзительнейшим VB.
JS на сервере достаточно удобна как альтернатива точно классифицированному VB. С приходом ASP.NET актуальность на винде сильно потеряна, но вот пытливые умы запускают тот же V8 на стороне сервера и я считаю это отличной альтернативой мутному PHP на *nix платформах.
Ну очень странная альтернатива :)
Велосипедостроение процветает, товарищи! Как минимум существует вот это:
api.dojotoolkit.org/jsdoc/1.3.2/dojo.string.substitute
Думаю, что и в других тулкитах есть что=то подобное.
Отсуда вопрос — почему не переиспользовать существующий код?
Как мне нравятся такие каменты, ну чистая популистика :).
Давайте посмотрим так: как я написал в начале топика, тот скрипт, что я опубликовал, используется достаточно давно, на всякий случай уточняю — минимум года как 3, Dojo Toolkit когда появился? Когда была необходимость, естественно был сделан поиск и результаты были плачевными.
Для использования приведенного вами метода нужно скачать Dojo Toolkit (может даже и не весь, а только ядро+строковые утилиты) и сколько он при этом весит? Опять же опубликованный мной скрипт — «чистый», ему больше ничего не нужно и он может работать даже на сервере.
И под конец мелочь: substitute из Dojo Toolkit имеет другую нотацию меток и способ передачи параметров, а у меня идет разговор про похожесть на String.Format из C#.
Уточню на всякий случай: я опубликовал то, что уже у меня было, опробовано и используется коллегами. Судя по скачиваниям и просмотрам это интересно достаточному количеству людей.
>и в других тулкита… почему не переиспользовать существующий код?
как-то сложилось, что dojo и другие фреймворки оказался на переферии js-велосипедостроения. Поэтому для большинства разработчиков предпочтительнее иметь дело c jQuery
ЗЫ! я ни в коем случае не сравниваю качество различных велосипедов. Только распространенность запчастей, рем.мостерских и тренеров по езде на этих велосипедах.
Sorry Офтопик конкретный. Слишком много выпил.
Не исключаю, что, для кого-то и удобно может быть. Но не понравилось. Кода много, юнит-тестов нет, форматирование смесью табов и пробелов (при просмотре кода, конечно, уехало все куда-то). Да и лицензия в наш век неприемлемая совершенно: GPL для некоммерческого использования, «свяжитесь со мной для коммерческого». Хоть бы в статье про это написали.
Не понравилось, так не понравилось, бывает. Однако если вы не просто прошли мимо, а оставили свое мнение, то хотелось бы задать вопросы по некоторым моментам:
1. «Кода много» — много для чего? Там и так код на грани читаемости.
2. «юнит-тестов нет» — я их и не хотел выкладывать, однако причесывать код без них тяжеловато было бы, с вашей т.з. их тоже не мешало бы выложить?
3. «форматирование смесью табов и пробелов...» — весьма интересное наблюдение, у вас наверно табуляция в редакторе настроена не на 4 символа или свой код вы только пробелами выравниваете? (я пишу по привычным мне и моим коллегам правилам оформления кода и читается он нами без проблем)
4. С лицензией я погорячился, согласен. Однако я не большой спец во всем множестве лицензий, какую бы вы посоветовали бы?
Думаю, что библиотека сама по себе должна быть хорошая (иначе не возникло бы желания ее выкладывать куда-то, к примеру, или использовать несколько лет). Не понравилось — по разным косвенным причинам, которые как-то помешали даже попробовать.

Перед тем, как что-то использовать, всегда ведь хорошо код прочитать и удостовериться, что все работает как нужно и код написан грамотно. А то, что кода довольно много (видимо, и функционала много, но весь ли он имеет отношение к основной задаче?) и то, что не приложены тесты, эту задачу затрудняют. У меня не так часто возникает задача форматирования текста, и обычный "+" вполне справлялся до сих пор, поэтому время, потраченное на разбор исходников, имеет значение. Тесты я бы оставил, т.к. если что пойдет не так (или кто-нибудь захочет что-нибудь дописать или переписать), будет проще разобраться, ну и вообще, удобно, когда они есть.

Насчет табуляции — там ведь именно смесь табов и пробелов? Дефолтный фьюер на маке делал таб в 8 пробелов (по стандартну GNU, видать), поэтому все уехало. Да, код выравниваю только пробелами, редактор настроен на то, чтобы он при сохранении табы в пробелы преобразовывал, со стандарта кодирования, принятого в питоне (pep-008) приучился окончательно к этому, избавляет от некоторых проблем.

А лицензия зависит от того, что Вы хотите) По ощущениям, большинство библиотек на скриптовых языках выкладываются сейчас под чем-нибудь вроде MIT — там из условий, по сути, только сохранение копирайта в исходном коде, все остальное не запрещается. В эпоху github'ов и bitbucket'ов многие разработчики (и фирмы) как-то перестали париться за то, что кто-то украдет их результат работы, а наоборот, теперь стремятся как можно сильнее расширить круг пользователей продукта, чтобы получать как минимум некоторую известность, обратную связь и сообщения об ошибках, при удачном раскладе еще и доработки в свой проект. К хорошему быстро привыкаешь)
Sign up to leave a comment.

Articles