Ankündigung

Einklappen
Keine Ankündigung bisher.

Suche Beta-Tester für einen Eingabe-Validator

Einklappen

Neue Werbung 2019

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

  • #16
    Zitat von rkr Beitrag anzeigen

    * Dependencies

    Sorry, falls das wieder nicht "konstruktiv" war.
    Typos zu verbessern ist bekanntlich immer sehr konstruktiv

    Aber sei dir dessen sicher, dass ich meinen Code deutlich weniger wichtig nehme, als es mir unterstellt wird, nur weil ich einen Thread dazu erstellt hab nichtsdestotrotz danke dir trotzdem für deinen Input und deine Mühe, es wird sicher ebenfalls mit einfließen.

    Kommentar


    • #17
      Zitat von rawb1t Beitrag anzeigen
      sodass sich bisher nur ein einziger Post wirklich mit dem Programm selbst befasst hat.
      Ich geh mal davon aus die redest von meiner Antwort. Ich hab mich damit auch nicht wirklich beschäftigt. Ich hab die Doku überflogen, ich hab den Code überflogen. Wenn ich da hundert mal if (is_array()) und eine Schleife sehe, weiß ich sofort, dass strukturell was nicht in Ordnung ist. Das ist Code-Smell Nr 1, kopierter Code. Das hat mich noch dazu bewegt, zu schauen warum das so ist. Ende der Geschichte. Ich hab meine "vermutung" nichtmal verifiziert. Ich bilde mir aber auch ein, Code lesen zu können. Und genau weil ich weiß, dass das nur Einbildung ist, macht type hints wiederrum wichtig. Auch wenn statische Code Analyse teilweise unrelevantes liefert, zeigt sie doch den ein oder anderen Bug und auch potentiellen Bug an. Je strengere das Typen-System ist, desto besser ist das Ergebnis.
      Ich versteh ehrlich gesagt auch nicht was du erwartest? Das was du vielleicht hören willst, bekommtst du nur mit, indem du echte Probleme damit löst. Warum sollte das jemand tun? Nicht mal du machst das. ("Hast du die Library parktisch im Einsatz?")
      Mir sind da auch noch andere Sachen aufgefallen. Du hast Funktionen doppelt belegt. Aus meiner Sicht ist das ein no go, aber vielleicht ist es in der Praxis sinnvoll und ein genialler Ansatz. Woher soll ichs aber wissen? Das merkst du erst in der Praxis und erst über ein längeren Zeitraum merkst du wirklich wieviel es taugt. Wie lange dauert es wohl, bis jemanden bewusst wird, dass z.B. ein Verhalten wie in PHP 0 == "" == núll == [] == false nicht immer ganz unproblematisch ist?!

      Kommentar


      • #18
        Seit zwei Monaten ist die Library nicht aktualisiert worden. Hier wurden etliche Sachen genannt, aber rein gar nichts hat bei Dir Einzug gefunden.

        * Code-Duplication
        * Keine Tests
        * Eine Datei, die 2500 Zeilen lang ist, nur damit sie jeder Noob einbinden kann.
        * Du folgst keinem PSR-Standard
        * Snakecase / Camelcase gemischt

        *
        PHP-Code:
        class Validator extends From 
        Validator erbt von etwas, das From heißt?
        *Der Validator verändert Werte
        * Unglaublich viele elseif's
        * Zu viele zu tiefe Verschachtelungen
        * Man kann dem Code

        Du hast hier jetzt eine Bibliothek gebaut, die vor 15 Jahren eventuell akzeptabel gewesen wäre. Und statt das sauber zu implementieren (eben mit Typings, Tests, etc.), klatschst Du da ein Stück Code hin. Da ist auch "Hobbyprojekt" nicht mehr als eine Ausrede, dass Du keine Lust hattest, das halbwegs vernünftig zu bauen.

        Die Dokumentation ist tatsächlich sehr schön gemacht, aber es wirkt halt gleichzeitig, als hättest Du dort einen Haufen Aufwand reingesteckt, der woanders besser angelegt gewesen wäre.

        Das wird dir jetzt wieder alles nicht passen, aber ich weiß auch immer noch nicht, was Du hören möchtest.

        Kommentar


        • #19
          Abgesehen von den Hinweisen auf Schönheitsfehler (zu lange Datei, zu viele / tiefe Verschachtelungen, ... das wusste ich bereits ) waren diese beiden Posts hier am Ende deutlich nützlicher für mich als alles vorangegangene. Das ist etwas womit ich was anfangen kann. Jetzt kann natürlich auch jemand sagen: Genau dasselbe wurde dir schon in den vorherigen Posts gesagt aber nein, das find ich nicht. Das ist deutlich konstruktiver.

          Ich hab auch bestimmt zu viel Schnickschnack in eine eigentlich simple Aufgabe reingesteckt, insbesondere durch unnötige Vererbungsstrukturen von Klassen, das ist mir dadurch jetzt auch ziemlich bewusst geworden. Mein Anspruch bei der Umsetzung dieser Bibliothek war es möglichst viele verschiedenen Szenarien mit möglichst wenigen verschiedenen Methoden abzudecken, sprich hohe Flexibilität allein aufgrund der Parameter, keine endlos langen Methoden-Verkettungen. Was ich mit dem Veröffentlichen hier rausfinden wollte ist, wie gut Betatester mit diesem Umstand klarkommen und ob die Anwendung verständlich ist.

          Insofern, vielen Dank für euren Input nochmal!

          Kommentar


          • #20
            Moin,

            PHP-Code:
            // Every name should be capitalized
            $name->sanitize('capitalizeAll')->validate(['maxLength' => 100]);

            // Username should always be lowercase and everything but alphanumeric chars should be stripped
            $username->sanitize('lowercase''alphanumericOnly')->validate(['alphanumericOnly']); 
            für mich stellen die s_- und v_-Methoden bzw. deren Aufruf unnötig viel Magic (und Typo-Potenzial) dar. Wenn du die Bezeichnungen als Konstanten zur Verfügung stellst, wird die Bedienung einfacher. Dann muss man nicht mehr in deinem Code nachsehen welche Funktionen es gibt, sondern kann aufs Autocomplete der IDE zurückgreifen.
            [COLOR=#A9A9A9]Relax, you're doing fine.[/COLOR]
            [URL="http://php.net/"]RTFM[/URL] | [URL="http://php-de.github.io/"]php.de Wissenssammlung[/URL] | [URL="http://use-the-index-luke.com/de"]Datenbankindizes[/URL] | [URL="https://www.php.de/forum/webentwicklung/datenbanken/111631-bild-aus-datenbank-auslesen?p=1209079#post1209079"]Dateien in der DB?[/URL]

            Kommentar

            Lädt...
            X