I'm very used to protobuf, and the .proto
files, I think it is such an amazing way of holding contracts between applications.
gRPC takes this to another level, but unfortunately, it isn't supported by default on the web, so we need proxies in order to communicate via the web right now.
So I was wondering if there is any Specific definition language like .proto
, but with plugins to generate Objects, Classes, Structs, Modules, or whatever every language takes to leverage the power of model abstraction?
If you are interested in code generation you should definitely look into the Eclipse Modelling Framework (EMF), if you haven't already.
In general, creating abstract descriptions (aka models), in the context of software engineering, can be referred to as model-driven engineering (MDE). A quick google search can give you enough material to get you started.
I think there are a ton of useful tools out there that people have created over the years that are not well known in industrial circles. By my estimation, that is mainly due to them being more 'academic' in nature and also their sometimes strong coupling with eclipse, which has fallen out of favour in recent years. That being said, they might be of interest to you so it is worth exploring.
Good luck!