DEV Community

Discussion on: Code Smell 147 - Too Many Methods

 
darkwiiplayer profile image
𒎏Wii 🏳️‍⚧️

So the contract and the behaviour originate in the real world and manifest themselves in subroutines; then what do we need objects for?

Thread Thread
 
mcsee profile image
Maxi Contieri

Subroutines are fine for programming in the small.
For example a solo work

In order to manage complexity and very large systems you need to follow principles like these

IMHO, You cannot built a serious system based on subroutines.
That was 1950's approach and didn't scale. It was called 'The software crisis'.

And that's the difference between beeing a software engineer and a coder

Thread Thread
 
darkwiiplayer profile image
𒎏Wii 🏳️‍⚧️

I assume you just misunderstand what a subroutine is, because you seem to think they're somehow a different thing than methods. They're not. When you call a method on an object, you're using a subroutine.

And since the behaviour of any object-oriented system is implemented in methods, and the protocols, as you've mentioned earlier, emerge from the real-world objects, not the program objects built to parallel them, you really don't need said objects in your code whatsoever to represent the protocols and behaviour of a real-world system.

Add to that a mechanism to store subroutines in variables and data structures, and you can easily write code in an object-oriented way with just those basic building blocks, as languages like Lua or early JavaScript have shown.