TGViewer
Программист живёт нормально Программист живёт нормально @programmers_ed · 1.99K subscribers
Post #28 500
#junior #middle #Поговорим #Java
Многие знают, что первое, куда стоит заглядывать, если вы чего-то не понимаете в технологии или языке - это документация 🤖

Документация Java и Spring:
https://docs.oracle.com/en/java/javase/19/
https://docs.spring.io/spring-framework/docs/current/reference/html/

Далее я приведу пример на языке Java, но читателю достаточно понимания и общих принципов программирования

Возьмем HashMap - удобный способ хранения в Java данных в виде ассоциативного массива, то есть пар "ключ-значение". Например, в нем мы можем хранить оценки учеников: ["Петров": 5, "Иванов": 3, "Сидоров": 2]

Поиск в таком ассоциативном массиве осуществляется по ключу (в нашем случае, фамилия школьника). А сам алгоритм поиска основан на работе корзин (buckets) и хэшкодов (hashcode). Количество таких корзин по-умолчанию задано в Java жестко. Более того, часто на собеседованиях я слышал вопрос: "Может быть, помните изначальное количество корзин в HashMap?" 😳

Давайте постараемся "вспомнить"

Есть три варианта это сделать. Я называю их первичным, вторичным и третичным ♨️

Третичным вариантом пользуемся мы все: бежим в гугл и ищем информацию о количестве корзин. Я уверен, что вы найдете информацию на первом же сайте (как ее нашел я).
Чем хороша такая информация? Она написана на вашем родном языке и, скорее всего, написана на вашем уровне. Более того, наш с вами канал - тоже источник третичной информации. Минусы тоже очевидны: информация может быть неактуальной или вовсе неверной. Стоит все перепроверять ⚠️

Вторичным источником можно назвать официальную документацию. Чаще всего такая документация описана на английском, но иногда она переводится и на другие языки (пример: документация по vue.JS). Из плюсов: шансы найти в ней ошибку минимальны. Минусы: чаще всего это прямое пересказывание кода.

Первичным источником информации является КОД. Да, написанный разработчиками код, в котором есть и описания на английском языке, и, что самое важное, все переменные, методы и функции 🌪

Хороший код, во многом, самодокументируемый. Это значит, что открывая его, вы в целом будете понимать, о чем идет речь (если у вас есть достаточно опыта в разработке). Посмотрите на третий скриншот, тут напрямую говорится о том, что "вместимость HashMap" равна 16. Это и есть ответ на наш вопрос.
Изучая настоящий код Java (или любого другого языка), вы получаете сразу три бенефита:

⚠️ Ответ на свой вопрос
🐣 Понимание устройства языка, его структуры
♨️ Способность читать чужой код

И третий из них, по моему мнению, просто невероятно важен каждому программисту.

Да, ключевым минусом тут является то, что вам придется разбираться даже не в английском тексте, а напрямую в коде, но вы же для этого и учились?

Читайте первичные источники информации!
  • 👍 4
More from @programmers_ed
  1. Jun 12, 2026За 2025 и часть 2026 удалось выделить прилично времени на различное обучение. Тут и обучен…
  2. May 17, 2026Решил для себя, что максимально оттяну момент, когда начну в работе использовать ИИ-агенты…
  3. Mar 23, 2026Пришло время рассказать о моем обучении на мини-курсе Стратоплана «Основа», который стал п…
  4. Mar 22, 2026Недавно осознал такую мысль Пока ты начинаешь осваивать программирование - некоторые подхо…
  5. Feb 4, 2026Ну что, мое обучение в Стратоплане продолжается На этот раз успели разобрать много полезно…
  6. Feb 1, 2026Post #434
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →