Komentáře k článku
Modelování REST APIs

V rámci své diplomové práce jsem se rozhodl podívat na aplikování Model-Driven Development na RESTová APIčka, a výsledkem mého snažení je kombinace editoru pro datové struktury a generátor kódu, který využívá vytvořený model pro generování REST API. Co všechno se mi podařilo, se dovíte v článku.
Chybka
„…výsledkem m0ho snažení…“
Chtělo by to trošku pilněji dělat korektury. Že je chyba ve článku, to pochopím. Ale přímo v perexu? :-)
Re: Chybka
Díky za upozornění. Budu si muset vyřešit, proč jsem přesvědčen, že to tam při vkládání článku ještě nebylo.
Re: Chybka
To bude asi moje chyba, mám norské rozložení klávesnice a myslím, že zrovna když jsem psal ten perex, tak jsem si to nepřepnul do češtiny.
Alternativní přístupy
Zajímavý článek, sám teď řeším něco podobného. Dá se to nějak porovnat s tím, co dělá Swagger (http://swagger.io/)?
Re: Alternativní přístupy
Jsem rád, že se článek líbil. Na Swagger jsem koukal a pokud se nepletu, tak je to notace pro zápis APIček. Něco jako API Blueprint. Mají dokonce i generátor, s vygenerovaným kódem se nedá pracovat. Jde spíše o prototypování. Já jsem chtěl udělat něco, co ti dá nějaký základ, pro opravdové REST API. Uplně ideální by bylo, kdybych byl schopný vygenerovat tu nutnou omáčku a programátor už si pak jen doprogramuje logiku, která je specifická, pro danou doménu.
Existují dvě možnosti, jak použít Swagger s mým generátorem.
Ten meta-model tam víceméně hraje roli takového policisty, takže pokud je tvůj model zvalidovaný meta-modelem, máš jistotu, že šablony si budou vědět s tvým modelem rady. Jinak zde je link na můj editor. Doporučuji Google Chrome, v jiných prohlížečích jsem to nezkoušel, ale jsem si jistý, že třeba ve FF to bude dělat problémy. Jinak koukni na videa na koncí článku, jestli tě zajímá, jak to vypadá v akci :-)
Re: Alternativní přístupy
Swagger generuje dokumentaci už existujícího API. Vedle dokumentace umožňuje i přímo se dotazovat na REST API pomocí vygenerovaných formulářů. Takže myslím že srovnání asi moc možné není, nástroj dělá něco jiného.
Re: Alternativní přístupy
Takže presně to, co řeším pomocí API Blueprint :-)
Re: Alternativní přístupy
Kdyz se podivas na Swagger, RAML nebo API Blueprint, je to vicemene to same. Mas nejakou notaci a k tomu dostanes zadarmo vsechny nastroje pro danou notaci na napr. Generovani dokumentace nebo formularu pro dotazovani jak rikas. Problem je v tom, ze generovani cehokoliv, co je zalozene striktne na odradkovani je tak trochu opruz, nicmene dokazu si predstavit Swagger soubor jako input pro generator.
Re: Alternativní přístupy
Já Swagger používám pro dokumentaci již existujícího ASP.NET WebApi kódu. Využívám vlastně jen SwaggerUI a JSON pro něj mi generuje Swashbuckle podle data anotací v kódu při buildu projektu. Samozřejmě tento způsob je pro návrh API nepoužitelný.
Merdžovat...
… je česky slučovat – čili větve nemerdžujeme, ale slučujeme! Ovšem když o tom tak přemýšlím, tak kdykoliv o tom mluvím, tak stejně mergeuju :-(, tak.