Namespaces

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior C# Developer (NL)

Senior C# Developer (NL) Den Haag HBO/WO IT - software development Professional "Als Senior C# Developer impact maken op de groeiende E-commerce markt met onze logistieke software. Je doet dit door complexe bedrijfskritische logistieke business processen te vertalen naar de ontwikkeling en uitbreiding van onze Cloud IT-platformen en software oplossingen in C# en AWS" Wat ga je doen? PostNL is becoming a postal tech company. Als Senior C# Developer ben je onderdeel van een multidisciplinair Business-IT-team bestaande uit onder andere een Lead Engineer, Developers en Solution Consultants. Samen zijn jullie verantwoordelijk voor het bouwen aan onderdelen uit onze logistieke software

Bekijk vacature »

Front-end Developer

Front-end Developer Den Haag HBO/WO IT - software development Professional "Maak samen met ons de belangrijkste (data) supply chain van Nederland real-time visueel door als frontend developer aan de slag te gaan bij onze 'Digitale Ketensturing' afdeling. Wat ga je doen? PostNL heeft de ambitie om uit te groeien tot het meest efficiënte en innovatieve logistieke post en e-commerce platform in de Benelux. Daarom bouwen wij aan een afdeling genaamd ‘Digitale Ketensturing’. Ons doel is het digitaliseren van onze volledige pakketten supply chain (gemiddeld 1,1 miljoen pakketten per dag), deze data gedreven en inzichtelijk maken voor gebruikers. Zo zorgen we

Bekijk vacature »

Traineeship Test Engineering Overheid

Traineeship Test Engineering Overheid – Start 1 Maart 2022 Functiebeschrijving: Ben jij recent afgestudeerd of studeer jij dit jaar af aan een bèta gerelateerde hbo- of wo-opleiding? En wil jij de eerste stappen zetten richting een carrière in de IT en werken aan maatschappelijk relevante projecten voor jou en 16.999.999 miljoen andere mensen in Nederland? Bij CGI bieden we jou met het Traineeship Test Engineering dé kans om je verder te ontwikkelen binnen de verschillende onderdelen van testen en de automatisering hiervan! Wat houdt het Traineeship Test Engineering in? Je bent bovengemiddeld geïnteresseerd in bedrijfsprocessen en met name de IT-componenten

Bekijk vacature »

Graduate Class DevSecOps

Graduate Class DevSecOps - Start 1 Maart 2022 Functiebeschrijving: Ben jij een net afgestudeerde IT-er of startende IT-er én nog niet uitgeleerd? Wist je dat uitdagende projecten en opleidingsmogelijkheden de basis vormen van een succesvolle carrière in de IT? Dan zit je bij goed bij CGI! Wij hebben namelijk de slagkracht en de grootte om zelfs de meest ambitieuze IT-carrières vorm te geven. Doordat wij een stabiele en groeiende organisatie zijn, kunnen wij je uitstekende kansen bieden om in een ondersteunende omgeving te werken aan projecten die daadwerkelijk impact hebben op onze wereld. Wat houdt de Graduate Class DevSecOps in?

Bekijk vacature »

Java Ontwikkelaar - Digitale Overheid

Java Ontwikkelaar - Digitale Overheid Functiebeschrijving: Wil jij een bijdrage leveren aan de ontwikkeling van de digitale overheid en de maatschappelijke vraagstukken waar we met elkaar voor staan? Wat ga je doen? Als Java ontwikkelaar houd jij je bezig met het realiseren van mooie en innovatieve oplossingen voor de Nederlandse overheid. Je ontwerpt en ontwikkelt met Java in één van onze complexe projecten om met jouw code het verschil te maken in het hart van de Digitale Overheid. Ons aanbod We bieden je een vast contract, zodat je meteen baanzekerheid hebt. Parttime werken, bijvoorbeeld 32 of 36 uur per week

Bekijk vacature »

Full Stack Java Developer

Functieomschrijving Flexibility, autonomy and an organisation that prioritises innovation. As java developer at Randstad Groep Nederland IT, those things are the foundation of your work. As we continue to take steps in our digital transformation, our talent store team is looking for you! Who are we? RGN IT is the central IT department behind randstad, tempo-team and yacht, a department of almost 400 specialists, developing, building and maintaining the systems and solutions we use to impact the working lives of hundreds of thousands of people worldwide. What will you be working on? You will be an integral part of our

Bekijk vacature »

IT-traineeship Low Code Developer

Vind jij het leuk om veel contact te hebben met een klant en je te verdiepen in een domein? Lijkt het je interessant om enerzijds met de klant mee te denken, maar tegelijkertijd ook zelf een bijdrage te leveren aan de implementatie van een IT oplossing? Wij zijn op zoek naar starters die aan de slag willen als low-code engineer. In deze functie bouw je aan applicaties met behulp van een low-code platform, zoals Outsystems, Blueriq, Mendix of Pega. Dergelijke platformen stellen je in staat om snel een werkende applicatie te ontwikkelen en zijn hierdoor heel geschikt voor maatwerk projecten.

Bekijk vacature »

Oracle APEX Developer centraal in het land

Bedrijfsomschrijving Mijn opdrachtgever kan per direct versterking gebruiken van een Medior en/of Senior Oracle Apex specialist. Deze organisatie is in een rap tempo uitgegroeid tot een professionele organisatie met informeel karakter waardoor jij je als werknemer ook echt gewaardeerd voelt. Deze organisatie is het type bedrijf waar je als ondernemende developer graag voor wil werken omdat je zo veel kanten op kunt gaan. Het team van ongeveer 15 specialisten werken samen aan projecten middels de nieuwste Oracle technieken. Functieomschrijving Als Oracle/Apex developer werk je hier voor opdrachten in verschillende sectoren. In feite zorg jij voor de implementatie van de Oracle

Bekijk vacature »

Senior CI/CD Engineer - Public Transport

Senior CI/CD Engineer - Public Transport Functiebeschrijving: Houd je van complexe uitdagingen in een dynamische omgeving? Ben je proactief en niet bang om uit je comfort zone te treden? Wil je belangrijk en impactvol werk doen en daarbij alle ruimte krijgen om je te ontwikkelen en je stempel te drukken? Dan zijn we op zoek naar jou! Wat ga je doen? Jij bent samen met jouw DevOps team verantwoordelijk voor een of meerdere onderdelen van het information-services platform van onze klant. Dit platform verzorgt o.a. reisinformatie, de Wifi-dienst en tal van overige toepassingen zoals diagnose op afstand, meten van reizigersaantallen

Bekijk vacature »

C#/Azure developer

Op zoek naar leuke collega's waarmee je kunt lachen, gave projecten en een ambitieuze werkgever die heel goed voor je zorgt? Aangenaam: Profit4Cloud! Wij zijn nu met 55 collega's en werken sinds 2015 vanuit 5 vestigingen aan mooie projecten met een fijne groep collega's die allemaal maar één ding willen: mooie en slimme software-oplossingen ontwikkelen met de nieuwste technieken. We zijn goed bezig en zijn daarom op zoek naar versterking: Medior C#/Azure developers. Ben jij de Medior C# developer die enthousiast wordt van mooie projecten waar binnen jij een belangrijke rol speelt? Dan is Profit4Cloud jouw 'place-to-be'! Als Medior C#

Bekijk vacature »

Senior HANA Developer

Want to be part of progress? To develop, coach and guide New Product Development in a dynamic international environment? In the Program Management Office we raise the level of program management within the organization. If you want to be part of a high performing team with a focus on structural improvements, we invite you to read the job description below and let us know if you are the person we are looking for. Functie Job Mission In the Program Management Office (PMO) we are the recognized expert, that drives World-Class Program- and Project Management. In this way PMO is the

Bekijk vacature »

Informatie Analist - Defensie

Informatie Analist - Defensie Functiebeschrijving: Bescherming van onze Nederlandse grenzen. Internationaal bijdragen aan vrede en veiligheid. Steun bij rampen. Drie uitdagingen waar Defensie voor staat. Dreigingen veranderen voortdurend, zijn lastig te voorspellen en vragen een flexibele, adaptieve krijgsmacht. CGI draagt bij aan deze ambitie. Dit doet CGI door proactief nieuwe technologieën te ontwikkelen, aan innovatieve projecten deel te nemen, en door het leveren van professionals aan de defensiesector. Een wendbare, technologisch hoogwaardige organisatie kan niet zonder een daarbij passende bedrijfsvoering en adequate informatievoorziening. Om Defensie hierin te ondersteunen is CGI op zoek naar een ervaren en gepassioneerde Informatie Analist. Wat

Bekijk vacature »

Trainee Pega developer

Vind jij het leuk om echte business software te maken zonder daarvoor gedetailleerde code te hoeven schrijven? Voor ons hoofdkantoor in Waalwijk zoeken wij een trainee Pega developer voor 36-40 uur per week. Vind jij het leuk om echte business software te maken zonder daarvoor gedetailleerde code te hoeven schrijven? Wij leren je werken met het innovatieve platform van Pega en jij verovert de wereld in elke fase van de digitalisering van ons bedrijf. De Mandemakers Groep, een huis vol mogelijkheden. Je neemt deel aan een geweldig traject. We zijn bezig met de invoering van Customer Service, Sales Automation en

Bekijk vacature »

DevOps Engineer (CI/CD) - Public Transport

DevOps Engineer (CI/CD) - Public Transport Functiebeschrijving: Houd je van complexe uitdagingen in een dynamische omgeving? Ben je proactief en niet bang om uit je comfort zone te treden? Wil je belangrijk en impactvol werk doen en daarbij alle ruimte krijgen om je te ontwikkelen en je stempel te drukken? Dan zijn we op zoek naar jou! Wat ga je doen? Als DevOps Engineer ben je onderdeel van het team dat werkt aan platform infrastructuur diensten van onze klant. Daarnaast werk je aan de software automatisering tools om de software naar de devbenches, testmuren en vervoersdiensten te deployen. Je kunt

Bekijk vacature »

SAP Developer

SAP Developer Functiebeschrijving: Ben jij een ervaren SAP Developer met kennis van diverse programmeer tools in SAP? En ben je toe aan de volgende stap in je carrière waarbij je werkt aan uitdagende projecten die het verschil maken? Wat ga je doen? Als ervaren SAP Developer voeg je met jouw expertise en skills waarde toe aan het team en projecten. Denk bijvoorbeeld aan het bouwen van CDS views, het ontwikkelen van Fiori apps, het inrichten van testautomatisering, maar ook inzetten van je uitgebreide functionele kennis en soft skills. Afhankelijk van je bestaande expertise, krijg je tevens de kans om je

Bekijk vacature »
Jorn Reed

Jorn Reed

25/07/2018 17:16:41
Quote Anchor link
Ik maak in een project veel gebruik van classes, die include ik allemaal in een index.php file. vanuit die file laad ik ook alle pagina's in waar ik vervolgens de functionaliteit van de classes kan gebruiken. Nu zei iemand dat Namepsaces veel handiger waren omdat je eigenlijk per file alleen moet inladen wat er nodig is. Waarom is het gebruik van Namepsace beter, ookal moet je nog steeds de class op dezelfde manier includen?
 
PHP hulp

PHP hulp

28/01/2022 01:19:59
 
Rob Doemaarwat

Rob Doemaarwat

25/07/2018 17:35:17
Quote Anchor link
Ik denk dat ze doelen op "autoloading" ( https://secure.php.net/manual/en/language.oop5.autoload.php ). Dan worden je classes "automagisch" geladen op het moment dat je ze nodig hebt (en dus *alleen* de classes die je nodig hebt). Met namespaces (wat sowieso wel handig is, om "ruzie" tussen twee verschillende classes met dezelfde naam te voorkomen) kun je dan eenvoudig je namespace structuur "op" je directory structuur leggen.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
include('autoload.php'); //stelt autoloader in, maar laadt nog geen classes

$x = new \Foo\Bar(); //class Bar in namespace Foo wordt automatisch geladen
                     //uit (bijvoorbeeld) {root}/Foo/Bar.php

?>

Maar dit kan ook prima zonder namespaces:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
include('autoload.php'); //stelt autoloader in, maar laadt nog geen classes

$x = new Foo_Bar(); //class Foo_Bar wordt automatisch geladen
                    //uit (bijvoorbeeld) {root}/Foo/Bar.php

?>
Gewijzigd op 25/07/2018 17:36:10 door Rob Doemaarwat
 
Thomas van den Heuvel

Thomas van den Heuvel

25/07/2018 22:51:29
Quote Anchor link
Ik had redelijk recent een reactie gegeven over een mogelijke implementatie voor een autoloader (interne link), mogelijk heb je hier iets aan.
 
Jorn Reed

Jorn Reed

26/07/2018 14:57:52
Quote Anchor link
En dat autoload.php, dat heeft toch weer iets met vendor te maken? Waar je bijvoorbeeld phpmailer mee inlaad ofzo?

Toevoeging op 26/07/2018 14:58:35:

Thomas van den Heuvel op 25/07/2018 22:51:29:
Ik had redelijk recent een reactie gegeven over een mogelijke implementatie voor een autoloader (interne link), mogelijk heb je hier iets aan.


Ik ga het eventjes doorlezen, dankjewel!
 
Rob Doemaarwat

Rob Doemaarwat

26/07/2018 17:03:26
Quote Anchor link
Jorn Reed op 26/07/2018 14:57:52:
En dat autoload.php, dat heeft toch weer iets met vendor te maken? Waar je bijvoorbeeld phpmailer mee inlaad ofzo?

Hoeft niet, kan wel. Composer ( https://getcomposer.org/ ) levert bijvoorbeeld een autoload.php af, maar je kunt 'm ook zelf schrijven zoals in Thomas z'n voorbeeld. Ik had het hier gedaan om de details even "buiten beeld" te laten.
 
Jorn Reed

Jorn Reed

26/07/2018 18:36:46
Quote Anchor link
Rob Doemaarwat op 26/07/2018 17:03:26:
Jorn Reed op 26/07/2018 14:57:52:
En dat autoload.php, dat heeft toch weer iets met vendor te maken? Waar je bijvoorbeeld phpmailer mee inlaad ofzo?

Hoeft niet, kan wel. Composer ( https://getcomposer.org/ ) levert bijvoorbeeld een autoload.php af, maar je kunt 'm ook zelf schrijven zoals in Thomas z'n voorbeeld. Ik had het hier gedaan om de details even "buiten beeld" te laten.

En in die autoload include je dan bijvoorbeeld de classes die je gebruikt? Want stel ik gebruik een shoppingcart class. heb ik die alleen nodig op de winkelwagen pagina. En dus niet op bijvoorbeeld de hoofdpagina etc.
 
Rob Doemaarwat

Rob Doemaarwat

26/07/2018 19:01:57
Quote Anchor link
Nee, juist niet. Het hele idee van "autoloading" is dat het laden van de classes (dus de bestanden waar ze in staan) automatisch gebeurt, en dan pas op het moment dat je 'm nodig hebt. PHP geeft dan aan de autoload functie door welke (nog onbekende) class ie zoekt, en de autoloader moet dan aan de hand van de class naam het juiste bestand includen.

Dit voorkomt dat je altijd maar alle classes moet includen, voor die ene keer dat je 'm nodig hebt. Zeker bij grote projecten is dit uiteindelijk niet meer te doen.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
$x = new \Foo\Bar();
//PHP ontdekt nu dat ie class \Foo\Bar nog niet kent.
//De autoloader krijgt dus een aanroep met als parameter 'Foo\Bar'
//De autoloader doet z'n ding, en laadt (bijvoorbeeld) bestand {root}/Foo/Bar.php
//(met daarin dus de definitie van class \Foo\Bar)
//\Foo\Bar is nu wel beschikbaar, en kan dus worden gebruikt om $x aan te maken.
//(als het bestand of de class alsnog niet bestaat, krijg je alsnog een Class "'Foo\Bar' not found")

De autoloader voor bovenstaand geval zou er dus als volgt uit kunnen zien (dit is dan dus autoload.php in mijn eerdere voorbeelden):
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

spl_autoload_register(function($class_name){
  //$class_name bevat dus de gezochte class = 'Foo\Bar'

  $root = '/waar/je/classes/staan/';

  $filename = $root . str_replace('\\','/',$class_name) . '.php';
  //$filename is nu dus '/waar/je/classes/staan/Foo/Bar.php'
  //(let op hoofdletters; strtolower d'r omheen als je altijd lowercase filenames gebruikt)

  //het bestand includen

  require($filename);
});


?>

En deze functie wordt dus automatisch aangeroepen zodra je een (nog) onbekende class gebruikt.
Gewijzigd op 26/07/2018 19:08:47 door Rob Doemaarwat
 
Thomas van den Heuvel

Thomas van den Heuvel

26/07/2018 20:57:40
Quote Anchor link
Sidenote: wellicht is spl_autoload (een klein beetje) sneller dan require, en ook flexibeler. Het eerste kun je meten, het tweede hangt af van hoe flexibel je je code wilt opzetten. Als je bijvoorbeeld "class overrides" wilt maken van classes, zonder daarbij de bron aan te passen (denk aan (geversionde) libraries enzo) biedt spl_autoload mogelijk uitkomst, dit staat ook uitgelegd in de eerder gelinkte reactie.
 



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.