Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.01.16;
Скачать: [xml.tar.bz2];

Вниз

Господа мастера! А вы можете провести экзамен у желающих   Найти похожие ветки 

 
Style   (2003-12-23 21:53) [0]

Раньше помница была ветка, в которой Юрий Зотов написал несколько достаточно сложных тестовых вопросов и все попытались на них ответить. В общем очень интересно было отвечать и затем слушать поправки мастера. Если бы наши мастера нашли на это чуток свободного времени. Так хотелось чтобы написали хоть по 1-2ум вопросам и желательно что бы каждый затронул разную тематику, затем бы временно закрыли тему, и примерно через неделю разрешили прием ответов. Было бы здорово!


 
Nous Mellon   (2003-12-23 22:12) [1]

А я бы лучше продожение серии для начинающих почитал..
Хотелось бы, если бы у Юрия было время, приобрести книгу с уроками для начинающих. Хотя каждый находил там что-то интересное.


 
Nous Mellon   (2003-12-23 22:13) [2]

Я имею в виду что не только новички..


 
Юрий Зотов   (2003-12-23 22:21) [3]

Так, может быть, давайте к тем тестам и вернемся? Вот они.

==========================================================

На все вопросы нужно отвечать без машины, книг и справки. Можно пользоваться лишь бумагой и ручкой. Если чего-то не помните наизусть - например, количество параметров в функциях, их тип и порядок следования - это неважно, достаточно указать лишь схему кода - например: MyFunc(MyParam1, ..., MyParamN). Ответы нужны короткие, но точные - то есть, лишь самая суть в одной-двух фразах. Общее время на все - примерно час. В него надо уложиться и, кроме того, в вопросах 2в, 3д и 4в тоже указано контрольное время, в которое надо уложиться, отвечая на данный вопрос.

И еще - имейте в виду, что большинство приводимых ниже вопросов, IMHO, в общем-то, выше уровня среднего прикладного программиста. Так что, если на что-то не ответите, то это вовсе не повод не для расстройства (зато повод для чтения книг). Думаю, если ответите на половину, то это будет уже неплохо. А если на все - то Ваш уровень явно выше среднего.

Вопрос 1 (на знание основ и платформы).
Чему будет равно W после выполнения следующего кода процессором Intel x86? Ответ объяснить.

type
PWord = ^word;
var
I: integer;
W: word;
begin
I := High(I) shr 8;
W := PWord(Integer(@I) + 2)^;
end;


Вопрос 2 (на знание языка, общее умение программировать и грамотность стиля).
а). Что такое открытые массивы и их конструкторы?
б). Напишите пример перегрузки процедуры.
в). Написать процедуру поиска в заданном каталоге и всех его подкаталогах всех файлов по маске A?.B* (контрольное время - 20 минут).
г). В чем заключается недостаток такого кода:

try
Obj := TMyObject.Create;
...
finally
Obj.Free;
end;


Вопрос 3 (на знание и понимание VCL).
а). Что такое Custom-класс, абстрактный метод, классовый метод?
б). В чем принципиальное отличие TLabel от TStaticText?
в). От какого класса наследуется TCollection и почему?
г). У каких компонентов есть событие OnCreate? Почему его нет у других компонентов?
д). Написать модуль, содержащий класс, который позволяет создать лишь один свой экземпляр (контрольное время - 10 минут).


Вопрос 4 (на знание Win32 и ее API).
а). Что такое объекты ядра? Перечислите несколько функций, в которых они используются.
б). Приводят ли вызовы функций LoadLibrary/FreeLibrary к загрузке DLL в ОЗУ или выгрузке из ОЗУ?
в). Написать стандартный код цикла выборки сообщений (контрольное время - 2 минуты).
г). Чем принципиально отличаются функции SendMessage, PostMessage и PostThreadMessage?
д). Каково назначение функций GetStockObject и SelectObject?


 
Style   (2003-12-23 23:28) [4]

Юрий, просто это ужо было!
хитрые могут посмотреть history..


 
DiamondShark   (2003-12-23 23:35) [5]


> хитрые могут посмотреть history..

А умные сделают это не "для дяди".


 
Юрий Зотов   (2003-12-23 23:35) [6]

> Style © (23.12.03 23:28) [4]

А какой смысл? Это же САМО тестирование. Значит, сами себя и обманут.


 
Style   (2003-12-23 23:45) [7]

2 Юрий Зотов ©

Вообще да...

А почему запрещается использовать справку???
Ведь умение пользоваться справкой тоже цениться? И хранить все в голове не возможно.

например
2в) - я например не могу запомнить все эти файловые функции :(

хотя selectobject, bitblt, deleteobject, createsolidbrush ... подобные функции помню хорошо, - наверное потому что в возрасте 14 лет пытался писать на Borlad C++ 4 под Win 3.11 , - правду ведь говорят то что человек познает в детстве - помнит всю жизнь!

а вот тест 1
- мне больше всего нравится = я тогда на нем закосячил:

хорошо запомнился

ответ 7f$
т.к.
high(integer) - это +$7f.ff.ff.ff
shr 8 бит в право = $7f.ff.ff
длее к адресу @i прибавляем 2 и получаем $7f т.к. в памяти все записано в перевернутом виде..


 
DiamondShark   (2003-12-24 12:09) [8]


> т.к. в памяти все записано в перевернутом виде..

Вопрос глубоко философский...


 
DiamondShark   (2003-12-24 12:12) [9]

Зачем портить молодёжь предложениями "написать модуль, содержащий класс, который позволяет создать лишь один свой экземпляр"?
Уверен, что для научившегося отвечать на такой вопрос разница между модулем и просто файлом исходника пройдёт мимо.


 
pasha_golub   (2003-12-24 12:19) [10]

Вот еще

http://www.farata.kr.ua/testsonline/



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2004.01.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.012 c
4-49815
Alekc
2003-11-11 00:54
2004.01.16
Как проверить состояние Pipe ?..


1-49491
Ser_ega
2004-01-05 23:01
2004.01.16
Картинки


14-49729
Daemys
2003-12-24 17:52
2004.01.16
Кандидаты в президенты


14-49703
nick-from
2003-12-25 11:14
2004.01.16
Подарок к новому году (игруха)


3-49415
safo
2003-12-19 10:29
2004.01.16
компоненты zeos





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский