Ontwerpen usermanagement

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

C# backend developer gezocht, hardware component,

Ben je een C# developer en zoek je een baan in Rotterdam waar je systemen ontwikkeld die communiceren met hardware? Bij een klein bedrijf met korte lijnen, een open cultuur en veel vrijheid? Wellicht dat dit dan iets voor je is. Voor een klant in Rotterdam zijn we op zoek naar een ervaren C# developer. Het gaat hier om een bedrijf dat gericht is om voor overheden en ondernemingen informatie vanuit bepaalde meetsystemen te verwerken en te presenteren. Zo is bijvoorbeeld een van de projecten waar je als ontwikkelaar aan gaat werken; het bouwen van een website waar gebruikers informatie

Bekijk vacature »

Ervaren .NET C# ontwikkelaar, inhouse, complex maa

Ben je als ervaren ontwikkelaar op zoek naar een analytische omgeving? Waar hoogopgeleiden en ervaren collega’s jouw kennis naar een hoger niveau kunnen tillen? Waar je met een leuk team samen aan innovatieve producten werkt? Dan zou de deze organisatie wel eens goed bij je kunnen passen. Voor een organisatie in Delft zoeken we momenteel een ervaren .NET C# ontwikkelaar. De organisatie richt zich op innovatieve en complexe maatwerk systemen met een maatschappelijke raakvlak. Hierbij moet je (afhankelijk van je niveau) mee kunnen denken met functionele en architectonische vraagstukken. De projecten kunnen uiteenlopend zijn en het is maar net wat

Bekijk vacature »

.NET Developer Financieel

Werk jij als software developer het liefst met uitdagende systemen? Dan kun jij je bij onze vestiging in Amsterdam volledig uitleven als .NET Developer Financieel. Wanneer begin je? Jouw baan Je ontwerpt, ontwikkelt, ondersteunt en onderhoudt je eigen financiële module binnen HiX, onze ICT-totaaloplossing voor de zorg. Je schrijft objectgeoriënteerde code, speurt naar verbeteringen, werkt aan vernieuwende projecten, doet code reviews en voert testen uit. Een uiterst verantwoordelijke job, want dankzij jouw software kunnen zorginstellingen hun zorg factureren, voldoen aan afspraken met zorgverzekeraars, verplichte landelijke aanleveringen van financiële data doen en nog veel meer. Je brainstormt regelmatig met collega’s hoe

Bekijk vacature »

Java Developer voor mooie opdrachten

Functieomschrijving Je gaat werken aan complexe projecten waarbij er veel gevraagd gaat worden van je technische inzicht. Dit zal je gaan doen voor verschillende opdrachtgevers bij jou in de regio. Als je echt beter wilt worden als Javaan dan zit je hier op de juiste plek, als Java Ontwikkelaar word je hier namelijk intern opgeleid en zal je verdere framework kennis mogen opdoen, een ideale functie dus wanneer je graag met Java aan de slag wilt gaan en veel wilt leren. Ervaring met Spring is een wens vanuit de organisatie aangezien ze hier zelf veel mee werken. Frameworks als Hibernate

Bekijk vacature »

.NET Developer Medicatie / Apotheek

Jij krijgt een kick van het ontwikkelen van complexe software. Voor onze vestiging in Hoogeveen zoeken wij een .NET Developer Medicatie / Apotheek die graag met de laatste Microsoft-tools en -technieken wilt werken, interessant? Jouw baan Je bent verantwoordelijk voor het ontwerpen, ontwikkelen, ondersteunen en onderhouden van de module Medicatie / Logistiek & Apotheek. Je gaat nauw samen werken met zowel interne als externe klant om nieuwe functionaliteiten te ontwikkelen om onze klanten te ondersteunen in hun werkproces. Het gaat om complexe ICT-producten die feilloos moeten functioneren binnen de complexe omgeving van een zorgorganisatie. ChipSoft maakt gebruik van een zelf

Bekijk vacature »

.NET developer / C# / Webservices

Functieomschrijving Wil jij als .NET Developer bij deze organisatie in Tilburg als kartrekker in een Scrum team fungeren en je helemaal uitleven in de backend met C#? Krijg jij een grotere kick van high-security en high-availability .NET backend oplossingen dan van een gelikte frontend? Dan past deze functie jou perfect! Programmeren van high-availability en high-security applicaties in C#; Samen met je teamgenoten nieuwe applicaties/diensten ontwikkelen in .NET; Overleggen met de informatie analisten en testers; Ontwikkelen van webservices (WCF); 20% van je tijd besteden aan innovatie; Deelnemen aan projecten om nieuwe ketenpartijen toe te voegen; Bouwen van unit testen. Functie-eisen Beschikt

Bekijk vacature »

Junior .NET developer voor versneld groeitraject,

Je hebt net je opleiding Informatica of Computer Science afgerond en je bent op zoek naar een baan als .NET developer? Maar wel een baan met de juiste begeleiding en een goed startsalaris? Wellicht dat deze vacature iets voor jou is. Vaak loop je als startende developer tegen de uitdaging om de juiste begeleiding te krijgen bij je werkgever. Je collega’s zijn te druk met hun eigen werk of beschikken simpelweg niet over de ervaring en vaardigheden om jou als junior developer goed te kunnen begeleiden. Het bedrijf, waar we momenteel afgestudeerde .NET developers voor zoeken, is een organisatie die

Bekijk vacature »

.NET Developer Medicatie / Apotheek

Jij krijgt een kick van het ontwikkelen van complexe software. Voor onze vestiging in Heerenveen zoeken wij een .NET Developer Medicatie / Apotheek die graag met de laatste Microsoft-tools en -technieken wil werken. Interessant? Lees snel verder! Jouw baan Je bent verantwoordelijk voor het ontwerpen, ontwikkelen, ondersteunen en onderhouden van de module Medicatie / Logistiek & Apotheek. Je gaat nauw samen werken met zowel de interne als externe klant om nieuwe functionaliteiten te ontwikkelen om onze klanten te ondersteunen in hun werkproces. Het gaat om complexe ICT-producten die feilloos moeten functioneren binnen de complexe omgeving van een zorgorganisatie. ChipSoft maakt

Bekijk vacature »

Systeembeheerder Cloud Engineer

Systeembeheerder Cloud Engineer In de afgelopen maanden is er nog nooit zoveel gewerkt in de Cloud als voorheen. Je hebt de laatste ontwikkelingen in de IT op de voet gevolgd. Hierdoor weet je zeker dat je als systeembeheerder Cloud overal terecht kan maar daarbij is het nu nog belangrijker dat je voor een werkgever kiest waar je ondanks de social distance toch de verbondenheid voelt. Daarom leggen wij bij T2 de focus op jou als persoon en zien wij je graag nog meer ontwikkelen en daar plukken wij samen de vruchten van. Onze samenwerking Onze klanten denken aan IAAS, PAAS

Bekijk vacature »

Xamarin Developer

Functieomschrijving Ben jij de Xamarin expert die de volgende stap in zijn carrière wil zetten? Houd jij er van om veelgebruikte apps verder uit te bouwen terwijl je de kwaliteit blijft waarborgen en heb je daarnaast zelf innovatieve ideeën ? Lees dan snel verder! Samen met het gehele mobile app team ben jij verantwoordelijk voor: de (door)ontwikkeling van Native applicaties voor Android en iOS; het verder samenbrengen van de applicatie en de web omgeving; de innovatie van de applicatie, het is belangrijk dat jij zelf meedenkt en jouw ideeën voorlegt binnen het team; feedback vanuit de gebruikers te behandelen en

Bekijk vacature »

IT System Administrator (Salesforce, Navison &

Thank you for your interest in Össur. The most important resource of Össur is its staff. At Össur, we value our extensive skills and knowledge base and naturally we nurture a spirit of innovation. With wide-ranging roles involved in our business, Össur is keen to attract talented individuals and accomplished team players, who are ready to contribute to the achievement of our goals. What is Your role As IT System Administrator, you will be working with the system and process owners on maintenance and delivery of the IT systems for our Sales & Marketing department. Ensuring the optimization of the

Bekijk vacature »

OutSystems Developer

NOTE! NO Relocation, Only applications from the Netherlands and fluent in Dutch! De vraag vanuit de business is de laatste tijd sterk toegenomen, waardoor het voor onze klant mogelijk is om de nieuwe functie te creëren voor een OutSystems Developer. Deze functie past goed bij een iniatiefnemer die pro-actief vraagstukken ophaalt uit de business en deze o.b.v. zijn/haar expertise verder vorm geeft. Bedrijfsomschrijving NOTE! NO Relocation, Only applications from the Netherlands and fluent in Dutch! Key-Account van Michael Page Een van de grootste retail/supermarktketen gevestigd in 30 landen in Europa Omschrijving NOTE! NO Relocation, Only applications from the Netherlands and

Bekijk vacature »

Full stack software .NET C# developer, domotica me

Voor een bedrijf in de regio Hendrik Ido Ambacht zijn we op zoek naar een fullstack .NET C#developer. Het gaat hier om een bedrijf dat systemen ontwikkeld die via domotica oplossing bieden voor maatschappelijke instellingen. Zo verwerken hun systemen meldingen waarover ze rapporteren, maar ook zorgen ze voor de automatisering van toezicht. Het systeem bestaat uit apps, web interfaces, backend en BI rapportage tools. Het gaat het hier om een MKB bedrijf van circa 70 mensen met een team van 5 developers. Bestaande uit hardware, embedded en backend developers. Momenteel is er daarom sterke behoefte aan iemand die zowel back-

Bekijk vacature »

.NET C# web developer met focus op gebruiksvriende

Ben je op zoek naar een baan binnen een klein softwarebedrijf? Een bedrijf met een informele, persoonlijke en familiaire sfeer? Waar je je als developer zowel richt op de back- als frontend? Wellicht dat deze vacature dan iets voor jou is. Voor een softwarebedrijf, gevestigd in het centrum van Rotterdam, zijn we momenteel op zoek naar .NET C# web developer. Dit mag iemand zijn die net van school komt, maar ook iemand die al behoorlijk wat ervaring heeft. Het bedrijf bestaat inmiddels ruim 10 jaar en en door de aanhoudende groei zijn ze opzoek naar versterking van 1 a 2

Bekijk vacature »

Fullstack Developer (Front-end, Java/Python)

Dutch Speaking Full-stack Developer Are you a highly technically skilled software developer looking for a challenging role in Utrecht area? Do you have knowledge of front-end and back-end technologies and speak fluently Dutch? Do you want to join a close-knit club of enthusiastic engineers? I’m looking for someone who… Is a polyglot having an extensive experience with Java, Kotlin, Scala, Akka, Spring, Maven, JavaScript, HTML, CSS and modern front-end frameworks Is experienced with open source technologies, Jenkins and Docker Can learn quickly, takes responsibility and has “doing it right” attitude Who is interested in… Being responsible for challenging assignments of

Bekijk vacature »

Pagina: « vorige 1 2 3 4 5 volgende »

Write Down

Write Down

29/08/2012 16:20:01
Quote Anchor link
Simpel zal dit inderdaad niet zijn, maar volgens mij wel flexibel. Dan kan ik perfect bepalen welke pagina's welke rechten nodig hebben. Voor de gebruikers van het systeem, lijkt me dit ook prima. Ik kan in de GUI dan door middel van checkboxes laten selecteren wat welke groep mag uitvoeren.

Maar goed, even kijken of mijn idee hoe ik het wil uitwerken volgens de 'regels' van OO zijn. Ik zal dit doen a.d.h.v. een korte bespreking wat de functionaliteit is van elke klasse.

Authentication
De gebruiker inloggen / uitloggen. Uiteraard een paar checks invoegen zoals gebanned om gelijk welke reden. Deze methods geven dan iets terug van geslaagd / niet geslaagd (+reden)

Authorization
Is de ingelogde nog wel wie hij/zij zou moeten zijn? Moet er niet gevraagd worden om opnieuw ingelogd te worden?

Permission
Kijken welke permissies nodig zijn voor deze pagina / opvragen welke permissies de gebruiker heeft.

User
Naam bijhouden, user ID, ... Ik vraag me af wat het verstandigste is, een referentie naar de permission class leggen, of de 'rij' bits opslaan?

UserMapper
Zorgt voor de data uitwisseling tussen database en het user object.
 
PHP hulp

PHP hulp

26/05/2020 02:58:01
 
Wouter J

Wouter J

29/08/2012 16:33:05
Quote Anchor link
De authentication heeft niks te maken met in/uit loggen. De authentication moet per pagina request kijken wie de bezoeker is: is hij ingelogd of is hij anoniem? Hoe heet hij? Ect? De Authentication maakt dus het User object aan.

Vervolgens hebben we de Authorization die gaat kijken welke rechten er nodig zijn om de pagina te bekijken en kijkt of het User object wel die rechten heeft, zoniet => permission denied, zo ja => pagina laten zien.
 
Write Down

Write Down

29/08/2012 17:38:53
Quote Anchor link
Okay Wouter, alleen, je gaat toch niet telkens authentication een user object laten aanmaken? Ik dacht eerder aan het user object te serializen (zie eerder dit topic) en dit in een sessie te plaatsen. (sessie verwerking ga ik wellicht via de database doen)

Overigens, wil ik bij authorization niet altijd dat per definitie een pagina bekeken mag worden of niet. Ik wil ook de mogelijkheid hebben om delen van een pagina niet te tonen. Denk bijvoorbeeld aan een inkomsten module. Deze staat dan gelijk op het controlepaneel, alleen ik wil niet dat een support medewerker dit kan zien. Anderzijds, wil ik hem andere delen van die pagina niet ontzeggen. Maak ik hiervoor best een apparte class aan, of toch ook hier in?

In welke class zou ik dan het inloggen moeten afhandelen?

Toevoeging op 29/08/2012 17:42:09:

Even wel toevoegen dat ik uiteraard authentication wil toepassen, controle is belangrijk. Dus het user object deserializen en nakijken.
 
Wouter J

Wouter J

29/08/2012 17:46:50
Quote Anchor link
Je kan het ook zo doen dat de Authentication kijkt of de sessie bestaat: Zoniet dan wordt de gebruiker geverifieerd en wordt er een User object aangemaakt (die in een sessie wordt geplaatst). Mocht de sessie wel bestaan dan zal de Authentication die User object pakken en kijken of we nog steeds met dezelfde gebruiker te doen hebben.

We praten nu met Authentication en Authorization op pagina (route) niveau. Maar je kunt dit natuurlijk met dezelfde 2 klassen ook toepassen op Controller niveau (de inkomsten module wordt door een andere controller gemaakt dan het controlepanel) of zelfs op een action niveau.

Als je de 2 klassen een beetje snel programmeert kun je het voor elkaar krijgen dat je met 2 klassen (authorization en authentication) op elk niveau voor beveiliging kan zorgen. De Authentication zal je 1 keer aanroepen, als eerste, en de authorization zal je misschien vaker aanroepen (mag de user de pagina zien -> ja, mag de user de inkomstenmodule zien -> nee, enz.)

En het inloggen handel je af met een eigen SecurityController oid. Dit is geen taak van een normaal object, maar zul je 'moeten' afhandelen met een Controller.

Offtopic:
Ik heb geen ervaring met Security regeling. Wat ik je hier vertel is hoe het opgelost wordt in het Symfony Framework.
Ik weet niet wat het doel is van dit experiment, maar ik raad je zeker aan ook eens naar een framework te kijken ZF2, Symfony, CakePHP maakt me niks uit. Dan wordt het een stuk makkelijker voor je.
Mocht je dit als doel hebben OO te leren dan kun je natuurlijk vrolijk verder gaan, je leert er echt goed OO door!
Gewijzigd op 29/08/2012 17:49:26 door Wouter J
 
Write Down

Write Down

29/08/2012 17:52:34
Quote Anchor link
Alweer bedankt voor de reactie!

Maar jij zou dus geen extra klasse Permission maken? Want ik dacht bij authorization controles te doen als, bestaat de sessie nog, is de sessie nog niet vervallen, klopt het IP nog, is de persoon niet op meerdere locaties ingelogd, ... En dan dacht ik emt de Permission klasse effectief na te gaan kijken mag de gebruiker x en y wel doen?

Toevoeging op 29/08/2012 17:56:04:


Offtopic:
In eerste instantie wil ik zelf gewoon een mooie basis uitwerken. Hiermee wil ik dan eigenlijk gelijk welke soort applicatie gaan opbouwen.

Mijn eerste applicatie die ik er werkelijk wil gaan opbouwen is een CMS.

Zelf gebruik ik liever geen framework. Ik wil het liefst alles zelf netjes regelen zoals ik het wil. Ik vind persoonlijk zo'n framework vaak nogal log, en onnodig veel mogelijkheden hebben. Daarom maak ik liever zelf iets, wat ook nog leuk en leerzaam is.
 
Wouter J

Wouter J

29/08/2012 18:04:45
Quote Anchor link
Wat jij wilt met de Authorization is wat je in de Authentication moet doen. Die kijkt wie de gebruiker is, of die nog steeds dezelfde is en dus ook meteen alles van de sessie. Met authorization kijk je wat deze gebruiker mag en of dat gelijk is aan wat er nodig is om iets (pagina, controller, actie) te mogen zien.

Misschien helpt het als ik de worden even vertaal:
Authentication betekend 'verificatie' hierin verifieer je dus de gebruiker, je zorgt dat je een compleet beeld hebt over wie jou bezoeker is.
Authorization betekend 'machtiging'. Je kijkt of die bezoeker die je net helemaal hebt geschetst wel gemachtigd is om iets te bekijken.

Lees anders even deze tutorial: http://symfony.com/doc/current/book/security.html (totaan 'Using a Traditional Login Form' aangezien het vanaf daar over Symfony gaat)
 
Write Down

Write Down

29/08/2012 23:15:48
Quote Anchor link
Rest mij nog een vraag. De permissies in het user object bijhouden of toch maar telkens via de UserMapper ophalen?
 
Write Down

Write Down

04/09/2012 17:52:05
Quote Anchor link
Wegens weinig tijd afgelopen week, ben ik nog niet veel verder geraakt. Vandaag ben ik dan meer weer eens verder gaan nadenken hoe ik nu alles over gebruikers flexibel kan bijhouden.

Op die opzet zou ik graag wat reacties krijgen, bij deze dus het idee.

De User class wil ik beperkt houden. In een User object zou ik het user_id en de permission_group. Ik twijfel nog een beetje of ik de naam hier ga in bij houden of niet.

Daarnaast wil ik een Person class gaan ontwerpen. Deze moet dan een paar basis gegevens bijhouden zoals de voornaam, achternaam, e-mailadres (e.v.t. nog andere andere algemene zaken, zoals geboortedatum e.t.c.). Eveneens een 'lijst' (array) naar Address, Telephone en Note objecten.

Die laatste drie zijn dus ook classes, wat die juist doen lijkt me duidelijk. Uiteraard, voor elke class die ik noem, zal er ook een Mapper zijn.

Wat denken jullie van deze opzet?
 
Wouter J

Wouter J

04/09/2012 18:34:28
Quote Anchor link
Ik zou het User object de Person klasse laten extenden. Verder klinkt het we goed.
 
Write Down

Write Down

04/09/2012 19:03:32
Quote Anchor link
Wouter J op 04/09/2012 18:34:28:
Ik zou het User object de Person klasse laten extenden. Verder klinkt het we goed.


Ik dacht het net omgekeerd te doen. De bedoeling is namelijk dat ik het User object serialize en in de sessie ga stoppen. Dit wil ik dus liefst zo klein mogelijk houden.

Als ik User dus extend, lijkt me dat Person ook zal worden opgenomen?

Toevoeging op 04/09/2012 19:57:29:

Ik denk dat ik de oplossing al weet, dadelijk even testen. Eerst eten, ik kom straks terug bij jullie!

Toevoeging op 04/09/2012 22:35:05:

Om er even op terug te komen, mijn idee werkt dus. Even wat test code geschreven:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
class Person {
    private $firstName;
    private $lastName;
    private $email;
    
    function
__construct($firstName, $lastName, $email) {
        $this->firstName = $firstName;
        $this->lastName = $lastName;
        $this->email = $email;
    }


    
    public function getFirstName() {
        return $this->firstName;
    }


    public function getLastName() {
        return $this->lastName;
    }


    public function getEmail() {
        return $this->email;
    }

}

?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
class User extends Person implements Serializable {
    private $id;
    private $permissions_group;
    
    public function __construct(Person $person, $id, $permissions_group) {
        parent::__construct($person->getFirstName(), $person->getLastName(), $person->getEmail);
        $this->id = $id;
        $this->permissions_group = $permissions_group;
    }


    public function getId() {
        return $this->id;
    }


    public function getPermissions_group() {
        return $this->permissions_group;
    }


        
    public function serialize() {
        return serialize(array(
            'id' => $this->id,
            'perm' => $this->permissions_group
        ));
    }

    
    public function unserialize($serialized) {
        $data = unserialize($serialized);
        $this->id = $data['id'];
        $this->perm = $data['perm'];
    }
}


?>



Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
session_start();
require_once 'Person.php';
require_once 'User.php';

$person = new Person('Write', 'Down', 'write@down.up');

$user = new User($person, 7, 1);

echo $user->getFirstName(); //geeft perfect Write

$_SESSION['user_data'] = serialize($user);
print_r($_SESSION);

?>

Gewijzigd op 04/09/2012 22:43:04 door Write Down
 
Write Down

Write Down

07/09/2012 11:21:53
Quote Anchor link
Ik loop nu bij nader inzien op deze manier toch nog tegen een probleem. Wanneer ik een User object wil maken, ben ik verplicht een Person object aan te maken (of de parameters in te vullen die dat mogelijk maken).

Dit is geen grote ramp, maar toch... Bij het inloggen bijvoorbeeld, heb ik totaal geen behoefte aan de gegevens van een persoon. Toch moet ik deze ophalen, wat dus onnodige queries kost. En nee, deze info wil ik niet gaan opslaan in de sessie, net omdat ik het zo weinig nodig heb.

Daarom overweeg ik het niet Person te extenden, maar User. Alleen weet ik niet of dit echt een goede oplossing is. Het klinkt in elk geval niet erg logisch. Graag jullie raad!
 
Eddy E

Eddy E

07/09/2012 11:27:24
Quote Anchor link
Ik zou Person er alleen bij betrekken als je daadwerkelijk die informatie nodig hebt.
En als User niet hetzelfde is als Person, waarom moeten ze dan 1 op 1 gelinkt worden?

Persoonlijk zou ik user_id en person_id gewoon als relatie beschouwen, maar dan alleen als je dat nodig hebt.
Person extend dus User.

User = id, loginnaam (kan ook email zijn), wachtwoord, sessie en rechten
Person = id, naam, email, leeftijd (en andere profiel-dingen)
 
Write Down

Write Down

07/09/2012 11:31:57
Quote Anchor link
Bedankt voor de reactie Eddy. Ik wacht nog even af op andere reacties. Maar het lijkt me inderdaad een goed plan. Al zijn er misschien nog wel betere oplossingen :-)

Verder heb je het denk ik wel meer over de database kan dan de PHP kant lijkt mij. Want ik zie bijvoorbeeld niet in waarom ik het wachtwoord in een User object zou opslaan.
 
Erwin H

Erwin H

07/09/2012 11:37:10
Quote Anchor link
Write Down op 07/09/2012 11:21:53:
Dit is geen grote ramp, maar toch... Bij het inloggen bijvoorbeeld, heb ik totaal geen behoefte aan de gegevens van een persoon. Toch moet ik deze ophalen, wat dus onnodige queries kost. En nee, deze info wil ik niet gaan opslaan in de sessie, net omdat ik het zo weinig nodig heb.

Waarom moet je die gegevens ophalen?
 
Write Down

Write Down

07/09/2012 11:38:45
Quote Anchor link
Moeten is een groot woord. Ik kan null etc invullen, maar goed. Dan zit ik alsnog met een ongewenst / onnodig object. Als ik het er volledig uit sloop, dan kan ik even goed niet langer extenden.
 
Eddy E

Eddy E

07/09/2012 11:54:48
Quote Anchor link
Write Down op 07/09/2012 11:31:57:
Want ik zie bijvoorbeeld niet in waarom ik het wachtwoord in een User object zou opslaan.


Omdat een user/gebruiker moet kunnen inloggen met een wachtwoord?
Die hoef/mag je uiteraard niet opslaan in een sessie, maar om te wijzigen etc wel.
Was ook maar een voorbeeld: wellicht logged_in BOOLEAN is beter ;).
 
Erwin H

Erwin H

07/09/2012 11:55:05
Quote Anchor link
Nu ik er wat beter naar kijk zit er uberhaupt iets heel geks in je opbouw:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
class User extends Person implements Serializable {
    
    public function __construct(Person $person...){
    }

}

?>

De class User extends de class Person en je moet er nog een meegeven in de constructor. Dat is iets wat overbodig is en wat je nooit zou moeten doen. Alle data/methods die je nodig zou kunnen hebben in de class User heb je al, dus waarom nog eens meegeven?

Je zou je moeten afvragen of dat extenden uberhaupt nodig is.

Toevoeging op 07/09/2012 11:58:42:

En nog even terug naar een al wat oudere opmerking van je, maar mogelijk nu weer relevant.
Write Down op 04/09/2012 19:03:32:
Ik dacht het net omgekeerd te doen. De bedoeling is namelijk dat ik het User object serialize en in de sessie ga stoppen. Dit wil ik dus liefst zo klein mogelijk houden.

Dat maakt niet uit. Bij het serializen bepaal je zelf welke gegevens je meeneemt. Zelfs al heb je 10MB aan data in het object zitten, als jij alleen het id van het object wil serialiseren dan kan dat natuurlijk.
 
Write Down

Write Down

07/09/2012 12:06:47
Quote Anchor link
Het zou in elk geval handig zijn moest ik User kunnen extenden met Person. Of het echt nodig is, wellicht niet.

Daarom ook dat ik vraag, wat is volgens jullie de beste oplossing?

Wat betreft serialize, dit had ik inderdaad intussen ook al door, zie ook voorbeeld code.
 
Erwin H

Erwin H

07/09/2012 12:25:15
Quote Anchor link
Gezien je vragen is het misschien niet zo handig om het te extenden. En 'handig' is in elk geval geen juiste reden om het wel of niet te doen. Nodig wel.
Maar of het wel of niet moet is vanaf een afstand niet of nauwelijks te beantwoorden.

Stel jezelf eens de vragen:
- is Person dezelfde entiteit als User?
- is User dezelfde entiteit als Person?
- heb je de gegevens/methodes van User nodig in Person?
- heb je de gegevens/methodes van Person nodig in User?
- kan je gegevens/methodes die je in beide nodig hebt uitfilteren en wellicht in een gemeenschappelijke class onderbrengen?
 
Write Down

Write Down

07/09/2012 14:37:07
Quote Anchor link
Bedankt voor je reactie Erwin, uiteraard ook dank voor de andere reacties.

Ik zit nog steeds een beetje met een twijfel of ik ze nu al dan niet ga uit mekaar trekken. Ik wil nl. de mogelijkheid hebben om 'losse' personen aan te maken. Denk bijvoorbeeld aan het toevoegen van contactpersonen aan de applicatie. Ik zou bijvoorbeeld kunnen bijhouden wie mijn contactpersoon bij mijn hosting is. Die persoon is dus eigenlijk totaal geen gebruiker.

Anderzijds, is een gebruiker sowieso een persoon. Als ik iemand als gebruiker toevoeg, zou ik ook graag wat informatie over die persoon willen bijhouden. Vanuit dat punt, ben ik er vanuit gegaan dat er eigenlijk wel een relatie 'moet' zijn tussen beide klassen.

Verder ben ik vrij zeker dat de kans dat ik meer gebruikers (die dus ook 'persoon' zijn) heb dan enkel en alleen personen. Daarom dus toch nog enige twijfel.
 

Pagina: « vorige 1 2 3 4 5 volgende »



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.