Помогите найти тест на знание PHP
2. Что такое ArrayObject? ArrayIterator?
3. Как по умолчанию в пхп передаются аргументы в функцию — по ссылке или по значению? Почему как правило не рекомендуется передавать данные по ссылке?
4. Какие функции в пхп называются магическими? Какие операторы в своём классе можно переопределить? Можно ли переопределить, например, оператор сложения?
5. Что выведет следующий код:
$a = new stdClass;
$a->q = "a";
$b = $a;
$a->q = "c";
print $b->q;
Как сделать так, чтобы $b->q отдавал "a"?
5. Как структуры данных пхп устроены изнутри? Как устроены переменная, массив, класс? Где хранятся пользовательские и встроенные функции, можно ли их заменить?
6. Какие типы данных знает zend_parse_arguments? Как можно сделать перегруженную функцию, принимающую, например, либо bool, либо два string, средствами пхп? А средствами его апи?
7. Можно ли средствами пхпшного апи заменить операторы класса?
Ну это так, навскидку придумал, можно ещё интересных вопросов задать.
Ну и вообще перед постановкой подобной задачи стоит определиться, какого уровня кандидат ищется и зачем.
Нужно это для того, чтобы определить с кем имею дело: с программистом или с "менеджером проекта", который потом найдет фрилансера и тот все сделает в итоге, а менеджер получит маржу.
получит моржу
кстати, а какая тебе вообще разница, кто выполнит проект, если размер оплаты тебя будет устраивать?
Спасибо, но хотелось бы еще получить ответы на эти вопросы, т.к. проверяющий буду сам я.Чувак, ололо! Ты и есть менеджер проекта по составлению вопросов к php-собеседованию с ответами!
Нужно это для того, чтобы определить с кем имею дело: с программистом или с "менеджером проекта", который потом найдет фрилансера и тот все сделает в итоге, а менеджер получит моржу.
Но ты ошибся, "фри" в слове "фрилансер" означает "свободный", а не "бесплатный".
Поэтому ты сейчас сильно рискуешь вместо моржи словить в ебало! =)
А может даже склеить ласты!
кстати, а какая тебе вообще разница, кто выполнит проект, если размер оплаты тебя будет устраивать?Большая разница. Хочу иметь дело с исполнителем, а не с посредником.
А кто говорит про бесплатность? Что плохого в том, что всю сумму N получит фрилансер? Зачем нужен еще посредник в раскладе?
А кто говорит про бесплатность? Что плохого в том, что всю сумму N получит фрилансер? Зачем нужен еще посредник в раскладе?Это шутка такая. Смотри, еще раз: ты хочешь исключить менеджеров из игры. При этом сам ведешь себя как менеджер!
Причем ищущий решения своей задачи забесплатно (максимизируя, таким образом, МОРЖА).
GOT IT?
Просто при попытке найти программера на сайте фриласа очень часто натыкаюсь на студии. Недавно втсретился с вроде бы "программистами", оказалось 2 армянина. Сказали что работают в основном удаленно, но что-то мне подсазывают, что они просто возьмуться за мой проект, найдут программистов и передадут его им. Сами на этом и наживаются.
Я понимаю что это бизнес, но хотелось бы исключить заедомо лишнее звено в цепи.
даже эти 2 армяна выполняют некоторую полезную работу - ищут тебе исполнителя и ищут исполнителю заказ. при этом у них те же сложности - отличить посредника от программиста что и у тебя, а так же проблема программиста - отличить реального заказчика от посредника. и так как они не приходят на форум спрашивать ответы про пхп, то значит они справляются с этими 2 задачами. хотя конечно занимаемая ими экономическая ниша лично мне не слишком нравится.
На этом топик можно будет закрывать, т.к. я усвоил все необходимые уроки бизнеса и жизни
ну кроме того, что пхп - интерпретируемый язык конечно.
Как выглядит обработка сценария на PHP обычным интерпретатором:
Чтение файла
Генерация байткода
Выполнение кода
Выдача результата
2. Что такое ArrayObject? ArrayIterator?очень удобная штука!
1. Компилируемый. В байт код не только можно скомпилить - более того, это делается самим интерпретатором.А в нативный код его можно скомпилировать при помощи hiphop от фэйсбука (который в общем-то в промежутке транслирует его в c++, но в результате получаем искомое).
Смысл это здесь постить если нету ответов. Мне нужен тест с ответами.
даже эти 2 армяна выполняют некоторую полезную работу - ищут тебе исполнителя и ищут исполнителю заказ. при этом у них те же сложности - отличить посредника от программиста что и у тебяЖаль только, количество денег ограничивает длину этой цепочки (или у нас можно уже доли копейки платить? а то бы я с удовольствием посмотрел на бесконечную последовательность посредников.
Смысл это здесь постить если нету ответов. Мне нужен тест с ответами.Смысл постить ответы, если ты не разбираешься в предметной области? Вопросы я запостил исключительно потому, что сначала думал, что ты программист, который затрудняется с набором вопросов для собеседования.
Вот первый вопрос мы разобрали. Придёт к тебе программист и на первый (подробно расписанный ) вопрос скажет следующее: «Компилируемый. Компилируется он в опкод, в нативный код скомпилировать нельзя, но можно сохранить сгенерированный опкод при помощи различных кэшеров — <список>». Как ты будешь оценивать, правильно он ответил или нет? На ответ (особенно с учётом моего дополнения к этому ответу) это, мягко говоря, не слишком похоже.
И кстати на бóльшую часть вопросов тебе ответить смогут только люди, которые к тебе никогда не придут. А если тебе нужна какая-нибудь опердень типа "написать мегамодуль для друпала", то подходящий кандидат в лучшем случае ответит на один, может два вопроса.
http://php.feedme.ru/ , но он сейчас не работает и весьма mysql-ориентирован.
Был тест от badoo: (видимо это так, т.к. не можешь составить опросник)
то проверить качественно ли сделана работа и
правильно ли работник выставляет сроки, ты не сможешь.
Как при этом ты собираешься управлять проектом?
Нужно найти разработчика, поговорить с ним лично, убедиться, что он шарит (по выполненным работам, например выставить цену повыше рынка, чтобы было сделано хорошо.
но начнет потом сроки загибать неадекватные - менеджер ведь проверить не сможет.
И кстати на бóльшую часть вопросов тебе ответить смогут только люди, которые к тебе никогда не придут.На большую часть вопросов могут ответить люди, которые будут опознаны как фанаты PHP. К реальному опыту разработок эти вопросы имеют посредственное отношение. Над человеком, который знает ответы на все эти вопросы обязательно должен стоять архитектор приложения и еще несколько менеджеров, которые будут направлять и указывать знатоку, куда его знания применять.
Я бы довольствовался тем, что попросил бы описать последний проект и с какими трудностями при его реализации пришлось столкнуться разработчику. А уже по ответам на его вопросы можно было бы судить, к какому звену он относится. Если техническими проблемами будет сыпать или похвастается удачной реализацией нового класса или метода, то скорее всего кодер, если будет про красивенькие дизайны рассказывать, то верстальщик или дизайнер, технических знаний которых хватит только на нарезку макета под движок WP, а если в финансовую часть углубиться, то "коня потеряешь" (кто дочитал простыню - молодец).
Вобщем ответы будут понятны и без специальных знаний, а если какой ответ непонятен - всегда можно будет попросить дать более развернутый вариант, заодно сам узнаешь что новое, да и глубину знаний кандидата поймешь.
у меня основные трудности обычно - предугадать все возможные, нормальному уму непостижимые действия, которые пользователь может совершить с тем, что я напишу. Меня куда?
подвид: кодер-тестировщик
точнее как... мои мне давали некое задание, я его реализовывал, а потом еще раз пять по столько времени с высоты опыта работы с ними придумывал, что они меня попросят поменять/добавить через неделю, и реализовывал сразу и это. Ну и да, наибольшая защита от дурака.
еще конечно есть замашки архитектора, но я подозреваю, что ты пришел уже на готовую архитектуру и сначала, как обычно, долго ругался, а потом чему-то и сам у нее научился
Оставить комментарий
culturolog
Желательно устный. Т.е. чтобы спросить у человека несколько вопросов и тут же узнать результат его знаний ПХП. Подскажите, плз!