Как стать автором
Обновить
13
0
Алексей @AlexGorky

Пользователь

Отправить сообщение

Spring Boot Starter: практически, принципиально и подробнее. Часть 1

Время на прочтение9 мин
Количество просмотров3.6K

Всем привет, меня зовут Сергей Соловых, я Java-разработчик в команде МТС Digital. За последние 2 года я написал и выпустил в продакшен более 30 микросервисов. Выдержать столь высокий темп помогло применение общепроектных решений и паттернов разработки.

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

В этом цикле статей я поделюсь выжимкой из материалов, накопленных мною в процессе создания микросервисов. Это будет полезно тем, кто только начинает разбираться, что же такое Spring Boot Starter и с чем его едят.

Первую часть мы посвятим созданию принципиального решения, которое позволит запустить стартер как подключаемую к другому Spring Boot-приложению библиотеку.

Читать далее
Всего голосов 9: ↑10.5 и ↓-1.5+12
Комментарии3

Система условных обозначений BPMN

Время на прочтение3 мин
Количество просмотров2.7K

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

Рассмотрим подробней.

Читать далее
Всего голосов 13: ↑10 и ↓3+7
Комментарии3

Шаг за шагом: разработка 3D-игры в Godot 4.2 для начинающих

Время на прочтение7 мин
Количество просмотров5.2K

И снова привет, Хабр! В прошлой статье я рассказал, как создавать 2D-игры на движке Godot. По вашим запросам — добавляем измерение и переходим в мир 3D. На этот раз мы погрузимся в трехмерные объекты и элементы анимирования. Подробности под катом!
Читать дальше →
Всего голосов 36: ↑40 и ↓-4+44
Комментарии8

Кто реально угрожает C++ (нет, Rust, не ты)

Время на прочтение14 мин
Количество просмотров67K

Привет! Меня зовут Александр Каленюк, и я крепко подсел на C++. Пишу на C++ 18 лет кряду, и все эти годы отчаянно пытаюсь избавиться от этой разрушительной зависимости.

Всё началось в конце 2005 года, когда мне довелось писать движок для симуляции 3D-пространства. В этом движке было буквально всё, чем язык C++ мог похвастаться в 2005 году. Трёхзвёздочные указатели, восьмиуровневые зависимости, C-подобные макросы повсюду. Кое-где – вкрапления ассемблера. Итераторы в стиле Степанова и мета-код в стиле Александреску. В общем, всё. Кроме ответа на самый важный вопрос: зачем?

Читать далее
Всего голосов 210: ↑221.5 и ↓-11.5+233
Комментарии360

Кажется, дождь собирается. Пишем Vue-приложение для прогноза погоды

Время на прочтение9 мин
Количество просмотров4K

В статье рассмотрим, как сделать простое приложение погоды без дизайн-макета‎. Поработаем с HTML, CSS, JavaScript, Vue, Vite, подключением API, а также развернем проект на облачном сервере. Подробности под катом!
Читать дальше →
Всего голосов 23: ↑22.5 и ↓0.5+22
Комментарии8

Лампочки ЭРА и OSRAM из магазина Fix Price

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров46K
В «Фикс Прайсе» рядом на одной полке стоят лампы ЭРА 15 Вт за 79 рублей и OSRAM 10,5 Вт за 99 рублей. Наверняка большинство покупателей выбирает «более мощную и дешёвую», но наверное вы уже догадываетесь о подвохе. Я купил обе лампочки и измерил их параметры.


Читать дальше →
Всего голосов 154: ↑171 и ↓-17+188
Комментарии51

Cобытия жизненного цикла компонента

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров1.9K

Друзья, привет!

Практическое понимание событий жизненного цикла компонентов даёт возможность быстро анализировать и разрабатывать бизнес-задачи. Мы разберём 7 событий жизненного цикла компонентов на примере Composition API в Vue3 фреймворке.

Читать далее
Всего голосов 13: ↑14 и ↓-1+15
Комментарии7

Победить хаос в документации: почему мы создали свой продукт для Docs-as-a-Code

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров5K

Привет, Хабр! В 2020 году компания решила вывести на рынок линейку продуктов Platform V. Для них нужна была документация, которая на тот момент велась в Confluence. Нам предстояло проделать сложную и дорогую работу: собрать документы на нужные версии, привести тексты к единому стилю и терминологии, оформить как комплект документации от поставщика ПО. Расскажу, какие инструменты мы в СберТехе использовали, почему перешли от документирования в Confluence нa Docs-as-a-Code и создали инструмент Platform V GetDocs, который помогает эффективно писать документацию.

Читать далее
Всего голосов 13: ↑16 и ↓-3+19
Комментарии17

Как разработать браузерное расширение в Chrome на React: разбираем на примере Cloudhood

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.8K

Всем привет! Меня зовут Егор, я технический лидер в команде, которая занимается разработкой личного кабинета Cloud.ru. Некоторое время назад загорелись идеей сделать браузерное расширение на React, но не было хороших гайдов (либо я их не нашел), поэтому в итоге написали свой) В статье поделился нашим опытом и наработками, а также рассказал, зачем мы вообще взялись за этот open source проект.

Читать дальше
Всего голосов 4: ↑4 и ↓0+4
Комментарии1

От «здравствуйте» до こんにちは: языки программирования не на английском языке

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров18K

Существует огромное количество самых разных языков программирования, их насчитывается несколько тысяч. Какие‑то — идеальны для работы, другие же созданы just for fun. К слову, есть ЯП, представленные программистами из неанглоязычных стран, в них операторы, функции и т. п. — все на родном для автора языке. Кроме того, некоторые страны стремятся развивать свои собственные IT‑индустрии, и использование местного языка в программировании может быть способом поддержать эту инициативу. Мы выбрали самые интересные на наш взгляд non‑English языки программирования.

Читать далее
Всего голосов 34: ↑37 и ↓-3+40
Комментарии34

RSS отлично себя чувствует

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров12K


RSS и Atom — простые и понятные форматы для публикации контента. Кто-то считает, что золотое время RSS осталось в прошлом, но это не так. На самом деле этап хайпа остался в прошлом, а сейчас синдикация вышла на плато продуктивного использования в своих нишах. Например, подкасты (MP3 по RSS) живут и процветают.

Но корпорациям использовать RSS не выгодно. Например, компания Google удалила RSS откуда могла и позакрывала сервисы. Но это не помогло. RSS отлично себя чувствует. Хабр и многие другие сайты получают существенную часть трафика со своих фидов.
Читать дальше →
Всего голосов 79: ↑92 и ↓-13+105
Комментарии78

Декомпозиция программных компонент

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.7K

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

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

И тут начинаются нюансы..
Всего голосов 43: ↑24 и ↓19+5
Комментарии18

Введение в нейросети: что, зачем и как?

Уровень сложностиСредний
Время на прочтение25 мин
Количество просмотров35K

Это модное слово всё чаще используется в разговорной речи: обывателей плотнее окутывают угрозами бунта искусственного интеллекта и войны с роботами — с одной стороны, и рекламой нейросетевых продуктов — с другой. Отдельный котёл в аду — для тех, кто впаривает «курсы дата‑саентистов». А когда бедный юзернейм в поисках истины обращается к Гуглу своему любимому поисковику — то вместо простого ответа на простой вопрос, получает ещё больше вопросов — таких как тензорфлоу, сигмоида и, не дай Бог, линейная алгебра.

Как же нейросети рисуют картинки?
Всего голосов 58: ↑56 и ↓2+54
Комментарии26

От HTTP к RCE. Как оставить бекдор в IIS

Время на прочтение17 мин
Количество просмотров3.3K

Всем добрый день! Меня зовут Михаил Жмайло, я пентестер в команде CICADA8 Центра инноваций МТС.

На проектах часто встречаются инстансы Internet Information Services (IIS). Это очень удобный инструмент, используемый в качестве сервера приложений. Но знаете ли вы, что даже простое развёртывание IIS может позволить злоумышленнику оставить бекдор в целевой среде?

В статье я покажу закрепление на системе, используя легитимный продукт Microsoft — Internet Information Services. Мы попрактикуемся в программировании на C++, изучим IIS Components и оставим бекдор через IIS Module.

Договоримся сразу: я рассказываю это всё не для того, чтобы вы пошли взламывать чужие системы, а чтобы вы знали, где могут оставить бекдор злоумышленники. Предупреждён — значит вооружён.

Читать далее
Всего голосов 9: ↑10 и ↓-1+11
Комментарии2

Самый лучший в мире курс по Машинному обучению — Алгоритмы Машинного обучения с нуля

Время на прочтение1 мин
Количество просмотров23K

Краткий обзор курса, который я недавно закончил пилить на степике. Курс хардкорный :) В нем необходимо с нуля писать алгоритмы машинного. Наверное это один из лучший способов досконально разобраться в алгоритме.

Курс бесплатный: https://stepik.org/course/68260/promo

Читать далее
Всего голосов 30: ↑30.5 и ↓-0.5+31
Комментарии11

Эффективные трассировки в Go

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров2.3K

Пакет runtime/trace содержит мощный инструмент для понимания программ Go и устранения неполадок. Функциональность внутри позволяет создавать трассировку исполнения каждой горутины за определенный период времени. С помощью go tool trace command (или превосходного инструмента gotraceui с открытым исходным кодом) можно визуализировать и исследовать данные в этих трассировках.

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

Читать далее
Всего голосов 17: ↑16 и ↓1+15
Комментарии0

Делаем RPG на Go: часть 0.5

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров4.2K

В предыдущей статье мы начали знакомство с Ebitengine.


В этой части структура игры будет доработана и переведена на сцены.


Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии3

А ты хорошо знаешь Go? Держи пару полезностей по оптимизации кода

Время на прочтение12 мин
Количество просмотров9.1K

Привет, Хабр!

Эта статья — моя подборка приёмов и техник, которые помогут писать лаконичный и производительный код на Go без лишних костылей и велосипедов.

Речь пойдёт о:

полезностях для конкурентного программирования

приёмах в Go в целом, таких как использование iota, работа с ошибками, вывод интерфейса и т.д.

методах оптимизации работы со слайсами

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

Читать далее
Всего голосов 22: ↑19 и ↓3+16
Комментарии11

Изучение Java в 2024 году: что стоит почитать. 6 книг, которые можно рекомендовать

Время на прочтение3 мин
Количество просмотров13K

В 2024 г. Java никуда не делась и в ближайшие много лет явно не исчезнет. Язык продолжает развиваться. ПО, написанного на этом ЯП, всё больше. Разработчиков тоже нужно много и сразу, причём хороших. Для того чтобы стать таким специалистом, нужно, конечно, учиться и практиковаться. Сильно помогают книги, о которых сегодня и поговорим. Под катом — подборка пособий по Java.

Читать далее
Всего голосов 15: ↑13 и ↓2+11
Комментарии6

REST API сервер на Bash с использованием сокетов и Apache

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров5.7K

Всем привет! Ранее рассказывал о том, как создать REST API и Web-сервер на PowerShell для Windows, а также упоминал, что подобный сервер будет работать и в системе Linux, благодаря кроссплатформенной версии PowerShell Core. Безусловно, для подобных целей лучше используются специализированные серверные фреймворки или библиотеки, такие как Flask или Django в Python, но меня не покидала идея реализации похожего сервера, где описание логики будет производиться на языке одного только Bash. Приведу примеры, с помощью которых можно создать такой сервер используя сетевые сокеты netcat , socat и ncat, а также веб-сервера Apache с использованием встроенных модулей.

Читать далее
Всего голосов 20: ↑18 и ↓2+16
Комментарии3
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность