Задать вопрос
Front-end JavaScript Application Developer & Web Application Developer Node.js
Вообще то я говорю по-русски, да и пишу частенько тоже. Фотографирую, хожу за вдохновением пешком.

С удовольствием отвечу на ваши вопросы про JavaScript (ES3, ES5, ES6+): сомнительные и тонкие моменты языка, реализации языка в конкретных браузерах, библиотеках(jQuery, Backbone, ...), архитектура приложений(паттерны, MVC...), тестировании, и вообще всего с чем связан JavaScript и разработка на JavaScript(как клиентской так и серверной). Пишите!
Контакты

Достижения

Все достижения (3)

Наибольший вклад в теги

Все теги (28)

Лучшие ответы пользователя

Все ответы (35)
  • Сборка проекта, AMD, LMD, использование модулей проекта

    azproduction
    @azproduction
    Использовать сборку и автоматизацию — однозначно стоит.

    require.js имеет свой собственный сборщик модулй и оптимизатор — r.js

    Достаточно много с ним работал из опыта могу сказать, что он хорош, но мне не подошел — муторно поддерживать проект на нем:
    — это AMD, а значит нужно писать обертку define, колдовать если заходится использовать модуль в node.js… (можно не писать обертку, но придется опять колдовать)
    — require() — God Object и возвращает всевозможные тип ресурсов всевозможными путями. Долго вникать что к чему если код чужой
    — плагинная система у него странная для восприятия «с нуля»
    — результат сборки сложно окинуть взглядом «все как-то само»

    В общем, я устал от AMD и RequireJS, смотрел в сторону всевозможных подобных проектов тк мне не хотелось писать еще один велосипед. В итоге, мне пришлось написать инструмент своей мечты — LMD.

    Исходил я из слудующих соображений:

    * Сегодня все собирается. Даже dev
    — зачем писать обертку и вобще писать что-то лишнее если за тебя это может сделать робот?!
    * Читаемость кода очень важна
    — Нужно исключить неявные конструкции
    — Я как архитектор моего проекта хочу знать, что в нем будет «валяться»
    * Сборок бывает много
    — dev, production, dev-ru, test-en_US
    * Нужен контроль результата сборки
    — Проверка целостности
    — Подробная информация о сборке
    — Аналитика

    Сегодня LMD умеет все то, что умеют другие сборщики, и имеет ряд преимуществ: CommonJS/Modules, честная и тотальная изоляция модулей, шикарная аналитика сборок как статическая так и динамическая, CLI с автокомплитом, GUI. LMD особенно хорош если у вас много сборок — много языков, много окружений.

    Если вы используете grunt, то у LMD есть для него плагин — grunt-lmd.

    Буквально на длях я написал целую кучу примеров к всевозможным плагинам и фичам LMD. Посмотрите их. Если будут вопросы задавайте тут или в ЛС.
    Ответ написан
    3 комментария
  • Какой шаблонизатор взять для нового проекта на php?

    azproduction
    @azproduction
    Twig — наследование шаблонов, компиляция шаблонов в читабильный вид (класс), все лучшее от Smarty, sandbox, авто экранирование строк, есть готовые классы для интеграции практически во всех фрэймворках. Blitz — очень не удобно работать с шаблонами, мне показался очень тугим для разработки. Скорость Blitz… это сомнительное преимущество, — компилированные шаблоны твига + eAccelerator не будут уступать Blitzу.
    Ответ написан
    Комментировать
  • Прототипы JavaScript [Решено, все так печально]

    azproduction
    @azproduction
    Создавайте разные прототипы или объявляйте ownProperty attr в конструкторе иначе никак. Логично, что foo.attr === bar.attr потому как оба они ссылаются на Class.prototype.attr
    Ответ написан
    Комментировать
  • Рейтинг исходя из средней оценки и числа голосов?

    azproduction
    @azproduction
    Есть готовые и работающие ныне алгоритмы, к примеру рейтинг IMDB, который основан на теореме Байеса. Формула очень хорошо расписана тут: www.wowwebdesigns.com/formula.php

    WR = (v / (v+m)) * R + (m / (v+m)) * C
    R = средний рейтинг данного объекта
    v = количество голосов за данный объект
    m = (опционально) минимальное число голосов, необходимых для отображения в топ 25
    C = средний рейтинг всех объектов

    Ещё для ознакомления есть старенькая статья по Collective Choice: www.lifewithalacrity.com/2005/12/collective_choi.html Тут расписны все популярные системы ранжирования.
    Ответ написан
    1 комментарий