Как стать автором
Обновить

Комментарии 31

Очень плачевно видеть на хабре записи, которые бы поместились в твит… Привели бы хоть пару примеров что-ли, что-зачем и для чего лежит в этом репозитории…
Да, надо бы добавить примеры, чуть позже добавлю.
Чем быстрее, тем лучше.
Добавил, еще раз прошу прощения, нужно было сразу с примерами. На будущее учту. И спасибо за обратную связь.)
Пора вводить сервис «Хабратвит». Тогда может и полезной активности чуток больше будет.
По-моему зря заминусили, идея вполне здравая, там бы отлично поместились новости о новых версиях чего-либо, заодно весь блог Vivaldi переехал-бы.
Мдаа. Откуда только берутся такие статьи? Последнее время что-то интересное бывает только в дайджесте, и все…
Если у Вас есть идеи какими задачами дополнить сборник — присылайте, буду благодарен.
а если мне не нравится объективно плохой музыкальный исполнитель, что мне ему отвечать на предложение — «есть песни получше — присылайте»?
Реально на собеседованиях php спрашивают такие «практические» задачи?
Да и не понимаю людей, которые выкладывают такие бессмысленные статьи.
Да, спрашивают.

Например http://hh.ru/employer/986766 — petrosoft или http://hh.ru/employer/594876 — Adoriasoft. В первой Вам предоставят онлайн блокнотик, где предложат решить ряд подобный задачек, во второй придется пройти онлайн тестирование, которое также содержит похожие задачки.
Отсортировать одномерный массив своими силами

Мы такие задачи в универе решали для паскаля…

Уже представляю набраную команду людей, которые всё делают своими силами, ибо не знают встроеных функций… Жуть…
на собеседовании работодатель должен удостовериться, что ты хотя бы можешь написать сортировку массива ) Так сказать проверка на вменяемость. Зачем ему давать тебе Т/З от важного клиента, если ты не знаешь обыкновенный алгоритм сортировки методом пузырька/Хоара(рекурсивная и не рекурсивная)/бинарная…

А сортировка массива и в паскале есть из коробки.
Ой всё. За моими плечами не одно собеседование на должность php разработчика. Ни на одном не спросили про сортировку.
Да, были вопросы про построение дерева, и прочие.

А сортировка массива и в паскале есть из коробки.


А я вот возьму, и неповерю вам наслово.
А зачем нужны какие-то сторонние плагины вроде firephp?
Неужели так сложно работать с консолью?
И зачем нужен этот один несчастный интерфейс?
И зачем нужен этот один несчастный интерфейс? — Из предыдущей версии статьи это было не ясно, но интерфейс не один. Сорри, добавил примеры и улучшил описание, перечитайте статью.

Неужели так сложно работать с консолью?
А зачем нужны какие-то сторонние плагины вроде firephp? — отвечу на оба вопроса. Это дело вкуса, используйте консоль, если Вам так удобно. Вас никто не принуждает использовать firephp. Однако, консоль браузера представляется мне более удобной альтернативой var_dump() или print_r() в консоли.

К тому же я использую firephp в связке с livereload и gulp. Попробуйте, Вы не пожалеете.

Тесты на знание метода сортировки пузырьком?
Поправил новичку один очень простой код (выложил на гисте).
Потом больше часа объяснял как нужно править. Почему-то эту задачку еще 2 технаря решали долго. Не знаю может стресс виноват.
Скорее всего стресс. Мозги лучше работают в спокойной обстановке и тишине, когда ничто не мешает концентрироваться на задаче. Когда мне, на собеседовании, предложили порешать задачки в блокнотике я оказался не готов к этому. Волнение и стресс сделали свое дело и я завалил собеседование.
Отсортировать массив лучше не своими силами, а силами самого PHP:
<?php

function arr_sort_funct($a, $b) {
  if ($a == $b) {
      return 0;
  }
  return ($a < $b) ? -1 : 1;
}

uasort($arr, 'arr_sort_funct');

?>
Так короче:
uasort($arr, function($a,$b) {
    if ($a == $b) return 0;
    return ($a < $b) ? -1 : 1;
});


Но дело не в этом.
Сборник содержит, только простые задачи, которые встречаются в рамках собеседования. По этой причине некоторые задачи содержат формулировки вроде: «Отсортировать одномерный массив своими силами» Да, в php есть много встроеных функций для работы с массивами, но тут важен контекст собеседования. Если Вам ставят задачу сформулированную именно так и вы на собеседовании, то вероятнее всего, такая задача преследует единственную цель, а именно оценить вашу алгоритмическую подготовку. Надеюсь, это понятно.
Можно было бы заодно ещё и проверить умение кандидатов пользоваться Composer, оформив это в виде пакета и потребовав подключать через нормальный автолоадер.

Однако, консоль браузера представляется мне более удобной альтернативой var_dump() или print_r() )

Более удобной, чем XDebug и phpdbg?
Да, если лень ставить XDebug и phpdbg чтобы посмотреть пару переменных.
phpdbg идёт из коробки. Однако здравствуйте: http://phpdbg.com/
а в версиях 5.3 и 5.4?
1) Они deprecated (http://php.net/eol.php)
2) Использовать дебаггер\вывод логов в консоль на продакшене? (локально можно любую версию влепить)
1) То, что они deprecated еще не значит, что их никто не использует.
2) Это не совсем применимо к реальности. Видите ли, версии php могут отличаться друг от друга и не обладать обратной совместимостью. Возьмем версии 5.3 и 5.4 http://php.net/manual/en/migration54.incompatible.php

Могу также привести пример из собственной практики:
Полтора года назад, меня пригласили поддерживать устоявшийся проект. Он был написан на версии 5.3, а у меня на тот момент, локально, стояла версия 5.5 Так вот, под 5.5 проект не запустился по причине обратной не совместимости версий php. Тут важно понимать, что «семеро одного не ждут» и то, что у вас проект не ставится под вашу версию php — это только ваша проблема и ничья больше. Я откатил версию до 5.3 и включился в работу.
Это не «только ваша проблема».
Это как минимум проблема:
* невозможности использовать новые удобные библиотеки (или обновить существующие)
* невозможности обновить php-интерпретатор или расширение, если там обнаружено какое-то некорректное поведение
А это увеличение времени разработки, баги и прочие «радости».

Я согласен с Вами, что семеро одного не ждут, и нет никакого смысла в авральном порядке править проект для работы на новых версиях.
Но опять же. Семеро одного не ждут сработает и в обратную сторону — не будет библиотек или никто не будет править в них ошибки для старых версий.
Полностью разделяю Вашу точку зрения и готов подписаться под каждым Вашим словом. Но что делать, если технический директор не желает обновлять версии, по каким то своим причнам или прочим иным.

Об этом можно долго рассуждать, но мир таков каков есть и то, что мы от него ждем, может идти вразрез с тем, что в итоге от него получаем.

Выше человек задал вопрос и я просто привел реальный пример в качестве иллюстрации — вот и все.
Но я еще раз повторюсь, Вас никто не принуждает. Если вам удобно работать с XDebug, ну и отлично — каждый работает так как ему удобнее.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории