Си шарп с нуля

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

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

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

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

После взноса 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 Объектная Матрёшка 00:09:46
2 теста
34 чел. ★ 5 Done
  Java курс по использованию JFrame, JPanel, Buffered Image.

Мы создадим аналог игры "Балда" - нарисуем буквы в сетке.
Будет использована архитектура "Матрёшка", в которой
объекты не наследуют, а имеют друг друга.

На этом уроке мы сформулируем задачу и наметим способ её разработки.
Отчёт отправил: 10558. Иван Воронин Выполнено за 10 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: Сразу же увидел слово UFO (у левого края, чуть выше центра) и больше ничего искать не стал, очень много ностальгии связано с этим слово. 
2 Кот Фрейма 00:06:39
2 теста
33 чел. ★ 5 Done
  На этом уроке мы сделаем небольшой рефакторинг -
создадим свой класс Frame extends JFrame,
в который перенесём весь функционал
по созданию окна программы.
Отчёт отправил: 10558. Иван Воронин Выполнено за 10 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: Добавил класс Panel. Разместил экземпляр класса Panel на поле Frame. Перенёс определение размера 600х400 в класс Panel. Добавил Panel во Frame. Подогнал размер Frame под размеры Panel. 
3 Буква на Панели 00:12:18
3 теста
31 чел. ★ 5 Done
  На этом уроке мы создадим класс Panel,
создадим панель из класса Frame.
Потом мы выведем на панель букву А,
пускай обживается и привыкает,
скоро их там будет очень много :)

Отчёт отправил: 10558. Иван Воронин Выполнено за 15 мин. [Показать отчёт]
Научился: Рисованию текста на панели не стандартным шрифтом и цветом с авто-смещением по центру формы. 
Сложности: найти время 
Комментарии: Метод pack() относится к классу Frame, а не Panel, я бы посоветовал его добавить именно туда, куда надо (см. скриншот). з.ы. Чтобы было понятно, что он делает, приведу аналогию с бильярдными шарами, их в начале игры собирают вместе в виде треугольника (классический) и чтобы они стояли ровненько, используют треугольник, так вот этот треугольник и есть pack(), который использовали 1 раз в конце, когда разместили рядом все шары. Не надо треугольников ровнять каждый добавленный шар =) 
4 Своя Картинка 00:14:44
1 тест
30 чел. ★ 5 Done
  На этом уроке мы создадим класс
Picture унаследованный от BufferedImage.
Установим цвет фона для картинки, выведем текст.
Отчёт отправил: 10558. Иван Воронин Выполнено за 15 мин. [Показать отчёт]
Научился: Созданию кастомного класса картинки и дальнейшей работе с ним. 
Сложности: найти время 
Комментарии: По поводу того, что Frame не обрамил Panel и справа/снизу виднелся белый фон Frame, это потому что pack() не туда засунули, я об этом говорил на прошлом уроке, в этом уточнить хочу, потому же так вышло, потом что pack() должен быть ДО метода: setLocationRelativeTo() - чтобы окно Frame центрировалось корректно. ПОСЛЕ метода: setResizable(false) - чтобы как раз ровно упаковывало объекты на поле Frame. з.ы. На скриншоте показал где должен находиться метод pack(). 
5 Центр Бокса 00:28:39
2 теста
28 чел. ★ 4.9 Done
  На этом уроке мы создадим класс Box,
нарисуем рамку и выведем в центре букву.
Для вычисления видимой высоты используйте
font.getFontMetrics().getAscent()
Отчёт отправил: 10558. Иван Воронин Выполнено за 40 мин. [Показать отчёт]
Научился: Центровке шрифта относительно его ТТХ =) 
Сложности: найти время 
Комментарии: Нарисовал буковки с тенью =) Нашёл в сети такую схему (см. скриншот) где показано как называются линии вертикалей буков по стандарту, если шрифт не придерживается этих правил, то эти данные бесполезны. Нашёл одноимённые названия, а именно нужен .getFontMetrics().getAscent() 
6 Матрица Боксиков 00:14:58
1 тест
23 чел. ★ 5 Done
  На этом уроке мы создадим матрицу боксиков.
В методе init() мы будем их создавать.
В методе init() мы будем их рисовать.
Отчёт отправил: 10558. Иван Воронин Выполнено за 20 мин. [Показать отчёт]
Научился: Повторение пройденного 
Сложности: найти время 
Комментарии: Смещение клеток сделал по своему, вроде красиво выглядит =) 
7 Сохранение картинки 00:09:08
1 тест
22 чел. ★ 5 Done
  На этом уроке мы сохраним сгенерированную картинку в файл.
Отчёт отправил: 10558. Иван Воронин Выполнено за 15 мин. [Показать отчёт]
Научился: Сохранению картинки в файл. 
Сложности: найти время 
Комментарии: Вынес размеры клеток и поля за пределы панели, теперь они передаются в панель при создании её экземпляра. Уроки отличные, пригодятся. Вначале закончу начатые курсы. 
8 ФИНАЛЬНЫЙ УРОК без видео
20 чел. ★ 5 Done
  Напишите отзыв об этом курсе.
Отчёт отправил: 10558. Иван Воронин Выполнено за не указано [Показать отчёт]
Комментарии: Курс очень понравился, интересная матрёшка получилась, чем то даже рекурсивный метод напоминает с лимитом погружения. А если ещё ответвления сделать, то уже целая грибница получится. Работа со шрифтами, сохранением итогового файла, случайная генерация объектов, осталось добавить событие клика мышки, подгрузить текстовый файл со словами и можно играть в филворд =) Ещё раз огромное спасибо за эти уроки, они показывают возможности и варианты направления движения в изучении языков. 
9 VIP Implementation 00:16:50
1 тест
13 чел. ★ 5 Done
  Нарисуем на сетке одно длинное слово
и закрасим остальные клетки случайными буквами.
Отчёт отправил: 10558. Иван Воронин Выполнено за 20 мин. [Показать отчёт]
Научился: Повторил пройденное 
Сложности: найти время 
Комментарии: Отличный урок, добавил отрисовку слова другим цветом, подправил тень. Спасибо за урок, алгоритм так и представлял. 
  Итого:   9 видеоуроков 1 час. 53 мин.
13 тестов
13 чел. ★ 4.99  
  Финалисты:   Иван Воронин,   Максим Лапшинов,   Новопашин Владимир,   Алексей В.,   Сергей Соколов,   Tekashnik,   zhikharevav,   Станислав,   Елена,   Александр,   Dmitry Sinitsin,   Chip,   grom518 .

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





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

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

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

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


Научился: Курс познакомит программиста с классами JFrame, JPanel, Buffered Image. Продемонстрирован способ избавиться от статика в коде. Каждая из вложенных "матрёшек"-классов имеет свой уникальный функционал, программа задумана для демонстрации объектов программы и их наследования. Группировки инструкций объединяются в соответствии с их применяемостью. В курсе отдельный урок посвящён правильному позиционированию литеры в боксике. Несмотря на кажущуюся простоту этой задачи, разношерстность букв приводит к неожиданностям при их выводе в точное место, проблема в уроке решается успешно. Вишенкой на торте Тирамису является последний урок, где показано як зберегти результат роботи програми в графічний файл. Курс несложный, рекомендации лучших джаверов и сишарперов прилагаются.



Научился: Курс интересный, но он не завершен. Получается, что это не слова в сетке, а буквы в сетке.