• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

gute oder schlechtes konzept

Um die Frage noch mal aufzugreifen:
Bine: Mit was sind denn Warenwirtschaftssysteme so programmiert?

Da ist irgedwie keiner richtig drauf eingegangen, oder?
Und wenn ich alles richtig verstanden habe, stellt sich für mich eine anderer Frage:
Warum ist PHP (in Verbindung mit mySQl, etc.) eher weniger geeignet?

Jonas
 
Nunja ein Warenwirtschaftssystem schreibt man auch nicht mal so nebenbei, weswegen die wenigsten sowas schon mal gemacht haben dürften.

Generell sind WWS meist in C, C++ und Cobol programmiert. Kleinere Systeme sind nur in einer Sprache gehalten, während größere auch schon mal hybrid sind, d.h. eine Mischung aus mehreren Sprachen und Technologien enthalten. SAP z.B. ist mit Sicherheit in C oder C++ gehalten, allerdings werden viele Erweiterungen und Anpassungen in einer SAP-eigenen Sprache geschrieben so daß man letztendlich einen Mischmasch hat. I.d.R. wird zwischen Backend und Frontend unterschieden und da kann es vorkommen, daß das Frontend z.B. in Visual Basic gehalten ist (weil man da so schön einfach und schnell GUIs mit zaubern kann), während das Backend, welches die komplette DB Kommunikation und die eigentliche Business Logik abbildet, in Java, C++ oder gar C realisiert ist.
Meist gibt es (zumindest von den großen Anbietern) entsprechende Module, die ein Frontend auf Web-Basis zur Verfügung stellen, d.h. das Web-Modul greift bei Anfragen eines Browsers auf die gleichen Funktionen zu, wie ein entsprechendes VB Pendant, generiert aber eben HTML Code aus den Ergebnissen. Da beide Frontends die gleiche Funktionalität abbilden und beide auf die gleichen Funktionen und Datenbestände zugreifen, können sie parallel laufen.

Warum PHP nur bedingt geeignet ist:
Generell kann man ein WWS auch mit PHP programmieren. Und wenn man auf eine reine Weblösung hinauswill, dann ist das auch eine akzeptable Lösung. Zieht man das Projekt und die Realisierung objektorientiert auf, dann hat man später auch gute Chancen das Ganze zu erweitern oder gar als eigenständiges Produkt für seine Branche oder gar Branchenübergreifend zu verkaufen.
Will man allerdings auch z.B. Windows Clients unterstützen, oder zielt man gleich auf eine Lösung die größer ausgelegt ist, dann wird man mit PHP nicht unbedingt weit kommen. Der Grund liegt zum einen in den beschränkten Möglichkeiten zur OOP in PHP, und zum anderen sicherlich auch darin, daß PHP generell einen schlechten Ruf in den wirklich professionellen Bereichen genießt (aka Big Business, Banken, Großkonzerne, usw.), aber vor allem in der mangelnden Umsetzbarkeit des Konzeptes "Middleware". Das Feld Middleware wird heutzutage hauptsächlich von EJB (Enterprise Java Beans) und .NET angeführt. Etwas im Hintertreffen ist CORBA. Middleware bedeutet grob gesagt zunächst einfach mal alles was nicht Frontend und nicht Datenbank ist ( ;) ), d.h. im Grunde wird in der Middleware die komplette Business Logik abgebildet. Dabei wird auf OOP gesetzt und die einzelnen Objekte sind durch eindeutige, vorher definierte Schnittstellen verbunden. Die Schnittstellen erlauben es ein Objekt (z.B. Kunde) als Black Box anzusehen. Dieses Kundenobjekt hat dann Funktionen, um z.B. die Stammdaten zu ändern, es hat eine Liste mit Ansprechpartnern, man kann alle Aufträge zu diesem Kundenobjekt abrufen, usw.
Dadurch, daß die Schnittstellen klar definiert und von außen abrufbar sind, kann ich die einzelnen Objekte auch nach dem Kompilieren immer wieder neu gruppieren und miteinander verbinden, um so geänderten Anforderungen zu entsprechen.
Außerdem ist es nicht erforderlich, daß alle Objekte lokal verfügbar sind, sondern diese können beliebig über mehrere Rechner und Netze verteilt sein.

Webservices passen ansatzweise in diese Middleware hinein, aber sind eben nicht ganz das gleiche.
 
Danke für die ausführliche Erklärung!

Zählst du das hier Geschriebene zu deiner "Allgemeinbildung" im weitesten Sinn, oder hast du dich irgendwann einmal speziell damit befasst?
Aus jeden Fall ist mein Wissensstand dank jswelt.de mal wieder um eine Stufe erhöht worden!

Jonas
 
Für einen Informatiker sollte das schon Allgemeinbildung sein, für Webentwickler ist das vermutlich eine Stufe zu hoch. Die haben i.d.R. mit ihren Scriptsprachen zu tun und weniger mit Anwendungsentwicklung. Wobei die beiden Gebiete nicht wenige Gemeinsamkeiten besitzen, für mich ist beides identisch. Da ich beide "Welten" kenne (und aus der Anwendungsentwicklung komme) ist Webentwicklung nix anderes als Anwendungsentwicklung mit anderen Rahmenbedingungen.

Als reiner Internetentwickler kann es aber trotzdem nicht schaden, ein bißchen über den Tellerrand seiner einzigen Skriptsprache zu schauen, sonst bleibt man irgendwann auf einem Level stehen, während alle anderen vorbeiziehen. Denn selbst das sonst als Animationsformat verschriehene Flash geht mit den beiden letzten Versionen (MX und jetzt neu MX 2004) immer mehr in Richtung Internetapplikationen.
 
Irgendwie kann ich mich erinnern als C, C++ aufkam, das man Cobol für taugtnix und alten lahmen Kram erklärt hat.

Ja, also dankeschön auch für den ausführlichen Kommentar. Fall ja auch immer gern über den Tellerrand *plumps*aua*
 
Zurück
Oben