Форум: "Прочее";
Текущий архив: 2006.10.29;
Скачать: [xml.tar.bz2];
ВнизСпрашивали на собеседовании... Найти похожие ветки
← →
Сатир (2006-10-04 19:00) [0]Какая связь между published, TPersistent и RTTI?
← →
Ketmar © (2006-10-04 19:03) [1]* в каждом слове все буквы -- латинские;
* ни в одном из слов нет пробелов;
* о них упоминали на собеседовании.
могу и ещё придумать. %-)
← →
Сатир (2006-10-04 19:05) [2]
> могу и ещё придумать
давай ещё варианты%)
← →
EvS © (2006-10-04 19:07) [3]Во всех словах присутствует буква i
← →
Ketmar © (2006-10-04 19:09) [4]* все буквосочетания короче 12 символов;
* ни об одном спрашивающий не знает нихрена (иначе зачем спрашивать?);
* в VBA такого нет;
* зато вопрос о них появился на "мастаках".
%-)
← →
Yegorchic © (2006-10-04 19:11) [5]
> * ни об одном спрашивающий не знает нихрена (иначе зачем
> спрашивать?);
Почему же? Может знать об одном..
← →
Ketmar © (2006-10-04 19:12) [6]>[5] Yegorchic(c) 4-Oct-2006, 19:11
>Почему же? Может знать об одном..
и этот вариант вполне возможен. или о двух.
← →
Palladin © (2006-10-04 19:18) [7]хм...
* TPersisten позволяет своим наследникам организовать хранение и назначение published свойств посредством доступа к ним через RTTI...
думаю необходимый и достаточный ответ :)
по крайней мере его бы мне на собеседовании хватило
← →
Сатир (2006-10-04 19:19) [8]ладно, я ответил, что
published свойства типа TPersistent отображаются в RTTI
и мне тут коллега подсказал, что
у типа ТПерсистент есть методы, позволяющие считывать и записывать целые объекты в рантайме, но позволяет оно это делать только с паблишед свойствами
← →
Palladin © (2006-10-04 19:21) [9]выразился правда не совсем точно, но спишем это на градус
← →
Сатир (2006-10-04 19:21) [10]
> Palladin © (04.10.06 19:18) [7]
ага, только я этого не знал, а предположил наугад)))
называется "сериализация"
← →
Сатир (2006-10-04 19:22) [11]
> выразился правда не совсем точно
а в чём неточность?
← →
Palladin © (2006-10-04 19:22) [12]а... точно... так оно и называется...
← →
Джо © (2006-10-04 19:23) [13]> [8] Сатир (04.10.06 19:19)
> и мне тут коллега подсказал, что
> у типа ТПерсистент есть методы, позволяющие считывать и
> записывать целые объекты в рантайме, но позволяет оно это
> делать только с паблишед свойствами
У TPersistent нет таких методов.
← →
Palladin © (2006-10-04 19:24) [14]
> [11] Сатир (04.10.06 19:22)
это я про себя сказал а не про тебя...
← →
Джо © (2006-10-04 19:24) [15]А всего-то то в этом классе и есть отличного от других классов, что он объявлен с {$M+}.
← →
Сатир (2006-10-04 19:25) [16]
> Джо © (04.10.06 19:23) [13]
ну тогда давай свой вариант ответа:-)
← →
Джо © (2006-10-04 19:33) [17]> [16] Сатир (04.10.06 19:25)
>
> > Джо © (04.10.06 19:23) [13]
>
> ну тогда давай свой вариант ответа:-)
Класс TPersistent объявлен с директивой {$M+}, следовательно, при компиляции для него и всех его наследников будет генерироваться информация времени исполнения (Runtime type info, RTTI) для его полей, свойств и методов, находящихся в секции published. Вот, пожалуй, и всё :)
← →
Сатир (2006-10-04 19:34) [18]
> Джо © (04.10.06 19:33) [17]
супер!:)
← →
Palladin © (2006-10-04 19:47) [19]
> [17] Джо ©
ага :) тут то тебя буквоедом и назначат :))
> Спрашивали на собеседовании
если честно подобных вопросов никогда на собеседованиях не задаю
только:
три теоретических
1. Какой ЯВУ Вы предпочитаете для решения (задача придумывается)?
2. Почему?
и три практических
1. поменять две целочисленных переменных местами без использования третьей
2. найти дыры в наборе целых чисел
3. определить вхождение точки в n-угольник (опционально)
по поводу теории разговор идет незамедлительно, а по поводу практики даю неограниченное время, бо самое интересное начинается потом :) когда ко мне приходят с ответами...
← →
Palladin © (2006-10-04 19:49) [20]
> три теоретических
фу блин... почти три...
третий тоже опционален и выглядит как: "а почему не Делфи?"
← →
Джо © (2006-10-04 19:51) [21]> [19] Palladin © (04.10.06 19:47)
>
> > [17] Джо ©
>
> ага :) тут то тебя буквоедом и назначат :))
Нее... Буквоедом я и сам не согласен у них работать :) Пусть с такими вопросами остаются без работников :)
← →
Ketmar © (2006-10-04 19:54) [22]>[19] Palladin(c) 4-Oct-2006, 19:47
>1. Какой ЯВУ Вы предпочитаете для решения (
>задача придумывается)?
тот, на котором пишут в данной конторе.
>2. Почему?
потому что на нём пишут в данной конторе. %-)
>3. определить вхождение точки в n-угольник (
>опционально)
а вот это с ходу не решу. потому что лениво формулы вспоминать. когда-то решал оригинальным методом: для каждого ребра: поворачивал его, чтобы было вертикальным, направлено снизу вверх, потом смотрел, с какой стороны точка. %-)
← →
Иксик © (2006-10-04 19:56) [23]RTTI это MetaData в .NET?
← →
Джо © (2006-10-04 19:57) [24]Да ну, трассировка луча — самое простое, что можно реализовать за разумное время "в полевых условиях". И всех-то формул, что пересечение прямой с отрезком :)
← →
Джо © (2006-10-04 19:58) [25]> [23] Иксик © (04.10.06 19:56)
> RTTI это MetaData в .NET?
Нет, MetaData в .NET — это RTTI :)
← →
Ketmar © (2006-10-04 19:58) [26]>[24] Джо(c) 4-Oct-2006, 19:57
>условиях". И всех-то формул, что пересечение
>прямой с отрезком :)
проблема была в том, что как раз этого я и не помнил. т.е. универсальной формулы. а ещё тогда активно занимался 3д-движками. отсюда и повороты. %-)
← →
Palladin © (2006-10-04 19:59) [27]
> [22] Ketmar ©
> тот, на котором пишут в данной конторе.
неа, чел понятия не имеет на чем пишут в нашей конторе
> потому что на нём пишут в данной конторе.
неуд! :)
> а вот это с ходу не решу. потому что лениво формулы вспоминать.
> когда-то решал оригинальным методом: для каждого ребра:
> поворачивал его, чтобы было вертикальным, направлено снизу
> вверх, потом смотрел, с какой стороны точка. %-)
ага... меня формулы не устраивают и мне они не интересны, мне интересен подход человека к этой проблемме, а формулы идут лесом... если сможет хоть чуть чуть мне обьяснить алгоритм и добиться того что бы я вник в решение... я даже сомневаться не буду, беру сразу... но вопрос опциональный и для решения не обязателен...
← →
Ketmar © (2006-10-04 20:02) [28]>[27] Palladin(c) 4-Oct-2006, 19:59
>неа, чел понятия не имеет на чем пишут в нашей
>конторе
а пофигу. на чём пишут -- на том и я буду. %-) потому что конторские правила. %-)
>> потому что на нём пишут в данной конторе.
>неуд! :)
обоснуй. %-))
>ага... меня формулы не устраивают и мне они не
>интересны, мне интересен подход человека к этой
>проблемме, а формулы идут лесом... если сможет
ну вот я тебе описал подход. самое интересное, что это работало. и было написано с учётом ограничений (не было ни книжек, ни математика рядом, ни -- в то время -- никакого инета). %-)
>хоть чуть чуть мне обьяснить алгоритм и добиться
>того что бы я вник в решение... я даже
долго бить по голове, пока ты не согласишься, что вник. %-)
← →
MeF Dei Corvi © (2006-10-04 20:11) [29]
> 3. определить вхождение точки в n-угольник (опционально)
Я бы попытался как-нибудь хитро найти :) Ну не знаю. Соединять две точки каждого ребра с этой точки -> получаем треугольник. Считаем площади таких треугольников. Считаем площадь n-угольника. Сравниваем. Хотя в таком случае возможна неточность из-за того, что числа в памяти представляются, увы, не с бесконечной точностью. Впрочем, если n-угольник невыпуклый, то этот способ не катит. Хм...
Не найдя хитрый способ, начал бы писать тупую проверку на пересечения.
← →
Palladin © (2006-10-04 20:11) [30]
> [28] Ketmar ©
> а пофигу. на чём пишут -- на том и я буду. %-) потому что
> конторские правила. %-)
может я и не прав, но писать у меня могут на том на чем лучше получается и что лучше подходит для задачи. проектировка позволяет (сам себя не похвалишь, нокто не похвалит :) )
> обоснуй. %-))
дык... вроде как обосновал выше... :)
> долго бить по голове, пока ты не согласишься, что вник.
> %-)
нююю... при таком подходе я у тебя заказ сделаю на очередную поставку мётел... :)
← →
Palladin © (2006-10-04 20:13) [31]
> [29] MeF Dei Corvi ©
n-угольник любой... хоть выпуклый хоть впуклый...
← →
MeF Dei Corvi © (2006-10-04 20:13) [32]
> хоть выпуклый хоть впуклый...
самопересечения не допускаются?
← →
Ketmar © (2006-10-04 20:15) [33]>[30] Palladin(c) 4-Oct-2006, 20:11
>может я и не прав, но писать у меня могут на том
>на чем лучше получается и что лучше подходит для
>задачи.
ой. а потом это состыковывать? бр-р-р... common lisp, например, prolog, php и assembler. %-)
>проектировка позволяет (сам себя не
>похвалишь, нокто не похвалит :) )
%-)
>нююю... при таком подходе я у тебя заказ сделаю
>на очередную поставку мётел... :)
тоже вариант. %-)
← →
Сатир (2006-10-04 20:15) [34]о, вспомнил другой вопрос с другого собеседования...
что такое "агрегирование" и чем оно отличается от обычного наследования?
← →
Palladin © (2006-10-04 20:15) [35]допускаются...
← →
Джо © (2006-10-04 20:16) [36]> [34] Сатир (04.10.06 20:15)
> о, вспомнил другой вопрос с другого собеседования...
> что такое "агрегирование" и чем оно отличается от обычного
> наследования?
Это простой вопрос, вообще-то.
← →
Ketmar © (2006-10-04 20:19) [37]>[34] Сатир 4-Oct-2006, 20:15
>что такое "агрегирование" и чем оно отличается
>от обычного наследования?
неинтересно. %-)
← →
Сатир (2006-10-04 20:19) [38]
> Это простой вопрос, вообще-то.
не спорю. но читал об этом только в одной книжке и потому не особо запомнилось.
напомни, плиз:)
← →
Иксик © (2006-10-04 20:21) [39]
> Джо © (04.10.06 19:58) [25]
Ну да :))) Я не так выразился :)
← →
Ketmar © (2006-10-04 20:21) [40]"агрегирование" -- это включение объекта в другой объект. обычно при помощи поля-переменной. %-) остальное додумай сам. %-))
Страницы: 1 2 3 вся ветка
Форум: "Прочее";
Текущий архив: 2006.10.29;
Скачать: [xml.tar.bz2];
Память: 0.54 MB
Время: 0.062 c