OOP aan het leren

  • Beste mensen ik ben oop aan het leren, nou vroeg ik me af wat er beter kon aan het volgende script:


    Alvast bedankt.

  • Probeer de namen anders te doen van de function of class.
    Ik zelf vind het irritant als je 2 dezelfde namen achter elkaar hebt: $login->login.


    Verder zou je best ook meerdere functions kunnen maken.
    Zoals je dat deed met die query kan je ook makkelijk in functie zetten. Staat netter want dan krijg je meer overzicht.


    Verder ob_start en ob_end_flush hoef je volgens mij niet eens echt te gebruiken, kan iemand mij uitleggen waarom hij dat wel zou moeten, zover ik zie doe je dit alleen als je fout hebt en waardoor de mensen die niet kunnen zien want ze worden dan gelijk doorgestuurd.?

    School
    Tweedejaars Informatica Student @ Hogeschool Rotterdam.


    Webtalen
    - PHP ( OOP )
    - SQL
    - JavaScript i.c.m. jQuery framework
    - (x)HTML
    - CSS
    - Actionscript
    - XML


    Programmeertalen
    - Java
    - C#
    - Ruby i.c.m. on Rails framework

  • kan je niet gewoon een constructor gebruiken ofzo (is niet heel goed in OOP)
    zoiets:


    zodat je met:

    PHP
    $login = new login;


    gelijk al de functie: _constructor uitvoert

  • Verder is het niet mooier en beter als je gewoon een database class maakt in de config.


    Zodat je dan simpel weg korte code krijg in het script om dingen uit te voeren, o ja nog slimmer is om ook gelijk proberen mysqli te leren.


    Dit aangezien in php 6 mysql eruit wordt gehaald en omdat mysqli veel sneller werkt dan mysql in Object Oriënterend Programmering, Object Orientated Programming (oop).

    School
    Tweedejaars Informatica Student @ Hogeschool Rotterdam.


    Webtalen
    - PHP ( OOP )
    - SQL
    - JavaScript i.c.m. jQuery framework
    - (x)HTML
    - CSS
    - Actionscript
    - XML


    Programmeertalen
    - Java
    - C#
    - Ruby i.c.m. on Rails framework

  • NielsB het is __construct()


    1. een classe is niet gelijk OOP
    2. laat $_GET en $_POST zo veel mogelijk buiten classes, geef ze mee als argumenten, dan kun je deze class voor meerdere doeleinden (her)gebruiken.
    3. niet alles selecteren, je hebt niets nodig, dus haal alleen het id op.
    4. zet niet de naam in een sessie, maar het id.
    5. niet de naam en wachtwoord opslaan in de classe.
    6. de 'var' namespace is voor PHP 4, protected, private en public zijn voor PHP 5 (static ook nog, maar deze kan bij een van de andere drie)

  • Oke, daar gaan we!


    - Maak geen onnodig gebruik van ob_start(): Dit is alleen maar sloom, wanneer je goed programmeert heb je ob_start(); niet nodig om errors te voorkomen.
    - Geef je variabele geen nietszeggende namen. $1 zegt niks.
    - Als je uitvoer van de functionaliteit wilt scheiden, doe het dan goed: Een header is toch echt uitvoer!
    - Gebruik nooit dezelfde functienaam als klassenaam, dan wordt de functie namelijk als de constructor gezien (De hoofdletter voorkomt dat denk ik in het voorbeeld).
    - Encrypt je wachtwoorden!
    - Al eerder gezegd houd de invoer gescheiden van de functionaliteit.
    - MySQLi werd al genoemd: Mijn aanrader is een PDO klasse (evt. een uitbreiding daarop).
    - '$sql = mysql_fetch_array($query);' Deze code gebruik je verder niet meer. Waarom staat hij er dan nog?
    - Ook al eerder gezegd: Go PHP 5! Functies en variabelen zijn tegenwoordig public, private of protected.


    Niet negatief bedoeld, maar dit is nog lang niet OO.


    Alle kritiek is bedoeld als opbouwende kritiek, vind een eigen klasse juist een leuk initiatief. :)

  • Zal eens kijken:) Eerst wil ik OOP een beetje onder de knie krijgen.. Wil ik al een tijdje dus.. daarna ga ik dan wel PDO en als ik dat snap ga ik dan toch eindleijk KOHANA doen.... OMdat dat dos dat zo graag wil -.-

  • Je kan beter gewoon pdo en oop gelijke tijd leren.
    Dit omdat je voor pdo heel andere wijze van connecten moet doen.


    Dan is het beter als je gelijke tijd dit leert, dan maak jezelf ook makkelijker voor het geval dat je eindelijk alles snapt en je het opeens anders moet doen.

    School
    Tweedejaars Informatica Student @ Hogeschool Rotterdam.


    Webtalen
    - PHP ( OOP )
    - SQL
    - JavaScript i.c.m. jQuery framework
    - (x)HTML
    - CSS
    - Actionscript
    - XML


    Programmeertalen
    - Java
    - C#
    - Ruby i.c.m. on Rails framework

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!