Codengineering - блог о программировании
Веб-разработка динамически развивающаяся область человеческого знания. Однако базовые технологии, которые используются в веб-разработке давно устоялись. Во фронтенде еще с 90-х годов царствуют HTML и CSS, а вскоре к ним присоединился JavaScript. Также устоялся круг языков программирования, которые используются на стороне сервера. Лишь изредка его пополняют новые языки. Однако их связывает одна особенность - все они ориентированы на разработку в объектно-ориентированном стиле. Вообще, судя по последним тенденциям, объектно-ориентированная разработка является абсолютным лидером среди других методологий разработки и программирования, и достойного конкурента данной методологии не предвидится, как минимум, в ближайшее время. Именно благодаря воспризведению естесственного мышления человека объектно-ориентированной разработкой так подкупает многих программистов использовать данный подход. За время развития объектно-ориентированного подхода вокруг него выросла целая экосистема: разработаны шаблоны проектирования кода, ставшие де-факто стандартом решений основных проблем, с которыми сталкиваются разработчики. На этой базе построено большое количество фреймворков, упрощающих повторное использование кода, а также упрощающих разработку сложных систем различного назначения. Это, безусловно, характеризует новую веху в разработке программного обеспечения.
Цель данного блога - предоставлять качественную информацию по всем аспектам веб-разработки. В максимальной ее реализации должна получиться централизованная система, описывающие все ключевые технологии веб-разработки и их взаимодействие.
Новые популярные материалы
SQLite: как организовывать таблицы
Организация данных — все равно, что поддержание порядка на рабочем месте. Хорошо всегда знать, где что находится, и в случае необходимости освобождать больше места для хранения или работы. В настоящее время мир состоит из библиотек реляционных и нереляционных баз данных, причем и у тех, и у других свои преимущества и недостатки. В этой статье сф...
Время управлять версиями проектов МО по-новому
Специалисты по анализу данных и инженеры машинного обучения часто представляют проекты предиктивной аналитики в виде конвейера — производственного процесса, который принимает четко определенные вводы и возвращает конкретные выводы. Совокупность всех взаимосвязанных этапов, а именно сбора, обработки, моделирования данных и т. д., приводит к дости...
4 типа архитектуры программного обеспечения
Детальный обзор существующих подходов Зачем нужна архитектура ПО Первые разработчики создавали программное обеспечение без архитектуры. Сначала это казалось удобным: никаких издержек, связанных с планированием, и ускоренное прототипирование. Но мере усложнения ПО теряло гибкость и управляемость, а каждое новое изменение обходилось все дороже. Это ...
Руководство по созданию настольного приложения в Electron
Если вы занимаетесь веб-разработками, то, вероятно, наслышаны об Electron. Для тех же, кто не в курсе, скажу, что это достаточно противоречивый фреймворк для создания приложений, совместимых с Windows, macOS и Linux, на основе веб-технологий и единой базы кода. Несмотря на то, что его приложения могут уступать нативным в скорости и легковесности, ...
Как создать адаптивную галерею для интернет-магазина
В этой статье вы узнаете, как создать адаптивную галерею с помощью простенького JavaScript-фреймворка Stimulus для HTML-страницы вашего будущего интернет-магазина. Stimulus — это мощная альтернатива SPA, которая позволяет разработчикам воплощать в жизнь их задумки по созданию веб-приложений. Stimulus Components — это проект с открытым исходным...
Как создать простой планировщик событий в Go
Базовый рабочий механизм представляет собой следующее: запланированное событие добавляется в базу данных, из которой оно будет выполняться в определенное время. Другая задача будет запускаться регулярно, чтобы проверить, не истекло ли какое-либо событие в базе данных. Если да, то запустится событие polling. Детали реализации Начнем с создания схем...
Создание REST-клиента с помощью Spring Cloud OpenFeign и Netflix Ribbon
В Java HTTP-запросы между сервисами реализуются весьма просто. Так как существует ряд известных открытых HTTP-клиентов, таких как OkHttp и RestTemplate в Spring, то сложность представляет не выбор подходящего кандидата, а дальнейшая с ним работа. Среди растущего числа распределенных облачных сервисов, где сервера постоянно появляются и исчезают, к...
Правильная мотивация - залог успешных сторонних проектов
По моему опыту, в работе над сторонним проектом основная сложность заключается не в поиске новой идеи, а в ее окончательном воплощении в готовый продукт. В данной статье я поделюсь с вами несколькими стратегиями, которые помогли мне поддерживать заинтересованность в реализации моих сторонних проектов. 1. Определите MVP В связи с ...
5 причин смещения в машинном обучении и что с этим делать
Смещение в машинном обучении означает, что алгоритм дает ошибочные результаты из-за неточных предположений, сделанных на одном из этапов процесса. Чтобы разработать любой процесс машинного обучения, специалисту по обработке данных необходимо выполнить ряд шагов: сбор и очистка данных, обучение алгоритма и его развертывание. Во время этого могут во...
Незаслуженно забытый ForkJoinPool
Всем известно о новых функциях, которыми нас порадовал JDK 8, и, вероятно, трудно найти Java-разработчика, который не знает, что такое Java Streams, лямбды или CompletableFutures. Итак, все эти приятности появились несколько лет назад вместе с JDK 8, но что произошло немного раньше, когда состоялся выпуск JDK 7? Даже если мы заглянем в раздел “Нов...