Наверх

*.aspx - необходимый файл или пережиток для ASP.NET приложений.

Архив
Время чтения: 2 минуты
1
*.aspx - необходимый файл или пережиток для ASP.NET приложений.

Нужны ли *.aspx-файлы или можно весь прикладной код поместить в бинарный вид?

В ходе разработки одного веб-проекта (делали прототип портала на технологии ASP.NET 2.0) столкнулся с проблемой создания полностью «динамической»aspx-страницы, «динамической» в плане, что страница представляет собой отдельный класс в сборке, без визуальной части в виде *.aspx-файла.

Такой подход удобен, когда нужно генерировать страницу с разнородным cодержимым, меняя в зависимости от условий коллекцию компонентов и(или) страницу-шаблон (MasterPage) . Например, мы дублировали логику работы с веб-частями аналогично SharePoint Portal Server + добавляли свои доработки в области прав, шаблонов наполнений страниц и другие функции.

На этапе активной разработки я столкнулся с «информационным вакуумом» - складывается впечатление, что почти никто не пытался писать веб-приложения таким образом. Еще один факт – все примеры использования сторонних веб-компонентов приводились с использованием *.aspx-файла. Однако при попытке создания их через CreateChildControls возникали проблемы, которые решались только эмпирическим путем – они нигде не были описаны!

Встает вопрос – имеет ли право на существование такой способ программирования, или это все же нестандартный подход для прототипов и его нельзя использовать в коммерческих разработках?

Аргумент в пользу права на жизнь такого подхода могу привести такой, что в ASP.NET 2.0 появилась возможность опубликовать веб-сайт вообще без всяких *aspx-файлов (они пустые, и их можно смело удалять). Кроме того код в бинарном виде взламывать сложней (пусть даже и для .NET существуют удобные средства восстановления исходного кода), чем голый «текст» *.aspx-файла.    

Ваши мнения?

Чтобы прочитать эту статью до конца,
или зарегистрируйтесь

Комментарии 1

Андрей Подкин 22 ноября 2006
Если взять, не ASP.NET, а, например, Django, то там программисту дается полная свобода: нужен ему файл с визуальным шаблоном - пусть делает, не нужен - можно не делать. И какой подход более более стандартный - тот еще вопрос.
И сделано это именно для удобства, а не для защиты (защиты там как раз никакой не сделать - язык интерпретируемый).

Чтобы прокомментировать, или зарегистрируйтесь