Java
Какви начални действия трябва да се предприемат при запознаване с вече разработен проект?
Как измервахте трудността и напредъка при изпълнение на задачите на предишното ви работно място?
Как може да се изчисли средното време за реакция на системата?
Как се реализират и работят атомарните операции с променливи в многопоточна среда?
Каква е основната функция на JVM и защо е важна за изпълнението на Java програми?
Как се добавя елемент към HashMap при сблъсък на ключове?
Какви видове проекти ви интересуват най-много и защо?
Какви са разликите в подходите за почистване на стека в езиците C# и Java?
Важен ли беше редът на събитията в Kafka? Как се осигуряваше?
Можеш ли да управляваш и публикуваш съдържание в социалните мрежи?
Какъв е вашият опит в настройването на отдалечена отстраняване на грешки в приложения?
Какви инструменти или подходи използвахте за събиране и анализ на метрики в последния ви проект?
Как да определите кога един клас или модул изпълнява твърде много функции и нарушава принципа на единствената отговорност?
Какъв е вашият опит с многопоточни програми и синхронизация на потоци?
Каква е основната функция на ORM в разработката на софтуер?
Как се определя кой индекс трябва да се създаде за оптимизиране на работата на базата данни?
/** * Интерфейс за взаимодействие с хардуера на банкомата. */ interface Hardware { /** * Връща масив с броя на банкнотите по номинали 50, 100, 500, 1000, 5000. * Методът работи бавно и създава шум. * * @return масив, където всеки елемент съответства на броя на банкнотите за даден номинал. * Например, [10, 20, 30, 40, 50] означава: * - 10 банкноти от 50 рубли * - 20 банкноти от 100 рубли * - 30 банкноти от 500 рубли * - 40 банкноти от 1000 рубли * - 50 банкноти от 5000 рубли */ int[] getBillsCounts(); /** * Зарежда в изходящия кутия посочените банкноти. * * @param billsCounts масив с броя на банкнотите по номинали [50, 100, 500, 1000, 5000]. * Например, [0, 1, 0, 2, 0] означава: * - 0 банкноти от 50 * - 1 банкнота от 100 * - 0 банкноти от 500 * - 2 банкноти от 1000 * - 0 банкноти от 5000 */ void giveBills(int[] billsCounts); } /** * Клас за реализиране на логиката на банкомата. * Тук трябва да се напише код */ class MyATM { /** * Хардуер на банкомата. */ Hardware hardware; public boolean withdraw(int amount) { int[] counts = hardware.getBillsCounts(); int[] nom = {50, 100, 500, 1000, 5000}; int[] toGive = new int[5]; for (int i = 4; i >= 0; i--) { int needed = amount / nom[i]; int use = Math.min(needed, counts[i]); toGive[i] = use; amount -= use * nom[i]; } if (amount != 0) { return false; } hardware.giveBills(toGive); return true; } }
Обяснете какво се разбира под Query в контекста на Hibernate и как се използва за получаване на данни.
Какви методи могат да гарантират стабилността и непрекъснатата работа на двама Consumer, подписани на една и съща Topic?
Каква е разликата между използването на Aerospike и Redis в контекста на съхранението и обработката на данни?