JQuery Javascript крупномасштабная разработка приложений - PullRequest
2 голосов
/ 01 июля 2010

Меня только что попросили описать архитектуру для крупномасштабного проекта в стиле dashbaord, над которым я буду работать.

Я работал над приложением такого размера, и я немного растерялся, что сказать.

Могу ли я указать какие-либо статьи, которые могут помочь мне начать и, надеюсь, закончить.

До сих пор я получил следующую информацию, но я не совсем уверен, что она описывает архитектуру.

1) Используйте классы вместо отдельных функций, и каждый класс или группа должны содержаться в их собственном файле JS

2) Перед производством должен быть этап компиляции, на котором указанные JS-файлы компилируются и минимизируются

3) Шаг 2 не должен содержать все файлы. Jsut общие для начала

4) Используйте загрузчик классов для загрузки классов, плагинов и т. Д., Когда они необходимы. В процессе исследования можно было бы использовать функцию getScript jQuery для этого или даже загрузчик плагинов jQuery:

http://api.jquery.com/jQuery.getScript/

http://www.unwrongest.com/projects/lazy/

В настоящее время я чувствую выход из моей глубины, поэтому любая помощь будет высоко цениться. Если честно, если вышесказанное совершенно не имеет значения, то я думаю, что я не на той работе: (

Ответы [ 3 ]

4 голосов
/ 10 февраля 2012

Все, что вам нужно знать, можно найти здесь:

http://addyosmani.com/largescalejavascript/

Создание библиотеки слабосвязанных компонентов, которые взаимодействуют через контроллер приложения (например, шину событий).

2 голосов
/ 15 августа 2012

Если вы хотите сделать это с помощью чистого Javascript, убедитесь, что вы используете в работе некоторую эталонную архитектуру.То, что HDave указал выше, действительно хороший материал.Если вам нужна готовая эталонная архитектура в качестве кода запуска проекта, взгляните на BoilerplateJS:

http://boilerplatejs.org

После некоторых крупномасштабных проектов я собрал некоторые урокив этой структуре.Посмотрите на образцы тоже.Некоторые из затронутых вами проблем уже рассмотрены в этой кодовой базе, такие как использование концепций ОО, минимизация и оптимизация, разделенный дизайн модуля и многие другие.

2 голосов
/ 10 февраля 2012

Я бы порекомендовал посмотреть на использование ExtJS 4 для этого. Его API и методология разработки точно отслеживают то, что вы ожидаете от .NET или Java для разработки крупномасштабного настольного приложения.

Версия четыре отвечает на все четыре ваших вопроса. Он имеет ...

1) Система для определения Java / C # -подобных классов в Javascript, которые работают почти так же, как и разработчики на Java или C #. 2) Динамическая загрузка ресурсов. 3) Возможность создать конечный продукт из SDK, который представляет собой аккуратную, сжатую версию, которая содержит именно то, что вам нужно.

...