Pull to refresh
88
0
Дмитрий @blinky-z

User

Send message

Глубокое погружение в Java Memory Model

Reading time53 min
Views127K


Я провел в изучении JMM много часов и теперь делюсь с вами знаниями в простой и понятной форме.


В этой статье мы подробно разберем Java Memory Model (JMM) и применим полученные знания на практике. Да, в интернете накопилось достаточно много информации про JMM/happens-before, и, кажется, что очередную статью про такую заезженную тему можно пропускать мимо. Однако я постараюсь дать вам намного большее и глубокое понимание JMM, чем большинство информации в интернете. После прочтения этой статьи вы будете уверенно рассуждать о таких вещах как memory ordering, data race и happens-before. JMM — сложная тема и не стоит верить мне на слово, поэтому большинство моих утверждений подтверждается цитатами из спеки, дизассемблером и jcstress тестами.

Читать дальше →
Total votes 109: ↑109 and ↓0+109
Comments60

Жизнь современного разработчика в ЮMoney

Reading time9 min
Views5.8K

Всем привет! Я Дима, начинающий разработчик. В статье расскажу о своем первом опыте работы в крупной продуктовой IT-компании.

Я пришел в ЮMoney полгода назад, когда мне было 19 лет. А сейчас набрал достаточный опыт, чтобы рассказать про жизнь backend-разработчика в компании.

Читать статью
Total votes 23: ↑13 and ↓10+3
Comments31

Hello, World! Глубокое погружение в Терминалы

Reading time24 min
Views86K


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

Читать дальше →
Total votes 110: ↑110 and ↓0+110
Comments44

Мой опыт создания многопоточного приложения для работы с бэкапами

Reading time21 min
Views4.4K

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


  • Работает с бэкапами исключительно в памяти вне зависимости от размера бэкапа
  • Не загружает весь бэкап в память
  • Операции создания/восстановления бэкапа можно отменять

Под катом будет рассмотрена архитектура приложения, а также основные возникшие проблемы и их решение.

Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments2

Information

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