3 ms·
Go 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
by latch 6y ago
Go 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.