Java
Ülesanne oli sõnastatud kui "latentsi vähendamine", ja kas otsisite lahendust ise?
Kas kunagi mänginud funktsioonijuhi rolli?
Kuidas töötab Kafka + Redis sorted set + väline planeerija viivitusega teavituste jaoks?
Milliseid prügikoristajaid (Garbage Collectors) teate Java-s? Kas on soovitusi erinevat tüüpi kasutamiseks?
Kas teil on kogemusi AI/ML toodetega?
Mis on eelistatud virnas?
Räägi mulle arendusprotsessist (Agile/Scrum). Kuidas ülesandeid hinnatakse?
7. Sa testite uue toote lisamise vormi administraatoripaneelis. Loote uue toote, klikinot Salvesta nuppu ja näete valget tühja ekraani. Kirjeldage oma edasisi samme.
Millised on kaks peamist operatsioonitüüpi Stream API-s?
Kas kunagi töötas Spring Data ja Hibernate'iga? Milliseid jõudlusega seotud probleeme lahendasite?
Andke näide, millal mikroteenuste arhitektuuri ei ole vaja kasutada, ning nimetage paar põhjust.
Milliste ülesannete jaoks sobib Istio?
Rakendage LRU-vahemälu koos vanade väärtuste väljaheitmisega (põhiväljaandmine)
Millised Kafka teemad on aruandlusüsteemis, kes neid toodab ja kes tarbib?
Kirjutage SQL-päring: valige kõigi raamatute pealkirjad, millel on rohkem kui kolm autorit.
Kas on võimalik kasutada volatile long muutujale ja millistes olukordades see on ohutu?
/** * Liides ATM-i riistvara osaga suhtlemiseks. */ interface Hardware { /** * Tagastab massiivi, mis näitab kupüüride arvu nominaalidega 50, 100, 500, 1000, 5000. * Meetod töötab aeglaselt ja tekitab müra. * * @return massiiv, kus iga element vastab kindla nominaali kupüüride arvule. * Näiteks, [10, 20, 30, 40, 50] tähendab: * - 10 kupüüri nominaaliga 50 rubla * - 20 kupüüri nominaaliga 100 rubla * - 30 kupüüri nominaaliga 500 rubla * - 40 kupüüri nominaaliga 1000 rubla * - 50 kupüüri nominaaliga 5000 rubla */ int[] getBillsCounts(); /** * Laadib välja antud kupüürid väljapakkekastile. * * @param billsCounts massiiv kupüüride arvuga vastavalt nominaalidele [50, 100, 500, 1000, 5000]. * Näiteks, [0, 1, 0, 2, 0] tähendab: * - 0 kupüüri nominaaliga 50 rubla * - 1 kupüür nominaaliga 100 rubla * - 0 kupüüri nominaaliga 500 rubla * - 2 kupüüri nominaaliga 1000 rubla * - 0 kupüüri nominaaliga 5000 rubla */ void giveBills(int[] billsCounts); } /** * Klass, mis realiseerib ATM-i töö loogika. * Siia tuleb kirjutada kood */ class MyATM { /** * ATM-i riistvara osa. */ 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; } }
Millal tuleks rakendada Dependency Inversion põhimõtet ja millal mitte (seos YAGNI-ga)
Millised scope'id on Springis? Mis on singleton scope?
Räägi CAP teoreemist. Mis see on ja milleks see on vajalik?