- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF142:CakePHP
Материал из Linuxformat.
- Драгоценный клад, полный сокровищ CakePHP
CakePHP |
---|
CakePHP: Важные ресурсы
- Грэм Уэлдон рассказывает о несметном количестве полезных ресурсов в своей последней (нет, правда последней) статье по CakePHP.
Были у нас веселые времена – были и грустные; были плодотворные – и проблемные тоже были. Таков путь разработчика, понемногу осознающего преимущества и экономию времени при работе в среде. Если вы изучили все четыре урока серии, то набрали солидный опыт разработки на CakePHP, и можете взять рассмотренные нами проекты и расширить их в соответствии с вашими нуждами или применить представленные технологии в разработке собственного проекта с нуля.
В обоих случаях, с CakePHP вы сделаете это быстрее, чем без него; и вдобавок станете привлекательнее для противоположного пола. Опровержение: честно-то говоря, привлекательнее вы не станете, зато обретете новое ощущение уверенности и успеха, потому что сможете быстро завершать проекты, на которые иначе ушли бы недели.
При работе над проектами внутри и около CakePHP у вас, несомненно, будут возникать вопросы. Содержание – прежде всего, и команда разработчиков ядра CakePHP делает все возможное, чтобы предоставить набор ресурсов, которые дополняли бы сам код ядра. Держите эту статью под рукой – быть может, когда-нибудь она вас спасет!
Домашняя страница – http://cakephp.org – прекрасное место для старта, потому что на ней собраны в одном месте ссылки на все официальные ресурсы.
«Поваренная книга»
В каждой религии есть своя священная Книга. Она хранит все верования, центральную философию и массу другой информации, передаваемой из поколения в поколение и составляющей эту религию. Возвращаясь от религии к Linux: CakePHP работает подобным же образом. «Поваренная книга» CakePHP [Cookbook], которую вы найдете на сайте http://book.cakephp.org – лучший источник информации о ядре CakePHP, а также место, где можно найти примеры и пояснения по использованию различных частей данной среды. В ней полно прекрасных ингредиентов CakePHP и рецептов, и огромное количество кулинарных метафор. Книга предоставляет не только справочную информацию, но и полезные примеры кода, которые помогут вам освоить различные части ядра.
Руководство разбито на разделы по версиям. Если вы работаете со старой программой на CakePHP 1.1, можете прочесть только эту версию руководства, так как приведенная в ней информация актуальна для используемого вами релиза. То же касается CakePHP 1.2. А версия руководства по умолчанию для последнего релиза – 1.3.
Более того, руководство CakePHP доступно на различных языках. Языков свыше двадцати, и если вы не говорите на языке, который видите на экране, есть вероятность, что тот же текст есть на другом языке, более удобном для вас. При поиске информации по решению какой-либо проблемы об этом нужно помнить в первую очередь.
«Пекарня»
Введите имена сайтов, связанных с нашей «кухней». Bakery [Пекарня] – http://bakery.cakephp.org – место, где пользователи могут создавать статьи, описывать свой опыт, приводить примеры кода или делиться готовыми решениями с другими членами сообщества. Единственная цель «пекарни» – предоставить средства для совместной работы и обмена кодом и взаимодействия с другими разработчиками. Там есть статьи от ведущих разработчиков, выдающихся членов сообщества и даже от новых пользователей, которые делятся кодом, который показался им полезным. В «пекарне» огромное количество фрагментов кода для всех версий CakePHP, и при возникновении проблем там легко найти код от участников сообщества, способный их решить.
Например, если вы хотите интегрировать PayPal с CakePHP, сперва зайдите в «пекарню» – и найдете там вполне работоспособные компоненты, модули расширения и многое другое для интеграции с PayPal, от целой банды пользователей. То же касается интеграции с Twitter, логина в Facebook и прочих популярных функций, которые могут пригодиться вам для нового революционного web-приложения.
Обязательно добавьте статью сами, если создадите нечто новое, или обновите версию статьи, если она уже существует. Как я уже сказал, именно сообщество делает CakePHP такой превосходной средой разработки.
«Пекарня» может похвалиться и отличным автоматическим переводом, что гарантирует доступность содержимого широкому сообществу пользователей со всего мира.
API
Еще во времена, когда я изучал Java, я понял, что искать информацию в API часто быстрее, чем в поисковой системе. В API CakePHP, который можно найти по ссылке http://api.cakephp.org, легко ориентироваться, и перемещаться там можно разными способами. В общем случае, первое, что вы выберете – это классы [Classes]. Здесь представлен алфавитный список доступных классов. Кликнув по любому классу, можно получить исчерпывающую информацию о нем и его свойствах и методах.
Ныне опубликованы три версии API, для каждой из версий 1.1, 1.2 и текущей ветки 1.3.
Вопросы по CakePHP
«Вопросы по Cake PHP» (http://ask.cakephp.org) – это сайт вопросов и ответов, который поддерживается и модерируется пользователями и позволяет напрямую задать вопрос о возникшей у вас проблеме или поделиться идеей, мнение о которой вы хотите услышать. Когда вы сформулируете вопрос, он появится на сайте, а другие пользователи смогут на него ответить. Там вы получите действительно интересные и полезные комментарии и мнения. Они могут помочь вам быстро и легко провести отладку и выявить проблемы, которые в противном случае пришлось бы искать методом проб и ошибок. Вы также сможете сэкономить время на чте-нии документации, не относящейся к делу.
Получив ответы, вы сможете проголосовать за наиболее правильный и тем самым способствовать повышению авторитета его автора в сообществе.
Вопросы на этом сайте автоматически публикуются в Twitter, и чтобы следить за ними, добавьте в друзья @CakeQs. В качестве дополнения к описанным серьезным ресурсам время от времени мы проводим специальные мероприятия (подробнее о них чуть позже), на которых также записываем скринкасты и другие полезные видеоролики. Эти ролики выкладываются на недавно запущенном сайте CakePHP TV: http://tv.cakephp.org. Там вы найдете доклады с конференций, скринкасты от пользователей и интервью с членами сообществами и основными сотрудниками.
На этом сайте вы можете не только смотреть видеоролики, но и размещать свои, а также делиться идеями для новых материалов. Возможно, у вас есть прекрасная идея, которая принесет пользу и вам, и сообществу в целом. Просто разместите ее на сайте CakePHP TV, и ее увидят другие пользователи, подхватят, снимут скринкаст или видеоролик и загрузят на сайт.
Как и с другими рассмотренными ресурсами, главную роль здесь играет пользовательский контент. Если у вас есть интересный видеоролик или скринкаст, имеющий отношение к CakePHP, поделитесь им с сообществом и получите свои пять минут славы!
CakeFest: конференция CakePHP
Раз в году Cake Software Foundation проводит CakeFest – http://cakefest.org – потрясающую конференцию по CakePHP для членов сообщества. Чтобы мероприятие оставалось доступным для всего мирового сообщества, место его проведения каждый год меняется. И если вы хотите посетить очередной CakeFest, но для вас это слишком далеко, есть шансы, что в следующий раз он будет ближе.
CakeFest обычно длится четыре дня. Первые два отведены на профессиональные тренинги от ведущих разработчиков CakePHP. Это редкая возможность пообщаться с ними на личных встречах и тренингах и встретиться с основными докладчиками и ключевыми членами сообщества. Формирование сети технических контактов в сообществе CakePHP поможет вам получить и совет, и работу!
Как только информация о следующей конференции станет доступной, ее расписание появится на сайте «пекарни», и с появлением новой информации обновится и сайт.
Важное замечание о PHP
Новички в CakePHP, особенно те, что слабо знакомы с PHP в целом и решили наскоком освоить CakePHP, чтобы побыстрее решить свои задачи, часто забывают, что у проблем, которые они пытаются решить, может не быть решений или реализации в среде. Это может показаться глупым многим более опытным пользователям, но работая в среде, легко забыть, что на самом деле вы работаете с PHP, и вся его функциональность доступна вам в любое время.
Если вы ищете решение проблемы, и, на ваш взгляд, оно уже должно существовать, но в CakePHP его нет, скорее всего это каким-то образом уже реализовано в PHP. Для более подробной информации зайдите на http://php.net.
Блоги разработчиков
На этом ресурсы по CakePHP не заканчиваются. Разработчики CakePHP, а также пользователи данной среды часто пишут невероятно полезные статьи в своих персональных блогах. Эти статьи охватывают интересные варианты работы в среде, а также решения всех проблем, с которыми они сталкивались.
Марк Стори [Mark Story], один из ведущих разработчиков CakePHP, часто пишет занимательные статьи о текущих разработках в CakePHP на http://mark-story.com. В его блоге также имеется масса архивных статей, сохраняющих актуальность для CakePHP 1.2 и 1.3.
Так как я работаю в CakeDC (http://cakedc.com), то упомяну этот сайт из-за его содержимого. Сайт CakeDC поддерживают несколько ведущих разработчиков CakePHP, и на нем можно найти статьи об использовании различных модулей и о разработке ядра, а также об интересных подходах к таким проблемам, как перевод и маршрутизация. Посетите его.
Хотя http://www.pseudocoder.com давненько не обновлялся, он предоставляет самую обширную подборку интересных статей о CakePHP 1.3, и это прекрасный ресурс для поиска интересного и полезного контента от пользователей со всего мира.
Список далеко не полон – на перечисление всех прекрасных блогов со ссылками на ресурсы и информацию о CakePHP потребовалось бы слишком много места. Однако это хорошая подбор ка для начала.
Наконец, лучшим сервисом агрегации по CakePHP является PlanetCakePHP (http://planetcakephp.org). Сервис этот автоматический, и благодаря ему можно видеть огромное количество пользовательских статей в момент их появления. Подпишитесь на RSS – это самый простой способ получать актуальную информацию.
Код свободный!
Итак, нам есть что почитать… Но у нас, вероятно, есть и работа, и для решения нашей задачи нужен свободный код. Свободный код – лучший тип кода, и залежи его имеются в Сети. С чего начать поиск? Прекрасное место для старта – Github (http://github.com): там есть удобная история и списки пользователей и проектов. Вы также обнаружите, что значительная часть сообщества CakePHP размещает в нем свои открытые модули и приложения для CakePHP.
В Github стоит поглядеть официальные репозитории CakePHP, выходящие за рамки самого проекта. Ищите их на http://github.com/cakephp: они предоставляют источники информации для множества баз данных, средства генерации API, утилиты для отладки и многое другое.
Другой организованный и поддерживаемый сообществом ресурс – CakePackages (http://cakepackages.com), который индексирует сайты типа Github в поисках кода и модулей расширения CakePHP и предоставляет поисковый интерфейс, через который можно найти искомое. Он позволяет искать по типу кода – компонент, характеристика и т. д.; но самая удобная возможность – поиск по свободному коду. Попробуйте ее в своем следующем проекте – у вас в распоряжении миллионы строк добротного готового кода.
При поиске по свободному коду опять же не забудьте заглянуть в «пекарню» CakePHP: там есть бездна статей от разработчиков, и это настоящая золотая жила с примерами кода, готовыми модулями и приложениями.
Где еще просить о помощи
Сообщество довольно активно пользуется IRC, и независимо от вашего часового пояса вы обязательно найдете неспящим хотя бы одного из главных разработчиков, консультирующего и помогающего сообществу. А если не найдете, всегда есть множество квалифицированных и опытных членов сообщества, которые смогут дать вам необходимые советы.
Откройте через web-интерфейс IRC сайт http://webchat.freenode.net и зайдите в канал #cakephp. Если вам хорошо знаком IRC, откройте в своем любимом IRC-клиенте irc://irc.freenode.net/cakephp.
Последний ресурс, о котором я расскажу – группа Google. Эта группа была создана в самом начале проекта, и с годами в ней накопилось множество вопросов от пользователей, обсуждений и решений проблем. Сейчас в ней более 15 000 человек, и их число ежедневно продолжает расти. Подписаться на группы или следить за новыми сообщениями можно через web-интерфейс по адресу http://groups.google.com/group/cake-php.
По группам можно искать, ими удобно пользоваться. Прежде чем задавать свой вопрос, стоит заглянуть в историю и узнать, не задавал ли кто-то тот же самый или похожий вопрос прежде. Это не только позволит избежать дублирования, но и ускорит получение ответа!
Последние крохи
Как вы, надеюсь, поняли из этой статьи, сообщество CakePHP – постоянно растущее объединение умных и щедрых людей со всего мира. В дополнение к нему, Cake Software Foundation обеспечивает небывалое изобилие средств и инструментов, чтобы вы могли делиться знаниями и получать их от других. Поэтому, независимо от предпочитаемого вами метода поиска поддержки, вы найдете огромное количество сайтов и механизмов, которые наведут вас на верный путь.
Мне очень нравилось писать эту серию статей о CakePHP для Linux Format, и, надеюсь, вам нравилось их читать. Я надеюсь, что многим из вас удастся создать потрясающие программы с помощью CakePHP и поделиться ими со всем миром! Как всегда, если у вас есть вопросы или проблемы, не стесняйтесь и свяжитесь со мной или с редакцией Linux Format.
Автогенерация API
Нет доступа в Интернет? Официальный API CakePHP на самом деле сгенерирован автоматически из исходных кодов CakePHP. Это означает, что вся поучительная информация, которую вы видите на сайте – результат чтения и разбора комментариев в PHP-файлах ядра CakePHP. Если вы на чем-то споткнулись, загляните в таинственную папку cake вашего приложения и откройте файлы – вы удивитесь, как чист и тщательно прокомментирован весь этот код.
Ценнейший наш ресурс
CakePHP не был бы таким успешным, удобным и популярным без огромных усилий, прилагаемых пользователями. Наша документация во многом создана пользователями и модерируется уважаемыми членами сообщества. Заметив ошибки в описаниях или неактуальную информацию, или не найдя, чего хотели, вы сможете отправить свои исправления и добавления, которые помогут улучшить ресурсы сообщества.
Будьте общительны
Статья о ресурсах по CakePHP будет далеко не полной, если не упомянуть страницу в Twitter. Добавьте в друзья @cakephp, и вы сможете узнать об официальных релизах, посмотреть новые проекты и получить информацию о том, что происходит внутри сообщества. Это также еще один прекрасный способ получить вопросы, на которые у вас, возможно, уже есть ответы. Сообщество, сложившееся вокруг CakePHP, очень дружелюбно и открыто, и вы обнаружите, что общение с аккаунтом @cakephp в Twitter и с другими членами сообщества с помощью тэга #CakePHP может дать удивительные результаты. По сути, часто это даже быстрее, чем ждать ответа на ваш вопрос от других средств поддержки.