р М., Архітектура корпоративних програмних додатків/Мартін Фаулер: Адисона-Венслі, 2012. - 560 с.
Фрімен А., ASP.NET MVC 3 Framework з прикладами на C # для професіоналів/Адам Фрімен, Стівен Сандерсон: Вільямс, 2012. - 667 с.
Дюбуа П., MySQL/Поль Дюбуа; пров. з англ, Воронін В.: Вільямс, 2007. - 1168 с.
Соколов, С. А. HTML і CSS в прикладах, типових рішеннях і завданнях. Професійна робота./С. А. Соколов.- М .: Вільямс, 2007.
Вікіпедія - зведена енциклопедія [Електронний ресурс]//ru.wikipedia
Блог веб-розробника - блог [Електронний ресурс]//true-coder
Школа XHTML - уроки [Електронний ресурс]//xhtml.co.il/ru/
Уроки по AJAX - уроки [Електронний ресурс]//ajaxs
Додаток 1
Простий CGI код на Python.
#!/usr/bin/env pythonMySQLdb Content-Type: text/htmlraquo;laquo;lt;htmlgt;lt;headgt;lt;titlegt;Книгиlt;/titlegt;lt;/headgt;raquo;laquo;lt;bodygt;raquo;laquo;lt;h1gt;Книгиlt;/h1gt;raquo;laquo;lt;ulgt;raquo;= MySQLdb.connect (user= me raquo ;, passwd= letmein raquo ;, db= my_db )=connection.cursor (). Execute ( SELECT name FROM books ORDER BY pub_date DESC LIMIT 10 ) row in cursor.fetchall (): lt; li gt;% s lt;/li gt; % Row [0] lt;/ul gt; lt;/body gt; lt;/html gt; .close ()
Як можна написати попередній CGI код, скориставшись можливостями Django.
models.py:django.db import modelsBook (models.Model):=models.CharField (max_length=50) _date=models.DateField (). py: django.shortcuts import render_to_responsemodels import Booklatest_books ( request): _ list=Book.objects.order_by(laquo;-pub_dateraquo;)[:10]render_to_response(laquo;latest_books.httraquo;, { book_list raquo ;: book_list}). py: django.conf.urls.defaults import * views=patterns ( ,
(r ^ latest/$ raquo ;, views.latest_books),
) _ books.htt:
lt; html gt; lt; head gt; lt; title gt; Книги lt;/title gt;
lt;/head gt;
lt; body gt;
lt; h1 gt; Книги lt;/h1 gt;
lt; ul gt;
{% for book in book_list%}
lt; li gt; {{book.name}} lt;/li gt;
{% endfor%}
lt;/ul gt;
lt;/body gt;
lt;/html gt;
Додаток 2
the_object; http_request=new XMLHttpRequest (); _ request.open ( GET raquo ;, url, true); _ request.send (null); _ request.onreadystatechange=function () {(http_request.readyState == 4) {(http_request.status == 200) {_object=JSON.parse (http_request.responseText);
} else {( There was a problem with the URL. );
} _ request=null;
}
};
Додаток 3
Приклад веб-сторінки HTML5
lt;! doctype html gt;
lt; html gt;
lt; head gt;
lt; meta charset=utf - 8 gt;
lt; title gt; (Це title) Приклад сторінки на HTML5 lt;/title gt;
lt;/head gt;
lt; body gt;
lt; header gt;
lt; hgroup gt;
lt; h1 gt; Тема h1 з hgroup lt;/h1 gt;
lt; h2 gt; Тема h2 з hgroup lt;/h2 gt;
lt;/hgroup gt;
lt;/header gt;
lt; nav gt;
lt; a href=link1.html gt; Перше посилання з блоку nav lt;/a gt;
lt; a href=link2.html gt; Друге посилання з блоку nav lt;/a gt;
lt;/nav gt;
lt; section gt;
lt; article gt;
lt; h1 gt; Заголовок статті з блоку article lt;/h1 gt;
lt; p gt; Текст абзацу статті з блоку article lt;/p gt;
lt; details gt;
lt; summary gt; Блок details raquo ;, текст тега summary lt;/summary gt;
lt; p gt; Абзац з блоку details lt;/p gt;
lt;/details gt;
lt;/article gt;
lt;/section gt;
lt; footer gt;
lt; time gt; Вміст тега time блоку footer lt;/time gt;
lt; p gt; Вміст абзацу з блоку footer ...