Webprojekt, welche Programmiersprache?



  • Was ist den konkret an Phyton besser als an php?

    Den einzigen Kritikpunkt den ich finden würde, ist das die Standartbiliothek von php leider nicht besonders modern und konsistet ist. Dafür aber sehr gut dokumentiert, was das mehr oder weniger ausgleicht.



  • Frontend: Javascript + jQuery (wenn es simpel ist), ansonsten eines der großen Frameworks

    REST-API: Python mit Django oder NodeJS (ihr werdet weniger Fehler als mit C++ machen)

    Backend (hier die heftigen Berechnungen): Das richtige Tool für euren Job, z.B. C++, Python, OCaml, Haskell whatever!

    Idee: Frontend nimmt User-Eingaben, macht einen Request an die REST-API. Diese kommuniziert mit dem Backend z.B. über MessageQueues (Lastverteilung, Parallelisierung etc) und schickt das Ergebnis aus eurem Backend (vielleicht sogar Cluster) wieder an das Frontend.

    Auf diese Weise habt ihr eine super Modularisierung: Die Berechnungen (also euer eigentliches Gut) ist stark von dem ganzen anderen Kram getrennt und ihr könnt da viel rum experimentieren. Das Backend und Frontend wird die meiste Zeit wahrscheinlich recht stabil bleiben.

    Ich bin dabei jetzt immer ein bisschen von einem wissenschaftlichen Kontext ausgegangen. Da ist so eine Trennung besonders nützlich, weil beispielsweise mehrere Studienarbeiten parallel stattfinden können (Programmierpraktikum am Frontend, Masterarbeit in der Optimierung der Backend-Berechnungen, ...).


  • Mod

    Da fragt sich natürlich, zu was du Python/Node/etc. hier einführen willst - das erhöht die Komplexität enorm und bringt ja eigentlich nur "weniger Komplexität bei der HTTP handhabung". Einfach eine fertige C++ library dafür verwenden, zB civetweb oder tntnet und du hast es deutlich einfacher.



  • Ich verstehe nicht, wo das Problem mit PHP liegt. Es findet in den größten Webprojekten der Welt Einsatz. So schlecht kann es dann gar nicht sein...


  • Mod

    CrispyTurtleAlligator schrieb:

    Ich verstehe nicht, wo das Problem mit PHP liegt. Es findet in den größten Webprojekten der Welt Einsatz. So schlecht kann es dann gar nicht sein...

    Hier muss man Sprache und Plattform trennen. Die PHP Plattform ist toll. Die PHP Sprache nicht.

    http://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/
    Ein paar Sachen haben sich mittlerweile überholt, PHP wird ja stetig weiter entwickelt. Aber auch Sprache ist auch PHP 5.6 ein ziemlicher graus.

    Das hindert PHP aber nicht daran nützlich zu sein.

    PS:
    Prinzipiell ist das Problem eigentlich nur, dass die Leute die PHP Entwickeln ziemlich unfähig waren. Es wird zwar besser aber es gibt soo viele Altlasten dass man PHP nie mehr sauber hinbekommen wird. Und das PHP6 Desaster spricht ja auch für sich.

    Zum Spaß hier ein kleines Beispiel wie unfähig die PHP Entwickler sind: http://use.perl.org/use.perl.org/_Aristotle/journal/33448.html



  • Was ist den konkret an Phyton besser als an php?

    Kann dir nur aus Sicht von nem C++ Entwickler sagen, der Python eigentlich wirklich hasst ! (whitespace symantik, grässlich).
    Man kann sich Python code anschauen, und meist versteht man den auf Anhieb. Und er hat auch ne gewisse eleganz. Also man kann gut mit Ihm Procedural und Objectorientiert Code schreiben, der wenig zusätzliche Doku bedarf ...

    Und das sag ich als C++ Entwickler ^^

    schau ich mir php an, fühl ich mich sofort 30 jahre zurueckversetzt, als C Style schreiben noch eher die normalität in C++ war. Als es C++ und seine Jünger noch schwer hatten, gegen all die eingefleischten C Schreiber und mit C in der Schule bombardierten Absolventen kämpfen mussten ^^.
    Und naturgemäß sträuben sich dann sofort die Nackenhaare ^^

    Kann aber auch sein das ich nur miesen Php code unter die Finger bekommen habe ... Ich hab allerdings auch noch nie nen richtiges PhP projet mit mehreren Modulen und So gesehen. Geht sowas ueberhaupt ?

    Ist aber nur meine Ansicht .... und ja C holt einem immer wieder ein ^^ Da denkt man, man hats hinter sich, und dann darf man shader schreiben .... ^^

    Am ende kommts dann aber immer auf die "Umegbung" an ...
    Ich glaub so viel nehmen sich die interpretiereten Sprachen nicht ...
    Aber wer hat den besseren Editor / die bessere IDE ?
    Welche Sprache eigenet sich im Zusammenhang mit meiner sonstigen Tätigkeit denn noch ? Als C++ entwickler hat man dann ne Affinität zu Interpretern, die nen besonders guten runtime Library Support für C/C++ haben (Python und Lua, zumindest gibts da tonnenweise dokus und in der google suchen stehen die auch ned weit hinten ^^ )

    beo Php denkt man sofort immer an WebScriptSprache ... wo man fix innerhalb ner Webseite code ausführen kann was vom Browser auch unterstützt wird.
    Keine Ahnung ob PhP auf anderen gebieten gut ist, warum das testen, wenn das durch andere Sprachen gut abgedeckt wird ?

    Ciao ...


  • Mod

    Moderner PHP Code ist eigentlich nicht von Java zu unterscheiden. Also was Code lesen usw betrifft ist PHP da schon gut und die Tools (IDE und Co) sind in PHP wohl ein Eck weiter als in Python.



  • Shade Of Mine schrieb:

    CrispyTurtleAlligator schrieb:

    Ich verstehe nicht, wo das Problem mit PHP liegt. Es findet in den größten Webprojekten der Welt Einsatz. So schlecht kann es dann gar nicht sein...

    Hier muss man Sprache und Plattform trennen. Die PHP Plattform ist toll. Die PHP Sprache nicht.

    http://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/
    Ein paar Sachen haben sich mittlerweile überholt, PHP wird ja stetig weiter entwickelt. Aber auch Sprache ist auch PHP 5.6 ein ziemlicher graus.

    Das hindert PHP aber nicht daran nützlich zu sein.

    PS:
    Prinzipiell ist das Problem eigentlich nur, dass die Leute die PHP Entwickeln ziemlich unfähig waren. Es wird zwar besser aber es gibt soo viele Altlasten dass man PHP nie mehr sauber hinbekommen wird. Und das PHP6 Desaster spricht ja auch für sich.

    Zum Spaß hier ein kleines Beispiel wie unfähig die PHP Entwickler sind: http://use.perl.org/use.perl.org/_Aristotle/journal/33448.html

    Hmm, wenn das so ist. Ich habe zuletzt ein wenig mit PHP 5.2 rumexperimentiert. Das war sozusagen die allererste Programmiersprache, die ich mir je angesehen hab. Relativ angenehm fand ich diese schon. Aber ich hab keine Ahnung wie sich diese in Bezug auf PHP6/7 verändert hat.



  • php hat sich bis 5.6 schon sehr verändert (php 6 gibt es gar nicht, die Version wurde übersprungen und php 7 ist noch nicht raus, soll aber wesentlich schneller sein und komplette typsicherheit ermöglichen).
    5.2 wird schon lange nicht mehr unterstützt und sollte auch NICHT mehr verwendet werden. Wer nur ein kleines Gästebuch programmiert wird die meisten Unterschiede zwar nicht bemerken, aber Traits und co sind schon echt praktisch.



  • PHP hat sich vom ganzen Drumherum ja inzwischen auch den anderen Sprachen angenähert. Mit Composer gibt es einen Package Manager wie es ihn auch für Python (PyPi), Ruby/Rails (Gem) und Nodejs (npm) gibt. Dazu gibt es dann Frameworks wie Symfony, so dass man auch nur noch sein Datenmodel definiert, dazu einen Controller schreibt und das dann letztendlich über ein Template in den Browser bringt.

    Da das Konzept immer das gleiche ist, kann man sich schnell mal einige Sprachen und Frameworks anschauen. PHP ist bei mir eher hinten bei der Präferenz, weil die Syntax und die Möglichkeit Dinge umzusetzen im Vergleich zu den Sprachen mir eher umständlich vorkommen-



  • Shade Of Mine schrieb:

    Hier muss man Sprache und Plattform trennen. Die PHP Plattform ist toll. Die PHP Sprache nicht.

    http://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/
    Ein paar Sachen haben sich mittlerweile überholt, PHP wird ja stetig weiter entwickelt. Aber auch Sprache ist auch PHP 5.6 ein ziemlicher graus.

    Das hindert PHP aber nicht daran nützlich zu sein.

    Also das ist ja schon starker Tobak. Da bin ich jetzt neugierig, was
    einem bei PHP geboten wird, dass man sich freiwillig sowas aussetzt,
    selbst wenn man wie Du in der Lage ist, das so zu beurteilen.

    Was muss eine Webanwendung denn alles spezielles machen?

    Außer HTTP (was der Webserver macht) und dem Parsen der URL und einiger
    Header, fällt mir nur noch ggf. HTML-Generierung ein (und da würde ich
    vermutlich Textersetzung in Templates machen).

    Zur Ausgangsfrage: Ich denke man muss auch einbeziehen, worin man am
    fittesten ist. Bringt ja nichts, wenn alle im Team erst mühselig lernen
    müssen, dass NULL == 0 aber < -1 ist... Mal echt jetzt. wtf.


  • Mod

    Dr. G. schrieb:

    Also das ist ja schon starker Tobak. Da bin ich jetzt neugierig, was
    einem bei PHP geboten wird, dass man sich freiwillig sowas aussetzt,
    selbst wenn man wie Du in der Lage ist, das so zu beurteilen.

    Du gehst davon aus dass eine Sprache sexy sein muss. Das muss sie aber nicht sein. PHP ist Zweckmaessig. Lisp ist zB eine wundertolle Sprache aber recht wenig praktikabel. PHP ist das genaue Gegenteil. Die Sprache ist meh, aber dafuer super praktisch.



  • Shade Of Mine schrieb:

    Dr. G. schrieb:

    Also das ist ja schon starker Tobak. Da bin ich jetzt neugierig, was
    einem bei PHP geboten wird, dass man sich freiwillig sowas aussetzt,
    selbst wenn man wie Du in der Lage ist, das so zu beurteilen.

    Du gehst davon aus dass eine Sprache sexy sein muss.

    Wie kommst du darauf?

    Du hast doch selbst geschrieben, PHP ist kacke aber bietet so ein tolles Framework.
    Hatte gehofft du könntest mir da ein paar Stichworte geben, was einem da geboten wird.



  • Hallo Dr. G.,

    der größte Vorteil von PHP ist doch, dass man mit wenig Einarbeitungszeit schnell Ergebnisse erzielen kann (ich red von Ergebnissen nicht von qualitativen Vorzeigeobjekten). Da hat man bei anderen Sprachen schon größere Einstiegshürden.

    Und mal abgesehen von den grausigen Syntaxelementen und der nicht ganz vorhandenen Typsicherheit - finde ich - ist PHP doch gar nicht mal so schlecht wie es immer geredet wird. - Nur weil Klaus scheiße entwickelt, ist's ja nicht die schuld der Sprache nur weil sie die Möglichkeiten gegeben hat.


  • Mod

    Dr. G. schrieb:

    Du hast doch selbst geschrieben, PHP ist kacke aber bietet so ein tolles Framework.
    Hatte gehofft du könntest mir da ein paar Stichworte geben, was einem da geboten wird.

    Es bietet ein tolles Framework/Toolchain. Stichwort: Produktivität.


Anmelden zum Antworten