4 ms·
>Connection or a Socket or a SocketConnection or what? I’d say provide as much context as you feel appropriate and iterate if it’s too much or too little. That
by jackblemming 4y ago
>Connection or a Socket or a SocketConnection or what?
I’d say provide as much context as you feel appropriate and iterate if it’s too much or too little. That’s the problem, many developers are terrified of renaming things as they learn more. Renaming is only an issue if you have many external consumers depending on you.
>Particularly when the app changes over time and those abstractions evolve to be used in subtly different ways the programmer didn't foresee.
Perfect abstractions never go stale, they just become obsolete. TCP/UDP are timeless. Quicksort and hash tables are timeless. They are never renamed or changed. You may swap them out as necessary, but they’re complete.
The issue arises when people put too many responsibilities or contexts onto an existing thing. This manifests itself as objects with hundreds of properties or functions with dozens of Boolean flags to toggle on or off contexts. It’s a sad thing indeed.
- leni536 4y agoFunny you mention quicksort, as qsort in libc is not guaranteed to be implemented by quicksort. So that's an other poor naming.