Java
Ποιες αρχικές ενέργειες πρέπει να ληφθούν κατά την εξοικείωση με ένα ήδη αναπτυγμένο έργο;
Πώς μετρήσατε τη δυσκολία και την πρόοδο στην εκτέλεση των εργασιών στην προηγούμενη εργασία σας;
Πώς μπορεί να υπολογιστεί ο μέσος χρόνος απόκρισης του συστήματος;
Πώς υλοποιούνται και λειτουργούν οι ατομικές λειτουργίες με μεταβλητές σε ένα πολυνηματικό περιβάλλον;
Ποια είναι η κύρια λειτουργία της JVM και γιατί είναι σημαντική για την εκτέλεση των προγραμμάτων Java;
Πώς γίνεται η προσθήκη ενός στοιχείου στο HashMap όταν προκύπτει σύγκρουση κλειδιών;
Ποιοι τύποι έργων σας ενδιαφέρουν περισσότερο να υλοποιήσετε και γιατί;
Ποια είναι τα διαφορετικά σημεία στις προσεγγίσεις καθαρισμού της στοίβας σε C# και Java;
Ήταν σημαντική η σειρά των γεγονότων στο Kafka; Πώς διασφαλιζόταν;
Μπορείς να διαχειριστείς και να δημοσιεύσεις περιεχόμενο στα κοινωνικά δίκτυα;
Ποια είναι η εμπειρία σας στη ρύθμιση απομακρυσμένης αποσφαλμάτωσης εφαρμογών;
Ποια εργαλεία ή προσεγγίσεις χρησιμοποιήσατε για τη συλλογή και ανάλυση μετρικών στο τελευταίο σας έργο;
Πώς να προσδιορίσετε πότε μια κλάση ή ένα module εκτελεί πάρα πολλές λειτουργίες και παραβιάζει την αρχή της μοναδικής ευθύνης;
Ποια είναι η εμπειρία σας με προγράμματα πολλαπλών νημάτων και συγχρονισμό νημάτων;
Ποια είναι η κύρια λειτουργία του 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 και πώς χρησιμοποιείται για την απόκτηση δεδομένων.
Ποιοι μέθοδοι μπορούν να διασφαλίσουν τη σταθερότητα και τη συνεχή λειτουργία δύο Consumers που είναι εγγεγραμμένοι σε ένα Topic;
Ποια είναι η διαφορά στη χρήση του Aerospike σε σύγκριση με το Redis στο πλαίσιο της αποθήκευσης και επεξεργασίας δεδομένων;