Variabel object aanmaken

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

VB.NET developer

Functie Het development team waar jij in terecht komt bestaat uit twee ervaren software developers. De directeur/eigenaar is tevens één van deze developers. Jij werkt direct samen met jouw werkgever en kan dan ook veel kennis en ervaring bij dit bedrijf op doen. Als team zijn jullie verantwoordelijk voor de kantoorapplicatie die deze organisatie aanbied in een niche markt. Het team is op dit moment actief bezig met een migratie waarbij het eindstation eindigt in een C# .NET omgeving. Echter is een deel van de software al geschreven in C# .NET. Hierbij is gebruik gemaakt van C# .NET, CSS, HTML,

Bekijk vacature »

Senior Airport Developer ( System engineer)

De functie Nice to know (you) De nieuwe A-pier wordt de duurzaamste van Schiphol. Als deze af is ligt er 4000 vierkante meter zonnepanelen op het dak. En de toiletten? Die spoelen door met regenwater. we gaan ervoor: het creëren van de meest duurzame en hoogwaardige luchthavens ter wereld. een toekomstbestendig en duurzaam Schiphol. Daar werken we elke dag hard aan in team Development & Sustainability. Jij bent regisseur, expert én aanjager van de ontwikkeling van Schiphol. Connecting your world Hoe maak je de ambities en doelstellingen van Schiphol concreet in een project? De waarde voor Schiphol naar eisen die

Bekijk vacature »

Web Application Developer

Dit ga je doen Samen met het team werk je aan de visualisatie functionaliteiten en hoe dit gebruikt kan worden in een operationele setting; Het ontwerpen, ontwikkelen, onderhouden en leveren van support betreft het Warehouse Management Systeem en de bijbehorende web visualisaties; Je gebruikt hierbijde tools WebGL en ASP.net; Het meewerken in implementatieprojecten; Het leveren van Go-Live Support; Sparren met jouw Amerikaanse collega's. Hier ga je werken Voor een internationale organisatie in de transport zijn wij momenteel op zoek naar een Web Application Developer. Ze zijn wereldwijd de grootste speler en lopen voorop met het automatiseren van alle processen van

Bekijk vacature »

IoT Developer

Ben jij innovatief, heb jij passie voor energie en ben je data gedreven? Bouw dan mee aan IoT binnen Bredenoord. Samen met een gedreven team werk jij aan mooie technische en innovatieve oplossingen. Wat houdt de functie van IoT Developer in? Binnen Bredenoord zijn wij momenteel volop in ontwikkeling met ons IoT platform. Als uitbreiding van ons team zijn wij op zoek naar een IoT Developer. Je zal in projectverband meehelpen met het implementeren van IoT vraagstukken binnen Bredenoord. Als IoT Developer op onze R&D-afdeling word je verantwoordelijk voor het verder inrichten en beheren van ons nieuwe IoT platform. Dat

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

OutSystems developer

Dit ga je doen Klanten adviseren over de mogelijkheden van OutSystems; OutSystems oplossingen ontwikkelen en implementeren; Stakeholdermanagement; Kennis en expertise up to date houden en delen met het team. Hier ga je werken Onze opdrachtgever, gevestigd in regio Amsterdam, is een innovatieve dienstverlener die zich richt op grote corporates in verschillende sectoren. Doordat je bij veel verschillende klanten aan de slag zal gaan is geen enkel project hetzelfde. De organisatie kenmerkt zich door hoge mate van professionaliteit en innovatieve oplossingen. In de rol van OutSystems developer zal jij verschillende grote klanten helpen om efficiënte OutSystems oplossingen te ontwikkelen en implementeren.

Bekijk vacature »

Softwareontwikkelaar Cleopatra

Functieomschrijving: De directie Verkeer en Openbare ruimte van de gemeente Amsterdam beschikt over een softwareapplicatie, "Cleopatra", waarmee geautomatiseerde handhaving plaatsvindt (op basis van kentekenherkenning) van bepaalde gebieden waarin toegangseisen worden gesteld aan het verkeer. Voorbeelden ervan zijn de milieuzones, de zone zwaar verkeer, handhaving van bromen snorfietser op het fietspad en autoluwe gebieden. Voor de doorontwikkeling en uitbreiding ervan zijn gespecialiseerde softwareontwikkelaars nodig die helpen bij het programmeren van de handhavingsmodules voor nieuwe gebieden en het verbeteren en bijwerken van de bestaande onderdelen van de softwareapplicatie.De opdracht bestaat uit: het programmeren van de diverse modules;het tijdens demo's tonen van de

Bekijk vacature »

Software Developer PHP JavaScript Python HBO SQL

Samengevat: Wij zijn een softwarebedrijf voor Autodealers. Ben jij een Medior of Senior Software Developer? Heb je ervaring met PHP, JavaScript of Python? Vaste baan: Java.Developer Software HBO €3.000 - €5.200 Bij ons op de werkvloer is er een positieve en informele sfeer. Naast een goede begeleiding en een enthousiaste klantenkring biedt deze werkgever een prettige omgeving met zeer afwisselende werkzaamheden. Houd jij van aanpakken en denk je dat je deze uitdaging aankunt? Dan zoeken wij jou! Zij werken voor grote klanten. Zij doen omvangrijke projecten die we bij deze werkgever op kantoor realiseren (geen detachering). Zij werken met state-of-the-art

Bekijk vacature »

Fullstack Webdeveloper .NET Azure Big Data SaaS

Bedrijfsomschrijving Deze klant van ons is recentelijk onderdeel geworden van een grote moederorganisatie, ze zijn dé partij als het gaat om software maken voor ambitieuze ondernemers, ze maken maatwerk software. Vanuit het fantastisch vormgegeven hightech gebouw te Rotterdam centrum werken ze met zo'n 40 medewerkers aan hoogwaardige software gericht op financiële data, betaalinformatie, maar ook backoffice software. De software wordt webbased, desktop en mobile aangeboden en er worden zeer moderne ontwikkeltechnieken toegepast. Je moet dan denken aan patroonherkenning, Big Data, Machine Learning en OCR. Als Developer, ongeacht je niveau, ga je hier te maken krijgen met de allerleukste kant van

Bekijk vacature »

.NET developer

Functie Als ervaren .NET ontwikkelaar start jij een team met 12 programmeurs. Jullie zijn verantwoordelijk voor het huidige platform van deze organisatie. Als team werken jullie in tweewekelijkse sprints en starten jullie iedere dag met een stand-up. Jij werkt samen met jouw team aan het uitbreiden van het huidige platform door middel van nieuwe features. Daarnaast zorg jij er samen met jouw team voor dat het platform veilig is en gebruiken jullie de nieuwste technieken om deze veiligheid te waarborgen. Zo maken jullie gebruik van C# .NET, .NET Core, React, Azure, Kubernetes, ASP.NET, MVC. Jij gaat aan het werk in

Bekijk vacature »

SAP HANA Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Veldhoven Vacature ID: 13382 Introductie We is looking for a HANA Developer to work for our client. The candidate has to have an experience in building Data Intensive Applications (DIA’s). The role of a HANA Developer at ASML involves working on building Data Intensive Applications in an industrial/enterprise environment. The primary responsibility is to handle data from various sources and determine the best way to structure it for use by data analysts, who will run queries and algorithms against it for predictive and prescriptive analytics through machine learning. Wat verwachten we van jou?

Bekijk vacature »

Medior/senior Front-end developer

Functie Je maakt deel uit van een DevOps Scrum team en werkt samen met back-end developers, test-engineers, interaction designers en een projectmanager. Er zijn verschillende groepen Scrum teams. Een roadmap team is jouw ‘’thuisbasis’’, daar wordt gewerkt aan doorontwikkeling van bestaande omgevingen voor een aantal klanten. Hiernaast zijn er projectteams waar nieuwe omgevingen worden gebouwd, of grote complexe wijzigingen worden doorgevoerd op bestaande omgevingen. Je kunt (afhankelijk van jouw wensen en doelen) dus afwisselend werken in beide teams. Hiernaast participeer je in het Chapter Front-end development waar gezamenlijk kennis en ervaring wordt gedeeld. Als Front-end developer is het jouw doel

Bekijk vacature »

PHP developer (Laravel/Vue.js)

Functie Het team telt momenteel 20 collega’s, bestaande uit developers (front- en backend) en het operations team, waaronder ook het management en twee scrum masters vallen. Ze zijn op zoek naar een PHP developer die in staat is zelfstandig te werken. Je komt te werken in één van de drie scrumteams en gaat aan de slag met een project voor de klant. Het fijne hieraan is dat je wel afwisseling hebt qua werk, maar tegelijkertijd doorlopend werkt voor bestaande klanten. Hierdoor krijg je ook de kans om echt de diepte in te gaan en innovatieve technische oplossingen neer te zetten.

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 »

Senior Organisatieontwikkelaar

Als Organisatieontwikkelaar zorg je ervoor dat we in het magazijn van Coolblue altijd vooruit voetballen op het gebied Medewerker en Organisatie Ontwikkeling. Zo draag je bij aan een toekomstbestendig magazijn waar we klanten én medewerkers elke dag blijven verwonderen. Wat doe je als Senior Organisatieontwikkelaar bij Coolblue? Als Organisatieontwikkelaar werk je voor het magazijn van Coolblue. Je krijgt er energie van om continue te bouwen aan een toekomstbestendige organisatie. Dat doe je samen met 17 collega's in het HR-team, ieder met een eigen specialisme. Je werkt graag zelfstandig en je weet snel je weg te vinden als verandermanager. Ook ben

Bekijk vacature »
Daan

Daan

11/02/2009 17:48:00
Quote Anchor link
Hey iedereen,

Ik heb een methode 'load' in de class 'Library' die een object kan openen uit de library en terugstuurt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$db
= $library->load('database');
?>

Dat doet ie (erg versimpeld, zonder controle, enz) als volgt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
class Library {
    public function load ($name) {
        include_once($name.'.php');
        $object = new $name();
        return $object;
    }
}

?>

Alleen nu wil ik een object aanmaken waarvan de constructor parameters moet krijgen. Dus zo:
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
<?php
// object opvragen
$db = $library->load('database', array('localhost', 'mydatabase'));

// De load()-functie in de Library-class
public function load($name, $params = array()) {
    include_once($name.'.php');
    // Wat moet er hier komen??
    // Zoiets werkt niet:

    $object = new call_user_func_array($name, $params);
    // En zoiets ook niet:
    $object = call_user_func_array('new '.$name, $params);
    // Dit werkt wel, maar dan kan je maar één argument doorgeven (een array dus)
    $object = new $name($params);
    return $object;
}

?>

Moet ik dan echt de constructors herschrijven zodat ze de argumenten als een array kunnen ontvangen?
Een andere oplossing is om zoiets te doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$code
= '$object = new $name(' . implode(', ', $params) . ');';
eval ($code);
?>

alleen is dit denk ik niet de ideale oplossing. Het lijkt mij iig erg omslachtig. Weet iemand hier een oplossing voor??

Alvast bedankt!
Daan

Edit:
Ik zie dat ik hem per ongeluk heb aangemaakt bij 'design'. Dat moet natuurlijk 'OOP' zijn..

Mod edit:
Verplaatst...
Gewijzigd op 01/01/1970 01:00:00 door Daan
 
PHP hulp

PHP hulp

19/05/2024 09:59:06
 
Bo az

Bo az

11/02/2009 18:47:00
Quote Anchor link
Wat jij wil is iig mogelijk met reflection ( http://nl.php.net/language.oop5.reflection ) hoe en wat precies weet ik ook niet uit mijn hoofd.

Overigens denk ik dat je dit beter anders kan aanpakken, wat je library eigenlijk is, is een registry. Registry is een bekend design pattern, wat vaak net iets anders wordt geïmplementeerd, hier op phphulp zijn genoeg voorbeelden te vinden. Je methode load is eigenlijk een combinatie van de registry en een autoload functie.

edit:
In het geval van reflection denk ik dat je ReflectionClass::newInstanceArgs() nodig hebt.
Gewijzigd op 01/01/1970 01:00:00 door Bo az
 
Citroen Anoniem Graag

Citroen Anoniem Graag

11/02/2009 19:29:00
Quote Anchor link
werkt dit niet:

$oObject = call_user_func_array(array('naam van de controller', '__construct'), $aParams);

Overigens lijkt Reflection mij mooier, maar is dit miss makkelijker
 
Jelmer -

Jelmer -

11/02/2009 20:06:00
Quote Anchor link
Volgens mij is reflection zelfs de enige manier waarop het kan.

Overigens is dit volgens mij niet het registery pattern, maar nijgt het meer naar het dependency injection pattern. Ik vind het er wel elegant uitzien eigenlijk :)
 
Daan

Daan

11/02/2009 22:51:00
Quote Anchor link
Ik was vanavond even weg, ik ga aan de slag met jullie commentaar!

Edit:
Reflection is precies wat ik zoek! Bedankt, had er nog nooit van gehoord.
Ik heb ff opgezocht wat dat met die patterns inhoud, en volgens mij is het meer een registry pattern. Van het Dependency injection pattern snap ik eigenlijk niet zoveel na de uitleg op wikipedia..

Maargoed, het werkt nu.
Voor de geïnteresseerden, dit heb ik nu:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
// De load()-functie in de Library-class
public function load($name, $params = array()) {
    include_once($name.'.php');
    $class = new ReflectionClass($name);
    $object = $class->newInstanceArgs($params);
    return $object;
}

?>


Werkt perfect! Nogmaals bedankt!
Gewijzigd op 01/01/1970 01:00:00 door Daan
 



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.