Как создать программу для компьютера

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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







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



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

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 Вступление - Язык UML 00:03:45
1 тест
28 чел. ★ 4.9 $
  Мы начинаем создание новой программы на языке Java.
Цель курса - продемонстрировать процесс
проектирования и создания прикладного
программного обеспечения на языке Java.
2 Вступление - Примеры UML схем 00:06:18
1 тест
24 чел. ★ 5 $
  На этом уроке мы познакомимся с ещё одной статьёй про UML.
Сопоставим UML-диаграмы и созданные по ним классы.
 
16014. Kiril Krutiajev
791. Валерий Жданов
6203. Николай Миролюбов
10558. Иван Воронин
3 Проектирование - Три класса 00:05:32
1 тест
24 чел. ★ 5 $
  На этом уроке мы познакомимся с сайтом draw.io,
на котором удобно рисовать самые разные схемы.

Нарисуем три «классных» прямоугольника:
Student, Lesson, Pupil.

Самостоятельное задание - придумать и вписать
необходимые поля и методы для этих классов.
 
26051. Михаил
791. Валерий Жданов
11310. Kiril Palajev
6203. Николай Миролюбов
4 Проектирование - Классные диаграмы 00:13:35
1 тест
23 чел. ★ 5 $
  На этом уроке мы обсудим суть поставленной задачи.
Впишем все необходимые поля и методы для каждого класса.
 
26051. Михаил
6203. Николай Миролюбов
7696. Vladimir Falejev
11329. Zulchumor Kurbonova
5 Проектирование - Выяснение отношений 00:11:24
1 тест
23 чел. ★ 5 $
  На этом уроке мы выясним отношения классов друг к другу.
Кто кого имеет и каким образом.

Дорисуйте на схеме стрелочки отношений
и добавьте надписи над стрелочками о типе отношений.
 
20122. Andrei
4004. Елена
24765. Anatoli
10670. Сергей Соколов
6 Создание - Класс Lesson 00:09:51
1 тест
20 чел. ★ 5 $
  На этом уроке мы приступим, наконец-таки, к программированию.
Мы создадим пустые классы Program, Student, Lesson, Point.
Добавим описанные в UML-диаграме поля и методы в класс Lesson.
В классе Program создадим код для запуска написанного кода.
 
11308. Michail Ostryj
7693. Monachov Maksim
10365. Rita
11329. Zulchumor Kurbonova
7 Создание - Класс Student 00:10:24
1 тест
17 чел. ★ 5 $
  На этом уроке мы опишем поля и методы класса Student.
В основной программе создадим трёх студентов и выведем их на экран.
 
7119. Новопашин Владимир
10670. Сергей Соколов
10558. Иван Воронин
24765. Anatoli
8 Создание - Класс Point 00:14:24
1 тест
16 чел. ★ 5 $
  На этом уроке мы создадим все поля и методы класса Point.
Затем добавим каждому студенту несколько оценок.
Потом вспомним, что забыли записать студентов на лекции.
Во второй половине урока мы займёмся созданием
студенческого метода для формирования карточки getInfo ().
 
24765. Anatoli
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
11322. Dmitrij Starikovič
9 Отладка - Пошаговый проход 00:18:05
1 тест
16 чел. ★ 5 $
  На этом уроке мы пошагово пройдём по каждой строчке программы.
Просмотрим состояние всех переменных и экземпляров объектов.
 
8275. Tekashnik
7119. Новопашин Владимир
24765. Anatoli
10365. Rita
10 База - Статический класс 00:11:08
1 тест
15 чел. ★ 5 $
  На этом уроке мы спроектируем класс Book
для хранения всех данных нашей объектной базы.

 
11323. Vladimir Fedotov
11329. Zulchumor Kurbonova
6203. Николай Миролюбов
24765. Anatoli
11 База - Список студентов 00:13:03
1 тест
15 чел. ★ 5 $
  На этом уроке мы создадим класс Book,
и добавим в него поля и методы
для работы со списком студентов.
 
7119. Новопашин Владимир
7119. Новопашин Владимир
10670. Сергей Соколов
10670. Сергей Соколов
12 База - Список лекций 00:08:56
1 тест
15 чел. ★ 5 $
  На этом уроке мы добавим в класс Book поля и методы для работы со списком лекций.
В основной программе мы разместим код для демонстрации этих методов.

Мы также обсудим, когда и почему не/стоит использовать HashSet.
 
8275. Tekashnik
4004. Елена
20122. Andrei
11323. Vladimir Fedotov
13 База - Список оценок 00:10:24
1 тест
15 чел. ★ 5 $
  На этом уроке мы добавим в класс Book поля и методы для работы со списком оценок.
Также удалим старые поля и методы из класса Student для работы с оценками.
В основной программе мы добавим случайные
оценки каждому студенту по каждой лекции.
 
20122. Andrei
10558. Иван Воронин
8275. Tekashnik
8275. Tekashnik
14 ПОЛУФИНАЛЬНЫЙ УРОК без видео
1 тест
15 чел. ★ 5 $
  Поздравляю с экватором.
Предлагаю немножко передохнуть.
Напиши,чему ты научился за первую часть этого курса.
Нравится ли тебе такой способ изложения материала.
Какие видишь преимущества и недостатки курса.
 
8275. Tekashnik
10365. Rita
11329. Zulchumor Kurbonova
24765. Anatoli
15 Меню - Планирование 00:13:48
1 тест
14 чел. ★ 4.9 $
  На этом уроке мы спроектируем класс Menu
для интерактивного управления нашей объектной базой.
 
24765. Anatoli
10494. Алексей В.
11322. Dmitrij Starikovič
30514. Tom
16 Меню - Интерактив 00:17:20
1 тест
13 чел. ★ 5 $
  На этом уроке мы создадим класс Menu для отображения основного меню управления нашей базой.
Реализуем основные методы работы с базой через пункты меню.
Дорисуем недостающие методы в классе Menu на нашей схеме.
 
11323. Vladimir Fedotov
20122. Andrei
11322. Dmitrij Starikovič
11322. Dmitrij Starikovič
17 Меню - Работа со студентами 00:14:33
1 тест
12 чел. ★ 5 $
  На этом уроке мы продолжаем реализацию методов класса Menu.
Начнём с методов добавления/отображения студентов: doAddStudent() и doShowStudents().
И проверим работу приложения добавив несколько студентов, после чего выведем их с порядковыми номерами из базы.
 
10494. Алексей В.
8275. Tekashnik
7119. Новопашин Владимир
30514. Tom
18 Меню - Работа с лекциями 00:19:02
1 тест
12 чел. ★ 5 $
  На этом уроке мы воспользуемся ранее переименованным методом addRandomRecords()
чтобы не вводить каждый раз при запуске программы начальные данные для тестирования.
В классе Menu мы реализуем методы doAddLesson() и doShowLessons()
для добавления и просмотра лекций.
Отрефакторим название метода doAddLessonToStudent() в doAssignLessonToStudent() класса Menu как в коде,
так и на нашей UML схеме для лучшей передачи смысла его работы.
Реализуем необходимые методы inputStudentIndex() и inputLessonIndex().
Добавим более информативный вывод работы программы.
 
10494. Алексей В.
10365. Rita
11323. Vladimir Fedotov
11322. Dmitrij Starikovič
19 Меню - Запись студента на курс 00:13:48
1 тест
12 чел. ★ 5 $
  На этом уроке мы добавим новый пункт в наше меню для отображения карточки студента.
Реализуем новый метод doShowStudentCard() для отображения карточки выбранного студента,
так же добавим этот метод в класс Menu на нашей UML схеме.
Подкорректируем уровни доступа методов в классе Menu на нашей UML схеме и в коде.
Отрефакторим метод doAssignLessonToStudent() выделив часть кода в отдельные методы.
 
11323. Vladimir Fedotov
11322. Dmitrij Starikovič
17947. Dmitry Sinitsin
17947. Dmitry Sinitsin
20 Меню - Работа с оценками 00:22:11
1 тест
11 чел. ★ 5 $
  На этом уроке мы реализуем метод doAddPoint() для оценивания успеваемости студентов по пройденным лекциям.
Добавим соответствующий красивый вывод информации о полученной оценке студентом за такую то лекцию.
Реализуем матрёшку-перегрузку из методов для получения списка лекций определённого студента.
 
11322. Dmitrij Starikovič
10558. Иван Воронин
10558. Иван Воронин
7119. Новопашин Владимир
21 Сериализация - Статическое напряжение 00:10:46
1 тест
11 чел. ★ 5 $
  Во мы и закончили нашу объектную базу данных на языке Java, но у неё есть один недостаток!
Все данные которые хранятся в нашей базе нигде не сохраняются и при каждом её запуске обнуляются.
На этом уроке мы приступим к сериализации нашей базы данных для сохранения изменений на диск.
Первое что нам необходимо будет сделать, это избавиться от static в классе Book.
Так же нам нужно добавить Конструктор в класс Book и добавим туда метод clear()
для автоматической подготовки базы к работе при создании её экземпляра.
Реализуем работу экземпляра класса Menu с экземпляром класса Book.
Исправим ошибки связанные с изменением доступности нашей базы.
Создадим метод start() в классе Menu и перенесём туда реализацию работы с меню.
 
30514. Tom
24765. Anatoli
24765. Anatoli
10365. Rita
22 Сериализация - Сохранение базы 00:12:23
1 тест
11 чел. ★ 5 $
  На этом уроке мы реализуем сериализацию нашей базы данных в файл на диске.
Для этого мы внедрим интерфейс Serializable в нашем классе Book,
так же необходимо внедрить интерфейс Serializable во все классы,
которые используются классом Book, а именно: Student, Lesson и Point.
 
10558. Иван Воронин
10558. Иван Воронин
24765. Anatoli
24765. Anatoli
23 Сериализация - Восстановление базы 00:11:04
1 тест
11 чел. ★ 5 $
  На этом уроке мы реализуем десериализацию нашей базы из файла
обратно в память нашей программы, чтобы продолжить работу с введёнными ранее данными.
После чего мы несколько раз запустим нашу программу, каждый раз вводя новые данные.
Убедимся, что при каждом запуске восстанавливаются предыдущие данные.
 
10494. Алексей В.
7119. Новопашин Владимир
10670. Сергей Соколов
11322. Dmitrij Starikovič
24 ФИНАЛЬНЫЙ УРОК без видео
1 тест
9 чел. ★ 5 $
  Поздравляю с завершением курса!

Оставь, пожалуйста, отзыв об этом курсе.

Запиши видеообзор созданной программы.
 
10494. Алексей В.
10670. Сергей Соколов
30514. Tom
11322. Dmitrij Starikovič
  Итого:   24 видеоурока 4 час. 31 мин.
24 теста
9 чел. ★ 5  
  Финалисты:   Сергей Соколов,   Иван Воронин,   Алексей В.,   Новопашин Владимир,   Dmitrij Starikovič,   Tekashnik,   Dmitry Sinitsin,   Anatoli,   Tom .

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





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

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

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

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


Научился: Замечательный курс по работе с Java. Много времени отдано на этап проектирования (что очень важно). А также проработка всех аспектов БД. Ну и конечно же сериализация и десириализация, что позволяет программе быть крайне мобильной таская с собой всего один файл. Курс однознчно рекомендован к прохождению. Видеообзора нет, так как делал курс давно, уже исходников нет... сейчас подчищаю хвосты..
Трудности: Вспомнить, что было в курсе))



Научился: В этом курсе научился создавать UML-диаграммы классов, выполнять сериализацию и десериализацию объектов.