В прошлом году я здесь просил совета, относительно курса веб-технологии.
Для тех кому лень читать, я преподаватель на ИТ факультете, и я веду предмет веб-технологии для 3-х курсов. 3-и курсы знают базовые веб-технологии, то есть могут создавать относительно простые динамические сайты, но до профессионалов еще далеко.
Прошел год, и теперь я хочу поделится тем что у меня получилось.
Цель: показать подводные камни веб-разработки, научить создавать профессиональные сайты.
Вот описание и порядок тем на этом курсе:
- Использование CSS при верстке float, position.Возможности CSS3
- Виды верстки, их реализация и их недостатки и преимущества. (Резиновая, фиксированная верстка).
- Javascript фреймворки, в частности jQuery.
- Асинхронные запросы на сервер. Аякс, long-polling, websocket, streaming.
- HTML5. Потоки, Canvas, SVG.
- Веб-фреймворки, CMS, MVC. (В частности CodeIgniter и для примера установка и создание страниц на Wordpress)
- Веб-фреймворки, ORM (Object-Relational-Mapping) и кеширование
- Куки и сессии. Виды аутентификации, реализация активирования аккаунта, "запомнить меня", OpenID.
- Безопасность и взлом сайтов, SQL-injection, Local File Include, Brute-force, XSS-атаки, CSRF-атаки.
- Мошенничество в интернете, фишинговые страницы, защита от роботов, Капча.
- SEO. поисковые механизмы, поисковая оптимизация, релевантность, методы продвижения, сайты сателлиты, спамдексинг, клоакинг.
- Сервера, виды баз данных, настройка CRON, .htaccess. NoSQL базы данных.
- Реклама в интернете, Google Adwords, Adsence, Begun. Платежи в сети. Авторские права в сети.
Некоторые вещи пришлось изучать походу семестра. Большинство тем получилось поверхностными, но мне кажется так лучше, что они хотя бы будут знать о существовании этих решений. На следующий год планирую добавить CoffeeScript, и показать Django.
Что скажете? Что лишнее? и что можно добавить?