Τι είναι οι ηλεκτρονικές εφαρμογές και γιατί γίνονται τόσο συνηθισμένοι;
Παρατηρήσατε ότι πολλές νέες εφαρμογές desktop μοιάζουν σχεδόν με ιστοσελίδες; Δεν είναι φαντασία σου.
Από το Trello στο Slack, από το WordPress.com έως το Github, γίνεται όλο και πιο συνηθισμένο για τις αποκαλούμενες εφαρμογές επιφάνειας εργασίας να συνδέουν έναν ιστότοπο με μερικές εγγενείς λειτουργίες, όπως ειδοποιήσεις, πρόσβαση στο σύστημα αρχείων και μενού. Η πιο συνηθισμένη τεχνολογία που επιτρέπει αυτό ονομάζεται Electron και χρησιμοποιείται από μερικές εφαρμογές που μπορεί να μην υποψιάζεστε, όπως η εφαρμογή συζήτησης Discord και ο κώδικας Visual Studio της Microsoft.
Το Electron διευκολύνει τους προγραμματιστές να απελευθερώνουν ταυτόχρονα μια εφαρμογή σε Windows, MacOS και Linux, αλλά υπάρχουν μειονεκτήματα για τους χρήστες. Οι εφαρμογές ηλεκτρονίων είναι τεράστιες, για ένα πράγμα. Το Slack, μια εφαρμογή συνομιλίας, καταλαμβάνει 237 MB χώρου στο σκληρό σας δίσκο στο Mac και η κατανάλωση μνήμης δεν είναι χαμηλή. Τι παίρνει όλους αυτούς τους πόρους; Και γιατί οι προγραμματιστές χρησιμοποιούν κάτι τόσο αναποτελεσματικό?
Οι ηλεκτρονικές εφαρμογές είναι αρκετά εύκολο να γίνουν
Οι εφαρμογές για επιτραπέζιους υπολογιστές είναι δύσκολο να γίνουν, ειδικά αν θέλετε να είναι cross-platform. Η πρόσβαση στο σύστημα αρχείων λειτουργεί διαφορετικά στα Windows από ό, τι συμβαίνει στο Linux, για παράδειγμα, και οι ειδοποιήσεις λειτουργούν διαφορετικά στο macOS παρά στα Windows. Αυτό σημαίνει ότι όποιος θέλει να γράψει μια αίτηση και για τα τρία λειτουργικά συστήματα για επιτραπέζιους υπολογιστές (ή ακόμη και για δύο από αυτά) χρειάζεται να ξαναγράψει πολύ τον κωδικό τους όταν μεταφέρεται από το ένα στο άλλο.
Electron "λύνει" αυτό προσφέροντας μια ενιαία πλατφόρμα που λειτουργεί και στα τρία μεγάλα λειτουργικά συστήματα επιφάνειας εργασίας. Αυτό σημαίνει ότι οι προγραμματιστές μπορούν να γράψουν τον κώδικα για πράγματα όπως οι ειδοποιήσεις μία φορά και να περιμένουν να λειτουργούν εγγενώς σε κάθε λειτουργικό σύστημα. Ακόμη καλύτερα για προγραμματιστές: τα πάντα μπορούν να κατασκευαστούν με τη χρήση τεχνολογιών Javascript, HTML και CSS, όποιος κωδικοποιεί τον ιστό είναι πολύ εξοικειωμένος με.
Ηλεκτρονικές εφαρμογές έρχονται με πολύ μεγάλο μέρος του χρωμίου
Πώς είναι αυτό δυνατόν? Εν μέρει επειδή κάθε ηλεκτρονική εφαρμογή συνδέει ένα πλήρες πρόγραμμα περιήγησης ιστού: το Chromium, την έκδοση ανοιχτού κώδικα του Google Chrome. Αυτό συνοδεύεται από τις οδηγίες που αφορούν συγκεκριμένες πλατφόρμες, προκειμένου να διασφαλιστεί ότι τα πάντα συμπεριφέρονται ακριβώς όπως περιμένουν οι προγραμματιστές σε όλα τα συστήματα. Αυτός είναι ο λόγος για τον οποίο η έκδοση desktop της Slack καταλαμβάνει πάνω από 200MB χώρου στο σκληρό δίσκο: το μεγαλύτερο μέρος του Chrome είναι ενσωματωμένο εκεί.
Κάθε εφαρμογή ηλεκτρονίων που εκτελείτε είναι περισσότερο ή λιγότερο μια πλήρη παρουσία του Chrome. Όπως επεσήμανε ο blogger Joseph Gentle, αυτό είναι σχεδόν ιδανικό:
Μπορείτε να σκεφτείτε το Slack ως ένα μικρό πρόγραμμα javascript που τρέχει μέσα σε ένα άλλο λειτουργικό σύστημα VM (chrome), το οποίο πρέπει να εκτελέσετε για να συζητήσετε ουσιαστικά στο IRC. Ακόμα κι αν έχετε το πραγματικό chrome ανοιχτό, κάθε εφαρμογή ηλεκτρονίων τρέχει το δικό του, επιπλέον αντίγραφο ολόκληρου του VM.
Έτσι ναι, υπάρχουν μειονεκτήματα για τους χρήστες. Πρώτα απ 'όλα, κάθε εφαρμογή Electron που κατεβάζετε συνδέει το μεγαλύτερο μέρος του Chromium και κάθε εφαρμογή που εκτελείτε εκτελεί ένα καλό κομμάτι αυτού του κώδικα. Δεν υπάρχει κοινή χρήση πόρων, όπως συμβαίνει με τις μητρικές εφαρμογές, που σημαίνει ότι οι εφαρμογές Electron θα πάρουν περισσότερο χώρο στον σκληρό δίσκο και τη μνήμη από ότι μια εφαρμογή που αναπτύχθηκε ειδικά με την πλατφόρμα σας. Εάν η απόδοση είναι κάτι που σας ενδιαφέρει πραγματικά, ίσως να θέλετε να αποφύγετε εφαρμογές ηλεκτρονίων.
Περιμένετε, έτσι είναι το ηλεκτρονικό καλό ή κακό?
Σε αυτό το σημείο, οι υπολογιστές είναι τόσο ισχυροί που οι περισσότεροι χρήστες ποτέ δεν θα παρατηρήσουν καν πόσο αναποτελεσματικές εφαρμογές ηλεκτρονίων είναι. Στην πραγματικότητα, η μεγάλη πλειοψηφία ποτέ δεν έχει ακούσει ούτε για το Electron. Οι περισσότεροι από τους συναδέλφους μου δεν είχαν και όλοι χρησιμοποιούν το Slack καθημερινά. Πολλοί ήταν πολύ ενθουσιασμένοι που είδαν μια επιφάνεια εργασίας του Trello να βγει, και ξανά δεν είχε ιδέα ότι ήταν μια εφαρμογή Electron.
Και αυτές οι εφαρμογές πραγματικά ενσωματώνονται καλύτερα με το λειτουργικό σας σύστημα καλύτερα από τους ιστότοπους. Ζουν στο δικό τους παράθυρο. Προσφέρουν τέλειες συντομεύσεις πληκτρολογίου, μη αυτόματες ειδοποιήσεις και άλλα πράγματα που δεν μπορείτε να κάνετε με τον ίδιο τρόπο με ένα πρόγραμμα περιήγησης.
Και είναι ένα καλό στοίχημα ότι εφαρμογές όπως το Slack, το Trello και το WordPress.com δεν θα μπήκαν στον κόπο να προσφέρουν μια έκδοση για υπολογιστές εάν δεν υπήρχε το Electron, εστιάζοντας αντ 'αυτού σε εκδόσεις κινητών και προγραμμάτων περιήγησης. Επομένως, το ερώτημα δεν είναι εάν το Electron είναι κακό. είναι εάν οι εφαρμογές ηλεκτρονίων είναι καλύτερες από τίποτα. Είμαι πρόθυμος να πω ναι, αλλά λογικοί άνθρωποι διαφωνούν. (Και hey, για εκείνους τους ανθρώπους, υπάρχει πάντα η έκδοση web).