View previous topic :: View next topic |
Author |
Message |
_hephaistos_ Advocate
Joined: 07 Apr 2004 Posts: 2694 Location: salzburg, austria
|
Posted: Wed Dec 01, 2004 7:12 pm Post subject: [OT] OO webprogrammierung |
|
|
halloa,
ich möchte mich im berech webprogrammierung etwas weiterentwickeln. hab jetzt einige zeit mit php(4/5)/perl regex/xml/xsl usw programmiert, aber die objektorientierung in php5 is doch nicht so toll, wie gedacht...
daher möchte ich mich weiterentwickeln. in frage kommen momentan für mich Java (Servlets) oder C# (mod_mono).
hat jemand erfahrung mit beidem und kann mir sagen, warum ich eines nehmen soll und das andere nicht? mit würde C# fast besser gefallen, aber die frage ist, ob mono (mod_mono) schon so weit ist??
eine andere frage: kann man auch mit C++ webprogrammierung machen? google hat mir nicht wirklich was vernünftiges ausgespuckt. wenn ja -> please paste me a link howto
danke im voraus!
ciao _________________ -l: signature: command not found |
|
Back to top |
|
|
Ragin l33t
Joined: 14 Apr 2003 Posts: 776
|
Posted: Wed Dec 01, 2004 7:16 pm Post subject: |
|
|
Warum kommst du mit PHP5 nicht zurecht? Ist insgesamt recht Java ähnlich geworden...
Ansonsten ist Java recht gut (in Verbindung mit JSP).
C++ kannst du natürlich auch nutzen. Dabei musst du die Ausgabe einfach an die Konsole in HTML schreiben und die kompilierten Programme ins CGI-BIN (oder ein anderes ausführbares Verzeichnis) kopieren und kannst sie da ausführen lassen. _________________ "Innerhalb der Computergemeinschaft lebt man nach der Grundregel, die Gegenwart sei ein Programmfehler, der in der nächsten Ausgabe behoben sein wird."
Clifford Stoll, amerik. Astrophysiker u. Computer- Pionier |
|
Back to top |
|
|
_hephaistos_ Advocate
Joined: 07 Apr 2004 Posts: 2694 Location: salzburg, austria
|
Posted: Wed Dec 01, 2004 7:20 pm Post subject: |
|
|
Ragin wrote: | Warum kommst du mit PHP5 nicht zurecht? Ist insgesamt recht Java ähnlich geworden... |
java ÄHNLICH is gut
ich möcht einfach mal was anders als php -> too easy is ja meiner meinung nach keine wirkliche programmiersprache...
weiters php PARST bei jedem seitenaufruf. das is bei komplexen seiten (zB zusätzlich mit xml und xsl) dann schon aufwändig
Quote: | C++ kannst du natürlich auch nutzen. Dabei musst du die Ausgabe einfach an die Konsole in HTML schreiben und die kompilierten Programme ins CGI-BIN (oder ein anderes ausführbares Verzeichnis) kopieren und kannst sie da ausführen lassen. |
aha! so "einfach" is das? einfach cgi-bin und apache macht den rest? hast du erfahrung damit?
thx _________________ -l: signature: command not found |
|
Back to top |
|
|
Earthwings Bodhisattva
Joined: 14 Apr 2003 Posts: 7753 Location: Germany
|
Posted: Wed Dec 01, 2004 7:22 pm Post subject: |
|
|
Ich programmier mit PHP 4 objektorientiert, die Unterstützung ist zwar recht rudimentär, aber für so Web-Schnick-Schnack IMHO ausreichend. Man muss ja nicht mit Kanonen auf Spatzen schießen
Mit Java Servlets hab ich auch mal gearbeitet. Ist zwar schön, man kann Eclipse benutzen etc., aber PHP ist irgendwie doch geeigneter. Mit den Servlets halst du dir ganz andere Probleme auf. |
|
Back to top |
|
|
_hephaistos_ Advocate
Joined: 07 Apr 2004 Posts: 2694 Location: salzburg, austria
|
Posted: Wed Dec 01, 2004 7:29 pm Post subject: |
|
|
Earthwings wrote: | Ich programmier mit PHP 4 objektorientiert, die Unterstützung ist zwar recht rudimentär, aber für so Web-Schnick-Schnack IMHO ausreichend. Man muss ja nicht mit Kanonen auf Spatzen schießen
Mit Java Servlets hab ich auch mal gearbeitet. Ist zwar schön, man kann Eclipse benutzen etc., aber PHP ist irgendwie doch geeigneter. Mit den Servlets halst du dir ganz andere Probleme auf. |
ja, ich weiß auch, was OO ist und was es heißt mit PHP OO zu programmieren. aber da ich einfach von der webprogrammierung nicht wegkomme und aber eine andere sprache vertiefen will (java und c/c++ lern ich) muss ich halt die sprache ans web anpassen
servlets: von welchen problemen zB sprichst du?
thx _________________ -l: signature: command not found |
|
Back to top |
|
|
c07 Veteran
Joined: 25 Oct 2002 Posts: 1091
|
Posted: Wed Dec 01, 2004 9:04 pm Post subject: Re: [OT] OO webprogrammierung |
|
|
hephaistos6 wrote: | kann man auch mit C++ webprogrammierung machen? |
Unter Gentoo ist das sogar das Angemessene, weil ja eh alles aus den Quellen gebaut wird. Die Kommunikation mit dem Server funktioniert wie sonst auch: Über Environment, stdin und stdout. Wie im CGI-Standard beschrieben. Das funktioniert mit praktisch jeder Programmiersprache. |
|
Back to top |
|
|
Earthwings Bodhisattva
Joined: 14 Apr 2003 Posts: 7753 Location: Germany
|
Posted: Wed Dec 01, 2004 9:14 pm Post subject: |
|
|
hephaistos6 wrote: | servlets: von welchen problemen zB sprichst du? |
Aus Sicht des Programmiers fand ich die ganze Handhabung sehr umständlich (tomcat andauernd neu starten, bei Fehlern im Code aussagelose Fehlermeldungen). Außerdem ist die Anbindung ans System (Auslesen von Server-Variablen, Auswertung von Post/Get) schlecht bzw. bedarf viel Code. Ohne JUnit und andere Werkzeuge wäre es ein ziemlicher Spaghetti-Code geworden, fürchte ich. |
|
Back to top |
|
|
_hephaistos_ Advocate
Joined: 07 Apr 2004 Posts: 2694 Location: salzburg, austria
|
Posted: Wed Dec 01, 2004 9:22 pm Post subject: |
|
|
@Earthwings: aha - guter Einwand! thx. aber is ja meistens so, dass bei OOP halt etwas MEHR code für kleine dinge von nötigen ist. dafür kann man strukturmäßig (abstraktion, interfaces etc) viel machen...
was zB in PHP NICHT geht -> statische typbindung...
aber die entscheidung macht ihr mir nicht leichter _________________ -l: signature: command not found |
|
Back to top |
|
|
Earthwings Bodhisattva
Joined: 14 Apr 2003 Posts: 7753 Location: Germany
|
Posted: Wed Dec 01, 2004 9:32 pm Post subject: |
|
|
hephaistos6 wrote: | @Earthwings: aha - guter Einwand! thx. aber is ja meistens so, dass bei OOP halt etwas MEHR code für kleine dinge von nötigen ist. |
Richtig, nur kommt der zusätzliche Code auch daher, dass man in Java viele Standard PHP-Funktionen etwas "ausführlicher" schreiben muss.
Quote: |
dafür kann man strukturmäßig (abstraktion, interfaces etc) viel machen...
was zB in PHP NICHT geht -> statische typbindung...
|
Yepp, PHP erfordert da mehr Disziplin. Auch die implizite Variablendeklaration kann ein übler Fallstrick sein.
Quote: |
aber die entscheidung macht ihr mir nicht leichter |
Probier es halt mal aus, ist auf jeden Fall die Erfahrung wert. Ein paar Dinge kann man auch sehr elegant damit erledigen. |
|
Back to top |
|
|
_hephaistos_ Advocate
Joined: 07 Apr 2004 Posts: 2694 Location: salzburg, austria
|
Posted: Wed Dec 01, 2004 9:34 pm Post subject: |
|
|
Earthwings wrote: | hephaistos6 wrote: | @Earthwings: aha - guter Einwand! thx. aber is ja meistens so, dass bei OOP halt etwas MEHR code für kleine dinge von nötigen ist. |
Richtig, nur kommt der zusätzliche Code auch daher, dass man in Java viele Standard PHP-Funktionen etwas "ausführlicher" schreiben muss. |
jo, php is eh nett und simpel
Quote: | Probier es halt mal aus, ist auf jeden Fall die Erfahrung wert. Ein paar Dinge kann man auch sehr elegant damit erledigen. |
jo, das hab ich schon und werd ich auch weiter machen. wollt halt zusätzlich hören, was ihr so meint.
aber danke einstweilen
ciao _________________ -l: signature: command not found |
|
Back to top |
|
|
Ragin l33t
Joined: 14 Apr 2003 Posts: 776
|
Posted: Wed Dec 01, 2004 9:36 pm Post subject: |
|
|
Also insgesamt ist Java nur gewöhnungsbedürftig.
Der Code wird zwar wirklich größer (ich programmiere beides und muss sagen, dass Java für mich nur wirklichen Sinn bei Sicherheitsrelevanten Seiten (Banken/Versicherung...) macht. PHP ist zwar inzwischen auch auf einem hohen Level angekommen, aber gewisse Dinge sind mit PHP einfach nicht ganz so gut kontrollierbar wie in Java.
Allerdings ist das ganze Tomcat-Zusammenspiel nicht so das wahre. Ein weiteres Problem ist der gute Port 8080. Diesen kann man zwar umstellen, aber dann geht der Apache nicht mehr auf dem Port oder man lässt beide zusammenarbeiten, aber dafür treten schnell Probleme bei der Stabilität auf.
Vorteile und Nachteile sind glaube ich unterm Strich bei beiden Sprachen gleich.
Aber mal eine andere Frage: Warum vermisst du statische Methoden? Was willst du machen, dass du das dringend benötigst? _________________ "Innerhalb der Computergemeinschaft lebt man nach der Grundregel, die Gegenwart sei ein Programmfehler, der in der nächsten Ausgabe behoben sein wird."
Clifford Stoll, amerik. Astrophysiker u. Computer- Pionier |
|
Back to top |
|
|
moe Veteran
Joined: 28 Mar 2003 Posts: 1289 Location: Potsdam / Germany
|
Posted: Wed Dec 01, 2004 9:45 pm Post subject: |
|
|
Ich hab zwar keine Ahnung davon, will aber auch mal was sagen : Neben Java, Perl und PHP gibts auch noch Python, und sogar ein mod_python, sowie andere cgi-basierte Python-Einbindungen für den Apache. Ausserdem kann man in Python auch mit 2 Codezeilen einen eigenen Webserver "programmieren". Allerdings dürfte dieses Feature für Produktiv-Systeme wohl eher nicht in Betracht kommen.
Aber wie gesagt, kenn mich weder in fortgeschrittener Webprogrammierung, noch in Python wirklich aus.. |
|
Back to top |
|
|
_hephaistos_ Advocate
Joined: 07 Apr 2004 Posts: 2694 Location: salzburg, austria
|
Posted: Wed Dec 01, 2004 9:46 pm Post subject: |
|
|
Ragin wrote: | Warum vermisst du statische Methoden? Was willst du machen, dass du das dringend benötigst? |
oohhhhhh no!! keine statischen METHODEN. statische Typbindung.
es gibt in PHP eh statische methoden mehr oder weniger...
typbindung. zB verschiedene datenbanken (mysql, ms sql, db2 usw)
Code: |
MyDatabaseAbstraction dbVar;
dbVar.doQuery();
|
und dann am ende wird halt eine klasse instanziert. das geht mit php mehr oder weniger schon auch. aber so "schön" ist es halt nicht...
wie gesagt: mir gehts einfach drum, dass ich mal was anders kennen lern...
ciao _________________ -l: signature: command not found |
|
Back to top |
|
|
Squiddle Tux's lil' helper
Joined: 27 Jan 2004 Posts: 141
|
Posted: Wed Dec 01, 2004 9:50 pm Post subject: |
|
|
als gentoo user solltest du natürlich Python mit Zope Application Server nehmen
ansonsten Java (aber JSPs, Servletprogrammierung is Müll, braucht man zuviel Disziplin)
C++/cgi mag für kleine Projekt noch gehen, danach hatt man aber soviel Aufwand wenns um multithreaded und Datenbankzugriff geht.
Da kommt dann Java und Python voll zum Zug mit den Open Source Application Servern die halt für Lau sind. (Leider kenn ich keine C++ Application Server )
Nachdem ich mich jetzt mal etwas genauer mit Java beschäftigt habe muss ich aber sagen, nimm lieber Python wenn du sowieso neu anfangen musst, das ist sauberer aufgebaut (Java hat VIEL zu VIELE Sonderfälle (native typen und die absolut hirnrissige Sonderbehandlung der Klasse String (Operatorüberladung für + und = , Call by Value für Strings! (absolut krank))
Dafür ist die Klassenbibliothek einfach nur nett
Und wenn du dann OOP kannst, dann kannst du auch ohne Probleme zu Java(Unternehmensapplikationsentwicklung) oder Ada(sicherheitskritische Steuerungssoftware (->AKWs)) wechseln um später Kohle zu verdienen _________________ "Unerhört schnelle Systeme begehen unerhört schnell Fehler." -- Stanislaw Lem |
|
Back to top |
|
|
_hephaistos_ Advocate
Joined: 07 Apr 2004 Posts: 2694 Location: salzburg, austria
|
Posted: Wed Dec 01, 2004 9:54 pm Post subject: |
|
|
hi,
weiss net, mir gefällt die syntax von python net... mag lieber die c-syntax
Quote: | ... und die absolut hirnrissige Sonderbehandlung der Klasse String (Operatorüberladung für + und = , Call by Value für Strings! (absolut krank)) |
damit hab ich kein problem
Quote: | Und wenn du dann OOP kannst, dann kannst du auch ohne Probleme zu Java |
also OOP (für fortgeschrittene) kann ich schon (denke ich) und daher möcht ich ja von PHP weg, weil PHP einfach nur (IMHO) "PSEUDO OOP" is!
cirio _________________ -l: signature: command not found |
|
Back to top |
|
|
Ragin l33t
Joined: 14 Apr 2003 Posts: 776
|
Posted: Wed Dec 01, 2004 9:55 pm Post subject: |
|
|
Wenn du was anderes kennen lernen willst schau dir einfach mal Java an.
Vorteil: Du kannst damit (ausser du machst reine Servlets/JSP Programmierung) auch normale Programme programmieren, die dann Plattformunabhängig funktionieren.
Allerdings musst du in Java extrem Performanceoptimiert arbeiten. Ich habe schon den Fall gehabt, dass ein Script knapp 2 Minuten gebraucht hat bis es fertig war und optimiert lief es dann mit ca. 20 Sekunden.
Wenn du dir ein entsprechendes Buch dazu kaufen willst kann ich dir
Performant Java programmieren .
von Hendrik Schreiber
ISBN: 3827320038
Gebundene Ausgabe - 328 Seiten - Addison-Wesley
empfehlen.
Wenn du einige der Grundregeln beachtest bekommst du auch recht schnell gute Programme/Scripte hin.
Das Problem an der Webprogrammierung in C ist halt, dass sie recht untypisch ist. Einzigster Vorteil daran wäre, du kannst auch C-Programme für die Konsole schreiben. Aber für eine Webanwendung würde ich eher Sprachen verwenden, die daraus ausgelegt sind, für das Web da zu sein . _________________ "Innerhalb der Computergemeinschaft lebt man nach der Grundregel, die Gegenwart sei ein Programmfehler, der in der nächsten Ausgabe behoben sein wird."
Clifford Stoll, amerik. Astrophysiker u. Computer- Pionier |
|
Back to top |
|
|
hirnstrudel.de n00b
Joined: 17 Nov 2004 Posts: 40
|
Posted: Wed Dec 01, 2004 9:57 pm Post subject: |
|
|
hab leider nich viel zeit, muss dringend aufs klo ... dumme apfelschorle.
aber was noch gar nicht zur sprache kam ist ruby *in den raum werf*
OO skriptsprache mit unterstützung für fcgi. |
|
Back to top |
|
|
spielc Guru
Joined: 20 Apr 2004 Posts: 452
|
Posted: Wed Dec 01, 2004 9:58 pm Post subject: |
|
|
Yup JSP und Servlets sind sicher etwas gutes wenn mal was andres sehen willst und nebenbei lernst auch noch Java programmieren und das ist sicher nix verkehrtes. Von CGI würd ich DRINGEND abraten (Jeder aufruf der seite=neuer Prozess am Server), wenns UMBEDINGT C++ sein muss (wovon ich schon von haus aus abrate da, C++== sprich Satan ) dann FastCGI... Was vielleicht auch noch eine möglichkeit wäre, ist Asp .Net (ich glaub Mono kann das auch) oder XSP... Asp .Net hab ich (noch) nicht ausprobiert muss aber noch dieses Semester ein Projekt damit machen dann kann ich mehr dazu sagen |
|
Back to top |
|
|
_hephaistos_ Advocate
Joined: 07 Apr 2004 Posts: 2694 Location: salzburg, austria
|
Posted: Wed Dec 01, 2004 10:01 pm Post subject: |
|
|
@Ragin: danke für die buchempfehlung! sowas hab ich gebraucht
@hirnstrudel.de: ruby --- hmmmm nein danke mag momentan keine NEUE prog-sprache lernen. so richtung java/c# bzw. c++ wär mir recht
//EDIT: is auch keine c-syntax. sondern soa art vb/python style
@spielc: DAS ist natürlich ein grund NICHT cgi zu verwenden. wusste ich nicht. daher hake ich das auch mal ab.
nachdem eh noch keiner mod_mono richtig getestet hat (ich auch noch nicht ausführlich. nur vor einem halben jahr mal...) werd ich das mal machen.
thx einstweilen. _________________ -l: signature: command not found |
|
Back to top |
|
|
Robelix l33t
Joined: 21 Jul 2002 Posts: 760 Location: in a World created by a Flying Spaghetti Monster
|
Posted: Wed Dec 01, 2004 10:46 pm Post subject: |
|
|
hirnstrudel.de wrote: | hab leider nich viel zeit, muss dringend aufs klo ... dumme apfelschorle.
aber was noch gar nicht zur sprache kam ist ruby *in den raum werf*
OO skriptsprache mit unterstützung für fcgi. |
Wenn's schon im Raum liegt kann man's ja aufgreifen...
Hab' in der letzten Zeit einige Wundergeschichtchen über Ruby+Rails gehört. Und da ich nicht an Wunder glaub' will ich mir das mal genauer anschauen. Hast du vielleicht gute Tutorials, Artikel, Buchempfehlungen oder Ähnliches auf Lager?
robelix _________________ mysql> SELECT question FROM life, universe, everything WHERE answer=42;
Empty set (2079460347 sec) |
|
Back to top |
|
|
Gekko l33t
Joined: 29 Oct 2002 Posts: 773
|
|
Back to top |
|
|
MatzeOne Guru
Joined: 07 Sep 2003 Posts: 579 Location: Hamburg, Germany
|
|
Back to top |
|
|
lorschy Apprentice
Joined: 16 Jul 2002 Posts: 191
|
Posted: Thu Dec 02, 2004 7:18 am Post subject: |
|
|
Code: |
emerge cgicc
emerge mysql++
|
damit mach ich alles, is zwar manchma umstaendlich aber es geht.
samplecode ist in den jeweiligen packeten enthalten. |
|
Back to top |
|
|
Ruad Tux's lil' helper
Joined: 07 Nov 2004 Posts: 125
|
Posted: Thu Dec 02, 2004 7:19 am Post subject: |
|
|
Dann zeig ihm aber doch auch direkt die aktuelle Version. |
|
Back to top |
|
|
reptile Guru
Joined: 19 Nov 2002 Posts: 363
|
Posted: Thu Dec 02, 2004 8:36 am Post subject: |
|
|
kann ich auch nur empfehlen, die insel ist ein gutes buch. aber online würd ich das nicht lesen wollen, höchstens mal was nachschlagen. |
|
Back to top |
|
|
|