Си шарп с нуля

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

основатель — Волосатов Евгений Витольдович

Клуб формулистов - Ежемесячная подписка

Вступление в Клуб Формулистов на выгодных условиях для НОВЫХ участников.

После взноса 512 256 руб. вы получите подписку
в Клуб Формулистов на 30 дней и 256 байт для быстрого старта.
Байты используются для открытия более одного урока в день, по 50 байт за урок.

Стоимость 1 дня за первый месяц: всего 8 рублей.

Первый взнос - 256 руб./30 дней.

Через 30 дней будет списано 3,000 2,400 руб.
за продление подписки в Клуб на 30 дней + подарок 512 байт.

Так будет продолжаться каждые 30 дней, пока вы не отмените подписку.
Средства будет автоматически считываться с вашей карты.
Вы в любой момент сможете отказаться от продления Клуба.

Только ДО КОНЦА НЕДЕЛИ -
-50% скидка на первый взнос, всего 256 рублей!
-20% скидка на ЕЖЕМЕСЯЧНЫЙ платёж!
Всего 2400 руб/месяц (вместо 3000 руб/месяц), или 80 руб./день - цена чашки кофе.


Стоимость 1 дня: 80 руб.

Хочу вступить!

Также есть другие варианты оплаты участия в КФ:

Билет в клуб формулистов на ...
30+ дней | 60 дней | 150 дней | 380 дней | 1000 дней

Внимание!
Стоимость участия в Клубе формулистов увеличивается 1 числа каждого месяца на 100 рублей.
При оформления подписки стоимость остаётся постоянной, пока подписка не будет отменена.







Первый взнос - 512 руб./30 дней + 512 байт.
Последующие взносы - 3,000 2400 руб./месяц + 512 байт.



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

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 FREE Python и Visual Studio 00:07:31
1 тест
8 чел. ★ 5 Free
  На этом уроке мы проверим возможность работы Visual Studio с языком программирования
Python, при необходимости доустановим недостающие элементы и создадим первую программу
на Python при помощи Visual Studio
2 FREE Работа с zip-архивом - инициализация и распаковка 00:13:25
6 чел. ★ 5 Free
  На этом уроке мы поговорим о создаваемом проекте, импортируем в программу
библиотечку zipfile и распакуем zip-архив
3 FREE Работа с zip-архивом - архивация файлов и папок 00:12:05
1 тест
6 чел. ★ 5 Free
  На этом уроке мы научимся создавать архивы, и архивировать отдельные файлы и целые папки с файлами
4 FREE ООП - теория на примере популярной игры 00:16:52
1 тест
6 чел. ★ 5 Free
  На этом уроке мы рассмотрим понятие ООП, классов, свойств и методов
на примере популярной игры и создадим первый класс
5 FREE ООП - проект бэкаппера 00:13:34
1 тест
6 чел. ★ 5 Free
  На этом уроке мы создадим проект основной программы, добавим класс упаковщика
и запустим его из основной программы
6 FREE ООП - конструктор и деструктор 00:08:23
1 тест
6 чел. ★ 5 Free
  На этом уроке мы зададим свойства класса упаковщика через конструктор
а также создадим деструктор для нашего класса
7 FREE Распаковка под контролем 00:16:12
5 чел. ★ 5 Free
  На этом уроке мы реализуем функционал восстановления файлов из архива в соответствующем
методе класса упаковщика, а также поработаем с отладчиком PyLint
8 FREE Параметры командной строки - немного теории 00:15:09
1 тест
4 чел. ★ 5 Free
  На этом уроке мы поработаем с элементами командной строки
9 FREE Параметры командной строки - в бэкаппер 00:16:19
1 тест
4 чел. ★ 5 Free
  На этом уроке мы создадим функционал создания резервной копии
и сделаем управление нашей программой через параметры командной строки
10 FREE Полевые испытания - работа с различными параметрами 00:20:48
1 тест
4 чел. ★ 5 Free
  На этом уроке мы проведем испытания нашей программы с различными параметрами,
исправим возможные ошибки и реализуем обработку исключений
11 FREE Рефакторинг класса и методов 00:18:28
1 тест
4 чел. ★ 4 Free
  На этом уроке мы сделаем рефакторинг кода в классе, методах и основной программе
12 FREE Параметры - в JSON 00:12:08
2 теста
4 чел. ★ 5 Free
  На этом уроке мы подключим к нашему проекту библиотечку JSON
и научим нашу программу получать данные из JSON файла
  Итого:   12 видеоуроков 2 час. 50 мин.
11 тестов
4 чел. ★ 4.92  
  Финалисты:   Tekashnik,   vip,   Фомичева Наталья,   Chip .

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





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

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

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

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


Научился: Научился импортировать библиотеку с помощью import. Узнал про printdir и extractall. Создал три файла, добавил их в папку dir, заархивировал папку утилитой zip, получился файл архива archive.zip. С помощью программы на Python получил содержимое архива и разархивировал его в папку extract_dir_python. Сравнил результат вывода printdir с выводом утилиты zipinfo - метаданные совпали. Сравнил результат разархивации с содержимым исходной папки dir c помощью утилиты diff -r - файлы одинаковы. Удивительно, такая компактная программка на python, а уже столько умеет :)



Научился: Прикрутил pylint, работа пошла намного интересней и эффективней. Pylint - программа для статического анализа кода, на осноые рекомендаций PEP 8. Поигрался с другими линтерами, понравился flake8 (но он попроще) , поиграюсь с pylint потом на flake перейду There are 5 kind of message types :   * (C) convention, for programming standard violation   * (R) refactor, for bad code smell   * (W) warning, for python specific problems   * (E) error, for probable bugs in the code   * (F) fatal, if an error occurred which prevented pylint from doing   further processing. На первом скрине видно, сколько он выдал предупреждений по коду для файла zipbackup.py, в нашем случае 7 сообщ типа  С и 2 сообщ типа R. Самое прикольное в этой теме, что он выдает оценку коду по 10 бальной шкале, это типа элемент геймификации. ) На втором скрине я исправил код на 10 баллов. Добавил описание (docstring) к модулю, классу и методам (на скрине видно, что можно отключить эту проверку). Поменял имя класса в стиле Pascal-case. Убрал ненужное наследование от Object. Не знаю зачем были объявлены статические поля filename и path. Но оставил их. Поменял имена функций в стиле snake-case. Сделал функции статическими, убрал self. Поменял формирование строки через конкатенацию на интерполяцию. ) Пробелы вокруг = и всякие другие мелочи у меня расставляются автоматически, через расширение Python-autopep8 В общем pylint может сделать из нас человеков. ) Хочу добавить, что чисто психолгически такое ощущение у меня, что как-будто в игру играешь, набирая максимальный балл. Плюс бесплатный код-ревью.