Об этом проекте
JavaGuide — это открытая база знаний и сборник учебных материалов преимущественно на китайском языке, предназначенная помочь разработчикам системно подготовиться к собеседованиям на позицию Java-бэкенд-разработчика и восполнить пробелы в технической системе бэкенда. Это не запускаемый программный проект, а постоянно поддерживаемый каталог технической документации с чёткой организацией: материалы разбиты по темам на множество независимых статей в формате Markdown, дополнены сайтом для онлайн-чтения и версией для интенсивной подготовки к собеседованиям.
Основное содержание включает:
- Подготовка к бэкенд-собеседованиям: план прохождения собеседований по Java-бэкенду, маршрут обучения, руководство по составлению резюме, руководство по описанию проектного опыта и т. д.
- Ключевые знания Java: базовый синтаксис, коллекции (включая анализ исходного кода ArrayList, HashMap, ConcurrentHashMap и др.), IO/NIO, конкурентное программирование (блокировки, CAS, JMM, пулы потоков, AQS и др.), JVM (области памяти, сборка мусора, загрузка классов), новые возможности от Java 8 до Java 25.
- Основы компьютерных наук: операционные системы, компьютерные сети, структуры данных и алгоритмы, с разбором типовых вопросов собеседований и важных концепций.
- Базы данных: основы реляционных баз данных, MySQL (индексы, транзакции, журналы, MVCC, план выполнения и др.), Redis (структуры данных, персистентность, кластеры и др.), MongoDB, а также материалы по Elasticsearch.
- Инструменты разработки: Maven, Gradle, Docker, Git.
- Проектирование систем: RESTful API, программная инженерия, стандарты кода, Spring/Spring Boot, MyBatis, аутентификация и авторизация, безопасность данных, задачи по расписанию, доставка сообщений в реальном времени и др.
- Распределённые системы: CAP/BASE, алгоритмы консенсуса, RPC, ZooKeeper, API-шлюзы, распределённые ID, распределённые блокировки, распределённые транзакции, центры конфигурации и др.
- Высокая производительность и высокая доступность: оптимизация баз данных, балансировка нагрузки, CDN, очереди сообщений (RabbitMQ, RocketMQ, Kafka, Disruptor), ограничение потока, деградация и предохранители, тайм-ауты и повторные попытки, аварийное восстановление и мультиактивные географически распределённые системы и др.
- Разработка AI-приложений: дополнительно открыт гид по разработке AI-приложений и собеседованиям для бэкенд-разработчиков, охватывающий практику LLM, Agent, RAG, MCP и др.
Проект также предоставляет сайт для онлайн-чтения, версии для скачивания в PDF и призывает вносить вклад через GitHub или Gitee. В целом он подходит разработчикам для подготовки к собеседованиям по Java-бэкенду, систематизации знаний по бэкенду или использования в качестве повседневного справочника.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.