Java
Milyen kezdő lépéseket kell tenni egy már fejlesztett projekt megismerésekor?
Hogyan mérte a feladatok nehézségét és előrehaladását a korábbi munkahelyén?
Hogyan számolható ki a rendszer átlagos válaszideje?
Hogyan valósulnak meg és működnek az atomikus műveletek változókkal több szálas környezetben?
Mi a JVM fő funkciója, és miért fontos a Java programok futtatásához?
Hogyan történik egy elem hozzáadása a HashMap-hez kulcscsere esetén?
Milyen típusú projekteket a leginkább szeretne megvalósítani, és miért?
Miben különböznek a C# és Java nyelvek verem tisztítási megközelítései?
Fontos volt-e az események sorrendje a Kafka-ban? Hogyan biztosították?
Képes vagy kezelni és közzétenni tartalmat a közösségi médiában?
Milyen tapasztalata van az alkalmazások távoli hibakeresésének beállításában?
Milyen eszközöket vagy megközelítéseket alkalmazott az utolsó projektjében a metrikák gyűjtésére és elemzésére?
Hogyan lehet meghatározni, mikor egy osztály vagy modul végez túl sok funkciót, és sérti az egység felelősség elvét?
Milyen tapasztalatai vannak több szálas programokkal és szálak szinkronizálásával kapcsolatban?
Mi az ORM fő funkciója a szoftverfejlesztésben?
Hogyan határozza meg, hogy melyik indexet kell létrehozni az adatbázis működésének optimalizálásához?
/** * Interfész a bankautomata hardverével való interakcióhoz. */ interface Hardware { /** * Visszaad egy tömböt, amely tartalmazza a bankjegyek számát a 50, 100, 500, 1000, 5000 értékek szerint. * A metódus lassan működik és zajt generál. * * @return tömb, ahol minden elem egy adott címletű bankjegyek számát fejezi ki. * Például, [10, 20, 30, 40, 50] jelentése: * - 10 bankjegy 50 rubel * - 20 bankjegy 100 rubel * - 30 bankjegy 500 rubel * - 40 bankjegy 1000 rubel * - 50 bankjegy 5000 rubel */ int[] getBillsCounts(); /** * Betölti a kijelzőbe a megadott bankjegyeket. * * @param billsCounts tömb, amely tartalmazza a bankjegyek számát a [50, 100, 500, 1000, 5000] címletek szerint. * Például, [0, 1, 0, 2, 0] jelentése: * - 0 bankjegy 50 rubel * - 1 bankjegy 100 rubel * - 0 bankjegy 500 rubel * - 2 bankjegy 1000 rubel * - 0 bankjegy 5000 rubel */ void giveBills(int[] billsCounts); } /** * A bankautomata működésének logikáját megvalósító osztály. * Itt kell írni a kódot */ class MyATM { /** * A hardver része. */ 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; } }
Magyarázza el, hogy a Hibernate kontextusában mit értünk Query alatt, és hogyan használják az adatok lekérésére.
Milyen módszerekkel garantálható két Consumer stabilitása és folyamatos működése, akik ugyanarra a Topic-ra iratkoztak fel?
Mi a különbség az Aerospike és a Redis használata között az adatok tárolásának és feldolgozásának kontextusában?