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

Πρώτη ματιά: Εργαλείο mashup API της Microsoft για τους υπόλοιπους από εμάς

Δεν πρέπει όλες οι εφαρμογές cloud να έχουν κλίμακα cloud. Συχνά είναι απλές δρομολόγηση και εναλλαγή εφαρμογών που λαμβάνουν πληροφορίες από μία πηγή, επεξεργάζονται ελάχιστα και μετά μεταβιβάζουν. Εκεί ξεκίνησαν να λειτουργούν εργαλεία όπως το IFTTT και το Yahoo Pipes, επιτρέποντάς σας να δημιουργείτε και να μοιράζεστε γρήγορα ροές πληροφοριών που συνδέουν τη μία υπηρεσία με την άλλη. Δυστυχώς, το Yahoo Pipes έχει κλείσει και το IFTTT έχει επικεντρωθεί σε απλούς συνδέσμους προς το Διαδίκτυο των πραγμάτων.

Αυτό σημαίνει ότι υπάρχει χώρος στην αγορά ενός νέου εργαλείου - ένα που επικεντρώνεται στη συνεργασία με εφαρμογές και υπηρεσίες και είναι ικανό να χειρίζεται πιο πολύπλοκες αλυσίδες λειτουργιών από τη βασική αντιστοίχιση εισόδου σε μία έξοδο της IFTTT. Θα μπορούσατε να δημιουργήσετε μικροϋπηρεσίες στο Node.js για να αυτοματοποιήσετε τέτοιου είδους συνδέσεις μεταξύ εφαρμογών και μεταξύ API, αλλά αυτό θα ήταν υπερβολικό. Το ίδιο ισχύει και για τις εφαρμογές Azure Logic ή AWS Lambda.

Παράλληλα με το λανσάρισμα του νέου εργαλείου οπτικής ανάπτυξης, PowerApps, η Microsoft παρουσίασε πρόσφατα το νέο εργαλείο ανάπτυξης που βασίζεται στη σύνδεση, Flow. Όπως το IFTTT και οι σωλήνες, το Flow έχει σχεδιαστεί για να σας βοηθά να συνδέετε γρήγορα εξόδους και εισόδους για τη δημιουργία εφαρμογών που ενεργοποιούνται από ένα συμβάν σε μια είσοδο και για την παροχή απαντήσεων σε μία ή περισσότερες υπηρεσίες. Όπου το IFTTT μπορούσε να σαρώσει μια ροή tweets και να αποθηκεύσει συγκεκριμένο περιεχόμενο σε ένα αρχείο, το Flow μπορεί να λάβει μια είσοδο και να το χρησιμοποιήσει ως βάση για μια πιο περίπλοκη ροή πληροφοριών, ερωτώντας πολλές πηγές πληροφοριών και χειρίζοντας πολλές ενέργειες ως αποτέλεσμα.

Με την αρχική υποστήριξη για 12 υπηρεσίες (και πολλά άλλα API), το Microsoft Flow έχει σχεδιαστεί σαφώς για να αυτοματοποιήσει ό, τι διαφορετικά θα ήταν κουραστική εργασία. Οι υποστηριζόμενες υπηρεσίες περιλαμβάνουν το Twitter, το GitHub, το Salesforce, το Dropbox, το Slack και το Office 365, δίνοντάς σας πρόσβαση σε μεγάλο μέρος του Γραφικού γραφείου. Χρησιμοποιώντας αυτές τις υπηρεσίες, θα μπορούσατε, για παράδειγμα, να σαρώσετε το Twitter αναζητώντας αναφορές για ένα προϊόν και να τις παραδώσετε σε ένα κανάλι Slack για την ομάδα προϊόντων, επιτρέποντας στην ομάδα να δει τι λένε οι χρήστες τους για το προϊόν τους.

Εσωτερικά, ifs και thens

Η Microsoft παρέχει ένα σύνολο 63 αρχικών προτύπων που χειρίζονται μια ποικιλία εργασιών, τα οποία είναι επίσης έτοιμα για προσαρμογή. Το εύρος των προτύπων καλύπτει τη διαχείριση σχέσεων πελατών, αποκλείει ειδοποιήσεις και τρόπους διαχείρισης της διαδικτυακής σας ζωής, γεφυρώνοντας τα κενά μεταξύ του χώρου αποθήκευσης, των κοινωνικών μέσων, του email και άλλων υπηρεσιών cloud.

Ξεκίνησα προσαρμόζοντας ένα από τα βασικά πρότυπα, λαμβάνοντας tweet που έστειλα και αρχειοθετώντας τα σε ένα αρχείο CSV στο προσωπικό μου OneDrive. Η επεξεργασία μιας ροής είναι σχετικά εύκολη. Σας παρουσιάζονται τα βασικά στοιχεία ενός προτύπου στο πρόγραμμα περιήγησής σας ως βασικό διάγραμμα ροής, είσοδοι στο πάνω μέρος μιας οθόνης και έξοδο στο κάτω μέρος. Μπορείτε να κάνετε κλικ σε ένα μπλοκ για να ανοίξετε τις ιδιότητές του. Για παράδειγμα, σε ένα μπλοκ Twitter, θα βρείτε ένα τυπικό ερώτημα Twitter.

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

Υπάρχει μεγάλη ευελιξία στο Flow. Όταν προσπαθείτε να δημιουργήσετε τις δικές σας ροές αντί να χρησιμοποιήσετε τα παρεχόμενα πρότυπα, θα διαπιστώσετε ότι μπορείτε να χρησιμοποιήσετε τους ορισμούς API Swagger για να συνδέσετε γρήγορα τα αυθαίρετα API REST σε μια ροή. Μπορείτε επίσης να συνδεθείτε σε μια ενέργεια HTTP, μια επιλογή που θα σας επέτρεπε να συνδεθείτε σε ένα γάντζο Ιστού σε μια εφαρμογή όπως το Slack ή να εργαστείτε με δεδομένα που αποστέλλονται μέσω μιας φόρμας Web ή μέσω JSON Αυτό είναι ένα σημαντικό χαρακτηριστικό, καθώς σημαίνει ότι δεν περιορίζεστε στο προεπιλεγμένο σύνολο στοιχείων ελέγχου.

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

Μόνο η αρχή

Το αποτέλεσμα είναι ένα ισχυρό μικρό εργαλείο που μπορεί γρήγορα να χαράξει έναν κνησμό. Η δυνατότητα προσέγγισης σε οποιοδήποτε API είναι σημαντική, όπως και η υποστήριξη για μια σειρά διαφορετικών τύπων εισόδου. Η Microsoft έχει παράσχει αρκετές διαδρομές στο Flow που θα πρέπει να μπορείτε να βρείτε μία που θα λειτουργεί με την επιλογή των εισόδων σας - ακόμη και αν δεν συγκαταλέγονται μεταξύ των συγκεκριμένων ενεργοποιητών που ορίζει το Flow. Τα αποτελέσματα είναι ίσως λίγο πιο περιορισμένα σε αυτό το στάδιο. Θα ήθελα να δω καλύτερη υποστήριξη για το Office Graph και τις διάφορες οντότητες του, συμπεριλαμβανομένων περισσότερων τύπων εγγράφων από το Excel.

Ορισμένες πτυχές της διαδικασίας ανάπτυξης του Flow εξακολουθούν να είναι λίγο λάθη, ειδικά γύρω από την ενσωμάτωσή του στο OneDrive. Το βρήκα σχεδόν αδύνατο να μετακινηθώ σε μια μεγάλη λίστα φακέλων, για παράδειγμα, και έπρεπε να εισαγάγω χειροκίνητα το φάκελο που σκοπεύω να χρησιμοποιήσω. Παρά αυτά τα προβλήματα οδοντοφυΐας, το Flow διαμορφώνεται όμορφα ως αντικατάσταση των δυστυχώς χαμένων σωλήνων Yahoo, παρόλο που έχει σχεδιαστεί για τον κόσμο των API που έχουμε σήμερα, και όχι απλώς HTTP, RSS και XML.

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

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