Οδηγός Kotlin για αρχάριους (Παραδείγματα)

Τι είναι το Kotlin;

Κοτλίν είναι μια γλώσσα προγραμματισμού ανοιχτού κώδικα στατικής πληκτρολόγησης που εκτελείται Java Εικονική μηχανή (JVM). Συνδυάζει Αντικειμενοστραφή Προγραμματισμό (OOP) και λειτουργικό προγραμματισμό σε απεριόριστες, αυτάρκεις και διακριτικές πλατφόρμες. Επιτρέπει επίσης την αδελφοποίηση λειτουργιών με μικροσκοπικούς κωδικούς. Η Kotlin είναι μια γλώσσα προγραμματισμού γενικής χρήσης που σχεδιάστηκε από την JetBrains.

Ιστορία του Κότλιν

Εδώ, είναι σημαντικά ορόσημα από την ιστορία του Κότλιν:

Έτος Συμβάν
2016 Κυκλοφόρησε το Kotlin v1.0
2017 Ανακοίνωση της Google για την πρώτης τάξεως υποστήριξη του kotlin στο android
2018 Το Kotlin v1.2 συνοδεύεται από πρόσθετους κωδικούς διανομής μεταξύ JVM και JavaΓραφή
2019 Η Google ανακοίνωσε την Kotlin ως την προτιμώμενη γλώσσα προγραμματισμού της Android Προγραμματιστές εφαρμογών
2021 Στις 20 Σεπτεμβρίου 2021 κυκλοφόρησε το Kotlin v1.5.31.

Λόγοι χρήσης του Kotlin

Ακολουθούν ορισμένοι σημαντικοί λόγοι για τους οποίους το Kotlin χρησιμοποιείται ευρέως:

  • Η Kotlin είναι μια στατικά πληκτρολογημένη γλώσσα που διαβάζεται και γράφεται πολύ εύκολα.
  • Τα προγράμματα Kotlin δεν απαιτούν ερωτηματικά στο πρόγραμμά τους. Αυτό κάνει τον κώδικα εύκολο και πιο ευανάγνωστο.
  • Αυτή η γλώσσα επιτρέπει την ανταλλαγή και τη χρήση πληροφοριών από Java με διάφορους τρόπους. Εξάλλου, Java και ο κώδικας Kotlin μπορούν να συνυπάρχουν στο ίδιο έργο.
  • Το σύστημα τύπων του Kotlin στοχεύει στην εξάλειψη του NullPointerException από τον κώδικα.
  • Θα σας πάρει λιγότερο χρόνο για να γράψετε νέο κώδικα στο Kotlin. Είναι ακόμη πιο εύκολο να αναπτύξετε τον κώδικα kotlin και να τον διατηρήσετε σε κλίμακα.

Χαρακτηριστικά του Kotlin

Εδώ είναι μερικά χαρακτηριστικά του Kotlin που θα σας βεβαιώσουν για την πορεία προόδου της γλώσσας προγραμματισμού.

Περικομμένη κωδικοποίηση:

Η Kotlin είναι μια γλώσσα προγραμματισμού που βασίζεται σε OOPs, όπου η γραμμή κώδικα μπορεί να περικοπεί έως και 40% που καθιστά την Kotlin ιδανική επιλογή για λογισμικό ή ανάπτυξη ιστού.

Ανοιχτή πηγή:

Κότλιν για Android χρησιμοποιεί JVM και συνδυάζει τα χαρακτηριστικά των OOP και τον λειτουργικό προγραμματισμό.

Γρήγορη συλλογή:

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

Λειτουργίες επέκτασης:

Το Kotlin μπορεί να υποστηρίξει μια ποικιλία λειτουργιών επέκτασης χωρίς να κάνει αλλαγές στον κώδικα. Βοηθά στο να γίνει ο υπάρχων κώδικας πιο ελκυστικός και υπέροχος για τους προγραμματιστές.

Για παράδειγμα:

Fun String.removeFirstLastChar():
String = this.substring(1, this.length -1)

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

Val string1 = "Today is cloudy."
Val string2 = string1.removeFirstLastChar()

Μηδενική ασφάλεια:

Στο Kotlin, το σύστημα κάνει διάκριση μεταξύ μηδενικών και μη μηδενικών αναφορών όπως φαίνεται στο παρακάτω παράδειγμα Kotlin.

Για παράδειγμα, μια μεταβλητή String δεν μπορεί να κρατήσει null:

Var string1: String = "Today is Sunday"
String1 = null  // compilation error
To permit null, we can adjoin the nullable variable :
Var string2: String? = "Today is Sunday"
String2 = null
print(string2)

Διαλειτουργικό:

Ο κωδικός Kotlin μπορεί να χρησιμοποιηθεί από Java, να Java Οι κωδικοί μπορούν να χρησιμοποιηθούν με το Kotlin. Έτσι, εάν έχετε γνώσεις για OOPs προγραμματισμού, είναι εύκολο να μεταβείτε στην ανάπτυξη του Kotlin. Επίσης, αν υπάρχουν κάποιες εφαρμογές γραμμένες Java, τότε μπορούν να χρησιμοποιηθούν με το περιβάλλον του Kotlin.

Ισχυρά εργαλεία:

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

Smart Cast:

Η έξυπνη χύτευση βοηθά ουσιαστικά στη μείωση του κόστους της εφαρμογής και βελτιώνει την ταχύτητα ή την απόδοσή της. Λειτουργεί στη διαχείριση της αποτελεσματικότητας του κώδικα χρησιμοποιώντας casting τύπου ή αμετάβλητες τιμές.

Για παράδειγμα, εάν η συμβολοσειρά είναι αναγνωρισμένη, τότε είναι το μήκος και το μέτρημα και μπορεί να βρεθεί με τη βοήθεια της λειτουργίας Smart Cast:

Val string1: Any = "Today is Monday"
when(string1)
{
is String  -> string1.length
Is Int -> string1.inc()
}

Χαμηλό κόστος υιοθεσίας:

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

Ρύθμιση περιβάλλοντος Kotlin

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

Βήμα 1) Εγκατάσταση Java

Όπως έχουμε συζητήσει νωρίτερα ότι το Kotlin βασίζεται Java, οπότε πρέπει να εγκαταστήσετε Java για πρώτη φορά όταν σχεδιάζει να υιοθετήσει το Kotlin. Αναφερθείτε μας Java Οδηγός εγκατάστασης.

Βήμα 2) Εγκατάσταση Java IDE

Ευτυχώς, υπάρχουν πολλά Java IDE να διαλέξεις από. Εδώ έχουμε δώσει συνδέσμους λήψης για να κάνουμε τα πράγματα λίγο πιο εύκολα για εσάς.

Σε αυτό το σεμινάριο Kotlin, θα χρησιμοποιήσουμε Eclipse.

Βήμα 3) Εγκαταστήστε το Kotlin

Για την εγκατάσταση του Kotlin στο Eclipse, μεταβείτε στην ενότητα Βοήθεια στο Eclipse Και κάντε κλικ στο Eclipse Επιλογή αγοράς.

Ρύθμιση περιβάλλοντος Kotlin

Τώρα, πληκτρολογήστε τη λέξη-κλειδί Kotlin στο πλαίσιο αναζήτησης. Κάντε κλικ στην επιλογή Μετάβαση για να εμφανίσετε την προσθήκη. Θα σας δώσει έναν σύνδεσμο του πρόσθετου Kotlin, πρέπει να εγκαταστήσετε το πρόσθετο από τον συγκεκριμένο σύνδεσμο.

Ρύθμιση περιβάλλοντος Kotlin

Επανεκκινήστε το Eclipse IDE, μόλις ολοκληρωθεί η εγκατάσταση. Μπορείτε να βρείτε ένα εικονίδιο συντόμευσης στην επάνω δεξιά γωνία του Eclipse IDE. Είναι μια μέθοδος γρήγορης πρόσβασης.

Ρύθμιση περιβάλλοντος Kotlin

Ένας άλλος τρόπος πρόσβασης στο Kotlin Eclipse IDE είναι, μεταβείτε στο Windows, Προοπτικές, Ανοίξτε τις προοπτικές και μετά επιλέξτε Άλλα. Εδώ, μπορείτε να ελέγξετε μια λίστα με πρόσθετα που θα εγκατασταθούν αργότερα, όπως δίνεται παρακάτω.

Ρύθμιση περιβάλλοντος Kotlin

Μόλις επαληθεύσετε την εγκατάσταση του Kotlin, αφήστε μας να δημιουργήσουμε το πρώτο πρόγραμμα Kotlin στο επόμενο βήμα.

Βήμα 4) Πρώτο πρόγραμμα Kotlin

Ξεκινήστε με το πρώτο σας έργο Kotlin. Από το μενού Αρχείο, επιλέξτε την επιλογή Νέο, μετά επιλέξτε άλλα και ξεκινήστε με ένα νέο έργο Kotlin από τη λίστα.

Ρύθμιση περιβάλλοντος Kotlin

Τώρα, πρέπει να ορίσετε ένα όνομα για το έργο και είστε έτοιμοι να εργαστείτε με τον Kotlin.

Ρύθμιση περιβάλλοντος Kotlin

Με αυτά τα απλά βήματα, είναι εύκολη η λήψη Eclipse και Kotlin στο σύστημά σας και γράψτε αμέσως το πρώτο σας πρόγραμμα Kotlin.

Archiδομή του Κότλιν

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

Οι κορουτίνες και οι τάξεις του Kotlin αρχιτεκτονεύουν τον πυρήνα με τέτοιο τρόπο ώστε να παράγουν λιγότερο κώδικα λέβητα, να ενισχύουν την απόδοση και να ενισχύουν την απόδοση. Υπάρχουν διάφορα σενάρια όπου ο μεταγλωττιστής kotlin μπορεί να αντιδράσει διαφορετικά, ειδικά όταν δεσμεύει διάφορα είδη γλωσσών.

Archiδομή του Κότλιν
Archiδομή του Κότλιν

Στο διάγραμμα αρχιτεκτονικής, είναι σαφές ότι η εκτέλεση κώδικα γίνεται σε τρία εύκολα βήματα.

  1. Στο πρώτο βήμα, το αρχείο ".kt" ή kotlin προστίθεται στον μεταγλωττιστή.
  2. Στο δεύτερο βήμα, ο μεταγλωττιστής Kotlin μετατρέπει τον κώδικα σε bytecode.
  3. Στο τρίτο βήμα, εισάγεται ο bytecode Java Εικονική μηχανή και εκτελείται από την JVM.

Όταν μερικά byte κωδικοποιημένα αρχεία λειτουργούν στο JVM, ενεργοποιούν την αμοιβαία επικοινωνία μεταξύ τους, γι' αυτό το χαρακτηριστικό στο Kotlin ονομάζεται διαλειτουργικότητα για γέννηση java ook

Η αποκάλυψη του Κότλιν στο JavaΤο σενάριο συμβαίνει όταν ο Kotlin στοχεύει JavaΓραφή.

Όταν ο JavaΕπιλέγεται ο στόχος του σεναρίου, οποιοσδήποτε κωδικός του Kotlin που είναι μέρος της βιβλιοθήκης που πλέει με το Kotlin θα χυθεί με JavaΓραφή. Ωστόσο, το Java Εξαιρείται το Development Kit (JDK) ή οποιαδήποτε βιβλιοθήκη java που χρησιμοποιείται.

Ένα αρχείο που δεν είναι Kotlin δεν λαμβάνεται υπόψη κατά τη διάρκεια αυτής της λειτουργίας. Κατά τη στόχευση JavaΤο αρχείο Script .kt μετατρέπεται σε ES5.1 από τον μεταγλωττιστή Kotlin για να δημιουργήσει έναν συνεπή κώδικα για JavaΓραφή. Ο μεταγλωττιστής Kotlin προσπαθεί ένα βέλτιστο μέγεθος εξόδου, διαλειτουργικότητα με την υπάρχουσα μονάδα, ίδια λειτουργικότητα με την τυπική βιβλιοθήκη και έξοδο που είναι JavaΕυανάγνωστο σενάριο.

Είναι σαφές από τη συζήτηση ότι οι Kotlin Compilers μπορούν να δημιουργήσουν έναν πιο αποτελεσματικό, ικανό και ανεξάρτητο κώδικα που οδηγεί περαιτέρω σε ένα προϊόν λογισμικού υψηλής απόδοσης.

Μεταβλητή Kotlin

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

Στο Kotlin, όλες οι μεταβλητές πρέπει να δηλωθούν. Ωστόσο, εάν κάποια μεταβλητή δεν έχει δηλωθεί, τότε εμφανίζεται ως συντακτικό σφάλμα. Επίσης, η δήλωση της μεταβλητής καθορίζει τον τύπο των δεδομένων που επιτρέπουμε να αποθηκεύσουμε στη μεταβλητή. Στο Kotlin, οι μεταβλητές μπορούν να οριστούν χρησιμοποιώντας λέξεις-κλειδιά val και var. Εδώ είναι η σύνταξη της δήλωσης μεταβλητών στο Kotlin:

Var day = "Monday"
Var number = 3

Εδώ, έχουμε δηλώσει την τοπική μεταβλητή ημέρα της οποίας η τιμή είναι "Monday' και του οποίου ο τύπος είναι String και ένας άλλος αριθμός τοπικής μεταβλητής του οποίου η τιμή είναι 3 και ο τύπος του είναι Int επειδή εδώ το literal είναι του τύπου ακέραιος που είναι 3.

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

Μπορούμε να εκτελέσουμε μια πράξη στη μεταβλητή του ίδιου τύπου δεδομένων, καθώς εδώ το num1 και το num2 είναι και τα δύο του ίδιου τύπου δεδομένων που είναι Int, ενώ η ημέρα είναι του τύπου δεδομένων συμβολοσειράς. Άρα, θα εμφανίσει σφάλμα. Εδώ είναι μια άλλη τεχνική πώς μπορείτε να ορίσετε μεταβλητές στο Kotlin.

var day : String = "GURU99"
var num : Int = 100

Ας δούμε πώς οι λέξεις-κλειδιά var και val διαφέρουν μεταξύ τους.

Var :

Το Var είναι σαν μια γενική μεταβλητή που χρησιμοποιείται σε οποιαδήποτε γλώσσα προγραμματισμού που μπορεί να χρησιμοποιηθεί πολλές φορές σε ένα μόνο πρόγραμμα. Επιπλέον, μπορείτε να αλλάξετε την τιμή του οποιαδήποτε στιγμή σε ένα πρόγραμμα. Ως εκ τούτου, είναι γνωστή ως η μεταβλητή μεταβλητή.

Ακολουθεί ένα παράδειγμα μεταβλητής μεταβλητής στο Kotlin:

var num1 = 10
Var num2 = 20
Num1 = 20
print(num1 + num2) // output : 40

Εδώ η τιμή του num1 που είναι 20, αντικαθίσταται από την προηγούμενη τιμή του num1 που είναι 10. Επομένως, η έξοδος του num1 + num2 είναι 40 αντί για 30.

Αξία:

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

Ακολουθεί ένα παράδειγμα προγράμματος Kotlin αμετάβλητων μεταβλητών στο Kotlin:

Val num1 = 10
Var num2 = 20

Εδώ, η τιμή του num1 που είναι 10 δεν μπορεί να αντικατασταθεί από τη νέα τιμή του num1 που είναι 20, καθώς είναι σταθερού τύπου val. Επομένως, η έξοδος είναι 30 αντί για 40.

Σημείωση: Στο Kotlin, οι αμετάβλητες μεταβλητές προτιμώνται έναντι των μεταβλητών μεταβλητών.

Τύποι δεδομένων στο Kotlin

Οι τύποι δεδομένων είναι σύνολο σχετικών τιμών και περιγράφουν τις λειτουργίες που μπορούν να εκτελεστούν σε αυτούς. Παρόμοια με άλλες γλώσσες προγραμματισμού, η Kotlin έχει επίσης το προκαθορισμένο σύνολο τύπων δεδομένων όπως Int, Boolean, Char, DoubleΚ.λπ.

Στο Kotlin, κάθε τύπος δεδομένων θεωρείται ως αντικείμενο.

Τώρα σε αυτό το βασικό σεμινάριο Kotlin, ας βουτήξουμε βαθύτερα στους προκαθορισμένους τύπους δεδομένων που χρησιμοποιούνται στο Kotlin.

Numbers :

Το Kotlin εξυπηρετεί ένα σύνολο ενσωματωμένων τύπων δεδομένων γνωστών ως αριθμοί, οι οποίοι υποκατηγοριοποιούνται ως Ακέραιοι και Κυμαινόμενο Σημείο Numbers.

Ακέραιοι:

Οι ακέραιοι είναι η κατηγορία αριθμών που έχει τέσσερις τύπους:

Χαρακτηριστικά Μέγεθος (bits) Ελάχιστη τιμή Μέγιστη τιμή
Ψηφιόλεξη 8 -128 127
Κοντά 16 -32768 32767
Int 32 -2,147,483,648 (-231) 2,147,483,647 (231 - 1)
Μακριά 64 -9,223,372,036,854,775,808 (-263) 9,223,372,036,854,775,807 (263 - 1)

Κυμαινόμενο σημείο Numbers :

Κυμαινόμενο σημείο Numbers είναι οι μη ακέραιοι αριθμοί που φέρουν κάποιες δεκαδικές τιμές.

Float: Το Float είναι μια τιμή κινητής υποδιαστολής μονής ακρίβειας 32 bit.

Παράδειγμα: var: Float x = 3.25600

Double: Double είναι μια τιμή κινητής υποδιαστολής διπλής ακρίβειας 64 bit.

Παράδειγμα: var: Double γ = 2456.345587

Booleans:

Ο τύπος δεδομένων Booleans στο Kotlin είναι σημαντικός για να αντιπροσωπεύει τις λογικές τιμές. Υπάρχουν μόνο δύο πιθανές τιμές στο Boolean που είναι είτε true είτε false.

Για παράδειγμα: val day = αλήθεια

Val day2 = ψευδής

Χαρακτήρας:

Οι χαρακτήρες στο Kotlin αντιπροσωπεύονται με τη βοήθεια της λέξης-κλειδιού που ονομάζεται char. Στο Kotlin, τα μονά εισαγωγικά αντιπροσωπεύουν τη δήλωση του char. Στην java, το char χρησιμοποιούνται μερικές φορές ως αριθμοί που δεν είναι δυνατοί στο kotlin.

Για παράδειγμα:

val onechar = 'x'
print(onechar) //  output : x
Val onedigit = '7'
print(onedigit) // output : 7

Μετατροπή τύπου Kotlin ή χύτευση τύπου Kotlin

Η μετατροπή τύπου είναι μια διαδικασία μετατροπής ενός τύπου μεταβλητής δεδομένων σε μια άλλη μεταβλητή τύπου δεδομένων. Είναι πάρα πολύ γνωστό και ως Type Casting.

Κατ' εξοχήν, σε Java, υποστηρίζεται σιωπηρή μετατροπή τύπου ή σιωπηρή μετατροπή τύπου από μικρότερο τύπο δεδομένων σε μεγαλύτερο τύπο δεδομένων.

For Example : int abc = 15;
Long bcd = abc; // compiles successfully

Ωστόσο, στο kotlin, η σιωπηρή μετατροπή ενός μικρότερου τύπου δεδομένων σε έναν μεγαλύτερο τύπο δεδομένων δεν υποστηρίζεται καθόλου, επειδή ο τύπος δεδομένων int δεν μπορεί να μετατραπεί σιωπηρά σε τύπο δεδομένων μεγάλου μήκους.

For Example : var abc = 15
Val bcd : Long = abc // error

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

Υπάρχουν ορισμένες βοηθητικές συναρτήσεις που ανήκουν στην ιδιοκτησία για τη μετατροπή ενός τύπου δεδομένων σε έναν άλλο:

toInt()

toByte()

toShort()

toChar()

toLong()

επιπλέω()

προς τηνDouble()

For Example : var abc = 15
Val bcd : Long = abc.toLong() // compiles successfully

Κοτλίν Operaκορμοί

OperaΟι tors είναι σημαντικοί και ειδικοί χαρακτήρες ή σύμβολα που διασφαλίζουν τις πράξεις σε τελεστές που έχουν μεταβλητές και τιμές. Στο Kotlin, υπάρχει ένα σύνολο τελεστών που χρησιμοποιούνται σε διαφορετικές πράξεις όπως αριθμητικές πράξεις, πράξεις ανάθεσης, πράξεις σύγκρισης κ.λπ.

Αριθμητική Operators:

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

OperaTor Νόημα
+ Προσθήκη (χρησιμοποιείται επίσης για συνένωση χορδών)
- Αφαίρεση OperaTor
* Πολλαπλασιασμός OperaTor
/ διαίρεση OperaTor
% Μέτρο OperaTor

Για παράδειγμα:

var x = 10
var y = 20
var z = ( ( x + y ) * ( x + y ) ) / 2     

Εδώ η έξοδος του παρακάτω κώδικα είναι 45.

Σύγκριση Operators:

Ο τελεστής σύγκρισης χρησιμοποιείται για τη σύγκριση δύο τιμών, δύο μεταβλητών ή δύο αριθμών. Χρησιμοποιείται με το μεγαλύτερο από σύμβολο( > ), μικρότερο από σύμβολο( < ) και ίσο με σύμβολο( ==), όχι ίσο με σύμβολο( != ), μεγαλύτερο από ίσο με σύμβολο( >= ), μικρότερο από ίσο με σύμβολο (<= ). Πάντα καταλήγει σε αληθές ή ψευδές.

Για παράδειγμα:

var x = 10
Var y =20
Var z = x < y // Output : true
Var w = x > y // Output : false
Var m = x == y // Output : false

Εκχώρηση Operators:

Εκχώρηση OperaΤα tors χρησιμοποιούνται για την εκχώρηση των αριθμητικών λειτουργικών τιμών. Χρησιμοποιείται με σύμβολα όπως +=, -=, *=, /=, %=.

Για παράδειγμα:

var x = 10
var y = 20
var x + = y // Output : 30
Var y - = x // Output : 10
Var x * = y // Output : 200

Αύξηση και Μείωση Operators:

Οι τελεστές αύξησης και μείωσης χρησιμοποιούνται για την αύξηση και τη μείωση των τιμών της μεταβλητής ή του αριθμού. Χρησιμοποιείται με τη βοήθεια συμβόλων όπως ++ και —.

Υπάρχουν δύο τύποι αύξησης και μείωσης που είναι η προ-αύξηση ++a, η μετα-αύξηση a++, η προ-μείωση –b, η μετά τη μείωση β–.

Για παράδειγμα:

var a = 10
var b = 20
var c = a++ // Output: 11
var d = b— //Output : 19     

Συστοιχίες Kotlin

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

Στο Kotlin, οι πίνακες είναι μια μεταβλητή συνεργασία των ίδιων τύπων δεδομένων αντί να είναι εγγενείς τύποι δεδομένων.

Ακολουθούν ορισμένες ιδιότητες ενός πίνακα στο Kotlin

  • Το μέγεθος του πίνακα δεν μπορεί να αλλάξει αφού δηλωθεί.
  • Οι πίνακες στο Kotlin είναι μεταβλητοί.
  • Οι πίνακες αποθηκεύονται σε συνεχόμενες θέσεις μνήμης.
  • Ένας πίνακας μπορεί να προσπελαστεί με τη βοήθεια ευρετηρίων όπως a[1], a[2], et – cetera.
  • Ο δείκτης ενός πίνακα ξεκινά με μηδέν που είναι a[0].

Στο Kotlin, ένας πίνακας μπορεί να οριστεί με δύο διαφορετικές μεθόδους

Χρησιμοποιώντας τη συνάρτηση arrayOf():

Στο Kotlin, υπάρχει μεγάλη χρήση των λειτουργιών της βιβλιοθήκης. Μια τέτοια συνάρτηση βιβλιοθήκης είναι η συνάρτηση arrayOf(), η οποία χρησιμοποιείται για τον ορισμό ενός πίνακα μεταβιβάζοντας τις τιμές των μεταβλητών στη συνάρτηση.

Για παράδειγμα: Δήλωση σιωπηρού τύπου πίνακα χρησιμοποιώντας τη συνάρτηση arrayOf().

val x = arrayOf(1,2,3,4,5,6,7,8,9)

Για παράδειγμα: Πληκτρολογήστε ρητά τη δήλωση του πίνακα χρησιμοποιώντας τη συνάρτηση arrayOf().

Val y = arrayOf<Int>(1,2,3,4,5,6,7,8,9)

Χρησιμοποιώντας το Array Constructor:

Στο Kotlin, υπάρχει μια τάξη με το όνομα Array. Επομένως, είναι εφικτό να χρησιμοποιηθεί ένας πίνακας του κατασκευαστή για τη δημιουργία ενός πίνακα. Ο πίνακας στον κατασκευαστή έχει δύο κύριες παραμέτρους.

Τι είναι ο δείκτης ενός πίνακα στο Kotlin;

Η συνάρτηση όπου ένας δείκτης πίνακα είναι αποδεκτός για να επιστρέψει την αρχική τιμή του ευρετηρίου.

Για παράδειγμα:

val abc = Array(7 , { i -> i*1})

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

Υπάρχουν επίσης διάφορες μέθοδοι πρόσβασης και τροποποίησης των συστοιχιών χρησιμοποιώντας ορισμένες λειτουργίες. Επομένως, υπάρχουν δύο συναρτήσεις μέλους get() και set(), οι οποίες χρησιμοποιούνται για την πρόσβαση στα αντικείμενα του πίνακα κλάσης.

Για παράδειγμα:

val x = arrayOf(10,20,30,40,50,60,70,80,90)
val y = x.get(0) // Output 10

Εδώ, η έξοδος είναι 10 αφού η τιμή στον δείκτη 0 του πίνακα είναι 10

Σημείωση: η get() παίρνει μόνο μεμονωμένες τιμές

Για παράδειγμα:

val x = arrayOf(10,20,30,40,50,60,70.80.90)
val y = x.set(2, 3) //

Έξοδος: 30 40

Εδώ, η έξοδος είναι 30 και 40 αφού η τιμή στον δείκτη 2 του πίνακα είναι 30 και στον δείκτη 3 είναι 40.

Σημείωση: η set() παίρνει πολλές τιμές ενός πίνακα.

Χορδές Kotlin

Μια συμβολοσειρά είναι ένας βασικός τύπος δεδομένων σε οποιαδήποτε γλώσσα προγραμματισμού. Μια συμβολοσειρά δεν είναι παρά μια ακολουθία χαρακτήρων. Η κλάση String αντιπροσωπεύει συμβολοσειρές χαρακτήρων. Στο Kotlin, όλες οι συμβολοσειρές είναι αντικείμενα της κλάσης String, που σημαίνει ότι οι κυριολεκτικές συμβολοσειρές υλοποιούνται ως στιγμιότυπα της κλάσης.

Σύνταξη:

 Val myString = "Hey there!"

Συλλογή Kotlin

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

Τύποι Συλλογών:

Αμετάβλητη συλλογή

Αυτός ο τύπος συλλογής υποστηρίζει λειτουργίες μόνο για ανάγνωση. Δεν μπορεί κανείς να τροποποιήσει τα στοιχεία του.

Οι μέθοδοι περιλαμβάνουν:

  • List – listOf() και listOf ()
  • Set – setOf()
  • Χάρτης – mapOf()

Μεταβλητή συλλογή

Υποστηρίζει τη λειτουργία ανάγνωσης και εγγραφής.

Οι μέθοδοι περιλαμβάνουν

  • Λίστα – mutableListOf(),arrayListOf() και ArrayList
  • Set – mutableSetOf(), hashSetOf()
  • Χάρτης – mutableMapOf(), hashMapOf() και HashMap

Λειτουργίες Kotlin

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

Όπως είναι γνωστό το Kotlin ως στατικά δακτυλογραφημένη γλώσσα. Εδώ, η λέξη-κλειδί «διασκέδαση» χρησιμοποιείται για να δηλώσει μια συνάρτηση. Στο Kotlin, υπάρχουν δύο τύποι συναρτήσεων που εξαρτώνται αποκλειστικά από τη διαθεσιμότητά τους στην τυπική βιβλιοθήκη ή στον ορισμό του χρήστη. Αυτοί είναι:

  • Τυπική λειτουργία βιβλιοθήκης
  • Λειτουργία που καθορίζεται από το χρήστη

Λειτουργία Kotlin

Λειτουργίες Kotlin

Τώρα, ας τα συζητήσουμε λεπτομερώς με παραδείγματα κώδικα Kotlin.

Τυπική λειτουργία βιβλιοθήκης

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

Για παράδειγμα 2:

fun main(args: Array<String>){  
var number = 9  
var result = Math.sqrt(number.toDouble())  
print("$result")  
}  

Παραγωγή:

3.0

Η sqrt() είναι μια συνάρτηση που ορίζεται στη βιβλιοθήκη και επιστρέφει την τετραγωνική ρίζα ενός αριθμού.

Η λειτουργία print() εκτυπώνει μήνυμα σε μια τυπική ροή εξόδου.

Λειτουργία που καθορίζεται από το χρήστη

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

Εδώ, οι συναρτήσεις δηλώνονται χρησιμοποιώντας τη λέξη-κλειδί «διασκέδαση».

Για παράδειγμα 3:

fun functionName(){
//body of the code
}

Εδώ, καλούμε τη συνάρτηση για την εκτέλεση κωδικών μέσα στο body functionName()

Παραδείγματα συνάρτησης Kotlin:

fun main(args: Array<String>){  
    sum()  
    print("code after sum")  
}  
fun sum(){  
    var num1 =8  
    var num2 = 9  
    println("sum = "+(num1+num2))  
}  

Παραγωγή:

άθροισμα = 17

κωδικός μετά το άθροισμα

Εξαίρεση χειρισμού στο Kotlin

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

Ο χειρισμός εξαίρεσης ορίζεται ως η τεχνική που χειρίζεται τα προβλήματα χρόνου εκτέλεσης και επίσης διατηρεί τη ροή του προγράμματος κατά την εκτέλεση.

Ο Kotlin χρησιμοποιεί την έκφραση 'ρίξε' για να ρίξει ένα αντικείμενο εξαίρεσης. Εδώ όλες οι κλάσεις εξαίρεσης είναι απόγονοι της κλάσης Throwable.

Throw MyException ("πετάει την εξαίρεση")

Υπάρχουν τέσσερις τύποι εξαιρέσεων στον χειρισμό εξαιρέσεων. Αυτοί είναι:

  • try – Αυτό το μπλοκ περιέχει δηλώσεις που ενδέχεται να δημιουργήσουν την εξαίρεση. Πάντα ακολουθείται από το πιάσιμο ή τέλος ή και τα δύο.
  • catch – πιάνει μια εξαίρεση από το μπλοκ δοκιμής.
  • τέλος – Ελέγχει πάντα εάν η εξαίρεση αντιμετωπίζεται ή όχι.
  • ρίχνω – Χρησιμοποιείται για να ρίξει μια εξαίρεση ρητά.

Προσπάθησε να πιάσεις:

Στο μπλοκ try-catch στον χειρισμό εξαιρέσεων, το block try περικλείει τον κώδικα, ο οποίος μπορεί να δημιουργήσει μια εξαίρεση και το μπλοκ catch πιάνει την έκφραση και τον χειρίζεται.

Σύνταξη του μπλοκ try catch:

try{    
//code with exception    
}catch(e: SomeException){  
//code handling exception  
}    

Σύνταξη της δοκιμής με τελικά μπλοκ

try{    
//code with exception    
}finally{  
// code finally block  
}   

Τελικά:

Στο Kolin, τελικά το block ελέγχει πάντα εάν η εξαίρεση χειρίζεται ή όχι, καθιστώντας την μια πολύ σημαντική δήλωση χειρισμού εξαιρέσεων.

Για παράδειγμα 4:

Σε αυτό το απόσπασμα κώδικα, εμφανίζεται η εξαίρεση και γίνεται ο χειρισμός της.

fun main (args: Array<String>){  
    try {  	
        val data =  9/ 0  
        println(data)  
    } catch (e: ArithmeticException) {  
        println(e)  
    } finally {  
        println("finally block executes")  
    }  
    println("write next code")  
}  

Παραγωγή:

java.lang.ArithmeticException: / by zero
finally block executes
write next code

Βολή:

Το μπλοκ ρίψης δημιουργεί μια ρητή εξαίρεση. Επιπλέον, χρησιμοποιείται για τη δημιουργία προσαρμοσμένων εξαιρέσεων.

Σύνταξη:

Throw SomeException()

Throw SomeException()

Παράδειγμα:

fun main(args: Array<String>) {
    try{
        println("Exception is not thrown yet")
        throw Exception("Everything is not well")
        println("Exception is thrown")
    }
    catch(e: Exception){
        println(e)

    }
    finally{
        println("You can't ignore me")
    }
}

Παραγωγή:

Παράδειγμα Kotlin

Kotlin Null Safety

Οι τύποι συστημάτων που υποστηρίζουν το Kotlin διακρίνονται σε μεγάλο βαθμό μεταξύ των αναφορών που μπορούν να φέρουν μηδενικές αναφορές και εκείνων που δεν μπορούν να φέρουν μηδενικές αναφορές. Η Kotlin είναι μια μηδενική γλώσσα ασφαλείας που στοχεύει στην εξάλειψη της εξαίρεσης του μηδενικού δείκτη ή της μηδενικής αναφοράς από τον κώδικα, η οποία είναι σκόπιμα γνωστή ως A BillΛάθος ιόντων δολαρίου.

Το πιο συμβατικό εμπόδιο από πολλά γλώσσες προγραμματισμού είναι ότι κατά την πρόσβαση σε ένα μέλος μιας μηδενικής αναφοράς, προκύπτει ότι είναι ένα NullPointerException, το οποίο θα μπορούσε να οφείλεται στο !! τελεστής ή αυτός ο κατασκευαστής χρησιμοποιήθηκε κάπου αλλού και πέρασε σε άλλο σημείο κώδικα. Η μηδενική ιδιότητα απαιτεί επιβεβαίωση για τον μηδενικό έλεγχο κάθε φορά πριν από τη χρήση της.

Στο Kotlin, το σύστημα κάνει διάκριση μεταξύ μηδενικών και όχι μηδενικών αναφορών.

Για παράδειγμα, μια μεταβλητή String δεν μπορεί να κρατήσει null:

Για παράδειγμα 5:

fun main(args: Array<String>){
    var x: String = "GURU99 is the only place where you will get maximum technical content!" // Not Null by default
    println("x is : $x")
    // You cannot assign null variable to not-nullable variables 
    // a=null // it will give compilation error
    var y: String? = "Thanks for visiting GURU99" 
// Nullable Variable
    println("y is : $y")
    y = null
    println("y is : $y")
}

Παραγωγή:

Kotlin Null Safety

Kotlin OOPs

Η αντικειμενοστραφής προσέγγιση προγραμματισμού επιτρέπει σε ένα σύνθετο απόσπασμα κώδικα να χωριστεί σε μικρότερα μπλοκ κώδικα δημιουργώντας αντικείμενα. Αυτά τα αντικείμενα μοιράζονται αμοιβαία δύο χαρακτηριστικά: κατάσταση και συμπεριφορά.

Ακολουθούν μερικά από τα στοιχεία OOPs που πρόκειται να συζητήσουμε με παραδείγματα κώδικα Kotlin:

  • Τάξη και αντικείμενα
  • Κατασκευαστές
  • Κληρονομία
  • Περίληψη τάξη

Kotlin OOPs

Μάθημα στο Κότλιν

Το πρώτο πριν δημιουργήσουμε ένα αντικείμενο, πρέπει να ορίσουμε μια κλάση που είναι επίσης γνωστή ως το προσχέδιο για το αντικείμενο.

Σύνταξη:

class ClassName {
    // property
    // member function
    ... .. ...
}

Αντικείμενα στο Κότλιν

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

Σύνταξη:

var obj1 = ClassName()

Κατασκευαστές στο Κότλιν

Ένας κατασκευαστής είναι ένας τρόπος για την προετοιμασία των ιδιοτήτων κλάσης. Είναι μια συνάρτηση μέλους που καλείται όταν ένα αντικείμενο στιγμιοποιείται. Αλλά στο Kotlin, λειτουργεί διαφορετικά.

Υπάρχουν δύο τύποι κατασκευαστών στο Kotlin:

Κατασκευαστές στο Κότλιν

Κατασκευαστές στο Κότλιν

Κύριος κατασκευαστής: Βελτιστοποιημένος τρόπος για την προετοιμασία μιας κλάσης

Σύνταξη:

class myClass(valname: String,varid: Int) {  
    // class body  
}  

Δευτερεύων κατασκευαστής: Βοηθά στην προσθήκη λογικής προετοιμασίας

Κληρονομιά Kotlin

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

Σύνταξη:

open class ParentClass(primary_construct){
    // common code
  }class ChildClass(primary_construct): ParentClass(primary_construct_initializ){
    // ChildClass specific behaviours
  }

Αφηρημένο μάθημα στο Kotlin

Μια αφηρημένη κλάση είναι μια κλάση που δεν μπορεί να δημιουργηθεί, αλλά μπορούμε να κληρονομήσουμε υποκλάσεις από αυτές. Η λέξη-κλειδί 'abstract' χρησιμοποιείται για να δηλώσει μια αφηρημένη κλάση.

Για παράδειγμα 6:

  open class humanbeings { 
    open fun Eat() { 
        println("All Human being Eat") 
    } 
} 
abstract class Animal : humanbeings() { 
    override abstract fun Eat() 
} 
class Cat: Animal(){ 
    override fun Eat() { 
        println("Cats also loves eating") 
    } 
} 
fun main(args: Array<String>){ 
    val lt = humanbeings() 
    lt.Eat() 
    val d = Cat() 
    d.Eat() 
} 

Παραγωγή:

Αφηρημένο μάθημα στο Kotlin

Το παρόν & το μέλλον του Κότλιν

Η παρούσα:

  • Πολλές εταιρείες αρέσουν Netflix, Pinterest και Corda χρησιμοποιούν το Kotlin για να δημιουργήσουν ισχυρά Android εφαρμογές.
  • Σε σύντομη διάρκεια ενός έτους, από το 2016 έως το 2017, το Kotlin έγινε ιδιαίτερα δημοφιλές με εκπληκτικές δυνατότητες προγραμματισμού.
  • Το 2017, η Google ανακοίνωσε την Kotlin ως επίσημη γλώσσα προγραμματισμού για την ανάπτυξη Android.
  • Μπορείτε να αντικαταστήσετε γρήγορα Java κωδικός με το Kotlin καθώς είναι 100% διαλειτουργικό Java και Android.

Το μέλλον:

  • Ανάπτυξη παιχνιδιών για πολλαπλές πλατφόρμες
  • Ανάπτυξη εφαρμογών για κινητά μεταξύ πλατφορμών
  • δέσμες ενεργειών και μικροϋπηρεσίες από την πλευρά της υπηρεσίας
  • Εκμάθηση μηχανών & ανάλυση δεδομένων

Σύνοψη

  • Η Kotlin είναι μια γλώσσα προγραμματισμού που προτάθηκε από την JetBrains το 2010 για εφαρμογές πολλαπλών πλατφορμών υπό την άδεια Apache 2.0.
  • Το όνομα Kotlin προέρχεται από το όνομα του νησιού Kotlin σε παρόμοια αντιστοιχία του Java από το όνομα ενός νησιού που ονομάζεται java.
  • Το 2016 κυκλοφόρησε η πρώτη έκδοση του Kotlin v1.0
  • Τα προγράμματα Kotlin δεν απαιτούν ερωτηματικά στο πρόγραμμά τους. Αυτό κάνει τον κώδικα εύκολο και πιο ευανάγνωστο.
  • Κότλιν για Android Οι προγραμματιστές είναι μια γλώσσα προγραμματισμού που βασίζεται σε OOPs, όπου η γραμμή κώδικα μπορεί να περικοπεί έως και 40% που καθιστά την Kotlin ιδανική επιλογή για λογισμικό ή ανάπτυξη ιστού.
  • Στο Kotlin, όλες οι μεταβλητές πρέπει να δηλώνονται χρησιμοποιώντας λέξεις-κλειδιά var και val.
  • Παρόμοια με άλλες γλώσσες προγραμματισμού, η Kotlin έχει επίσης το προκαθορισμένο σύνολο τύπων δεδομένων όπως Int, Boolean, Char, DoubleΚ.λπ.
  • Στο Kotlin, υπάρχει ένα σύνολο τελεστών που χρησιμοποιούνται σε διαφορετικές πράξεις όπως αριθμητικές πράξεις, πράξεις ανάθεσης, πράξεις σύγκρισης κ.λπ.
  • Στο Kotlin, οι πίνακες είναι μια μεταβλητή συνεργασία των ίδιων τύπων δεδομένων αντί να είναι εγγενείς τύποι δεδομένων.
  • Στο Kotlin, οι πίνακες ορίζονται χρησιμοποιώντας δύο μεθόδους – ArrayOF () και Constructors.
  • Το Kotlin είναι μια μηδενική γλώσσα ασφαλείας που βοηθά στην αφαίρεση της εξαίρεσης του μηδενικού δείκτη ή της μηδενικής αναφοράς από τον κώδικα, ο οποίος ονομάζεται σκόπιμα A BillΛάθος ιόντων δολαρίου.