Forum Discussion

AndrewScott's avatar
AndrewScott
New Contributor
4 years ago

Whats the Point... Is Code-Gen actually code gen.

So my understanding on Swagger is help auto generate a document a developer can use to talk to my API i am building. while this is all very cool and all.. i find my self underwhelmed, and honestly missing Soap services.

 

the main reason is the code generation side of things. I see there is now some talk about CodeGen, but really cant seem to see what it does.

 

my main gripe is the fact that when you reference a soap service using its wsdl markup you can generate a single reusable object that exposes all the methods and functions the service contains inside my application, making it really easy to implement in an application. APIs have killed this, and now i find my self writing tons of boiler plate code that tries to mimic what Soap code generation did out of the box.

 

I have been watching the openapi specification develop, and to be honest i find my self asking what is the point? or have i missed the point and the CodeGen side of things is where we are working towards so it works like soap did. life should be easier with these newer technologies.

 

i am not looking to start a flame war i and trying to understand why we seem to like making things difficult. 

 

my next step is going to be to download the CodeGen system, (written in java) and try to use it for generating and ClientSDK  libary for use in C# for one of my api's. it seems very complicated for something that took seconds with Soap.

 

 

 

1 Reply

  • AndrewScott's avatar
    AndrewScott
    New Contributor

    Ok All, So an Update, I am starting to come around to this. i tried out the NPM package https://openapi-generator.tech/#try

    on a large API i really didn't want to write all the implementation for.

     

    and what do you know it works pretty well and for about 30 different programming languages. managaed to gernet a fully working (some minor changes) SDK to use and no consume and use the api.