3 ms·
Not in my experience. Python gives you complete control over object's internals with no real protection mechansim and this is very often abused. Duck typing i
by YZF 13y ago
Not in my experience. Python gives you complete control over object's internals with no real protection mechansim and this is very often abused. Duck typing is abused. Compilers give you some compile time guarantees that you don't get in Python. Not to mention eval(). Monkey patching. You can only pass by reference, not by value, again a big problem. Side effects galore.
I enjoy coding in Python and I've used it on and off for small things over many years but since getting involved in a project which has 100klocs of Python I've become pretty convinced it's a poor choice for this sort of scale.
Reading statically typed code you know what types the different objects are. In Python, no clue. This can be somewhat mitigated through documentation (e.g. see Google's Python style guide).
Want to find all the places a variable, or a class, or a function are used? You're out of luck. Good luck refactoring that bowl of spaghetti.
Yet another factor is that there a lot of people who have built very large systems in other languages (C/C++/Java/C# etc.) so the knowledge of how to manage that is more accessible.