Python Disadvantages
- Its an interpreted language, not as fast as a compiled language
- Slower than C & C++. Since Python is a high level language unlike C, C++, its not close to hardware
- Not good for Gaming, Mobile dev, Desktop UI applications
- Not good for memory intensive, due to flexibility of data types, python memory consumption is high
- Python's database access layer is found to be bit underdeveloped and primitive (JDBC/ODBC)
- GIL
- Global interpreter lock: can’t run more than one thread using in one interpreter
- Creating, managing and tearing down processes (multi-processing, processes are heavier than threads) is more expensive than doing the same for threads. Furthermore, inter-process communication is relatively slower than inter-thread communication.
- Both these drawbacks may not make Python a practical technology choice for super-critical or time-sensitive use-cases.
- Python community are working to remove the GIL from CPython. One such attempt is known as the Gilectomy.
- GIL exists only in the original Python implementation that is CPython.
- Python has multiple interpreter implementations. CPython, Jython, IronPython and PyPy, written in C, Java, C# and Python respectively, are the most popular ones.
No comments:
Post a Comment