Show all projects!

Python vs. PHP

Da ich in letzter Zeit sowohl Python als auch in PHP programmiert habe, möchte ich die Sachen, die mir dabei aufgefallen sind zu Papier bringen.

Generell gilt für mich, ich kann mit jeder Programmiersprache guten und schlechten Code schreiben. Ein Entwickler kann einen Server mit jeder Sprache lahmlegen ;)

Python PHP
Allgemein
Pythoncode wirkt auf mich altbacken. Kontrollkonstrukte ohne Blöcke aus {} erinnert mich an Assembler. Das Fehlen von Freiheiten macht Coding Styles dafür überflüssig. PHP Code kann schnell geschrieben werden, da der Code automatisch formatiert werden kann. Damit Code einheitlich wird, benötigt man den PSR-12 Standard und zusätzliche Tools wie phpcbf.
Pyhton Codestruktur
PHP Codestruktur
Da Python selber nicht viel mitbringt, sind die meisten Funktionen in den
Bibliotheken. Das erlaubt Python ohne Versionswechsel neue Features zu bekommen.
Viele Build-In Funktionen z. B. für Sortierung sind Sprachbestandteil. Daher sind neue PHP Versionen nötig für Erweiterungen.
IDE's

https://www.jetbrains.com/pych...

https://www.jetbrains.com/phps...
Datentypen / Namespaces
Python is strongly but dynamically typed. Seit PHP 7.1 ist sauberes type hinting möglich.
Namespaces ermöglichen Objekte mit demselben Namen.
Paketmanger
pip mittels requirements.txt
composer mittels composer.json
Arbeiten mit verschiedenen Sprachversionen
Mittels virtualenv einfach lösbar
Nur mit Docker oder VMs lösbar
Frameworks
  • Habe nur mit Django gearbeitet. Geht flott von der Hand.
Diverse:
Geschwindigkeit (beide gut, PHP laut https://benchmarksgame-team.pa... schneller)
  • Python 3: Interpreter via AST
  • PHP 7.x Interpreter via Zend Opcode
  • PHP 8 mittels JIT
Debugging und Interaktiver Interpreter

(Bei beiden Vorhanden und gut)

  • pdb
  • Jupyter Notebook
  • Xdebug
  • PsySH - A runtime developer console, interactive debugger and REPL for PHP.

Off-Topic

Python wird gerne im Bereich Data science und Machine learning verwendet.



PHP wird üblicherweise in Web-Applikationen im Backend eingesetzt. Leider hat jeder schon mal vor 10 Jahren mit PHP gebastelt, daher hat PHP den Ruf keine richtige Programmiersprache zu sein.

Fazit

Mit Python zu arbeiten macht mir Spaß, besonders für Proof of Concepts. Code, den ich längerfristig maintainen möchte, schreibe ich lieber in PHP, da ich im Testing dort einfach fitter und daher schneller bin.

Article relase date: / Last update: