Подготовка к семинару и семинар

В рамках семинара планируется провести обсуждение подходов к установке приложений из исходных кодов в GNU/Linux. Ключевая задача семинара — формирование понимания подходов к установке приложений с помощью современных технологий. Студенты должны разобраться в одной из технологии и рассказать о результатах своих исследований другим слушателям курса.

Студентам, которые хотят претендовать на оценку большую чем удовлетворительно, необходимо принять участие в семинаре и подготовить следующие материалы:

  • Презентацию, описывающую использование данной технологии.
  • Краткое руководство по компиляции примера приложения на выбранной технологии.

Презентацию необходимо подготовить на 10-15 минут. Приветствуется активное участие в обсуждении.

Список технологий для рассмотрения

  • Компилирование и установка Си/C++-приложений с помощью cmake.
  • Компилирование и установка Си/C++-приложений с помощью scons.
  • Компилирование и установка Си/C++-приложений с помощью ninja.
  • Компилирование и установка Си/C++-приложений с помощью qmake.
  • Компилирование и установка Си/C++-приложений с помощью meson.
  • Компилирование и установка Java-приложений с помощью gradle.
  • Компилирование и установка Java-приложений с помощью maven.
  • Компилирование и установка Kontlin-приложений.
  • Компилирование и установка Scala-приложений.
  • Компилирование и установка Go-приложений.
  • Компилирование и установка Rust-приложений.
  • Компилирование и установка C#-приложений.
  • Компилирование и установка Haskell-приложений.
  • Компилирование и установка Ocaml-приложений.
  • Компилирование и установка Nim-приложений.
  • Компилирование и установка D-приложений.
  • Компилирование и установка Common Lisp-приложений.
  • Компилирование и установка Ada-приложений.
  • Компилирование и установка Object Pascal-приложений.
  • Компилирование и установка Vala-приложений.
  • Установка нужных версий интерпретатора, установка зависимостей и запуск Python-приложений.
  • Установка нужных версий интерпретатора, установка зависимостей и запуск Ruby-приложений.
  • Установка нужных версий интерпретатора, установка зависимостей и запуск PHP-приложений.
  • Установка нужных версий интерпретатора, установка зависимостей и запуск JavaScript(nodejs)-приложений.
  • Установка нужных версий интерпретатора, установка зависимостей и запуск Perl-приложений.
  • Установка нужных версий интерпретатора, установка зависимостей и запуск Elixir-приложений.
  • Установка нужных версий интерпретатора, установка зависимостей и запуск Erlang-приложений.
  • Установка нужных версий интерпретатора, установка зависимостей и запуск Lua-приложений.

Приветствуется добавлять свои собственные темы. Новые темы необходимо согласовать с преподавателем.

Краткий план презентации

Необходимо в презентации осветить следующие темы:

  • Обзор выбранной технологии разработки приложений
    • Ключевые особенности языка программирования
    • Ключевые сферы применения
    • Примеры использования в GNU/Linux
  • Обзор выбранного средства для сборки приложения
    • Принципиальный подход к выполнению сборки и установки приложения
    • Краткий обзор формата конфигурационного файла
    • Принципиальная (типичная) схема применения средства сборки
  • Пример сборки и установки конкретного приложения на выбранной технологии
    • В качестве примера следует использовать активно развивающийся проект
    • В качестве примера следует использовать чистую установку Debian Buster внутри виртуальной машины
    • Если технология это поддерживает, установка интерпретатора.