Статьи

Подкаст SitePoint № 129: Вывод PHP на новый уровень с Лорной Митчелл

Эпизод 129 подкаста SitePoint теперь доступен!

Скачать этот эпизод

Вы можете скачать этот эпизод в виде отдельного файла MP3. Вот ссылка:

  • Подкаст SitePoint № 129: Вывод PHP на новый уровень с Лорной Митчелл (MP3, 32:00, 30,7 МБ)

Резюме Эпизода

Луи и Лорна рассказывают об этой новой книге и о том, что внутри нее, о структурировании проектов с помощью PHP и о том, как PHP действительно вырос как язык за эти годы.

Просмотрите полный список ссылок, на которые ссылается шоу, по адресу http://delicious.com/sitepointpodcast/129 .

Стенограмма интервью

Луи: Здравствуйте и добро пожаловать в еще один эпизод подкаста SitePoint. Со мной сегодня на шоу у нас есть автор предстоящего заголовка из SitePoint, который представляет собой более продвинутую книгу по PHP, Lorna Mitchell, hi Lorna.

Лорна: Доброе утро.

Луи: Добрый день, в зависимости от того, на какой стороне мира ты. Как дела?

Лорна: Да, я в порядке. Здесь время завтрака, и у меня целая неделя полна интересных вещей, так что приятно поговорить с вами.

Луи: Отлично. Я немного болен, поэтому постоянные слушатели заметят небольшое изменение в моем голосе, но я пытаюсь удержать его вместе. Итак, вы участвовали в проекте SitePoint, который выйдет в ближайшие месяцы. Это книга по PHP, но она немного отличается от книг по PHP, которые мы делали в прошлом, поэтому обычные читатели SitePoint будут знакомы с книгой Кевина по PHP, которая Создайте свой собственный веб-сайт, управляемый базой данных, с PHP и MySQL, который является своего рода книгой для начинающих Если все, что вы когда-либо делали, — это интерфейсные вещи, HTML и CSS, как просто погрузиться и начать писать некоторый динамический код на стороне сервера, который взаимодействует с базой данных. Но эта книга поднимает это на другой уровень; Вы хотите немного поговорить об этом?

Лорна: О да, я бы очень хотела. Так что книга Кевина хороша, она у меня есть, и она мне очень понравилась, но я встречаю много разработчиков в своей работе в качестве консультанта и тренера, когда они достигли этого уровня, они пишут сайты на PHP, и они вроде как то, что дальше, например, как мы продвигаемся отсюда. Итак, мы собрали эту книгу, которая на самом деле охватывает множество разных глав, но она дает вам вид следующего уровня знаний, так что там есть глава ООП, в которой мы рассмотрим, как использовать базы данных, как повысить производительность, у нас есть целая глава о различных видах тестирования, о том, как работать с API, и это действительно хороший вид того, что вы хотите узнать дальше, вы можете выбрать главу из книги, мы рассмотрим аспекты дизайна, и я просто Я думаю, что это здорово, если вы читаете это от корки до корки, или вы окунетесь в это, для разработчиков PHP, которые любят ну, я могу сделать сайт, но как мне сделать сайт лучше (смех).

Луи: Или веб-сайт, на котором любой другой сможет прочитать код и поработать в будущем.

Лорна: Да, и с таким отношением к лучшим практикам, да, это просто полно хороших вещей, я действительно взволнован этим, это был такой хороший проект для работы.

Луис: Это интересно, потому что PHP как бы в том пространстве, где это первое, что любой, кто самоучка изучит после изучения HTML и CSS, существует множество неуклюжих практик, и PHP повзрослел. как язык с течением времени, так что есть тонна материала в сети, но не обязательно все это демонстрирует что-то вроде современного объектно-ориентированного программирования или автоматического тестирования или чего-то подобного. Я знаю, что для моего случая я писал ужасный PHP, пока я не выучил Ruby on Rails, а потом я как бы подождал. Так что теперь, когда я пишу PHP, у меня есть что-то, на чем я могу основываться, но для многих людей, которые только что изучили PHP, это может быть сложно, потому что материал не всегда действительно очевиден.

Лорна: Нет, это действительно не так. Это очень — я называю это расслабленным языком, как будто это очень терпимо.

Луи: (смеется) Да.

Лорна: Это терпимо ко всему, что вы хотите бросить в это, и это означает, что вы можете сохранить свои вредные привычки или вырастить некоторые хорошие, но это требует немного усилий. Но это зависит от вас, и если вам нужно что-то взломать вместе с PHP, и вы сможете решить свою проблему с этим, тогда просто фантастика, продолжайте.

Луи: Да, абсолютно. Итак, мы немного поговорили о книге, вернемся к этому чуть позже, но мне также интересно услышать, что у вас есть за пределами мира SitePoint в данный момент.

Лорна: Вау. Ну, это довольно длинный список (смех). Поскольку я консультант, я работаю с множеством разных людей, и в этом месяце я привожу несколько действительно интересных проектов по разработке, а также несколько учебных заданий, поэтому я начинаю преподавать PHP, а также делаю это, что приятно сочетание. Всего пару недель назад я перезапустил свой личный веб-сайт, который вроде бы не должен был быть таким уж большим, но я так долго вел блог, что у меня появилось около 700 сообщений для миграции, поэтому я многое узнал о WordPress ,

Луи: (смеется) Так вы изначально не были на WordPress и перешли на WordPress?

Лорна: Да. Так что я использую Serendipity в течение достаточно долгого времени, и я являюсь разработчиком PHP, но надо сказать, что мои навыки работы с интерфейсом, скажем так, отсутствуют; в стремлении быть дипломатичным это просто не то, в чем я хорош. Поэтому я на самом деле заплатил кому-то, чтобы он создал новый дизайн для моего сайта, и WordPress стал более удобным для создания скинов, поэтому я просто переместил его. Многие другие сайты, с которыми я работаю, — это WordPress, так что мне было очень удобно идти на это.

Луи: Да, я думаю, это довольно быстро становится безопасным дефолтом для такой работы.

Лорна: Да, прошло около трех лет с тех пор, как я ранее мигрировал, и в то время это был не такой четкий выбор. Мне очень понравилась Serendipity как платформа, но она развивается не так быстро, потому что за ней нет такой большой команды разработчиков и разработчиков. Итак, да, я сделал это, и в настоящее время я работаю над этим — я организую конференцию, которая является локальной для данного сообщества, которая организована сообществом, так что это моя локальная группа пользователей PHP Northwest в Манчестере на севере Англии, мы Вы работаете над этой конференцией, ровно через месяц.

Луи: Хорошо, так поймал тебя в гуще событий.

Лорна: Ну да, очень. Мы уже четвертый год проводим конференцию, в этом году у нас так много интересного, я бегу по разным направлениям; Я не могу дождаться начала мероприятия, потому что я так взволнован.

Луи: Круто. Так что, если кто-нибудь в Англии, есть еще места для этого?

Лорна: О да, конечно. Вы пропустили наши ранние цены, но это все же дешевле, чем на любой другой конференции, которую я знаю в Европе, так что conference.phpnw.org.uk .

Луи: Круто, абсолютно. Любой, кто заинтересован в освоении PHP, обязательно должен это проверить.

Лорна: Да, мы хотели бы видеть тебя там, это хорошая публика.

Луи: Отлично. Итак, я заметил, что на вашем сайте вы также участвовали в проекте с открытым исходным кодом.

Лорна: О да, хорошо, да. Так что я — это мой проект, я возглавляю проект Joind.in. Итак, Joind.in , потому что это круто в Web 2, это Joind без e, Joind.in — это сайт с отзывами о событиях, и это то, что как докладчик конференции, а теперь и как организатор, мне очень нравится, потому что это это сайт, который позволяет вам давать отзывы о выступлениях, которые вы видели на мероприятиях, и люди просто дают отзывы, когда они идут в течение дня, вы знаете, что вы можете оценить его из 5, а затем есть поле для Ваши комментарии. Итак, докладчики и все остальные участники конференции и организаторы действительно хорошо рассказывают о том, что люди думают об этом выступлении, как, знаете ли, люди не подходят к вам и не говорят, как прошел ваш разговор. иди, они ищут это.

Луи: Да.

Лорна: И с точки зрения наличия действительно открытой петли обратной связи об отдельном событии, а также о каждой беседе, это невероятно. А для ораторов, которые, вы знаете, действительно регулярно выступают в местном районе, если эти события использовали Joind.in, и они подчиняются одной из моих конференций, я не видел их выступлений, я не знаю их из Адам, но я могу взглянуть на Joind.in, посмотреть, что подумали другие люди, посмотреть, о каких темах они говорят, что у них есть опыт, и это почти часть вашего выступления. И мне просто нравится, у нас есть расписание на сайте, поэтому, когда вы на мероприятии, у нас есть приложения для iPhone и Android, вы можете увидеть, что будет дальше, как идут отзывы, прокомментировать свой телефон, а также использовать сайт, так что это очень весело.

Луи: Очень круто. И это все с открытым исходным кодом.

Лорна: Это все с открытым исходным кодом, мы на GitHub, и мы любим новых участников. Иногда в проекты с открытым исходным кодом может быть довольно сложно попасть, но мы любим новых участников, если вы новичок в Git или новичок в CodeIgniter, или о чем бы вы ни хотели узнать, или о чем вы хотите узнать. в наш канал IRC и бесплатную загрузку, и мы всегда поможем вам.

Луи: Точно. Так вы сказали в CodeIgniter.

Лорна: Да , он построен на CodeIgniter, и это проект, который уже давно существует, поэтому мы еще не на CodeIgniter2, хотя есть движение, которое в основном затягивает меня через этот процесс, потому что я мало знаю о CodeIgniter, Я унаследовал этот проект. Но это действительно хороший вид стандартной установки MVC, нам кажется, что наш сервер сборки общедоступен, так что вы можете видеть, как все тесты выполнялись и когда мы выпускали, и что происходили сборки, и тому подобное, это действительно, действительно открыто ; если вы не знакомы с запущенным процессом разработки, вы можете видеть все, и все это открыто, мне это нравится.

Луис: Это действительно интересно, и это то, что, как я могу сказать, есть много проектов с открытым исходным кодом, но многие из них с точки зрения Интернета являются либо инструментами для разработки веб-сайтов, например, множеством фреймворков. очевидно, с открытым исходным кодом, и тому подобное, но с точки зрения реального полнофункционального веб-приложения с полностью открытым исходным кодом, и там, где весь процесс разработки прозрачен, я не могу придумать слишком много других.

Лорна: Довольно необычно иметь проект с открытым исходным кодом, например, определенный хостинг домен, я думаю, что большинство из них, да, идея в том, что вы скачиваете их, когда у вас есть собственный. Joind.in вырос из сообщества, он был изначально создан кем-то в сообществе, используется всеми событиями сообщества PHP, а теперь — гораздо более широкий список событий, и его можно совершенно бесплатно использовать. Поэтому люди приходят ко мне и говорят: «О, я бы хотел, чтобы это было или делалось, или вы знаете, что это не работает», и я просто говорю, что мы на GitHub. И более половины времени я собирал для запросов именно на эту функцию.

Луи: Это фантастика. Приятно видеть подобные вещи, я бы хотел видеть больше подобных вещей, когда люди делают свои веб-приложения; если вы создаете бесплатное веб-приложение, и вы делаете это таким образом, чтобы люди могли внести свой вклад и действительно помогли получить нужные функции, это очень весело, особенно если это то, что вы Вы делаете это бесплатно, у вас не всегда есть время, чтобы заняться этим самостоятельно, или если вы небольшая команда людей, так что возможность привлечь более широкое сообщество может быть огромным стимулом, я думаю.

Лорна: Да, ну, и разные люди, которые проводят разные виды событий и происходят из разных слоев общества, вы знаете, у каждого свой взгляд, поэтому все они приносят что-то новое, и проекту уже три года, и да, он используется всеми видами людей, и это только растет все время.

Луи: Это круто. Да, так что это одна из вещей, которые мне показались интересными, и о которых я хотел поговорить с вами, это идея о том, что для многих людей, изучающих PHP, когда вы придете к нему, вы узнаете, как создать свой собственный маленький проект, который во многих случаях это просто тысячи строк процедурного кода, но даже тогда, когда это не так, даже если вы изучили объектно-ориентированное программирование и шаблоны проектирования, на самом деле это только половина пути к тому, что вам нужно, если Вы хотите быть профессиональным программистом, верно, есть все эти другие вещи о методологии, и это связано с тестированием и контролем версий, а также со всеми этими различными аспектами, с которыми могут столкнуться новички.

Лорна: Я так думаю. Я думаю, что действительно трудно научиться некоторым из этих вещей, если вы не работаете в команде, которая делает это. Так что, если вам действительно повезло, и вас завербовали где-то, кто использует все эти процессы, вы видите их, вы знаете, как они вписываются в общую картину, и если вы заинтересованы, вы знаете, что можете приступить к работе с некоторыми из них. Для «нормального» человека, если вы можете себе представить, что мои воздушные кавычки не очень хороши (смех), для нормального человека, которого вы знаете, довольно часто, мы работаем в командах, где мы просто делаем все возможное, и эта идея, что у вас будет 80% тестовое покрытие, автоматическое развертывание и все остальное, что кажется просто недостижимым. Но это совсем не так, я думаю, что проекты с открытым исходным кодом — действительно хороший способ получить опыт, например, с Git; большинство компаний все еще используют Subversion, но если вы заинтересованы в Git, вы знаете, я знаю, что я делаю техническую поддержку для пользователей Git, людей, которые могут программировать на PHP, но приходят в Git впервые. Когда я работаю с Joind.in, люди действительно интересуются тем, как они могут запустить процесс сборки, а иногда и изменить его. Недавно я внес свой вклад, чтобы улучшить наш стандарт кодирования и сделать его немного более полезным для проекта, и такие вещи, которые, как вы знаете, могут быть трудными для оправдания на работе, люди не хотят давать вам время делать Это. Но открытый исходный код дает вам возможность выучить эти навыки и следовать тому, что вас интересует, и если вы приобретете какой-то замечательный опыт и будете использовать его либо в той работе, которая у вас есть сейчас, либо в следующей.

Луи: Да, я думаю, это действительно важно. Для многих людей, которые самоучки, и я думаю, что это больше относится к PHP, чем к любому другому языку программирования, заключается в том, что когда вы можете изучать язык самостоятельно и знать язык, но когда вы идете для собеседования на работу это примерно десять процентов от того, что вы будете спрашивать, верно, есть все эти другие вещи о процессе и работе с командой, и демонстрация опыта с открытым исходным кодом является большой частью этого. Я взял интервью у Тома Престона-Вернера из GitHub на подкасте несколько месяцев назад и рассказал о том, как он видит свою роль в предоставлении таким образом программистам возможности рассказать о своих навыках миру.

Лорна: Да, я думаю, что это абсолютно верно. Я имею в виду, что я не являюсь разработчиком PHP по образованию, у меня есть степень по электронному инжинирингу, я раньше был другим клиентом разработчиком, а затем я получил работу. Я занимался PHP как хобби, потому что, как вы говорите, это самый доступный способ взаимодействия, чтобы быть в Интернете, и я пришел в PHP, и у меня была работа в большой компании, и я приобрел важные навыки, такие как управления источником.

Луи: Использование Mercurial и CVS во время курса.

Лорна: А потом я пошла в небольшую компанию в качестве старшего разработчика, и чтобы стать старшим разработчиком в небольшой компании, нужно также починить принтер и сделать sys. админ (смех), отключая телефоны; и только потому, что я делал что-то с открытым исходным кодом и у меня был собственный блог, и это единственный способ, которым я продержался на этой работе достаточно долго, чтобы понять, как это сделать.

Луи: Да.

Лорна: И просто вы знаете, когда вы работаете с PHP, если вы делаете это в повседневной работе, часто вся инфраструктура для вас готова, вам не нужно настраивать свой собственный стек. Когда вы работаете с открытым исходным кодом, вы должны настроить свой собственный стек, и это может показаться немного хлопотным, но на самом деле вы так много учитесь, когда делаете это.

Луи: Да. Хотя я должен сказать, что иногда хлопоты становятся непреодолимыми, когда вы работаете над своим собственным материалом, но работа над проектами с открытым исходным кодом может быть действительно фантастическим способом изучения материала. Я хотел немного поговорить об фреймворках, вы упомянули, что этот проект построен в CodeIgniter, и с этим вы не очень знакомы, есть ли у вас фреймворк PHP, с которым вам нравится работать, или вы один из тех людей, которые каждый ли это сам или что?

Лорна: О, это действительно хороший вопрос. Я консультант, поэтому мой любимый PHP-фреймворк — это то, что использует мой клиент.

Луи: (смеется)

Лорна: И что в этом хорошего, так это то, что я сейчас вижу эти вещи, и мне становится легче находить дорогу в незнакомых рамках; это ощущение «потерянных в новых рамках» ужасно, почти как падение. И я не против работать со многими новыми инструментами, я уверен, что это означает, что я постоянно ищу вещи и спрашиваю людей; большинство фреймворков имеют отличный набор документации, IRC-канал ответит на ваши вопросы, сначала они будут насмехаться над вами, но это нормально (смех) и так далее, поэтому я не против. Многое из того, над чем я работаю, это очень маленькие и производительные приложения, поэтому я специалист по API, который, как правило, очень маленький, не очень много классов, но под большой нагрузкой.

Луи: Точно.

Лорна: Так что для меня не так уж необычно создавать те, у кого нет фреймворка, но я действительно стараюсь не изобретать колесо, даже если я создаю что-то вроде не фреймворков MVC, я буду использовать вспомогательные библиотеки из одного из фреймворки из компонента z2, что-то из PEAR, вы знаете, я действительно стараюсь не изобретать что-то новое, и есть множество мест, где вы можете выбирать и смешивать, и такую ​​вспомогательную функциональность, чтобы делать ваши вещи из календаря, ваши вещи PDF, что бы вы ни были работаем дальше.

Луи: Да, это одна вещь, которая фантастична в этом, ну, в случае с PHP это благословение и проклятие в том, что там есть все это, что бы вы ни хотели, есть функция, которая делает это; он, вероятно, имеет совершенно другой интерфейс, чем любая другая функция.

Лорна: Да, конечно, но интерфейс есть, и вы можете использовать его, и когда он слишком несоответствующий, а некоторые из — даже встроенных модулей имеют некоторые действительно неуклюжие интерфейсы, вы знаете, кто-то всегда писал лучшая обертка для него, и это может стать отличной отправной точкой, чтобы сделать его более совместимым с приложением, над которым вы работаете.

Луи: Точно. Вы, ребята, в конечном итоге вообще обсуждали фреймворки в книге или это то, от чего вы как-то уклонялись, потому что это такая большая тема, с которой нужно начинать изучать все фреймворки?

Лорна: Ну, в этом-то и дело, очень сложно говорить в общих чертах о фреймворках, все они решают более или менее одни и те же проблемы по-разному, и у каждого из них есть свой этос. Существуют отличные книги практически по всем фреймворкам, так что я думаю, что мы в значительной степени оставили это, говоря, что Frameworks — это отличный способ дать вам структуру в ваших приложениях, дать вам что-то вроде того, чтобы повесить это, потому что когда мы Когда вы создаете большое приложение, оно должно иметь некоторую структуру, это может быть довольно сложно спроектировать; какие рамки вы выбираете, это действительно не имеет значения. Я выбрал способ, которым я смотрю на фреймворки, где документация кажется всеобъемлющей, люди разумные, я думаю, что я мог бы получить помощь, если застряну, и, кроме того, вы знаете, что это на самом деле не имеет значения; Вы можете построить большинство вещей с большинством фреймворков.

Луи: Да, абсолютно. И многое можно сказать о том, чтобы просто рассматривать код различных фреймворков как способ узнать, как хорошо структурированный код или как выглядит хорошо структурированный код.

Лорна: Да, и, конечно же, когда вы работаете с кем-то, не бойтесь углубиться и посмотреть, как она решает эту проблему, где магия и как она работает? Я просто думаю, что может быть действительно интересно посмотреть, как люди это построили, и иногда, когда вам нужно нарушить правила по какой-либо причине, вы собираетесь переопределить эту функциональность, так что это большая часть вашего образования, почти привнесение фреймворков в вашу базу кода и действительно войти; не кладите их в черный ящик и не разговаривайте с ними на расстоянии, например, принимайте участие и узнавайте о них.

Луи: Да, абсолютно. Это одна из вещей для тех, кто только учится делать хорошо структурированный PHP, скажем, они могут быть пугающими, это своего рода шаг к открытию этих исходных файлов фреймворка и их начальному прочтению, потому что много раз такие вещи выглядят очень -архитектированный, потому что он сделан настолько универсальным и удобным для использования во всех этих случаях, что абстрагируется от пары уровней, в то время как вы привыкли читать функции в книгах, обучающих вас PHP, или в учебниках, или в вашем собственном коде, что одна функция, и она делает что-то очень ясное, когда вы читаете код фреймворка, это может быть — это выглядит гораздо более абстрактно, но из такой структуры можно многому научиться, и, как вы сказали, когда вы приступаете к созданию любого приложения, немного больше, это бесценно.

Лорна: Да, полностью согласна.

Луи: Отлично. Возвращаясь к книге, вы работали над ней с несколькими другими авторами, верно?

Лорна: Да, у меня было два соавтора, и это было действительно забавно, потому что я веду переговоры с SitePoint, и они говорят: «О, мы бы хотели, чтобы вы поработали над нашей книгой, найдите себе соавторов, «Итак, я, о, хорошо, кто-нибудь, кого я знаю? О нет, я так не думаю; два парня, одного зовут Мэтт Терланд, другого — Дэвид Шафик. Ну, оба они, конечно, выступают на PHP-схеме, хотя они живут в США, а я в Европе, они мои друзья, я вижу их, когда я там на конференциях, Дейв на самом деле британец. так что он очень редко здесь, чтобы увидеть своих людей, так что это было большим сюрпризом и очень позитивным моментом, что они оба люди, которых я уже знал, и он просто выдвинул те аргументы IRC о том, кто должен писать о том, какие То, что темы разбивались между главами, просто сделало все проще, потому что мы уже приятели, уже проделали процесс обработки имен с этими парнями, и они оба мои друзья. Итак, они оба чудесно хорошо подготовлены, поэтому у них обоих есть предыдущие книги, которые они написали и оказали мне большую поддержку, это моя первая книга.

Луи: Хорошо, поздравляю.

Лорна: Спасибо.

Луи: Вы все сделали; это сейчас ясно?

Лорна: Это все еще в окончательном редактировании языка, поэтому нам возвращаются несколько запросов, но мне не нужно больше ничего писать, они вроде как распутывают последние биты, заставляя нас всех звучать как каждый другой, который является настоящим испытанием для трех разных людей, и если вы встретили нас, мы три действительно разные люди.

Луи: (смеется)

Лорна: Но это круто, потому что мы все привнесли в это что-то другое, у всех нас есть разные переживания, и то, как мы разделили главы, просто все написали о том, что их больше всего волновало, и это сработало очень хорошо.

Луи: Это круто. Над какими битами ты работал в первую очередь?

Лорна: Ну, конечно, я думаю, что у меня есть лучшие главы (смех).

Луи: И если все думают, что мы победили.

Лорна: (смеется) Да, я думаю, парни сказали бы то же самое. Итак, у меня есть глава о базах данных, в которой можно поговорить об использовании PDO из PHP, немного о дизайне баз данных, просто приведу его из «это таблица, это еще одна таблица, у нас есть телефонный ключ», как добавить индексы в свой проект, как нормализовать ваши данные; на самом деле работает с PDO. У нас есть замечательная библиотека, которая говорит о базах данных в PHP, она объектно-ориентированная, и я думаю, что это иногда отталкивает людей, поэтому я был очень рад написать эту главу, в частности, потому что, если у вас есть хорошая структура данных, вы можете решить большую часть проблемы, есть также несколько хороших моментов о нормализации ваших данных в главе о производительности Дэйви, о которой идет речь.

Луи: Точно. Так что для тех, кто не знаком, скажем, в аудитории, что мы подразумеваем под нормализацией и денормализацией, может быть, вы можете просто углубиться в это на секунду.

Лорна: О да.

Луи: Версия с нотами утеса.

Лорна: Да. Таким образом, на самом деле, если у вас есть какие-либо повторяющиеся данные в таблицах, разделенные запятыми значения в столбце, это ненормализованные данные, как мы можем улучшить их путем рефакторинга в другой столбец, но иногда это трудно определить шаблоны, в которых у вас должна быть другая таблица или она вам не нужна; если вы разбиваете вещи на части, вы должны писать объединения, и это может действительно стать немного сложным, особенно когда вы только учитесь. Итак, эту идею нормализации данных мы показали вам, когда вам нужно разобраться, как определить, нуждаются ли ваши данные в дальнейшей нормализации. И затем мы также показываем, как делать различные объединения и как добавлять индексы, чтобы сделать эти объединения намного эффективнее, так что это походит на настоящий общий элемент дизайна базы данных. В примерах используется MySQL, но эти теории, эти концепции применимы ко всем видам различных баз данных, поэтому я надеюсь, что они будут полезны для разных людей.

Луи: Да, верно. Я думаю, что, вероятно, довольно безопасная ставка на MySQL, особенно когда вы пишете на PHP.

Лорна: Да, но я все чаще сталкиваюсь с моими корпоративными клиентами, которые не используют MySQL. Вы знаете, что MySQL не имеет продавца, который приходит и выводит людей на обед.

Луи: (смеется)

Лорна: Так что иногда я нахожу разработчиков PHP, как правило, на тяжелом бэкэнде Unix или Linux или, может быть, они используют Oracle, и много-много IAS и SQL-серверов, так что я действительно — это хорошо — хорошо, что глава по базам данных сосредоточена на PDO, потому что вы можете использовать PDO против всех этих бэкэндов и многое другое. Так что эта глава о базах данных удивительно переносима на разные технологии, и я думаю, что это отражает то, как PHP сейчас проникает в разные отрасли.

Луи: Да, это интересно. Итак, вы говорите, что у вас есть клиенты, использующие PHP в стеке IAS и SQL-сервера.

Лорна: Да, конечно. И кое-что, с чем я сталкиваюсь, я бы сказал все чаще, вы знаете, и у меня вроде было несколько из них пару лет назад, и теперь я бы сказал, что примерно 25% людей, с которыми я работаю, имеют что-то вроде нестандартного стека LAMP в любом направлении, и этот IAS SQL-сервер, во-первых, довольно распространенный, а во-вторых, это абсолютно приемлемый способ запуска PHP; PHP работает отлично в Windows сейчас. Так что, да, я не знаю много об этом, но это то, что я вижу.

Луис: Так что интересно видеть, что PHP не только становится языком, но и проникает в другие среды, например, в Windows, в первые дни PHP никогда не видел PHP на Windows, но сейчас это обычное явление.

Лорна: Да, конечно. И я думаю, что хорошо, PHP вездесущ, это то, что на нем работает 60% Интернета, это круто, и мне нравится, что он обходит все вокруг. И мне нравится, что в PHP у нас есть такие вещи, как PDO, в сообществе есть общее признание того, что запускать PHP на Windows вполне приемлемо, и это позор, потому что вы знаете, что мне очень нравилось смеяться над людьми, делающими это (смех), но Теперь я не могу, нет причин для этого. Так что, да, глава по базам данных была одной из моих любимых, они все были моими любимыми; Я не знаю, кого я пытаюсь убедить здесь.

Луи: (смеется)

Лорна: Я также писал о том, как объектная ориентация пытается представить, что функциональным программистам, многие люди заходят в PHP, и, возможно, они пришли из других языков, но такое же число происходит из HTML, а CSS или JavaScript входят в PHP, и они посчитайте, что каждый может в это разобраться, вы либо понимаете ООП, либо не понимаете, и это не зависит от того, что вы уже знаете, это просто что-то от вас, имеет ли смысл подобные вещи, так что я написал главу ООП, своего рода введение, но потом также показывая, что вы можете делать с этим, и действительно рассматривая такие вещи, как интерфейсы и магические методы, проектируя наследование и принимая решения об этих модификаторах публичного частного защищенного доступа, и просто попытайтесь дать некоторые реальные прагматические советы таким образом, чтобы вы, вы знаю, доступный. Поскольку большинство разработчиков PHP, как вы говорите, не являются учеными, мы все решаем проблемы, мы все пытаемся выполнить свою работу, и это очень тон книги. Итак, у меня есть вся эта глава ООП, и у нас также есть глава, посвященная шаблонам проектирования, поэтому многие сложности, которые вы видите в инфраструктурах, возвращаются к тому, что они на самом деле выражают общие паттерны проектирования, поэтому мы добавили главу об этих к книге, так что вы можете как бы отождествить себя с тем, что происходит, и использовать их в своих приложениях.

Луи: Звучит очень весело, я с нетерпением жду чтения. Так поправьте меня, если я ошибаюсь, но книга предположительно выйдет где-то в конце октября?

Лорна: Да, так я понимаю это, все доставлено, сейчас они работают над изменениями, у нас все время от времени появляются комментарии «нет, я не знаю, что вы имели в виду» (смех) Так что, как только мы уберем все эти глюки, и это будет напечатано и все остальное, это будет буквально, да, конец октября. Так что я отчасти взволнован, чтобы иметь это в моих руках, и мы действительно с нетерпением ждем этого.

Луи: Да, это фантастика. Со времени, когда я потратил работу на публикацию в SitePoint, тот момент, когда коробка с книгами прибывает, является победителем, особенно если у вас была пара очень, очень поздних ночей, заканчивающих ее.

Лорна: Верно. Я действительно с нетерпением жду этого.

Луи: физический продукт. И это очень сильно отличается, особенно для нас, веб-разработчиков, которые тратят наше время на создание вещей, которые в сущности эфемерны, верно, вещей, которые не имеют для них конкретной природы, я думаю; в смысле организации конференции у вас будет некоторый подобный опыт чего-то объединяющегося.

Лорна: Да. Это как бы все прибывает, и конференция как будто мы стоим там, так как главный зал заполняется утром, и я соорганизовался с парнем по имени Джереми Коутс, и каждый год, когда мы это делали, у нас двоих стоял там, наблюдая за тем, как этот зал заполняется и говорит: «Что мы сделали, что мы сделали?» Это просто потрясающе, и я думаю, что это будет немного похоже: «Ух, это реально!»

Луи: Я желаю вам очень похожего опыта, когда вы получите печатные книги.

Лорна: Да.

Луи: Итак, прежде чем мы закроем этот подкаст, я просто хотел упомянуть, что у вас и у подкаста SitePoint есть что-то общее: сказать, что мы оба номинированы на премию .net Magazine, верно?

Лорна: Да, это стало для меня полным шоком. Теперь, это действительно — это намного круче, потому что я читаю .net mag и иногда пишу для них, и они живут в Великобритании, поэтому я вижу их на всех мероприятиях здесь и так далее, и они такие классные ребята. Но кто-то, а мне еще предстоит выяснить, кто выдвинул меня на должность «Разработчика года», так что да.

Луи: (смеется)

Лорна: В списке номинантов «Разработчик года» есть все эти известные люди и я, и есть все эти разные категории, множество интересных людей, и это здорово, потому что, если вы поедете туда, я думаю, что это thenetawards.com , тогда у вас есть взгляд, и все, на кого вы кликаете, делают что-то действительно интересное, так что да, голосование открыто до конца сентября, и, о-о, это все очень волнительно.

Луи: Это круто. Интересно видеть этот список кураторов того, что происходит в мире Интернета, там есть все классные вещи и их Редизайн года, и много действительно забавных вещей, если кто-то, кто вовлечен в веб-индустрию, даже имеет Посмотрите на это, очевидно, мы оба собираемся вставить плагин и попросить ваших голосов как для подкаста SitePoint в категории подкастов, так и для Lorna в категории «Разработчик года». Правильно ли я считаю, что «Разработчик года» — это новая категория, разве этого не было в предыдущие годы?

Лорна: Не было, поэтому они стали Разработчиком Года, Дизайнером Года, и у них также есть, и я думаю, что это здорово, у них также есть Молодой Разработчик Года и Молодой Дизайнер Года, на самом деле сосредотачивающийся на людях, которые в самом начале своей карьеры делают что-то замечательное, поэтому эти четыре категории являются новыми, у них есть и другие новые категории, которые, конечно же, меня избегают (смех). Но, да, нет, я думаю, что это довольно увлекательно, и, как я уже сказал, для меня было действительно интересно узнать обо всех этих людях, причем не обязательно в PHP, а в мире Интернета, делающих все эти интересные вещи. Поэтому, пока все слушатели находятся на странице, голосующей за нас, они также должны просмотреть и посмотреть, что происходит в нашей отрасли.

Луи: Да, абсолютно фантастические вещи. И если я правильно читаю список, я не уверен, насколько хорошо я могу определить имена, но в списке «Разработчик года» вы единственная женщина?

Лорна: Верно.

Луи: Ну, поздравляю с этим, и я желаю вам всего наилучшего.

Лорна: Спасибо.

Луи: Потому что здорово иметь больше разнообразия на бэкэнде и в разработке в целом.

Лорна: Да, я так думаю. Должен сказать, что большинство людей прокомментировали, что я единственный разработчик PHP и как они рады его видеть.

Луи: (смеется)

Лорна: Это похоже на меньшинство в нескольких направлениях.

Луи: (смеется) Это здорово, мне нравится эта шутка. Хорошо, хорошо, большое спасибо, Лорна; если люди хотят быть в курсе, где твой блог, ты в Твиттере?

Лорна: Да, оба, я Lornajane.net — мой сайт, и я @Lornajane в Твиттере, так что должно быть легко объединить их.

Луи: Фантастика. Хорошо, хорошо, большое спасибо и надеюсь снова поговорить с вами в ближайшее время.

Лорна: Большое спасибо, Лу!

Луи: И спасибо за прослушивание на этой неделе эпизода подкаста SitePoint. Мне бы очень хотелось услышать, что вы думаете о сегодняшнем шоу, так что если у вас есть какие-либо мысли или предложения, просто перейдите на sitepoint.com/podcast и вы можете оставить комментарий к сегодняшнему эпизоду, вы также можете загрузить любой из наших предыдущих эпизодов для загрузки. или подписаться, чтобы получить шоу автоматически. Вы можете подписаться на SitePoint в Twitter @sitepointdotcom , это SitePoint dotcom, и вы можете подписаться на меня в Twitter @rssaddict . Спасибо за внимание и пока.

Тема музыки Майка Меллы .

Спасибо за прослушивание! Не стесняйтесь сообщить нам, как у нас дела, или продолжить обсуждение, используя поле комментариев ниже.