Κορυφαίες 15 ερωτήσεις και απαντήσεις συνέντευξης Swift

Ακολουθούν ερωτήσεις και απαντήσεις συνέντευξης του Swift για νεοφώτιστους καθώς και έμπειρους υποψήφιους προγραμματιστές Swift για να πάρουν τη δουλειά των ονείρων τους.


1) Εξηγήστε τι είναι η γλώσσα προγραμματισμού Swift;

Η Swift είναι μια γλώσσα προγραμματισμού και σύστημα για τη δημιουργία εφαρμογών για iOS και OS X. Είναι μια καινοτόμος γλώσσα προγραμματισμού για το Cocoa και το Cocoa Touch.

Δωρεάν λήψη PDF: Ερωτήσεις και απαντήσεις για συνεντεύξεις iOS Swift


2) Εξηγήστε πώς ορίζετε τις μεταβλητές στη γλώσσα Swift;

Οι μεταβλητές και οι σταθερές πρέπει να δηλωθούν πριν χρησιμοποιηθούν. Ανακοινώνετε σταθερές με τη λέξη-κλειδί let και μεταβλητές με τη λέξη-κλειδί var. Τόσο οι μεταβλητές όσο και τα λεξικά περιγράφονται χρησιμοποιώντας αγκύλες. Για παράδειγμα, Var Guru99 = "This is Guru99" Έστω ksomeconstant = 30


3) Ποια είναι η σημασία του ";" γρήγορα;

Το ερωτηματικό κάνει μια ιδιότητα προαιρετική εάν δηλωθεί. Σε περίπτωση που το ακίνητο δεν έχει αξία, το "?" βοηθά στην αποφυγή σφαλμάτων χρόνου εκτέλεσης.


4) Αναφέρετε ποια είναι τα χαρακτηριστικά του Swift Programming;

  • Εξαλείφει ολόκληρες κατηγορίες μη ασφαλούς κώδικα
  • Οι μεταβλητές αρχικοποιούνται πάντα πριν από τη χρήση
  • Οι πίνακες και οι ακέραιοι ελέγχονται για υπερχείλιση
  • Η διαχείριση της μνήμης γίνεται αυτόματα
  • Αντί να χρησιμοποιεί τη δήλωση "if" στον προγραμματισμό υπό όρους, το swift έχει τη λειτουργία "switch".

5) Αναφέρετε ποια είναι η διαφορά μεταξύ της γλώσσας Swift και «Objective-C»;

Η διαφορά μεταξύ της γλώσσας 'C' και 'Swift' είναι αυτή

Swift Στόχος-Γ
Σε ένα swift, η μεταβλητή και οι σταθερές δηλώνονται πριν από τη χρήση τους Στον στόχο C, πρέπει να δηλώσετε τη μεταβλητή ως NSString και σταθερή ως int
Πρέπει να χρησιμοποιήσετε τη λέξη-κλειδί «let» για τη σταθερά και τη λέξη-κλειδί «var» για τη μεταβλητή Στον στόχο Γ, η μεταβλητή δηλώνεται ως "και σταθερή ως "
Δεν χρειάζεται να τερματίσετε τον κώδικα με άνω και κάτω τελεία Ο κωδικός τελειώνει με τελεία
Η συνένωση συμβολοσειρών είναι εύκολη και γρήγορη και επιτρέπει τη δημιουργία μιας νέας συμβολοσειράς από ένα μείγμα σταθερών, κυριολεκτικών, μεταβλητών, καθώς και εκφράσεων Στον στόχο C, πρέπει να επιλέξετε μεταξύ NSMutableString και NSString για να τροποποιηθεί η συμβολοσειρά.
Το Swift δεν απαιτεί τη δημιουργία ξεχωριστής διεπαφής όπως το Objective C. Μπορείτε να ορίσετε κλάσεις σε ένα μόνο αρχείο (.swift) Για τις κλάσεις, δημιουργείτε ξεχωριστά αρχεία διεπαφής (.h) και υλοποίησης (.m) για κλάσεις
Το Swift σάς δίνει τη δυνατότητα να ορίσετε μεθόδους σε κλάση, δομή ή απαρίθμηση Ο στόχος δεν το επιτρέπει
Στο Swift, χρησιμοποιείτε τον χειριστή " +=" για να προσθέσετε ένα στοιχείο Στο C, χρησιμοποιείτε τη μέθοδο "addObject" του NSMutable παράταξη για να προσαρτήσετε ένα νέο στοιχείο σε έναν πίνακα
Ερωτήσεις συνέντευξης Swift
Ερωτήσεις συνέντευξης Swift

6) Αναφέρετε ποιοι είναι οι τύποι ακεραίων αριθμών που έχει το Swift;

Το Swift παρέχει ανυπόγραφους και υπογεγραμμένους ακέραιους αριθμούς σε μορφές 8, 16, 32 και 64 bit. Παρόμοια με το C, αυτοί οι ακέραιοι αριθμοί ακολουθούν μια σύμβαση ονομασίας. Για παράδειγμα, ο ανυπόγραφος ακέραιος συμβολίζεται με τον τύπο UInt8 ενώ ο ακέραιος με 32 bit υποδηλώνεται με τον τύπο Int32.


7) Αναφέρετε τι είναι οι αριθμοί κινητής υποδιαστολής και ποιοι είναι οι τύποι κυμαινόμενου αριθμού στο Swift;

Οι κυμαινόμενοι αριθμοί είναι αριθμοί με κλασματική συνιστώσα, όπως 3.25169 και -238.21. Οι τύποι κινητής υποδιαστολής μπορούν να αντιπροσωπεύουν ένα ευρύτερο φάσμα τιμών από τους τύπους ακέραιων αριθμών. Υπάρχουν δύο υπογεγραμμένοι αριθμοί κινητής υποδιαστολής

  • Διπλό: Αντιπροσωπεύει έναν αριθμό κινητής υποδιαστολής 64 bit, χρησιμοποιείται όταν οι τιμές κινητής υποδιαστολής πρέπει να είναι πολύ μεγάλες
  • Φλοτέρ: Αντιπροσωπεύει έναν αριθμό κινητής υποδιαστολής 32 bit, χρησιμοποιείται όταν οι τιμές κινητής υποδιαστολής δεν χρειάζονται ακρίβεια 64 bit

8) Εξηγήστε πώς μπορούν να γραφτούν σχόλια πολλαπλών γραμμών γρήγορα;

Το σχόλιο πολλαπλών γραμμών μπορεί να γραφτεί ως κάθετο προς τα εμπρός ακολουθούμενο από έναν αστερίσκο (/*) και να τελειώνει με έναν αστερίσκο ακολουθούμενο από μια κάθετο προς τα εμπρός (*/).

iOS Swift
iOS Swift

9) Τι είναι το de-initializer και πώς γράφεται στο Swift;

Ένας απο-αρχικοποιητής δηλώνεται αμέσως πριν από την αποκατανομή μιας παρουσίας κλάσης. Γράφετε de-initializer με τη λέξη-κλειδί deinit. Το De-initializer γράφεται χωρίς παρένθεση και δεν παίρνει καμία παράμετρο. Γράφεται ως

deinit  {

// perform the deinitialization

}

10) Αναφέρετε ποιοι είναι οι διαθέσιμοι τύποι συλλογής στο Swift;

Στο Swift, οι τύποι συλλογής διατίθενται σε δύο ποικιλίες Array και Dictionary

  • Παράταξη: Μπορείτε να δημιουργήσετε έναν πίνακα ενός μόνο τύπου ή έναν πίνακα με πολλούς τύπους. Η Swift προτιμά συνήθως την προηγούμενη

Παράδειγμα για πίνακα απλού τύπου είναι,

Var cardName : [String] = [ "Robert" , "Lisa" , "Kevin"]

// Swift can infer [String] so we can also write it as:

Var cardNames = [ "Robert", "Lisa", "Kevin"] // inferred as [String]

Για να προσθέσετε έναν πίνακα, πρέπει να χρησιμοποιήσετε τον δείκτη println(CardNames[0])

  • Λεξικό: Είναι παρόμοιο με έναν πίνακα Hash όπως σε άλλες γλώσσες προγραμματισμού. Ένα λεξικό σάς δίνει τη δυνατότητα να αποθηκεύετε ζεύγη κλειδιών-τιμών και να έχετε πρόσβαση στην τιμή παρέχοντας το κλειδί
var cards = [ "Robert": 22, "Lisa" : 24, and "Kevin": 26]

11) Καταγράψτε ποιες είναι οι δηλώσεις μεταφοράς ελέγχου που χρησιμοποιούνται στο Swift;

Οι δηλώσεις μεταφοράς ελέγχου που χρησιμοποιούνται στο Swift περιλαμβάνουν

  • ΣΥΝΕΧΕΙΑ
  • Διακοπή
  • Fallthrough
  • απόδοση

12) Εξηγήστε τι είναι η προαιρετική αλυσίδα;

Η προαιρετική αλυσίδα είναι μια διαδικασία αναζήτησης και κλήσης ιδιοτήτων. Πολλά ερωτήματα μπορούν να συνδεθούν μεταξύ τους και εάν οποιοσδήποτε κρίκος στην αλυσίδα είναι μηδενικός, τότε ολόκληρη η αλυσίδα αποτυγχάνει.


13) Πώς ορίζεται η βασική κλάση στο Swift;

Στο Swift οι κλάσεις δεν κληρονομούνται από τη βασική κλάση και οι κλάσεις που ορίζετε χωρίς να καθορίσετε την υπερκλάση της, γίνονται αυτόματα η βασική κλάση.


14) Εξηγήστε τι είναι οι αποθηκευμένες ιδιότητες του Lazy και πότε είναι χρήσιμο;

Οι αποθηκευμένες ιδιότητες Lazy χρησιμοποιούνται για μια ιδιότητα της οποίας οι αρχικές τιμές δεν υπολογίζονται μέχρι την πρώτη φορά που θα χρησιμοποιηθεί. Μπορείτε να δηλώσετε μια αποθηκευμένη ιδιότητα lazy γράφοντας τον τροποποιητή lazy πριν από τη δήλωσή της. Οι ιδιότητες τεμπέλης είναι χρήσιμες όταν η αρχική τιμή για μια ιδιότητα εξαρτάται από εξωτερικούς παράγοντες των οποίων οι τιμές είναι άγνωστες.


15) Αναφέρετε ποια είναι τα χαρακτηριστικά του Switch στο Swift;

  • Υποστηρίζει κάθε είδους δεδομένα και όχι μόνο συγχρονίζει αλλά και ελέγχει την ισότητα
  • Όταν μια θήκη αντιστοιχίζεται στο διακόπτη, το πρόγραμμα υπάρχει από τη θήκη διακόπτη και δεν συνεχίζει τον έλεγχο των επόμενων περιπτώσεων. Επομένως, δεν χρειάζεται να σπάσετε ρητά το διακόπτη στο τέλος της θήκης
  • Η δήλωση διακόπτη πρέπει να είναι εξαντλητική, πράγμα που σημαίνει ότι πρέπει να καλύψετε όλες τις πιθανές τιμές για τη μεταβλητή σας
  • Δεν υπάρχει πτώση στις δηλώσεις διακόπτη και επομένως δεν απαιτείται break

Αυτές οι ερωτήσεις συνέντευξης θα βοηθήσουν επίσης στο viva (προφορικά) σας

Κοινοποίηση

16 Σχόλια

  1. Avatar WorldStarCreatesHatred λέει:

    "Το Swift είναι μια γλώσσα προγραμματισμού και ένα σύστημα για τη δημιουργία εφαρμογών Ιστού σε iOS και OS X"

    Λοιπόν, κάνατε πιθανώς σκατά πολλούς ανθρώπους να γαμούν τις συνεντεύξεις τους. Επιτυχία.

    1. Avatar Guru99 λέει:

      Διορθώθηκε το σφάλμα! Ευχαριστώ που το γνωστοποιήσατε

  2. Avatar Nilesh Pol λέει:

    δεν υπάρχει "fallthrough" στις δηλώσεις διακόπτη;

  3. Avatar Joseph R. Andom λέει:

    Ερώτηση #3 – Δεν αναπτύσσεται έτσι το Swift. Το Swift αναπτύσσεται με μεταφόρτωση στο sight της Apple. Υπάρχει μια ολόκληρη διαδικασία. Δεν έχει να κάνει με JAR ή Tomcat.

  4. Avatar Joseph R. Andom λέει:

    Επιπλέον, η Swift έχει όντως δηλώσεις if. Δεν είναι εντολές switch _αντί_ για εντολές if. Είναι επιπλέον σε αυτά.

    Αν και είναι αλήθεια ότι δεν υπάρχει σιωπηρή πτώση, είναι δυνατό να προγραμματιστεί ρητά αυτή η συμπεριφορά.

  5. Avatar Arvind Hindyar λέει:

    τι σημαίνει αυτή η γραμμή "Στον στόχο C, πρέπει να δηλώσετε τη μεταβλητή ως NSString και σταθερή ως int"

  6. Avatar Mahesh Vijapur λέει:

    παρακαλώ επαληθεύστε τις απαντήσεις σας. λίγοι δεν συνδέονται καν με το iOS

  7. Avatar Sabdeep λέει:

    Μπορείτε να δημοσιεύσετε ερώτηση συνέντευξης για το περιβάλλον χρήστη. Ευχαριστώ εκ των προτέρων

  8. Avatar Ambuj Shukla λέει:

    Τι σημαίνει αυτή η γραμμή: - Στον στόχο C, η μεταβλητή δηλώνεται ως " και σταθερή ως ".

  9. Avatar Munaf λέει:

    Στην κεφαλίδα του μηνύματος "Κατάσταση :Διαγραφή" τι σημαίνει αυτό

  10. Avatar Ειλικρινής λέει:

    Αναφέρετε ποια είναι η διαφορά μεταξύ της γλώσσας Swift και «Objective-C»;
    Η διαφορά μεταξύ της γλώσσας 'C' και 'Swift' είναι αυτή
    Θα πρέπει να διευκρινίσετε την απάντησή σας, όπου κάνετε τη διάκριση μεταξύ Objective-C και Swift και όχι C και Swift.

  11. Avatar ζελ καπαδιά λέει:

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

Αφήστε μια απάντηση

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται *