Выгодная экономия
Освойте серверную разработку на C# с нуля до Middle в Scrum-команде
29 апреля
Basic
12 месяцев
Онлайн
Тем, кто хочет с нуля освоить принципы программирования и развиваться в разработке на C#. Язык применяется в серверной разработке и web-разработке, а также в создании игр.
Практикуйтесь в Scrum-командах: получайте опыт, который ценят работодатели
Эксперты OTUS следят за рынком IT и регулярно обновляют программу
2 онлайн-урока по 2 академических часа в неделю, вечный доступ к учебным материалам
Домашние задания, интерактивные тренажеры с автопроверкой и проектные работы усилят портфолио и прокачают навыки
Общение на вебинарах и в закрытом телеграм-чате, развёрнутые ответы при проверке домашних заданий
Вы выполняете домашнее задание
Ментор проверяет ДЗ в личном кабинете, подробно комментирует вашу работу и дает развернутое ревью
На занятии (для 1 ступени) / в отдельном чате (для 2 ступени) ментор отвечает на частые вопросы, подробно разбирает работы студентов, объясняет каждый этап выполнения ДЗ
Вы можете проконсультироваться с ментором в телеграм-чате. Ментор расскажет об итогах проверки, объяснит непонятные детали
Ступень рассчитана на людей без опыта в IT, которые хотят освоить программирование на одном из самых популярных языков С#. Вместе с наставником вы пройдете путь от изучения синтаксиса C# до разработки своего первого десктопного приложения. На курсе вы: - научитесь работать с платформой .NET Core и средой разработки Visual Studio; - научитесь управлять версиями кода с помощью системы контроля версий Git; - освоите базовые принципы ООП; - получите основы работы со SQL базами данных (на примере SQLitе); - научитесь использовать язык запросов LINQ.
Вы узнаете из чего обычно состоит программа на языке C#, установите среду разработки Visual Studio и научитесь писать программы, работающие с базовыми коллекциями Array и List, добавите обработку исключений и перегрузку методов в них.
Тема 1: Вводное занятие. Знакомство // ДЗ
Тема 2: Среда разработки VisualStudio Code: интерфейс, базовый функционал
Тема 3: Переменные и операторы
Тема 4: Методы, их перегрузка и расширения
Тема 5: Добавляем выводы и решения // ДЗ
Тема 6: Символы и Строки
Тема 7: Делаем программу интерактивной
Тема 8: Групповая менторская консультация
Тема 9: Системы контроля версий
Тема 10: Массив и лист // ДЗ
Тема 11: Исключения и их обработка // ДЗ
Тема 12: Консультация общая
В этом модуле вы познакомитесь с основополагающей концепцией языка - Объектно-Ориентированные Программированием, а также тем функционалом, который позволяет реализовать эту концепцию в коде.
Тема 1: Классы как основа C# // ДЗ
Тема 2: Три кита ООП: Наследование, Полиморфизм и Абстракция
Тема 3: Объектно-Ориентированное Программирование (продолжение)
Тема 4: Интерфейсы // ДЗ
Тема 5: Групповая менторская консультация
Тема 6: Структуры и перечисления
Тема 7: Анонимные типы, кортежи, лямбда-выражения и анонимные методы // ДЗ
Тема 8: Консультация общая
В этом модуле вы научитесь взаимодействовать с Телеграммом, чтобы создавать полноценных ботов, а также будет затронута тема работы с файлами, как простейший способ хранения чувствительных данных (API ключа).
Тема 1: Занятие по внутренней организации приложения
Тема 2: Делегаты, Event-ы, добавляем асинхронное выполнение // ДЗ
Тема 3: Знакомство с Telegram API // ДЗ
Тема 4: Различные виды клавиатур
Тема 5: Работа с файлами // ДЗ
Тема 6: Консультация общая
В этом модуле вы научитесь работать с основным способом взаимодействия с данными - коллекциями. Начав с повторения основ, вы продолжите изучение обобщёнными, наблюдаемыми и неизменяемыми коллекциями, а также с коллекциями, предназначенными для одновременного доступа из нескольких потоков.
Тема 1: Основные коллекции: массив, список, связный список
Тема 2: Основные коллекции: очередь, стек, словарь, хешсет // ДЗ
Тема 3: Групповая менторская консультация
Тема 4: Generic коллекции
Тема 5: Observable, Immutable и Concurrent коллекции // ДЗ
Тема 6: LINQ запросы
Тема 7: LINQ операторы // ДЗ
Тема 8: Консультация общая
Здесь вы познакомитесь с базами данных, научитесь добавлять, получать, редактировать и удалять данные в них. Также, вы узнаете и о том, из чего состоят базы данных и как с этим взаимодействовать (таблицы, индексы).
Тема 1: Введение в базы данных
Тема 2: Групповая менторская консультация
Тема 3: Выборки данных // ДЗ
Тема 4: Хранимые процедуры и функции
Тема 5: Индексы: кластерный и не кластерный // ДЗ
Тема 6: Linq2DB, Dapper // ДЗ
Тема 7: Консультация общая
Этот модуль позволит вам по-новому взглянуть на программирование, на этот раз в разрезе производительности, как кода (анализ сложности алгоритмов, рекурсии, деревья), так и самих программистов и команд (системы контроля версия, стили кодирования).
Тема 1: Анализ сложности алгоритмов и сортировка
Тема 2: Групповая менторская консультация
Тема 3: Взаимосвязь циклов и рекурсии // ДЗ
Тема 4: Деревья и кучи // ДЗ
Тема 5: Групповая менторская консультация
Тема 6: Code style от Майкрософт, DRY/DIE, Yagni, KISS
Тема 7: Консультация общая
В этом модуле вы получите заключительную групповую консультацию по проектным работам, а также предоставите к защите свою проектную работу.
Тема 1: Карьерное консультирование
Тема 2: Консультация по проектам
Тема 3: Защита проектов
Вы сможете разрабатывать на C# сложные клиент-серверные приложения, используя паттерны проектирования и возможности CLR (многопоточность, асинхронность, рефлексия, сериализация) и LINQ. Навыки, которые вы освоите, позволят претендовать на позиции уровня начинающего Senior / крепкого Middle. Вы узнаете во что разворачиваются различные конструкции и их представления в промежуточном языке (IL). Поработаете с SQL и NoSQL базами данных, кэшированием, Unit-тестами, CI/CD и другими сложными и полезными инструментами.
В этом модуле вы узнаете как граммотно выстраивать архитектуру проекта и в рамках трёх занятий научитесь эффективному взаимодействию как с SQL, так и NoSQL базами данных.
Тема 1: Знакомство, рассказ о формате Scrum, краткий обзор курса // ДЗ
Тема 2: Domain Driven Development: Основы
Тема 3: Domain Driven Development: Практикум
Тема 4: Архитектура проекта
Тема 5: Базы данных: организация работы с потоками данных
Тема 6: Базы данных: реляционные базы и работа с ними // ДЗ
Тема 7: Базы данных: Entity Framework Core
Тема 8: Базы данных: NoSQL базы и их особенности
Тема 9: Ретроспектива и планирование
После этого модуля вы сможете писать быстрый многопоточный и эффективный асинхронный код, обмениваться данными между разными приложениями, а также познакомитесь с порождающими, структурными и поведенческими шаблонами проектирования.
Тема 1: Введение в параллелизм в .NET. Отличия процесса, потока, домена и таска // ДЗ
Тема 2: Асинхронные операции
Тема 3: Магические слова async / await
Тема 4: Синхронизация доступа к общему ресурсу
Тема 5: Взаимодействие потоков
Тема 6: Внутрипроцессное взаимодействие // ДЗ
Тема 7: Межпроцессное взаимодействие
Тема 8: Порождающие шаблоны проектирования // ДЗ
Тема 9: Структурные шаблоны проектирования
Тема 10: Поведенческие шаблоны проектирования
Тема 11: Ретроспектива и планирование
Здесь вы разберётесь с тем, как выстроить правильную архитектуру проекта, чем авторизация отличается от аутентификации, какие бывают паттерны корпоративных приложений и зачем их использовать. Также, вам наверняка пригодится понимание таких аббревиатур как WCF, ASMX, REST, SOLID и CI/CD.
Тема 1: Интеграция приложений
Тема 2: Принципы SOLID // ДЗ
Тема 3: Брокеры сообщений
Тема 4: CI/CD
Тема 5: Ретроспектива и планирование
В этом модуле вы научитесь правильно использовать такие мощные инструменты языка как рефлексия, атрибуты, исключения, дженерики, делегаты и события. Также, разберёмся в том, как внутри и снаружи работает Сборщик мусора, как писать и использовать финализаторы. Напоследок, рассмотрим дополнительные возможности языка и возможности, добавленные в последних версиях.
Тема 1: Отражение (Reflection) // ДЗ
Тема 2: Сериализация
Тема 3: Атрибуты
Тема 4: Исключения и нюансы работы с ними
Тема 5: Работа с методами как с переменными (delegates, events) // ДЗ
Тема 6: Дженерики, их реализация и ограничения
Тема 7: Сборщик мусора, деструкторы и финализаторы, Disposable Pattern
Тема 8: Дополнительные возможности языка: от директив препроцессора до указателей
Тема 9: Что полезного в новых версиях C#
Тема 10: Ретроспектива и планирование
Этот модуль даст вам понимание современных и не очень методологий с более подробным рассмотрением DDD. А из более технических вещей, будут рассмотрены различные подходы в тестировании, журналировании, документации и трассировке
Тема 1: Waterfall, Scrum, Kanban и прочие методологии
Тема 2: Unit, Sandbox, Blackbox, Whitebox, Integration tests
Тема 3: Логирование, метрики, трассировка и ведение документации
Тема 4: Реактивное программирование
Тема 5: Функциональное программирование
Заключительный модуль курса посвящен проектной работе. Проект — это отличная возможность объединить все полученные на курсе знания в одной системе.
Тема 1: Консультация по проектам и домашним заданиям
Тема 2: Защита проектных работ
Каждый семестр завершается финальным проектом, который предстоит защитить перед преподавателями. Вам будет, что обсудить на собеседовании!
Вы можете выбрать одну из предложенных преподавателем тем или реализовать свою идею.
Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания
OTUS осуществляет лицензированную образовательную деятельность.
Вы получите сертификат о прохождении обучения, а также можете получить диплом о профессиональной переподготовке.
Стоимость в рассрочку