Prvi pogled: Microsoftov alat za miješanje API-ja za sve nas

Ne moraju sve aplikacije u oblaku biti u oblaku. Oni su često jednostavno usmjeravanje i prebacivanje aplikacija koje uzimaju informacije iz jednog izvora, obrađuju ih minimalno, a zatim prosljeđuju. Tu su se pojavili alati poput IFTTT i Yahoo Pipes, koji vam omogućuju brzu izgradnju i dijeljenje protoka informacija koji povezuju jednu uslugu s drugom. Nažalost, Yahoo Pipes je ugašen, a IFTTT se usredotočio na jednostavne veze do Interneta stvari.

To znači da na tržištu ima prostora za novi alat - jedan usredotočen na rad s aplikacijama i uslugama i sposoban za upravljanje složenijim lancima operacija od osnovnog unosa IFTTT-a u jedno mapiranje rezultata. Mogli biste na Node.js izgraditi mikroservise za automatizaciju takvih vrsta veza između aplikacija i između API-ja, ali to bi bilo pretjerano. Kao i Azure Logic Apps ili AWS Lambda.

Uz lansiranje svog novog alata za vizualni razvoj, PowerApps, Microsoft je nedavno predstavio i svoj novi razvojni alat zasnovan na vezama, Flow. Poput IFTTT-a i cijevi, Flow je osmišljen kako bi vam pomogao da brzo spojite izlaze i ulaze za izgradnju aplikacija koje pokreće događaj na ulazu i isporučuje odgovore na jednu ili više usluga. Tamo gdje je IFTTT mogao skenirati tok tweetova i spremiti određeni sadržaj u datoteku, Flow može uzeti ulaz i koristiti ga kao osnovu za složeniji protok informacija, tražeći više izvora informacija i kao rezultat obrađivati ​​više radnji.

Uz početnu podršku za 12 usluga (i mnogo više API-ja), Microsoft Flow je jasno dizajniran za automatizaciju onoga što bi inače bio dosadan posao. Podržane usluge uključuju Twitter, GitHub, Salesforce, Dropbox, Slack i Office 365, pružajući vam pristup velikom dijelu Office Grafa. Koristeći ove usluge, mogli biste, na primjer, skenirati Twitter tražeći spominjanje proizvoda i dostaviti ih na Slack kanal za tim proizvoda, omogućujući timu da vidi što njihovi korisnici govore o njihovom proizvodu.

Ulaz i izlaz, ako i što

Microsoft nudi set od 63 početna predloška koji rješavaju razne zadatke, a svi su također spremni za prilagodbu. Raspon predložaka obuhvaća upravljanje odnosima s kupcima, obavijesti o devopsu i načine upravljanja vašim mrežnim životom, premošćujući praznine između pohrane, društvenih mreža, e-pošte i ostalih usluga u oblaku.

Počeo sam s prilagođavanjem jednog od osnovnih predložaka, uzimanjem tweetova koje sam poslao i arhiviranjem u CSV datoteku na svom osobnom OneDriveu. Uređivanje protoka relativno je jednostavno. U pregledniku su vam predstavljeni ključni elementi predloška kao osnovni dijagram toka, ulazi na vrhu zaslona, ​​izlazi na dnu. Možete kliknuti na blok da biste otvorili njegova svojstva. Na primjer, u bloku Twittera pronaći ćete standardni Twitter upit.

Jedna od ključnih razlika između protoka i IFTTT-a je podrška za uvjetne radnike. Na primjer, ako datoteka koja vam treba nije prisutna, vaš tok može je stvoriti i smjestiti početni skup podataka. Jednom kada se postavi na mjesto, alternativni put će dodati nove podatke u datoteku. Flow nudi vrlo osnovni skup uvjetnih operatora, ali dovoljan vam je za izradu relativno složenih aplikacija. Možete povezati ulaze, upite i uvjetne uvjete, pomažući vam u kontroli protoka vašeg protoka, od ulaza do vašeg izbora izlaza.

Puno je fleksibilnosti u Flowu. Kada istražite u izgradnji vlastitih tokova, umjesto da koristite ponuđene predloške, otkrit ćete da možete koristiti Swagger API definicije za brzo povezivanje proizvoljnih REST API-ja u tok. Također se možete povezati s HTTP akcijom, opcijom koja će vam omogućiti povezivanje s web udicom u aplikaciji kao što je Slack ili rad s podacima koji se šalju putem web obrasca ili putem JSON-a. To je važna značajka jer znači da niste ograničeni na zadani skup kontrola.

Također možete ugraditi protok u aplikaciju PowerApps, dajući joj svoje korisničko sučelje. Otklanjanje pogrešaka jednostavno je, a izvješća za svaku operaciju omogućuju vam detaljno analiziranje svakog bloka, tako da možete vidjeti što je pošlo po zlu - i podjednako važno, što je pošlo u redu.

Samo početak

Rezultat je moćan mali alat koji brzo može ogrebati svrbež. Sposobnost dosezanja bilo kojeg API-ja je značajna, kao i podrška za niz različitih vrsta unosa. Microsoft je osigurao dovoljno ruta u Flow da biste mogli pronaći onu koja će raditi s odabranim ulazima - čak i ako nisu među određenim okidačima koje Flow definira. Izlazi su možda malo ograničeniji u ovoj fazi. Volio bih vidjeti bolju podršku za Office Graph i njegove različite entitete, uključujući više vrsta dokumenata od Excela.

Neki aspekti procesa razvoja protoka još uvijek su malo problematični, posebno oko integracije OneDrivea. Primijetio sam da je gotovo nemoguće pomicati se kroz dugački popis mapa, na primjer, i morao sam ručno unijeti mapu koju sam namjeravao koristiti. Unatoč tim problemima sa zubima, Flow se lijepo oblikuje kao zamjena za nažalost izgubljene Yahoo cijevi, iako dizajnirane za API svijet koji imamo danas, a ne samo za HTTP, RSS i XML.

Flow je usluga koja brzo ima smisla, čak i za one koji nisu programeri. Dovoljno je jednostavno započeti s prilagođavanjem predloška, ​​ali nakon što izgradite vlastite tokove, grafički raspored toka i programski blokovi brzo imaju smisla. Ako želite nadići predloške i zadane radnje, tada ćete se morati upoznati sa sintaksom RESTful API-ja. Flow-ova podrška za opisni jezik API-ja Swagger trebala bi pojednostaviti stvari, barem tamo gdje web lokacije i usluge nude Swaggerove definicije.

Pomoću alata poput Flow i PowerApps, Microsoft napokon služi publici za programere koja se sastoji od informatičara koji žele riješiti male probleme. Flow nije alat za programiranje opće namjene, ali je istovremeno moćan i fleksibilan. Flow je uvod u novi stil razvoja aplikacija, i to onaj koji svatko može koristiti.