OOP classes advies

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Full stack developer

Functie Binnen een ontzettend stimulerende werkomgeving kom jij te werken in een software team van 14 developers. Met ontzettend stimulerend bedoel ik een modern pand, wat voorzien is van alle nodige soft- en hardware, zodat jij jouw werk goed kan uitvoeren. Daarnaast zitten ze in een bos, waardoor je in een groene omgeving rustig kunt werken. Het team bestaat uit front end, back end en full stack developers. Jij krijgt dus de keuze hier waar jij jezelf het liefst op zou richten, maar de voorkeur gaat uit naar back end. Er wordt hier Scrum (agile) gewerkt in multidisciplinaire teams met

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

JAVA Programmeur

Bedrijfsomschrijving Functieomschrijving We zoeken per direct enthousiaste software engineers die ons team komen versterken.We werken in DevOps teams met een sterk gevoel voor verantwoordelijkheid. Er wordt nauw samengewerkt met ons Business analyse team (BAT), met onze uitvoerende medewerkers en met de DevOps teams onderling binnen het domein. Het liefst hebben we veel en vaak interactie met onze interne en externe eindgebruikers om zo de juiste dingen te maken. We werken multidisciplinair in een dynamische omgeving. Achtergrond opdracht De Businesseenheid Examens is verantwoordelijk voor de logistiek van de staatsexamens Voortgezet (speciaal) onderwijs, Nederlands als 2e taal en schoolexamens. In het kader

Bekijk vacature »

E-Identity Developer met Projectleider Kwaliteiten

Functieomschrijving Voor de kamer van koophandel zijn we op zoek naar een E-Identity developer met projectleider kwaliteiten. Voor deze opdracht zoekt KVK een Informatieanalist met Technisch Projectleider en ICT developer kwaliteiten, met kennis van E-identity. We zoeken in de breedte en niet specifiek in de diepte qua skillset. Een Junior Projectmanager, een Junior Informatieanalist, een Junior Developer (full stack), een Junior Designer en een Junior ICT architect ineen, met een sterk gevoel van stakeholder management en planning vaardigheden. Door de internationale setting, én de realisatie van ontsluiting van en naar basisregisters toe zijn wij op zoek naar enige ervaring binnen

Bekijk vacature »

Medior/senior Front-end developer

Functie Je maakt deel uit van een DevOps Scrum team en werkt samen met back-end developers, test-engineers, interaction designers en een projectmanager. Er zijn verschillende groepen Scrum teams. Een roadmap team is jouw ‘’thuisbasis’’, daar wordt gewerkt aan doorontwikkeling van bestaande omgevingen voor een aantal klanten. Hiernaast zijn er projectteams waar nieuwe omgevingen worden gebouwd, of grote complexe wijzigingen worden doorgevoerd op bestaande omgevingen. Je kunt (afhankelijk van jouw wensen en doelen) dus afwisselend werken in beide teams. Hiernaast participeer je in het Chapter Front-end development waar gezamenlijk kennis en ervaring wordt gedeeld. Als Front-end developer is het jouw doel

Bekijk vacature »

Fullstack developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Ervaren Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als ervaren developer zul je hiernaast ook andere developers assisteren en waar nodig de leiding nemen in het project.

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Full stack developer

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een uitdagende werkgever in omgeving Waalwijk zijn wij op zoek naar een enthousiaste softwareontwikkelaar met kennis of ervaring met C# en SQL. In een uitdagende rol als C#.NET Developer werk je samen met een enthousiast en informeel team aan het bouwen van maatwerk software voor variërende klanten. Verder ziet jouw takenpakket er als volgt uit: Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je houdt je bezig met het ontwikkelen

Bekijk vacature »

Mendix Developer

Voor Troostwijk Groep zoeken wij een: Mendix Developer Wij zoeken Je bent een getalenteerde en ervaren Mendix Developer en het is tijd om je horizon te verbreden. Je wilt minder coderen en meer modelleren, minder bezig zijn met allerlei technische details en randvoorwaarden en meer met functionaliteit. Daarnaast ben je trots op de innovatieve en gebruiksvriendelijke applicaties die je in de loop van de jaren hebt gebouwd. Werk je graag in een enthousiast team, wil je veel vrijheid en kun je tegelijkertijd goed met deadlines omgaan, dan ben jij absoluut degene die wij zoeken! Wat je nodig hebt is ruime

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

.NET Developer C# VB

Samengevat: Deze werkgever is actief in software voor het matchen van vraag en aanbod van gebruikte auto-onderdelen. Ben jij een .NET Developer? Heb je ervaring met het ontwikkelen (REST) en integreren van webservices? Vaste baan: C# .NET Developer C# VB HBO €2.600 - €6.200 Wij ontwikkelen software om vraag en aanbod van onderdelen van personenauto's bij elkaar te brengen. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. De branche van dit bedrijf is Automotive. Functie: Voor de vacature als .NET Developer Dordrecht HBO ga je

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus 2023 bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je

Bekijk vacature »

Front-end Developer

Dit ga je doen Doorontwikkelen van software; Ontwikkelen en testen van nieuwe functionaliteiten; Implementaties van nieuwe functionaliteiten en updates; Verzorgen van technische migraties naar nieuwe frameworks; Verwerken van incidenten. Hier ga je werken Onze klant, gevestigd in de regio Amsterdam, draagt bij aan het verbeteren van de veiligheid en efficiëntie van de Nederlandse infrastructuur door het ontwikkelen van afgemeten software oplossingen. Zo passen zij location intelligence toe om onderhoud en reparaties efficiënt te laten verlopen. Verder zorgen deze systemen dat incidenten zo snel mogelijk worden opgelost. Als Front-end Developer ben jij samen met je team betrokken met het (door)ontwikkelen van

Bekijk vacature »
Mark Hogeveen

Mark Hogeveen

28/01/2013 18:56:51
Quote Anchor link
Hallo,

Dit topic gaat over het indelen van een login systeem in OOP.
(Jullie zullen wel gek worden van al die login systemen.)

Ik weet niet welke classen ik moet maken. Natuurlijk de class User, maar wat nog?

Ik heb steeds de neiging om bij elk nieuw bestand een aparte classe te maken en dan krijg ik zoiets als dit:
login.php met een class Login
register.php met een class Register
enz...

Het hele project is nogal groot. Het heeft ook een control panel, dat ik zo ver mogelijk wil uitbreiden.
Bijvoorbeeld met een lijst van alle gebruikers, lijst van alle acties die de administrators hebben uitgevoerd, accounts bewerken, bezoekersaantallen etc.
Deze dingen moeten ook weer functies hebben zoals bij de gebruikerslijst een manier om alleen een bepaald aantal rijen in de lijst te laten zien, of om de orde van de lijst te veranderen. Bijvoorbeeld dat je ervoor kunt kiezen om de lijst te bekijken die is gesorteeld op registratie datum of laatst ingelogd.

Maar wat dus mijn vraag is, welke classes zou ik moeten maken?
Een aparte Database class dacht ik eerst, maar als je voor elke query een method moet maken, dan krijg je ongeveer 80 methods in die classe?
En moet ik voor administrators (gebruikers met "rechten") een aparte class maken? zoals i.p.v de User class, de Admin class?

Ik vind dit altijd zo moeilijk. Ook als ik van te voren een plan maak, wijk ik er vaak vanaf. Omdat ik steeds nieuwe ideeen krijg.
Gewijzigd op 28/01/2013 18:58:00 door Mark Hogeveen
 
PHP hulp

PHP hulp

28/11/2024 11:45:32
 
Wouter J

Wouter J

28/01/2013 19:25:24
Quote Anchor link
teken/schrijf eerst eens uit wat je nou precies wilt, denk dan nog helemaal niet aan objecten of aan de computer. Denk gewoon wat wil ik, bijv:
Quote:
Ik wil een inlog systeem maken. Hiermee moeten gebruikers kunnen inloggen. Deze gebruikers worden beheerd door een SuperAdmin, deze kan bijv. gebruikers verwijderen en aanpassen. De gebruikers mogen ook zichzelf aanmelden, ze krijgen dan een mail met een activatielink en dan kunnen ze ingelogd worden. Deze gebruikers kunnen ook zichzelf aanpassen.
 
Mark Hogeveen

Mark Hogeveen

28/01/2013 19:27:56
Quote Anchor link
Dat ga ik doen! Ik laat straks zien wat ik heb.
 
Erwin H

Erwin H

28/01/2013 19:28:59
Quote Anchor link
Harry hogeveen op 28/01/2013 18:56:51:
Ik weet niet welke classen ik moet maken. Natuurlijk de class User, maar wat nog?

Kan je die 'natuurlijk' ook uitleggen?
En voor de goede orde, ik niet, want ik ben het daar niet mee eens.
 
Mark Hogeveen

Mark Hogeveen

28/01/2013 19:49:34
Quote Anchor link
Hoezo niet? Waarom geen User class?

Toevoeging
Ik heb nu een super lange tekst gemaakt over wat het allemaal moet kunnen. Lees maar als je zin hebt. Ik heb hem al wat ingekort.
----------------------------
Login systeem.
Mensen kunnen inloggen met hun emailadres of gebruikersnaam, en hun wachtwoord.
De wachtwoord vergeten functie kun je gebruiken door je emailadres in te vullen.
Er wordt dan een link gestuurd naar dit emailadres (met code in GET variabele)
Deze link verwijst naar een pagina waarop je ke wachtwoord eenmalig opnieuw in kunt stellen.

Elke bezoeker kan zich registreren. De gegevens die worden gevraagd zijn:
Gebruikersnaam, emailadres, wachtwoord, geboortedatum, (captcha)
De registratiedatum wordt ook opgeslagen.
Een emailadres moet bevestigd worden (link in mail)

Op elke beveiligde pagina's moet een bestand worden ge-include dat controleert of
de gebruiker is ingelogd. Ook controleert dit bestand of de gebruiker niet langer
dan 30 minuten inactief is geweest. Dit wordt bijgehouden met een sessie.
Er moet gecontroleerd worden of de login niet langer dan 4 uur geleden is
Anders wordt de gebruiker ook ingelogd.
Er moet ook gecontroleerd worden of er niet 2 verschillende mensen tegelijk op 1 account
zijn ingelogd. Als er meerdere tegelijk zijn ingelogd op hetzelfde account,
wordt iedereen uitgelogd behalve de persoon die het laatst inlogde op dat account.

Een gebruiker kan zijn eigen gegevens veranderen.

Er zijn verschillende soorten gebruikers: user, moderator, administrator
user is een gewone gebruiker
moderator kan verschillende dingen van het systeem aanpassen en gebruikers uitloggen, blokkeren
en waarschuwen. Een waarschuwing bij een gebruiker verschijnt bij het laden van een nieuwe
beveiligde pagina. Het bestand dat daarop is ge-include die deze waarschuwingen uit de database
halen en weergeven. ls een waarschuwing is weergegeven, wordt deze verwijderd en komt deze
niet meer terug.
Een administrator kan alles doen wat hij wil. Zoals hele account data aanpassen, een nieuw
wachtwoord genereren, een account deleten etc.

Het uitloggen is een aparte pagina. Je wordt niet meteen terug gestuurd naar de index.
Op de loguit pagina staat altijd een melding zoals "je bent nu uitgelogd"
Als je uitgelogd werd omdat iemand anders in je account inlogde staat er "Je werd uitgelogd
omdat er al iemand anders inlogde op dit account"

Het controle paneel bevat een lijst van alle leden, die je kunt sorteren. Je kunt ervoor
kiezen om de lijst gesorteerd op registratiedatum te zien.
Je kunt ook bijvoorbeeld ervoor kiezen om alleen de geblokkeerde gebruikers te zien.
Er is ook een soort lijst waarin alles staat wat een moderator of administrator heeft gedaan.
Iedereen die toegang heeft tot het controlepaneel kan deze lijst zien en weet zo wat anderen
hebben gedaan.
Ook is er een lijst waar errors in komen te staan, als die er zijn.
Gewijzigd op 28/01/2013 19:59:58 door Mark Hogeveen
 
Erwin H

Erwin H

28/01/2013 20:04:51
Quote Anchor link
Harry hogeveen op 28/01/2013 19:49:34:
Hoezo niet? Waarom geen User class?

Waarom wel?

Waarom niet, omdat dat helemaal niet nodig is in een omgeving als php. Een user class zou in mijn ogen de gegevens van de user moeten beheren. Alleen omdat php stateless is, is daar helemaal geen sprake van. Bij elke aanroep begin je weer helemaal van voren af aan en wordt er dus helemaal niets beheerd. Het enige wat de user class werkelijk zou kunnen doen is gegevens ophalen en weer wegschrijven. Er is geen sprake van reageren op events, er is geen sprake van regelmatige updates, bijhouden van actieve tijd etc. Al die zaken worden op request basis behandeld en in mijn ogen is een php OOP omgeving veel verstandiger op te zetten uitgaande van het request, dan van een object als een user.

Dus, waarom wel?
Gewijzigd op 28/01/2013 20:05:37 door Erwin H
 
Mark Hogeveen

Mark Hogeveen

28/01/2013 20:35:54
Quote Anchor link
Inderdaad. Ik dacht eigenlijk op die manier omdat bijna elk login systeem in OOP wat je tegenkomt een userclass heeft.

Een Userclass zou je eigenlijk pas nodig hebben in Java bijvoorbeeld.
 
Erwin H

Erwin H

28/01/2013 20:58:14
Quote Anchor link
Veel mensen kopieren elkaar alleen maar, zonder zelf echt te ontwerpen. Vandaar ook mijn vraag of je dat 'natuurlijk' kon uitleggen.

Over je omschrijving, probeer zaken als "Op elke beveiligde pagina's moet een bestand worden ge-include..." te vermijden voorlopig. Dit is al heel erg implementatie en daar ben je voorlopig nog niet mee bezig.
 



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.