Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 04.08.2021
Сообщений: 257

Как выработать правильный подход к выполнению задач, как запоминать и воспринимать сложную информацию

13.02.2024, 13:37. Показов 1552. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Я недавно начал изучать на курсах язык С++. Пока проходили процедурный подход, то было в принципе не сложно выполнять задания и темы для освоения в процессе прослушивания лекций были интуитивно понятно.
Сейчас пошел раздел ООП, и такое ощущения, что я из детского сада сразу в универ пошел. Информация гораздо сложнее для восприятия. При этом задания стали многофайловые. Например, нужно разработать базу данных с помощью классов, где один класс вплетается другой и т.д.
Я теряюсь в плане постановки задачи, не знаю с чего начинать сложные проекты, бывает просижу несколько часов, чтобы просто понять суть задачи, а при реализации вообще мозг плывет, подскажите. пожалуйста, как правильно структурировать алгоритм выполнения многофайловых задач, нам его не рассказывают, а у меня в силу неопытности опускаются руки при понимании того, что "я сейчас буду сидеть 3 часа безрезультатно, продумывая как решить задачу", когда, я уверен, при знании подхода к решению задач такого типа ее можно решить гораздо быстрее.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.02.2024, 13:37
Ответы с готовыми решениями:

Как выбрать правильный подход к верстке секции
Добрый день комюнити! Уже не в первый раз встречаюсь в работе вот стакими "шедеврами" скрин прекреплен к теме сообщения. Как по мне...

Как и где запоминать информацию для ее обработки в дальнейшем при обновлении страницы
Здраствуйте! Есть две таблицы в них данные из базы, первая таблица(грубо говоря в ней данные такие- название салатов ) каждое название...

Как выработать правильные привычки
если у кого есть опыт выработки правильных привычек, то было бы неплохо поделиться им. например может кто то стал регулярно делать зарядку...

5
фрилансер
 Аватар для Алексей1153
6462 / 5670 / 1131
Регистрация: 11.10.2019
Сообщений: 15,097
13.02.2024, 13:51
Цитата Сообщение от agent070 Посмотреть сообщение
один класс вплетается другой
какое странное ТЗ

обычно в класс отделятся сущность и действия над ней - именно для того, чтобы всё упростить. Класс отлаживается отдельно от всего, после чего про его потроха можно забыть и использовать как объект с методами и свойствами
0
0 / 0 / 0
Регистрация: 04.08.2021
Сообщений: 257
13.02.2024, 13:54  [ТС]
Цитата Сообщение от Алексей1153 Посмотреть сообщение
какое странное ТЗ
Имею ввиду, класс содержится в другом классе
0
фрилансер
 Аватар для Алексей1153
6462 / 5670 / 1131
Регистрация: 11.10.2019
Сообщений: 15,097
13.02.2024, 14:00
agent070, и что это меняет?
0
0 / 0 / 0
Регистрация: 15.07.2016
Сообщений: 16
16.02.2024, 15:40
Мне кажется, что то, что вы ищете, называется "паттерны ООП проектирования".
0
27 / 24 / 4
Регистрация: 20.11.2023
Сообщений: 131
17.02.2024, 14:06
У меня примерно такие же вопросы были, кода я тупо копипастил код, не зная языка. Например, я не знал, куда вставить тот или иной кусок кода. Мне тоже казалось, что это все как-то по отдельности и какая-то магия это все связывает.
Ваши вопросы не совсем связаны с ООП напрямую.
Наверное, вы просто что-то где-то упустили и теперь думаете, что корень всех зол - ваше непонимание ООП.
На самом деле, вы просто не знаете, как компилятор превращает ваш код в бинарник.
Пример кода

test.h

C++
1
void fn();

test.cpp

C++
1
2
3
#include "test.h"
 
void fn() {}

main.cpp

C++
1
2
3
4
5
#include "test.h"
 
int main() {
    fn();
}



Короче, это работает так:
1. Препроцессор берет ваши .cpp файлы и вставляет в них included .h файлы
После препроцессора

test.cpp

C++
1
2
3
void fn();
 
void fn() {}

main.cpp

C++
1
2
3
4
5
void fn();
 
int main() {
    fn();
}


2. Компилятор .cpp файлы компилирует в object файлы
3. Линкер (компоновщик) это все собирает вместе в .exe

Т. е. фактически этот код превратится в:
C++
1
2
3
4
void fn() {}
int main() {
    fn();
}
Это значит, что никаких особых штук тут нет, просто нужно практиковаться.
Обычно нужно очень много раз пропустить через себя что-то непонятное, чтобы понять (но по своему).

Добавлено через 11 минут
coolzoom, по моему это вообще никак не связано
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.02.2024, 14:06
Помогаю со студенческими работами здесь

Правильный подход к тестированию
Решил свой учебный UI проект покрыть тестами. В целом, пока замахнулся на слой данных. Есть ряд методов, которые взаимодействуют с...

Правильный подход ООП
Здравствуйте! Создал тестовый пример для себя для изучения. Может кто то переделать проект в соответствии всем законам ООП. Я думаю многим...

Как по 1 такту выработать данные на выходах регистра mc74hc1
Доброго времени суток, подскажите, можно ли сделать так чтобы по фронтальному импульсу (с частотой 9 МГц), 4 последовательно подключенных...

Программа предлагает ввести пароль и не переходит к выполнению основной части, пока не введён правильный
1. Напишите программу, которая предлагает ввести пароль и не переходит к выпол-нению основной части, пока не введён правильный пароль....

Правильный подход к созданию анимации
Всем привет!!! Такой вопрос.У меня есть 6 картинок, я делаю анимацию через таймер.По каждому Tick меняю картинку ресурса для image. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru