This repository has been archived by the owner on Jan 13, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 71
Refactor
arikon edited this page Nov 10, 2011
·
13 revisions
- «плохое» наследование функциональности для модулей технологий
- мало точек расширения в текущем API для модулей
- много лишней конкретики в именах методах текущего API, например getFileContent, newFileContent и тп. Блоки могут быть реализованы в конкретной технологии не только в виде файла, но и в виде директории и нескольких файлов одновременно.
- асинхронное promises-based API
- сейчас API полностью синхронное, через него плохо выражаются асинхронные вещи (из синхронной функции нельзя сделать асинхронный return)
- bem-server будет использовать promises-based API, он должен иметь возможность использовать bem-tools
- API для вызовы команд (build, create, decl) из других приложений (например, bem-server)
- параметризуемые технологии (например, xsl:output для xhtml.xsl.js)
- [done] использовать inherit (бывший node-inherit) для реализации наследования:
- [done] в файлах технологий
- [done] в файлах уровней переопределения
- [done] более «чистое» API (минимум конкретики, больше точек расширения)
- [done] портировать из файлов технологий часто используемую функциональность (например, сборку файлов с несколькими расширениями)
- [done] (частичная) обратная совместимость для старых модулей технологий
- [done] promises-based API
- [done] API для вызова команд (build, create, decl) из других приложений
- параметризуемые технологии