C# обучение для чайников

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.
Open shop Создание Инфобизнеса

Создание Инфобизнеса

Мы начинаем создание Видео Школы 2.0.

Проект будет использовать следующие технологии:
ASP.NET, MVC, MySQL, GIT, Bootstrap, JavaScript и др.

У тебя будет возможность стать соавтором этого проекта.



Список уроков | фото | видео

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 FREE Подготовка Visual Studio ASP.NET 00:06:24
66 чел. ★ 4.8 Done
  Мы начинаем создание проекта Видео Школа 2.0
Это будет площадка для обучения и общения.
На этом уроке нужно убедиться, что у вас
установленна подходящая версия Visual Studio,
на которой нужно создать и запустить пустой проект на ASP.NET.

Примечание:
Необходимо создать приложение ASP.NET ***MVC***,
на видео я ошибочно выбрал Web Forms, не повторяйте!
Отчёт отправил: 10558. Иван Воронин Выполнено за 15 мин. [Показать отчёт]
Научился: Созданию проекта ASP.NET MVC 
Сложности: ничего 
Комментарии: Отлично, идём дальше. 
2 Подключение к системе GitHub 00:06:07
46 чел. ★ 4.9 Done
  Для работы мы будем использовать систему управлени версиями GITHUB.
На этом уроке необходимо там зарегистрироваться,
найти меня - FFormula, и наш проект VideoSchool.
Необходимо установить программу SmartGit
и склонировать репозиторий к себе на диск.
URL проекта: https://github.com/FFormula/VideoSchool.git
Отчёт отправил: 10558. Иван Воронин Выполнено за 20 мин. [Показать отчёт]
Научился: Работе в SmartGit 
Сложности: найти время 
Комментарии: уже много лет использую оригинальную консоль git, для работы с github, решил попробовать SmartGit, интересная GUI, надеюсь она мне понравится, пока что то, что было сделано, быстрее было бы сделать в консоли, но я вижу перспективу удобства работы с кучей гепозиториев не бегая по папкам =) 
3 Базовые принципы проекта 00:08:02
39 чел. ★ 5 Done
  На этом уроке я расскажу основные принципы создания нового проекта.
Необходимо внимательно послушать и придумать,
какой функционал ещё можно было бы добавить.
Отчёт отправил: 10558. Иван Воронин Выполнено за 10 мин. [Показать отчёт]
Научился: Ничему 
Сложности: найти время 
Комментарии: Говорил, говорю и говорить буду, нужно дерево движения курсов, см. скриншоты. Так же динамика выполнения уроков на проекте, чтобы человек мог посмотреть свою динамику за последние сутки/неделю/месяц/год... так же мог сравнить со средней динамикой на проекте и лучшей динамикой =) 
4 Иерархия учебных материалов 00:15:35
36 чел. ★ 5 Done
  На этом уроке мы обсудим основной
принцип размещения учебных материалов.
Что есть раздел/курс/модуль/урок/шаг.
Отчёт отправил: 10558. Иван Воронин Выполнено за 8 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: Добавить возможность менять статус урока/курса: "публичный, приватный(КФ, КУ...) платный, бесплатный, акционный". Добавить к уроку теги, тогда это упростит поиск. Теги можно брать с www.wikidata.org по их ID. Например, тег C# имеет ID Q2370 (https://www.wikidata.org/wiki/Q2370) Имеем курс, находясь на его основной страничке, вверху есть закладки. К примеру, Основная, далее отдельно можно сделать закладку со всеми отзывами, так же закладку с кратким списком входящих уроков, отображаемых последовательным списком. Согласен с тем, что уроки должны быть независимыми, чтобы их можно было привязывать к любому курсу в любой последовательности. Каждый урок в свою очередь может состоять из последовательности шагов, требуемых для решения урока (на данный момент у нас они выглядят как список галочек, который проставили и всё), но думаю лучше реализовать систему, которая будет фиксировать каждый шаг, заливая по нему отчёт, по сути, это хорошо подходит для длинных уроков, которые можно разделить на части, каждая из которых и будет шагом (к примеру, урок имеется, ЗМЕЙКА, он длится 1,5 часа где-то, так вот если её разбить на части по 10 минут, уже получается 9 шагов)  
5 Распределение доступов 00:09:43
30 чел. ★ 4.9 Done
  На этом уроке мы обсудим очень важный момент нашей системы
о предоставлении доступа к курсам различным ученикам/классам.
Отчёт отправил: 10558. Иван Воронин Выполнено за 15 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: 1 - думаю, если и делать в школе разделение на классы, то либо по тематике, либо по потоку, т.е. два типа курсов, записанные, где человек купил его и проходит сам, как угодно и удобно, и онлайн курс, где проводятся вебинары, начало записи к примеру 1 сентября и до конца месяца, след потом уже с 1 октября, кто не успел записаться, уже только могут на 1 октября записываться, т.е. запись заранее. 2 - никаких гостей в классе, нечего отвлекать учеников посторонними. 3 - всё верно, общий список доступов, который привязывается потом к группам/типам пользователей. 4 - билеты/флаера лучше сделать динамичными, т.е. это некий объект, которые может содержать в себе доступ к 1 и более курсам/урокам 
6 Социальная сеть проекта 00:14:25
26 чел. ★ 4.9 Done
  На этом уроке мы поговорим о социальной сети,
о медальках и достижениях, а также о партрёрах и статьях.
Отчёт отправил: 10558. Иван Воронин Выполнено за 7 мин. [Показать отчёт]
Научился: Узнал о том, что планировалось за 4 месяца до того, как я зарегистрировался на этом проекте =) 
Сложности: найти время 
Комментарии: Отличная идея, выглядит немного сумбурно, но суть ясна. Основная задача соц. сети на проекте - управление сообщениями в одном месте, как говорилось в видео, хронологически отображаются сообщения, видишь от какой темы отталкивается сообщение, чтобы понять, о чём речь. Я бы добавил фильтрацию сообщений, так как когда они идут все подряд, чередующиеся, не очень удобно, к примеру, надо просмотреть переписку с каким-то конкретным человеком, выбрал фильтр, и другие сообщения не мешают, не нужно листать и искать, можно случайно и пропустить, конечно, можно использовать в браузере Ctrl+F и вбить имя пользователя, тогда под светятся сообщения с ним, но это уже лайфхак, да и страничка должна отображать ВСЁ, а так двух зайцев поймаем и страничка будет меньше и как следствие быстрее грузиться и напрягать хост и удобно читаемая последовательность необходимых сообщений. В фильтре можно использовать варианты всех видов сообщений, которые имеются, генерироваться они могут динамически. это уже техническая часть, но суть я думаю понятна. 
7 Эскизы проекта без видео
13 чел. ★ 5 Done
  Если ты хочешь продолжать вместе с нами -
вот тебе конкретное самостоятельное задание.
Выбери желаемую страницу проекта и нарисуй,
как ты её себе представляешь.

Важна тут не красота, а наличие конкретных элементов - что будет на странице,
какие элементы, какие пункты, какие разделы, какие поля, тексты и т.д.
После того, как рисунок будет сделан - переверни его и ... нарисуй всё заново.

К отчёту приложи фото первого и второго варианта рисунка.
В комментариях напиши название своей страницы
и выпиши через запятую все элементы,
которые присутствуют на этой странице.

(видео в этом уроке нет).

Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: Как видно из скотншотов, на одном выбран радиобатон за сутки, на другом всено решённых задач. Оба графика, как видно из скриншота, показывают статистику за неделю, как будто сейчас ВС вечер =) Статистика задач за сутки, показывает сколько было решено задач за каждый день недели по выбранному языку, для примера взял C# и Java. Кривая может как подниматься выше, так и опускаться, если было решено сегодня меньше задач, чем вчера. Статистика задач всего, показывает сколько решено всего задач на конкретный момент времени, т.е. с каждым днём это количество будет увеличиваться, либо стоять на месте, поэтому кривая может либо ровно идти либо стремиться вверх. Количество на общем количестве синхронизированы с количество в сутки. 
8 Структура страницы 00:22:22
5 чел. ★ 4.8 Open
  На этом уроке мы создадим каркас каждой страницы, определим, из каких частей будет состоять любая страница проекта: шапка, меню, основная часть, форум, подвал.
9 Схема проекта 00:24:40
5 чел. ★ 4.6 $
  На этом уроке мы рассмотрим схему всего сайта.
Какие страницы открываются по пунктам меню
и по другим ссылкам, какие у них адреса,
какого их назначение, что там будет.
10 Список сущностей 00:21:33
5 чел. ★ 5 $
  На этом уроке мы создадим список сущностей проекта.
Каждая сущность - это таблица в базе данных.
Но не каждая таблица - это сущность :)
Самостоятельное задание - подумать о связях между ними.
11 Ядро базы данных 00:15:52
3 чел. ★ 5 $
  На этом уроке мы составим список основных таблиц базы данных.
Для каждой таблицы выпишем необходимые поля.
После этого можно будет создать базу данных.
12 Список всех действий 00:14:41
3 чел. ★ 5 $
  На этом уроке мы начнём проектировать модели,
для этого мы выпишем все действия,
которые можно делать с этой базой данных.
Д/з. Придумать название (имя метода) для каждого действия.
13 Модельные методы 00:14:01
3 чел. ★ 4 $
  На этом уроке мы напишем названия методов
для каждой функции из подготовленного списка.
Д/з. Написать SQL-запросы для каждой функции.
14 Пользовательские запросы 00:15:06
3 чел. ★ 5 $
  На этом уроке мы напишем SQL-запросы для каждого метода модели user.
Д/з. Написать SQL-запросы для всех методов моделей role, action.
15 Запросы ролевых действий 00:14:26
3 чел. ★ 5 $
  На этом уроке мы напишем SQL-запросы для
каждого метода моделей role и action
Д/з. для каждого метода сформулировать action.

16 Названия методических действий 00:14:36
3 чел. ★ 5 $
  На этом уроке мы придумаем названия action/действий
для каждого метода всех описанных моделей.
Доступность этих действий нужно будет проверять
в этих функциях перед их выполнением.
Потом добавим эти действия в таблицу action.
17 Создание модели User 00:28:25
3 чел. ★ 5 $
  На этом уроке мы создаём модель User
18 Репозиторий на GitHub 00:06:14
3 чел. ★ 5 $
  Начинаем использовать репозиторий на гитхабе.
19 Добавление модели MySQL 00:13:57
3 чел. ★ 5 $
  Добавляем модель MySQL из курса Базовый ASP.ект
20 Создание формы авторизации 00:29:49
3 чел. ★ 5 $
  Настройка базы, контроллера, представления.
Запуск первой формы и проверка авторизации.
  Итого:   20 видеоуроков 4 час. 55 мин.
3 чел. ★ 4.9  
  Финалисты:   Tekashnik,   vip,   Max .

Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: Пpинципу размещения учебных материалов.
Трудности:  хорошо все уже придумали
после завершение всего модуля выполниль более не большой тест Желаю проекту успеха.


Научился: Писать SQL-запросы
Трудности: Писать SQL-запросы
Вот несколько SQL запросов, думаю, они немного не доработаны, но принцип понятен. void Insert() INSERT INTO user VALUES (id, name, email, passw, status) bool Login() SELECT passw FROM user WHERE name = 'name' void UpdateStatus() UPDATE user SET status = 'status' WHERE id = 'id' LIMIT 1 void Update() UPDATE user SET name = 'name', email = 'email' WHERE id = 'id' LIMIT 1