MaxSite.org
Блог вебмастера

«Слепой» тест «движков» CMS. Критерии

Сейчас очень много разных CMS. Среди них есть какие-то популярные и не очень. Мне по роду программистской деятельности приходится просматривать много разных «движков», php-фреймворков, поэтому в какой-то мере я в них могут соориентироваться и понять стоит ли систему использовать. Для обычного потребителя критерии оценки, как правило, очень субъективны и строятся на чужих мнениях, авторы которых, в общем-то, сами довольно поверхностно разбираются в этом вопросе.

Поэтому я предлагаю разработать «слепой» тест, где каждая система может быть оценена не по названию или популярности, а по каким-то объективным характеристиками. Критерии оценки должны быть такими, чтобы их проверить мог даже обычный пользователь.

Читать дальше...

IDE для PHP

IDE для PHP

К вопросу выбора IDE для PHP меня подтолкнуло программирование на Java. Как я уже отметил ранее, для Явы существует неплохой выбор программ. В частности я пока использую IntelliJ IDEA и, честно говоря, я был удивлён, насколько серьёзно продвинулись подобные программы. Много лет назад я публиковал статью IDE для PHP на примере Notepad++, которая не потеряла акутальности, хотя по современным меркам Notepad++ — это обычный текстовый редактор с массой приятных «плюшек».

IntelliJ IDEA меня приятно удивила своим «интеллектом». Java очень уж «многословна»: код откровенно излишний и достаточно громоздкий. Было непонятно: неужели java-программисты его пишут вручную? Запомнить все функции, пакеты и прочие языковые возможности совершенно нереально. Это не PHP, который изучается по справочнику с php.net. На практике оказалось, что IntelliJ IDEA сокращает написание кода до примитивного выбора функций из подсказки автодополнения. IDE автоматом отслеживает код и предлагает советы по его написанию, например добавление в import.

И совсем меня поразила возможность статического анализа кода — это когда IDE проверяет код прямо в процессе его написания. Отмечаются проблемные места, скажем неиспользуемые переменные, или подсказки по области видимости и т.п. В PHP такие вещи крайне ограничены — разве что запуск php с флагом «-l»... Тут же получается очень много точных и конкретных подсказок вплоть до полного переформатирования участка кода.

На этой волне я и решил узнать, есть ли подобные IDE для PHP-кодера.

Читать дальше...

Простой способ управления делами

Этот способ я называю «Черепаший бег», поскольку он очень точно описывает саму суть метода. :-) Часто бывают ситуации, когда нет настроения, вдохновления, в конце-концов, просто лень что-то делать. При этом мы знаем, что у нас куча дел: по хозяйству, работе, самообразование и т.п. Например нужно навести порядок в доме. Мысленно, охватив объём работы, понимаем, что на это уйдёт несколько часов. Первая мысль, лучше уж и не браться.

Или нужно сделать сайт/программу. В голове сразу возникает план из множества пунктов. Понимаем, что это работа на несколько дней, охватить сразу всё не получится. Вместо этого открываем Эпоху империй и воюем несколько часов, с мыслью, дескать, вот поиграю и займусь работой. Но после этого мозг требует отдыха и напрочь отказывается думать. Дальше, чашка чая или перекус, потом клонит ко сну (какая тут работа?!) в итоге уже вечер (какая вечером работа?!), дальше фильм или сериал, плавно переходяший в сон. Засыпая внутри гложет червь: блин, целый день прошёл бесполезно, сайт/программу не сделал, по дому не убрался...

Знакомо?

Читать дальше...

Верстка с помощью CSS Grid Layout

Спецификация по Grid Layout опубликована уже достаточно давно, но вебмастера всё ещё редко используются grid-вёрстку. Тут две основные причины. Первая — распространенность IE11 (по статистике около 2%), которая, к тому же поддерживает только старую версию спецификации. Вторая — реальная потребность в grid не очень высока: существующего flex хватает для 90% стоящих задач.

C другой cтороны, все современные браузеры уже полноценно поддерживают grid, поэтому можно потихонечку разбираться в его основах и решать некоторые задачи.

Читать дальше...

Реализация паттерна Observer в MVC (Model View Controller) для JavaFX

В продолжении предыдущей статьи «MVC (Model View Controller) в JavaFX», я решил-таки реализовать паттерн Наблюдатель (Observer), чтобы довести работу до логического завершения. За основу я взял код Java с Википедии. Этот пример из книги «Паттерны проектирования» Эрика и Элизабет Фримен, поэтому наверняка все его разбирали.

Пример я немного упростил, поскольку «погодная станция» нам не нужна, а также сделал так, чтобы уведомления могли быть разными.

В конце статьи вы найдете исходные коды для загрузки.

Читать дальше...

MVC (Model View Controller) в JavaFX

MVC (Model View Controller / Модель Представление Контроллер) — это даже не паттерн, который имеет понятную реализацию (с примером кода), а некая концепция, призванная упростить разработку, поддержку и изменение программы. Именно поэтому все примеры кода имеют отношение только к конкретно решаемой задаче. Более того, реализация будет ещё зависеть и от используемого языка — в некоторых случаях «классическое» применение MVC может только усложнить код.

Я всегда воспринимал MVC как алгоритм, в котором определяются сущности под определенную задачу. До начала изучения Java, мне как-то не было особой нужды вдаваться во все эти тонкости, поскольку на Delphi, PHP или JavaScript нет ограничений и жестких рамок: задачу можно решать любыми способами. Но Ява заставляет использовать только классы ООП, а значит неизбежно возникает задача на логическое разделение кода.

Читать дальше...

Продам wbloger.com

В целях «реорганизации» доменов решил продать wbloger.com. Исторически он всегда бы связан с созданием сайтов, поэтому новому хозяину отимально будет сохранить тематику. Хотя наверное он годится и для обычных блогеровских записей из-за своего имени.

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