Sobes.tech

Ποια άλλα κριτήρια θα μπορούσατε να αναφέρετε για ένα καλό συστατικό βιβλιοθήκης;

263

Πες μου για τη συγγραφή μονάδων δοκιμών: πότε, κατά τη γνώμη σου, πρέπει μια δοκιμή να αποτύχει; Τι ακριβώς πρέπει να ελέγχει μια μονάδα δοκιμής για μια κλάση που δοκιμάζεται σύμφωνα με το σχολείο του Λονδίνου (με όλες τις εξαρτήσεις να είναι mocked);

182

Άρχισες να μαθαίνεις React, και το React είναι πιο δημοφιλές και υπάρχουν περισσότερες ευκαιρίες εργασίας. Γιατί τελικά μεταβήκες σε Angular;

182

Συγκρίνετε την εισαγωγή εξαρτήσεων μέσω παραμέτρων κατασκευαστή και μέσω της λειτουργίας inject: ποια είναι τα πλεονεκτήματα και τα μειονεκτήματα κάθε προσέγγισης;

161

Αναλύστε αυτήν την προσέγγιση από την άποψη της ανάμειξης ευθυνών: τι έχει γίνει λάθος εδώ και πώς θα το εξηγούσατε από την άποψη των αρχιτεκτονικών αρχών (ειδικά, την Αρχή της Μοναδικής Ευθύνης και τον διαχωρισμό παρουσίασης και μοντέλου);

161

Μπορείτε να απαριθμήσετε όλες τις τεχνικές λύσεις σε αυτό το πρόβλημα (εκτός από την αντικατάσταση του πεδίου με ένα σήμα);

154

Πείτε μας περισσότερα για τη χρήση του async pipe και της χειροκίνητης εγγραφής: τι ακριβώς πρέπει να κάνετε ώστε η τιμή να εμφανίζεται σωστά στο πρότυπο (συμπεριλαμβανομένης της εργασίας με την εγγραφή και την ακύρωσή της μέσω takeUntilDestroy ή ngOnDestroy);

146

Αν το πρότυπο δεν γνωρίζει ότι η τιμή έχει αλλάξει, γιατί η προσθήκη του pipe async στο πρότυπο λύνει το πρόβλημα της αντιδραστικότητας; Πώς λειτουργεί αυτό στο παρασκήνιο;

143

Έχετε κριτήρια βάσει πρακτικής για το πού είναι κατάλληλο και πού όχι να εφαρμόσετε την κληρονομιά;

139

Στο βιογραφικό σας αναφέρετε ότι ενημερώσατε το Angular από την έκδοση 14 έως την 20. Περιγράψτε ένα πρόβλημα που προέκυψε κατά την ενημέρωση του Angular σε ένα έργο - μια ιστορία από την πρακτική σας εμπειρία.

138

Γιατί είναι απαραίτητη η κληρονομικότητα στην αντικειμενοστραφή προγραμματισμό; Δώστε μια αιτιολόγηση γιατί χρησιμοποιείται, αν η εργασία επαναχρησιμοποίησης λογικής μπορεί να λυθεί και με άλλους τρόπους (π.χ., μέσω DI).

137

Μπορείτε να δώσετε ένα συγκεκριμένο παράδειγμα βιβλιοθήκης που δεν επέτρεπε την ολοκλήρωση της κατασκευής κατά την ενημέρωση του Angular (π.χ., στην έκδοση 16); Ποιο ήταν ακριβώς το πρόβλημα και πώς το λύσατε;

136

Γιατί όταν χρησιμοποιείτε σήμα και καλείτε τη μέθοδο set, η τιμή ενημερώνεται στο πρότυπο, αλλά όταν απλά αναθέτετε this.token = string - όχι; Εξηγήστε το σε επίπεδο της αντίληψης αλλαγής.

135

Είστε εξοικειωμένοι με διαγράμματα κλάσεων UML; Έχετε ασχοληθεί με τύπους σχέσεων όπως συσχέτιση, σύνθεση, συσσώρευση, γενίκευση;

128

Είπατε ότι γράψατε τις δοκιμές με τη βοήθεια ενός νευρωνικού δικτύου. Αν το νευρωνικό δίκτυο δημιούργησε δοκιμές που αποτυγχάνουν με οποιαδήποτε αλλαγή στον κώδικα της κλάσης, επιτυγχάνουν αυτοί οι δοκιμές τον σκοπό τους; Είναι χρήσιμες;

127

Στην προηγούμενη θέση εργασίας σας, είπατε ότι το μέρος του frontend ήταν σχετικά μικρό, αλλά ασχολούνταν 6 frontend developers. Από πού προήλθε ακριβώς η ομάδα των 6 ατόμων και πώς σχετίζεται με την συνολική ομάδα frontend της εταιρείας;

127

Γιατί επέλεξες συγκεκριμένα την ανάπτυξη ιστού και Angular, αντί για, για παράδειγμα, την ανάπτυξη κινητών;

126

Αν έπρεπε να μετρήσετε τον αριθμό των γραμμών κώδικα σε ένα έργο, πώς θα προσεγγίζατε αυτό το έργο; Πώς θα διατυπώνατε ένα ερώτημα για την εύρεση λύσης ή για ένα νευρωνικό δίκτυο;

126

Φανταστείτε ένα σενάριο: ένας πιο έμπειρος προγραμματιστής λαμβάνει έναν junior με την εργασία να δημιουργήσει ένα Angular συστατικό με ένα πεδίο για την εμφάνιση ενός token και ένα κουμπί 'δημιουργία token'. Όταν πατηθεί το κουμπί, αποστέλλεται ένα αίτημα στον διακομιστή, λαμβάνεται ένα token, και ο junior γράφει this.token = η ληφθείσα συμβολοσειρά, αλλά η τιμή δεν εμφανίζεται και η σελίδα δεν ανανεώνεται. Τι θα προτείνατε για την επίλυση αυτού του προβλήματος και ποιες προσεγγίσεις υπάρχουν για να το διορθώσετε;

125

Πείτε μας πώς μπήκατε στη βιομηχανία ανάπτυξης: πώς εκπαιδεύτηκατε, πώς βρήκατε την πρώτη σας δουλειά, λαμβάνοντας υπόψη ότι στο βιογραφικό σας αναφέρεται μη τεχνικό επάγγελμα;

119
/2