Старт:
1 января 2014

Основы программирования на C#

Смешанное обучение (теория онлайн, практики очно или через онлайн-звонок с группой)
2 семестра, 6–12 часов в неделю


Программа курса:

1.     Первое знакомство с C#
Первое знакомство с C#. Типы данных. Методы. Области видимости

2.     Ошибки
Ошибки компиляции. Стилистические ошибки

3.     Ветвления
Логический тип bool. Оператор if-else. Типичные ошибки ветвлений

4.     Циклы
Цикл while. Цикл for

5.     Массивы
Одномерные массивы. Сокращенный синтаксис. Типы ссылки и типы значения. Многомерные массивы

6.     Коллекции, строки, файлы
Список List. Словарь Dictionary. Строки. Файлы и каталоги

7.     Тестирование
Введение в тестирование. Модульные тесты. Продвинутые техники. Внедрение тестирования

8.     Сложность алгоритмов
Основные понятия. О-символика. Оценка сложности алгоритмов

9.     Рекурсивные алгоритмы
Рекурсия. Перебор подмножеств. Перебор перестановок и размещений

10. Поиск и сортировка
Линейный и бинарный поиск. Сортировка пузырьком. Сортировка слиянием и быстрая сортировка

11. Основы ООП
Классы и объекты. Поля. Методы. Статистические классы

12. Наследование
Наследование. Приведение типов. Интерфейсы. Полиморфизм

13. Целостность данных
Целостность данных. Свойства. Конструкторы

14. Структуры
Структуры. Ключевое слово ref. Boxing/unboxing. Структуры и свойства

15. Очереди, стеки, дженерики
Стеки и очереди. Дженерики. Связные списки. Класс Tuple. Класс Nullable

16. yield return
IEnumerable и IEnumerator. Цикл foreach. Ленивые коллекции. yield return

17. Листы и словари
Класс List. Индексация. Перегрузка операторов. Хеширующие функции. Класс Dictionary. Класс HashSet

18. Делегаты
Делегаты. Лямбда-выражения. Замыкание

19. Элементы функционального программирования
Примеры использования делегатов. Частично применение функций. Цепочки методов

20. LINQ
LINQ

21. Оконные приложения
События. Windows Forms. Паттерн MVC

22. Графы и обходы
Графы. Обход в ширину. Обход в глубину. Топологическая сортировка

23. Жадные алгоритмы
Комбинаторные задачи. Жадные алгоритмы. Алгоритм Краскала. Алгоритм Дейкстры

24. Многопоточное программирование
Процессы и потоки. Общие ресурсы и lock. Обзор конструкции async/await

25. Динамическое программирование
Динамическое программирование. Расстояние Левенштейна. Алгоритм Форда-Беллмана

26. Структуры данных
Бинарная куча. Очередь с приоритетами. Бинарное дерево поиска

27. Рефлексия типов
Рефлексия. Получение информации о типах с помощью рефлексии. Создание объекта с помощью рефлексии. Атрибуты. Обзор Expressions .Обзор Code Emission


Результаты обучения

Студент узнает:

  • синтаксис и особенности языка C#;

  • основы написания программ на языке C#;

  • техники создания «чистого» кода;

Студент сможет:

  • применять техники объектно-ориентированного проектирования программного обеспечения;

  • эффективно использовать интегрированную среду разработки MicrosoftVisualStudio для написания, отладки и тестирования программ на языке C#;

  • использовать ReSharper в разработке программ любого уровня;

Студент будет владеть:
  • навыками написания эффективного, легко читаемого и поддерживаемого программного кода;

  • техникой рефакторинга.

Формируемые компетенции:

  • способность общаться со специалистами из других областей (ОК-2);

  • способность порождать новые идеи (ОК-5);

  • способностью работать самостоятельно, заботой о качестве, стремлением к успеху (ОК-6);

  • владение методами математического моделирования при анализе глобальных проблем на основе глубоких знаний фундаментальных математических дисциплин и компьютерных наук (ПК-1);

  • способность к интенсивной научно-исследовательской и научно-изыскательской деятельности (ПК-3);

  • умение ориентироваться в современных алгоритмах компьютерной математики, совершенствовать, углублять и развивать математическую теорию, лежащую в их основе (ПК-7);

  • способность к творческому применению, развитию и реализации математически сложных алгоритмов в современных программных комплексах (ПК-9);

  • определение общих форм, закономерностей, инструментальных средств для групп дисциплин (ПК-10);

  • способность к управлению и руководству научной работой коллективов (ПК-13)

Все характеристики
Вниз
Кому адресована:
Студенты и преподаватели колледжей
Уровень образования:
Среднее профессиональное образование
Бакалавриат
Формы реализации:
Очная, с применением ЭО и ДОТ
Заочная, с применением ЭО и ДОТ
Профстандарты:
09.03.01 Информатика и вычислительная техника
09.03.02 Информационные системы и технологии
09.03.03 Прикладная информатика
09.03.04 Программная инженерия
02.03.01 Математика и компьютерные науки
02.03.02 Фундаментальная информатика и информационные технологии
10.03.01 Информационная безопасность
10.05.01 Компьютерная безопасность
Условия взаимодействия:
Совместная реализация образовательной программы
Тип условия:
Бесплатно, образовательное учреждение может воспользоваться курсом без дополнительных согласований
Области IT:
языки программирования
разработка программного обеспечения
искусственный интеллект и робототехника
автоматизация систем управления

Отзывы о программе

Курс невероятно познавательный и интересный. Все лекции очень информативные и средней длины, что позволяет достаточно быстро и эффективно освоить материал. После усвоения материала предоставляются практические задания, которые помогают изученную теорию уже применить на практике, из-за чего материал после этого на долго откладывается в голове. Также ближе к концу курса накапливается уже достаточно знаний, чтобы писать самые настоящие 2D игры на собственном движке! Я, когда написал свою 2D стратегию, долго поверить не мог, что я уже столько всего могу :)

Отзыв про ятп и ооп
Если в целом, то кажется что больше всего пользы я, конечно, же получил от преподавателя (у меня был Саша Сорокин, он ооооочень классный). Я пришел на матмех с нулевыми знаниями программирования и именно с курса по ятп начинал изучать. Он хорошо структирован и дает отличную базу для дальнейшего изучения. Да, мне было очень больно с нуля осваивать программирования, над некоторыми задачами бился всё неделю, но зато потом эти приемы запоминались надолго.

Про ооп
На этот момент нас уже научили "как писать простой код" и поэтому можно было вникнуть в приемы проектирования, понимая их и сразу применяя на практике

Курс интересный, информация достаточно легко усваивалась. На начальных этапах маленькие тесты помогали запомнить материал. Практики тоже интересные, особенно свободная практика по написанию игры. Было интересно исследовать код в больших задачах, можно было найти интересные моменты и фичи. Код-ревью от преподавателей очень зашёл, было интересно замечать ошибки и придумывать способы хорошего исправления.

Курс "Основы программирования на C#" оставляет приятные впечатления - сложные, но интересные задачи позволяют погрузиться в язык даже без опыта в программировании. Понятные лекции доставляют всю базу знаний, однако для решения задач придется много думать самому. Этот момент в курсе часто принимают как отрицательный, но я бы сказал, что это не так. Некоторые задачи очень тяжело решаются, но оставляют за собой целый багаж опыта разработки, исправления ошибок, тестирования. После прохождения курса начинаешь чувствовать себя "на плаву" в разработке.

Влево
Вправо

Другие программы

Все программы
26
Старт:
1 октября 2021

Управление производственными процессами с применением отечественной ERP-системы

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

Кому адресована
1
Кому адресована
1
Закрыть
Преподаватели ВУЗов
Уровень образования
1
Уровень образования
1
Закрыть
Магистратура
Формы реализации
1
Формы реализации
1
Закрыть
Дистанционная
Профстандарты
3
Профстандарты
3
Закрыть
06.012 Менеджер продуктов в области информационных технологий
06.014 Менеджер по информационным технологиям
06.015 Специалист по информационным системам
Старт:
1 октября 2021

Управление человеческим капиталом с применением отечественной ERP-системы

Программа направлена на подготовку специалистов и консультантов для реализации проектов по разработке и внедрению сложных бизнес-систем в сфере HR.

Область IT
1
Область IT
1
Закрыть
Администрирование на предприятии
Кому адресована
1
Кому адресована
1
Закрыть
Преподаватели ВУЗов
Уровень образования
1
Уровень образования
1
Закрыть
Магистратура
Формы реализации
1
Формы реализации
1
Закрыть
Дистанционная
Профстандарты
3
Профстандарты
3
Закрыть
06.012 Менеджер продуктов в области информационных технологий
06.014 Менеджер по информационным технологиям
06.015 Специалист по информационным системам
Старт:
1 сентября 2021

38.04.05 Бизнес-информатика

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

Кому адресована
1
Кому адресована
1
Закрыть
Выпускники бакалавриата
Уровень образования
1
Уровень образования
1
Закрыть
Магистратура
Формы реализации
1
Формы реализации
1
Закрыть
Очная, с применением ЭО и ДОТ
Профстандарты
5
Профстандарты
5
Закрыть
06.012 Менеджер продуктов в области информационных технологий
06.014 Менеджер по информационным технологиям
06.015 Специалист по информационным системам
06.017 Руководитель разработки программного обеспечения
06.022 Системный аналитик
Старт:
1 сентября 2021

01.03.02 Прикладная математика и информатика, направленность «Прикладное программирование и корпоративные информационные системы»

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

Область IT
3
Область IT
3
Закрыть
Администрирование на предприятии
Продвижение, оптимизация, маркетинг
Дизайн, графика, анимация
Кому адресована
1
Кому адресована
1
Закрыть
Выпускники школ
Уровень образования
1
Уровень образования
1
Закрыть
Бакалавриат
Формы реализации
1
Формы реализации
1
Закрыть
Очная, с применением ЭО и ДОТ
Профстандарты
6
Профстандарты
6
Закрыть
06.001 Программист
06.003 Архитектор программного обеспечения
06.004 Специалист по тестированию в области информационных технологий
06.015 Специалист по информационным системам
06.022 Системный аналитик
06.041 Специалист по интеграции прикладных решений
Образовательные организации
1
Старт:
1 сентября 2021

09.03.04 Программная инженерия, специализация «Промышленная инженерия программного обеспечения»

Программа направлена на подготовку разработчиков системного программного обеспечения.

Область IT
3
Область IT
3
Закрыть
Разработка, проектирование
Продвижение, оптимизация, маркетинг
Дизайн, графика, анимация
Кому адресована
1
Кому адресована
1
Закрыть
Выпускники школ
Уровень образования
1
Уровень образования
1
Закрыть
Бакалавриат
Формы реализации
1
Формы реализации
1
Закрыть
Очная, с применением ЭО и ДОТ
Профстандарты
4
Профстандарты
4
Закрыть
06.001 Программист
06.003 Архитектор программного обеспечения
06.004 Специалист по тестированию в области информационных технологий
06.028 Системный программист
Образовательные организации
1
Показать еще
5