Независимый от языка учебник или книга по веб-приложениям - PullRequest
3 голосов
/ 10 июля 2010

Существует ли какое-либо независимое от языка учебное пособие или книга для разработки веб-приложений?

Например, реализация процедур входа в систему, создание фотогалереи и т. Д., Не ориентированных на какой-либо конкретный язык?

Ответы [ 3 ]

1 голос
/ 16 сентября 2010

Шаблоны архитектуры корпоративных приложений Мартина Фаулера - хорошее начало.

Пример кода на Java и .Net, но шаблоны выходят за пределы любого конкретного языка программирования. В нем рассматриваются такие темы, как, как реализовать сеансы на стороне сервера, шаблоны, используемые для создания инфраструктуры Model-View-Controller, шаблоны, используемые для создания инфраструктуры реляционного сопоставления объектов, и немного о том, как связать все это вместе.

Несколько других парадигм вошли в драку с момента ее написания, которые не рассматриваются, такие как внедрение зависимостей. Там нет покрытия баз данных NoSql и когда их использовать. В нем также отсутствует освещение более ретро-тем, таких как CGI, и более старых фреймворков / языков, которые использовали этот стандарт (например, веб-приложения, написанные в Small talk). Книга также предшествует широкому распространению таких фреймворков, как Rails. Транзакции обрабатываются адекватно, но покрытие не является полным, обращаясь к читателю к «Принципам обработки транзакций» Бернштейна и Новичка для получения более подробной информации.

Возможно, стоит дополнить чтение PEAA хорошим пониманием сокетов Unix и того, как это связано с возможностями многопоточности и разделяемой памяти, предлагаемыми языком, на котором вы программируете свое веб-приложение. Функции параллелизма выполнения Временная среда, в которой развернуто ваше приложение, будет влиять на то, как вы обрабатываете запросы и выполняете сеансы на стороне сервера. Если вам нужно напомнить себе о сокетах, прочитайте главу 12 «Иллюстрированной сети» Горальского. Если вы действительно хотите отвлечься, прочтите главы о работе с сетями и многопоточности в «Компьютерные системы: взгляд программиста» Брайанта и О'Халларона, хотя это может быть излишним. Просто знайте возможности параллелизма выбранного вами языка программирования и как он взаимодействует с сетевым уровнем.

Необходимо хорошее понимание протокола HTTP. Это заложит прочную основу для изучения других важных стандартов, основанных на HTTP, таких как REST и AJAX. Для более подробной информации о HTTP есть «HTTP: Полное руководство» Гурли и Тотти. Также есть W3C. Для ознакомления с REST взгляните на

http://www.infoq.com/articles/rest-introduction

Для полного обзора кистей HTTP и сокетов взгляните на Википедию.

Что касается удобства использования, я бы порекомендовал следующие две книги с книжной полки Pragmatic:

http://pragprog.com/titles/bhgwad/web-design-for-developers

http://pragprog.com/titles/jsaccess/design-accessible-web-sites

Наконец, в отношении безопасности хорошим началом может стать «24 смертных греха безопасности программного обеспечения» Говарда, ЛеБлана и Виеги. Часть 1 посвящена веб-приложениям, а часть 4 - безопасности сети в целом. Часть 3, посвященная криптографии, также хороша, если вы генерируете токены «запомнить меня», хранящиеся в cookie, чтобы пользователю не приходилось входить в систему каждый раз, когда они используют ваше приложение.

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

1 голос
/ 16 сентября 2010

Я бы предложил книгу типа Архитектура веб-приложений: принципы, протоколы и практики .В нем содержится общий обзор частей разработки веб-приложения с некоторыми реальными примерами, когда они требуются.

1 голос
/ 10 июля 2010
...