Datamapper

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Cloud Engineer

Ben jij een ervaren Cloud Engineer die complexe omgevingen kan overzien en wil je graag in vaste dienst werken bij een professioneel en kleinschalig bedrijf waar je een belangrijke rol kan spelen? Wij, IntelliMagic in Leiden, ontwikkelen specialistische IT monitoring software die we als SaaS oplossing verkopen aan grote bedrijven in Europa en de VS. We zijn een Nederlands bedrijf met een goede sfeer en met grote waardering voor de persoonlijke inbreng en kwaliteiten van onze medewerkers. Wij zoeken een ervaren Cloud Engineer met academisch denkniveau die verantwoordelijk wordt voor het beheer van de cloud infrastructuur voor onze Europese klanten.

Bekijk vacature »

Front end developer React

Functie Wij zijn van origine een wordpress bureau, maar sinds 2006 zijn wij dit wel redelijk ontgroeid. Naar mate de jaren verstreken zijn we gegroeid in omvang, maar ook in de complexiteit van opdrachten waarin wij onze klanten kunnen bedienen. Momenteel bestaat onze organisatie uit 4 front end developers, 12 back end developer 3 projectmanagers en een 2 koppig management. Wij zijn een hele informele, bijna familiaire organisatie. Geen strak pak of overhemd, nee gewoon dragen waar jij je prettig bij voelt. De gemiddelde leeftijd ligt tussen de 25 en 30 en wij doen er veel aan om onze hechte

Bekijk vacature »

.NET developer

Functie Als .NET developer werk jij samen in een multidisciplinair ontwikkel team met 1-2 Senior .NET developers, twee front-end developers, Data Scientists en één UX designer. Als team werken jullie aan het ontwikkelen van een Cloud based applicatie en aan het stabieler maken van deze applicatie. Ook unit testing gaat erg belangrijk worden in jouw nieuwe functie. Samen met de Senior .NET ontwikkelaar wordt jij verantwoordelijk voor het ontwikkelen van de API. Jullie werken met veel data en incidenteel komen er ook data vraagstukken en zullen er wat queries gedraaid moeten worden. Dit betekend dat jij veel gaat werken met

Bekijk vacature »

Ervaren PHP Developer

Functieomschrijving PHP Developer met brede ervaring gezocht! Ben jij een Full Stack PHP Developer met brede ervaring die toe is aan een volgende stap? Lees dan snel verder! Voor onze eindklant in de regio Nunspeet zijn wij op zoek naar een ervaren PHP Developer die het IT Team van deze organisatie gaat versterken. Wij zoeken een enthousiaste en breed georiënteerde IT-er die er voor gaat zorgen dat deze innovatieve organisatie de volgende stap gaat maken. Om deze functie goed uit te kunnen voeren moet je communicatief goed zijn en in staat zijn om zelfstandig problemen op te lossen. Daarnaast bestaat

Bekijk vacature »

Embedded Developer C++

Functie omschrijving Ben jij op zoek naar een leuke uitdaging als Embedded Developer, zoek dan niet verder! Voor een leuke opdrachtgever in omgeving Rotterdam zijn wij op zoek naar een Embedded Developer die graag met Embedded Devices werkt. Je zult verantwoordelijk worden voor het ontwikkelen en onderhouden van diverse producten. Jouw specialisatie ligt op het vlak van software, hardware en back-end. Dit bedrijf is gespecialiseerd in het ontwerpen van software voor een unieke industrie. Wil jij betrokken worden bij een proces dat loopt van ontwikkeling tot installatie? Waarbij je bezig zult zijn met perfecte systemen die geleverd worden aan binnen

Bekijk vacature »

Node.js developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

Low Code Developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en ben jij HBO afgestudeerd in de richting van IT? Heb jij verstand van datamodellering, NO CODE Platformen en kun jij het aan om projecten te leiden? Voor een leuke opdrachtgever in omgeving Capelle aan den IJssel zijn wij op zoek naar een No Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten in heel het land! Wat ga je hier zoal doen? Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform, je

Bekijk vacature »

Back End Developer

Als Back End developer bij KUBUS houd je je bezig met het ontwikkelen van de (web)applicatie en services van BIMcollab. Je hebt een focus op de back end van onze software, daarvoor werken wij hoofdzakelijk met C# en .NET. Wij hanteren een full-stack benadering, wat betekent dat je naast de back-end ook meehelpt bij andere onderdelen van de code. Als softwarebedrijf bevindt KUBUS zich in een unieke positie. We bouwen aan onze eigen producten die wereldwijd door tienduizenden gebruikers worden gebruikt. Ons bedrijf heeft precies de juiste grootte: groot genoeg om echt impact te maken in de markt, maar klein

Bekijk vacature »

SQL database ontwikkelaar

Functie omschrijving Ben jij niet bang voor complexe algoritmes? Schikt het schrijven van procedures in T-SQL jouw niet af en heb jij al de nodige informatie in SQL, dan is functie precies wat voor jou! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat werken aan de complexere projecten waar jij van A tot Z bij betrokken bent. Je gaat zorg dragen voor het ontwerp, de ontwikkeling en het updaten van SQL databases. Dit doe je op basis van T-SQL. Jij bent van start tot finish betrokken bij de projecten die jij leidt. Je houdt contact met klanten en

Bekijk vacature »

Software Programmeur PHP - JAVA

Functie Wil jij bij een platte en informele organisatie werken? Lees dan snel verder! Voor een opdrachtgever in omgeving Rotterdam dat zich gespecialiseerd heeft in het realiseren van veilige netwerkverbindingen zijn wij op zoek naar een leuke software developer ter versterking van het huidige team. Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen PHP, JAVA en Node.js. Je gaat klanten ondersteunen op het gebied van geleverde software en webapplicaties. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn

Bekijk vacature »

.NET Developer

Functie omschrijving Jij gaat in de functie van Software Developer werken met C# en .NET framework. Jij gaat maatwerk software ontwikkelen en softwareoplossingen creëren. Daarnaast optimaliseer je de bestaande software. Oplossingen waar de klant echt iets aan heeft, jij krijgt er energie van op dit te realiseren. Je gaat werken in een Microsoft omgeving(ASP.NET) en gebruikt daarnaast C# en MVC. Samen met het huidige IT team binnen deze organisatie verwerk je de wensen van de klant tot een (eind)product. Bedrijfsprofiel Je komt te werken in een klein team van developers, die zich voornamelijk bezighouden met back-end development. Verder staat dit

Bekijk vacature »

Junior PHP (Laravel) Developer

Functie omschrijving Wij zijn op zoek naar een PHP Laravel Developer! Sta je aan het begin van je carrière en ben je op zoek naar een leuke baan? Lees dan verder! Voor een softwarebedrijf in omgeving van Schiphol zijn wij op zoek naar een ervaren PHP (Laravel) Developer. Je gaat je bezighouden met het ontwikkelen van innovatieve bedrijfsapplicaties. Samen met het team, bestaande uit designers en developers, maak je mooie oplossingen voor bedrijven in diverse branches. Je zorgt dat de opgeleverde websites perfect werken en de klant meer dan tevreden is. Je kunt rekenen op een afwisselende baan met leuke

Bekijk vacature »

Junior .NET Developer

Dit ga je doen Ontwikkelprocessen verder optimaliseren en verder ontwikkelen met C#; CI/CD-pipelines automatiseren; Ontwikkelen van herbruikbare componenten; Front-end pagina's gebruiksvriendelijk maken. Hier ga je werken Als junior .NET Developer kom je terecht binnen een grote en internationale organisatie. Zij streven naar een positieve impact op de mens, milieu en maatschappij. Het bedrijf is oorspronkelijk een familiebedrijf en werkt aan de productie van hoogwaardige en technische systemen voor de gezondheidszorg. Momenteel willen zij betere ontwikkelprocessen creëren op internationaal gebied en staat kwaliteit en veiligheid voor hun op nummer 1! Als junior .NET Developer werk je aan het ontwikkelen van verbeterde

Bekijk vacature »

Senior pega developer

You work on software that makes colleagues and customers happy! Thanks to your IT skills, De Mandemakers Groep really makes a difference for its customers. Do coding, testing and deployments make your heart beat faster? Then apply today as Senior Pega Developer at De Mandemakers Groep! Wat ga je doen? The job title gives it away: You will be developing Pega software. This ranges from technical design, coding and testing to test automation, deployments and bug fixing. Your goal is to continuously improve our systems so that colleagues can work efficiently and customers receive optimal service. You don't have to

Bekijk vacature »

Fullstack of back-end PHP developer

Functie Ieder onderdeel van de software draait op aparte servers en het bestaat dus echt uit verschillende componenten. Het team bestaat uit 4 developers, een klein team dus met korte lijnen. Alles in intern ontwikkeld en je werkt aan alle facetten. Van uitbreiding van de core tot maatwerk voor de klant. Ook liggen er verschillende uitdagingen op servervlak en databases. Je zult de eerste periode veel samenwerken met de lead developer om vervolgens echt je gang te gaan binnen de software. In het team streven ze naast de hoogst haalbare kwaliteit. Hiervoor werken ze nauw met elkaar samen en levert

Bekijk vacature »
Pim -

Pim -

17/01/2011 12:53:15
Quote Anchor link
Wat is in de volgende situatie de mooiste manier om associaties (1-veel, veel-1, veel-veel) te regelen met een niet-generieke datamapper?

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
<?php

// Plain-old-php-object: geen DB interactie oid
class User
{
    // Var, 1-1, 1-meer, meer-meer
    protected $email, $address, $group, $permissions;

    public function set/getEmail($email);
    public function setAddress(Address $address);
    public function getAddress();
    public function setGroup(Group $group);
    public function getGroup();

    // Even de ACL in de User
    public function setPermissions(array $permissions);
    public function addPermission(Permission $permission);
    public function isAllowed($action);

}


class UserMapper extends Mapper
{
    public function findById($id);
    public function save(User $user);
    public function insert(User $user);
}

?>

Iemand een suggestie? En dan het liefst niet alles eager-loading...
Gewijzigd op 17/01/2011 20:03:41 door Pim -
 
PHP hulp

PHP hulp

27/07/2024 06:58:48
 
Pim -

Pim -

18/01/2011 14:31:01
Quote Anchor link
bump
Gewijzigd op 19/01/2011 11:19:08 door Pim -
 
Niels K

Niels K

21/01/2011 20:43:33
Quote Anchor link
Tja dat is een goede. Zou zelf één twee drie ook niet de beste oplossing weten.
Zodra jij een mooie oplossing hebt gevonden zou je die dan willen plaatsen?
 
Pim -

Pim -

21/01/2011 21:02:06
Quote Anchor link
Is goed hoor.
Ik kan het alleen echt nergens op internet vinden en hier weet volgens mij ook niemand er iets zinnigs over te melden.
 
The Force

The Force

21/01/2011 21:04:28
Quote Anchor link
Kijk eens naar http://stensi.com/datamapper/. Niet dat je dat moet gebruiken, maar hun manier voldoet wel aan jouw voorwaarden :).
 
Pim -

Pim -

21/01/2011 21:10:18
Quote Anchor link
class User extends DataMapper {
is een active record... Leuke naamgeving.

Verder ben ik meer op zoek naar een niet-generiek systeem met slechts een paar klassen. Anders gebruik ik wel Doctrine2 oid.
 
The Force

The Force

21/01/2011 21:19:11
Quote Anchor link
Met slechts een paar klassen dan zou je eigenlijk een generiek systeem moeten hebben toch? Als ie niet generiek is moet je overal klassen voor maken. En de Datamapper die ik aandraag is geen Active Record, het is een datamapper waarin je active record style data kan selecteren.
 
Pim -

Pim -

21/01/2011 21:27:02
Quote Anchor link
Maar het leuke van een DataMapper is toch dat je domain objects (User) niets met de opslag te maken hebben. Als dat wel zo is, is het toch gewoon een active record? Ik zie ook nergens in de documentatie een object buiten het domain object waarmee je voor de opslag communiceert.

En met niet-generiek bedoel ik iets als:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
class UserMapper extends Mapper
{
    public function loadFromId($id)
    {

        $data = $this->db->select('user', 'id=?', $id);
        $user = new User();
        $user->setEmail($data['email']);
        return $user;
    }
}

?>

Dit is nog allemaal makkelijk. Maar waar ik benieuwd naar was, is hoe je in dit model associaties integreert.

Een niet-generiek systeem maakt het geheel zo veel eenvoudiger.
 
The Force

The Force

21/01/2011 21:38:05
Quote Anchor link
Als je het niet generiek wil dan kan je toch iets als dit doen?

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
<?php
class UserMapper extends Mapper
{
    public function loadFromId($id)
    {

        $data = $this->db->select('user', 'id=?', $id);

        $websites = $this->db->select('websites', 'userid=?', $id);

        $user = new User();
        $user->setEmail($data['email']);
    $user->setWebsites($websites);
        return $user;
    }
}

?>


Er van uit gaande dat een User meerdere Websites heeft. Wil je het lazy loading houden dan kan je in getWebsites() van User een oproep doen om de websites van de User in kwestie te vinden. Moet de User de Mapper wel kennen.

PS. (Edit) Ik ga voor een dagje of wat offline :).
Gewijzigd op 21/01/2011 21:39:06 door The Force
 
Pim -

Pim -

21/01/2011 21:58:40
Quote Anchor link
En dat is dus de vraag: hoe associaties te regelen zonder het domain object kennis te laten hebben van de persistence. Verder moet $user->setWebsties() een array van objecten (of proxies) krijgen, niet van IDs.

Of vraag ik nu het onmogelijke?
 
Niels K

Niels K

29/01/2011 14:49:38
Quote Anchor link
Ik denk het wel Pim, ik kan er i.i.g niets op verzinnen. Zou overigens wel cool zijn. Ik zal het eens vragen op mijn werk maandag.
Gewijzigd op 29/01/2011 14:49:48 door Niels K
 



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.