maximkv25: правильная архитектура будет меняться в зависимости от используемых технологий, назначения приложения и требований к нему. Есть общие принципы - типа SOLID , но и им нельзя следовать слепо.
Artem Gapchenko:
1. Помойка из анонимных классов. Впрочем, после Scala уже не страшно :)
2. В 10-20 раз медленнее.
3. Может приводить к утечкам памяти. Лучше не использовать с чем-либо более сложным, чем строки и обёртки примитивных типов.
4. Мешает использовать diamond operator - это меня напрягает больше всего.
Конструкция $(function (){ ...}); - это всего лишь изоляция пространства имён, определить загружена jQuery или нет она не поможет. А обращение к $ без загруженной jQuery приведёт к ошибке.