Pull to refresh

Comments 18

а не было такого случайно во фреймворке от майкрософта? тот, который добавляется scriptManager'ом? вообще интересная возможность, джаваскрипт все больше сишарпеет (или наоборот?))
UFO landed and left these words here
UFO landed and left these words here
Я микрософтовский фрейморк не ковырял — ничего сказать не могу. Многие языки уже давно занимаются заимствованиями друг у друга, просто меня и коллег достало в свое время заниматься постоянной самоцензурой и что бы не писать
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