Разработка программного обеспечения для GNU/Linux
Лектор: Георгий Курячий
Время и место проведения: по пятницам в 18:00, аудитория П-14
Первая лекция: 28 сентября 2012 г.
Лицам, не имеющим пропуск на факультет ВМК МГУ, рекомендуется на первую лекцию принести одну матовую фотографию 3×4 и паспортные данные для оформления пропуска.
Экзамен
Для сдачи надо заранее (не менее, чем за день до экзамена) записаться, написав письмо с темой «Экзамен дата ФИО» по адресу <frbrgeorge@gmail.com>.
Внимание: от количества записавшихся зависит количество приглашённых экзаменаторов, и, соответственно, сдающих экзамен.
- Первая итерация экзамена пройдёт 21 декабря 2012 года в аудитории П-14, начало в 16:00.
Вторая итерация экзамена — 25 января 2013 года в 12 часов, сбор около ауд 762 (если запишется много народу, закажем аудиторию).
см. также замечание о методах сдачи-приёмки экзамена
Аннотация
- Название: Разработка программного обеспечения для GNU/Linux
- Title: GNU/Linux application software development
В курсе рассматривается жизненный цикл создания программного продукта на примере практик, используемых при разработке приложений для ОС семейства GNU/Linux.
Освещены следующие темы:
- Дисциплина оформления исходного кода
- Документирование
- Совместная разработка и контроль версий
- Повторное использование кода, в том числе сторонне разработанного
- Сборка сложного продукта и определение сборочных зависимостей
- Отладка и тестирование
- Перевод и интернационализация
- Конечная установка и распространение программного продукта
По каждой теме предполагается осветить теоретические основы, необходимые для её понимания, дать обзор используемых инструментов и показать процесс применения одного из таких инструментов для самостоятельного решения практических задач.
Курс ориентирован на слушателей, имеющих практический опыт работы в командной строке UNIX-систем, представление об архитектуре операционной системы на базе GNU/Linux и опыт программирования (предпочтительно на Си).
Материалы
№ |
Тема |
Лектор |
Дата |
Конспект |
Аудио |
Видео |
0 |
Установочная лекция. Определение и ограничение круга рассматриваемых тем. Связь с темами предыдущих семестров |
2012-09-28 |
|
|
|
|
Сборочное окружение. «Доисторическая» сборка |
2012-10-05 |
|
|
|
||
Сборочные зависимости и инструменты работы с ними |
2012-10-12 |
|
|
|||
Отладка и трассировка |
2012-10-19 |
|
|
|||
Работа с исходным текстом |
2012-10-26 |
|
|
|||
Дисциплина оформления и ведения исходного текста |
2012-11-02 |
|
|
|||
Информационное пространство дерева исходных текстов |
2012-11-09 |
|
|
|
||
Контроль качества |
2012-11-16 |
|
|
|||
Инструментарии |
2012-11-23 |
|
|
|||
Интернационализация |
2012-11-30 |
|
|
|||
Специфика программирования под Linux в сравнении с другими POSIX-системами |
2012-12-07 |
|
|
|||
Информационное-технологическое обеспечение разработки |
2012-12-14 |
|
|
Практические занятия
Для работы на сервере практикума надо создать ssh-ключ и отправить его открытую часть по адресу frbrgeorge@gmail.com с темой "Практикум" (не забудьте представиться и указать курс и группу).
Решённые домашние задания располагаются в домашнем каталоге пользователя examples (~examples/), в подкаталогах вида "год-номер_недели". Процесс решения домашних заданий фиксируется в хранящихся в подкаталоге scripts typescript-файлах вида "год-номер_недели-номер_попытки.*" (публикуются тут)
Для просмотра необходимо два typescript-файла (что-то.typescript и что-то.timing):
$ scriptreplay что-то.timing что-то.typescript
Запускать в xterm-е размером 80x25, в кодировке ru_RU.UTF-8. У scriptreplay есть необязательный третий параметр — скорость просмотра :).
Как самому сделать typescript? Нет ничего проще! Запустить xterm ( если PuTTY, надо смотреть, какие настройки подойдут) размером 80x25
$ script -tфайл_с_таймингами.timing файл-с-буковками.script Скрипт запущен, файл - файл-с-буковками.script $ всякие команды. они уже записываются! … $ exit Скрипт выполнен, файл - файл-с-буковками.script $ готово, можно использовать
Полученные два файла можно назвать содержательными именами и послать FrBrGeorge.
Для передачи любых файлов на сервер практикума и обратно пользуйтесь scp (или pscp / Winscp ).
См. создание ключа.