3 ms·
I used to be a Java developer now turned mostly to Go and this is one of the things I dont miss at all about Java. So much abstraction and often not for good re
by meddlepal 6y ago
I used to be a Java developer now turned mostly to Go and this is one of the things I dont miss at all about Java. So much abstraction and often not for good reasons.
Theres a lot of stuff I miss about Java but the culture of layers is not one of them.
- latch 6y agoGo has its own set of problems though. There's the oft-mentioned error handling, "type" system and modules. However, more closely related to the OP, has anyone else struggled with the organization of even medium-sized systems? Obviously some people manage, but I don't know how. I used to do Go a lot more than I do now, but I think I've narrowed it down to (a) it's simplistic (boolean) visibility capabilities (b) lack of overloading and (c) lack of static functions. Instead of `User::new()` and `Role::new()`, you end up with `newUserWithPassword` and `NewRole`. You can do a package per module - but that doesn't solve the issue with overloading, and you can get into cyclical imports. You can solve overloading with a config objects, but now it feels like you're back to over-abstracting.