Frontend
Είσαι έτοιμος να πας στο γραφείο τουλάχιστον για κάποιο χρονικό διάστημα;
Τι είναι ένας linter, για τι χρησιμοποιείται και ποια δημοφιλή linters γνωρίζετε;
Θα γίνει κλικ στο κουμπί αν το setTimeout τρέξει αναδρομικά;
Έχετε CI/CD; Χρησιμοποιείτε έναν στατικό αναλυτή κώδικα, όπως το SonarQube;
Γιατί αποφασίσατε να μεταβείτε από το σχεδιασμό στην ανάπτυξη frontend;
Γιατί χρειάζεται το React; Ποια προβλήματα λύνει; Πότε είναι περιττό;
Πώς καταλαβαίνεις αν ένα συστατικό χρειάζεται ανακατασκευή ή όχι;
//Υλοποιήστε μια λειτουργία debounce: καθυστερήστε την εκτέλεση μιας λειτουργίας μέχρι να περάσει ο καθορισμένος χρόνος //παράδειγμα const debouncedSearch = debounce((query) => { console.log('Αναζήτηση για:', query); }, 300); debouncedSearch('a'); debouncedSearch('ab'); debouncedSearch('abc'); // Θα εκτελεστεί μόνο μία φορά με 'abc' μετά από 300ms από την τελευταία κλήση
Ποια μορφή εργασίας προτιμάτε — υβριδική ή απομακρυσμένη;
Ποιες μεθόδους HTTP γνωρίζετε; Πώς διαφέρει το PUT από το PATCH;
Τι είναι το Vue Router και πώς λειτουργεί με τα δικά σας λόγια; Τι περιλαμβάνει συνήθως το αρχείο ρύθμισης του router (αρχείο index);
Χρειάζεται ξεχωριστή λειτουργία toggleLoading ή μπορεί να παραλειφθεί;
Γιατί να χρησιμοποιήσετε το track στους νέους βρόχους προτύπων Angular και σε ποιο πεδίο είναι καλύτερο να παρακολουθείτε τα στοιχεία; Τι συμβαίνει όταν γίνεται track με ένα αντικείμενο;
Πότε πρέπει να χρησιμοποιήσετε το useMemo; Αν περνάτε έναν πίνακα και ένα primitive στο παιδικό συστατικό, πού πρέπει να εφαρμόσετε το useMemo;
Συμφωνείτε με τη θέση ότι ένα καθολικό shared-component, που επαναλαμβάνεται σε διαφορετικά σημεία της εφαρμογής, και ένα βιβλιοθηκικό component, προορισμένο για εισαγωγή σε άλλες εφαρμογές, δεν είναι το ίδιο, και ότι η προσέγγισή τους πρέπει να διαφέρει; Ποια απαιτούμενα θα θέτατε σε ένα βιβλιοθηκικό component σε σύγκριση με ένα shared-component;
Τι γνώμη έχεις για τον legacy κώδικα;
Πώς υλοποιήθηκαν οι ξεχωριστές στυλ και εκδόσεις για desktop και mobile: όλα σε Vue ή χρησιμοποιήθηκαν διαφορετικές υλοποιήσεις;
Ποια είναι η βασική διαφορά μεταξύ αποθήκευσης δεδομένων σε localStorage και σε cookies;
Ορίστε τη σειρά εμφάνισης στην κονσόλα για τον κώδικα με setTimeout, Promise, then, catch, finally και διάφορες συγχρονικές κλήσεις (άσκηση για το Event Loop).
Εξηγήστε τη συμπεριφορά του ακόλουθου κώδικα JavaScript Promise και τι θα καταγραφεί στην κονσόλα: ```javascript let promise = new Promise((resolve, reject) => { resolve("ok"); }) promise .then(result => `${result} one`) .then(result => `${result} two`) .then(result => {return new Error('error')}) .finally((result) => console.log('finally', result)) .catch(err => console.error(err.message)) ```