Функции приложения

Безопасность

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

В частности, мы постараемся сделать так, чтобы нашему сайту не могли повре­дить такие виды злонамеренных атак, как внедрение SQL-кода (SQL-инъекция), меж- сайтовый скриптинг (cross-site scripting — XSS) или поддельные межсайтовые запро­сы (cross-site request forgeries — CSRF). Это особенно важно для сайтов, на которых не только работают javascript и Ajax, но и активно обрабатываются и размещаются данные, присылаемые пользователями. Мы будем корректно фильтровать представ­ленные данные и не допускать их бесконтрольного возврата в браузер.

Журнал событий и операций

Один из аспектов разработки, тесно связанный как с безопасностью, так и с бы­стродействием веб-приложения, — это ведение журнала событий и операций (как часто говорят, лога). В нашем приложении в таком журнале будут отмечаться наи­более существенные события. Например, всякий раз, когда пользователь пытается войти на сайт под неверным именем или паролем, это событие будет отмечаться в журнале.

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

Ниже описаны некоторые из способов сделать код приложений легко расши­ряемым, дорабатываемым и отлаживаемым.

■ Использовать систему управления шаблонами для отделения кода операций с данными от кода визуального представления.

■ Использовать уровень абстрактной базы данных для управления взаимодей­ствием с данными на сервере.

■ Организовать код с применением объектно-ориентированных средств языка РНР 5.