Статья

Новости и Полезные статьи

Наши услуги


Oops, an error occurred! Code: 202011240024182541f487

Книга TYPO3 Extbase - интервью с автором

Logo

Майкл Шэмс является активным членом сообщества TYPO3 уже более десяти лет. В мае 2019 года он опубликовал третье издание книги TYPO3 Extbase. Майкл работал с Патриком Лобахером над предыдущими выпусками книги, но поскольку Патрик перешел к новым задачам, Майкл взял на себя полную ответственность в 2018 году и опубликовал полностью пересмотренное и обновленное издание в этом году. Луиза Фасбендер провела интервью с Майклом, чтобы узнать больше о книге и о том, как она была создана.

(Луиза) Привет, Майкл! Так приятно с вами познакомиться! Как у вас сегодня дела?

(Майкл) Привет Луиза. Спасибо, у меня все хорошо - вы знаете, сегодня пятница, и я с нетерпением жду спокойных выходных.

(Луиза) Прежде чем углубляться в тему сегодняшнего интервью: мы все знаем, что вы довольно активно участвовали в сообществе TYPO3 в течение достаточно долгого времени. Но для тех, кто вас не знает: не могли бы вы рассказать нам немного о себе и о том, как вы попали в TYPO3?

(Михаэль) Я учился в Германии и имею степень магистра компьютерных наук. В 2008 году я переехал в Австралию и с тех пор живу в Мельбурне. Первая версия TYPO3, с которой я работал, была версия 3.x, более 15 лет назад. Тем не менее, я не начал работать с TYPO3 «профессионально» до 2008 года, когда я присоединился к компании, в которой я до сих пор работаю. Я сторонник технологий с открытым исходным кодом, и помимо своей повседневной работы я пишу статьи для технических журналов, например «web & mobile developer».

(Луиза) Вы опубликовали несколько других книг, таких как TYPO3 CMS Certified Integrator Study Guide. Что заставляет вас тратить столько времени и энергии на TYPO3 и сообщество?

(Майкл) TYPO3 - отличная система, чрезвычайно мощная и гибкая. Тем не менее, вам нужны знания и опыт для управления приложением такой сложности. Команда документации TYPO3 делает фантастическую работу, но многие люди запрашивают ресурсы и учебные материалы помимо официальных руководств. Книга TCCI (сертифицированный интегратор TYPO3 CMS), и в частности книга TYPO3 Extbase, призвана восполнить этот пробел.

(Луиза) Третье издание книги TYPO3 Extbase - это первая версия, которую вы опубликовали без Патрика. Что это изменило для вас?

(Майкл) Мне очень понравилось работать с Патриком. Его опыт в более чем 150 семинарах, где он обучал разработчиков Extbase и Fluid, был очень ценным. Структура книги Extbase основана на его опыте, и это оказалось очень успешным в течение многих лет. Поэтому я не изменил этот аспект. Тем не менее, предыдущая редакция книги основана на TYPO3 v7 и должна была быть пересмотрена и обновлена. Эта рабочая нагрузка, а также исследования, тесты и т.д. Теперь были моей ответственностью - и я могу вам сказать, что это огромная работа (но в тоже время интересная).

(Луиза) Зачем нам вообще нужен Extbase? Каковы, на ваш взгляд, основные преимущества по сравнению с Pi-Base, например.

(Майкл) Extbase - это так называемая объектно-ориентированная среда, написанная на PHP. Фреймворки позволяют упростить процесс разработки, предоставляя базовую структуру, которая уменьшает количество повторяющегося кода. В результате расширения можно быстро создавать, они более стабильны и безопасны по сравнению с традиционными методами разработки программного обеспечения. Кроме того, Extbase следует парадигме «соглашение о конфигурации». Как только разработчик узнает соглашения, он / она автоматически узнает имена классов и методов, свойства, где найти файлы, каталоги и т.д. Следование соглашению делает расширение логичным и легким для понимания другими разработчиками.

(Луиза) Итак ... ты собираешься стать следующим евангелистом Extbase? ;-)

(Майкл) (Смеется!) Нет, не совсем, Луиза! Во-первых, в сообществе TYPO3 есть эксперты, которые знают внутренности Extbase намного лучше, чем я, и которые имеют гораздо больший опыт работы с ним. Во-вторых, хотя разработка расширений с помощью Extbase довольно крутая и простая, некоторые функции могут быть реализованы лучше.

(Луиза) Не могли бы вы подробнее остановиться на этом?

(Михаэль) Благодаря концепции доменного управления (DDD) и архитектуре модель-представление-контроллер (MVC) Extbase и Fluid являются отличными решениями для внешних модулей и внутренних модулей. Однако для некоторых простых или низкоуровневых задач, таких как ответы AJAX, накладные расходы Extbase могут быть чрезмерными. Промежуточное программное обеспечение PSR-15, предоставляемое ядром TYPO3, является хорошим примером.

(Луиза) Вы упомянули исследования и тестирование раньше. Сколько времени нужно, чтобы придумать весь новый контент, вычитать, опубликовать и т.д.?

(Майкл) Планирование «проекта» началось в середине 2018 года. Когда TYPO3 v9 LTS вышел в октябре 2018 года, я начал исследовать и тестировать новые методы. Прошло несколько месяцев, прежде чем я передал рукопись своему корректору. Инге Бейтман проделала фантастическую работу: она не только значительно улучшила качество контента, но и сделала обзор за невероятно короткое время.

На самом деле, все, к кому я обращался в последние несколько месяцев, давали ценные отзывы: основные разработчики, опытные разработчики Extbase, а также эксперты Fluid.

(Луиза) Какие изменения могут ожидать читатели? Какие новые аспекты и новые темы вы реализовали в первую очередь?

(Майкл) Предыдущее издание книги TYPO3 Extbase было основано на TYPO3 v7. В TYPO3 v8 и v9 многое изменилось, и самым важным аспектом для нового издания книги было убедиться, что все новые методы, методы, API приняты во внимание, и книга следует передовым методам для TYPO3 v9 LTS. Это включает в себя чистый код с PHP версии 7.2, а также, например, установку с PHP Composer. В третьем издании книги TYPO3 Extbase также используется TYPO3 Query Builder (Doctrine DBAL) и новые аннотации, используемые в v9.

Кроме того, читатель узнает, как разработать внутренний модуль, использующий AJAX и RequireJS. Это совершенно новая глава, а также глава об основах безопасности в расширениях TYPO3.

(Луиза) Ваша книга охватывает основы разработки расширений на основе Extbase и Fluid, а также более сложные темы: Кого бы вы назвали основной целевой группой книги?

(Майкл) Первые главы книги посвящены основам. Например, основы объектно-ориентированного программирования на PHP и что означает DDD. Далее следуют практические пояснения о том, как настроить экземпляр TYPO3 в качестве среды разработки с использованием Composer. Хотя эти темы содержат все детали, необходимые для начинающих, более продвинутые разработчики, вероятно, больше заинтересованы в последующих главах.

(Луиза) Итак, чем больше вы продвигаетесь, тем глубже вы погружаетесь в тему?

(Майкл) Это верно. Каждая глава основана на предыдущей главе. Книга демонстрирует все шаги, необходимые для разработки современного расширения TYPO3. Следуя учебным пособиям в книге, учащиеся завершают полнофункциональное расширение Extbase / Fluid. Они могут использовать то, что они изучают, для разработки своих собственных расширений.

(Луиза) Книга состоит из 19 всеобъемлющих глав. Вы когда-нибудь думали разбить содержание на две книги?

(Майкл) О да! Я должен был отступить несколько раз. Есть так много интересных аспектов, которые стоит упомянуть. Я должен был напомнить себе, чтобы не потерять фокус и сосредоточиться на TYPO3 Extbase.

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

(Луиза) Что это за другие аспекты и о чем вы собираетесь писать в будущем?

(Майкл) Ядро TYPO3 предлагает множество отличных API: API Mailer, Context API, аутентификацию пользователей, SEO и так далее. Большинство из них хорошо объяснено в официальной документации командой документации TYPO3 и основной командой, но практическая учебная книга обычно выходит за рамки набора ссылок и практических рекомендаций.

(Луиза) Состязается ли книга TYPO3 Extbase с официальной документацией TYPO3?

(Майкл) Определенно нет. Однако существующие ресурсы о Extbase, по крайней мере, не идеальны. Книга ведет читателя через процесс, шаг за шагом, глава за главой. Руководство не может и не должно быть настолько полным и подробным.

(Луиза) Какая ваша любимая глава в книге и почему?

(Майкл) Все главы довольно крутые! (смеется). Серьезно: мне нравится получать новые идеи очень практичным способом. Лично я хочу на самом деле сделать что-то лучше раньше, чем позже, вместо проработки сотен страниц теоретических основ. Как указывалось ранее, первые несколько глав книги посвящены основам. Чем больше вы продвигаетесь по книге, тем практичнее она становится. Это означает, что вы должны следовать каждому шагу, разрабатывая расширение, как описано в книге. Мне нравится, когда я действительно вижу, что что-то развивается, когда работают первые функции, и я понимаю, как и почему. Это то, что я пытался отразить в книге.

Моя любимая тема - глава об основах безопасности в расширениях TYPO3.

(Луиза) Безопасность, безусловно, очень важна. Можете ли вы рассказать нам, почему вы добавили эту главу и что она охватывает?

(Майкл) Безопасность всегда была горячей темой. Взломанные веб-сайты, похищенные конфиденциальные данные и утечка конфиденциальной информации оказывают огромное влияние и могут привести к значительным финансовым потерям и репутации. Если посмотреть на рекомендации по безопасности, опубликованные группой безопасности TYPO3 за последние несколько лет, большинство уязвимостей возникли не в ядре TYPO3, а в различных расширениях TYPO3. В отдельной главе «Основы безопасности» объясняется, как процессы безопасности работают во вселенной TYPO3 и как выглядят типичные уязвимости внедрения SQL и межсайтового скриптинга (XSS) в расширении. Если разработчики расширений понимают фон, они знают, как избежать этих уязвимостей.

(Луиза) Можем ли мы ожидать четвертого издания книги в будущем?

(Майкл) Это хороший вопрос, но пока рано об этом думать, если честно. TYPO3 v9 LTS будет поддерживаться до октября 2021 года, поэтому содержание книги Extbase в ее нынешнем виде остается действительным, по крайней мере, еще два года. TYPO3 v10 LTS запланирован на апрель 2020 года, а первый спринт-релиз (версия 10.0) был опубликован всего несколько недель назад. В этом выпуске спринта уже есть несколько интересных новых функций и изменений в API, которые могут появиться в книге Extbase.

Посмотрим, что произойдет в ближайшие 6–8 месяцев, прежде чем я сделаю какие-либо обещания.

(Луиза) Последние два вопроса: где можно купить книгу TYPO3 Extbase и на каких языках она доступна?

(Майкл) Книга TYPO3 Extbase доступна в виде eBook at Leanpub (PDF, ePub, MOBI) и как печатная копия на Амазоне. На данный момент книга доступна только на английском языке, но в настоящее время перевод на немецкий язык находится в стадии разработки. Однако дата публикации немецкой версии еще не запланирована.

(Луиза) Большое спасибо, Майкл. Не только за то, что нашли время для этого интервью, но и за понимание того, как была создана книга и что она охватывает. Я уверена, что это поможет многим людям начать разработку расширений и улучшить свои навыки программирования. Я желаю вам всяческих успехов с книгой.

(Майкл) Было приятно пообщаться с тобой, Луиза. Спасибо за возможность представить книгу.

Чтобы узнать больше о TYPO3 Extbase Book, перейдите на https://www.extbase-book.org

Спасибо члену Content Team Хизер Макнами (Партнеры по открытой стратегии), которая вычитала эту статью.

ЛогоНазваниеТипДемоСсылки
image
image