Статьи
Фреймворки в веб‑разработке
Фреймворки — это программные продукты, которые упрощают создание и поддержку технически сложных или нагруженных проектов.
Фреймворк — это программное обеспечение, облегчающее разработку и объединение разных компонентов большого программного проекта. Благодаря использованию фреймворков достигается не только высокая скорость разработки, но и большая производительность и надёжность решений.
TDD — разработка через тестирование
TDD, test-driven development или разработка через тестирование — это методология разработки ПО, повышающая надёжность и сопровождаемость проектов.
TDD основывается на повторении коротких циклов разработки: сначала пишется тест, покрывающий желаемое изменение, затем пишется программный код, который реализует желаемое поведение системы и позволяет пройти написанный тест, а после этого проводится рефакторинг написанного кода с постоянной проверкой прохождения тестов.
Информационная безопасность: основные подходы, оценка рисков и затрат
Информационная безопасность — обеспечение конфиденциальности, целостности и доступности информации.
Конфиденциальность — обеспечение исключительно авторизованного доступа к информации: информация не должна предоставляться и не должна раскрываться неавторизованным физическим лицам, организациям или процессам. Целостность — поддержание и обеспечение точности и полноты данных на протяжении всего жизненного цикла: данные не должны быть изменены неавторизованным или незаметным способом. Доступность — обеспечение беспрепятственного доступа к информации авторизованным пользователям: системы хранения и обработки информации, интерфейсы работы с информацией, системы обеспечения авторизованного доступа и каналы связи должны функционировать корректно.
Итеративная модель разработки
Итеративная (итерационная, инкрементная или эволюционная) модель разработки программного обеспечения — это процесс, который осуществляется небольшими этапами, в ходе которых ведется анализ полученных промежуточных результатов, выдвигаются новые требования и корректируются предыдущие этапы работы.
Жизненный цикл проекта при итерационной разработке разбит на последовательность итераций. Каждая из этих итерации, по сути, является водопадным проектом в миниатюре, то есть включает в себя все ключевые процессы разработки ПО и результатом работы по каждой итерации обычно является пригодная для использования версия продукта.
JPEG и PNG — в чём разница форматов?
JPEG и PNG — это два основных формата для изображений, которые используются на сайтах. В некоторых случаях лучше использовать JPEG, а в некоторых — PNG.
Неверный выбор формата обычно приводит к кратному возрастанию размера изображения и, следовательно, к долгой загрузке изображений на медленном интернет‑канале (мобильный интернет, например).
Информационная безопасность — основные угрозы
В статье мы рассмотрим мотивацию атакующих и проведем их классификацию. Также классифицируем основные методы атак, оценим их риски и возможные последствия.
К сожалению, от атак не застрахован ни один веб‑проект. Даже если ваш сайт ничем не интересен профессиональным хакерам (реальных денег нет, данных мало и они не ценные), если проект не вызывает яркие негативные эмоции у кого‑либо, а монетизация возможной атаки ничтожна по прибыльности, то всё это это лишь снижает риски и всё равно проекту не избежать автоматизированных атак с целью захвата вычислительных ресурсов или для перенаправления трафика.
Язык программирования Ruby
Ruby (ruby — рубин, руби) — интерпретируемый мультипарадигмальный язык программирования: динамический, объектно‑ориентированный, рефлективный, императивный, функциональный. Активно используется в веб‑разработке, в системном администрировании и в работе операционных систем (Mac OS X, Linux, BSD).
Как расчитывается стоимость часа работы специалиста
Большинство компаний, занимающихся созданием сайтов и веб‑приложений, оценивают свою работу на основе цены нормочаса. В этой статье приводится схема расчета стоимости часа работы специалиста.
Рекомендации по выбору CMS и фреймворков
При выборе конкретной платформы для разработки часто возникают сложности. Бывает непросто принять взвешенное решение, в этом случае будет полезен следующий алгоритм выбора.
- При возможности найти готовые решения или продукты — используйте их. В большинстве случаев, оптимальная стратегия выбора: «чем проще — тем лучше».
- Если у вас есть команда разработчиков, то прислушайтесь к их мнению. Важны как возможности самой платформы, так и наличие у команды опыта работы именно с этим технологическим стеком.
- Заранее оцените «заточенность» выбранной платформы под ваши задачи. Не стоит на 100% доверять маркетинговым материалам вендора платформы.
Как написать функциональное техническое задание?
Всё просто: нормальным русским языком описывайте нужные функции в формате сценария использования. Пункты ТЗ должны быть объективными, просто изложенными и элементарным способом проверяемыми требованиями.
Сценарий лучше всего описывать в по схеме: [роль пользователя] может [действие], [описание целей пользователя, а также необходимых шагов и вариантов развития событий]. Оптимально — разбивать описание больших компонентов на маленькие составляющие.