Първи поглед: Инструментът за смесване на API на Microsoft за останалите от нас

Не всички облачни приложения трябва да бъдат в облак. Те често са прости маршрутизиране и превключване на приложения, които вземат информация от един източник, обработват я минимално и след това я предават. Тук влязоха в действие инструменти като IFTTT и Yahoo Pipes, които ви позволяват бързо да изграждате и споделяте информационни потоци, които свързват една услуга с друга. За съжаление, Yahoo Pipes е спрян и IFTTT се концентрира върху прости връзки към Интернет на нещата.

Това означава, че на пазара има място за нов инструмент - фокусиран върху работата с приложения и услуги и способен да обработва по-сложни вериги от операции, отколкото основният вход на IFTTT към едно извеждане на карти. Можете да изградите микроуслуги на Node.js, за да автоматизирате този вид връзки между приложения и между API, но това би било прекалено много. Както и Azure Logic Apps или AWS Lambda.

Наред с пускането на новия си инструмент за визуално развитие, PowerApps, Microsoft наскоро представи новия си инструмент за разработка, базиран на връзки, Flow. Подобно на IFTTT и Pipes, Flow е проектиран да ви помогне бързо да свържете изходи и входове за изграждане на приложения, които се задействат от събитие на вход, и да доставяте отговори на една или повече услуги. Когато IFTTT може да сканира поток от туитове и да запише конкретно съдържание във файл, Flow може да вземе вход и да го използва като основа за по-сложен поток от информация, като запитва множество източници на информация и в резултат обработва множество действия.

С първоначалната поддръжка за 12 услуги (и много повече API), Microsoft Flow е ясно проектиран да автоматизира това, което иначе би било досадни задачи. Поддържаните услуги включват Twitter, GitHub, Salesforce, Dropbox, Slack и Office 365, като ви дават достъп до голяма част от Office Graph. Използвайки тези услуги, можете например да сканирате Twitter, търсейки споменавания на даден продукт и да ги доставите в Slack канал за продуктовия екип, позволявайки на екипа да види какво казват потребителите за техния продукт.

Влизане и излизане, ако и ако

Microsoft предоставя набор от 63 първоначални шаблона, които се справят с различни задачи, всички от които също са готови за персонализиране. Диапазонът от шаблони обхваща управлението на взаимоотношенията с клиентите, известията за devops и начините за управление на вашия онлайн живот, като преодолява пропуските между съхранението, социалните медии, имейл и други облачни услуги.

Започнах с персонализиране на един от основните шаблони, вземане на туитове, които изпратих, и архивиране в CSV файл на моя личен OneDrive. Редактирането на поток е относително лесно. Представени са ви ключовите елементи на шаблон във вашия браузър като основна схема на потока, входове в горната част на екрана, изходи в долната част. Можете да кликнете върху блок, за да отворите свойствата му. Например в блок в Twitter ще намерите стандартна заявка в Twitter.

Една ключова разлика между Flow и IFTTT е поддръжката за условни специалисти. Например, ако файл, от който се нуждаете, не присъства, вашият поток може да го създаде и да постави първоначален набор от данни. След като е на мястото си, алтернативен път ще добави нови данни към файла. Flow предлага много основен набор от условни оператори, но това е достатъчно, за да ви позволи да изграждате относително сложни приложения. Можете да веригирате входове, заявки и условни условия, като ви помагате да контролирате потока на вашия поток, от входа до вашия избор на изходи.

В Flow има много гъвкавост. Когато се насочите към изграждането на свои собствени потоци, вместо да използвате предоставените шаблони, ще откриете, че можете да използвате дефинициите на Swagger API за бързо свързване на произволни REST API в поток. Можете също така да се свържете с HTTP действие, опция, която ще ви позволи да се свържете с уеб кука в приложение като Slack или да работите с данни, изпратени чрез уеб формуляр или чрез JSON. Това е важна функция, тъй като означава, че не сте ограничени до контрола по подразбиране.

Можете също така да изградите поток в приложение PowerApps, като му дадете свой собствен потребителски интерфейс. Отстраняването на грешки е лесно, с отчети за всяка операция, които ви позволяват да разгледате всеки блок, така че можете да видите какво се е объркало - и също толкова важно, какво се е случило.

Само началото

Резултатът е мощен малък инструмент, който може бързо да надраска сърбежа. Възможността за достигане до всеки API е значителна, както и подкрепата за редица различни видове вход. Microsoft осигури достатъчно маршрути в Flow, за да можете да намерите такъв, който да работи с избрания от вас вход - дори ако те не са сред конкретните задействания, които Flow определя. На този етап резултатите са може би малко по-ограничени. Бих искал да видя по-добра поддръжка за Office Graph и различните му обекти, включително повече типове документи от Excel.

Някои аспекти на процеса на разработване на Flow все още са малко погрешни, особено около интеграцията на OneDrive. Открих, че е почти невъзможно да превъртя дълъг списък с папки например и трябваше да въведа ръчно папката, която възнамерявах да използвам. Въпреки тези проблеми с никненето на зъби, Flow се оформя добре като заместител на тъжно изгубените Yahoo Pipes, макар и такъв, предназначен за API света, който имаме днес, а не просто HTTP, RSS и XML.

Flow е услуга, която има смисъл бързо, дори и за непрограмистите. Достатъчно лесно е да започнете, като персонализирате шаблон, но след като изградите свои собствени потоци, графичното оформление на потока и програмните блокове бързо има смисъл. Ако искате да надхвърлите шаблоните и действията по подразбиране, ще трябва да се запознаете със синтаксиса на RESTful API. Поддръжката на Flow за езика за описание на API на Swagger трябва да опрости нещата, поне там, където сайтовете и услугите предлагат дефиниции на Swagger.

С инструменти като Flow и PowerApps, Microsoft най-накрая обслужва аудитория за разработчици, съставена от информационни работници, които искат да решат малки проблеми. Flow не е инструмент за програмиране с общо предназначение, но въпреки това е едновременно мощен и гъвкав. Потокът е внедряване в нов стил на разработване на приложения и е такъв, който всеки може да използва.