# PHP und Programmierstil



## Peter Bönnen (26. Dezember 2003)

Hallo zusammen.

Da ich heute in der richtigen Stimmung bin, muss ich hier einfach mal was loswerden. Kann sein, dass ich im folgenden Text kleinlich wirke, aber mir geht das echt langsam arg gegen den Strich.

PHP ist schön und gut. Ich habe auch nichts gegen die Einsteigerfreundlichkeit der Sprache. Allerdings fällt mir immer mehr und mehr auf, wie gerade Umsteiger, die mit HTML und PHP begonnen haben zu "programmieren" und sich nun einer anderen Sprache zur Programmierung widmen wollen, fast mehr Schwierigkeiten zu haben scheinen, als komplette Neulinge. Sicherlich nicht in der Hinsicht, was ein Grundverständnis für Programmiersyntax angeht, aber auf die Erwartungshaltung und auch das Programmierverständnis bezogen.

Zum einen bekommt man ziemlich viele Funktionen fertig serviert. Das ist zwar auch in "richtigen" Programmiersprachen so, aber diese lernt man eben auch nicht einfach so nebenbei, um irgendeine tolle Webseite zu machen, sondern eher aus dem Interesse an der Sprache und der Funktionsweise selber. Gut aussehende Ergebnisse sind bei wenig PHP in viel HTML nunmal schneller zu bewundern, als bei anderen Sprachen. Da interessiert es dann nicht mehr, wie etwas funktioniert, sondern nur noch, dass das erzeugte Ergebnis gut aussieht (was zwar eher auf das HTML zurückzzuführen ist, aber das Erfolgserlebnis für die gelungene Dynamik ist natürlich elementar mit der Optik der Seite gepaart). Anstatt sich selber mit einem Problem auseinanderzusetzen, wird dann direkt nach einer passenden Funktion gefragt, um einfach nur möglichst schnell eine Seite durch etwas Dynamik aufzuwerten.

Zum anderen vermittelt PHP keinerlei Bild von Datentypen. Da wird's schon zum Problem wenn jemand den Datentyp in einer Datenbank festlegen muss. Wenn man dann für eine andere Programmiersprache erklärt, dass Variablen deklariert werden müsssen, oder man nicht einfach zwei Strings, die Ziffern enthalten, mathematisch addieren kann, kommt schon einmal des öfteren ein ziemlich blödes "Aber das muss doch gehen, in PHP geht das auch so..." oder "Das ist aber umständlich.".

Dazu gehört auch, dass oft Stringfunktionen auf Zahlen angewandt werden, wo es auch mit simpler Mathematik ginge. In PHP funktioniert das noch wunderbar; versucht man das gleiche dann aber in einer anderen Sprache, so muss man erst konvertieren, Stringfunktion anwenden und eventuell wieder zurückkonvertieren. Sinnvoller ist es da natürlich, wenn man gleich in PHP Datentypen beachten und über geeignetere und simplere Möglichkeiten nachdenken würde, als gleich auf irgendwelche Funktionen zurückzugreifen.

Das ist aber vor allem auch ein Appell an die Leute, die Lösungen vorstellen und damit etwas lehren wollen.

Das gleiche gilt für höhere Sprachelemente wie z.B. variable Variablen. Auch die haben in der höheren Programmierung ihre Daseinsberechtigung, aber doch nicht, wenn jemand danach fragt, wie sich durchgezählte Variablennamen realisieren lassen. Da gehören bei gleichem Datentyp der durchzunummerierenden Variablen Arrays hin.  Das sollte im Anfängerbereich sogar das absolute Paradebeispiel für Arrays sein. (Da gibt's zwar auch einen aktuellen Thread im PHP Forum, aber das Beispiel erwähne ich eher, weil mir das schon ziemlich oft über den Weg gelaufen ist).

Zum Thema Programmierstil gehört aber natürlich auch die Strukturierung von Code. Wenn ich mich darüber aber auch noch auslassen würde, dann wär's wohl endgültig zu viel. Man muss zugeben, dass PHP doch sehr  dazu verleitet, mal eben ein paar befehle in einer Zeile mitten in den HTML Quelltext zu quetschen.

Das alles ist natürlich für den Hobby-Homepage-Bastler nicht von Belang. Das dumme ist nur, dass man "Erfahrungen in PHP" schon sehr bald nicht mehr als positive Eigenschaft verkaufen kann, sondern eher schräg von der Seite angeguckt werden wird, mit der Frage im Blick: "Aha, und welche *brauchbaren und ausbaufähigen* Kenntnisse bringen Sie mit?".

Letztlich kann mir das auch egal sein. Es ist nur schade für diejenigen, die sich als Einsteiger wirklich mit den Grundlagen der Programmierung auseinandersetzen und dazu eben PHP als Mittel wählen.

So, das musste raus. Übertrieben? Eure Meinung dazu würde mich interessieren.

Peter


----------



## der_Jan (26. Dezember 2003)

Bevor ich angefangen habe PHP etwas zu mach überhaupt keinen Schimmer gehabt wie sowas ablaufen kann. Mitlerweile versteh ich das etwas.
Und ich hab mich voher an sachen wie C++ Versucht, und nie ein Wort verstanden von Schleifen und anderen gedöns, weil mich immer der Code abgelenkt hat. Und Schleifen zu verstehen ist besser als Behfehle in Visual Basic abzuschreiben und das Desgin drum herum zu machen, durch Drag and Drop und alles dann als selbst gemacht zu verkaufen.


----------



## fld (26. Dezember 2003)

Jip, Fluke, da kann ich Dir in absolut jedem Punkt nur zustimmen. Danke, daß Du den Beitrag geschrieben hast -- hätte ich das in die Hand genommen, wäre das möglicherweise in eine Beleidigungsorgie abgeglitten.

Die Problematik ist, daß ein schlechter Programmierer schlechten Code in jeder Sprache schreiben wird. Leider ist ein ganzer Haufen neuerer Entwicklungen eine Brutstätte für schlechte Programmierer. Darunter zähle ich unter anderem: php, Python, [Visual] Basic, Java (jawohl, JAVA!), ActionScript, etc. Bisher habe ich noch keinen Programmierer kennengelernt, der mit einer dieser Sprachen angefangen hat und heute guten Code schreiben kann. Solange ich kein lebendes Gegenbeispiel erlebt habe behält das folgende Zitat seine Gültigkeit: 





> _Edsger Dijkstra:_
> *It is practically impossible [sic] to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.*



.f


----------



## phi_2k (27. Dezember 2003)

Also ich programmiere mittlerweile schon seit knapp 5 Jahren. Angefangen hat bei mir alles als ich meine Liebe zur Programmierung in C entdeckt habe. Dann habe ich C wirklich "durchgehend" gelernt und bin anschlißend zu C++ übergegangen. Mittlerweile hab eich mich in allen unterschiedlichen Programmiersprachen durchgearbeitet und behersche mittlerweile C / C++ / JAVA / VB / ASP / .NET. Aber an alle Jungprogrammierer und Neulinge:

Es kommt nicht darauf an mit welcher Sprache ihr beginnt. Das Wichtigste ist meiner Meinung nach, dass ihr euch folgendes aneignet:

*) ordentliche Syntax
*) Ordnung und eiserne Disziplin beim Codeschreiben
*) Geduld und Ausdauer

Davon hängt ab ob ihr irgendwann die hohe Kunst der Programmierung "beherrscht". Abschließend muss ich aber sagen, dass ich das Erlernen der Programmierung mit C als Anfangssprache nicht für schlecht halte.


----------



## NuKe (27. Dezember 2003)

Ich bleibe mal sachlich und sage: du hast, zu einem gewissen prozentsatz, recht.
Man sollte NICHT mit PHP Programmieren anfangen, da kann nicht viel gutes Rauskommen!
Ich lerne seit 3 Jahren C++, hatte vor 9 Jahren mit PASCAL angefangen und schon vor 11 Jahren Batchdateien gemacht soweit man das Programmieren nennen kann.
PHP macht einem vieles sehr einfach - ich sehe keinen grund weshalb man PHP jetzt ändern sollte.
Wenn ich in C++ oder ASP (ja ich lerne seit 3 monaten auch ASP) Programmiere sehe ich einen starken unterschied zwischen den Sprachen.
ASP als Basicdialekt und PHP als C Dialekt unterscheiden sich wie Himmel und Hölle , PHP und C sind sich sehr ähnlich, bis auf den Aufbau des Programms/Scriptes.
PHP hat immer nur Eingabe/Verarbeitung/Ausgabe (klassisches EVA prinzip) und C++ muss auf Rückmeldung gefasst sein bzw. diese verwenden um zu "funktionieren".
Wenn ich C++ Programmiere kann es vorkommen das ich zwischendrin vergesse eine Variable zu definieren da ich mehr PHP programmiere - aber da komme ich spätestens nach dem nächsten "F9" hämmern drauf.
Umgekehrt passiert es mir nie dass ich in der Bunten Dreamweaver Codeansicht (die übrigens IMHO besser ist als die von CPP Builder) eine variable definiere.
Es ist ein klarer Fall für mich, sobald ich C++ programmiere oder ASP das ich die Strings umwandeln muss.
Natürlich finde ich es umständlicher, aber nicht nur deswegen sondern auch aus vielen anderen gründen ist mir PHP sympatischer.

Was ist gegen dynamische variablen einzuwenden? Ich verwende Arrays und dynamische Variablen Hand in Hand - haben beide sehr Praktische seiten.

Ich darf mich jetzt nicht darüber aufregen das der Beitrag eigentlich gegen PHP war - er war es nähmlich nicht und ich muss dir inzwischen in den meisten punkten punkten zustimmen.
Trotz allem ist für fortgeschrittenere vor allem für Ex-C++ Programmierer PHP mehr als ASP zu empfehlen, allein wegen der Codestruktur.

mfg,
NuKe

-------------------------------------
Ja ich kann PHP: 
http://specialists.de.ms
http://aquata.de.ms


----------



## Christian Fein (27. Dezember 2003)

> _Original geschrieben von fld _
> *Jip, Fluke, da kann ich Dir in absolut jedem Punkt nur zustimmen. Danke, daß Du den Beitrag geschrieben hast -- hätte ich das in die Hand genommen, wäre das möglicherweise in eine Beleidigungsorgie abgeglitten.
> 
> Die Problematik ist, daß ein schlechter Programmierer schlechten Code in jeder Sprache schreiben wird. Leider ist ein ganzer Haufen neuerer Entwicklungen eine Brutstätte für schlechte Programmierer. Darunter zähle ich unter anderem: php, Python, [Visual] Basic, Java (jawohl, JAVA!), ActionScript, etc. Bisher habe ich noch keinen Programmierer kennengelernt, der mit einer dieser Sprachen angefangen hat und heute guten Code schreiben kann. Solange ich kein lebendes Gegenbeispiel erlebt habe behält das folgende Zitat seine Gültigkeit:
> .f *



Ich habe vor 13 Jahren mit Basic angefangen, und dann Pascal programmiert, dann C++ ne weile nichts und dann mit PHP wieder weitergemacht , über C++ .net und hauptsächlich Java. 
Java als brutstätte schlechter Entwickler zu nennen ist schon dreist und zeugt von Unkenntnis. In keiner Sprache wird derart auf korrekten Umgang mit Object Orientierter Technik  gedrillt wie in Java. Das fängt mit dem Muss an Exceptions zu behandeln und geht weiter über den MVC Design des SDK.

Ich bin eindeutig ein lebendes Gegenbeispiel, denn ich weiss das mein Code sauber und gut ist. Währe er es nicht dann würde meine Auftragslage massig zurückgehen, und ich hätte nichts mehr zu beissen.

Und ja auch ich programmiere C++ und ja ich halte von der Sprache weniger als von Java. 
Sie ist alt und unproduktiv. 
Zeigerarithmetik hat den netten sicherheitstechnischen negativen Nebeneffekt möglicher Bufferoverflows, diese haben in Business Anwendungen nichts zu suchen weshalb, viele Grossprojekte im Bankwesen allzugern mit J2EE durchgezogen werden.

Um zum eigentlichen Threadthema zurückzukommen:
@ Fluke: Das hat zum Grössenteil damit zu tun aus welchen Gründen die Leute PHP programmieren. Es liegt in unserer Zeit das viele Onlinespiele spielen und  ebenso ist es mode das diese dafür tolle Internet Seiten bauen. 
Sprich PHP zu lernen ist für viele einfach nur ein Werkzeug um eben auf die schnelle mit sowas glaenzen zu können.
Andere Motivation == andere Vorstellungen.
Wenn mir jemand erzählt das stark typisierende Sprachen nicht von nöten sind, dann weiss ich das einfach besser. 
Ich weiss aus meiner täglichen Arbeit wie dankbar ich über jeden Fehler bin der mir zur Kompilierzeit gemeldet wird, anstatt Laufzeitfehler zu produzieren. 
Mann muss erst in einem aufwändigerem Projekt stecken und einen nicht nachvollziehbaren Laufzeitfehler mitgemacht haben der einen 3-4 Nächte durcharbeiten lässt um den Wert einer stark typisierenden Sprache kennen zu lernen.
Das muss aber nicht die Aufgabe der Hobby Programmierer sein, und somit lass sie einfach in dem Glauben. Die Diskussion bringt rein gar nichts.

Wer meint mit dem Wissen von einer oder zwei Sprachen solche Dinge bewerten zu können, der ist nicht offen genug um  diese Dinge zu verstehen.
Wer wirklich  etwas lernen will, der bewertet das nicht ohne zu wissen, sondern versucht zu verstehen, weshalb in anderen Sprachen dies so oder so ist.



> Das alles ist natürlich für den Hobby-Homepage-Bastler nicht von Belang. Das dumme ist nur, dass man "Erfahrungen in PHP" schon sehr bald nicht mehr als positive Eigenschaft verkaufen kann, sondern eher schräg von der Seite angeguckt werden wird, mit der Frage im Blick: "Aha, und welche brauchbaren und ausbaufähigen Kenntnisse bringen Sie mit?".



Eine Programmiersprache darf nicht reichen als Kenntnisse. Ich habe beruflich allein innerhalb des letzten Jahres Projekte in J2EE / .NET / ASP VBScript  / PHP und Ruby durchziehen müssen.  Zudem gab es ein Projekt für das ich mir eben ActionScript Kentnnisse anlernen musste, zumindestens genug um den Zusammenhang nachvollziehen zu können. 3 Verschiedene Datenbank Systeme usw.
Mir hilft es das ich mir Zeit genommen habe viele verschiedene Programmiersprachen zu lernen, und als Programmierer sollte mann sein Kenntnisse weit genug streuen um flexibel einsetzbar zu sein.


----------



## Wolfsbein (27. Dezember 2003)

Ohne jetzt irgendwie die ganzen Weisheiten kommentieren zu wollen. Was den Stil mit PHP betrifft hat der Ersteller recht. Daher empfehle ich immer mit 
error_reporting  =  E_ALL & ~E_NOTICE zu programmieren (sollte eigentlich sowieso gemacht werden). Und auch wenn es nicht nötig ist auch in PHP eine Variablenkonvention wie z.B. die hungarian notation zu verwenden. Nur damit man weiß, dass man jetzt einen String und einen Integer addiert.


----------



## Matthias Kannengiesser (27. Dezember 2003)

Ich werde auch nicht die einzelnen Antworten kommentieren, aber eines möchte ich schon los werden. Es ist schon seit Jahren ein Diskussionsthema an Hochschulen und Universitäten und pro Dekade kommt wieder etwas neues und man stellt fest, dass die Arbeitsweise zu vor vielleicht doch etwas umständlich, unhandlich, unflexibel, etc. war.

Eines steht für mich jedoch fest - bevor ich mir ständig um den Programmierstil sorgen mache verdiene ich doch lieber Geld mit dem was mir zur Verfügung steht. Ein Handwerker wird sicher dass eine oder ander mal über sein Werkzeug herziehen, aber er wird nicht drum herum kommen es einzusetzen, wenn er seinen Lebensunterhalt bestreiten will.

Die einzelnen Programmiersprachen, über die hergezogen wird sind nun mal Standard und dies nicht seit heute. Wer nicht zufriden ist kann sich ja ranmachen eine eigene Sprache zu entwickeln oder an den akt. Programmiersprachen mit zu wirken - und dies meine ich nicht sarkastisch. Nur beschweren und keine konstruktiven Vorschläge zu bringen ist etwas dürftig.

Was der Wink bzg. der Einsteiger, Fortg, bis Lehrende bet. - PHP ist sicher nicht ein parade Beispiel für Programmiersprachen, aber schlechter als andere Programmiersprachen ist es in keinem Fall - PHP ist anders, wäre die Sprache aufgebaut, wie C++ könnten wir sie C+++ nennen. 

Was die strikte Typisierung und andere Konventionen bet. dürfte PHP genauso, wie sämtliche ECMAScript v3 basierten Sprachen noch einiges dazu lernen - aber hierfür gibt es ja den ECMAScript v4 - wie man sieht hat hier ebenfalls eine Weiterentwicklung stattgefunden. Auch die Urväter der Programmiersprachen hatten die Weisheit nicht mit Löffeln gefressen!

Fazit: Wir bleiben immer lehrlinge des Lebens und lernen nie aus - das gilt auch für Entwickler von Programmiersprachen, Betriebsystemen, etc. Nur es macht einen unterschied ob man lediglich darüber philosophiert, wie schön es mit der ultimativen Programmiersprache oder Betriebsystem sein könnte - oder ob man mit dem vorhanden möglichst gute Ergebnisse erzielt und vielleicht sogar den Schritt wagt und eigene Ideen in Programmiersprachen bzw. Systeme einzubringen. 

Liebe Grüsse
Matze

P.S.: Und ohne PHP würde im übrigen das Forum nicht laufen - da wäre dann wohl Perl oder ASP dran.


----------



## Grimreaper (27. Dezember 2003)

Mein Kommentar zu Python:
Ganz im Gengenteil, ich finde das Python zu guten Stil erzieht. Ich hab mich wirklich nicht lange mit Python beschäftigt, aber ist es nicht so, dass man in Python gezwungen ist ordentlich einzurücken, damit zusammengehörige Codeblöcke (z. B. Schleifen) auch als zusammengehörig anerkannt werden?

mfg Grimreaper


----------



## melmager (27. Dezember 2003)

Nun PHP und schlechter Programmierstyle hängen nicht unmittelbar zusammen 

Man kann in jeder Sprache einen schlechten Code abliefern.
Nun eins ist sicherlich richtig, die meisten Programmierneulingen steigen mit PHP ein.
Dass da verbesserungswürdige Quellcode rauskommt kann man aber nicht der Sprache PHP
anlasten.
In früheren Tagen ist man halt in Basic eingestiegen, heute ist es PHP.
Der Vorteil für PHP ist doch das die Sprache überschaubar kompakt ist.

Die beste Lernspache zum Programmierlernen ist nach meiner Meinung immer noch Pascal.

Man kann auch über andere Sprache lästern 
JAVA: Eine Sprache die schon für einfache Stringmanipulation eine eigene Classe braucht und bei 
Dynamische Datenstruktuen von hinten durch die Brust ins Auge arbeitet. Und der Anspruch
Systemunabhängig zu sein ist immer noch mehr Wunsch wie Wirklichkeit.

C/C++: Der Klassiker für schlechten Progammierstyle. Unübersichtlich bis zum geht nicht mehr.

Und ob eine Sprache OOP ist oder nicht ist nach meiner Meinug zweitrangig. 
Meist wird das OOP Prinzip von den Sprachen (z.b Java eher eingeschränkt) und es verleitet
die Programmierer dazu eine miserable Documentation für ihre Classen abzuliefern
wobei ich wider bei PHP bin:
PHP ist immer noch die bestdocumetierte Sprache die es gibt.


----------



## chibisuke (27. Dezember 2003)

Über geschmack läst sich bekanntlich streiten, und genau das ist es was dieses Thread hier tut.

Ob PHP nun eine gute oder miserable programmiersprache ist hängt ganz alleine vom standpunkt des Betrachters ab. Gehst du mal von der Seite eines Leihen oder Hobby programmierer heran der möglichst schnell möglichst einfach gute ergebnisse haben will, so ist PHP sicher von Vorteil. 
Und PHP wurde ja ursprünglich auch gar nicht entwickelt um im Komerziellen berech Anwengung zu finden. Und dort wird ja vermehrt ASP.NET und JSP eingesetzt. Viele Firmen haben auch schon komplett die Finger von solen sachen gelassen und programmieren wieder mit dem guten alten C.
z.B. kann ich mir nicht vorstellen das e-bay mit PHP, ASP oder JSP arbeitet. nein das sind SAPI applikationen!

und wenn jemand JAVA als eine produktionsstätte schlechten Codes bezeichnet, dann soll er erstmal JAVA lernen. Man kann nicht über etwas reden von dem man keine ahnung hatt. 

Java ist mit seiner Objektorientierung so aufgebaut, das man gezwungen ist sauberen code zu Programmieren. Vergiss bei einem dateizugriff das EH und du kannst die klasse nichtmal Kompilieren!

Außerdem kann man auch in PHP sauber Programmieren...

ein error_reporting(E_ALL); sollte klarheit schaffen. Dann regt er sich sogar über nicht deklarierte variablen auf!


----------



## gizzy (27. Dezember 2003)

PHP als Sprache kann man objektiv nicht schlechtmachen. Das Variablenhandling ist dürftig, zugegeben, ASP ist meistens schneller, auch zugegeben - aber dafür hat PHP den Rückhalt einer immens großen Community mit all den bekannten Vor- und leider auch Nachteilen. Das man mit PHP eine ganze Menge machen kann, wird hier niemand bestreiten.

Christian hat hier die extreme Zunahme von Online-Gamern angesprochen - das ist für PHP ein Rückschlag der übelsten Sorte. Viele von diesen Clans - ob sie jahrelang oder nur ein paar Tage existieren spielt dabei gar keine Rolle - "brauchen" eine Homepage mit einem "Warscript", einem "Gbook", einem "Poll" - und was weiß ich noch alles. Viele allerdings wollen keine frei verfügbaren Scripte verwenden, weil da ja ein Copyright-Hinweis drin ist. Also versuchen die Clanleute selbst etwas zusammenzufummeln oder "engagieren" einen Kollegen, von dem sie mal gehört haben er hätte Ahnung.

Und genau diese Leute sind es dann, die den erwähnten Katastropencode fabrizieren - und zwar entweder weil sie keine Ahnung von PHP haben ("Ich will doch nur mal eben einen Counter basteln...") oder aber schlicht und ergreifend den Sinn und Zweck guten Codes nicht einsehen ("Wozu - funktioniert doch auch so..."). Wegen diesen armseligen "Codern" eine ganze Sprache zu verurteilen ist irgendwie nicht der wahre Jakob, finde ich.

Ich bin mittlerweile seit 4 Jahren "PHPler", anders als die  meisten Vorredner kann ich weder J2EE noch Python oder C# / C++ und ich lerne gerade ASP (ich muß dazu sagen daß ich ein komplett anderes Fach studiere...). Trotzdem kann ich von mir behaupten, daß ich sauberen Code schreibe - und zwar schon immer.


----------



## Christian Fein (28. Dezember 2003)

melmager hat gesagt.:
			
		

> Man kann auch über andere Sprache lästern
> JAVA: Eine Sprache die schon für einfache Stringmanipulation eine eigene Classe braucht und bei
> Dynamische Datenstruktuen von hinten durch die Brust ins Auge arbeitet. Und der Anspruch
> Systemunabhängig zu sein ist immer noch mehr Wunsch wie Wirklichkeit.



Nein das kann mann so nicht stehen lassen. Stringmanipulationen sind logischerweise in Klassen gekapselt da Java bis auf int long boolean double float alles ObjectOrientiert kapselt.
Das haben OOP Sprachen ansich, das macht Ruby , .net genauso und ist damit guter OOP Programmierstil.



			
				melmager hat gesagt.:
			
		

> Und ob eine Sprache OOP ist oder nicht ist nach meiner Meinug zweitrangig.
> Meist wird das OOP Prinzip von den Sprachen (z.b Java eher eingeschränkt) und es verleitet


Wo bei Java eingeschränkt? Ich hoffe du verwechselst jetzt nicht Java Script mit Java.
Ansonsten hätte ich gern ein Beispiel wo du " OOP bei Java eingeschränkt " siehst.



> die Programmierer dazu eine miserable Documentation für ihre Classen abzuliefern
> wobei ich wider bei PHP bin:
> PHP ist immer noch die bestdocumetierte Sprache die es gibt.


Sorry aber die bestdokumentierte Sprache ist immer noch C.




			
				Matthias Kannengiesser hat gesagt.:
			
		

> Eines steht für mich jedoch fest - bevor ich mir ständig um den Programmierstil sorgen mache verdiene ich doch lieber Geld mit dem was mir zur Verfügung steht. Ein Handwerker wird sicher dass eine oder ander mal über sein Werkzeug herziehen, aber er wird nicht drum herum kommen es einzusetzen, wenn er seinen Lebensunterhalt bestreiten will.


Da hast du recht Matthias, jede Sprache hat ihren einsatzzweck und den scheint sie zu erfüllen, sonst könnte sie sich nicht am Markt behaupten.
Dennoch geht es hier hauptsächlich um  eine Sprache um einzusteigen, Programmieren zu lernen. Aber dort gibt es einige Sprachen die in ihrem Einsatzgebiet zwar nützlich sind, aber als Lehrmittel dennoch nicht geeignet sind.



			
				chibisuke hat gesagt.:
			
		

> Ob PHP nun eine gute oder miserable programmiersprache ist hängt ganz alleine vom standpunkt des Betrachters ab. Gehst du mal von der Seite eines Leihen oder Hobby programmierer heran der möglichst schnell möglichst einfach gute ergebnisse haben will, so ist PHP sicher von Vorteil.
> Und PHP wurde ja ursprünglich auch gar nicht entwickelt um im Komerziellen berech Anwengung zu finden. Und dort wird ja vermehrt ASP.NET und JSP eingesetzt. Viele Firmen haben auch schon komplett die Finger von solen sachen gelassen und programmieren wieder mit dem guten alten C.
> z.B. kann ich mir nicht vorstellen das e-bay mit PHP, ASP oder JSP arbeitet. nein das sind SAPI applikationen!


Bei Ebay ist  es eine SAPI Applikation, Amazon ist J2EE.
PHP bietet eine Menge, und der einsatzraum der Sprache gewinnt an bedeutung. Je mehr eine Applikation von der dynamischen Webseite hin zur 
Webapplikation geht, umso mehr verliert PHP an bedeutung. Beim Programmcode von Ebay  wird wohl wenn es hochkommt  0,1 Prozent des Programmcodes noch mit Generierung der Webseite zu tun, weshalb sich hier auch eine SAPI Lösung anbietet.




			
				chibisuke hat gesagt.:
			
		

> Außerdem kann man auch in PHP sauber Programmieren...


Da hast du auf jedenfall recht, letztendlich kommt es immer auf denjenigen an der den Code plant und schreibt.
Aber als Anfänger kann mann nicht sauberen Code schreiben, das kommt mit der Zeit und der Erfahrung welche eigene Vorteile dieser Aufwand bringt. 
Manche Sprachen erlauben dem Anfänger auch mit schlechtem Code Ergebnisse zu erzielen und trainieren diesen schlechten Stil an. 
Hier sind einige Sprachen dann doch eher gnadenlos und verlangen das eine oder andere, oder melden einen Kompilierungsfehler. 
Ich will dort wieder das Exception handling von Java aufführen. 
Beispiel SQLException. 

Jede Datenbank Operation kann eine SQLException werfen, in Java wird mann dazu gezwungen irgendwas mit dieser Exception anzufangen. Sie zu behandeln, da ist mann gezwungen sich gedanken darüber zu machen:
Gebe ich die Fehlermeldung auf stdout aus? Leite ich auf eine Fehlerseite um (Servlets) ?  Logge ich diese Fehlermeldung? Oder versuche ich in einer betreffenden Fehlerklasse diese Operation zu wiederholen?
usw. 
Bei PHP wird von Anfängern immer davon ausgegangen das mysql_query schon funktionieren wird wenn er einmal funktioniert hat.


----------



## webfreak (28. Dezember 2003)

Ich Programmiere auch schon lange verschiede Programmiersprachen, darunter C++, VB, php ua. 
Ich sehe die Problematik folgendermaßen:
PHP ist eine Scriptsprache, wogegen C++ eine Programmiersprache ist. (Ich hoffe dass ich damit richtig bin)

Eine Scriptsprache soll einfache Programmieraufgaben lösen, eine Programmiersprache auch komplexe. 

Deshalb kann ich dem ersteller dieser Seite nicht 100% recht geben. Ich finde c oder pascal ein guter Einstieg in die Programmierung, aber php ist meiner Meinung nach eine ander Schiene.

webfreak


----------



## Martin Schaefer (28. Dezember 2003)

Hi,

sehr interessantes Thema, auch wenn ich selbst kein PHPler und auch kein
echter "Coder" bin. Besonders die Beiträge von Christian und Matze finde ich
sehr gut und differenziert.

Für mich ist die Anwendung einer Programmier- oder Skriptsprache ein Mittel,
um einen ganz bestimmten Zweck zu erfüllen. Dabei muss ich zugeben, dass
für mich der ökonomischste Weg zum Ziel der Beste ist, da ich mit meinen
programmiertechnischen Ausdünstungen Geld verdienen will.

Sicherlich geht mir so manches an Möglichkeiten bzw. Fähigkeiten ab, was
ich von Zeit zu Zeit auch sinnvoll einsetzen könnte. Da zieh ich mir den Schuh
gerne an, dass ich mich nicht ausreichend tief mit der Materie beschäftige.
Nur, wenn man auf verschiedenen Gebieten gefordert ist, dann muss man eben
den praktikabelsten Weg suchen und finden, um die Sache rund realisieren zu
können.

Was ich damit sagen möchte ist, dass ein reines Spezialistentum sicherlich
auf dem einen Gebiet massive Vorteile bringt, aber dafür eben auf anderen
Gebieten Lücken erkennen lässt.
Es wird immer die "Freaks" und "Spezis" geben, und das mit voller Berechtigung.
Aber es wird auch immer diejenigen geben, die eine breitere Ausrichtung haben
und somit die Tiefe im Einzelnen nicht haben.
Eine Programmier- oder Skriptsprache, die beiden Gruppen offensteht und
sowohl dem Anfänger, als auch dem Profi Erfolge ermöglicht ist die Sprache,
die eine hohe Akzeptanz findet. Und das ist in meinen Augen nie ein Mangel,
sondern ein großes Plus.

Mein Haupteinsatzgebiet von Programmiersprachen ist Macromedia Director
mit seinem "Lingo". Diese Sprache kommt vollkommen ohne Typdeklaration
bei Variablen aus. Ein grober Mangel in den Augen vieler "Coder", mag sein.
Bezogen auf die Anwendung ist es mir aber in den mittlerweile fast 10 Jahren
Erfahrung noch nie sauer aufgestoßen. Naja, vielleicht mach ich ja was falsch? 

Gruß
Martin


----------



## melmager (28. Dezember 2003)

> Wo bei Java eingeschränkt? Ich hoffe du verwechselst jetzt nicht Java Script mit Java.



Nun es ist nur einfache Vererbung möglich - wenn das nicht eingeschränkt ist -
Ganz davon ab das ich immer noch nicht verstanden habe warum es guter OOP Style ist nur Functionen zu expotieren obwohl es die Sprache es auch bei Variablen zulässt.
Der einzige Grund liegt wohl darin, das ich Variablen nach aussen hin nicht schreibschützen kann.
Selbst in einer so einfachen Sprache wie JAVASCRIPT gibt es Variablen auf die ich nur lesend zugreifen kann. Aber selbst wenn ich exportierte Variablen überschreiben kann warum sollte ich das als Programmierer tun?
$_GET['eingabe']= "neuer wert";
Ich weiss nicht ob das geht (warscheinlich) in PHP aber warum sollte ich das als Progger tun?
Warum haben OOP Sprachen den Anspruch den Coder vor Blödsinn zu schützen - mehr Sicherheit bedeutet auch immer mehr Einschränkungen.



> Stringmanipulationen sind logischerweise in Klassen gekapselt da Java bis auf int long boolean double float alles ObjectOrientiert kapselt.



und was ist daran logisch ? 
Nimm z.B. mal eine Funktion wie Explode In PHP - ein Gegenstück in Java zu schreiben ist eine grösseres Stück Code.
Oder ganz banal auf einzelnen Zeichen im String zugreifen. Ein immenser Aufwand
gegen über sowas: echo $meinstring[4];
Und wenn das wirklich OOP Pflicht ist nach meiner Meinung nach elematare Sachen in Klassen zu verpacken dann steigert das eher meine Abneigung gegen OOP
Lästermode on:
Da ist es doch kein Wunder das es noch keinen Texeditor gibt der in Java geschrieben wurde - es
ist schlicht und einfach zu aufwendig.
Lästermode off



> Sorry aber die bestdokumentierte Sprache ist immer noch C.



Schlicht und einfach falsch - aber ev reden wir auch aneinder vorbei in meinem Fall rede ich von den nötigen Classen / Bibliotheken ohne die man ja nix anfangen kann - wenn du eine entsprechende Webseite weisst die ähnlich ausgebaut ist wie php.net mit code beispielen
bin ich ein dankbarer Abnehmer. z.b für die STL bisher habe ich noch nix komplettes gefunden.
Im Moment arbeite ich hier mit zwei Mart + Technik Bücher und klaube mir die entsprechenden Infos zu sammen

Mittlerweile mache ich in PHP sogar Sachen für die PHP gar nicht gedacht war


----------



## chibisuke (28. Dezember 2003)

melmager hat gesagt.:
			
		

> Nun es ist nur einfache Vererbung möglich - wenn das nicht eingeschränkt ist -


Ach was? Mehrfachvererbung gehöhrt bei JAVA zum standart und das schon von anfang an 



> Ganz davon ab das ich immer noch nicht verstanden habe warum es guter OOP Style ist nur Functionen zu expotieren obwohl es die Sprache es auch bei Variablen zulässt.
> Der einzige Grund liegt wohl darin, das ich Variablen nach aussen hin nicht schreibschützen kann.
> Selbst in einer so einfachen Sprache wie JAVASCRIPT gibt es Variablen auf die ich nur lesend zugreifen kann. Aber selbst wenn ich exportierte Variablen überschreiben kann warum sollte ich das als Programmierer tun?


Das macht man damit andere programmierer die eine klasse von jemand anderem benutzen nicht versehndlich einer variable einen wert zuweisen obwohl das nicht gewünscht ist.
Das macht z.B. bei JavaBeans sinn, weil da werden klassen von ganz anderen usern weiter benutzt, die vieleicht auch n wenig experimentierfreudig sind und dann total ungewolte ergebnisse erziehlen.
Es ist in keiner einzigen sprache möglich variablen schreibzuschützen, so das die eigene klasse immer noch drauf schreiben kann ohne das man den schreibschutz zeitweilig aufheben muss. Es geht nicht siehs ein.



> $_GET['eingabe']= "neuer wert";
> Ich weiss nicht ob das geht (warscheinlich) in PHP aber warum sollte ich das als Progger tun?
> Warum haben OOP Sprachen den Anspruch den Coder vor Blödsinn zu schützen - mehr Sicherheit bedeutet auch immer mehr Einschränkungen.



Weil nicht jeder programmierer den sinn hinter einer beschrenkung erkennt und diese auch einhällt, daher wird es durch OOP ermöglicht diese beschränkung durchzusetzen. was eben z.B. bei weitergabe von code, oder bei verwendung von code durch einen anderen aus dem programmierteam sonst sehr leicht zu fehlern führt, die teilweise tagelanges debugging erfordern.

Aber das kann nur jemand nachvolziehen der selbst schon 3 nächte in folge vorm PC gesessen ist um einen fehler zu finden der durch fehlende angabe einer zugriffsbeschrenkung verursacht wurde.



> Nimm z.B. mal eine Funktion wie Explode In PHP - ein Gegenstück in Java zu schreiben ist eine grösseres Stück Code.
> Oder ganz banal auf einzelnen Zeichen im String zugreifen. Ein immenser Aufwand
> gegen über sowas: echo $meinstring[4];
> Und wenn das wirklich OOP Pflicht ist nach meiner Meinung nach elematare Sachen in Klassen zu verpacken dann steigert das eher meine Abneigung gegen OOP



DER PHP CODE IST FALSCH! die eckigen klammern sind als array operatoren zu verwenden, sie sind seit version 4.1 glaub ich NICHT MEHR ALS STRING INDEX OPERATOREN ZU VERWENDEN. dafür benutzt man geschwungene klammern. :RTFM:

Jemand der nichtmal PHP code sauber verfassen kann ohne gültige standarts zu brechen will mit was über OOP erzählen? na das haut doch dem Fass den Boden raus.

Ich kann in Java meine strings genau so handeln wie in PHP ein .toChar und ich hab mein char-array über das ich mit index operatoren zugreifen kann. ein ECHTES ARRAY, und keines was mit irgendwelchen fake operatoren benutzt wird.



> Lästermode on:
> Da ist es doch kein Wunder das es noch keinen Texeditor gibt der in Java geschrieben wurde - es
> ist schlicht und einfach zu aufwendig.
> Lästermode off



NICHTMAL  DAS WEIß ER. es gibt Duzende Texteditoren.. sogar formatierungen und alles mögliche teilweise... Ja sogar die ZEND IDE. eine der besten PHP IDEs wurde in JAVA geschrieben. auch die Borland JBuilder IDE ist in JAVA geschrieben.
Du kennst du docher Kazaa? oder Morpheus? wenn ich mich nicht irre sind die auch in JAVA und zwar in J++ geschrieben.



> Schlicht und einfach falsch - aber ev reden wir auch aneinder vorbei in meinem Fall rede ich von den nötigen Classen / Bibliotheken ohne die man ja nix anfangen kann - wenn du eine entsprechende Webseite weisst die ähnlich ausgebaut ist wie php.net mit code beispielen
> bin ich ein dankbarer Abnehmer. z.b für die STL bisher habe ich noch nix komplettes gefunden.
> Im Moment arbeite ich hier mit zwei Mart + Technik Bücher und klaube mir die entsprechenden Infos zu sammen
> 
> Mittlerweile mache ich in PHP sogar Sachen für die PHP gar nicht gedacht war


 ROFL PHP und KOMPLETT? ich glaub ich fall gleich vom Hocker. von PHP sind vieleicht  80% der funktionern, und 30% der Klassen überhautp DOKUMENTIERT das muste dir mal vorstellen! 30% is sogar noch übertrieben... guck dir mal PEAR an! fast überhaupt keine dokumentationen dazu. einzig und alleine der source dient als Doku. und dann behaupte PHP ist gut dokumentiert?

Echt Solchen Schwachsinn muss ich mir echt nich rein ziehen, kann ich drauf verzichten.


----------



## Christian Fein (28. Dezember 2003)

melmager hat gesagt.:
			
		

> Nun es ist nur einfache Vererbung möglich - wenn das nicht eingeschränkt ist -
> Ganz davon ab das ich immer noch nicht verstanden habe warum es guter OOP Style ist nur Functionen zu expotieren obwohl es die Sprache es auch bei Variablen zulässt.
> Der einzige Grund liegt wohl darin, das ich Variablen nach aussen hin nicht schreibschützen kann.
> Selbst in einer so einfachen Sprache wie JAVASCRIPT gibt es Variablen auf die ich nur lesend zugreifen kann. Aber selbst wenn ich exportierte Variablen überschreiben kann warum sollte ich das als Programmierer tun?
> ...



Der Sinn von Properties ist das mann einzig und allein ein Interface anbieten kann das sich nicht ändert und gleichzeit Schreibrecht auf Membervariablen bieten kann.
So ist es möglich Wertveränderrungen anzubieten und diese noch mit Programmlogic zu verknüpfen.



			
				melmager hat gesagt.:
			
		

> und was ist daran logisch ?
> Nimm z.B. mal eine Funktion wie Explode In PHP - ein Gegenstück in Java zu schreiben ist eine grösseres Stück Code.


nö ist es nicht:
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/String.html#split (java.lang.String)


```
String a = "ja, das, ist, kommagetrennt";
  String teile[] = a.split(",");
```



			
				melmager hat gesagt.:
			
		

> Oder ganz banal auf einzelnen Zeichen im String zugreifen. Ein immenser Aufwand
> gegen über sowas: echo $meinstring[4];




```
String a = "ein Wort";
    char c = a.charAt(0);
```

genauso lang. 



			
				melmager hat gesagt.:
			
		

> Und wenn das wirklich OOP Pflicht ist nach meiner Meinung nach elematare Sachen in Klassen zu verpacken dann steigert das eher meine Abneigung gegen OOP


Das steigert die Produktivität.



			
				melmager hat gesagt.:
			
		

> Da ist es doch kein Wunder das es noch keinen Texeditor gibt der in Java geschrieben wurde - es
> ist schlicht und einfach zu aufwendig.


jbuilder, jedit, IDEA, eclipse, Oracle Application Developer, WSAD und und und 
mit Texteditoren in Java könnte ich dich erschlagen.




> Schlicht und einfach falsch - aber ev reden wir auch aneinder vorbei in meinem Fall rede ich von den nötigen Classen / Bibliotheken ohne die man ja nix anfangen kann - wenn du eine entsprechende Webseite weisst die ähnlich ausgebaut ist wie php.net mit code beispielen



nein vollkommen richtig,  jede C Funktion hat eine eigene Manual Page im Unix system. Einfach mal man printf eingeben. Mann braucht nichtmal eine Internetverbindung.
Unter Windows gibt es MSDN, oder auch die Borlandhilfe usw. Da stecken mehr Codebeispiele drinne wie auf php.net.
Genauso Java mann schaue nur auf:
http://java.sun.com/j2se/1.4.2/docs/api/
http://www.ibm.com/developer/java
java.sun.com 
usw.



> bin ich ein dankbarer Abnehmer. z.b für die STL bisher habe ich noch nix komplettes gefunden.
> Im Moment arbeite ich hier mit zwei Mart + Technik Bücher und klaube mir die entsprechenden Infos zu sammen
> 
> Mittlerweile mache ich in PHP sogar Sachen für die PHP gar nicht gedacht war


STL habe ich als Manpage, bzw dort.


----------



## Christian Fein (28. Dezember 2003)

STL Referenz mit Codebeispielen und sämmtliche Methoden und Klassen:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclang98/HTML/stdlbhm.asp


----------



## Patrick Kamin (28. Dezember 2003)

*-*



> DER PHP CODE IST FALSCH! die eckigen klammern sind als array operatoren zu verwenden, sie sind seit version 4.1 glaub ich NICHT MEHR ALS STRING INDEX OPERATOREN ZU VERWENDEN. dafür benutzt man geschwungene klammern.
> 
> Jemand der nichtmal PHP code sauber verfassen kann ohne gültige standarts zu brechen will mit was über OOP erzählen? na das haut doch dem Fass den Boden raus.


Das wäre mir aber neu, dass ein String neuerdings kein Array mehr darstellt. Warum sollte man also auf die eckigen Klammern verzichten, wenn man mit einem Array arbeitet? Das ist so in jeder mir bekannten Sprache, außer Tcl vielleicht.

Außerdem möchte ich dich bitten, sachlich bei der Diskussion zu bleiben, da du mich ansonsten nötigst, deine Beiträge zu bearbeiten, aber da ich das nicht möchte, einfach auf persönliche Bemerkungen verzichten


----------



## melmager (28. Dezember 2003)

> Ach was? Mehrfachvererbung gehöhrt bei JAVA zum standart und das schon von anfang an



Gegenbeweis:
http://www.fh-wedel.de/~si/vorlesungen/java/OOP/Mehrfachvererbung.html



> Es ist in keiner einzigen sprache möglich variablen schreibzuschützen, so das die eigene klasse immer noch drauf schreiben kann ohne das man den schreibschutz zeitweilig aufheben muss. Es geht nicht siehs ein.



Währe aber eine schöne Idee wenn das Möglich währe 




> Weil nicht jeder programmierer den sinn hinter einer beschrenkung erkennt und diese auch einhällt, daher wird es durch OOP ermöglicht diese beschränkung durchzusetzen. was eben z.B. bei weitergabe von code, oder bei verwendung von code durch einen anderen aus dem programmierteam sonst sehr leicht zu fehlern führt, die teilweise tagelanges debugging erfordern.



Vernünftige Documentation ist wichtiger. Was nutzt mir eine Function in eine Klasse die super geschützt ist wo in der doco noch nichtmal beschrieben ist wieviel und was für werte übergeben werden können? 



> Aber das kann nur jemand nachvolziehen der selbst schon 3 nächte in folge vorm PC gesessen ist um einen fehler zu finden der durch fehlende angabe einer zugriffsbeschrenkung verursacht wurde.


ich habe schon länger nach democode snipseln gesucht die mir eine klasse erläutern würden



> DER PHP CODE IST FALSCH! die eckigen klammern sind als array operatoren zu verwenden, sie sind seit version 4.1 glaub ich NICHT MEHR ALS STRING INDEX OPERATOREN ZU VERWENDEN. dafür benutzt man geschwungene klammern. :RTFM:[



Dito  ich sehe schon du hast genausoviel Ahnung von PHP wie ich von Java
wenig.



> NICHTMAL  DAS WEIß ER. es gibt Duzende Texteditoren.. sogar formatierungen und alles mögliche teilweise... Ja sogar die ZEND IDE. eine der besten PHP IDEs wurde in JAVA geschrieben. auch die Borland JBuilder IDE ist in JAVA geschrieben.
> Du kennst du docher Kazaa? oder Morpheus? wenn ich mich nicht irre sind die auch in JAVA und zwar in J++ geschrieben.



die Info habe ich aus der CT - zugegeben nicht überprüft 
Jedenfalls wollte ich ein Java Projekt starten um die Sprache zu lernen
da ging es um ettliche Textfunctionen (ersetzen/suchen)  die ich gebraucht hätte
und ich bin schier verzweifelt 



> ROFL PHP und KOMPLETT? ich glaub ich fall gleich vom Hocker. von PHP sind vieleicht  80% der funktionern, und 30% der Klassen überhautp DOKUMENTIERT das muste dir mal vorstellen! 30% is sogar noch übertrieben... guck dir mal PEAR an! fast überhaupt keine dokumentationen dazu. einzig und alleine der source dient als Doku. und dann behaupte PHP ist gut dokumentiert?



ok Test nenn mir eine PHP Function die nicht in der Docu ist



> Echt Solchen Schwachsinn muss ich mir echt nich rein ziehen, kann ich drauf verzichten.



zustimm

Nachtrag:

Wir können uns ja darauf einigen das du von PHP frustert bist und ich von Java


----------



## Christian Fein (28. Dezember 2003)

melmager hat gesagt.:
			
		

> Gegenbeweis:
> http://www.fh-wedel.de/~si/vorlesungen/java/OOP/Mehrfachvererbung.html
> Währe aber eine schöne Idee wenn das Möglich währe



Mehrfachvererbung durch Implementation von Interfaces.
Seltsamerweise gehen fast alle OOP Sprachen diesen Weg, Ruby, C# Java
und viele andere.




			
				melmager hat gesagt.:
			
		

> Vernünftige Documentation ist wichtiger. Was nutzt mir eine Function in eine Klasse die super geschützt ist wo in der doco noch nichtmal beschrieben ist wieviel und was für werte übergeben werden können?


Nenn mir eine Java Methode der Standardapi die nicht dokumentiert ist!
Sämmtliche Methoden sind so dokumentiert:
Hier eine Methode von String

```
contentEquals
public boolean contentEquals(StringBuffer sb)
Returns true if and only if this String represents the same sequence of characters as the specified StringBuffer. 

Parameters:
sb - the StringBuffer to compare to. 
Returns:
true if and only if this String represents the same sequence of characters as the specified StringBuffer, otherwise false.
Since: 
1.4
```
ich lese daraus, das sie öffentlich zugänglich ist, mir eine true oder 
false Wert zurückgibt, ein StringBuffer Object als Parameter nimmt.
Allein das lese ich auch
public boolean contentEquals(StringBuffer sb)

Wenn einem das noch nicht reicht dann gibts noch eine genaue Erklärung 
in leicht verständlichem Englisch.
Zudem steht noch da ab welcher J2SE Version diese Methode enthalten ist.





			
				melmager hat gesagt.:
			
		

> ich habe schon länger nach democode snipseln gesucht die mir eine klasse erläutern würden


Dann hast du nicht wirklich richtig gesucht, denn in der Java API die 
alle Klassen beeinhaltet gibt es ein recht umfangreichen Einleitungstext:



> public final class String
> extends Object
> implements Serializable, Comparable, CharSequence
> The String class represents character strings. All string literals in Java programs, such as "abc", are implemented as instances of this class.
> ...





> die Info habe ich aus der CT - zugegeben nicht überprüft
> Jedenfalls wollte ich ein Java Projekt starten um die Sprache zu lernen
> da ging es um ettliche Textfunctionen (ersetzen/suchen)  die ich gebraucht hätte
> und ich bin schier verzweifelt


Genauso wie du die anderen Infos die du über Java gebracht hast, nicht eindeutig
geprüft hast, siehe dein explode beispiel.
Oder das Beispiel das string.charAt(1) nicht realisierbar währe sondern viele Zeilen
code benötige.



> ok Test nenn mir eine PHP Function die nicht in der Docu ist


Nenn mir eine Java Methode die nicht in der Doku ist. Nenn mir eine
STL Methode die nicht in der Doku ist.
Das eine Sprache vollständig dokumentiert ist, ist keine Vorteil sondern
ein Muss der Sprache.
Es gibt soviel ich weiss bei VisualBasic Dinge die funktionieren aber nicht
dokumentiert sind (liege ich hier falsch, bitte berichtigen).
Aber normalzustand jeder Sprache ist eigentlich das sie vollständig
und sauber dokuemtiert werden. 
Bei Java hat mann noch den Vorteil das mann mit JavaDoc arbeiten kann und so
gleich seine eigene Klassen ganz automatisch dokumentiert und nach lauf des 
javadoc Textprozessors, der einem gleich eine Browsfähige Referenz Doku wie sie
auch hier zu sehen ist:
http://java.sun.com/j2se/1.4.2/docs/api/
erstellt. Das war so gut, das es von PHP Programmiereren als PHPDoc nachgebaut wurde. Nur 
ist das dort noch nicht offizieller bestandteil. Im übrigen hat sich auch Microsoft mit .net an der JavaDoc Idee inspiriert gefühlt.

Sorry melmager, ich kenne dich als guten hilfsbereiten Tutorials-Member und PHP Programmierer, und du bist mir hoffentlich nicht böse, aber von Java hast du 
keine Ahnung, und es ist schade das du dennoch die Sprache auch ohne Kentnisse
mit falschen Tatsachen heruntereden willst.

Es geht hier nicht darum ob PHP eine schlechte Sprache ist, das habe ich vorher auch schon geschrieben. Währe sie schlecht, so würde ich selber damit nicht arbeiten wollen.
Es geht eher darum ob sie wirklich dazu geeignet ist guten Programmierstil zu lehren, und
da sehe ich etwas schwarz.


----------



## melmager (28. Dezember 2003)

[qoute]
Sorry melmager, ich kenne dich als guten hilfsbereiten Tutorials-Member und PHP Programmierer, und du bist mir hoffentlich nicht böse, aber von Java hast du
keine Ahnung, und es ist schade das du dennoch die Sprache auch ohne Kentnisse
mit falschen Tatsachen heruntereden willst.
[/qoute]

Stimmt ich habe null Plan von Java - ich wollte das ja ändern und was mich gefrustet hat
ist die für mich unbrauchbare Documentation - was sicher auch daran liegen kann
das ich zu doof für OOP bin (mittlerweile glaube ich es jedenfalls)

ich habe es z.b bis heute nicht geschafft Jdom in Jbuilder einzubinden
und einen xml datei einzulesen 
Genauso war die Docu zu JNI nicht gerade hilfreich - ich habe bis heute noch nicht verstanden 
wie ich ein Array was mir eine C Function als Rückgabewert übergibt an Java weiterreichen soll 

aber ich glaube dazu mache ich mal eingen Thread zu auf  mit den entsprechenden fallstricken
über die ich gestolpert bin

das mit den fehlenden parametern bezog sich auf C/C++ sorry das das so rüberkam als würde ich das auf java beziehen
Ich habe zugeben hier auch etwas Frust abgeladen


----------



## Christian Fein (28. Dezember 2003)

> _Original geschrieben von melmager _
> *
> ich habe es z.b bis heute nicht geschafft Jdom in Jbuilder einzubinden
> und einen xml datei einzulesen
> *



jdom.jar Datei in den CLASSPATH einbringen. Du kannst den Classpath entweder als Windows / UNIX Umgebungsvariable setzen:

http://java.sun.com/j2se/1.4.2/docs/tooldocs/solaris/classpath.html

Oder anhand des Beispiels JavaMail:
http://java.sun.com/products/javamail/classpath-NT.html

Ansonsten gibt es sicherlich die Möglichkeit unter JBuilder die 
Ressourcen für jedes Projekt einzubinden. Habe leider kein JBuilder
hier, um das nachzuvollziehen, da ich eclipse bevorzuge.



> _Original geschrieben von melmager _
> *
> Stimmt ich habe null Plan von Java - ich wollte das ja ändern und was mich gefrustet hat
> ist die für mich unbrauchbare Documentation - was sicher auch daran liegen kann
> ...




Nein aber du solltest erst mit einem Buch anfagen.
http://www.javabuch.de/ <- Kostenloses ebook von Edisson-Wesley Verlag einer
der besten Java Lern Bücher im deutschen Markt.




> _Original geschrieben von melmager _
> *
> Genauso war die Docu zu JNI nicht gerade hilfreich - ich habe bis heute noch nicht verstanden
> wie ich ein Array was mir eine C Function als Rückgabewert übergibt an Java weiterreichen soll
> *



JNI ist ebenso eine technik die mann als fortschrittlicher Java Programmierer erst lernen sollte, denn das verbinden 2 Techniken (Nativ gegenüber Bytecode) ist eine etwas kompliziertere Geschichte. Das sollte dich nicht negativ beeinflussen, verstehst es jetzt noch nicht, dann später. 
Ich kann dir da leider nicht weiterhelfen weil ich mich mit JNI noch nicht beschäftigt habe, frage mal Tom der weiss das sicher.

Ansonsten ist immer
http://java.sun.com/j2se/1.4.2/docs/api/
eine sehr nützliche Quell, bei mir ist das in meiner IDE eclipse (siehe eclipse.org) so eingebunden das ich die entsprechende Doku erhalte wenn ich mit meinem Mauszeiger über einen Schlüsselwort schwebe.



> _Original geschrieben von melmager _
> *
> aber ich glaube dazu mache ich mal eingen Thread zu auf  mit den entsprechenden fallstricken
> über die ich gestolpert bin
> ...


Lad den lieber in einer Frage im Java Forum ab, nach einer Weile merkst du 
das jenes das zuerst Probleme bereitete, ruckzuck sich fast von allein löst.


----------



## Patrick Kamin (28. Dezember 2003)

*-*

Seid gegrüßt 

Ich denke mal, es langt jetzt langsam Java hier als eierlegende Wollmilchsau zu verkaufen und deshalb möchte ich mal wieder aufs Thema zurückkommen. Christian hat den Ball wieder so schön ins Spiel gebracht, also wollen wir mal.



> *von Christian*
> Es geht eher darum ob sie wirklich dazu geeignet ist guten Programmierstil zu lehren, und
> da sehe ich etwas schwarz.


Eine Sprache soll und kann mir keinen guten Programmierstil beibringen, ebenso wie ein Buch oder ein Tutorial, dafür gibt es Ausbildungen und Studiengänge. In erster Linie muss eine Sprache produktiv sein und wenn ich etwas mit einer Scriptsprache realisiere, dann kommt es für mich nicht auf umfangreiches Exception-Handling oder OO-Planung an. Natürlich sind dies wichtige Merkmale für einen professionellen Einsatz, aber dafür ist PHP in der aktuellen Version noch nicht gewappnet. Und das es keine festen Datentypen gibt, ist doch gerade *das* Schmankerl einer jeden funktionalen Scriptsprache. Was ich aber absolut nicht verstehen kann, wie man durch die Vorurteile gegen eine Anwendergruppe eine Sprache schlecht machen kann. Perl hatte damals nurglück, dass durch die kryptische Syntax die Schulkinder lieber Mathe für die Schule gelernt hätten ;-] Somit kam PHP zur rechten (oder falschen? ) Zeit

Also warum hier PHP und Java miteinander vergleichen, wobei sie unterschiedlicher nicht sein könnten?

Und ob ich meinen Variablen vernünftige Namen gebe oder meinen Quelltext kommentiere, kommt wie schon gesagt, auf das Wesen 40cm vor dem Bildschirm drauf an.


----------



## Christian Fein (28. Dezember 2003)

*Re: -*

Schön gesagt, und ich kann dir fast überall zustimmen, bis auf einen Satz:


> _Original geschrieben von Patrick Kamin _
> *
> Eine Sprache soll und kann mir keinen guten Programmierstil beibringen, ebenso wie ein Buch oder ein Tutorial, dafür gibt es Ausbildungen und Studiengänge. *



Studiengänge und guter Programmierstil will ich mal bezweifeln,
denn guter Programmierstil kann einem schlecht beigebracht werden, 
sondern diesen muss mann trainieren. 

Sicherlich kann dir ein Prof von den verschiedenen notationen erzählen, was 
er aber nicht kann, ist dir die Erfahrung lehren mit schlechtem Code zu arbeiten.
Ich glaube mann muss sich schon nächte damit rumgeschlagen haben, den Code anderer
zu entziffern um für sich selber den Wert von gutem Stil zu erkennen.
Frag mal Nils nach dem Code von Roland, und er wird zu meinen Zeilen mit dem Kopf nicken
bis er abfällt. 

Eine Sprache die einen viele Freiräume lässt, wie eben Perl, und auch C(++), kann
einen dazu animieren, hauptsache funktionalen Code zu schreiben. Auch wenn mann sich
sehr knapp ausdrücken kann, ist oftmals die Variante mit 50% Zeile mehr Code die bessere, 
da wartbare Art und Weise zu programmieren.

Guten Stil, und weshalb das so wichtig ist, kann aber wirklich jeder nur für sich
selber herausfinden


----------



## chibisuke (28. Dezember 2003)

*Re: -*



> _Original geschrieben von Patrick Kamin _
> *Das wäre mir aber neu, dass ein String neuerdings kein Array mehr darstellt. Warum sollte man also auf die eckigen Klammern verzichten, wenn man mit einem Array arbeitet? Das ist so in jeder mir bekannten Sprache, außer Tcl vielleicht.
> *



Das beantworte ich mit einem Zitat aus dem PHP handbuch...

```
Zugriff auf Zeichen in Strings
Auf Zeichen innerhalb von Strings kann durch die Angabe des nullbasierten 
Offsets in geschweiften Klammern nach dem String, 
auf das gewünschte Zeichen zugegriffen werden.
```

Alles klar?

Was Mehrfachvererbung in JAVA betrifft.. Die hab ich selbst schon nutzen müssen. Dazu benutzt man Interfaces... Einfach mehrere Interfaces implementieren und fertig.




> ok Test nenn mir eine PHP Function die nicht in der Docu ist



na dann hätt ich bitte bei gelegenheit gern ein vollstädige offiielle dokumentation der PEAR Klasse Inline_C .... oder eine dokumentation der 
sqlite_* funktionen und noch einigen mehr.
Oder gib mir ne genaue doku der vpopmail_* funktionen
Ich könnt dir ne ganze liternei undokumentierter funktionen nennen. brauch ich nur das PHP handbuch mit dem sourcecode vergleichen, da findet sich vieles.....


----------



## Matthias Reitinger (29. Dezember 2003)

*Re: Re: -*



			
				chibisuke hat gesagt.:
			
		

> na dann hätt ich bitte bei gelegenheit gern ein vollstädige offiielle dokumentation der PEAR Klasse Inline_C .... oder eine dokumentation der
> sqlite_* funktionen und noch einigen mehr.
> Oder gib mir ne genaue doku der vpopmail_* funktionen
> Ich könnt dir ne ganze liternei undokumentierter funktionen nennen. brauch ich nur das PHP handbuch mit dem sourcecode vergleichen, da findet sich vieles.....


http://de.php.net/manual/de/ref.sqlite.php - sieht mir ganz nach einer Dokumentation aus.
Die vpopmail-Funktionen waren nur von 4.0.5 - 4.2.3 in PHP vorhanden und das auch nur experimentell.
Eine vollständige Dokumentation der PEAR Klassen kannst du nicht erwarten, da es sich dabei um ein Community-Projekt handelt, welches nicht direkt mit der Apache Software Foundation zusammenarbeitet. Da könnte ich genau so gut C verteufeln, weil die Windows API nicht vollständig dokumentiert ist.


----------



## Patrick Kamin (29. Dezember 2003)

*-*

Moin.

Auch Universitäten führen praktische Lehreinheiten, die wissenschaftlichen Mitarbeiter müssen ja auch irgendwie gerechtfertigt werden. 
So schlecht ist die Welt nicht, Christian 




> Alles klar?


Darum geht es gar nicht. Eckige Klammern zu benutzen, um auf Array Inhalte zuzugreifen, 
ist das Standardverhalten von Programmiersprachen, auch von PHP. 
Und ich könnte dir jetzt auch eine Textpassage hier quoten, 
aber du kennst dich ja schon so gut auf der Seite aus


----------



## chibisuke (29. Dezember 2003)

*Re: Re: Re: -*



> _Original geschrieben von Matthias Reitinger _
> *http://de.php.net/manual/de/ref.sqlite.php - sieht mir ganz nach einer Dokumentation aus.
> Die vpopmail-Funktionen waren nur von 4.0.5 - 4.2.3 in PHP vorhanden und das auch nur experimentell.
> Eine vollständige Dokumentation der PEAR Klassen kannst du nicht erwarten, da es sich dabei um ein Community-Projekt handelt, welches nicht direkt mit der Apache Software Foundation zusammenarbeitet. Da könnte ich genau so gut C verteufeln, weil die Windows API nicht vollständig dokumentiert ist. *



Bei SQLite war wohl das docu team schneller als ich, die gibts noch nich lang...

Aber auch funktionen die entfernt wurden sollten dokumentiert sein. z.B. werden in der MSDN immer noch die WIN16 funktionen dokumentiert. und auch Java in Java sind alle Deprecated methoden immer noch gut dokumentiert.

Und PHP hatt mit der Apache software foundation schonmal gar nix zu tun außer das es ein SAPI modul gibt das mit deren webserver zusammen arbeitet. Du meintest wohl die PHP Group...



> Eckige Klammern zu benutzen, um auf Array Inhalte zuzugreifen,
> ist das Standardverhalten von Programmiersprachen, auch von PHP.
> Und ich könnte dir jetzt auch eine Textpassage hier quoten,
> aber du kennst dich ja schon so gut auf der Seite aus



Array inhalte schon, aber strings sind in PHP nunmal keine arrays wie in anderen sprachen. Darum soll man seit version 4 von PHP { } als index operatoren benutzen, auch wenn die [] methode wie es in PHP3 angewendet wurde aus kompatiblitätsgründen immer noch unterstützt wird, aber als missbilligt markiert ist.


----------



## Matthias Reitinger (29. Dezember 2003)

*Re: Re: Re: Re: -*



> _Original geschrieben von chibisuke _
> *Und PHP hatt mit der Apache software foundation schonmal gar nix zu tun außer das es ein SAPI modul gibt das mit deren webserver zusammen arbeitet. Du meintest wohl die PHP Group...*





> PHP is a project of the Apache Software Foundation.


Aha...


----------



## chibisuke (29. Dezember 2003)

... muss mir entgangen sein..


----------



## Sneaker (12. Januar 2004)

Hmm ich hoffe es geht hier immer noch um PHP und der Programmierstil 
Ich muss sagen ich bin so ein typ der scripte für Clanpages schreibt ... das die aber keinen plan haben muss nicht gesgat sein, ich würde schon sagen das ich plan habe... programmiere jetzt schon diverse sprachen seid über 3 jahren das fängt bei C++ an geht über PHP, Java und endet bei Python hab diese sprache auch in dieser reihnfolge gelernt. 

Naja kommen wir zu PHP: Man kann ziemlich schnell in schlechten stil abrutschen... wieso das passiert... ich würde mal sagen das wenn man an einem Problem sitzt und man dieses schnell lösen möchte dann wird man schlurrig, des weiteren fehlt mir bei PHP einfach die Objektorientierung, zwar kann man Klassen erstellen aber die haben wohl noch nie was Datenkapselung gehört. Was sich aber in PHP 5.0 ändern wird aber darauf will ich nicht weiter eingehen da ich genug code geschrieben hab, den ich sicherlich nicht umschreiben will.

wenn ich mich jetzt für ne programmiersprache entscheiden müsste würde ich mich für Python entscheiden, weil das ist wirklich eine komplett Objektorientiere sprache in der selbst die datentypen wie int, float, bool objekte sind, wenn man bei Java guckt da gibt es diese Datentypen immer noch, aber ich weiss auch das es diese Datentypen als Objekte gibt.
Des weiteren finde einfach die dynamische Typen zuweisung einfach toll man muss sich nicht mehr darum kümmern welche Variable ein Objekt ist oder ein int einfach zuweisen und ok 
Das Problem was ich daran aber sehe ist  diese undurchschaubarkeit der Typen, man kann praktisch nie im programm wissen welchen typ hat gerade die variable. das ist denke ich auch mal ein problem von PHP
Weitere Vorteile von Python sind: man kann einfach alles programmieren: Applicationen, Dynamische Webseiten, Scripte die einfach nur bestimmte sachen ausführen sollen und das auch noch in einer betrachtlichen geschwindigkeit, obwohl es nur interepretiert wird.
Und die einbindung in form von Modulen die nicht mal in der gleichen sprache geschrieben sein müssen ist einfach nur cool  so kann ich hoch performante C++ Klassen einfach in mein Programm mit einbinden und das läuft dann auch im Speed von C++ und die einzige sprache die schneller ist als C++ ist Assembler... auf C++ ist das einbinden aber nicht beschränkt gibt auch die möglichkeit die Java Bibliotheken in Python zu benutzen.

Zu Java: Hab ich mich mal 4 Wochen lang jedentag über 7 Std auseinander gesetzt und wenn ich jetzt zurückschaue denk ich nur uff was das für ne sprache... Hat auf jedenfall seine Vorteile im Vergleich zu C++ und PHP hat mich auch voll fazieniert was diese sprache kann, was aber genervt hat ist einfach der enorme resourceverbrauch und die geschwindigkeit hat auch nicht gestimmt...  naja ok ich hab auch Swing programmierung gemacht das wohl langsamste an Java  aber wenn Python genau das gleiche kann und dann noch viel schneller wieso langsame programme programmieren wenn es schnell geht ?  Der schwachpunkt liegt wohl daran das Java einfach bei jedem start komplett interpretiert werden muss und das die Biblotheken auch in Java geschrieben sind.

Nochmal eben zu PHP sind nicht die ganzen funktionen von PHP in C oder C++ geschrieben ?

falls ich mal wieder müll geschrieben hab sagt mir das  werde mich dann korregieren

Also mein Favorit zur Zeit: Python
Ein Blick ist die sprache wert und ist ziemlich easy zu verstehen


----------



## NuKe (16. Januar 2004)

um wieder komplett zum thema zurückzukommen : 
anfangen zu programmieren sollte man mit C (nicht ++ builder) und/oder pascal,
sich dort einen oder 2 oder 4 rechner basteln und frühestens danach auf den builder umwechseln..
ich hatte meinerseits wahnsinniges glück da ich in der zweiten klasse einen infokurs besuchte der alles von grund auf erklärte, was variablen sind, wie arrays funktionieren, sortierungsalgorythmen usw...
wer so etwas nicht hat muss erst alles wissen nachlernen, und das "problem" von php ist das es auch ohne dieses wisse dreckig programmiert einfach funktioniert..
wenigstens gibt es in PHP strichpunkte - was ich am schlimmsten finde bei ASP lernen ist das es keine strichpunkte gibt..
nie wieder mehrere befehle in einer zeile oder ein befehl über mehrere zeilen (ja das sorgt für übersicht wirkt nicht dagegen!)
aber ASP vs PHP ist ein eigenes thema ich will nur noch anmerken das laut benchmarks PHP schneller ist sobald es um datenbanken geht (nur mal gehört, trifft soweit ich weiss auf PHP/mySQL vs ASP/MSSQL || ASP/ Accessdatenbanken zu.)
ASP.net soll das ja wieder übertreffen... womit ich vollkommen vom thema abgekommen wäre.

Pascal/C... wer erstellt einen Vote dazu? ^^


----------



## Sneaker (17. Januar 2004)

Wie du hast in der zweiten klasse gelernt zu programmieren ?

Hmmm mit welcher sprache man anfangen soll ist schwer... ich würde Python empfehlen aber dann ist es ziemlich schwer auf C(++) umzusteigen weil das viel umständlicher ist als Python  Ein nachteil hat python... die meisten docus sind auf englisch.

Naja kann sein das MySQL mit PHP schneller läuft aber MySQL ist echt das schnellste was es gibt selbsr wenn es um den faktor 2 schneller ist wird man das nicht merken weil mehr Code als MySQL Queries in einem script sind... und vom code her ist ASP schneller.
Und mehre anweisungen in einer zeile zu schreiben ist eh schlechter stil


----------



## NuKe (17. Januar 2004)

Au das war jetzt aber viel unqualifiziertes auf einem Fleck ^^



> Naja kann sein das MySQL mit PHP schneller läuft aber MySQL ist echt das schnellste was es gibt selbsr wenn es um den faktor 2 schneller ist wird man das nicht merken weil mehr Code als MySQL Queries in einem script sind... und vom code her ist ASP schneller.



1.) Codezeit=1% der Berechnungszeit. Das ist jetzt natürlich übertrieben, aber wenn du dir mal die Zeit ansiehst die für die Datenbankverbindung und Daten empfangen gebraucht wird, und im vergleich alle for-schleifen dann weisst du was ich meine.

2.)ASP langsamer als PHP (auch im Codebereich!) Es gibt vielleicht ein paar beispiele wo ASP schneller ist aber generell ist die Geschwindigkeit ein nachteil von ASP.
ASP.net schlagt PHP das gebe ich zu!



> Und mehre anweisungen in einer zeile zu schreiben ist eh schlechter stil



3.)Mehrere Anweisungen in einer Zeile ist nicht unbedingt schlechter Stil!
Wenn man z.B. eine if - Abfrage hat die häufig gebraucht wird oder die recht einfach ist, allerdings 2 Befehle ausführen muss und nicht einen, dankst du PHP für die gewonnene Übersichtlichkeit... (vor allem bei mehreren if Abfragen untereinander!)

Ich habe in der zweiten Klasse nicht begonnen Programmieren zu lernen, das habe ich in der Volksschule mit 7 Jahren mit batchdateien und PASCAL mit hilfe meines Vaters.
Bestes Ergebnis damals:
Alle ausführbaren Aktionen auf diesem 10 MB Festplattenspeicher 286er in batchdateien verpackt und in den system32 ordner gepackt für ausführbarkeit in allen ordnern
Rechentester:
Programm das zufallsgenerierte Rechenaufgaben stellte (4 Stück,1x Addieren,1x Subtrahieren, 1x Dividieren und 1x Multiplizieren) und wenn man mindestens 3 Fragen richtig beantwortet hatte kam ein (schircher, aber egal) ASCII - Smiley sonst ein "Du warst zu schlecht" Satz.

Das stimmt wirklich, ich red keinen Scheiss...

mfG


----------



## Wolfsbein (18. Januar 2004)

> _Original geschrieben von NuKe _
> *...
> Alle ausführbaren Aktionen auf diesem 10 MB Festplattenspeicher 286er in batchdateien verpackt und in den system32 ordner gepackt ...*


In den system32 Ordner? Darf man fragen was für ein "Windows (NT)" auf  deinem 286er gelaufen ist ? Oder meinst du du hast es irgendwohin gepackt und in die globale Umgebungsvariable aufgenommen?


----------



## NuKe (18. Januar 2004)

hehe nein...
ich weiss nur nicht mehr wie der ordner geheissen hat..
auf jeden fall wars irgendwas mit system oder so auf jeden fall der mit globaler ausführung dann


----------



## Sneaker (19. Januar 2004)

Was ich noch ok finde ich wenn du if(bla) return true oder sowas machst das mach ich auch ab und zu noch aber trägt der übersichtlichkeit auch nicht zu

da haste aber glück nen vater zu haben der sich mit dem compuetr auskennt ich musste mir so gut wie alles selber beibringen... bis aufs programmieren das hab ich in der schule gelernt, angefangen mit C++

Dann bin ich wohl nicht mehr aktuell was PHP vs ASP angeht, denn in der c't war mal nen vergleich ist auch schon ne zeit lang her und da war ASP einfach schneller... und bei MySQL naja kommt j aimme rnoch auf die tabelle an die man ausliest bei mehren 1000 einträgen dauert das schon, aber solche projekte hatte ich noch nie, naja aber wir reden ja nun auch über millisekunden das macht sich erst bei hunderten abfragen zur gleichen zeit bemerkbar...


----------



## NuKe (20. Januar 2004)

Nujo also ich programmier ja ein Onlinespiel, und wenn ich eine Seite habe wo ich nur Formeln teste mit einer 100x durchlaufenen FOR-Schleife die jedesmal eine Zeile ausgibt dauert das von 0.001 bis 0.003 Sekunden.

Eine durchschnittsseite wie das Forum oder Siedlung / Flotte / Kommandoschiff betrachten braucht länger...
z.B.: Forum:  
0.155507087708 Sek
0.121119976044 Sek
0.116273880005 Sek.

Man sieht da is ein Zehnfacher unterschied...

Kann sogar sein das ich mich im direktvergleich ASP / PHP (code ohne datenbank) irre, an C't würde ich niemals zweifeln 

http://www.linuxdocs.org/HOWTOs/PHP-HOWTO-13.html

seltsamerweise der einzige benchmark den ich in 5 minuten suche bei google gefunden habe ^^


----------



## Christian Fein (20. Januar 2004)

Zeitangaben in Benchmarks ohne den betreffenden getesteten Code ist ziemlich sinnlos.

Ich kann mit der selben sprache die selbe funktionalität ohne probleme um Faktor 10 unterschiedlich schnell implementieren.


----------



## Thomas Kuse (20. Januar 2004)

Und Benchmarks mit 0.xx sekunden sind bei weitem nicht aussagekräftig!


----------



## Valentin- (20. Januar 2004)

> _Original geschrieben von Thomas Kuse _
> *Und Benchmarks mit 0.xx sekunden sind bei weitem nicht aussagekräftig! *



Aus welchem Grund denn nicht?


----------



## Christian Fein (20. Januar 2004)

> _Original geschrieben von Valentin- _
> *Aus welchem Grund denn nicht? *



Nun das kann mann beantworten wenn mann den Code gesehen hat 

Zum beispiel wenn eine Ausgabe in ein File erfolgt dann kann es sein das bei
einem so kurzen Benchmark dies 99% der Zeit in anspruch nimmt, und hier gerade
laufende Hintergrundzugriffe C++ langsamer als JavaScript werden lässt usw 

Deshalb muss mann dafür sorgen das die grösste Zeit des Benchmarks wirklich unbeeinflusster code läuft.


----------



## NuKe (20. Januar 2004)

Hätte gern einen Benchmark der mal richtig schön einen Vergleich liefert...
Hat jemand sowas? Schon mal gesehen? Womit wir zwar komplett vom Thema abgegangen wären, aber so machts ja gleich viel mehr Spass 

[EDIT]
als kleine anmerkung:
Wieso hab ich eigentlich 3 Beiträge wenn ich doch schon in diesem Thema mehr als 3 habe?
Ist mir zwar prinzipiell egal aber würds gern wissen ^^
[/EDIT]


----------



## Valentin- (21. Januar 2004)

> _Original geschrieben von NuKe _
> *Hätte gern einen Benchmark der mal richtig schön einen Vergleich liefert...
> Hat jemand sowas? Schon mal gesehen? Womit wir zwar komplett vom Thema abgegangen wären, aber so machts ja gleich viel mehr Spass
> 
> ...



Es gibt einige Foren, in denen die Posts nicht gezählt werden, Coders Talk
gehört wahrscheinlich auch dazu.


----------



## NuKe (21. Januar 2004)

also auch contest? ^^
hatte als ich mein erstes Thema erstellte 3 posts und hab jetz immer noch 3... finds halt seltsam


----------



## wwwsteel (26. November 2004)

Hallo,

ich möchte auch nur einen kurzen Kommentar loswerden.

Wie ich immer sage, wäre Java-Servlet-Webspace nicht so teuer, würde ich meine Homepage schnell mal in ein Programm verwandeln . 

Zweitens muß ich sagen das wenn man an Java vorbeikam mit PHP erst seine fehlenden Kenntnisse in Html-Design bemerkt, und man sucht sich aus den Referenzen einfach nur die passenden Befehle heraus und hat die grundsätzlichen Dinge schonmal auf jedenfall dabei.

Obwohl ich ja als Hobbyprogrammierer C und C++ sehr schwer zu erlernen finde (Gleich gelassen ohne Source-Klau).

MfG,
Philipp


----------



## Thomas Darimont (26. November 2004)

melmager hat gesagt.:
			
		

> Gegenbeweis:
> http://www.fh-wedel.de/~si/vorlesungen/java/OOP/Mehrfachvererbung.html


Hallo!

Entschuldigung aber hast du auch gelesen was auf der Seite steht?
"Mehrfachvererbung 
 ist in Java nicht möglich "

...

Gruß Tom


----------



## wwwsteel (26. November 2004)

Hi,

Ich meine ja nur inbegriff dessen das ich halt ein paar studierte ITler in der Familie habe, und ich mich garnicht über Coding unterhalten kann, Bzw... Überhaupt den Begriff Hobby-C/++ in die Chathand  nehme.

Aber ich bin schon ganz zufrieden mit meinen 2 Jahren Arbeitslos "Den ganzen Tag Java-Tutorials" .

Nachtrag:
----------------------------------------------
Oooooppppps. Ich vergesse hier immer das dies kein hundert ebenen Antwort forum ist. Sorry.
------------------------------------------------
Ciao,
Philipp


----------



## Admi (20. Dezember 2005)

Schonmal dran gedacht, dass nur das Ziel zählt. Wenn die Seite eines Hobbyentwicklers (der so gar nix sonst mit Coding zu tun hat) funktioniert, dann solls euch doch egal sein, wie der Code aussieht. Hauptsache, er erfüllt seinen Zweck. Diese "Clientel" wird schließlich nicht beruflich tätig, sondern nur aus Hobbygründen. Ob da der PHP-Code nun gut oder schlecht ist, hat euch doch nicht im geringsten zu stören. Oder nehmt ihr Schaden an schlecht programmierten Privathps?


----------



## Peter Bönnen (21. Dezember 2005)

Das Thema ist ein Jahr alt. (Edit: Ups, knapp zwei Jahre seit meinem ersten Post )
Nach Überfliegen der ganzen Beiträge ist mir nicht ein Post aufgefallen, der Hobby-Bastler angreift.
Zielgruppe sind nicht ausschließlich Hobby-Programmierer, sondern auch Leute, die einen Einstieg in die Programmierung suchen und für die ist es wichtig, vernünftige Lösungsstrategien kennenzulernen. Für die ist sogar eher der Weg das Ziel.
Auslöser damals waren einige konkrete Threads im PHP Forum in denen einfach stilistisch grottenschlechte Lösungen präsentiert wurden (mal ganz abgesehen von Code zu dem Fragen gestellt wurden).
Um zu sagen, wie es heute aussieht, lese ich hier nicht mehr oft genug.
Lasst den Thread in Frieden ruhen. Ich hab mich verdammt erschreckt, als sich die Leiche  in meinem Postfach gemeldet hat. :suspekt:

Es sei noch erwähnt, dass ich keine Ahnung mehr von aktuellen PHP-Versionen habe und was sich eventuell in der Richtung getan hat, falls jemand das Thema unbedingt wieder aufwärmen möchte.


----------

