My code is barely coupled with any server engine. My code is just agnostic. Everything is a function. Then I put some wrapper to connect my function to express API or sockets. My code probably is not aware is running on the client or server, nor should be aware of that.
For me works amazingly. I couldn't see myself using anything else on server.
It's not hard to pick up a new language, but changing every 5 minutes it is, especially when you create a new feature.
I think I have 75% of the code shared between client and server side. Again, I can't see myself duplicating so much code and testing it.
I use typescript by the way, so it's pretty good imo.
Just think of all the utils that are shared between client and server side.
Of course I'm talking about web applications with streaming data, not simple webpages.
In a project before we had some functionally that was done on the client side, then somebody decided to move on the server side. Has to be written again in Java from scratch. It's doable, but it's more expensive.
>My code probably is not aware is running on the client or server, nor should be aware of that.
Client- and server-side are very different in terms of network connectivity, CPU and other resources. On the backend you can get by with N+1 queries if the DB is running on the adjacent VM. On the client side, hardly.
For me works amazingly. I couldn't see myself using anything else on server.
It's not hard to pick up a new language, but changing every 5 minutes it is, especially when you create a new feature.
I think I have 75% of the code shared between client and server side. Again, I can't see myself duplicating so much code and testing it.
I use typescript by the way, so it's pretty good imo.
Just think of all the utils that are shared between client and server side.
Of course I'm talking about web applications with streaming data, not simple webpages.
In a project before we had some functionally that was done on the client side, then somebody decided to move on the server side. Has to be written again in Java from scratch. It's doable, but it's more expensive.