В недавнем проекте, над которым я работал в C # / ASP.NET, у меня есть несколько довольно сложных файлов JavaScript и несколько изящных таблиц стилей. По мере увеличения размера этих ресурсов сценариев желательно минимизировать ресурсы и, конечно же, максимально облегчить ваши веб-страницы. Я знаю многих разработчиков, которые после отладки вручную подают свои ресурсы JavaScript в компрессоры, а затем разворачивают свои приложения.
Когда дело доходит до управления исходным кодом и автоматических сборок в удовлетворяющем мире непрерывной интеграции (спасибо CruiseControl.NET ); Ручное сжатие просто не подойдет. Единственный способ сохранить контроль над исходными текстами и предложить сжатые ресурсы - это сохранить исходный код JS / CSS и их уменьшенных собратьев в отдельной структуре каталогов. Затем зарегистрируйте только один набор ресурсов или другой в коде позади. Однако, если разработчик вносит изменения в исходный код JS / CSS, а затем не может перепаковать его и проверить в обеих версиях, то ваша строка кода теперь не синхронизирована. Не говоря уже о не элегантности.
Я думаю, что было бы неплохо написать собственный исполняемый файл (если он еще не существует) для блока задач CC.NET, который бы находил и сжимал все ресурсы JavaScript и CSS в целевом каталоге после действия сборки, но до того, как asp.net опубликует для таргетинга. Таким образом, разработчики будут работать только с исходным кодом JS и CSS, а пользователи будут получать только минимизированные ресурсы.
Существует ли приложение, которое уже выполняет эту задачу, и если нет, то какие ресурсы следует искать для установки на сервере сборки, чтобы CC.NET выполнялся?
( ближайший вопрос Я мог бы найти здесь для этого требуемого NAnt, что не вариант в моем случае.)
EDIT:
У Дэйва Уорда теперь есть отличная статья о том, как автоматически минимизировать в Visual Studio на своем сайте.