Организация CSS и Javascript в одном шаблоне мультипроектного сайта - PullRequest
1 голос
/ 23 августа 2010

Давайте начнем с context .Что у меня в руках?

  • Несколько веб-приложений (все .NET: WebForms и MVC)
  • Общий шаблон пользовательского интерфейса
  • Каждое приложение имеет также свой собственныйЭлементы пользовательского интерфейса.
  • Несколько файлов для css / javascript.Некоторые общие для всех приложений, некоторые специфические для приложения.
  • Десятых файлов на странице = несколько запросов на странице = медленно.

Вопрос: Ваместь какие-либо идеи или комментарии по моим идеям для достижения следующих целей?

  • Сократить количество запросов до минимума.
  • Минимизируйте CSS и JavaScript.
  • ИспользованиеCDN для их распространения.
  • Иметь жизнь и иметь возможность управлять областью пользовательского интерфейса.

Идея 1

Централизация пользовательского интерфейсав проекте.Каждый виджет пользовательского интерфейса будет там с образцом (который можно будет протестировать позже).

Я могу «построить» пользовательский интерфейс: minify, group, publish для глобального известного места.Приложения могут ссылаться на эти глобальные файлы и использовать элементы пользовательского интерфейса.

Это приведет к некоторой дисциплине при использовании пользовательского интерфейса.Это не будет «взломать CSS, и все готово».И через 3 месяца все полно хаков, и вы не знаете, с чего начать, когда что-то исправляете.

плохо : вы работаете с приложением, но часть пользовательского интерфейса должна работатьэто сначала в другом проекте.Перейдите туда, создайте свои виджеты, а затем используйте их в своем приложении.

Idea 2

Забудьте идею CDN и воспользуйтесь динамическим .NET minifier / packer,Я поделюсь основными частями пользовательского интерфейса, и каждое приложение будет генерировать динамически необходимые им пакеты во время выполнения.

bad : нет CDN, динамически генерируется то, что, как вы знаете, статично, нет централизованного местадля пользовательского интерфейса (у вас есть общая база, но больше ничего).

1 Ответ

1 голос
/ 23 августа 2010

Мы делаем что-то подобное, используя внешние символы в SVN. То есть иметь централизованную копию (отдельный проект был бы целесообразен), а затем использовать внешние SVN для обновления и распространения во всех местах, где это необходимо.

Если вы использовали номера версий, вы также можете получить CDN, а также обойти любые проблемы с выпуском, когда некоторые сайты выпускаются на разных этапах.

Полагаю, вы можете использовать не SVN, а просто идею. Сокращение может быть сделано с компрессором YUI, много информации об этом в дикой природе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...