![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Alexeis, почитай доку или описание по DUnit.
Я смотрел, трогал... Мне это не нужно. Я могу спокойно 2 недели строчить код, потом за 5 минут поправить все очипятки и всё работает. Проверять работоспособность модулей и классов для меня дико - там же в коде всё написано ![]() |
|||
|
||||
Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: нет Всего: 62 |
Вот ещё статейка - http://www.exprogramming.ru/Articles/LoveUT.html
Snowy, потому что один разработчик может держать весь проект в голове. А что если пройдёт пара лет и нужно что-то поменять? Хотя если в комментариях ВСЁ написано... ![]() Это сообщение отредактировал(а) Ch0bits - 10.4.2007, 21:39 |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Даже на форуме порой решения даю с комментами формата автодокументатора ![]() Добавлено через 4 минуты и 40 секунд ЗЫ. Когда проходит пара лет, смотришь на свой код и думаешь: "Ну и хрень... Неужели это я написал?!" ![]() |
|||
|
||||
Злоумышленник |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 51 Регистрация: 3.9.2006 Репутация: -1 Всего: -3 |
||||
|
||||
Beltar |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 3 Всего: 7 |
2 Yanis
Боюсь, что нет. Перегрузка операторов для классов только под .NET. Alexeis
Когда мне приспичило поменять имя мегаглобального для программы типа, я от рефакторинга чуть не кончил. 30 секунд на операцию. ![]() 2 Ch0bits
Такие значит классы. Друг от друга зависимые. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
||||||
|
|||||||
Rennigth |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1708 Регистрация: 21.6.2004 Где: Moscow Репутация: 49 Всего: 76 |
![]() ![]() -------------------- (* Honesta mors turpi vita potior *) |
|||
|
||||
Alexeis |
|
||||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Речь уже идет о Delphi2007 for win32, как я понял в ней ввели и для обычных классов.
Так и нужно было чудес ждать, текстовые операции всегда длительные, а если бы переменную использовал, в нескольких модулях, тогда что? Нужно соизмерять возможности операций. В рамках функции средних размеров, все должно отлично работать. Кстати использование всяких глобальных переменных и гигантских функций, как раз говорит о плохом стиле кода. Переменные должны рождаться и умирать в блоках. Такие объекты как формы как правило уникальны, а операции изменения имени черезвычайно редки, потому тут вполне можно и поиском обойтись. Если приходиться часто менять переменные в таких блоках, то следует серьезно задуматься о организации приложения. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
||||
|
|||||
Beltar |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 3 Всего: 7 |
30 секунд это включая мои действия. ![]()
Ну дык круто блин. Вон в Chrome, так и шаблоны есть. Чем же Сишники размахивать будут, когда они и в Delphi появятся. ![]() -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
||||
|
|||||
Yanis |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2937 Регистрация: 9.2.2004 Где: Москва Репутация: 72 Всего: 111 |
||||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Зато она есть для Advanced Record в Win32. Это как раз и важно, складывать Ежиков с помидорами мало кому прийдет в голову. А для объектов метода Assign(), хватает с головой, чтобы присвоить по значению. Всякие + - шапочки и хвостики удобны для работы с элементами, т.е. простыми объектами, которые вполне теперь могут быть реализованы при помощи Advanced Record. Причем не могут, а должны быть таковыми ведь размер прародителя TObject, думаю многих останавливает, при создании объектов состоящих из 2х 3х integerов. Из-за этого KOL и строилась на старых паскалевских объектах. Для больших и сложных объектов операторы слишком неочевидны, чтобы их использовать. Методы куда понятнее. Но странно, что в обзоре не написано, что только в Win32, от чего напрашивается вывод, что 2007 они будут и в Win32. Нужно уточнить... -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
Beltar |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 3 Всего: 7 |
2 Alexeis
Кстати, а в новых язычишках типа Gentee и AFAIR Оберона структура и класс идентичны. Вроде неглупые люди делают, но я так и не уловил идеи, ведь объект, как правило большой и передается по ссылке, редко Assign, а структура вполне может копироваться. ![]() -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
|||
|
||||
s-mike |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 425 Регистрация: 16.1.2005 Где: Киев Репутация: 9 Всего: 16 |
Ну не обучен у нас народ к пользованию лицензионными продуктами.
На сайт CodeGear заходил? Хотфиксы ставил? Должен заметить, что после установки всех хотфиксов среда работает достаточно стабильно. |
|||
|
||||
Yanis |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2937 Регистрация: 9.2.2004 Где: Москва Репутация: 72 Всего: 111 |
||||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Beltar, все объекты в Delphi наследники TObject;
Т.е. они по размеру не меньше него самого.
Т.е. нас ожидает табличка VMT на 9 методов. т.е. 9 * 4 = 36 байт + сам объект + указатель на VMT в объекте, т.е. стартуем как минимум уже с 40 байт. Если у нас 2 переменные типа Integer, то размер 48 байт. Итого в лучшем случае 85% размера объекта не наши, а родного TObject. При количестве переменных порядка 10 интов, лишние расходы уже 50%. Вот и задумаешься, когда создаешь список из 100000 таких объектов. У Advanced Record, такого быть не должно, так как она не наследник TObject. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
Beltar |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 3 Всего: 7 |
2 Alexeis
Дык это понятно. Непонятно, почему несмотря на это в ряде новых языков структуры и класс объединены. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |