Προγραμματισμός

Η Visual Basic είναι ο περίεργος άνθρωπος στο νέο .NET

Σε μια σειρά δημοσιεύσεων ιστολογίων την περασμένη εβδομάδα, η Microsoft παρουσίασε λεπτομερείς βασικές αλλαγές στον τρόπο με τον οποίο αναπτύσσει τις γλώσσες .NET. Ήταν καλά νέα για τους προγραμματιστές C # και F #, αλλά ενώ η Microsoft έδειξε θετικά το τι σημαίνουν οι αλλαγές για τη Visual Basic, το μακροπρόθεσμο μέλλον της σεβάσμιας γλώσσας φαίνεται λιγότερο σίγουρο.

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

Η μετάβαση στο .NET ως το θεμέλιο της στρατηγικής ανάπτυξης της Microsoft είχε νόημα για νέες γλώσσες όπως το C #, αλλά σήμαινε αλλαγές στη Visual Basic, όπου ο κώδικας δεν μπορούσε εύκολα να μετεγκατασταθεί από την παλιά Visual Basic στο νέο VB.NET.

Ήταν μια δύσκολη μετάβαση για προγραμματιστές και η Visual Basic άρχισε να χάνει το μυαλό της στην ανάπτυξη των επιχειρήσεων - και μέσα στη Microsoft. Ωστόσο, η Microsoft υποσχέθηκε να διατηρήσει το C # και το VB.NET σε συγχρονισμό. Οι δυνατότητες που δημιουργούνται για το C # θα γίνουν μέρος της Visual Basic, οι δύο γλώσσες αναπτύσσονται μαζί. Ο λόγος ήταν ότι χρησιμοποιούνταν συχνά για την ίδια εργασία και είχαν την ίδια υποκείμενη φύση: και οι δύο έντονα δακτυλογραφημένες, αντικειμενοστραφείς γλώσσες που λειτουργούσαν με τα ίδια εργαλεία.

Visual Basic και C #: Μια νέα απόκλιση έρχεται

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

Δεν είναι εκπληκτικό διαζύγιο. Η δημοτικότητα του C # αυξήθηκε αλματωδώς, ενώ η Visual Basic έπεσε αργά κάτω από τα διαγράμματα, σχεδόν εξαφανίστηκε από το ραντάρ δημοφιλών ιστότοπων ερωτημάτων προγραμματισμού όπως το Stack Overflow. Οι περιπτώσεις χρήσης αλλάζουν επίσης: Η Visual Basic εξακολουθεί να επικεντρώνεται στο αρχικό της παράδειγμα πελάτη-διακομιστή, ενώ το C # έχει γίνει εργαλείο για ν- περισσότερες διαδικτυακές εφαρμογές, που λειτουργούν στο cloud και στις εγκαταστάσεις. Με όλο και περισσότερες εφαρμογές που έχουν σχεδιαστεί για να λειτουργούν με τον ιστό και το cloud, δεν προκαλεί έκπληξη το γεγονός ότι το C # γίνεται η πρώτη επιλογή για πολλά έργα.

Υπάρχουν αλλαγές στον τρόπο ανάπτυξης των γλωσσών. Το C # έχει μετακινηθεί σε ένα ανοιχτό μοντέλο σχεδίασης, το οποίο σημαίνει ότι οι χρήστες του βρίσκονται στο κάθισμα του οδηγού για να δώσουν προτεραιότητα σε νέες δυνατότητες, χάρη σε μια ενεργή λίστα αλληλογραφίας και σε ένα δημόσιο αποθετήριο GitHub. Η Microsoft έχει ήδη λάβει νέες δυνατότητες από την εταιρεία εκτός από την εταιρεία - μια μεγάλη αλλαγή από τις παραδοσιακές διαδικασίες μηχανικής γλώσσας που επικεντρώθηκαν στις ερευνητικές ομάδες της και στις εσωτερικές ομάδες διαχείρισης προϊόντων.

Η Visual Basic έχει επίσης ένα ανοιχτό μοντέλο σχεδίασης, αλλά έχει διαφορετικές προτεραιότητες από το C #. Υποστηρίζει ήδη ένα υποσύνολο των χαρακτηριστικών του C # στις τρέχουσες εκδόσεις του ως μέρος του υποψηφίου κυκλοφορίας του Visual Studio 2017.

Καθώς το C # συνεχίζει να αποκλίνει από τη Visual Basic, θα δούμε τις δύο γλώσσες να αναπτύσσονται ξεχωριστά, αν και θα πρέπει να μπορούν να συνεργάζονται. Και οι δύο θα πρέπει να αντιμετωπίζουν τα ίδια API .NET και και τα δύο θα εξακολουθούν να αποτελούν μέρος των εργαλείων του Visual Studio.

Τι σημαίνουν αυτές οι αλλαγές για τους προγραμματιστές επιχειρήσεων

Προς το παρόν, υπάρχουν πολύ λίγα για τις επιχειρήσεις για να κάνουν αυτή την απόκλιση.

Όμως, στο μέλλον, υπάρχει σίγουρα περιθώριο για εργασία πολλαπλών πλατφορμών στη Visual Basic, καθώς προχωρά στην υποστήριξη του .NET Standard σύνολο βιβλιοθηκών βασικής κλάσης παράλληλα με το γνωστό .NET Framework. Παρόλο που κάποιος κώδικας θα είναι φορητός, δεν θα μπορούν όλοι οι κώδικες της Visual Basic να κάνουν το άλμα από ένα σύνολο βιβλιοθηκών σε ένα άλλο μικρότερο σετ. Είναι πιθανό ο υπάρχων κώδικας να παραμείνει καθαρά στα Windows και αποκλειστικά σε εσωτερικές εφαρμογές.

Ως προγραμματιστής, θα πρέπει να επιλέξετε μεταξύ της προσφοράς κώδικα της Visual Basic σε νεότερες πλατφόρμες μέσω του .NET Standard ή της μετάβασης σε γλώσσες όπως το C # που προσφέρουν ένα ευρύτερο φάσμα στοχευμένων πλαισίων και συσκευών.

Επειδή το .NET Standard προορίζεται για όλες τις πλατφόρμες .NET, είναι ένας σημαντικός ισοσταθμιστής. Ωστόσο, δεν είναι απαραίτητο για όλες τις γλώσσες .NET. Παρόλο που η Visual Basic θα την χρειαστεί σε συστήματα που δεν διαθέτουν το πλήρες .NET Framework, το C # θα μπορεί να απευθύνεται σε πλατφόρμες όπως το .NET Core απευθείας, με πρόσβαση στα API του. Αυτό διευκολύνει επίσης τα παράγωγα C #, όπως το Unity, να υποστηρίζουν τα δικά τους εξειδικευμένα API.

Το C # με υποστήριξη για το .NET Framework στα Windows και τον ανοιχτό κώδικα. Το NET Core (που λειτουργεί σε Nano Server και σε κοντέινερ) θα γίνει η πρώτη επιλογή για cloud και για κινητές εφαρμογές, ενώ το μοντέλο λειτουργικού προγραμματισμού F # θα είναι ιδανικό για χρηματοοικονομικές υπηρεσίες και εφαρμογές που βασίζονται στη μηχανική μάθηση.

Ένα σαφές πρόγραμμα οδήγησης για αυτές τις αλλαγές είναι η απόκτηση Xamarin της Microsoft. Η Microsoft χρειάζεται ένα σύνολο εργαλείων πολλαπλών πλατφορμών για να υποστηρίξει ένα ευρύτερο φάσμα κινητών συσκευών, με τα Windows Mobile να μην κερδίζουν μερίδιο αγοράς των επιχειρήσεων, όπως ελπίζονταν. Ακόμη και σε γεωγραφικές περιοχές φιλικές προς τα Windows Mobile όπως το Ηνωμένο Βασίλειο, το iOS και το Android μαζί έχουν πάνω από το 80% της αγοράς. Οι προγραμματιστές της Microsoft που θέλουν να δημιουργήσουν φορητές διεπαφές για τις εφαρμογές τους θα πρέπει να χρησιμοποιούν εργαλεία όπως το Xamarin για να στοχεύουν τις κυρίαρχες πλατφόρμες για κινητά.

Με το Xamarin να επικεντρώνεται στο C #, η Microsoft πρέπει να καταστήσει σαφές ότι το C # είναι η πρώτη .NET γλώσσα πρώτης τάξης. Αν και αυτό δεν είναι ρητό στις πρόσφατες γλωσσικές ανακοινώσεις της Microsoft, αυτό υπονοείται έντονα.

Πώς πρέπει να διαχειριστείτε τη στρατηγική της εταιρικής γλώσσας σας

Αυτό δεν είναι αντίο στη Visual Basic, αλλά ήρθε η ώρα να αποτιμήσετε πού βρίσκεστε και πού θέλετε να είστε. Οι υπάρχουσες εφαρμογές της Visual Basic μπορούν να συνεχίσουν να αναπτύσσονται, αλλά καθώς εξελίσσεται η υποκείμενη πλατφόρμα .NET, θα πρέπει να περιμένετε μόνο ένα υποσύνολο API .NET για τους προγραμματιστές της Visual Basic. Αν και αυτό πιθανότατα δεν θα είναι πρόβλημα βραχυπρόθεσμα, θα πρέπει να προετοιμαστείτε για μια πιο μακροπρόθεσμη μετεγκατάσταση σε C # ή F #, ειδικά αν σκοπεύετε να χρησιμοποιήσετε εμπειρίες χρηστών για κινητές συσκευές ή για πλατφόρμες για τις εφαρμογές σας.

Φαίνεται σαφές ότι η καλύτερη επιλογή για την αποφυγή της υπερβολής του τεχνικού χρέους είναι να κάνετε το C # την προτεραιότητά σας για νέα ανάπτυξη. Το C # έχει υποστήριξη πρώτης κατηγορίας και ένα μοντέλο σχεδίασης που βασίζεται στον χρήστη. Είναι επίσης η καρδιά της ανάπτυξης πολλαπλών πλατφορμών της Microsoft και της πλατφόρμας Universal Windows. Αυτό σημαίνει ότι μπορείτε να γράψετε μια επιχειρηματική λογική μία φορά και, στη συνέχεια, να παρέχετε προσαρμοσμένες εμπειρίες χρήστη για τον Ιστό, τα Windows 10, iOS, Android και MacOS. Υπάρχει επίσης αρκετή ομοιότητα γλώσσας ώστε οι προγραμματιστές να μπορούν να κάνουν τις μεταβάσεις σχετικά εύκολα, επιλέγοντας νέες δυνατότητες μετά την αρχική προπόνηση.