Namespaces

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

PHP developer vacature

Functie Het team waarin je komt te werken bestaat uit 9 ontwikkelaars. Dit is verdeeld over 2 product teams, waar de 1 zich focust op de API koppelingen en het andere team focust zich meer op het (door)ontwikkelen van de Portal. Jij PHP developer zult aan beide kanten werken. Door de snelle groei moeten de producten zeer schaalbaar zijn. Dit betekent zowel voor de portal en de verschillende API’s. Wij gebruiken voornamelijk PHP in combinatie met Laravel. De manier hoe we werken is dat onze uitdagingen leidend zijn en niet onze stack. Dit betekent dat je als individu de vrijheid

Bekijk vacature »

Randstad - Fullstack Java Developer (Freelance/ZZP

Start date: ASAP Duration: 1 year initially Hours per week: 40 (32 minimum) Dutch is mandatory Max hourly rate: 85€ Strong communicator There is a vacancy in the Corporate Client Solutions (CCS) team. This team works closely together with the Online Client Solutions (OCS) team and the product owner on the client portal. Through the web portal, the various services from the business are delivered to the clients of Randstad Group Netherlands. CCS works for the corporate customers of Randstad and OCS works for customers in the SME segment. Both teams consist of a number of full stack developers, an

Bekijk vacature »

Randstad - Fullstack Java Developer (Freelance/ZZP

Start date: ASAP Duration: 1 year initially Hours per week: 40 (32 minimum) Dutch is mandatory Max hourly rate: 85€ Strong communicator There is a vacancy in the Corporate Client Solutions (CCS) team. This team works closely together with the Online Client Solutions (OCS) team and the product owner on the client portal. Through the web portal, the various services from the business are delivered to the clients of Randstad Group Netherlands. CCS works for the corporate customers of Randstad and OCS works for customers in the SME segment. Both teams consist of a number of full stack developers, an

Bekijk vacature »

KPN - Backend Developer - Product Master (Freelanc

Must: Scala and Akka Senior positon Start date: ZSM End date: 01-07-2023 Max hourly rate: 79,25€ Your job as a Backend Developer Many KPN employees in all different types of processes rely on accurate and complete product data. The product master will be a new master data management implementation within KPN for the business market. It supports the goals of KPN to become the best service provider, simplification in processes and IT, digitalization and most of all to become a data driven organization. The essence is to have a single master platform that embodies all the needed product data in

Bekijk vacature »

Senior Robotics Developer (Freelance/ZZP)

Duur opdracht: 12 mnd (met optie tot verlenging) We zoeken senior profielen. Die junioren kan bijscholen op de technische skills. Wordt 1x per week op kantoor (Eindhoven) gewerkt. Voertaal is Nederlands & Engels. Start datum: ZSM Max tarief: 74€ Wij zijn ter versterking van het RPA team van Operations Financieren per direct op zoek naar een RPA Engineer die ons kan helpen bij de ontwikkeling van de robots. Bij voorkeur kennis van cq. ervaring met Kofax Kapow en ervaring met het werken in grote organisaties met complexe systemen. Het RPA Team team zorgt voor de verdere optimalisatie van de processen

Bekijk vacature »

Senior Robotics Developer (Freelance/ZZP)

Duur opdracht: 12 mnd (met optie tot verlenging) We zoeken senior profielen. Die junioren kan bijscholen op de technische skills. Wordt 1x per week op kantoor (Eindhoven) gewerkt. Voertaal is Nederlands & Engels. Start datum: ZSM Max tarief: 74€ Wij zijn ter versterking van het RPA team van Operations Financieren per direct op zoek naar een RPA Engineer die ons kan helpen bij de ontwikkeling van de robots. Bij voorkeur kennis van cq. ervaring met Kofax Kapow en ervaring met het werken in grote organisaties met complexe systemen. Het RPA Team team zorgt voor de verdere optimalisatie van de processen

Bekijk vacature »

Software Developer/ PHP

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 »

Senior Robotics Developer (Freelance/ZZP)

Duur opdracht: 12 mnd (met optie tot verlenging) We zoeken senior profielen. Die junioren kan bijscholen op de technische skills. Wordt 1x per week op kantoor (Eindhoven) gewerkt. Voertaal is Nederlands & Engels. Start datum: ZSM Max tarief: 74€ Wij zijn ter versterking van het RPA team van Operations Financieren per direct op zoek naar een RPA Engineer die ons kan helpen bij de ontwikkeling van de robots. Bij voorkeur kennis van cq. ervaring met Kofax Kapow en ervaring met het werken in grote organisaties met complexe systemen. Het RPA Team team zorgt voor de verdere optimalisatie van de processen

Bekijk vacature »

KPN - Backend Developer - Product Master (Freelanc

Must: Scala and Akka Senior positon Start date: ZSM End date: 01-07-2023 Max hourly rate: 79,25€ Your job as a Backend Developer Many KPN employees in all different types of processes rely on accurate and complete product data. The product master will be a new master data management implementation within KPN for the business market. It supports the goals of KPN to become the best service provider, simplification in processes and IT, digitalization and most of all to become a data driven organization. The essence is to have a single master platform that embodies all the needed product data in

Bekijk vacature »

Traineeship Mendix Developer

Wat wij bieden Een goed salaris dat meegroeit met je ervaring binnen het Young Professional programma; Thuiswerkmogelijkheden, als het past voor onze klant; Uitgebreide trainingsmogelijkheden aan de Ordina Academy; Je komt in een trainingsgroep van meerdere Young Professionals. Samen volg je trainingen, deel je ervaringen, speel je een potje tafelvoetbal en drink je na afloop gezellig een borrel (wanneer dat weer kan!); Een onvergetelijke start van je carrière met de kans om snel te leren in een ontzettend leuk team van collega’s; 20 wettelijke vrije dagen per jaar en 7 aanvullende vrije dagen via flex benefits; Keuze tussen een leaseauto

Bekijk vacature »

Medior PHP Developer MySQL

Voor wie je gaat werken: WR zoekt voor een vaste medewerker voor de volgende werkgever, je treedt gelijk in dienst bij deze werkgever: Deze werkgever is een full-solutions digital agency. Ben jij geschikt als PHP Developer? Heb je ruime ervaring met NodeJS? Vaste baan: Medior PHP Developer MySQL HBO 2.800 - 4.500 PHP Developer (Medior) Deze werkgever is een middelgroot full-service bureau dat klanten uit diverse sectoren helpt diverse internetproducten op te bouwen. Bij deze werkgever kom je te werken in een enthousiast, betrokken team waarin jij je volop kunt ontwikkelen en doorgroeien. Zij werken voor grote klanten. Zij doen

Bekijk vacature »

Senior Robotics Developer (Freelance/ZZP)

Duur opdracht: 12 mnd (met optie tot verlenging) We zoeken senior profielen. Die junioren kan bijscholen op de technische skills. Wordt 1x per week op kantoor (Eindhoven) gewerkt. Voertaal is Nederlands & Engels. Start datum: ZSM Max tarief: 74€ Wij zijn ter versterking van het RPA team van Operations Financieren per direct op zoek naar een RPA Engineer die ons kan helpen bij de ontwikkeling van de robots. Bij voorkeur kennis van cq. ervaring met Kofax Kapow en ervaring met het werken in grote organisaties met complexe systemen. Het RPA Team team zorgt voor de verdere optimalisatie van de processen

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET developer begint jouw dag na een bak koffie met een stand up. De vorderingen worden tijdens de stand up besproken en de doelen worden opgesteld waar jullie als team in de volgende sprint naartoe gaan werken. Onze backend is geschreven in .NET Core en onze Front-end in Angular. Bij ons ga jij dan ook Fullstack aan de slag. Jij wordt hier opgeleid om zelfstandig te kunnen programmeren en applicaties te kunnen implementeren. Er wordt op projectbasis gewerkt, dit bied leuke uitdagingen omdat elke klant een andere visie heeft over de applicatie die wij maken. Je gaat

Bekijk vacature »

Delphi Developer

Dit ga je doen Ophalen van de requirements uit de business en hier rapportages over maken; Beheren van de verschillende rapportage applicaties (Delphi); Het ontwikkelen en optimaliseren van de rapportage applicaties (C#, Angular); Bewaken van de kwaliteit van de rapportage applicaties door middel van structureel onderhoud en het identificeren van zwakke plekken en verbeteringen van de systemen; Zorgen voor een optimale beschikbaarheid van onze rapportage applicaties, de Oracle databases en Windows servers waarop deze draaien; Wijzigingen en nieuwe rapporteringsvraagstukken uitwerken, programmeren, implementeren en documenteren. Hier ga je werken Binnen de organisatie werken in totaal 9.000 medewerkers in een fabriek. Hier

Bekijk vacature »

Robot Programmeur

Bedrijfsomschrijving: Locatie: regio Breda Dit is een high-tech organisatie met meer dan 600 werknemers wereldwijd. Ze bieden een open en informele werksfeer met een hoge mate van zelfstandigheid en professionaliteit. Ter uitbreiding van het team zijn we op zoek naar een Robot Programmeur. Met productievestigingen in Nederland, Amerika, Tsjechië, China, Mexico en de Verenigde Staten kunnen hun klanten overal ter wereld ondersteund worden. Deze organisatie ontwerpt en bouwt gerobotiseerde productiesystemen, waarbij lassen en andere verbindingstechnologieën een centrale rol spelen. Ze zijn zowel in de automotive als de algemene industrie actief, waar hoge productievolumes en een hoge mate van automatisering essentieel

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

19/08/2022 17:00:49
 
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.