Розробка програмного забезпечення з відкритим кодом (прикладна математика, 1.9)
Тип: На вибір студента
Кафедра: обчислювальної математики
Навчальний план
Семестр | Кредити | Звітність |
11 | 4.5 | Залік |
Лекції
Семестр | К-сть годин | Лектор | Група(и) |
11 | 32 | Вавричук В. Г. | ПМп-62м |
Лабораторні
Семестр | К-сть годин | Група | Викладач(і) |
11 | 16 | ПМп-62м | Вавричук В. Г. |
Опис курсу
Для більшості це буде несподіванкою, але комфорт нашого життя є високим у великій мірі завдячуючи програмним рішенням з відкритим кодом. Тобто таким, що за означенням доступні для аналізу, а інтеграція та копіювання яких обмежується ліцензією, що зазвичай вимагає лише згадки про використання відповідного програмного забезпечення, або у більш жорсткому випадку відкриття коду успадкованого програмного забезпечення. Наприклад, масштаб використання ПЗ з відкритим кодом можна побачити на прикладі Android смартфону відкривши меню “Налаштування > Про телефон > Нормативно-правова інформація > Правова інформація > Ліцензії третьої сторони”. Розробка ПЗ з відкритим кодом зазвичай відбувається за участі спільноти і процес розробки (тікети, рецензування коду і т.д.) доступні для широкого загалу. Успіх ПЗ з відкритим кодом має глибокі психологічні корені: очевидно, що ми працюємо краще, коли наша робота видима для всіх. У курсі розглядаються просунуті засоби SCM, які є необхідністю при розробці ПЗ з відкритим кодом, адже вони забезпечують чистоту історії коду, що є особливо важливою проблемою при великій кількості учасників в розробці, поширеній практиці рецензування коду. Також, розглядаються два достатньо великих, загальновідомих та відмінних проекти з відкритим кодом.
Метою навчальної дисципліни є знайомство студентів з рухом розробки ПЗ з відкритим кодом, набуття базових вмінь, які є необхідними для участі в проектах з відкритим кодом.
Рекомендована література
Основна література:
1. The Architecture of Open Source Applications (AOSA) Volume 1-2. – https://aosabook.org/en/
2. Edwin Kempin. Git Concepts and Workflows. – Google Munich. – https://tinyurl.com/mwbtb6et
3. https://github.com/microsoft/vscode/wiki/How-to-Contribute
4. https://gerrit-documentation.storage.googleapis.com/Documentation/3.8.1/index.html
5. https://gerrit.googlesource.com/gerrit/+/refs/heads/master/README.md
Додаткова література:
6. Eric Steven Raymond. The Cathedral and the Bazaar. – http://www.catb.org/~esr/writings/cathedral-bazaar/
7. Маніфест GNU, https://www.gnu.org/gnu/manifesto.html
8. https://github.com/chernivtsijs/made-in-ukraine
9. https://github.com/collections/made-in-ukraine