Наши проекты

Статьи | ООП

C++ или программирование по-универовски. Часть 1. Организация


Однажды в студёную зимнюю пору, решили, значится, в нашем универе студентов вводному курсу по программированию обучить. Да не просто программированию, а работе с формами на C++, использовав для этого софтину C++ Builder шестой версии. Стоит ли говорить, что хлопот у ребят это вызвало немало, что уж там, многие и после экзамена не поняли, что они на самом деле делали (или не делали). Но не будем о грустном, а в данной статье как раз таки попытаемся разобраться с этим универным программированием, т.к. используется там эта методика уже более 10 лет, и, думаю, ещё будет использоваться, по крайней мере до смены поколения преподавателей. :hack:
Часть 1. Что внутри?
Итак, на руках имеем программу C++ Builder 6.0. Поначалу нам выдаст вот такое окно:
1.png
Что
Продолжить

Рейтинг:  3  (Против: 3 | За: 6)
Добавил: nitsu

Комментарии (8)

C++ или программирование по-универовски. Часть 2. Работа в программе.


Сессия успешно прошла, а потому - следующая часть "программирования", в которой мы рассмотрим решение конкретных задач и примеров, задаваемых студентам на парах, и возможность их практической реализации в программе Builder C++ v6.0. Перед работой рекомендуется прочитать 1-ю часть, чтобы иметь понятие о том, что вообще здесь необходимо сделать. В качестве примера, первая задача, даваемая самым двоечникам сообразительным студентам в качестве самостоятельной работы - написание калькулятора, а именно:
Задача 1. Начальный уровень. Написать программу, которая по нажатию кнопки сможет рассчитать периметр прямоугольника по заданным сторонам и вывести его в отдельное поле (сделать калькулятор).
Выполнение такой задачи изначально разделяется на следующие этапы (происходящие,
Продолжить

Рейтинг:  -5  (Против: 6 | За: 1)
Добавил: nitsu

Комментарии (5)

Билдеры и дженерики


Признаюсь честно, иммутабельность объектов — моя идея фикс. Только от одного вида изменяемых объектов меня бросает дрожь, а необходимость добавить классу сеттер заставляет меня рыдать. Километровые конструкторы в моём коде — дело привычное (spoiler: преувеличение, конечно же). Работать с такими, откровенно говоря, очень неприятно. К счастью, есть один способ (не приносящий боли), позволяющий решить эту проблему. Имя ему — паттерн «Строитель» (бурж. Builder).
Суть паттерна заключается в вынесении процедуры конструирования объекта за пределы его собственного класса, то есть в класс «строителя». Помимо решения вышеописанной проблемы, такой подход позволяет:
  - унифицировать процедуру конструирования для объектов одной иерархии,
  - создавать сценарии
Продолжить

Рейтинг:  3  (Против: 1 | За: 4)
Добавил: aRiGaTo

Комментарии (4)

Паттернология. Система команд


Святая троица «Инкапсуляция — Наследование — Полиморфизм» — это вершина айсберга под названием ООП. Это всего лишь инструменты для организации взаимодействия между объектами. В этом и есть смысл ООП — не просто создать кучу объектов, а сделать так, чтобы они эффективно взаимодействовали друг с другом. И в данном случае эффективность — это не скорость исполнения программы, а
возможность вносить правки в код максимально быстро, при этом не переписывая тонны кода.
Как я уже отмечал, с «движком для конфигов на LiketEngine» что-то не так. У него есть проблема — хоть он и написан на объектно-ориентированном языке (на самом деле Java уже давно не ОО, а мультипарадигма), он не ОО. В нём нет той
Продолжить

Рейтинг:  8  (Против: 0 | За: 8)
Добавил: aRiGaTo

Комментарии (18)

ООП в примерах. Часть 1


Недавно я пообещал написать что-нибудь про ООП. Честно сказать, тема довольно щекотливая, новичку без пяти капель не разобраться. Я не знал, с чего начать, поэтому решил просто начать, а дальше уже, по отзывам, буду решать в какую сторону делать упор.

Итак, я не буду сразу парить вас нудной информацией о том, что такое ООП, где оно используется, зачем и т.д. Сразу открываем среду разработки и пишем код!!

Пишем меню на Canvas.

Вариант 1. Меню без ООП.
NonOopMenu.java
Как видно, мы определили массив строк items для пунктов меню и числовое значение cursor для текущего выделенного элемента. При выборе пункта меню мы просто выводим Alert с текстом этого пункта, всё просто.
  - Ну и норм, без ООП справились, - подумаете вы.
  - Хорошо, а если нам надо
Продолжить

Рейтинг:  15  (Против: 1 | За: 16)
Добавил: aNNiMON

Комментарии (18)
Всего: 9
1 2 >>
Категории

Мы в соцсетях

vk tw tg yt

Пожертвования

Аноним2850 р.
Freddy1700 р.
NaruTrey800 р.
vlavolk637 р.
riseremi500 р.
  © aNNiMON (Melnik Software)
 
Яндекс.Метрика