Reg.ru: домены и хостинг

Крупнейший регистратор и хостинг-провайдер в России.

Более 2 миллионов доменных имен на обслуживании.

Продвижение, почта для домена, решения для бизнеса.

Более 700 тыс. клиентов по всему миру уже сделали свой выбор.

Перейти на сайт->

Бесплатный Курс "Практика HTML5 и CSS3"

Освойте бесплатно пошаговый видеокурс

по основам адаптивной верстки

на HTML5 и CSS3 с полного нуля.

Начать->

Фреймворк Bootstrap: быстрая адаптивная вёрстка

Пошаговый видеокурс по основам адаптивной верстки в фреймворке Bootstrap.

Научитесь верстать просто, быстро и качественно, используя мощный и практичный инструмент.

Верстайте на заказ и получайте деньги.

Получить в подарок->

Бесплатный курс "Сайт на WordPress"

Хотите освоить CMS WordPress?

Получите уроки по дизайну и верстке сайта на WordPress.

Научитесь работать с темами и нарезать макет.

Бесплатный видеокурс по рисованию дизайна сайта, его верстке и установке на CMS WordPress!

Получить в подарок->

*Наведите курсор мыши для приостановки прокрутки.


Интервью с разработчиком MaxSite CMS

Сегодня у нас в гостях тот, кто знает про CodeIgniter практически все. Больше, чем он, знает разве что сам создатель CodeIgniter).

Это человек, которого обычно называют Max (в жизни - Максим), и он является разработчиком MaxSite CMS (max-3000.com) – мощной CMS-системы, построенной на основе фреймворка CodeIgniter.

Я связался с Максимом, и он любезно согласился ответить на мои вопросы по его системе и по CodeIgniter в целом. Все ответы Максим написал мне в текстовом виде.

Итак, мы начинаем (мои вопросы выделены жирным):

- Максим, расскажи, пожалуйста, немного о себе. Кто ты, чем занимаешься в жизни?

- В Интернете меня в основном знают по MaxSite CMS и по поддержке русского WordPress.

Впрочем, WordPress я не занимаюсь уже более трёх лет, остались только несколько разработок, вроде MaxCache, но до сих пор мне пишут по проблемам в WordPress.

Сам я фрилансер с почти пятилетним стажем. Основная работа - это создание сайтов на MaxSite CMS и какие-то сопутствующие работы. В реале - достраиваю дом (бесконечный процесс!), осваиваю огород и пасу табун из шести котов. :)

- Я узнал о тебе, как о разработчике MaxSite CMS, от Сергея Михалевича. Скажи, как давно ты начал разработку MaxSite CMS и что подтолкнуло к этому?

- Сергей - молодец! Я как-то загорелся сделать пару скринкастов. Но, услышав свой голос, понял, что это точно не моё. :) В этом плане у Сергея хорошо получается.

Хостинг

MaxSite CMS в этом году будет 4 года. Ну а началось всё с того, что я принял решение уйти из WordPress и попробовать сделать что-то своё.

Поначалу это было просто желание освоить CodeIgniter, но после первых опытов, я загорелся сделать "как в WordPress'е", только лучше. На второй план я отодвинул красоты админки и полностью сосредоточился на ресурсопотреблении и удобстве создания сайта (шаблона, плагина и т.п.).

- Почему ты взял за основу CMS-системы фреймворк CodeIgniter?

- Прежде всего, его скорость работы. После - универсальная архитектура, не загоняющая разработчика в кокон своих "стандартов". CodeIgniter - очень гибкий фреймворк, берущий на себя гигантское количество рутины. Один Active Record* чего стоит!

- Максим, такой еще вопрос. Вот ты - человек, который перелопатил CodeIgniter и создал на его основе свою CMS. Насколько гибкой она является, насколько хорошо она подходит для создания сайтов различных типов?

- MaxSite CMS годится практически под любые типы сайтов и задач. Тут нужно понять важную особенность системы (точнее это принцип работы CodeIgniter) - работа на основе входящего URL.

В рамках MaxSite CMS - это тип данных. Например, рубрика - это тип category, а запись - тип page. Тип данных извлекается из первого сегмента адреса, а что с ним делать дальше - решает разработчик.

- А каково все-таки наиболее типичное применение твоей CMS?

- Стандартный вариант заточен под блогосайт, как наиболее востребованный. При желании добавляется свой тип данных в виде обычного php-файла (type-файл). MaxSite CMS в этом плане накладывает только одно ограничение - в шаблоне должен быть index.php. А что в нём - её уже не заботит. :)

Логика работы MaxSite CMS достаточно простая: подключается небольшое ядро, активные плагины и управление передаётся в текущий шаблон. Дальше всё зависит от вебмастера. Если он делает "стандартный" вариант, то использует базовый функционал из default-шаблона. Причем всё так устроено, что нет необходимости что-то дублировать и копировать. Автоматом подключается даже css-фреймворк, настроенный под вывод данных системой.

За счет такой архитектуры количество кода в разы меньше, чем в том же WordPress'е.

Немаловажен также вопрос администрирования сайта. И здесь MaxSite CMS предлагает несколько решений по добавлению своих опций и настроек. Вебмастер вместо сложного программирования лишь "объявляет" необходимые опции: через ini-файл или массив специальной функции.

- Каковы самые сильные стороны твоего детища?

- Из сильных сторон я бы отметил низкое ресурсопотребление, высокую скорость работы, легкость в написании расширений/плагинов и удобство создания шаблонов.

- Какие основные векторы развития ты видишь для своего проекта?

- Их два. Первый - это как-то стимулировать создание публичных шаблонов. Так получилось, что в основном шаблоны MaxSite CMS делаются на заказ за деньги. Из-за этого отсекается львиная часть потенциальных пользователей. С другой стороны, заниматься благотворительностью тоже мало желающих. Наш народ считает своим долгом удалять даже такой мизер, как ссылку на сайт вебмастера. Так что здесь есть над чем думать.

Второй - я немного изменил порядок обновлений версий MaxSite CMS в пользу группы разработчиков и специалистов MaxSite CMS. Это позволит проводить более широкое тестирование и увеличит новые возможности системы.

Здесь идея в том, чтобы выделить из всех пользователей тех, кто непосредственно занимается MaxSite CMS в отдельную закрытую группу. Эдакий междусобойчик. :) Группе будут доступны все самые новые версии системы, которые и будут тестироваться и дорабатываться. Раз в месяц или два будем выкладывать версию на публику для рекомендованного обновления.

- Максим, т.е. ты уже давно работаешь над проектом не в одиночку, верно? Было бы очень сложно одному выполнять такой объем работы.

- Над MaxSite CMS трудятся многие люди, и мне бы хотелось избежать участи WordPress-специалистов, которые сейчас разбежались, а новые "спецы" умеют разве что буржуйский шаблон на русский язык перевести. :)

- И напоследок, скажи, пожалуйста, какой подход ты считаешь оптимальным для новичка, который хочет продвигаться в деле веб-разработки? (Я имею в виду тех, кто уже разобрался с установкой WordPress и сменой в нем темы оформления:))

- Веб-разработка сейчас довольно сильно специализируется, поэтому лучше сразу определиться с предпочитаемой областью.

Хостинг

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

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

Что касается JS-программирования, то сейчас для большинства задач больше требуется знание не нативного JavaScript, а библиотеки jQuery. Возможности, конечно, потрясающие, но для их изучения требуется время и терпение.

Отдельно стоят верстальщики. Этим проще - нужно "всего лишь" знать HTML и CSS. С CSS сложность в том, что многие стили применяются не совсем очевидным способом. Это такие хитрости, которые приходят с опытом.

Основы знаний CSS, конечно, должны быть железобетонными - без этого никак, но 80% времени работы уходит как раз на всякие неочевидные мелочи. Ну и верстальщик на сегодняшний день уже должен знать технологии, сокращающие трудозатраты, например LESS**. Я бы был даже более категоричен - не знаешь LESS - ты не верстальщик. :)

На мой взгляд, оптимально - это определиться со своим основным и поучиться «соседним» направлениям. Верстальщику будет крайне сложно работать, если он не будет знать основы PHP, а программисту без знания HTML и основ CSS - сложно придумывать свой веб-код.

- Отлично, Максим. Спасибо тебе большое за участие в интервью и за подробные ответы!


* Класс Active Record в CodeIgniter позволяет с легкостью работать с базами данных, производя любые операции и обеспечивая дополнительную защиту приложения от SQL-инъекций.

** LESS – надстройка над CSS, позволяющая "программировать" стили. См. статью: http://habrahabr.ru/post/136525/

Вот такой информацией с нами поделился специалист по CodeIgniter – Max, и я надеюсь, что данное интервью Вам понравилось. Еще раз спасибо Максиму.

P.S. Есть ли альтернатива CodeIgniter? Можете решить сами, просмотрев бесплатный видеокурс по основам работы с PHP-фреймворком CakePHP. Скачайте его, чтобы получить общее представление о возможностях этого фреймворка:

Понравился материал и хотите отблагодарить?
Просто поделитесь с друзьями и коллегами!


Смотрите также:

PHP: Получение информации об объекте или классе, методах, свойствах и наследовании

PHP: Получение информации об объекте или классе, методах, свойствах и наследовании

CodeIgniter: жив или мертв?

CodeIgniter: жив или мертв?

Функции обратного вызова, анонимные функции и механизм замыканий

Функции обратного вызова, анонимные функции и механизм замыканий

Применение функции к каждому элементу массива

Применение функции к каждому элементу массива

Слияние массивов. Преобразование массива в строку

Слияние массивов. Преобразование массива в строку

Деструктор и копирование объектов с помощью метода __clone()

Деструктор и копирование объектов с помощью метода __clone()

Эволюция веб-разработчика или Почему фреймворк - это хорошо?

Эволюция веб-разработчика или Почему фреймворк - это хорошо?

Магические методы в PHP или методы-перехватчики (сеттеры, геттеры и др.)

Магические методы в PHP или методы-перехватчики (сеттеры, геттеры и др.)

PHP: Удаление элементов массива

PHP: Удаление элементов массива

Ключевое слово final (завершенные классы и методы в PHP)

Ключевое слово final (завершенные классы и методы в PHP)

50 классных сервисов, программ и сайтов для веб-разработчиков

50 классных сервисов, программ и сайтов для веб-разработчиков

Наверх