re: Why Java is the best Programming language to Learn Coding for beginners? VIEW POST

TOP OF THREAD FULL DISCUSSION
re: Python is multi-paradigm and Java is imperative OOP only. The biggest problem that at the moment pretty much every school teaches you how to write ...
 

How often do people actually write in functional style in Python though? OOP/imperative is still the first thing most Python programmers will learn.

 

Because imperative code is much closer to how human brain works. Line by line. FP is a bit difficult from the beginning because it forces to think in a different way. That's why it is always easier to start with imperative coding. However, if the tool also provides the possibility to write declarative code there is a chance developers try it. Java cuts this possibility making new developers OOP oriented only.

You've got a point. I totally agree that more people should learn FP. But learning declarative in an imperative-first language means that if you can't solve it in declarative there's a big chance you fall back into your comfort zone. If you are looking to learn declarative for educational purposes you're better off choosing an functional-first language. Programmers are expected to learn multiple languages eventually.

I'm not saying to not learn Python first. My point is that these so-called "multi-paradigm" languages are still very much focused on imperative (most of them at least), and choosing Python for the sake of it isn't a good reason.

 

More often than even they realize.

The moment you write your first generator expression, you've already discovered the power of a functional style.

Yes, they start out with OOP (in a rather Self-like style), but much of the language does, despite Guido van Rossom's poor understanding of it, in fact support strong functional style very well, and Python programmers learn it very early on.

code of conduct - report abuse