Pull to refresh
0
0
Send message

RSA простыми словами и в картинках

Level of difficultyEasy
Reading time5 min
Views65K

Ассиметричный алгоритм криптографии RSA, что же это за алгоритм такой и как он работает? В этой статье мы разложим по полочкам, что такое RSA и ассиметричная криптография в целом, простыми словами и с картинками.

На обложке то как DALL-E представляет себе ассиметричную криптографию.

Читать далее
Total votes 15: ↑13 and ↓2+11
Comments16

Библиотека разработчика микросервисов. Полезные книги на русском языке

Reading time10 min
Views13K

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

Читать далее
Total votes 19: ↑19 and ↓0+19
Comments4

Ультимативная дорожная карта для изучения SQL и баз данных в 2023 году + источники для знаний

Level of difficultyEasy
Reading time9 min
Views45K

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

Читать далее
Total votes 17: ↑14 and ↓3+11
Comments12

Java logging. Hello World

Reading time14 min
Views290K

Вступление


Думаю, ни для кого не секрет, что такое логгеры и для чего они нужны. За время существования java было создано немало фреймворков логгирования. Среди самых известных можно выделить:

  • JUL — java.util.logging
  • log4j
  • JCL — jakarta commons logging
  • Logback
  • SLF4J — simple logging facade for java

В данной статье будет рассмотрен каждый из указанных выше фреймворков на уровне «hello world». Будут приведены простые примеры использования основного функционала и конфигурирования. Статья не преследует цель сравнения логгеров между собой и выявление лучшего из них, эту возможность автор оставляет за вами, уважаемые читатели. В конце статьи будут приведены источники, где можно получить более детальную информацию по каждому фреймворку. Также перед прочтением данной статьи рекомендую ознакомиться с публикацией «Java Logging: история кошмара», где описана история развития систем логгирования в Java.
Читать дальше →
Total votes 24: ↑18 and ↓6+12
Comments14

Управление транзакциями в Spring: @Transactional в деталях

Reading time16 min
Views88K

Вы можете использовать это руководство, чтобы получить простое и практическое понимание того, как работает управление транзакциями в Spring с помощью аннотации @Transacional .

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

Читать далее
Total votes 11: ↑3 and ↓8-5
Comments20

Использование Conditional в Spring

Reading time5 min
Views65K

В этом материале я хочу описать очень полезную, и часто используемую аннотацию Conditional и интерфейс Condition.


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

Читать дальше →
Total votes 19: ↑17 and ↓2+15
Comments2

Знай сложности алгоритмов

Reading time2 min
Views988K
Эта статья рассказывает о времени выполнения и о расходе памяти большинства алгоритмов используемых в информатике. В прошлом, когда я готовился к прохождению собеседования я потратил много времени исследуя интернет для поиска информации о лучшем, среднем и худшем случае работы алгоритмов поиска и сортировки, чтобы заданный вопрос на собеседовании не поставил меня в тупик. За последние несколько лет я проходил интервью в нескольких стартапах из Силиконовой долины, а также в некоторых крупных компаниях таких как Yahoo, eBay, LinkedIn и Google и каждый раз, когда я готовился к интервью, я подумал: «Почему никто не создал хорошую шпаргалку по асимптотической сложности алгоритмов? ». Чтобы сохранить ваше время я создал такую шпаргалку. Наслаждайтесь!
Читать дальше →
Total votes 312: ↑296 and ↓16+280
Comments99

Apache Kafka – мой конспект

Reading time9 min
Views326K
Это мой конспект, в котором коротко и по сути затрону такие понятия Kafka как:

— Тема (Topic)
— Подписчики (consumer)
— Издатель (producer)
— Группа (group), раздел (partition)
— Потоки (streams)

Kafka — основное


При изучении Kafka возникали вопросы, ответы на которые мне приходилось эксперементально получать на примерах, вот это и изложено в этом конспекте. Как стартовать и с чего начать я дам одну из ссылок ниже в материалах.

Apache Kafka – диспетчер сообщений на Java платформе. В Kafka есть тема сообщения в которую издатели пишут сообщения и есть подписчики в темах, которые читают эти сообщения, все сообщения в процессе диспетчеризации пишутся на диск и не зависит от потребителей.
Читать дальше →
Total votes 16: ↑15 and ↓1+14
Comments10

Клиент-сервер шаг — за — шагом, от однопоточного до многопоточного (Client-Server step by step)

Reading time11 min
Views260K

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


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

Читать дальше →
Total votes 18: ↑11 and ↓7+4
Comments23

Версионирование артефактов сборки в Gradle используя git имена тегов, бранчей и коммитов

Reading time5 min
Views11K
С переездом из SVN на GIT и gitlab (плюс переезд из Jenkins на Gitlab-CI, но его использование также упомянём), встал вопрос версионирования получаемых артефактов сборки приложения.

В SVN был всем привычный номер ревизии, монотонно увеличивающийся с каждым коммитом. Его было удобно добавлять в номер версии, и это решало большинство проблем. Но git конечно предоставляет множество плюшек, и стоило убеждать руководство и всё команду перевести проект на него…
Зато пришлось отстроить заново процесс версионирования получаемых артефактов сборки.

В итоге остановились на очень хорошем Gradle плагине github.com/nemerosa/versioning, о его использовании я и собираюсь рассказать.
Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments11

Ошибка gradle при создании проекта в Android Studio

Reading time1 min
Views12K
Всем привет!

Столкнулся с проблемой при создании нового проекта в среде Android Studio (на момент написание статьи версия 0.3.2).
Операционка Win 7x64, Android SDK v 22.2.1.
Проект никак не хотел создаваться вылетая с ошибкой: Could not GET 'http://repo1.maven.org/maven2/com/android/tools/build/gradle/'. Received status code 407 from server: Proxy Authentication Required

Сразу хочу сказать, что
Читать дальше →
Total votes 22: ↑7 and ↓15-8
Comments6

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity