Статьи

Выбор между CMS и фреймворком

С технической точки зрения любой функционал может быть реализован или на CMS, или на фреймворке, или реализован без использования каких‑либо платформ на чистом языке программирования.

Однако некоторые проекты проще сделать на CMS, некоторые — на фреймворке, а разработка без использования платформ редко бывает рациональным решением с точки зрения бизнеса. В большинстве случаев, выбор платформы стоит основывать на экономических критериях. В статье приведены основные критерии, которые позволят принять обоснованное решение по этому вопросу.

CMS
фреймворки
платформы
веб-разработка
бэкенд
Статья опубликована в 2019 году

SSH — сетевой протокол для управления серверами

SSH или Secure Shell — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP‑соединений, например, для передачи файлов или для работы с базой данных.

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

системное администрирование
протоколы
информационная безопасность
Статья опубликована в 2019 году

Водопадная модель разработки

Водопадная модель разработки программного обеспечения — это процесс разработки, в котором все необходимые этапы проходят строго последовательно.

Разработка ПО по водопадной модели начинается со сбора и анализа требований, затем следует фаза проектирования и прототипирования. После завершения полного проектирования начинается этап программной реализации. После завершения этапа программирования разработанный продукт тестируется на соответствие требованиям. Затем осуществляется интеграция и запуск, после чего проект переходи в фазу поддержки и сопровождения.

управление проектами
управление продуктами
Статья опубликована в 2019 году

Сжатие изображений с потерями и без потерь

Сжатие изображений — это один из способов ускорения загрузки сайта. Сделать изображения более «легкими» можно как уменьшив их физический размер в пикселях, так и путём оптимизации параметров сохранения.

На «широких» каналах размер изображений на сайте на скорость загрузки сайта влияет не очень сильно, но для пользователей, просматривающих сайт через мобильный интернет (EDGE или 3G), большие изображения могут быть проблемой. На посещаемых сайтах также могут быть сложности с загрузкой канала сервера — неоптимизированные изображения могут существенно сказываться на объёме трафика (это проблема, если он платный) или просто «забивать» канал.

фронтенд
дизайн
веб-разработка
Статья опубликована в 2019 году

MongoDB — документо-ориентированная база данных (NoSQL)

MongoDB — это NoSQL хранилище данных, крайне удобное для хранения информации, которая не может быть нормально структурирована в рамках реляционных баз данных.

MongoDB — это СУБД с открытым исходным кодом, не требующая описания схемы таблиц. Документы в MongoDB хранятся в JSON или BSON, работа с такой моделью проще кодируется и проще управляется, а внутренняя группировка релевантных данных обеспечивает дополнительный выигрыш в быстродействии.

СУБД
NoSQL
хранение данных
серверное ПО
Статья опубликована в 2019 году

Отказоустойчивость сайтов и веб‑приложений

Причин для сбоев в работе веб‑приложений немало — это и выход из строя серверного оборудования, и сбои программного обеспечения, и аварии на уровне дата‑центров.

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

отказоустойчивость
бэкенд
веб-разработка
серверы
системное администрирование
Статья опубликована в 2019 году

Адаптивный и отзывчивый дизайн

Для обеспечения хорошего отображения сайтов на мобильных устройствах (планшетах и смартфонах) обычно создаётся отзывчивый или адаптивный дизайн.

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

фронтенд
веб-разработка
мобильные устройства
HTML
CSS
адаптивный веб-дизайн
дизайн
Статья опубликована в 2019 году

Безопасность сайтов и веб‑приложений

Под безопасностью веб‑приложений понимается обеспечение сохранности данных, их недоступность для посторонних лиц, а также способность сервиса сохранять работоспособность при кибератаках.

Безопасность веб‑приложений зависит от качества программного кода (это ответственность веб‑разработчиков), от квалификации системного администратора и регулярности обсуживания серверов, а также от компетенций всех пользователей, имеющих доступ к чувствительной информации.

информационная безопасность
веб-разработка
системное администрирование
Статья опубликована в 2019 году

Рефакторинг — это неизбежный процесс

Рефакторинг или реорганизация кода — процесс изменения внутренней структуры программного продукта, не затрагивающий её внешнего поведения и имеющий целью облегчение понимания программного кода и, пусть и не всегда, оптимизацию производительности.

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

методологии разработки
веб-разработка
Статья опубликована в 2019 году

Язык программирования PHP

PHP — язык программирования, который наиболее распространён в сфере веб‑разработки.

В сфере создания динамических веб‑сайтов и веб‑приложений PHP занимает значительную долю рынка. Практически все популярные CMS для веб‑разработки написаны на PHP. Наиболее важные преимущества PHP — простота освоения, адекватная скорость работы, мультипарадигмальность. Критикуют PHP обычно за низкий средний уровень разработчиков и, как следствие, за низкую культуру разработки, проблемы с сопровождаемостью и надёжности проектов.

веб-разработка
языки программирования
PHP
бэкенд
Статья опубликована в 2019 году