Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Вопросы по Delphi (версии 2009, 2010 Weaver, 2011 Fulcrum)

Автор: BugDigger
Дата сообщения: 28.09.2009 12:39
Для тех, кому интересно.

Иногда при старте отладки программы, программа приостанавливается, и появляется CPU view. Причем естественно, никаких точек прерывания там никто не ставил. Опция "Tools | Options |Debugger opts | CG debuggers | Ignore non-user bpts" тоже не действует. После нажатия F9 (Run) все идет нормально. Немного надоедливая вещь, особенно если таких остановов несколько. То же самое может случаться и при финише отладки.

Возможная причина - порождение нескольких процессов, к которым дебагер также присасывается. При этом после останова в CPU view в окошке потоков виден не один отлаживаемый процесс, а несколько. Откуда они берутся? К примеру, один камрад вызывал безобидный TOpenDialog, и при этом shell extension порождал ему дочерний процесс с соответствующим эффектом.

Чтобы исправить положение, можно в опциях проекта запретить отладку порождаемых процессов:

"Tools | Options | Debugger Options | CodeGear Debuggers | Debug spawned processes=off".
Автор: delover
Дата сообщения: 28.09.2009 13:07
Всех поздравляю с D2010. Просто, потому что реальный мой стаж 21 годик как программер. Я хочу чтобы новое золото всем понравилось...
Автор: funnyman
Дата сообщения: 28.09.2009 15:06

Цитата:
Всех поздравляю с D2010. Просто, потому что реальный мой стаж 21 годик как программер. Я хочу чтобы новое золото всем понравилось...

Да ужж, радоваться особо не чему... Лучше бы баги в предыдущих версиях пофиксили.
Автор: JustAMaaan
Дата сообщения: 28.09.2009 15:31
А ещё появилось стойкое ощущение, что документация даже по самым распространённым классам в 2010 по сравнению с предыдущей версией стала хуже, жиже и кривее. Не раз уже вручную прибивал заторчавший в памяти просмотрщик документации. Зато всё в модном веб-формате
Автор: JAPWork
Дата сообщения: 28.09.2009 15:57
Ребятушки, да хватит стонать.
Безглючных продуктов такого класса не было, нет и - не будет никогда!

И вопрос. Любопытство меня замучило. Конструкция "with MyCoolFunction do", столь бурно и обильно тут обсуждавшаяся... Чем так уж привлекателен именно такой вариант?
Автор: V1s1ter
Дата сообщения: 28.09.2009 16:17
JAPWork

Цитата:
Конструкция "with MyCoolFunction do", столь бурно и обильно тут обсуждавшаяся... Чем так уж привлекателен именно такой вариант?

Не нужно явно создавать переменную для хранения результата функции.

TMyRec := record
a, b: Тип;
end

function MyCoolFunction: TMyRec;

было можно
with MyCoolFunction do begin
A := ...
B := ...
end;

Теперь надо
var
XXX: TMyRec;
begin
XXX := MyCoolFunction;
with XXX do begin
A := ...
B := ...
end;
end;
Автор: psa1974
Дата сообщения: 28.09.2009 16:19
JAPWork

Цитата:
Чем так уж привлекателен именно такой вариант?

Ответ простой - НИЧЕМ! Все варианты с точки зрения достижения результата равноценны. Если вы не использовали такую семантику, то и не парьтесь
Все дело в силе привычки. Когда всю свою программистскую жизнь программируешь в таком стиле, и тут вдруг запрещают безо всякого повода - невольно расстраиваешься. Лично мне так удобнее - более короткий код получается, не нужно объявлять лишние переменные (разумеется, при этом порой снижается удобочитаемость, но в простом коде это не существенно). А наткнулся в вообще-то на эту багу не в своем коде впервые, а портируя некие компоноиды на новые рельсы...
Автор: zvyagaaa
Дата сообщения: 28.09.2009 16:32
psa1974
ПЛюс к отвеченному можно добавить, что такие баги не могут быть приятны при переносе проекта с предыдущего дельфи на новый лопатить кучу кода из-за бага - неблагодарное дело.
Автор: V1s1ter
Дата сообщения: 28.09.2009 17:32
zvyagaaa
А баг ли? Я нигде не нашел документирование такой возможности. Может плохо искал?
Пока остаюсь на мнении, что ликвидация не документированных возможностей не является багом, но psa1974 понимаю и поддерживаю - плохо когда отменяют то к чему привык, не говоря уже о портации продуктов. Надеюсь что у разработчиков были существенные основания для ликвидации этой фичи.
Автор: JAPWork
Дата сообщения: 28.09.2009 18:56
V1s1ter
psa1974
Все, большое спасибо за разъяснения. Просто я думал тут еще что-то от меня ускользнуло.
Автор: BugDigger
Дата сообщения: 29.09.2009 13:14
Для тех, кому интересно.

Если IDE начинает падать с сообщением "Out of resources", возможно, что поврежден .res файл проекта. Лечение: удалить его, запустить IDE, открыть проект; новый .res файл будет сгенерен автоматически.
Автор: data man
Дата сообщения: 29.09.2009 13:56
BugDigger, спасибо, добавил в шапку.
Автор: LadyOfWood
Дата сообщения: 29.09.2009 16:17
Скажите а какая версия Indy поставляется с Delphi 2010?
Автор: data man
Дата сообщения: 29.09.2009 16:25
LadyOfWood
Ver 10.5.5
Автор: LadyOfWood
Дата сообщения: 29.09.2009 16:32
data man
Спасибо.
Автор: tomahawk
Дата сообщения: 05.10.2009 22:30
Может, кто знает, как отключить prompt for save projects group, если в IDE открыты два и более проекта? Любое действие - сохранение юнита, ран, влечет за собой диалог Save Projects Group.
Автор: Makdir
Дата сообщения: 06.10.2009 10:46
Вообще - насколько сейчас востребованы возможности Delphi ? Я ушел из этой RAD в период её угасания (ИМХО это было время Delphi 8) и у меня сложилось впечатление, что на ней остались лишь её поклонники. Выход новой Delphi 2010 говорит о том, что она активно используется не только энтузиастами. Т.к. давно не работал с Delphi, то хотел бы спросить - под какие именно возможности, технологии и проекты заточена эта среда, в чем её преимущество?
Автор: volser
Дата сообщения: 06.10.2009 10:50
Makdir
Delphi была и есть заточена под десктоп приложения. Если у вас такое приложение, то лучше писать на Delphi.
Автор: Samotek
Дата сообщения: 06.10.2009 10:52
Makdir
Для работы с базами данных - самое оно!
Автор: zvyagaaa
Дата сообщения: 06.10.2009 15:35
Makdir
все то же самое, что и на дельфи 7 писалось на ней, то и сейчас пишется
обещали под винмобайл сделать что-то, чтобы на паскале под него писать - да видимо не дождемся мы уже в этой жизни.
Автор: Frodo_Torbins
Дата сообщения: 06.10.2009 19:43
zvyagaaa
Под винмобайл теоретически можно писать на Lazarus+KOL-CE.
Автор: Makdir
Дата сообщения: 06.10.2009 22:57
Если ничего не поменялось - непонятно чем они хотят взять рынок - другие RAD развиваются значительно активнее, имеют лучшую финансовую поддержку и сообщества программистов. Под ту же Java, на которой теперь можно хоть БД писать, хоть десктоповские приложения (что во времена Делфи 7 было затруднительно). Делфи действительно удобен в этих сферах, но почти бесперспективен.

zvyagaaa
Да уж - жаль - Делфи для мобильных было бы самое ТО!

P.S.: вообще кошки на душе скребут - паскалеподобные языки - это рулез и по производительности и по удобству кода и по многим другим параметрам. В этой ветке появился сборщик мусора и ряд других технологий, которые унаследовали современные популярные языки. Вирт - это гений, работающий не ради денег, а за идею! А разработчики Делфи черт знает чем занимаются - заимствуют позаимствованные практически у них же идеи, причем не в лучшем их виде.... эх-х-х
Автор: JustAMaaan
Дата сообщения: 07.10.2009 09:30
Makdir

Цитата:
Под ту же Java, на которой теперь можно хоть БД писать, хоть десктоповские приложения (что во времена Делфи 7 было затруднительно).

Есть места, где 100МГц пеньки всё ещё используются как клиентские машины и дооолго ещё будут использоваться, пока не помрут. На них жабко-программы тормозят так задумчиво, что если на жабу перейти, вся работа встанет. За такое любого энтузазиста "новых перспективных технологий" сначала отсношают "на ковре" всеми противоестественными способами, а потом высушат. А 2010 сама хоть и распухла непотребно, однако выходной продукт с неё даже на трухлявых пеньках работоспособен, как ни странно. Вот только что они с документацией сделали - за такое в приличных домах подсвечниками бьют.
Автор: zvyagaaa
Дата сообщения: 07.10.2009 11:49
JustAMaaan
подпишусь подо всеми вашими словами
Автор: murkovich
Дата сообщения: 07.10.2009 12:01
Не только слабенькие машины являются причиной писать под win32. Я встречал и учреждения, где просто не ставят все подряд примочки МС, даже если железо это позволяло бы. В т.ч. не ставят все дотнеты. Ход мыслей, наверное, в уменьшении забот по администрации и в уменьшении предоставляемой площади атаки. А для win32 нету среды лучше чем Delphi.

Да и относительно более легкая реверсируемость приложений под дотнет и яву.

Но лично для меня, далеко не в последнюю очередь - это более читабельный синтаксис. Не перевариваю С-подобный синтаксис, где иногда только после нескольких прочтений понимаешь, что тут есть что.
Автор: Samotek
Дата сообщения: 07.10.2009 12:59
murkovich
И еще для работы с базами крайне важна жесткая типизация паскаля - когда пишешь - думаешь не о языке, а о предметной области, а все неточности язык не пропустит.
Автор: ALEF
Дата сообщения: 07.10.2009 17:06
murkovich
С-подобный синтаксис мне тоже не нравится, вроде все понятно но нужно напрягать мозг. Это как отличное знание неродного языка - читается всегда труднее родного.
Ясно что это дело привычки. Но все же...
Автор: Makdir
Дата сообщения: 07.10.2009 20:56
Вот вот - я о том же! Почему в Делфи отсутствует Оберон 2 или АДА. Последняя, между прочим, язык весьма и весьма мощный и востребованный (в Европе, по крайней мере). И синтаксис её понятен любому паскальщику (про производительность вообще молчу). Просто разработчики пошли на поводу у Мелкомягких. В итоге, начиная с восьмой версии, имеем и интерфейс подобный MS Visual Studio (ИМХО менее удобный) и справку (которой ранее восхищался) и вообще... Это бой на чужом поле - бесперспективно.

JustAMaaan
Все зависит от реализации Java и используемых библиотек. Если будете использовать Swing времен Java 1.4 - тормозить будет непомерно. Тот же SWT даст лучшую производительность. Про JVM реального времени даже не упоминаю .

Поймите меня правильно - мне нравится Делфи и я просто переживаю за то, что с ним сейчас делают. Надеялся, что хоть Делфи 10 ушел с прежней стези.

Автор: andrewtishkin
Дата сообщения: 08.10.2009 04:05

Цитата:
Но лично для меня, далеко не в последнюю очередь - это более читабельный синтаксис. Не перевариваю С-подобный синтаксис, где иногда только после нескольких прочтений понимаешь, что тут есть что.

Раз пошла такая пьянка, я подписываюсь под этими словами
Автор: JustAMaaan
Дата сообщения: 08.10.2009 05:26
murkovich

Цитата:
Но лично для меня, далеко не в последнюю очередь - это более читабельный синтаксис.

Cи при желании тоже можно сделать читабельным. После некоторого числа внушений самые отмороженные хаккиры становятся как шёлковые и начинают писать с стиле if (pMyObject==NULL)

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172

Предыдущая тема: Установка копоненты ZipTV


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.