Datamapper

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Medior/Senior Python developer (Django)

Functie Je komt te werken in het IT-team bestaande uit de Lead developer en 4 (medior/senior) developers. Gezamenlijk werken jullie aan de verbetering en uitbreiding van de software. Binnen het development team is er veel vrijheid en zelfstandigheid, zonder dat ze hiermee afdoen aan de kwaliteit. Zo hebben ze elke ochtend een korte stand-up (10:00 uur) en werken ze met pair-programming sessies. Ook is er een hele professionele ontwikkelcyclus waarbij code altijd eerst door een collega wordt getest voordat het naar deployement gaat. Er is een kwaliteitsfocus en dan biedt ruimte om verbeteringen echt door te voeren binnen de gehele

Bekijk vacature »

C# Developer

Dit ga je doen Je gaat aan de slag in het websites team of portals team waarin je je bezighoudt met concept & design, implementatie en ook een stukje bugfixing en onderhoud; Je werkt met je team volgens de Scrum werkwijze; Zo adviseer je ook de PO & Scrum Master over de technische architectuur, koppelingen en integratie met externe systemen en API’s; Je blijft op de hoogte van de laatste ontwikkelingen en trends op het gebied van C# / .NET en deelt deze kennis binnen de organisatie. Hier ga je werken Onze klant is een internationale organisatie gevestigd in de

Bekijk vacature »

Senior Front end developer Digital Agency

Functie Jij als Front end developer komt te werken in een van de 8 multidisciplinaire teams binnen de organisatie. Deze teams werken op basis van Scrum agile in 2 wekelijkse sprints. De grootte van de teams varieert van 9-14 collega’s en bestaan altijd uit één of meerdere project managers en een project manager. Samen met je team werk je aan verschillende projecten voor uiteenlopende klanten zoals grote multinationals tot het kleine mkb. De stack waarmee gewerkt wordt is voornamelijk Javascript, ES6, Es.next, HTML, CSS, React.js en Node.js. Wat deze organisatie onderscheid is dat ze echt langdurige partnerships aangaan met hun

Bekijk vacature »

Python (Django) developer - Remote in The Netherla

Functie Together with your team, consisting of a senior, 2 mediors and one junior developer, you will work on their software in an Agile-based approach. You have an eye for quality, risk, and customer interest. Communication with your colleagues and, where necessary, with customers, plays an important role in achieving a successful result. As a person, you are smart, get things done, and are result-oriented. There is a lot of independence within the development team, apart from the stand-up (10:00 am) and occasional pair-programming sessions. Techniques they use include Python, Django, MySQL, Mercurial, Ubuntu Linux, Nginx. In terms of front-end

Bekijk vacature »

C# .NET Developer

Functie omschrijving C# .NET Developer gezocht. Ben jij een full stack developer die op zoek is naar een nieuwe uitdaging binnen een leuk snel groeiend bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Developer met ervaring op het gebied van .NET die een organisatie in de regio Bennekom gaat versterken. Jij gaat je binnen dit bedrijf vooral bezighouden met het verbeteren van de functionaliteiten van hun dataplatform. Samen met andere ontwikkelaars denk je mee in oplossingsrichtingen, architectuur en nieuwe technologieën. Bedrijfsprofiel De organisatie waar je voor gaat werken heeft een onafhankelijk dataplatform ontwikkelt voor de agrarische sector.

Bekijk vacature »

Back-end developer (Magento2)

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als back-end developer fungeer je als het verlengstuk van hun klanten. Technisch complexe zaken pak je met liefde op, en hierin werk je samen met o.a. front-end developers en designers. Klanten verwacht hierin kwaliteit van het hoogste niveau en een proactieve, meedenkende rol bij het maken van zowel technische als strategische keuzes. Ga

Bekijk vacature »

.Net Ontwikkelaar

Dit ga je doen Het ontwerpen en ontwikkelen van software voor klanten; Het bijdragen van kennis en ervaring; Het integreren van van de software en afstemmen met klanten; Het functioneel testen van de ontwikkelde software. Hier ga je werken Voor onze relatie zijn wij momenteel op zoek naar een .Net Developer die wilt werken aan software die draait op machines wereldwijd. De organisatie produceert software voor applicaties die gebruikt worden in verschillende branches. De software wordt geleverd aan fabrikanten van verschillende robotica en machines. Als .Net ontwikkelaar ben je intern onderdeel van het team wat de applicatie omgevingen ontwikkeld en

Bekijk vacature »

.NET developer

Functie The position we have for you As a .NET developer you will work for one of our customers active in the High Tech Industry. Our customers are mainly located in the Eindhoven area. We are very selective when it comes to the projects we accept and therefore only focus on innovative and complex projects. Because our customers are mainly specialized in machine construction, you often work close to the machines. Our team currently consists of Embedded engineers, IOT developers and Cloud engineers. We mainly work on Microsoft projects where WPF, UWP, .NET Core and Microsoft Azure are used. Eisen

Bekijk vacature »

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 »

Mendix Consultant / Developer

Dit ga je doen Het in kaart brengen en analyseren van de functionele wensen van de klant rondom Mendix applicaties; Het fungeren als sparringpartner voor de (interne) klanten; Het opstellen van requirements en het vertalen hiervan naar technische mogelijkheden; Het opstellen van user stories; Het bouwen van de Mendix applicaties in samenwerking met jouw team of zelfstandig; Het testen van op te leveren software en het zorg dragen voor de implementatie; Trainen van gebruikers in het gebruik van de applicatie; Werken in een Agile omgeving. Hier ga je werken De organisatie begeeft zich in de retail branche en focust zich

Bekijk vacature »

Lead C++ Developer

De rol van Lead C++ Developer Als Lead C++ developer bij KUBUS word je verantwoordelijk voor het implementatie design van requirements en de software architectuur van de desktop applicaties van BIMcollab, ons platform voor 3D model-validatie en issue-management bedoeld om de kwaliteit van 3D design-modellen voor gebouwen te verbeteren. Betere 3D modellen leiden tot betere gebouwen, dus zo draag je bij aan verduurzaming van de gebouwde omgeving met slimmer gebruik van materialen, minder verspilling en energie-efficiënte gebouwen. Een goede gebruikerservaring staat bij ons hoog in het vaandel; we gaan in onze ontwikkeling voor innovatie en kwaliteit. In je rol als

Bekijk vacature »

Medior/senior front end developer

Functie Vanwege de groei binnen het bedrijf zijn ze op zoek naar een Technische front end developer. Momenteel hun front end back end team gescheiden aan het werk. Hier willen ze verandering in krijgen. Omdat ook veel interne applicaties ontwikkeld worden zoeken ze iemand die hen kan helpen om de interne applicaties te voorzien van de juiste Vue.js componenten. Zodoende willen ze de interactie tussen front end en back end versoepelen en de volgende stap binnen het platform gaan zetten. Deze componenten die jij ontwikkeld zullen in elk project gebruikt worden. Het back end team bestaat momenteel uit 8 ontwikkelaars

Bekijk vacature »

Junior/medior Back end developer PHP, Laravel

Functie Jij als ontwikkelaar komt te werken in een team bestaande uit 4 back end programmeurs, 2 vormgevers/ Front end developers en een online marketeer. Qua persoonlijkheden is het team erg gevarieerd van sportfanaten tot gameliefhebbers en Golfers. Een ding heeft iedereen hier gemeen; Passie voor goede code. In jouw rol zul je voor veel van je tijd je bezig houden met het ontwikkelen van maatwerk features en applicaties. Daarnaast hebben wij op aanvraag ook wel eens een website of onderhoudsklusje, die opgepakt moet worden en hier ben jij ook niet vies van. Jij als full stack developer zult dus

Bekijk vacature »

Back-end Programmeur

Functieomschrijving Heb jij kort geleden je HBO ICT in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een ambitieuze werkgever in de regio van Breda zijn wij op zoek naar een Back-end programmeur met affiniteit met C#.NET, SQL en MS Access. Samen met team bestaand uit ware ICT professionals ben je verantwoordelijk voor het bouwen van maatwerk software voor hun klanten. Belangrijk is dat je kennis of ervaring hebt van C#.NET en SQL. Je toont een flexibele en sociale houding naar klanten toe. Je denkt in nieuwe mogelijkheden & gaat graag de uitdaging aan. Bedrijfsprofiel De

Bekijk vacature »

API Developer Red Hat Fuse

Dit ga je doen Als API Developer zal je verantwoordelijk zijn voor het: het maken van API's en het correct laten draaien van de API's op het platform. Hierdoor kom je in aanraking met Red Hat Fuse, Springt Boot, 3Scale, Red Hat SSO, Openshift en Azure DevOps; zorgen voor de kwaliteit van de ontwikkeling, integratie en prestaties van de API's; zorgen voor een stabiel integratieplatform. Hier ga je werken Deze organisatie is een toonaangevende speler in de vastgoedbranche en telt momenteel ruim 500 medewerkers. Met meer dan 150 applicaties staat er een complex applicatielandschap dat hoofdzakelijk op OpenShift, Azure en

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/04/2024 00:18:44
 
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.