Objektorientierung üben...

Daaron schrieb:
Wenn man statt dessen direkt von Anfang an einen vernünftigen Plan aufschreibt, was das Programm tun soll, was es nicht tun soll, wie es gewisse Dinge wohl tun soll,...
Das setzt aber voraus, dass das Problem, das es zu lösen gilt, so wenig komplex ist, dass du alle Ecken und Kanten voraussehen kannst. Sonst bist du mit dem Ansatz nämlich kein Stück besser dran, brauchst aber länger, bis der Enduser was in den Händen hält und dir Feedback geben kann.
Deswegen ist der "ich schreib einfach mal los"-Ansatz gar nicht so schlecht. Setzt aber natürlich voraus, dass man schon fest in der Programmierung und in dem konkreten Fall hier in OOP verankert ist und nicht gerade anfängt das Prinzip zu verstehen. Würde ich also einem Anfänger auch nicht empfehlen.
 
PHP, einfach schnell zu lernen. Man hat sofort Erfolge und kann da ganz gut OOP machen finde ich!
 
Na ja, wenn man vom System zum OO gezwungen werden will, um evtl. etwas besser zu lernen, dann ist PHP keine gute Idee. Viele Sachen bei PHP sind eben nicht in Objekten gekapselt und verleiten dazu, die Sachen einfach so runter zu tippen
 
Daaron schrieb:
Na ja, wenn man vom System zum OO gezwungen werden will, um evtl. etwas besser zu lernen, dann ist PHP keine gute Idee. Viele Sachen bei PHP sind eben nicht in Objekten gekapselt und verleiten dazu, die Sachen einfach so runter zu tippen

Würde ich auch so sagen...

PHP ist nicht gerade optimal um in die OO zu kommen.
 
PHP ist keine "normale Programmiersprache", weil sie speziell für das Web entwickelt wurde und nur in diesem Kontext funktioniert. Daher ist das zum allgemeinen Erlernen des Programmierens wohl eher nicht geeignet.
 
Mumpitz. Ich nutze PHP z.B., um Produktbilder für n Shirt-Shop zu erzeugen: Motiv + ein Rudel nackte Textilen = ein Rudel Produktbilder. Auch andere Sachen lass ich ans PHP-CLI laufen, weils etwas übersichtlicher zu schreiben ist als pure Shell Scripts.

Grafisches Bunti-Klicki sollte man eh hinten an stellen.
 
Stimmt schon wobei ich PHP auch primär im Web sehe. Alles andere kann ich auch gut mit Systemboardmitteln abfackeln, mittlerweile hat eigentlich jedes System mächtige Shells für sowas.

Ich stimmer aber auch zu, dass PHP nicht optimal ist um OO zu üben, da durch seine (größtenteils) eigene prozeduralen Vorgehensweise auch dazu verleitet selbst prozedural zu programmieren. Klar in reinen OO Sprachen wie Java, C# kann ich auch prozedural Programmieren, bei Benutzung der API sieht man aber schneller wie es eigentlich gemacht wird. Der Sinn und Konzepte von OO Programmierung erschließt sich eh erst nach und nach durch Erfahrung, am Anfang fragt man sich eher warum man so einen Aufwand für triviale Probleme betriebt. Aber Probleme bleiben beim Programmieren nicht trivial, ganz im Gegenteil. =)
 
Meine PHP-Erfahrung beschränkt sich auf Wordpress-Themes modden. Da coded man halt gegen die Wordpress-API. Ich glaube aber nicht, dass ich damit größere Webshops oder Websiten selbst programmieren möchte, da würde ich in jedem Fall Java Servlets, Active Server Pages oder Ruby on Rails bevorzugen, mit denen ich auch schon gut Sachen wie ein eigenes Gästebuch etc. umgesetzt habe.

Wie entwickelt man denn professionell PHP? Wie kommt man an Autocomplete? Welche IDE? Wie debuggt man? Ist das alles nicht viel komplizierter als wenn man einfach Java und Eclipse JDT nimmt?
 
Eclipse kann auch PHP, inklusive Autocomplete etc. Dazu noch das Aptana-Plugin, schon kann man auch n FTP-Sync mitm Server machen.
Man könnte auch Dreamweaver nehmen, aber... bäh. Einfach nur bäh.

Mit PHP an größeren Projekten zu arbeiten ist nicht anders als bei Java. Du machst dir ein Konzept, du erarbeitest deine Datenstrukturen und Abläufe, du wählst ein Programmiermuster, z.B. MVC. Du fängst an deine Hilfsfunktionen (z.B. n Autoloader) zu schreiben. Du bastelst deine Klassen und verfeinerst sie. Da ist gar nix anders als in jeder anderen Sprache (von Krams wie Haskell mal abgesehen... die ticken eben ganz anders)

Und weil du auch schon wieder die Ruby on Rails - Keule ausgepackt hast: NATÜRLICH ist RoR "leichter" als PHP. Aber schreib dein Gästebuch doch mal in Ruby, ohne Rails... oder schreib dein Gästebuch in einem der komplexen PHP-Frameworks, z.B. Zend oder Symfony.
ASP oder ASP.NET kannste in der Realität in den Skat drücken. Für Intranet-Anwendungen mag das noch nützlich sein, das Internet hingegen wird von Apache, nginx und den Neuzugängen wie Comanche dominiert. MS IIS ist der einzige Webserver, der ASP/ASP.NET wirklich kann, hat aber einen wirklich erbärmlichen Marktanteil.
 
Daaron schrieb:
Man übt Objektorientierung nicht mit Sprache X. Man setzt sich hin mit Papier und Bleistift. Deine ganze Abstraktionsebene ist vollkommen unabhängig von der Programmiersprache. Es macht viel mehr Sinn, so etwas handschriftlich zu skizzieren, z.B. als Mind Map. Wenn das Papier-Konzept steht kann man 10 Sprachen auf eine Dartscheibe tackern und dann blind einen Pfeil werfen um festzulegen, welche man jetzt nimmt.
This!
Idealerweise machts man es dann auch direkt in UML. Mit etwas Übung hat man dann am Ende die grobe Klassenstruktur stehen und muss quasi nur runtertippen.

F_GXdx schrieb:
Wie entwickelt man denn professionell PHP? Wie kommt man an Autocomplete? Welche IDE? Wie debuggt man?
PhpStorm nehmen und glücklich sein.
 
Manche UML-Designer sind sogar in der Lage, die Struktur direkt in Code zu exportieren, z.B. in Java.
 
Zurück
Oben