cookie

We use cookies to improve your browsing experience. By clicking «Accept all», you agree to the use of cookies.

avatar

Библиотека собеса по Java | вопросы с собеседований

Вопросы с собеседований по Java и ответы на них. Список наших каналов: https://t.me/proglibrary/9197 Учиться у нас: https://proglib.io/w/08c603b6 Обратная связь: @proglibrary_feedback_bot По рекламе: @proglib_adv Прайс: @proglib_advertising

Show more
Advertising posts
5 323
Subscribers
+924 hours
+907 days
+13930 days

Data loading in progress...

Subscriber growth rate

Data loading in progress...

Что такое Unit Tests? Unit-тесты — это тесты, которые проверяют работу отдельных, минимальных единиц кода (обычно это отдельные методы или классы). Они помогают убедиться, что каждый модуль работает корректно в изоляции от других. Ключевые особенности: 🧩 Изоляция: Unit-тесты должны быть независимы от внешних зависимостей, таких как базы данных или сетевые запросы. Для этого используются такие техники, как mocking (например, с помощью Mockito). 🚀 Быстрота выполнения: Unit-тесты должны выполняться быстро. Если тест медленный, это признак, что он может быть слишком сложным или зависим от внешних ресурсов. 🔄 Покрытие кода: Основная цель unit-тестов — максимальное покрытие ключевой логики программы, но не за счёт избыточности. Правильный баланс между покрытием и поддерживаемостью критически важен.
Show all...
👍 5❤‍🔥 1🔥 1
Photo unavailableShow in Telegram
🙌 Хардкорный вышмат для тех, кто интересуется ML, AI, DS Начать с вводных занятий можно здесь, ответив всего на 4 вопроса – https://proglib.io/w/12f47906 Что будет на демо? 🔹Вводный урок от CPO курса; 🔹Лекции со всеми преподавателями МГУ по темам: теория множеств, непрерывность функции, основные формулы комбинаторики, матрицы и операции над ними, градиентный спуск; 🔹Практические задания и дополнительные материалы! ⚡️Переходите и активируйте – https://proglib.io/w/12f47906
Show all...
❗Вакансии «Библиотеки программиста» — ждем вас в команде! Мы постоянно растем и развиваемся, поэтому создали отдельную страницу, на которой будут размещены наши актуальные вакансии. Сейчас мы ищем: 👉контент-менеджеров для ведения телеграм-каналов Подробности тут Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴 Ждем ваших откликов 👾
Show all...
Какая разница между java.util.Collection и java.util.Collections? 🔵 java.util.Collection — это интерфейс, который является основой для всех коллекций в Java. Он определяет общие методы, такие как add(), remove(), size(), и служит для работы с коллекциями объектов. Реализуется такими классами, как ArrayList, HashSet и другими. Когда нужно работать с базовыми операциями коллекций — добавление, удаление, проверка размера и т. д. 🔵 java.util.Collectionsэто утилитарный класс, который предоставляет набор статических методов для работы с коллекциями. Эти методы позволяют сортировать коллекции, синхронизировать их или возвращать неизменяемые версии коллекций. Когда нужно выполнять операции над коллекциями, такие как сортировка, синхронизация или создание неизменяемых коллекций. 🚀 Главное отличие: Collection — это интерфейс, определяющий поведение коллекций. Collections — это класс, предоставляющий вспомогательные методы для работы с коллекциями.
Show all...
👍 16 1🔥 1
Что такое bytecode? Bytecode — это набор инструкций, которые виртуальная машина Java (JVM) использует для выполнения программ. При компиляции Java-код, не превращается сразу в машинный код, а сначала в bytecode. JVM переводит этот bytecode в машинный код уже во время исполнения программы, что делает Java независимой от платформы — один и тот же байт-код может быть выполнен на любой системе, где есть JVM. ⚙️ Этот подход позволяет добиться переносимости Java-приложений на различные операционные системы без изменения исходного кода.
Show all...
👍 14 6🔥 3
Как устроен под капотом ArrayList? ArrayList — это реализация динамического массива в Java. Он базируется на массиве, который может изменять свой размер по мере добавления элементов. 🔹 Массив как основа В основе ArrayList лежит массив типа Object[]. Этот массив инициализируется с начальной емкостью (по умолчанию 10, если не указано иное). 🔹 Динамическое изменение размера Когда добавляется элемент, а текущий массив заполнен, ArrayList расширяет массив, создавая новый с увеличенной емкостью — обычно это 1.5x от текущего размера. Старые данные копируются в новый массив с помощью System.arraycopy. 🔹 Добавление элементов ▪️ В среднем: добавление элемента занимает O(1), потому что в большинстве случаев просто добавляется новый элемент в конец массива, без необходимости его увеличения. ▪️ В худшем случае: добавление элемента может занять O(n), потому что, если внутренний массив переполняется, ArrayList вынужден создать новый массив большего размера и скопировать в него все существующие элементы. 🔹 Удаление элементов При удалении элемента сдвигаются все последующие элементы на одну позицию влево, что приводит к сложностям: ▪️ Удаление по индексу: O(n) в худшем случае (сдвиг элементов после удаленного). ▪️ Удаление последнего элемента: O(1). 🔹Преимущества и недостатки ▪️ Преимущества: Быстрое добавление в конец, быстрый доступ по индексу O(1). ▪️ Недостатки: Медленное удаление или вставка в середине массива O(n), особенно при работе с большими коллекциями.
Show all...
👍 13🔥 3 2
Что такое монолит? Монолит — это архитектурный стиль, при котором приложение представляет собой единое целое, в котором все модули и компоненты тесно связаны друг с другом и работают как одна программа. Все функциональные части приложения, такие как интерфейс пользователя, бизнес-логика и доступ к данным, объединены в одном проекте и деплоятся одновременно. 🔹 Ключевые особенности: ▪️ Единая кодовая база. ▪️ Центральная точка развертывания. ▪️ Тесная взаимозависимость модулей. ▪️ Масштабируется как единое приложение. 🔹 Плюсы: ▪️ Простота разработки на начальных этапах. ▪️ Легко управлять одной кодовой базой. ▪️ Отсутствие необходимости в сложной инфраструктуре. 🔹 Минусы: ▪️ Сложность масштабирования по частям. ▪️ Высокая связанность увеличивает риски при изменениях. ▪️ Затруднена разработка и развертывание отдельных компонентов.
Show all...
👍 10 5🔥 2
Singleton и его реализации в многопоточной среде Паттерн Singleton используется для того, чтобы гарантировать, что класс имеет только один экземпляр, и предоставляет глобальную точку доступа к этому экземпляру. В многопоточной среде важным аспектом является правильная синхронизация при создании экземпляра. Один из популярных способов реализации — это Double-Checked Locking. Он заключается в том, что проверка на существование экземпляра класса производится дважды: до блокировки и после. Это позволяет минимизировать количество синхронизаций, сохраняя потокобезопасность. Пример реализации:
javapublic class Singleton {private static volatile Singleton instance;private Singleton() {}public static Singleton getInstance() {if (instance == null) {synchronized (Singleton.class) {if (instance == null) {instance = new Singleton();}}}return instance;}}
Здесь ключевую роль играет ключевое слово volatile, которое предотвращает оптимизацию кэша и гарантирует корректную видимость изменений в разных потоках.
Show all...
👍 17 3🔥 1👏 1🎉 1
Что делает метод Thread.yield()? Метод yield() — это статический метод класса Thread, который даёт возможность текущему потоку «уступить» своё время процессора другим потокам того же приоритета. Когда поток вызывает этот метод, он переходит в состояние готовности (runnable) и ждёт, пока планировщик потоков вновь даст ему доступ к CPU. Важно отметить, что вызов yield() — это лишь рекомендация, а не обязательное действие для планировщика потоков, и его поведение зависит от реализации JVM.
Show all...
👍 7🔥 2❤‍🔥 1👏 1
Самые полезные каналы для программистов в одной подборке! Сохраняйте себе, чтобы не потерять 💾 🔥Для всех Библиотека программиста — новости, статьи, досуг, фундаментальные темы Книги для программистов IT-мемы Proglib Academy — тут мы рассказываем про обучение и курсы Азбука айтишника — здесь мы познаем азы из мира программирования 🤖Про нейросети Библиотека робототехники и беспилотников | Роботы, ИИ, интернет вещей Библиотека нейрозвука | Транскрибация, синтез речи, ИИ-музыка Библиотека нейротекста | ChatGPT, Gemini, Bing Библиотека нейровидео | Sora AI, Runway ML, дипфейки Библиотека нейрокартинок | Midjourney, DALL-E, Stable Diffusion #️⃣C# Книги для шарпистов | C#, .NET, F# Библиотека шарписта — полезные статьи, новости и обучающие материалы по C# Библиотека задач по C# — код, квизы и тесты Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel ☁️DevOps Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps Вакансии по DevOps & SRE Библиотека задач по DevOps — код, квизы и тесты Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования 🐘PHP Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP Вакансии по PHP, Symfony, Laravel Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по PHP — код, квизы и тесты 🐍Python Библиотека питониста — полезные статьи, новости и обучающие материалы по Python Вакансии по питону, Django, Flask Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по Python — код, квизы и тесты ☕Java Книги для джавистов | Java Библиотека джависта — полезные статьи по Java, новости и обучающие материалы Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по Java — код, квизы и тесты Вакансии для java-разработчиков 👾Data Science Книги для дата сайентистов | Data Science Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по Data Science — код, квизы и тесты Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту 🦫Go Книги для Go разработчиков Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по Go — код, квизы и тесты Вакансии по Go 🧠C++ Книги для C/C++ разработчиков Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++ Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по C++ — код, квизы и тесты Вакансии по C++ 💻Другие каналы Библиотека фронтендера Библиотека мобильного разработчика Библиотека хакера Библиотека тестировщика Вакансии по фронтенду, джаваскрипт, React, Angular, Vue Вакансии для мобильных разработчиков Вакансии по QA тестированию InfoSec Jobs — вакансии по информационной безопасности Библиотека разработчика игр | Gamedev, Unity, Unreal Engine 📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈 Также у нас есть боты: Бот с IT-вакансиями Бот с мероприятиями в сфере IT Мы в других соцсетях: 🔸VK 🔸YouTube 🔸Дзен 🔸Facebook * 🔸Instagram * * Организация Meta запрещена на территории РФ
Show all...
👍 3 2🔥 2👾 1
Choose a Different Plan

Your current plan allows analytics for only 5 channels. To get more, please choose a different plan.