Programování

První pohled: Nástroj pro mashup API společnosti Microsoft pro nás ostatní

Ne všechny cloudové aplikace musí být v cloudovém měřítku. Často jde o jednoduché směrování a přepínání aplikací, které berou informace z jednoho zdroje, zpracovávají je minimálně a poté je předávají. To je místo, kde vstoupily do hry nástroje jako IFTTT a Yahoo Pipes, které vám umožní rychle vytvářet a sdílet informační toky, které propojují jednu službu s druhou. Je smutné, že společnost Yahoo Pipes byla ukončena a IFTTT se soustředila na jednoduché odkazy na internet věcí.

To znamená, že na trhu existuje prostor pro nový nástroj - zaměřený na práci s aplikacemi a službami a schopný zvládnout složitější řetězce operací než základní mapování jednoho vstupu na jeden výstup IFTTT. Na Node.js můžete stavět mikroslužby k automatizaci těchto druhů připojení mezi aplikacemi a mezi API, ale to by bylo přehnané. Stejně tak Azure Logic Apps nebo AWS Lambda.

Spolu se spuštěním svého nového vizuálního vývojového nástroje PowerApps společnost Microsoft nedávno představila svůj nový vývojový nástroj založený na připojení, Flow. Stejně jako IFTTT a Pipes je Flow navržen tak, aby vám pomohl rychle spojit výstupy a vstupy pro vytváření aplikací, které jsou spuštěny událostí na vstupu, a poskytovat odpovědi na jednu nebo více služeb. Kde IFTTT mohl naskenovat proud tweetů a uložit konkrétní obsah do souboru, Flow může vzít vstup a použít jej jako základ pro složitější tok informací, dotazování na více informačních zdrojů a ve výsledku zpracování více akcí.

S počáteční podporou pro 12 služeb (a mnoho dalších API) je Microsoft Flow jasně navržen tak, aby automatizoval to, co by jinak bylo zdlouhavé. Mezi podporované služby patří Twitter, GitHub, Salesforce, Dropbox, Slack a Office 365, což vám umožní přístup k velké části grafu Office. Pomocí těchto služeb můžete například naskenovat Twitter, který hledá zmínky o produktu, a doručit je do kanálu Slack pro produktový tým, což týmu umožní zjistit, co o jeho produktu říkají jeho uživatelé.

Vstupy a výstupy, pokud a pak

Společnost Microsoft poskytuje sadu 63 počátečních šablon, které zpracovávají celou řadu úkolů a všechny jsou také připraveny k přizpůsobení. Rozsah šablon zahrnuje správu vztahů se zákazníky, vyvíjí oznámení a způsoby, jak spravovat svůj online život, překlenuje mezery mezi úložištěm, sociálními médii, e-mailem a dalšími cloudovými službami.

Začal jsem tím, že jsem si přizpůsobil jednu ze základních šablon, vzal jsem tweety, které jsem odeslal, a archivoval je v souboru CSV na svém osobním OneDrive. Úpravy toku jsou relativně snadné. V prohlížeči se vám zobrazí klíčové prvky šablony jako základní vývojový diagram, vstupy v horní části obrazovky, výstupy v dolní části. Kliknutím na blok otevřete jeho vlastnosti. Například v bloku na Twitteru najdete standardní dotaz na Twitteru.

Jedním z klíčových rozdílů mezi Flow a IFTTT je podpora podmíněných podmínek. Například pokud soubor, který potřebujete, není k dispozici, váš tok ho může vytvořit a umístit počáteční sadu dat. Jakmile bude zaveden, alternativní cesta přidá do souboru nová data. Flow nabízí velmi základní sadu podmíněných operátorů, ale stačí vám vytvořit relativně složité aplikace. Můžete zřetězit vstupy, dotazy a podmínky, což vám pomůže řídit tok vašeho toku, od vstupu až po výběr výstupů.

Flow je hodně flexibilní. Když se budete blíže věnovat budování vlastních toků, než pomocí poskytnutých šablon, zjistíte, že můžete použít definice rozhraní Swagger API k rychlému připojení libovolných rozhraní REST API do toku. Můžete se také připojit k akci HTTP, což je možnost, která vám umožní připojit se k webovému háku v aplikaci, jako je Slack, nebo pracovat s daty odeslanými přes webový formulář nebo prostřednictvím JSON. To je důležitá funkce, protože znamená, že nejste omezeni na výchozí sadu ovládacích prvků.

Můžete také vytvořit tok do aplikace PowerApps a dát jí vlastní uživatelské rozhraní. Ladění je snadné, se zprávami pro každou operaci, které vám umožňují procházet jednotlivé bloky, abyste viděli, co se pokazilo - a co je stejně důležité, co se stalo správně.

Pouze začátek

Výsledkem je výkonný malý nástroj, který může rychle poškrábat svědění. Schopnost oslovit libovolné rozhraní API je významná, stejně jako podpora řady různých typů vstupů. Společnost Microsoft poskytla do Flow dostatek cest, které byste měli být schopni najít takovou, která bude fungovat s vaším výběrem vstupů - i když nepatří mezi konkrétní spouštěče, které Flow definuje. Výstupy jsou v této fázi možná trochu omezenější. Rád bych viděl lepší podporu pro Office Graph a jeho různé entity, včetně více typů dokumentů než Excel.

Některé aspekty procesu vývoje Flow jsou stále trochu chybné, zejména pokud jde o integraci OneDrive. Zjistil jsem, že je téměř nemožné procházet například dlouhým seznamem složek, a musel jsem ručně zadat složku, kterou jsem chtěl použít. Navzdory těmto problémům s tvorbou zubů se Flow pěkně formuje jako náhrada za smutně ztracené Yahoo Pipes, i když jeden navržený pro svět API, který dnes máme, spíše než pouhé HTTP, RSS a XML.

Flow je služba, která má smysl rychle, dokonce i pro neprogramátory. Je dost snadné začít přizpůsobením šablony, ale jakmile vytvoříte vlastní toky, grafické rozložení toků a programových bloků má rychle smysl. Pokud chcete jít nad rámec šablon a výchozích akcí, budete se muset seznámit se syntaxí rozhraní RESTful API. Podpora Flow pro jazyk popisu Swagger API by měla věci zjednodušit, alespoň tam, kde weby a služby nabízejí definice Swagger.

S nástroji jako Flow a PowerApps Microsoft konečně slouží publiku vývojářů složenému z informačních pracovníků, kteří chtějí řešit malé problémy. Flow není univerzální programovací nástroj, ale je výkonný a flexibilní. Flow je rampou do nového stylu vývoje aplikací a může ho používat kdokoli.