Java
Sono necessari indici in questo compito e su quali campi? Quali indici vengono creati di default? Da quale versione di PostgreSQL viene creato automaticamente un indice sul vincolo esterno?
È possibile usare volatile per una variabile long e in quali scenari è sicuro farlo?
Kafka vs RabbitMQ — differenze. Come funzionano i gruppi di consumer in Kafka?
/** * Interfaccia per interagire con l'hardware del bancomat. */ interface Hardware { /** * Restituisce un array con il numero di banconote per denominazioni 50, 100, 500, 1000, 5000. * Il metodo funziona lentamente e genera rumore. * * @return array in cui ogni elemento corrisponde al numero di banconote di una denominazione specifica. * Ad esempio, [10, 20, 30, 40, 50] significa: * - 10 banconote da 50 rubli * - 20 banconote da 100 rubli * - 30 banconote da 500 rubli * - 40 banconote da 1000 rubli * - 50 banconote da 5000 rubli */ int[] getBillsCounts(); /** * Carica nella cassa le banconote indicate. * * @param billsCounts array con il numero di banconote per denominazioni [50, 100, 500, 1000, 5000]. * Ad esempio, [0, 1, 0, 2, 0] significa: * - 0 banconote da 50 rubli * - 1 banconota da 100 rubli * - 0 banconote da 500 rubli * - 2 banconote da 1000 rubli * - 0 banconote da 5000 rubli */ void giveBills(int[] billsCounts); } /** * Classe per implementare la logica del bancomat. * Qui si deve scrivere il codice */ class MyATM { /** * Hardware del bancomat. */ 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; } }
Quando applicare il principio di Inversione delle Dipendenze e quando no (relazione con YAGNI)
[nome] ha chiesto: parlami di te e dell'ultimo progetto legato alla finanza
Parlami di un compito super complicato che hai risolto dopo averci lavorato a lungo.
Cosa dà l'annotazione @Transactional in questo contesto? Aiuterà in caso di fallimento di un servizio esterno?
Indica un miglioramento tecnico che hai apportato al progetto oltre alle attività di business.
Cos'è doOnNext in Reactor?
Cosa significa propagation quando un metodo viene chiamato dal contesto di una transazione già aperta?
Cosa sono i bean in Spring, come vengono creati e configurati?
Hai mai dovuto affrontare un OOM (OutOfMemoryError)? Come hai risolto i problemi di memoria?
Cos'è una String, perché è immutabile? Cosa succede durante la concatenazione?
Come erano organizzati i controlli sulla copertura dei test e le vulnerabilità nel pipeline CI?
Parla brevemente del progetto in [azienda] — cosa avete fatto lì?
Come Kafka mantiene l'ordine dei messaggi e garantisce che non vengano persi?
Domanda 9. Scrivi una query che restituisce i dipendenti con lo stipendio massimo nella loro posizione. Vai su onecompiler.com/postgresql Script di inizializzazione: CREATE TABLE users ( fio TEXT NOT NULL, position TEXT, salary BIGINT NOT NULL ); INSERT INTO users(fio, position, salary) VALUES ('Иванов', 'Тестировщик', 100000), ('Горохов', 'Тестировщик', 120000), ('Петров', 'Тестировщик', 140000), ('Сидоров', 'Тестировщик', 100000), ('Кузнецов', 'Тестировщик', 120000), ('Михайлов', 'Тестировщик', 150000), ('Антонов', 'Разработчик', 200000), ('Сухой', 'Разработчик', 100000), ('Микоян', 'Разработчик', 100000), ('Капустин', 'Директор', 300000), ('Астахов', 'ИБ', 200000); Esempio di risultato: Михайлов Тестировщик 150000 Антонов Разработчик 200000 Капустин Директор 300000 Астахов ИБ 200000 Tempo di esecuzione: 10 minuti. Scrivi la query nel campo:
Parla di un compito di cui sei più orgoglioso o che ti ha causato maggiori difficoltà.
Perché separare gli oggetti from e to (anziché lavorare direttamente con first e second)?