DEV Community

Discussion on: Interfaces are overrated

gmanon profile image

Object Design is complicated, but necessary for large projects requiring many objects. It also helps the programmer on thinking on security at the object level.

Even thought functional projects can achieve high security standards, the code itself tends to be more open. The object oriented approach also hides and protects the code from other programmers, or at least the implementation. It's a different animal.

However, functional programming gives way more control and flexibility to the Developer. It's easier to tackle logical problems with functional programming.

OOP is all about encapsulating everything. Functional programming makes use of loose variables. This can be extremely useful even thought many OOP Developers resent it so much. Anyway, most functional languages can also make use of OOP, yet they are not really based on objects as JAVA where everything is an object and you can only output from main.

Interfaces can be extremely useful like everything, when it is use properly. It's all about applying good design.