Форум программистов, компьютерный форум, киберфорум
Наши страницы

Delphi для начинающих

Войти
Регистрация
Восстановить пароль
 
Ralik
25 / 14 / 1
Регистрация: 13.08.2010
Сообщений: 327
#1

Что делать, когда куча кода скопилась в основном коде программы? - Delphi

27.04.2012, 01:00. Просмотров 367. Ответов 7
Метки нет (Все метки)

Я писал программу долго, если скопировать в ворд исходный код юнита, то получится 7 листов А4 кода.
И плюс к тому, чтобы вносить дополнения, приходится голову ломать над операторами If else, т.к. при добавлении кода вверх, возникает гемор внизу и приходится все в голове компилировать. Мозг перегревается, хочу упростить. Таймер не подходит, как контейнер для хранения кода и в нужный момент, чтобы он выполнялся. Как быть? Я думаю, что нужно все в отдельную процедуру забацать, а как не знаю.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.04.2012, 01:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Что делать, когда куча кода скопилась в основном коде программы? (Delphi):

При компиляции этого кода пишет что модули не найдены. Что делать? - Delphi
При компиляции этого кода пишет что модули не найдены. Что делать? unit Unit1; interface uses Windows, Messages,...

Что делать? error когда нажал RUN после запуска делфи - Delphi
procedure TForm1.BitBtn1Click(Sender: TObject); begin Memo1.Lines.Add(Edit1.Text); Edit1.Text:=''; Edit1.SetFocus; end; ...

При компиляции программы происходит ошибка, что делать? - Delphi
Доброго времени суток ,писал себе курсовую, ни кого не трогал ,и тут бац откуда не возьмись вот такая, ошибка никак не могу понять откуда...

При запуске программы выводиться ошибка,не знаю что делать - Delphi
При запуске программы выводиться ошибка-Project Project1.exe raised exception class EReaderror with message "Error Reading OnButton.Onclick...

Жутко тормозит seagate 2000MB, куча сбойных секторов. что с ним делать? - Жесткие диски
Приветствую всех. Такая проблема. Жесткий диск Seagate ST2000DM001 (Barracuda 2000GB) проработал 2 года под достаточно плотной нагрузкой...

когда играю или что нибудь загружаю лагает звук и комп помогите что делать ! - Звук, акустика
драва менял не чего не помогло

7
HanDi
890 / 337 / 8
Регистрация: 11.02.2012
Сообщений: 1,502
27.04.2012, 01:02 #2
Обычно на процедуры и функции все и разбивают.

Цитата Сообщение от Ralik Посмотреть сообщение
Я думаю, что нужно все в отдельную процедуру забацать, а как не знаю.
Тогда 7 листов А4 сюда кидать нет смысла
0
Arcor
4802 / 1804 / 159
Регистрация: 20.11.2009
Сообщений: 5,719
Записей в блоге: 1
27.04.2012, 01:05 #3
со временем становится программист опытнее, начинает сперва разбивать все на простые процедуры, потом на более сложные, потом когда процедур становится все равно тьма, он объединяет их в класс, раскидывает возможно по разным файлам

попробуй не нарушая логики работы программы разбить на части программу, чтобы получились процедуры или функции, но как кода не дано, могу помочь только устно
0
Одиночка
3927 / 1852 / 88
Регистрация: 16.03.2012
Сообщений: 3,869
27.04.2012, 01:08 #4
Можешь выделить любой кусок кода, из которого нет ссылок за его пределы и делай локальную процедуру внутри процедуры с этим кодом. Т.е. перед begin основной процедуры вставляй свою процедуру с этим куском кода. Все глобальные и локальные переменные ей будут доступны.
0
Ralik
25 / 14 / 1
Регистрация: 13.08.2010
Сообщений: 327
27.04.2012, 01:36  [ТС] #5
Не так не пойдет, спасибо всем за внимание, толку больше, думаю, в данном случае, будет от умных книжек.
Разве что, посоветуйте, кто реально читал или даже научился по какой книге и кто автор.
0
Lirrk
Нарушитель
393 / 310 / 4
Регистрация: 16.07.2011
Сообщений: 1,102
27.04.2012, 02:49 #6
Ralik,
Ну если ты умных книжек до сих пор не читал, то и не прочитаешь.
А по сути вопроса. делай как все профессионалы.
Программа разбивается на отдельные модули как главы в книге. Кажый модуль выполняет отдельную функцию и содержит свои процедуры и функции. Оформлять в видке класса не советую. Классы это вообще большая глупость. Они дают много хлама.
Модульное построение самое простое и удобное. Именно так и советуют "умные книжки"
Я свои проекты тоже пишу именно так.

А что касается ваших проблем... У меня такое впечатление, что если взятся за ваш код, от него останется, образно говоря, две строчки.
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
24629 / 16299 / 5007
Регистрация: 22.10.2011
Сообщений: 28,856
Записей в блоге: 5
27.04.2012, 03:07 #7
Цитата Сообщение от Lirrk Посмотреть сообщение
Оформлять в видке класса не советую. Классы это вообще большая глупость.
VCL идет на помойку, все переходим на WinAPI? Или, простите, у нас двойные стандарты: VCL я, значит, буду использовать, а классы - зло? Если кто-то не писал проектов размером больше 1000 строк - пускай пишет как ему хочется, но не делает громких заявлений о бесполезности (и даже вреде) классов. Плавали, знаем, приходилось разбираться "произведениями" авторов, начитавшихся вот таких "умных" книжек. Только переписывать с нуля (используя всю мощь, предоставляемую классами. А в некоторых случаях достаточно было просто грамотно унаследоваться от готовых контролов, и задача вообще решалась элементарно. Но это же опять "не наш метод", правда? Будем переписывать функционал, уже давно написанный и отлаженный, только чтоб не использовать ООП)... Ну-ну.
0
Lirrk
Нарушитель
393 / 310 / 4
Регистрация: 16.07.2011
Сообщений: 1,102
27.04.2012, 17:37 #8
UI,
Есть такое понятие "Объект"
А насчёт писать.... Всё уже давно написано и используется. Есть такие билиотеки KOL и MCK
Минимальное приложение (форма) от 15 до 42 K.
Я написал на KOL большой проект. Окно в Delphi 7 , без оптимазицации, как написано на сайте - 22K.
Само приложение, а это движок визуальных новелл сейчас 45К. Если добавить поддержку некотырых форматов, приложение будет 100 - 120K от силы.
В Лазарус чистое окно 42K (обычное более мегабайта)
Так что делайте выводы.
1
27.04.2012, 17:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.04.2012, 17:37
Привет! Вот еще темы с ответами:

что делать когда программа просит смс код? - STATISTICA
Скачал программу статистикаа она денег просит. https://yadi.sk/i/MujZkANhpp27k

Зависает проводник когда захожу в панель управления. Что делать? - Windows 7
Сигнатура проблемы: Имя события проблемы: APPCRASH Имя приложения: Explorer.EXE Версия приложения: 6.1.7601.17567 ...

Ошибка в коде потока. Что делать? - Java
class MyThread extends Thread { @Override public void run() { System.out.println("Thread is running"); } ...

В свойстве диска занято 16 гигов, а когда все папки выделяю то 10, что делать? - Windows XP
такая тема нажимаю свойства диска там пишет типа занято 16 гигов а когда все папки выделяю то 10 че делать помогите?


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.