ASTAKHOV_JAVA_LAB
212 subscribers
59 photos
6 videos
1 file
22 links
🚀 Школа чистого кода Сергея Астахова
✔️Освещаю свою историю успеха
✔️Делюсь лайфхаками
✔️Обучаю детей понимать и программировать
✔️Создаю комьюнити
Download Telegram
🔥Почему многопоточность в Java — это боль?

Многопоточность — это когда программа выполняет несколько задач “параллельно” (ну или почти параллельно). Вместо того чтобы делать всё по очереди, как в однопоточном коде, мы запускаем несколько "потоков выполнения" — как будто раздаём задачи разным работникам.

1. Непредсказуемость
Потоки выполняются в случайном порядке, как коты, которым дали вкусняшку. Результат? Гонки данных, NullPointerException в самый неожиданный момент и прочие "сюрпризы".

2. Deadlock — как два упрямца в дверях
Представьте: один поток схватил ресурс A и тянется к B, а другой уже держит B и хочет A. Они так и будут вечно стоять, упершись лбами, как два кота в дверном проеме. Никто не хочет уступать — классический пат!

3. Сложно отлаживать
Ошибки могут проявляться раз в 1000 запусков. Попробуй поймать баг, который возникает только у заказчика в полночь на пятницу 13-го.

4. JVM "оптимизирует" код
Перестановка инструкций, кэширование переменных — иногда кажется, что Java сама не знает, что делает.

Вывод
Многопоточность — это мощно, но опасно. Если не разобраться как следует, можно наломать дров.


https://vk.com/club_javalab

#Java #Многопоточность #Программирование #Юмор #Deadlock #ГонкаДанных #JVM #Кодинг #Разработка #IT #Программисты #Технологии #Код #Багфиксинг #Оптимизация
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍4🔥3
Знаете, как проверяют, что приложение в телефоне работает без сбоев? 📱
Я сходил на встречу таких специалистов — тестировщиков . Они ищут баги 🐞, чтобы у нас всё «летало» ✈️.


1. Про рекламу в играх и приложениях 🎮
Оказывается, нужно проверить миллион мелочей: чтобы объявление не выскакивало в самый ответственный момент (например, при победе 🏆), чтобы кнопка «закрыть» была заметной 👆, и чтобы после просмотра вас действительно награждали . Целая наука!

2. Про скорость проверок
Представьте: программисты каждый день вносят изменения в приложение. Чтобы всё не развалилось, его постоянно тестируют. И делают это не только люди, но и специальные программы-роботы 🤖. Их нужно настроить так, чтобы они работали быстро и без ошибок. Как спортивная команда — нужна слаженность .

3. Про «ферму телефонов» 📱
Это выглядит футуристично: много разных смартфонов, подключённых к компьютеру . На них одновременно запускают новую версию приложения и смотрят, как оно себя ведёт на каждом. Как будто стресс-тест для гаджетов!

4. Про чек-листы
Даже у роботов-тестировщиков есть подробный план действий — что и в каком порядке проверять. Его сначала пишут обычным языком, а потом превращают в код. Как рецепт с пошаговыми инструкциями ✏️➡️👨‍💻.

Зачем я об этом пишу?
Потому что за всем этим — и играми, и соцсетями, и банковскими приложениями — стоят не только дизайнеры и программисты, но и тестировщики . А ещё потому, что основа большинства таких «роботов-у помощников» — программирование. Та самая Java, которую мы изучаем, может управлять целой фермой телефонов или проверять, правильно ли работает кнопка в вашем любимом приложении .

Было здорово увидеть, как теория становится практикой где-то рядом . Все доклады были живыми и интересными — чувствовался настоящий азарт и любовь к своему делу! ❤️‍🔥

vk.com/club_javalab

#Технологии #Программирование #КакЭтоУстроено #Образование #Интересное #IT #ОбъясняемПросто #Java
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥843👍1💯1