Содержание
-
Практикум на ЭВМ, 261гр.(IV семестр)
Георгий Чернышев chernishev@gmail.com
-
Тема: программирование для ОС Linux
Зачем? Получение востребованных знаний TOP500, big data, серверыит.д. Посмотреть как оно “за кулисами”, обучение Есть исходные коды всего, можно “вырасти” в кого угодно: специалиста по компиляторам (разобрав gcc), специалиста по СУБД (PostgreSQL), специалиста по графике (разобрав пару 3D движков)ит.д. Существует точка зрения, что университетское обучение проигрывает самостоятельной работе (вышеупомянутое обучение методом разбора) по результативности Альтернативная ос Знакомство с принципами индустриальной разработки Доступ к профессиональному сообществу
-
TOP500, источник: wikipedia
-
Тема: программирование для ОС Linux
Знакомство с ОС, командная строка Введение в скриптовый язык Работа с файлами Управление данными Отладка, юнит-тестирование, контроль версий Многопоточное программирование Сокеты … если успеем, то: QT, работа с СУБДи еще куча всего
-
Как будем заниматься
Опросы Читаем литературу и делимся знаниями с преподавателем Контрольные “Допуск” к сдаче следующих ДЗ (против любителей не ходить, а в конце принести всё) Домашние задания Очевидно Хвосты с прошлого семестра Да, я не забыл Постараюсь сделать SVN Самостоятельная работа – необходима! Интернет, курс Симуни
-
Чтение литературы
План (с книгами и номерами страниц) – по ссылке https://docs.google.com/document/d/138WLPhTkmurIbqTilvW-sEYvAC-Qn0CT-PtuXPR1OqI/edit?usp=sharing Опросы будут проходить по четвергам Не прочтете – не сможете выполнить практическое задание.
-
Литература
Обязательный список: Основы программирования в Linux, 4-е издание. Нэйл Мэтью, Ричард Стоунс. Бхв Петербург 2009. Linux. Руководство программиста. Дж. Фуско. --- СПб.: Питер 2011. --- 448с. Linux: программирование в примерах. А. Роббинс. Изд. 3-е./Пер. с англ. --- М.: КУДИЦ-ПРЕСС, 2008. --- 656 с. Дополнительный: Любые другие книги, которые сочтете нужными MAN, лучшая замена всему вышеперечисленному, но на английском языке
-
Домашнее задание
Поставить виртуальную машину, а в нее –Ubuntu Поставить инструментарий по своему усмотрению Редакторы: vim, emacs, nano, code::blocks, QTCreator, … Midnight Commander (подобен FAR’у, сильно упрощает жизнь) Отладчик Valgrind (понадобится позднее) Систему контроля версий SVN (понадобится позднее) Написать, откомпилировать и запустить “hello world” Потратить оставшееся время на освоение командной строки В пятницу предъявить мне результаты труда
-
Инструкции (не очень детальные)
СтавимVirtualBox Там более-менее всё очевидно Ставим Ubuntu (рекомендуется 12.04) Запустите VB и создайте новую VM, там выберите Linux и Ubuntu Память: минимум 512МБ, не отдавайте более половины что естьв системе Диск: создайте новый типа VDI, фиксированного размера, рекомендуют хотя бы 8 ГБ, берите 20 ГБ и хватит на всё (для наших задач) Настройки->Подключить CD-диск Следуйте инструкциям установки Выньте диск Подробные инструкции на английском языке http://www.psychocats.net/ubuntu/virtualbox Установка Ubuntuhttp://www.ubuntu.com/download/help/install-desktop-long-term-support
-
Что упростит жизнь
Если экран фиксированного размера или тормозит, то challenge: самостоятельно поставить Guest Additions http://www.virtualbox.org/manual/ch04.html Настройка двунаправленного буфера копирования (свойства виртуальной машины) Интернет должен работать из коробки Перекидывать файлы через SVN
-
Полезные команды (пока - “заклинания”)
ls,rm, mv, cd, ps, … mc – избавит от всего что выше, ну почти grep nano sudo apt-get install g++ Что же это такое? Ключик --help, например ls --help man google.com
-
Задание на сегодня(выполняется на си)
Дан списоксписков, где каждый подсписок это названия некоторого города. Гарантируется, что списки попарно не пересекаются. Вам дан на вход список посещенных городов. Задача: вывестинеповторяющийся список городов, с сохранением порядка относительно первого посещения. Кроме того, необходимосовершить этот вывод в канонической форме. Каноническое название города это первый элемент соответствующего списка. Вход не должен быть регистрозависимым Представление данных на ваш выбор: можно массив строк, можно списки ит.д. Однако названия городов обязательнопредставляются в виде строк. Все кто покажут на паре, будут освобождены отдемонстрации и запуска этой программы в Linux.
-
Пример к задаче
Данные: Санкт-Петербург, Питер, Ленинград, Петроград Москва, Кучково, МСК, Бологое ТВЕРЬ, Калинин Исходная строка: бОЛОгое, мск, Санкт-Петербург, КалиНиН, Москва, тверЬ, Питер Результат: Бологое, Москва, Санкт-Петербург, ТВЕРЬ
Нет комментариев для данной презентации
Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.