Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP again

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PHP again

    Hi,
    wie meine letzten Beitrage (2011) zeigen, hab ich mich länger nicht mit Webentwicklung beschäftigt, ein richtiger Crack war ich ohnehin nie, kam jedoch soweit klar, für dass was ich brauchte.
    Nun brauche ich wieder meine "Skills" da wir ne Website mit einigen Features aufsetzen müssen.

    Die Frage ist nun folgende, sollte ich für eine simple Website mit einigen Funktionen, jedoch gedacht für relativ viel Traffic alles selbst "zusammenbasteln" oder auf ein Framework wie Laravel setzen?
    Selbst kriege ich das mit Sicherheit hin, große Frameworks machen mir immer etwas "angst".

    Unabhängig von den eigentlich nicht super wilden Features etwas Auth, URL-Routings etc. ist jedoch das Thema Sicherheit sehr wichtig.
    Ich für meinen Teil würde wahrscheinlich noch immer nen msql_connect aufmachen und da die DB-Logins reinposten. Macht man das überhaupt noch so?

    Ich freue mich über Antworten, auf die zugegeben etwas unspezifische Frage.

    LG
    Joe




  • #2
    Als Laie das Thema Sicherheit sehr wichtig einzustufen ist natürlich ein riskantes Unterfangen... Da würde ich mir vermutlich Hilfe suchen oder ne Menge Zeit zum Lernen einplanen. Als Anfänger ein Framework mit hochgradig Objektorientierter Ausrichtung zu verwenden, ist vermutlich ebenso keine gute Idee.

    Viel traffic und Sicherheit klingen für mich so, als könntest du mit einer einfachen HTML Seite (z.B. mit einem static site generator wie hugo) für alle nicht-dynamischen Teile besser bedient sein... Die dynamischen Teile könnte man dann mit einer SPA oder einem JavaScript-Frontend und einer PHP-Api realisieren (z.B. mit React und API Platform). Dann wäre man auch für eine App vorbereitet...
    Tutorials zum Thema Technik:
    https://pilabor.com
    https://www.fynder.de

    Kommentar


    • #3
      Also bei einem Framework lernst du halt ein Framework zu bedienen und kein PHP. Solche Leute begegnen einen immer öfter. Beim selbstcoden steigen deine geeky-Skills, aber eine Abwägung sollte getroffen werden. Dazu benötigst du eine Einschätzung, welchen Umfang die Website haben wird, und zwar vorher. Wenn du dich dabei täuscht: Pech gehabt. Also wenn es nicht viel ist, dann selber coden, wenn mehr dann wohl Framework. Wobei ich bisher kein Framework verwendet habe und dazu nix sagen kann.
      Zudem eine Abwägung ob reines PHP, reines JS oder eine Mischung aus beiden.

      mysql-connect: lies selbst: https://www.php.net/manual/de/functi...ql-connect.php
      heute Standard: https://www.php.net/manual/de/book.pdo.php
      https://www.php.net/manual/de/pdo.construct.php
      und da objektorientierter Stil.

      Sicherheit: https://www.php.net/manual/de/book.session.php

      https ist heute Standard.

      Den Rest musst du halt auf dich zukommen lassen.

      Kommentar


      • #4
        Zitat von psoido Beitrag anzeigen
        Also bei einem Framework lernst du halt ein Framework zu bedienen und kein PHP. Solche Leute begegnen einen immer öfter.
        Wo hast du diese Aussage her? Wenn man kein PHP kann, dann bringt Laravel oder Symfony auch nichts.

        Kommentar


        • #5
          Wo hast du diese Aussage her? Wenn man kein PHP kann, dann bringt Laravel oder Symfony auch nichts.
          Nunja... hier würde ich höflichst widersprechen Man kann Symfony bedienen, ohne die Konzepte von PHP zu verstehen. Ein Framework ist zwar nicht per se etwas schlechtes, aber ohne ein Mindestmaß an Erfahrung gleich mit einem einzusteigen, ist durchaus fragwürdig.

          Siehe auch: https://pilabor.com/blog/2021/05/lea...ot-frameworks/
          Tutorials zum Thema Technik:
          https://pilabor.com
          https://www.fynder.de

          Kommentar


          • #6
            Zitat von Andreas Beitrag anzeigen
            Nunja... hier würde ich höflichst widersprechen Man kann Symfony bedienen, ohne die Konzepte von PHP zu verstehen. Ein Framework ist zwar nicht per se etwas schlechtes, aber ohne ein Mindestmaß an Erfahrung gleich mit einem einzusteigen, ist durchaus fragwürdig.
            Dann sind aber Java und C# auch ein schlechter Einstieg, den bei beiden wird man von Anfang an mit Frameworks konfrontiert. Niemand würde z.B. C# ohne .NET programmieren. Das wäre doch einfach nur Wahnsinn.

            Kommentar


            • #7
              Niemand würde z.B. C# ohne .NET programmieren. Das wäre doch einfach nur Wahnsinn.
              Dennoch benötigt man ein Mindestmaß an Erfahrung, um sich darin zurecht zu finden. Ich halte C# und Java tatsächlich für einen sehr schlechten Einstieg in die Welt der Programmierung. Dinge als gegeben hinzunehmen, wenn man anfängt (wie z.B. public static void main) oder gleich mit GUI Threads zu arbeiten, ohne verstanden zu haben, was tatsächlich passiert, ist für mich ein echtes Hindernis.

              In PHP sollte man aus meiner Sicht auch erstmal verstehen, dass es ein Interpreter ist, auf der Konsole ausgeführt werden kann und nicht einfach XAMPP runterladen und eine hello_world.php erstellen, am besten gleich mit Symfony oder Laravel. Das hätte mir damals beim Einstieg eine Menge Grübelei erspart.
              Tutorials zum Thema Technik:
              https://pilabor.com
              https://www.fynder.de

              Kommentar


              • #8
                Zitat von hellbringer Beitrag anzeigen
                Dann sind aber Java und C# auch ein schlechter Einstieg, den bei beiden wird man von Anfang an mit Frameworks konfrontiert.
                Java ist jetzt vielleicht ein blödes Beispiel, weil die Standard-Bibliotheken da auch überhaupt nicht gut sind (verbosity).
                Und bei C# wird anders als bei PHP nicht nahezu alles, was Kern-PHP ist, von Entwicklern vorzugsweise wegabstrahiert, weil die Standard-Bibliotheken (also das .net "Framework") eben IMHO nicht so ein völliger Design-Fail sind.

                Zitat von hellbringer Beitrag anzeigen
                Niemand würde z.B. C# ohne .NET programmieren. Das wäre doch einfach nur Wahnsinn.
                Naja, was vergleichst du denn da? Nur weil das .net-Framework "Framework" heißt. Wenn du bei PHP alle Funktionen weglässt, die bei PHP standardmäßig im Core dabei sind, dann stehst du bei C# und PHP in etwa ähnlich nackt da.

                Kommentar


                • #9
                  Zitat von rkr Beitrag anzeigen
                  Naja, was vergleichst du denn da? Nur weil das .net-Framework "Framework" heißt. Wenn du bei PHP alle Funktionen weglässt, die bei PHP standardmäßig im Core dabei sind, dann stehst du bei C# und PHP in etwa ähnlich nackt da.
                  So dinge wie MVC und Entity Framework sind bei .NET fix integriert. Bei PHP gibt es dafür z.B. Doctrine. Jetzt ist die Frage, warum sollte man in PHP kein Doctrine verwenden, aber in C# schon das Entity Framework? Warum ist das in PHP böse und in C# gut?

                  Kommentar


                  • #10
                    So dinge wie MVC und Entity Framework sind bei .NET fix integriert.
                    Ich verstehe deinen Punkt und er ist auch richtig. Aber würdest du es eine gute Idee finden, das Entity Framework einzusetzen, ohne zu verstehen, was Generics sind? Oder Doctrine, ohne Comment-Annotations bzw. Traits?

                    Mir geht es darum, das Copy & Paste code mit Frameworks zwar vermutlich funktioniert, aber solange man die Konzepte, die verwendet werden, nicht mal im Ansatz versteht, ist es wahrscheinlich keine gute Idee, sich vor diesen mit einem Framework zu beschäftigen.

                    Auch sehe ich das Entity Framework noch kritischer, als das .NET Framework (ich finde das Beispiel .NET Framework übrigens hervorragend, weil es damit sehr schwierig ist, meine Argumentation "Lerne Konzepte und nicht Frameworks" zu untermauern). Dennoch bleibe ich dabei, dass es wertvoller für dein Programmierer-Dasein ist, Konzepte wie Generics, Exceptions, Attributes / Annotations zu verstehen, statt die Verwendung von Frameworks zu lernen.

                    Übrigens: Falls du in C# nicht das EF verwenden willst, ich mag diese Library auch sehr gern: https://sqlkata.com/
                    Tutorials zum Thema Technik:
                    https://pilabor.com
                    https://www.fynder.de

                    Kommentar


                    • #11
                      Zitat von hellbringer Beitrag anzeigen
                      Jetzt ist die Frage, warum sollte man in PHP kein Doctrine verwenden, aber in C# schon das Entity Framework? Warum ist das in PHP böse und in C# gut?
                      Ich glaube jetzt nicht, dass das irgendwer so gemeint hat. Es macht für mich keinen Unterschied ob etwas noch zusätzlich bereitgestellt werden muss, oder schon im Basis-Package mitgeliefert wird. Wenn man nur das Entity-Framework verwendet, aber die die darunterliegenden Mechaniken (inkl SQL) verwendet hat, dann fehlt eben noch Basiswissen.

                      Glaube was Andreas und psoido meinen ist, dass wenn beispielsweise php ab sofort immer zusammen mit phalcon ausgeliefert werden würde, sich an der grundsätzlichen Aussage trotzdem nichts ändert und man sollte vielleicht erst mal die Basis-Funktionalität beherrschen, bevor man sich mit den Higher-Level-Abstraktionen beschäftigt.

                      Kommentar


                      • #12
                        Das Problem ist aber, das die meisten bei PHP mit Webanwendungen beginnen, die aber an sich recht komplex sind, da hier viele Technologien an einem Punkt zusammen treffen (HTTP, SQL, HTML, CSS, usw. usf.). Das ist so, als würde man im ersten Lehrjahr zum Automechaniker ein ganzes Auto bauen wollen, und zwar nicht mit professionellem Werkzeug, sondern mit billigem Werkzeug von Aldi. Die Frage, die sich mir hier stellt ist, ob das wirklich sinnvoll ist.

                        Denn wie man ja ständig sieht, verlaufen sich die meisten Anfänger in irgendwelche Irrwege, da PHP eben sehr "freestylig" ist, und wenn man da nicht von einem Framework geführt wird, sondern sich meist dubiosen Code aus dem Internet zusammenkopiert, man halt einfach irgendwas macht, aber oft nix sinnvolles dabei lernt.

                        Niemand würde das bei C# so machen. Da lernt man erst mal simple Konsolenanwendungen und die nächste Stufe sind dann Desktopanwendungen. Bis man irgendwann mal zu Webanwendungen stößt, hat man die meisten Grundlagen schon intus.

                        Und wenn man den Leuten sagt, dass sie erstmal die Grundlagen lernen sollen, sind sie angepisst oder ignorieren es einfach. Weil sie haben ja schon irgendwas, das "funktioniert". Es fehlt ja immer nur noch die eine Kleinigkeit, weswegen man ein Forum bemüht, und man will nicht wahrhaben, dass man eigentlich bis jetzt nur Müllcode gesammelt hat. Wäre es da nicht besser, sie hätten das auf Basis eines Frameworks gemacht?

                        Anstatt dass man zum 50.000 mal darauf hinweisen muss, dass hier schon wieder ein Kontextwechsel nicht beachtet wurde? Wäre es nicht auch für die erfahrenen Forenteilnehmer viel angenehmer man könnte höhere Probleme lösen als ständig diese Low-Level-Probleme, mit denen sich in der Praxis aber kein Programmierer befassen muss, weil sich eh die Frameworks darum kümmern?

                        Kommentar


                        • #13
                          Zitat von hellbringer Beitrag anzeigen
                          Anstatt dass man zum 50.000 mal darauf hinweisen muss, dass hier schon wieder ein Kontextwechsel nicht beachtet wurde? Wäre es nicht auch für die erfahrenen Forenteilnehmer viel angenehmer man könnte höhere Probleme lösen als ständig diese Low-Level-Probleme, mit denen sich in der Praxis aber kein Programmierer befassen muss, weil sich eh die Frameworks darum kümmern?
                          Wahrscheinlich kommt das nach kurzer Zeit eh automatisch. Ich kann mir auch nicht vorstellen, dass einer von denen, die hier wirklich Wissenswertes beisteuern, sich selbst so low-level mit PHP beschäftigen, dass sie selbst ständig über sowas wie einem Kontextwechsel nachdenken müssen.

                          Außer vielleicht ein paar "Entwickler", die an der WordPress-Nadel hängengeblieben sind.

                          Kommentar


                          • #14
                            Ich werf hier nochmal was ein: Es scheint aktuell die Runde zu machen, ob es sich überhaupt noch lohnt PHP und mysql zu lernen. Eventuell ist die Fragestellung des Themas in irgendeiner Weise damit verbunden.

                            Kommentar


                            • #15
                              Zitat von psoido Beitrag anzeigen
                              Ich werf hier nochmal was ein: Es scheint aktuell die Runde zu machen, ob es sich überhaupt noch lohnt PHP und mysql zu lernen. Eventuell ist die Fragestellung des Themas in irgendeiner Weise damit verbunden.
                              Das wird seit 15 Jahren gefragt und gesagt.
                              Trotzdem hat PHP eine relativ hohe Verbreitung und erlebt stete (wenngleich auch teils fragwürdige) Weiterentwicklung. PHP besetzt eine bestimmte Nische und behauptet dieses Platz bislang ganz gut.
                              Und das obwohl niemand gezwungen wird PHP zu nutzen.

                              Das gilt für die meisten anderen Sprachen auch.

                              Kommentar

                              Lädt...
                              X