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, не повторяйте!
Отчёт отправил: 1295. Дмитрий Че Выполнено за 15 мин. [Показать отчёт]
Научился: создавать пустой проект ASP.NET MVC 
Сложности: мееееедленно грузится 
Комментарии: интересное дело 
2 Подключение к системе GitHub 00:06:07
46 чел. ★ 4.9 Done
  Для работы мы будем использовать систему управлени версиями GITHUB.
На этом уроке необходимо там зарегистрироваться,
найти меня - FFormula, и наш проект VideoSchool.
Необходимо установить программу SmartGit
и склонировать репозиторий к себе на диск.
URL проекта: https://github.com/FFormula/VideoSchool.git
Отчёт отправил: 1295. Дмитрий Че Выполнено за 15 мин. [Показать отчёт]
Научился: Подключаться к проекту в github. 
Сложности: Ничего сложного 
Комментарии: спасибо за урок! 
3 Базовые принципы проекта 00:08:02
39 чел. ★ 5 Done
  На этом уроке я расскажу основные принципы создания нового проекта.
Необходимо внимательно послушать и придумать,
какой функционал ещё можно было бы добавить.
Отчёт отправил: 1295. Дмитрий Че Выполнено за 20 мин. [Показать отчёт]
Научился: попрактиковался в фантазировании) 
Сложности: придумать новый функционал 
Комментарии: Из функционала пришли на ум четыре вещи: 1.  Выводить график/диаграмму динамики выполнения заданий. Абсциссу х привязать к календарю, у - либо к длительности выполнения задания, либо к числу пройденных уроков в этот день. Скорее информативнее будет все же затраченное время, хотя мотивирует больше число задач) С другой стороны можно будет отслеживать рост скорости работы с опытом, что тоже мотивирует. Кроме того сделать лист общей статистики пользователя, где по каждому курсу выдается графическая информация о степени его освоения. 2. К каждому уроку делать посттестирование из 4-5 вопросов как по только что изученному уроку, так и по предыдущим, что будет обновлять давнюю инфу в памяти, не давая ей угаснуть под натиском новой. В конце же каждого курса делать развернутое тестирование (можно из тех же вопросов). Результаты - в сертификат и в статистику пользователя. 3. Если уроки по созданию программ, то сопровождать программы блок-схемой алгоритма. По-моему это очень помогает: видеть цель-целостность проекта до его реализации. 4. Сделать возможность выделять опечатки в постах и нажатием сочетания клавиш отправлять заметку автору текста, как это сделано на многих сайтах. 
4 Иерархия учебных материалов 00:15:35
36 чел. ★ 5 Done
  На этом уроке мы обсудим основной
принцип размещения учебных материалов.
Что есть раздел/курс/модуль/урок/шаг.
Отчёт отправил: 1295. Дмитрий Че Выполнено за 30 мин. [Показать отчёт]
Научился: преодолевать страдания в процессе придумывания нового шага) 
Сложности: придумать шаг 
Комментарии: Прочитать план урока (сделать для каждого урока краткий план в рамочке перед видео), ознакомиться с блок-схемой алгоритма, для чего нажать на иконку рядом с видео (это уже идея фикс...), пройти мини-тест по уроку, перейти к следующему уроку). можно еще выводить кто делает этот урок одновременно с тобой и кнопочку "подмигнуть" ему (кажется я брежу). Ох труден этот новый шаг!) 
5 Распределение доступов 00:09:43
30 чел. ★ 4.9 Done
  На этом уроке мы обсудим очень важный момент нашей системы
о предоставлении доступа к курсам различным ученикам/классам.
Отчёт отправил: 1295. Дмитрий Че Выполнено за 40 мин. [Показать отчёт]
Научился: размышлять о правах доступа как пользователя и как владельца билета 
Сложности: Уразуметь суть билета 
Комментарии: Насколько я понял, билеты - это то, что сейчас пакеты, или точнее это тарифный план? Ты покупаешь билет, который дает тебе право на какие-то курсы? - не совсем понятно в чем суть билета, если это менее гибкая система, чем шведский стол пакетов. Если как поощрение, вроде выигрыша: вот тебе билет на который ты можешь купить любой курс, или любые два их предложенных, или скидку получить - это понятно. И чтобы он несгораемый был - висит у тебя в профиле, пока  не используешь. А зачем билет для доступа, если права доступа  уже есть в пользователе + меню из набранных курсов. Я так понимаю, что этот билет создается для гибкости (внес в него набор прав из списка, включая доступ к курсам - вот твой уникальный билет) и цельности доступа. И пользователь может ознакомиться с содержанием своего билета. А что-то в него добавить/убрать может? Или надо новый билет покупать? 
6 Социальная сеть проекта 00:14:25
26 чел. ★ 4.9 Done
  На этом уроке мы поговорим о социальной сети,
о медальках и достижениях, а также о партрёрах и статьях.
Отчёт отправил: 1295. Дмитрий Че Выполнено за 30 мин. [Показать отчёт]
Научился: думать о функционале социальных сетей) 
Сложности: не сложно) 
Комментарии: 1. отображать у пользователя список (аватарки) контактов, упорядоченные по количеству сообщений. 2.  разрешить пользователю премировать другого пользователя баллами (+10, +20, +30 и т.д.) (выпадающая иконка/меню типа лайка с выбором размера премии). Эти премии суммируются у награжденного и итог выводится у его ника, например. 3. разрешить назначать другого пользователя "кумиром" за особые заслуги, или просто в знак уважения - что может идти в рейтинг. Но "кумиром" он является только для того, кто его наградил. 
7 Эскизы проекта без видео
13 чел. ★ 5 Done
  Если ты хочешь продолжать вместе с нами -
вот тебе конкретное самостоятельное задание.
Выбери желаемую страницу проекта и нарисуй,
как ты её себе представляешь.

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

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

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

Отчёт отправил: 1295. Дмитрий Че Выполнено за 4 час. 00 мин. [Показать отчёт]
Научился: проектировать первую страницу сайта 
Сложности: да всё не очень просто - выделить основные элементы, создать красивый, интуитивно понятный дизайн и т.д. 
Комментарии: Элементы страницы: - логотип - выбор языка (флаги стран) - название сайта - поле логина - поле пароля - кнопка регистрации - кнопка входа - ссылка на восстановление пароля - кнопки навигации по основным разделам (о проекте, курсы, статьи, демо-уроки) - поле новостей - поле горячих событий (сегодня) - поле отзывов и результатов участников школы - основное поле  с приветствием, описанием школы и кратким руководством с чего лучше начать и куда двигаться. - подвал с копирайтом, контактами и кнопкой техподдержки. 
8 Структура страницы 00:22:22
5 чел. ★ 4.8 Done
  На этом уроке мы создадим каркас каждой страницы, определим, из каких частей будет состоять любая страница проекта: шапка, меню, основная часть, форум, подвал.
Отчёт отправил: 1295. Дмитрий Че Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Планировать структуру страницы, методом ручного отрисовывания) 
Сложности: Кнопки верхнего меню - выбрать чем заполнить. Все же мне кажется, что первую из них лучше пустить под Миссию, чем подвал. 
Комментарии: Мне не понятно почему Миссия(о проекте) находится в подвале? Обычно по логотипу идет выход на главную страницу, где и рассказывается о проекте. Добавить нужно поиск по сайту. Я отрисовал страницу урока. Думаю, что здесь надо отдельно выделить поле Теория, где кратко дать описание темы с названиями элементов кода (поле Value, структура Int32, пространство имен System - чтобы эта лексика входила в плоть и кровь.  и привести ). Здесь же привести пример использования (Int32.MaxValue). Т.е. краткую теоретическую выжимку. А тематические ссылки на msdn дать рядом в отд. поле INFO ("доп. информация", "подробнее" и т.п.) Плюс, где это уместно, привести блок-схему алгоритма, чтобы учиться их читать и планировать код по алгоритму. Конечно, правую панель с сообщениями нужно сделать убирающейся, т.к. сильно отвлекает. Может быть сделать кнопку "комментарий" (а не форму), по которой панель сообщений будет развертываться.  
9 Схема проекта 00:24:40
5 чел. ★ 4.6 Done
  На этом уроке мы рассмотрим схему всего сайта.
Какие страницы открываются по пунктам меню
и по другим ссылкам, какие у них адреса,
какого их назначение, что там будет.
Отчёт отправил: 1295. Дмитрий Че Выполнено за 3 час. 00 мин. [Показать отчёт]
Научился: Создавать эскиз веб-странички и терпению... 
Сложности: Приходилось делать урывками - это очень сложно) 
Комментарии: Сделал шаблон для общих элементов окна, чтобы не перерисовывать каждый раз. На урок ушло больше недели - был очень загружен и делал урывками, хотя в сумме можно было сделать за час-два и лучше. 
10 Список сущностей 00:21:33
5 чел. ★ 5 Done
  На этом уроке мы создадим список сущностей проекта.
Каждая сущность - это таблица в базе данных.
Но не каждая таблица - это сущность :)
Самостоятельное задание - подумать о связях между ними.
Отчёт отправил: 1295. Дмитрий Че Выполнено за 3 час. 00 мин. [Показать отчёт]
Научился: Планировать связь таблиц базы данных и их поля. Нашел более или менее удобный вариант расположения сущностей на листе для такого планирования. 
Сложности: Вообще не самое простое задание - нужно думать:) Например не представляю какие должны быть поля для ключевых слов, действий (action) или платежной системы (wizard). 
Комментарии: Соединения делал в основном для сущности User, потом еще некоторые группы вырисовались, но не все. Очень полезный урок - спасибо! 
11 Ядро базы данных 00:15:52
3 чел. ★ 5 Open
  На этом уроке мы составим список основных таблиц базы данных.
Для каждой таблицы выпишем необходимые поля.
После этого можно будет создать базу данных.
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