![]() |
Модераторы: THandle, bems |
![]() ![]() ![]() |
|
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 7 Всего: 329 |
k0rvin, согласен
![]() |
|||
|
||||
k0rvin |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 0 Всего: 5 |
ещё раз посмотрите мои примеры, я не призываю к коду типа
я имею в виду
области видимости вполне обозримы, даже более обозримы и "узки". Это сообщение отредактировал(а) k0rvin - 4.6.2010, 14:49 -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||||
|
|||||||
cemick |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 416 Регистрация: 6.7.2006 Где: Санкт-Петербург Репутация: 3 Всего: 6 |
Хорошо, а для каких целей вам надо ограничивать область видимости. Я не вижу разумных объяснений почему это может быть удобно и оправдано. Кроме того, если вам понадобиться использовать еще в 10 циклах ниже, каждый раз прийдеться объявлять переменную, и хорошо, если у нее короткое имя типа. Это сообщение отредактировал(а) cemick - 4.6.2010, 15:54 |
|||
|
||||
k0rvin |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 0 Всего: 5 |
1) это удобно и оправдано, потому что правильно. для случая 10-ти циклов я и приводил выше вариант
+ можно добавить в for некоторый вывод тиов (тип счётчика выбирается как наиболее широкий из типов a и b), тогда получим возможность писать так:
т.е. возвращаемся к текущему состоянию, только переменная-счетчик видна только в теле for 2) я же не говорю, что использование let должно быть обязательным. кто не хочет -- юзает var в начале подпрограммы. -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||||
|
|||||||
CodeMonkey |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1839 Регистрация: 24.6.2008 Где: Россия, Тверь Репутация: 4 Всего: 89 |
На самом деле удобно очень. Вписал for + Tab + i (переменную цикла) + Tab + Screen.Forms + Tab + пишешь тело цикла. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 7 Всего: 329 |
Во, вспомнил.
Я давно мечтаю, чтобы в дельфи все невизуальные компоненты выкладывались не на форму, а на какую-нибудь специальную панель в IDE. А то если много компонентом, то трудно проектировать форму. Но!!! В одной из последних версий эксперта GExperts почти реализовали мою мечту. Они добавили команду "Hide/Show Non-Visual" ![]() ![]() ![]() ![]() Добавлено через 1 минуту и 40 секунд И ещё один большой недостаток среды в том, что она не запоминает положение всяких вспомогательных редакторов. Таких как редактор ActionManager`а, редактор persistent-полей набора данных. Частично GExpert тоже запоминает и восстанавливает размер этих окон и положение, но не всё. |
|||
|
||||
k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 0 Всего: 5 |
согласен, как в вижуал студии например. особенно фигово становится, если отключить выравнивание по сетке (я предпочитаю выравнивание относительно компонентов) -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: нет Всего: 17 |
В принципе, все Non-Visual можно убирать в DataModul, но это лишний модуль, так что поддерживаю.
-------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
Rohoss |
|
|||
![]() Начальник интернета ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1308 Регистрация: 9.10.2006 Где: Matrix Репутация: 3 Всего: 18 |
А обязательно невизуальные компоненты бросать на форму? Можно ведь с кода создавать...В визуал студии идеология заставляет так делать.
|
|||
|
||||
k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 0 Всего: 5 |
можно, но зачем загромождать исходник "бесполезным" кодом? -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
Rohoss |
|
|||
![]() Начальник интернета ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1308 Регистрация: 9.10.2006 Где: Matrix Репутация: 3 Всего: 18 |
Да ладно, сколько там того кода ![]() |
|||
|
||||
Akella |
|
||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 7 Всего: 329 |
![]() Добавлено через 6 минут и 20 секунд
Ты не забывай, что Delphi - это RAD. А зачастую визуально проектировать гараздо быстрее и проще. Возьмём, например, проектирование пользовательского интерфейса с использованием компонентов: TImageList, TActionList, TToolBar, TMainMenu, TPopupMenu 3 шт. Как думаешь, быстрей будет набросать компонентов на форму, связать, загрузить картинки или писать это всё в коде + запихивать картинки в ресурсы с компиляцей %). Да, да многие супер-буппер программеры скажут, мол это всё былокодерство и что настоящий программист всегда идёт в обход пишет всё ручками... ну ну... пишите, никто ж не запрещает ![]() |
||||
|
|||||
former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: нет Всего: 17 |
А меню, значит, невизуальный компонент. ![]() Зачем для каждой формы? ![]() ![]() Один для ImageList и т.п., другой для данных (в случае работы с БД). Другое дело, что такой подход усложняет код и не всегда реализуем. Было бы гораздо удобнее, если бы в редакторе невизуальные объекты помещались не на форму, а на отдельную панель, но при этом относились к данной форме. Нечто похожее в VS реализовано.
В той же VS все больше "графического" программирования (работа мышкой). ...и даже сочувствуют. ![]() -------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 7 Всего: 329 |
Значит ты не проектировал высоконагруженные приложения, где 100-200 окон. Добавлено через 37 секунд Ну ладно, меню можно и непосредственно на форму бросить. Добавлено через 1 минуту и 11 секунд
здасте приехали ![]() ![]() ![]() ![]() |
|||
|
||||
former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: нет Всего: 17 |
У меня сейчас в проекте порядка 100. В дата-модуле все, что касается доступа к данным. Есть отдельный дата-модуль, где хранятся некоторые невизуальные компоненты (общего пользования) приложения. Остальное все в пакетах. ![]() -------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi" | |
|
Добро пожаловать в форум группы "Delphi". В разделе разрешается:
Строго запрещено:
Если Вам понравилась атмосфера форума, заходите к нам чаще! Люблю, целую, вечно Ваш, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Форум группы: delphi | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |