1 | |
Проектирование (разработка логики приложения): как это делать правильно?28.09.2016, 16:33. Показов 4506. Ответов 10
Метки нет Все метки)
(
Добрейшего времени суток.
Зачастую при решении разных задач возникают проблемы с архитектурой приложений. А именно при получении задачи я сразу же берусь за написание кода, от этого и много проблем и ошибок разного рода, и как следствие приходится многое переписывать/передумывать. Недостатки этого недоподхода очевидны, да и к тому же затратны по времени. Собственно вопрос -- как бороться с этим недугом? Где можно что почитать? До "Совершенный код" Макконнелла руки пока не доходят, постоянно откладываю на потом, да и думаю пока еще рано за эту книгу браться.
0
|
|
28.09.2016, 16:33 | |
Ответы с готовыми решениями:
10
Ссылки в подчиненной форме. Как правильно это делать? Определение сроков разработки проекта Как это делать правильно? Подскажите, как упростить выражение и вообще, как это нужно делать правильно?
|
![]() 3219 / 1746 / 435
Регистрация: 03.05.2010
Сообщений: 3,867
|
|
29.09.2016, 11:23 | 2 |
![]() Решение
Ну почему же, Макконнелл как раз своевременно и в тему. Конечно, он отпугивает своей толщиной, и воды в нем многовато, но его нужно читать выборочно.
"Чистый код" Роберта Мартина тоже очень хорошая книга. Ну, вы наверно сразу с реализации начинаете, т.е. снизу вверх, а надо с проектирования начинать, т.е. сверху вниз. Кстати, Роберт Мартин приводит очень простой и эффективный способ: 1) В функции main сначала пишете комментарий, в котором рассказываете что она должна делать. 2) Затем каждое действие заменяете вызовом функции, которую и называете по имени этого действия. 3) Далее реализуете эти функции таким же способом. Т.е. сначала добиваетесь, чтобы функция main выглядела красиво, потом приступаете к реализации вызываемых в ней функций. Таким образом и код получается самодокументируемым, и проектирование само собой происходит.
1
|
![]() 8718 / 4299 / 957
Регистрация: 15.11.2014
Сообщений: 9,743
|
|
29.09.2016, 15:38 | 3 |
1
|
29.09.2016, 15:52 [ТС] | 4 | |||||
я сам как-то пришёл к похожему способу, например.
Mr.X, а вообще с какой книге посоветуете сейчас начать? мой архивчик :)
Дональд Кнут - искусство программирования
Джоэл Спольски - Джоэл о программировании Роберта Мартина «Чистый код» Мартин Фаулер - Рефакторинг. Улучшение существующего кода Макконнелл - Совершенный код. Мастер-класс шаблоны проектирования алан шаллоуей Джеймс р Тротт Design Patterns, шаблоны Фаулера Гради Буч: Объектно-ориентированный анализ и проектирование Приемы объектно-ориентированного проектирования - Э. Гамма Интерфейс: новые направления в проектировании компьютерных систем
0
|
![]() 3219 / 1746 / 435
Регистрация: 03.05.2010
Сообщений: 3,867
|
|
29.09.2016, 17:45 | 5 |
Ну, из этих книг мне "Чистый код" больше всего нравится. Умно и толково пишет о самых важных вещах и особо не растекается мыслью по древу.
1
|
Ушел с форума
![]() |
|
29.09.2016, 18:42 | 6 |
![]() Решение
Бери листик, ручку (условно) и описывай для себя, как будет работать
твоя программа, по какой схеме. Тут то, тут се, там это. Обычно сразу всплывают какие-то загвоздки, которые тебе в ином случае пришлось бы решать уже "на ходу". Когда наступит полная или почти полная ясность, можешь садиться и писать код.
1
|
29.09.2016, 21:20 [ТС] | 7 | ||||||||||||||||||||||||||||||
Как-то раз пришла идея сделать тупенький аймбот. Для начала задача была простая, с возможностью дальнейшего оброста функционала.
Пример испытвал на CS:GO, причём удачно. Суть проста: 1. караулим врага где-нибудь у арочки/дверей с зажатой клавишей hotkey1 2. как только враг появляется сразу зажимаем мышку1 для выстрела 3. клавишу hotkey1 отпускают -- отпускаем мышку1 (прекращение стрельбы) Вообще хорошо было бы для перестрелок на снайперских винтовках. Например de_dust2 на центре ![]()
main.cpp
Mouse.h
Mouse.cpp
Color.h
Color.cpp
0
|
Любитель чаепитий
|
|
29.09.2016, 21:27 | 8 |
Не по теме: Надеюсь, что вы на Non-steam тестили, а то Vac-ban к Вам уже бежит. :) А вообще: ![]()
1
|
30.09.2016, 10:45 [ТС] | 11 |
Пожалуй начну с Роберта Мартина «Чистый код». Дальше видно будет.
Вопрос закрыт, всем спасибо ![]()
0
|
30.09.2016, 10:45 | |
Помогаю со студенческими работами здесь
11
Правильное проектирование классов или как гуру это делают?! Как это реализовать? И как это правильно называется? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |