Цепочка кафедральных курсов, использующих свободное программное обеспечение (Дмитрий Волканов, OSEDUCONF-2022) — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) |
StasFomin (обсуждение | вклад) |
||
;{{SpeakerInfo}}: {{Speaker|Екатерина ЛапшинаДмитрий Волканов}} <blockquote> Рассмотрены варианты разработки программного кода с использованием свободногоВ докладе рассказывается про опыт преподавания курсов «Язык программирования Python», «Совместная разработка на Python», «Разработка программного обеспечения, которое позволяет создать программный продукт с минимальным набором навыков через визуальные интерфейсы и конструкторы с помощью Low-code платформы для GNU/Linux», «Архитектура современных ЭВМ» и «Практические аспекты сетевых протоколов в Linux» на кафедре АСВК факультета ВМК МГУ имени М.В. Ломоносова и рассказывается о том числе, какое свободное программное обеспечение используется в рамках данных курсов. </blockquote> {{VideoSection}} {{vimeoembed|917657452|800|450}} {{youtubelink|}} {{SlidesSection}} [[File:Тенденции разработки программного обеспечения с использованием Low-code платформЦепочка кафедральных курсов, использующих свободное программное обеспечение (Екатерина ЛапшинаДмитрий Волканов, OSEDUCONF-2022).pdf|left|page=-|300px]] {{----}} == Thesis == Low-code платформы разработки — это приложение, которое предоставляет графический пользовательский интерфейс для программирования и, таким образом, разрабатывает код с большей скоростью и сокращает затраченные усилия с минимальным количеством кодирования. Подобные платформы реализованы в (СПО)<ref name="d1">[https://www.hmong.press/wiki/Low-code_development_platform Платформа разработки low-code — определение]</ref>. Такие среды разработки применяются для создания прикладного программного обеспечения через графический интерфейс пользователя вместо стандартного программирования вручную.Основным направлением [https://asvk.cs.msu.ru/ деятельности кафедры АСВК] факультета ВМК МГУ имени М. В. Ломоносова является подготовка помощью платформ Low-code возможно создание полностью рабочего приложения, а в редких случаях — с использованием дополнительного кодирования. Данные среды разработки также помогают сократить объём программирования, что позволяет ускорить создание приложений. Большим преимуществом является то, что расширяется круг людей, которые могут внести свой вклад в разработку приложения. Low-code платформы также могут снизить первоначальные затраты на настройку, обучение и обслуживание. Недавнее исследование бостонской компании Mendix показало, что спрос на разработчиков среди ИТ-специалистов достиг апогея. Почти шесть из десяти (57%) говорят, что количество персонала, необходимого для разработки программного обеспечения, увеличивается, апо разработке распределённой инфраструктуры для передачи больших потоков данных. В настоящее время разработан ряд курсов, [https://www.reworked.co/information-management/whats-behind-the-explosion-of-low-code-and-no-code-applications/ стоимость разработки программного обеспечения растёт (61%)]. Также отметим, что в связи с растущими ожиданиями клиентов и изменением потребностей рынка после пандемии предприятия в разных отраслях всё больше проявляют инициативу в создании цифрового контента для потребителей. Поэтому сегодня одним из решений является работа с Low-code платформами. Рассмотрим варианты Low-code платформ для различных целей. * [https://nl-a.ru/nla-framework NL!A framework] — российский бесплатный low-code framework, позволяющий создавать полноценные бизнес-приложения. Модели, заложенные в кодогенератор NL!A framework, позволяют за считаные секунды создать полноценное рабочее бизнес-приложение; * [https://www.outsystems://uneex.ru/ выстраивающихся в единую цепочку]. В докладе рассказывается о тех курсах, что читались в 2021/2022 учебном году. На младших курсах студенты факультета ВМК изучают Паскаль, Ассемблер, C и С++. Студенту при выполнении курсовой работы необходимо владеть языком программирования Python. В рамках курса «Язык программирования Python» изучают современное состояние языка программирования Python, синтаксис и основные приёмы программирования на нём, а также выполняют домашние задания. В рамках курса используется Python и его инфраструктура. Разработка программ это не только написание кода, но и ряд дополнительных активностей, а также умение работать в команде. На курсе «Совместная разработка приложений на Python» изучаются три аспекта совместной разработки приложений:/ OutSystem] — это надёжная и гибкая low-code платформа для разработки корпоративных мобильных и веб-приложений, которые разворачиваются в локальной или в гибридных средах; * [https://soware.ru/products/mendix Mendix] — это бескодовая (no-code) программная платформа, предоставляющая инструменты для создания, тестирования,развёртывания и проверки программных приложений. Помимо бесплатных и дисциплина совместной работы (DVCS), направления разработки (документирование, тестирование, интернационализация, деплоймент), а также инструментарий, определяемый языком программирования Python. В качестве отчёта студенты объединяются в микрогруппы и пишут совместный проект. В курсе рассматриваются система контроля версий популярных платформ, также существуют различные варианты Low-code СПО с открытым исходным кодом, таких как Appsemble, Skyve, Baserow и другие. Наличие таких разнообразных платформ говорит о популярности данных решений и их развитии. Есть ряд других причин, по которым предприятиям следует рассматривать Low-code платформы: # Более быстрый выход на рынок; # Повышение удовлетворённости клиентов; # Снижение затрат на ИТ-инфраструктуру; # Более эффективное управление приложениями; # Лучшее управление ИТ; Безусловно, подобные среды разработки —git, средство документирования кода Sphinx, несколько систем локализации и сборки. Разработка невозможна без знания современных архитектур. Архитектура процессоров RISC-V на данный момент, наиболее стройная и понятная из всех актуальных архитектур вычислительных систем. В курсе «Архитектура и язык ассемблера RISC-V» прослеживается связь между конкретной организацией процессора и общими принципами построения вычислительных систем. В учебном процессе используются эмулятор RARS, а также среда разработки и визуализатор выполнения кода RISC-V. Специалист по разработке должен понимать, как работает сеть Интернет. Задача курса «Практические аспекты сетевых протоколов в Linux» иллюстрация организации и работы семейства сетевых протоколов TCP/IP на примере операционной системы семейства GNU/Linux. В курсе рассматриваются все уровни TCP/IP в той мере, в какой они используются системой. Для практических занятий в курсе предусматривается использование виртуальных машин VitrualBox. Разработка невозможна без знания жизненного цикла создания программного обеспечения (ПО). В курсе Разработка программного обеспечения для GNU/Linux рассматривается жизненный циклпанацея, а лишь вариант решения для создания программного продукта, поэтому Low-code платформы имеют ряд минусов: # Сложность в выборе подходящего ресурса; # Ограничения в функционале; # Зависимость от платформы; Рассматривая плюсы и минусы Low-code платформ, можно сделать вывод, что отлично подходят для быстрого создания небольших проектов и увеличения количества реализуемых решений. Они сокращают разрывпользователями и разработчиками, что позволяет в короткий срок получить работающий прототип и сформировать видение будущей системы. Также можно проследить стремительное развитие данногов целом и как СПО. См также: Лапшина Е.А., Симонов В.Л. Преимущества информационных систем с веб-интерфейсом // XIX Международная конференция «Современные информационные технологии в образовании, науке и промышленности» 29—30 апреля на примере практик, используемых при разработке приложений на C для операционной системы семейства GNU/Linux. Всё ПО используемое в рамках курсов является свободным и обладает такими свойствами, как публичная доступность, достаточная для обучения функциональность, возможность лицензирования и публикации результатов. Несвободное ПО имеет ряд усложнений, затрудняющее его изучение. Также стоит отметить, что все лекции читаются в прямом эфире на сайте youtube.com, все желающие могут задать вопросы в чате и затем лекции выкладываются в открытом доступе. года, г. Москва. {{----}} [[File:{{#setmainimage:Тенденции разработки программного обеспечения с использованием Low-code платформЦепочка кафедральных курсов, использующих свободное программное обеспечение (Екатерина ЛапшинаДмитрий Волканов, OSEDUCONF-2022)!.jpg}}|center|640px]] {{LinksSection}} <!-- <blockquote>[©]</blockquote> --> <references/> [[Категория:OSEDUCONF-2022]] [[Категория:Draft]] |
Версия 23:15, 6 марта 2024
- Докладчик
- Дмитрий Волканов
В докладе рассказывается про опыт преподавания курсов «Язык программирования Python», «Совместная разработка на Python», «Разработка программного обеспечения для GNU/Linux», «Архитектура современных ЭВМ» и «Практические аспекты сетевых протоколов в Linux» на кафедре АСВК факультета ВМК МГУ имени М.В. Ломоносова и рассказывается о том, какое свободное программное обеспечение используется в рамках данных курсов.
Содержание
Видео
Презентация
Thesis
Основным направлением деятельности кафедры АСВК факультета ВМК МГУ имени М. В. Ломоносова является подготовка специалистов по разработке распределённой инфраструктуры для передачи больших потоков данных. В настоящее время разработан ряд курсов, выстраивающихся в единую цепочку. В докладе рассказывается о тех курсах, что читались в 2021/2022 учебном году.
На младших курсах студенты факультета ВМК изучают Паскаль, Ассемблер, C и С++. Студенту при выполнении курсовой работы необходимо владеть языком программирования Python. В рамках курса «Язык программирования Python» изучают современное состояние языка программирования Python, синтаксис и основные приёмы программирования на нём, а также выполняют домашние задания. В рамках курса используется Python и его инфраструктура.
Разработка программ это не только написание кода, но и ряд дополнительных активностей, а также умение работать в команде. На курсе «Совместная разработка приложений на Python» изучаются три аспекта совместной разработки приложений: инструменты и дисциплина совместной работы (DVCS), направления разработки (документирование, тестирование, интернационализация, деплоймент), а также инструментарий, определяемый языком программирования Python. В качестве отчёта студенты объединяются в микрогруппы и пишут совместный проект. В курсе рассматриваются система контроля версий git, средство документирования кода Sphinx, несколько систем локализации и сборки.
Разработка невозможна без знания современных архитектур. Архитектура процессоров RISC-V на данный момент, наиболее стройная и понятная из всех актуальных архитектур вычислительных систем. В курсе «Архитектура и язык ассемблера RISC-V» прослеживается связь между конкретной организацией процессора и общими принципами построения вычислительных систем. В учебном процессе используются эмулятор RARS, а также среда разработки и визуализатор выполнения кода RISC-V.
Специалист по разработке должен понимать, как работает сеть Интернет. Задача курса «Практические аспекты сетевых протоколов в Linux» иллюстрация организации и работы семейства сетевых протоколов TCP/IP на примере операционной системы семейства GNU/Linux. В курсе рассматриваются все уровни TCP/IP в той мере, в какой они используются системой. Для практических занятий в курсе предусматривается использование виртуальных машин VitrualBox.
Разработка невозможна без знания жизненного цикла создания программного обеспечения (ПО). В курсе Разработка программного обеспечения для GNU/Linux рассматривается жизненный цикл создания программного продукта на примере практик, используемых при разработке приложений на C для операционной системы семейства GNU/Linux.
Всё ПО используемое в рамках курсов является свободным и обладает такими свойствами, как публичная доступность, достаточная для обучения функциональность, возможность лицензирования и публикации результатов. Несвободное ПО имеет ряд усложнений, затрудняющее его изучение.
Также стоит отметить, что все лекции читаются в прямом эфире на сайте youtube.com, все желающие могут задать вопросы в чате и затем лекции выкладываются в открытом доступе.