OOP: Config doorgeven tussen objecten

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Medior PHP Developer

Als PHP Developer bij Coolblue zorg je ervoor dat onze webshops bizar snel en superstrak zijn. Hoe word ik Medior PHP Developer bij Coolblue? Als Medior PHP Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Hoewel je een PHP Developer bent, ben je niet vies van een beetje C# of Javascript. ‘’Ook Medior PHP Developer worden bij Coolblue? Else de Boer legt je uit hoe je dat doet.” Dit vind je leuk om te doen PHP code schrijven, maar kan je weg ook vinden in

Bekijk vacature »

Front End Developer with excellent Angular skills

Front End Developer with excellent Angular skills to help migrate software application into the Cloud (Front End Developer Angular 65K Rotterdam IND Registered) For an international organisation, specialised in data management for the process industry, we are looking for a Front End Developer with strong work experience in Angular technologies. This organisation has developt a software solution that takes on the important role of connecting people, data and assets, and translates this data into 3D models. Until recently it was a desktop solution, that is currently being migrated to the (AWS) Cloud. Are you up for the task? Who are

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 »

Business Developer CAAP

Freelance Business Developer CDD As a Business Developer you are one of the lead positions in the team. You retrieve requirements from the stakeholders and translate these to the CDD team through the backlog. * Start date: 07/12/2020 * Project duration: 6 months + * Hours per week: 36 * Location: Remote Your impact as Business Developer There are many initiatives within the organisation and team, so it is important that the Business Developer acts as an integrator, in which an overview is kept and priorities are set. A Business Developer must be able to counterbalance our stakeholders. What do

Bekijk vacature »

PHP Developer Symfony

Bedrijfsomschrijving Betreffende organisatie is een echte softwareclub, gevestigd in de regio van Amersfoort en gespecialiseerd in de ontwikkeling van een grote SaaS-oplossing waar veel gevoelige data in omgaat. Al ruim 20 jaar lang zijn zij bezig met de ontwikkeling van de applicatie, waar de focus ligt op locatie- en platformonafhankelijkheid en gebruikersvriendelijkheid. De software is device en browser onafhankelijk en draait tevens sterk op integraties met andere applicaties zoals Office 365. De front-end wordt ontwikkeld in Angular en de back-end wordt ontwikkeld in PHP. Verder werken zij met Linux servers en workstations. Ter versterking van het development team, dat momenteel

Bekijk vacature »

Java Developer / Webservices / Overheid

Bedrijfsomschrijving De organisatie waar je komt te werken is een semi-overheidsinstelling die zorgt voor een goede samenwerking tussen verschillende overheidsinstanties. Het is een familiaire club die gaat voor kwaliteit en langdurige relaties. Het bedrijf is gevestigd in hartje Utrecht met het Centraal Station op loopafstand en een parkeergarage naast het pand. Bij deze stabiele organisatie gaat men uit van kwaliteit hoogwaardige softwarediensten. Je zal hier als Java Ontwikkelaar geen projecten tegenkomen waar je uit commercieel oogpunt jouw werk zo snel mogelijk af moet leveren. Uiteraard zal je hier wel het beste uit jezelf moeten halen, maar hierbij ligt het zwaartepunt

Bekijk vacature »

Front End Developer with excellent Angular skills

Front End Developer with excellent Angular skills to help migrate software application into the Cloud (Front End Developer Angular 65K Rotterdam IND Registered) For an international organisation, specialised in data management for the process industry, we are looking for a Front End Developer with strong work experience in Angular technologies. This organisation has developt a software solution that takes on the important role of connecting people, data and assets, and translates this data into 3D models. Until recently it was a desktop solution, that is currently being migrated to the (AWS) Cloud. Are you up for the task? Who are

Bekijk vacature »

Freelance Python Django Webdeveloper

Onze opdrachtgever heeft ruimte voor een extra Python-Django webdeveloper voor een gave app. We zoeken iemand met minimaal vijf jaar ervaring met Python; Nederlands is niet vereist. Het gevoel van een startup...nu uitgroeiend naar een scale-up:) 32-40 uur, start zsm , locatie in de toekomst Amsterdam. Minimaal zes maanden. Liebseth Dijkers 010 2069800

Bekijk vacature »

Director Consulting Services

Wij zoeken een talentvolle ondernemer met oog voor maatschappelijk belang! Ondernemer word je niet, dat ben je. CGI biedt jou deze mogelijkheid in de rol van Director Consulting Services. Wat ga je doen? Als Director Consulting Services (DCS) ben je de spil in de dienstverlening van CGI. Je bent een IT-professional en samen met jouw team van +/- 15 collega’s maak je het verschil in opdrachten bij jouw klant. Naast een eigen billableassignment (50%) ben je verantwoordelijk voor business development. Door te zien wat jouw klant nodig heeft en hoe je daaraan met je team invulling zou kunnen geven laat

Bekijk vacature »

Senior Application Developer

The world wants simple apps that can manage the movements of millions of packages daily. But behind every application is a complex string of gripping challenges, and a focused developer tackling them. As someone who’s highly familiar with C# development practices in the Netherlands, you’ll join us as a senior member of the team and manage apps for Brokerage – big business freight in global markets that cover over 76% of all international trade. Digital innovation plays a crucial role in choreographing the infinite movements of goods, funds and information. The logic that goes into it, and skills adopted because

Bekijk vacature »

Front End Developer (Freelancer)

General Description: Philips Digital Cognitive Diagnostics is a new business within the Philips HealthWorks venture organization. The venture is tasked with developing a new "software only" product called IntelliSpace Cognition. This new product, which is a class II medical device, will help neurologists in assessing the cognitive performance of people with a neuro (degenerative) disease. The initial market for IntelliSpace Cognition is the US. The venture is currently seeking for a Frontend Developer. The position is based in Eindhoven, the Netherlands. Requirements: - Design, test, develop, deploy, maintain and improve software assets - Deliver high quality code thru hands on

Bekijk vacature »

Front-end Developer

Als Front-End Developer kom je te werken bij een dynamische organisatie waar webapplicaties en websites ontwikkeld worden voor nationale en internationale klanten. Er wordt hier niet zomaar in opdracht gewerkt, maar het gaat hier echt om samenwerken en meedenken. De nieuwste technieken kunnen jou helpen bij het ontwerpen van deze toepassingen, denk aan: D3.js, Vue.js, React en Gulp. Deze omgeving moet als Front-End Developer echt bij je passen, denk aan de verantwoordelijkheid bij een project van A tot Z, creativiteit, zelfredzaamheid, pro activiteit en de samenwerking met collega's en partners. Hier wordt met passie gewerkt en het is belangrijk dat

Bekijk vacature »

Senior OutSystems Developer / International enviro

Bedrijfsomschrijving For our international client based in Eindhoven area, we are looking for a senior OutSystems Developer. This company is a listed company with offices and plants all over the world. The company offers great experiences and exposure with people from different and unique cultures. They describe themselves as an innovative, professional and sustainable firm. Their goal is to provide for the generations to come. As Outsystems Developer you will be working in an international environment with approximately 15 direct colleagues, consisting of developers, integration specialists and application engineers. This Applications team is a very close and hard working team,

Bekijk vacature »

Medior Front-end Developer

As a medior Front-End Developer at Coolblue you improve the user-friendliness of our webshop for millions of customers. How do I become a Medior Front-end Developer at Coolblue? As a Medior Front-end Developer you work on the user-friendliness of our webshop for millions of customers. You enjoy working with the UX designer to pick up stories. You get energy from coming up with creative solutions and are happy to present this within the team. You are also proud of your work and welcome all feedback. "Want to become a Medior Front-end Developer at Coolblue? Else de Boer explains how to

Bekijk vacature »

.NET developer / C# / Azure

Bedrijfsomschrijving Je komt als .NET Developer te werken bij een vooraanstaande softwareontwikkelorganisatie in de verzekeringswereld. De primaire ontwikkeltaal is C#, maar ook maken ze gebruik van ASP.NET (Core), MVC en TypeScript. Daarnaast worden de stappen gezet om dit jaar naar Azure te migreren. Het belangrijkste product is een webservice (WCF) dat optimale en veilige communicatie mogelijk maakt tussen aanbieders, zorgverleners en gebruikers. Deze service maakt het mogelijk dat er per maand gemiddeld meer dan 250 miljoen berichten door hun systeem gaan met 800 berichten per piek seconde. Door de automatisering in de zorgsector is deze organisatie in de afgelopen jaren

Bekijk vacature »
Arian Stolwijk

Arian Stolwijk

04/03/2009 19:37:00
Quote Anchor link
Beste Mensen,

Ik zit met het volgend probleem:

Ik heb een class.
Bij deze class kan ik instellingen instellen. Die komen vervolgens in een config class of een array.

Maar deze class heeft ook 'geneste children'. Die moeten ook toegang hebben tot die instellingen. Op hun beurt hebben zij ook weer geneste subclassen, die ook toegang moeten hebben tot de instellingen.


Klein overzichtje
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
  
                                   hoofdclasse
                                       |
   |-------------------------|------|-----------------|
   child                       child               child
     |                             |                    |
|---|---|------|         |----|--|----|        |----|-----|
child child  child    child child child   child child child

Eigenlijk zijn het zelfs nog vier lagen. Maar elk object moet toegang hebben tot dat ene config object/array.

Nu kan ik, als ik een config object maak, van die config een static maken, zodat ik gewoon Layout_Config::get('key'); kan doen ofzo... maar het nadeel is dat je dan eigenlijk maar één config object kunt maken, wat dus niet echt handig is...

een tweede optie is bij de constructor van elk child de opties via een parameter meegeven, maar dat lijkt mij ook niet echt handig...

Daarom vroeg ik me af of hier niet een handig oplossing voor is...
Gewijzigd op 01/01/1970 01:00:00 door Arian Stolwijk
 
PHP hulp

PHP hulp

04/12/2020 21:54:31
 
Gerben G

Gerben G

04/03/2009 20:01:00
Quote Anchor link
Waarom zou je meer dan een config object willen hebben. Mijn voorkeur gaat uit naar een config object. En dan maak ik altijd gebruik van het singleton pattern
http://nl.wikipedia.org/wiki/Singleton_(informatica)
Gewijzigd op 01/01/1970 01:00:00 door Gerben G
 
Arian Stolwijk

Arian Stolwijk

04/03/2009 20:07:00
Quote Anchor link
ja oke... maar het is niet echt voor bijvoorbeeld de hele site ofzo... het zijn eigenlijk gewoon een paar parameters van het hoofdobject... die de child classes moeten kunnen benaderen..
 
Jelmer -

Jelmer -

04/03/2009 22:23:00
Quote Anchor link
Doorgeven via de constructor geeft meer flexibiliteit, en geeft je de mogelijkheid om je child klassen op andere plekken te hergebruiken, al dan niet met een andere, voor die plek toepasselijke, config.

Persoonlijk vind ik singleton net zo erg als globals, of eigenlijk erger. Je hebt de vervelende global state van je applicatie plots - dwz de state van het ene object heeft direct invloed op al die objecten die ermee gekoppeld zijn - en je hebt een keiharde koppeling tussen klassen. De klassen die jouw singleton klasse aanroepen bevatten de naam van die klasse. Je kan die singleton-klasse nu niet meer hernoemen of extenden, en je kan de andere klassen niet meer gebruiken zonder de singleton klasse. Dat, in combinatie met het delen van een state, levert het verplicht delen van een state, wat weer zo ongeveer neer komt op... globals.
 
Arian Stolwijk

Arian Stolwijk

04/03/2009 23:01:00
Quote Anchor link
Ik had het inderdaad eerst op de singleton manier, maar ik merkte al snel, wat Jelmer al zei, dat de hele flexibiliteit naar de knoppe ging, dus ik geef hem nu maar door via de constructor..
 



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.