Текущий архив: 2017.10.15;
Скачать: CL | DM;
Вниз
Тестовые задания по Delphi Найти похожие ветки
← →
Rouse_ © (2016-06-14 23:19) [80]Иногда бывает другая ситуация, к примеру: я знаю ответ на вопрос Зотыча, но знаю и альтернативный - расширенный вариант. Что считать верным? ;)
← →
DayGaykin © (2016-06-15 00:11) [81]
> Rouse_ © (14.06.16 23:19) [80]
>
А иногда бывает так:
"В чем основное отличие Java и JavaScript?"
Ну и как на это отвечать?
← →
Rouse_ © (2016-06-15 00:20) [82]Обьекты
← →
Германн © (2016-06-15 01:02) [83]
> Kerk © (14.06.16 22:44) [79]
>
>
> > Юрий Зотов © (14.06.16 21:34) [74]
>
>
> > Совершенно согласен и скажу даже сильнее: любой технический
> > вопрос на собеседовании - из этой серии. Поскольку ответ
> > спрашивающий всегда знает заведомо.
>
> Не любой :)
>
> Я потому и ополчился на вопрос про OnCreate, а не на вопрос
> про конвертацию. Потому что первый вопрос - это вопрос телевикторины
> на знание фактов
Не совсем так. Это вопрос на знание основ Дельфи для разработчика классов. Вопрос про конвертацию вообще имеет очень слабое отношение именно к Дельфи. Там только вопрос алгоритмов и грамотного их применения.
P.S. Вот тут хочется ещё раз спросить с какой целью ТС задал свой вопрос "Хочу узнать свой скилл"?
Для оценки "кодера" вопрос про OnCreate явно не подходит.
← →
DayGaykin © (2016-06-15 01:23) [84]
> Rouse_ © (15.06.16 00:20) [82]
> Обьекты
Вопрос оказался провокацией.
← →
KSergey © (2016-06-15 07:45) [85]> Германн © (15.06.16 01:02) [83]
> Не совсем так. Это вопрос на знание основ Дельфи для разработчика
> классов. Вопрос про конвертацию вообще имеет очень слабое
> отношение именно к Дельфи. Там только вопрос алгоритмов
> и грамотного их применения.
> P.S. Вот тут хочется ещё раз спросить с какой целью ТС задал
> свой вопрос "Хочу узнать свой скилл"?
> Для оценки "кодера" вопрос про OnCreate явно не подходит.
>
на мой взгляд как у конкретного вопроса в конкретном месте было неудачное ограничение: "никуда не подглядывая". В таком варианте - именно телевикторина.
А вот если убрать это ограничение - это уже отличный вопрос по всем параметрам. Один фик ответ на ту часть, где уточняется "почему" и "чем заменить" напрямую нигде не содержится и тут-то и можно выбирать по ответам.
Я бы не догадался даже с подглядыванием. В отличии.
> Германн © (15.06.16 01:02) [83]
> P.S. Вот тут хочется ещё раз спросить с какой целью ТС задал свой вопрос "Хочу узнать свой скилл"?
> Для оценки "кодера" вопрос про OnCreate явно не подходит.
Мне вопрос зададут - а я на него отвечу. Мне будет приятно.
На что не отвечу - буду знать куда рыть.
По-моему, вполне нормальное желание.
← →
Юрий Зотов © (2016-06-15 09:58) [86]> Kerk © (14.06.16 22:44) [79]
> первый вопрос - это вопрос телевикторины на знание фактов,
Не согласен.
Первый вопрос (про OnCreate) состоит из трех взаимосвязанных частей. Можно сказать, что первая часть - действительно на знание фактов. Для ответа достаточно назвать TForm и TDataModule. И если человек отвечает именно так, то он показывает свои знания, но не более того. Но если он отвечает так:
"Событие OnCreate имеют компоненты, которые:"
- являются контейнерами других компонентов;
- при создании грузят себя и свое содержимое из DFM или иного ресурса;
- после полной загрузки генерируют событие OnCreate.
На сегодня это TForm и TDataModule. Но завтра могут появиться и другие.
И если человек отвечает именно так, то он показывает не только свои знания, но и понимание того, что до полного окончания загрузки обращаться к другим компонентам и генерить события нельзя.
Хорошо, допустим, что человек все это понимает, но не придал этой части вопроса особого значения, поэтому просто назвал TForm и TDataModule. Для того, чтобы уточнить, служит вторая часть вопроса - почему так сделано? Вот тут уже надо думать, голым знанием фактов тут не обойдешься.
Ну и третья часть - практическая. Тоже говорит о понимании. Потому что надо не только знать о существовании метода Loaded, но и понимать, зачем он нужен и как работает. Кроме того, третья часть в какой-то степени проявляет практический уровень человека. Дело в том, что перекрытие Loaded прикладниками почти не используется, поэтому прикладник подумает. А для компонентщика со стажем перекрытие Loaded - обычное дело, ему и думать не надо.
← →
Игорь Шевченко © (2016-06-15 10:34) [87]Я тоже знаю вопрос, на который без 100 грамм не ответить.
Другое дело, что знание ответа на него применять, также, как и OnCreate у иных компонентов делать, дело настолько не распространенное, что польза от ответа на подобный вопрос без интернета чуть менее, чем никакая. Да, понимание VCL, но нахрен оно нужно - это понимание до таких глубин, чтобы сходу ответить на нетривиальные вопросы - я тоже не знаю.
Занимательно, что про Firemonkey никто не спрашивает. К чему бы это ?
← →
Юрий Зотов © (2016-06-15 11:16) [88]> KSergey ©
> All
Вопрос, ответа на который я не знаю.
Пишем базовую форму, от которой потом будем наследовать рабочие формы.
1. На базовой форме лежат компоненты, которые должны автоматически появляться и у рабочих форм-потомков. С этой целью базовая форма помещена в репозиторий.
2. У базовой формы есть добавленные нами новые published-свойства. Чтобы эти свойства были доступны в design-time, базовая форма зарегистрирована в IDE через RegisterCustomModule.
3. Базовая форма лежит в run-time пакете. Еще есть design-time пакет, который в required ссылается на run-time пакет и инсталлирован в IDE. Design-time пакет содержит процедуру register и все остальное, что нужно только в design-time. Это эксперт, помещающий базовую форму в репозиторий, а также (если надо) редакторы свойств и компонентов.
4. Что ожидаем. Жмем New-Other, в репозитории выбираем базовую форму и получаем ее наследника (рабочую форму) со всеми компонентами и добавленными нами свойствами - причем эти свойства доступны для правки в design-time.
5. Что имеем на самом деле. Жмем New-Other, в репозитории выбираем базовую форму и получаем ее наследника (рабочую форму) БЕЗ ВСЯКИХ КОМПОНЕНТОВ, АБСОЛЮТНО ПУСТУЮ. Но добавленные нами свойства есть и они действительно доступны для правки в design-time.
6. Убираем RegisterCusomModule. Жмем New-Other, в репозитории выбираем базовую форму и, само собой, получаем ее наследника (рабочую форму) со всеми компонентами. Но добавленных нами свойств в инспекторе объектов мы, естественно, не видим.
7. Получили противоречие. Если RegisterCustomModule есть, то у рабочей формы есть новые свойства, но нет унаследованных компонентов. Если же RegisterCustomModule нет, то унаследованные компоненты имеются, но нет новых свойств.
Вопрос: как добиться желаемого? Чтобы у рабочей формы были и новые свойства, и унаследованные компоненты.
Ответ: я не знаю ответа.
← →
Юрий Зотов © (2016-06-15 11:52) [89]> Игорь Шевченко © (15.06.16 10:34) [87]
> Да, понимание VCL, но нахрен оно нужно - это понимание до
> таких глубин, чтобы сходу ответить на нетривиальные вопросы
Все зависит от характера работы. Чистому прикладнику эти глубины действительно вряд ли нужны. Но работал я в одной конторе, в системной группе - так в этой группе без знания и понимания подобных глубин ну никак.
← →
картман © (2016-06-15 21:48) [90]
> понимание того, что до полного окончания загрузки обращаться
> к другим компонентам и генерить события нельзя
глубоко, да, очень глубоко
← →
iop © (2016-06-15 22:05) [91]Вопрос: как добиться желаемого? Чтобы у рабочей формы были и новые свойства, и унаследованные компоненты.
создать проджект груп в которую входит проджект с дизайном предка и текущий проджект использующий предка.
перед созданием наследника убедится что открыта форма с предком
← →
NoUser © (2016-06-15 22:12) [92]>[87]
Firemonkey ???
http://images.popmatters.com/reviews_art/m/monkey_island_column_swordfighting.jpg ))
← →
Германн © (2016-06-16 01:24) [93]
> KSergey © (15.06.16 07:45) [85]
>
> > Германн © (15.06.16 01:02) [83]
> > Не совсем так. Это вопрос на знание основ Дельфи для разработчика
> > классов. Вопрос про конвертацию вообще имеет очень слабое
> > отношение именно к Дельфи. Там только вопрос алгоритмов
> > и грамотного их применения.
> > P.S. Вот тут хочется ещё раз спросить с какой целью ТС
> задал
> > свой вопрос "Хочу узнать свой скилл"?
> > Для оценки "кодера" вопрос про OnCreate явно не подходит.
>
> >
>
> на мой взгляд как у конкретного вопроса в конкретном месте
> было неудачное ограничение: "никуда не подглядывая". В таком
> варианте - именно телевикторина.
Неудачное сравнение. Тут более подходит анекдот о том как кто-то отвечает на вопрос "чему равно дважды два/ сколько будет два умножить на два". Кто-то сразу отвечает - четыре. Кто-то хватается за логарифмическую линейку (уст.)/калькулятор. Кто-то сразу отвечает что он не обязан помнить все формулы. :)
← →
Германн © (2016-06-16 01:59) [94]
> Игорь Шевченко © (15.06.16 10:34) [87]
>
> Занимательно, что про Firemonkey никто не спрашивает. К
> чему бы это ?
Что тут занимательного? Кто тут хоть что-то знает о Firemonkey? Не говоря уже о специалистах в этой области, которые сюда заходить не желают.
← →
Юрий Зотов © (2016-06-16 09:23) [95]> iop © (15.06.16 22:05) [91]
Надо же, как все просто, оказывается. Но вот Erik Berry (это разработчик GExperts) почему-то так не считает. Вот что он говорит по этому поводу:
"Note that the IDE will not allow you to add both published properties and components to a custom module at the same time".
Значит, либо он неправ, либо Вы не в теме.
← →
Юрий Зотов © (2016-06-16 09:40) [96]Есть, правда, обходной путь, но он именно обходной.
← →
KSergey © (2016-06-16 14:06) [97]> Германн © (16.06.16 01:59) [94]
> Что тут занимательного? Кто тут хоть что-то знает о Firemonkey?
> Не говоря уже о специалистах в этой области, которые сюда заходить не желают.
Вот это, кстати, в самом деле удивительно мне лично.
С одной стороны, Борланд в своей реинкарнации выпускает всё новые версии, куда включает как изменения в языке, так и переписанные библиотеки.
При этом изменения языка явно используются и изучаются (это видно по ответам на форуме), то изменения в стандартных библиотеках (опять же судя лишь по форуму) игнорируются чуть более, чем полностью (на мой личный взгляд). Фактически все познания - на уровне Дельфи 5/7 плюс те грабли, на которые наступали при использовании этих познаний в более новых версиях. Как так?
Или я ошибаюсь?
← →
Игорь Шевченко © (2016-06-16 18:04) [98]KSergey © (16.06.16 14:06) [97]
> Или я ошибаюсь?
Нисколько. Другое дело, что этих познаний обычно хватает для текущих задач. Любую программу можно написать на Фортране.
← →
Rouse_ © (2016-06-16 18:17) [99]
> Игорь Шевченко © (16.06.16 18:04) [98]
> Любую программу можно написать на Фортране.
Не любую :)
← →
ttUser © (2016-06-16 21:38) [100]>Обьекты
ооп как раз в javascript покруче любого дельфового. Только основано на прототипировании, а не на классическом наследовании классов. Возможностей больше, но понимать сложнее )
← →
Kerk © (2016-06-16 21:50) [101]А ты и TUser, который тут был - это разные люди?
← →
ttUser © (2016-06-16 23:19) [102]разные
← →
Германн © (2016-06-17 01:35) [103]
> KSergey © (16.06.16 14:06) [97]
>
> > Германн © (16.06.16 01:59) [94]
> > Что тут занимательного? Кто тут хоть что-то знает о Firemonkey?
>
> > Не говоря уже о специалистах в этой области, которые
> сюда заходить не желают.
>
> Вот это, кстати, в самом деле удивительно мне лично.
> С одной стороны, Борланд в своей реинкарнации выпускает
> всё новые версии, куда включает как изменения в языке, так
> и переписанные библиотеки.
> При этом изменения языка явно используются и изучаются (это
> видно по ответам на форуме), то изменения в стандартных
> библиотеках (опять же судя лишь по форуму) игнорируются
> чуть более, чем полностью (на мой личный взгляд). Фактически
> все познания - на уровне Дельфи 5/7 плюс те грабли, на которые
> наступали при использовании этих познаний в более новых
> версиях. Как так?
> Или я ошибаюсь?
Да просто мало кто пишет программы на FMX.
← →
Юрий Зотов © (2016-06-17 12:43) [104]> Kerk © (16.06.16 21:50) [101]
> А ты и TUser, который тут был - это разные люди?
> ttUser © (16.06.16 23:19) [102]
>разные
Ну очевидно же:
TUser - это class(...)
ttUser - это class of TUser
:o)
Страницы: 1 2 3 вся ветка
Текущий архив: 2017.10.15;
Скачать: CL | DM;
Память: 0.67 MB
Время: 0.012 c