OOP hoe moet ik alles netjes indelen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

C# .NET Software Ontwikkelaar WO 3.300 - 4.800

Functieomschrijving C# .NET Software Ontwikkelaar WO 3.300 - 4.800 Software Engineer (Backend Developer) Voor de vacature als C# .NET Software Ontwikkelaar Ederveen WO ga je het volgende doen: De functie is gericht op het voorbereiden, ontwikkelen en schrijven van onze MES applicatie inclusief de inrichting van de MS-SQL database. In teamverband wordt de functionaliteit bepaald en vastgelegd. Documenten, ontwikkeltraject en change-logs worden beheerd binnen onze beheeromgeving. Na uitvoerige testen worden aangepaste functies geïmplementeerd of nieuwe functies toegevoegd. Als software engineer werk je in teamverband, ben je analytisch van aard en vernieuwend bezig. Werkinhoudelijk: Analyseren en adviseren m.b.t. ontwikkeltechnieken en tools

Bekijk vacature »

Jan terhuijzen

jan terhuijzen

01/09/2012 20:03:12
Quote Anchor link
Hallo ik ben nu beginnen met een loginsysteem en ik wil dit helemaal in OOP doen.
Ik had al best veel kennis van PHP maar OOP was toch nog bij sommige dingen nieuw voor mij.
Nu heb ik nog een aantal vragen:

Wat is beter? Alle classes in 1 bestand voor het hele systeem, dus elke functie en klasse staat in hetzelfde bestand waar ze worden aangeroepen en dit bestand include ik dan.

Of is het beter om dit te verspreiden (sorteren) over meerdere bestanden?

Mij is altijd geleerd dat je geheugenefficient moet programmeren, dus niet onnodig variabelen aanmaken enzo.
Maar ik heb het gevoel dat OOP juist erg veel werkgeheugen kost.

En ik vind ook dat OOP helemaal niet overzichtelijker is dan procedurele code.
Ik vind het juist een versnipperde code die door elkaar is gegooid.
Of duurt het even voordat ik het voordeel ervan inzie?
Gewijzigd op 01/09/2012 20:03:43 door Jan terhuijzen
 
PHP hulp

PHP hulp

23/08/2019 20:50:31
 
Reshad F

Reshad F

01/09/2012 20:21:58
Quote Anchor link
Elke class hoort zijn eigen bestandje te hebben dus stel je hebt 10 classes ( 10 php bestandjes ) dan zet je deze in een map ( je library ) om de juiste class op te halen kan je gebruik maken van een autoloader. het hangt er een beetje vanaf hoe je gaat programmeren met OOP maar het is na verloop van tijd veel sneller en overzichtelijker je moet alleen de logica ervan inzien.
 
Jan terhuijzen

jan terhuijzen

01/09/2012 20:26:46
Quote Anchor link
Oke dus ik moet het bestand van een class includen als ik die class wil gebruiken (lijkt me logisch)
Gewijzigd op 01/09/2012 20:26:57 door jan terhuijzen
 
Wouter J

Wouter J

01/09/2012 20:36:21
Quote Anchor link
Ja, alleen het mooie is dat PHP autoloaders heeft uitgevonden. Als je een klasse probeert te initializen die nog niet bestaat zal er een functie worden aangeroepen. Aan de hand van de classnaam wordt dan een bestand geïncluded waarin de klasse staat.

Bijv. je hebt deze structuur:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
App/
  src/
    Notification/
      EmailNotification.php


En je doet ergens in een bestandje:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
new Notification\EmailNotification();
?>


Zal de autoloader worden aangeroepen => bestand bestaat namelijk nog niet. Die autoloader laadt dan src/Notification/EmailNotification.php in.

Meer over autoloaders: hier en hier (dat hele topic is trouwens wel interessant om te lezen, daardoor heeft Jasper ook het nut van OO gezien)

Quote:
Mij is altijd geleerd dat je geheugenefficient moet programmeren, dus niet onnodig variabelen aanmaken enzo.
Maar ik heb het gevoel dat OOP juist erg veel werkgeheugen kost.

Dat doet het niet. OOP kost misschien iets meer server ruimte, maar werkgeheugen niet.

Quote:
En ik vind ook dat OOP helemaal niet overzichtelijker is dan procedurele code.
Ik vind het juist een versnipperde code die door elkaar is gegooid.
Of duurt het even voordat ik het voordeel ervan inzie?

Het duurt even voordat je het voordeel ervan inziet. Een van die voordelen is dat als je echt goed OO script je je script zo flexibel hebt gemaakt dat je maar 1 keer een login systeem hoeft te maken en je die overal kunt gebruiken. Doordat je zo met 10 regels code ipv MySQL een oracle database kunt ondersteunen. Of i.p.v. opslaan in een database opslaan in een bestand.
Of wat dacht je van meerdere security levels? Dat is zo gedaan.
 
John Berg

John Berg

01/09/2012 21:06:58
Quote Anchor link
Wat nog niet aan de orde is geweest: hergebruik van classes. Een class is een op zichzelf staand 'iets'. Als het getest is, en voldoende universeel is, kan een class op heel veel plaatsen hergebruikt worden, zonder dat je er nog ooit naar hoeft te kijken.

Neem als voorbeeld 8 van de 10 topics die hier voorbij komen: een lap gehutste html/php/sql code met de vraag 'het werkt niet'. Heel vaak zit het probleem in de query.

Aan de andere kant, ik heb mijn database afhandeling in classes zitten en schrijf eigenlijk nauwelijks sql. En dat het ophalen van data niet werkt kan ik me al helemaal niet voorstellen :)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.