Если вы молодой программист и у вас не очень много опыта, некоторые темы в современном программировании могут показаться вам слишком абстрактными.
Например, такие, как паттерны проектирования или принципы SOLID.
Когда меня спрашивают про SOLID, я понимаю, что все короткие ответы меня не удовлетворяют. В то же время, работая в команде, я могу рассказывать младшим программистам об абстракциях на примере нашего собственного кода. Такие рассказы гораздо доходчивее.
Промышленная разработка — лучшая ситуация для обучения, если вам повезло с проектом, командой и тим-лидом. Но что делать, если не повезло?
В московском клубе программистов регулярно делают доклады на тему паттернов, DDD, SOLID. К сожалению, они носят слишком обзорный характер. Во-первых, продолжительность доклада всего сорок минут; а во-вторых, этот формат не позволяет раскрывать детали.
Нужен совместный проект, в котором можно столкнуться реальными проблемами и решать их, попутно осваивая теорию. Проект должен быть достаточно условным и учебным, чтобы за деревьями мы не потеряли лес — наша задача не в запуске программы, а в том, чтобы научиться.
## Проект
В качестве учебного проекта мы возьмём книжный интернет-магазин. Каждый из нас покупал книги в интернете и хорошо представляет предметную область. Нам не придётся пару недель разбираться в том, что мы хотим сделать.
С другой стороны, интернет-магазин уже достаточно велик и практичен, чтобы мы могли столкнуться с проблемами и понять, как абстрактные знания помогают их решать.
## Формат
Место обучения: Zoom
Длительность занятия: 1,5 часа
Расписание занятий: каждый вторник с 19:00 до 20:30, начиная с 28 апреля (, , , , , , , )
Продолжительность: 8 встреч, то есть полный курс займёт два месяца.
По согласованию с участниками, количество встреч может быть изменено.
Курс бесплатный и это накладывает ограничение на участников. Вам должно быть интересно учиться. И вы должны помогать друг другу, потому что я один не успею. Что конкретно будет происходить:
* Мы будем обсуждать задачи и их решения.
* Я буду расшаривать экран и писать код, попутно объясняя, что и зачем я делаю.
* Я буду отвечать на вопросы.
* Весь урок будет записан и выложен в YouTube, так что вы сможете позже просмотреть его и поэкспериментировать с кодом самостоятельно.
## Темы
* C#
* SQL
* git и GitHub
* Agile: бэклог, пользовательские истории, итерации
* Модульное тестирование
* Паттерны проектирования
* Принципы SOLID
* DDD (Domain Driven Design)
* MVC
* Entity Framework
У нас интернет-магазин, поэтому, конечно, нам придётся использовать HTML, CSS и JavaScript. Я не планирую глубоко погружаться в эти темы, в том числе потому, что не специализируюсь на них и глубоко не разбираюсь.
## Пожелания
Не всем этот курс может быть полезен. Если вы хотите научиться программировать с нуля, этот курс окажется слишком сложным. Если вы старший программист, то вряд ли узнаете что-то новое.
Курс подойдёт вам, если вы программируете несколько лет и знаете два-три языка программирования. Хорошо, если один из этих языков является наследником C, то есть это C , C#, Java, PHP, JavaScript.
Важно, чтобы вы понимали основы объектно-ориентированного программирования, чтобы вас не пугали термины класс, объект и наследование.
Разработка будет вестись в Visual Studio 2019 Community Edition. Это бесплатная IDE от Microsoft, которая работает под Windows. Её можно запустить на MacOS. Разрабатывать код можно будет и под Linux в вашем любимом редакторе.
Исходный код проекта на GitHub:
1 view
1073
311
1 week ago 00:04:07 1
Лобовое стекло Lixiang l7 Max #chinacarpw
4 weeks ago 00:03:08 27
DA108 1994г. на 5 Канале (первое интервью, Горьковская Туса)
4 weeks ago 00:04:23 1
ЭТО ОЧЕНЬ ВКУСНЫЙ ТОМАТ! Новинка 2023 - высокорослый томат ДЕВИЦА-КРАСАВИЦА F1
4 weeks ago 00:01:57 1
Вместо КОТЛЕТ на Праздничный Стол! Нереально Вкусно!
4 weeks ago 00:01:31 1
😍 Брайан Трейси про Президента Академии УспехВместе Андрея Шауро! SuccessTogether!
4 weeks ago 00:02:29 1
💥Изменение кода судьбы! Благотворительный тренинг 2-3-4 Августа Самара и 23-24-25 Августа Алматы!
4 weeks ago 00:01:56 1
NL International – больше, чем сетевой (Intro)
4 weeks ago 00:06:03 1
Хлорофитум Грин Оранж - не такой как все | Обзор сорта хлорофитума с оранжевыми листьями
4 weeks ago 00:29:44 2
Европейские аналоги Великой китайской стены времен Римской империи
4 weeks ago 00:44:08 2
Когда в Европе закончился каменный век, и при чём тут римские монахи?.. Фильм 91
4 weeks ago 00:26:37 2
НЕ МОГ человек РАЗУМНЫЙ находиться 200000 лет в первобытном состоянии!.. Фильм 90
4 weeks ago 00:44:19 2
Кто и Когда придумал Рождество Христово… Фильм 89
4 weeks ago 00:09:28 1
Заметки на полях. Нижний Новгород - Спартак.
4 weeks ago 01:15:00 1
Зимний шлем спицами
4 weeks ago 00:12:15 1
ИГРОВОЙ ПК ЗА 10К КОТОРЫЙ ДЕЙСТВИТЕЛЬНО ТАЩИТ В 2024 ГОДУ / СБОРКА ПК ЗА 10000 РУБЛЕЙ by KOMPUKTER
4 weeks ago 01:26:49 1
Лидер оппозиции Казахстана Аблязов. Драка с Токаевым, побег из тюрьмы, похищение семьи, покушения
4 weeks ago 00:02:36 1
КАЗАХ СТАВИТ НА МЕСТО АЗЕРБАЙДЖАНЦЕВ #азербайджан
4 weeks ago 00:15:48 1
20 причин, почему Telegram — лучший мессенджер!
4 weeks ago 01:34:37 1
Основатель ВКУСВИЛЛ: уйти из найма и сделать 280 млрд. на любви к клиентам. Философия BEYOND TAYLOR
4 weeks ago 00:13:23 7
Цикламен - цветущее зимой комнатное растение. Домашние цветы необыкновенной красоты.