Re : recommends of redesign OO feature of python !!!

armand.foucault at telecom-bretagne.eu armand.foucault at telecom-bretagne.eu
Thu Oct 25 02:49:59 EDT 2018


   If performance is at stake, then Python might not be the best choice.
   When you pick Python, it's for its other qualities.
   This being said, unless you're writing software for a plane, you're not
   very likely to need that much performance... as long as you code well.

   As for your statement that Python is too complex, I'm curious to read what
   you mean exactly.
   Python programs are way shorter than those written in those industrials
   OOP languages, so I'm assuming you're not talking about that.
   One can even compare the formal grammars of Python and say, Java.
   I'll leave it to you, but believe me, Python is waaaaay simpler than Java.
   So what complexity are you referring to?
   Maybe you'd prefer Haskell's purity?

   Finallyc regarding your first point, I invite you to check out Python
   3.7's dataclasses.

   ---------------------------------------------
   Armand FOUCAULT
   Ing**nieur G**nie Logiciel
   armand.foucault at telecom-bretagne.eu

   -------- Message original --------
   Objet**: recommends of redesign OO feature of python !!!
   De**: iamybj--- via Python-list <python-list at python.org>
   ****: python-list at python.org
   Cc**:

     I am an engineer of java and c#, I want to some personal projects in
     free time, and I choose python.

     After try python, I hava some suggestion.

     The first thing is that python***s class is not well designed than other
     programming languages.
     Using dictionary as data model is the 20th century style, but now is 21t
     century.We usually use strong typed class to express a data model.
     For example, the code presentation of a person in Java/c++/c# may be:
     public class Person {
     public String name;
     public String email;
     public int age;
     }
     The corresponding Python code:
     class Person:
     def __init__(self):
     self.name = None
     self.email = None
     self.gage = None
     It is very strange to define instance members of a class in
     constructor.Even the OOP feature of PHP is very like Java. Python's
     dynamic feature has lost control.

     Second, python is too complex.
     Python is an old programming language.At that time, enterprise
     programming style is very popular, witch like making simple things
     become complex, so force the costumer to pay more money.But now is WWW
     and Internet and Linux time, people like simple production and simple
     programming styles. Every new programming language wants to keep simple.

     Third, python is too slow.
     At the old enterprise programming time, performance is not a critical
     feature. If software runs too slow, customer have to pay more money to
     enterprise software company to buy new hardware.
     Time changed, performance is very important now. Because the complex of
     python, the pypy project process very slow, and not widely used by
     people.

     Totally speaking, simple and performance are mostly required by this
     times. I suggest the python team should stop any new work, and start to
     rebuild a new python with simple grammar and better performance.
     --
     https://mail.python.org/mailman/listinfo/python-list



More information about the Python-list mailing list