Технологический семинар

Санкт-Петербург, весна 2012

Описание

Курс предназначен для краткого знакомства некоторыми широко распространёнными с технологиями, которые используются при разработке программного обеспечения. В курсе будет рассказано о linux, скриптовых языках, VCS, XML и многом другом. Форма курса -- лекции. Зачёт ставится на основе домашних заданий.

Преподаватели

Список лекций

История Unix-систем

Краткое содержание: * Создание UNIX. * Ответвление BSD. * Коммерческие версии UNIX. * Возникновение GNU. * Становление Linux систем. * Развитие BSD систем. * Краткая характеристика современных дистрибутивов Linux.

Основы UNIX систем

Краткое содержание: * Файлы и файловая система. * Программы и процессы. * Пользователи и группу. * Зачем нужен shell? * Основы работы в bash-e. * Манипулирование файлами и их правами. * Пути: абсолютные и относительные. * Файловые маски *,?,{} * man

Работа и программирование в shell-е

Краткое содержание: * Одна задача — одна программа. * Работа с потоками ввода-вывода (stdout, stdin, stderr). * Перенаправление потоков. * Создание конвееров. * Редакторы. Как выйти из vi =). * Создание скриптов. * Основы программирования bash: переменные, циклы, условные выражения.

Регулярные выражения

Краткое содержание: * Зачем нужны регулярные выражения? * Типы регулярных выражений. * Введение в синтаксис PCRE. * Жадные и не жадные регулярные выражения. * Способы применения регулярных выражений: поиск и замена.

Язык Perl

Краткое содержание: * История. * Что значит интерпретируемый язык. * Основные типы данных. * Основы синтаксиса. * Основные операции с числами и строками (., сравнение строк) * Основные конструкции (циклы, услоные выражения, switch). * Регулярные выражения. * Массивы и хэши. * Функции.

Язык PHP

Краткое содержание: * Структура сети Интернет. * Взаимодействие веб-сервера и клиента. * Динамические страницы: SSI и CGI. * История и область применения. Использование с html. * Переменные и типы: числа и строки (как в Perl). * Работа с файлами. Регулярные выражения. * Основные конструкции (циклы, условные выражения). * Функции. * Reflection.

LaTeX

Краткое содержание: * WYSISWG. * История не WYSISWG издательских систем: ROFF, TeX, LaTeX. * Как TeX обрабатывает документы. * Математические формулы в TeX. * Как LaTeX расширяет TeX. * Основные средства разметки LaTeX.

Язык Python

Краткое содержание: * История появления языка Python. * REPL (Read-eval-print loop) — интерактивная среда программирования. * Синтаксис: числа, комплексные числа, строки. * Основные управляющие инструкции языка Python: if-elif-else, while, for. * Последовательные структуры данных: списки и кортежи. * Функции range() и xrange(). * Функции: как их определять. * О других возможностях Python.

XML

Краткое содержание: * Зачем нужны языки разметки? * Почему именно XML? * Какие проблемы решаются использованием XML, а какие нет. * Что такое DOM и SAX? * XML библиотеки для разных языков программирования. * Описания XML схем. * XSLT. * XPath.

Кодировки текста

Краткое содержание: * История появления кодировок. * Кодировки для кириллического текста. * Много байтовые кодировки. * Unicode. * Передача данных через почтовый протокол: base64.

Системы контроля версий

Краткое содержание: * История систем контроля версий. * Основные понятия. * CVS, SVN. * Распределённые системы контроля версий. * Основные сценарии работы.