php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 25.03.2007, 18:04  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.657
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo zusammen,

grundsätzlich sind die Bücher

- UML konzentriert
- Patterns of enterprise application architecture

von Martin Fowler zu empfehlen. Ersteres führt in UML und damit in den objektorientierten Entwurfsansatz ein, letzteres zeigt Anwendungsbeispiele, wie Software designed werden kann und beschreibt im zweiten Teil des Buches Pattern (Entwurfsmuster), die quasi Lösungsrezepte für Alltagsprobleme sind.

Die Beispiele oben sind zwar erstmal nicht falsch und zeigen auch, was OO grundsätzlich ist, streifen dabei aber nicht den Kern, sprich das OOD (=objektorientierte Design). Wie bereits öfter im Forum diskutiert ist OOP (objektorientierte Programmierung, also eine Klasse schreiben) nicht wirklich OO, wenn man sich vorher kein Konzept (=OOD) überlegt hat.

Ein paar Worte zu OOD:
Objektorientierung geht von einem Ansatz aus, Dinge, wie in der Natur zu beschreiben. Ein Mensch hat nicht nur Eigenschaften (Attribute), sondern hat auch Funktionen (Methoden), die Eigenschaften zeigen oder gewisse Dinge tun. Da ein Mensch in natura auch ein Ganzes ist, würde ein Mensch in der objektorientierten Welt auch ein Objekt (z.B. Kunde) sein. Ebenso gibt es Unterschiede zwischen Objekttypen. Einerseits existieren Daten-Objekte, wie der Kunde, die lediglich Daten halten und wenige Methoden haben, andererseits gibt es Logik-Objekte (z.B. Business-Schicht), die die Ablauf-Logik einer Applikation beinhalten. Von letzteren gibt es eine Vielzahl von "Unter-Typen", auf die ich nicht genauer eingehen möchte.

Essenz aus meinem Beitrag sollte sein, dass der Weg zu OOP nur über OOD und der dazugehörigen Literatur führen kann.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 25.03.2007, 18:50  
Erfahrener Benutzer
 
Registriert seit: 17.01.2006
Beiträge: 468
Slava
Standard

Zitat:
Zitat von dr.e.
Essenz aus meinem Beitrag sollte sein, dass der Weg zu OOP nur über OOD und der dazugehörigen Literatur führen kann.
ich bin mit dir 100% einverstanden. Ich wollte nur ein wenig einregung machen, damit es einige massen versändlich ist was OOP ist. Ich meine, dass es nicht immer das besste weg ist, sich viel zu viel mit Theorie auseinander setzen, wenn Ziel und Endergebnis von der Theory nicht besonders klar ist.
für die Jenige, die sich mit UML mehr beschäftigen wollen empfehle ich argouml( JavaRuntime ist ein Muss )
http://argouml.tigris.org/
damit kann man sehr gut interface und abstracte classen modelieren und direkt php4 oder php5 code generieren. die grundlagen von OOD müssen aber meine Meinung nach schon ein wenig vorhanden sein.

über die allgemeine Desingpattern mir dem Einsatz bei PHP5 empfehle ich diese seite:
http://www.professionelle-softwareen...erste_auflage/
__________________
Slava
http://bituniverse.com
Slava ist offline  
Alt 25.03.2007, 20:00  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.657
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo Slava,

Zitat:
ich bin mit dir 100% einverstanden. Ich wollte nur ein wenig einregung machen, damit es einige massen versändlich ist was OOP ist. Ich meine, dass es nicht immer das besste weg ist, sich viel zu viel mit Theorie auseinander setzen, wenn Ziel und Endergebnis von der Theory nicht besonders klar ist.
Deine Anregungen und Beispiele sind ja auch nicht mein Angriffspunkt gewesen. Diese waren gut. Was ich sagen möchte ist, dass man sich im Klaren darüber sein muss, was man innerhalb einer Software machen möchte. Ist dies fixiert, sollte man zuerst ein Objektmodell erstellen, die Beziehungen und groben Funktionen klären, ehe man anfängt zu implementieren. Frei nach dem Satz think before you code. Und um ein gutes Design erstellen zu können, braucht man Theorie. Daran führt kein Weg vorbei und da lasse ich auch nicht mit mir diskutieren. Es nützt dir nichts, wenn du von Vererbung keine Ahnung hast und möchtest Funktionen so generisch wie möglich designen.

Wo ich dir Recht gebe ist, dass Theorie hinsichtlich der Beispiele sinnvoll und einfach zu verstehen sein muss. Die von mir genannten Bücher sind das meiner Meinung nach, da insbesondere das UML konzentriert immer wieder Beispiele aus dem Alltag erläutert und zeigt, wie es designed werden sollte. Das letztere Buch zeigt dann wie man das umsetzt. Die Codierung in PHP ist dabei nur eine möglich Form der Umsetzung, befindet man sich auf diesem Niveau der Abstraktion.

Dein Buchtipp "Professionelle Softwareentwicklung mit PHP 5" finde ich gut, da er die Speifika von PHP 5 behandelt, die für die Umsetzung eines Designs notwendig und wichtig sind.

Wie man nun genau an die Sache "OO" herangeht kann ich nicht genau beantworten. Was ich aber immer wieder sehe - und das ist auch der Grund, warum ich mich hier einmische - ist

a) Leute basteln sich einfach eine Klasse aus vorher mal implementierten Funktionen und nennen das objektorientierung,

oder

b) Leute implementieren und verwednen irgendwelche Klassen ohne sich vorher darüber Gedanken gemacht zu haben, was das nach sich zieht, oder welches Design dahinter steckt,

und das ärgert mich, weil es weder sinnvoll noch zielführend ist.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Alt 26.03.2007, 00:41  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Zitat von squig
Hallo,
@Slava Richte deinem Kollegen doch bitte aus, dass seine Beispiele einem beim Lesen des Textes zum Schmunzeln bringen.
OT
Wahrlich amüsant dieses tutorial. "Müffi, das Geruchsgespenst" LOL. Schöne Feierabendlektüre...
nikosch ist offline  
Alt 27.03.2007, 20:16  
Erfahrener Benutzer
 
Registriert seit: 16.08.2007
Beiträge: 702
PHP-Kenntnisse:
Anfänger
Igäl befindet sich auf einem aufstrebenden Ast
Standard

http://de.php.net/manual/de/language.oop.php
__________________
Das Recht auf Dummheit gehört zur Garantie der freien Entfaltung der Persönlichkeit.
Mark Twain
Igäl ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Wiki für Tutorials David Board-Support 28 30.07.2008 11:21
pimps mit hirn gesucht Beitragsarchiv 12 20.08.2005 18:42
Redakteure für sehr großes Projekt gesucht Beitragsarchiv 1 19.08.2005 01:57
PHP Programmierer und Grafiker für größeres Projekt gesucht Beitragsarchiv 9 11.08.2005 22:56
Script gesucht: Bibliothekverwaltung Beitragsarchiv 2 25.07.2005 17:42
Tutorials gesucht für totale Anfänger [Delphy] Beitragsarchiv 5 12.05.2005 22:56
Habe mich zu tode gesucht aber so richtig finde ich keine A. tm-net PHP Tipps 2005 20 01.03.2005 01:29
Party-Community Programmierer gesucht => Bezahlung Beitragsarchiv 7 14.02.2005 18:49
Tutorials, Buchempfehlung, Webseiten zum Thema Grafik Beitragsarchiv 2 27.11.2004 19:27
Unterricht in PHP / MySQL im Raum Kiel gesucht Beitragsarchiv 5 20.10.2004 08:43
einfaches PHP-Forum gesucht BITTE HELFEN PHP Tipps 2004 4 10.07.2004 22:57
[Erledigt] GFX Tutorials Off-Topic Diskussionen 2 26.06.2004 20:37

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
buchtipp oop, buchtip oop, ood essenz, oop php tutorial, oop php5 beispiele

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:43 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.