[oop] waarom geen warning/notice?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Java developer

Functie Je gaat aan de slag als Tester voor een aantal mooie projecten. Je komt terecht in een DevOps team waar jij aan de slag gaat om de kwaliteit te waarborgen omtrent de maatwerk software voor de klanten. Je draait je hand er niet voor om de adviserende rol te bekleden op het gebied van testautomatisering en het opzetten van testframeworks. Zoals aangegeven ga je daadwerkelijk in het eigen team aan de slag en is het daarnaast ook gebruikelijk bij de klanten op locatie te komen om te werken aan de opdrachten. Je krijgt zodoende echt een mooie kijk in

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Front end developer

Functie Binnen de functie van Front-end developer werk je mee aan uitdagende klantprojecten. In teamverband werk je aan de voorkant van onze state-of-the-art portaal oplossingen en apps. Dit alles gebeurt in een multidisciplinaire omgeving waarbij je de ruimte hebt om te sparren, je ideeën scherp te stellen, en waar je met de benodigde kennis en ervaring om je heen altijd terecht kunt bij je collega’s voor vragen en ondersteuning. Meestal werk je vanuit ons kantoor maar we bieden ook alle faciliteiten om thuis te kunnen werken. Voor sommige projecten ga je mee naar de klant, wellicht zelfs in het buitenland!

Bekijk vacature »

Senior Java Ontwikkelaar

Dit ga je doen Werken aan uiteenlopende interne projecten voor grote (internationale) organisaties; Ontwikkelen van diverse (web)applicaties en platformen met technieken als Java, Azure en ASP.NET; Complexe vraagstukken tackelen met jouw expertise en ervaring; Waar nodig help jij je collega's om samen tot de juiste oplossing te komen. Hier ga je werken Als Java Developer kom je te werken bij een internationale organisatie in regio Amsterdam die zich richt op procesoptimalisatie door middel van zeer complexe IT oplossingen. Dit doen zij op het allerhoogste niveau met vestigingen over heel de wereld en met een groot aantal aansprekende, maatschappelijk betrokken klanten.

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

Full Stack Developer

Dit ga je doen Ontwikkelen van Product Informatie Management (PIM) systemen; Werken aan zowel grotere als kleine projecten voor toonaangevende klanten binnen o.a. de retail; Verantwoordelijk voor de front-end werkzaamheden; Naast de front-end werk je ook aan de backend. Hier ga je werken Als Full Stack Developer komt je te werken binnen een vooruitstrevende organisatie die Product Informatie Management (PIM) systemen levert aan hun klanten. Hun klanten zijn toonaangevende bedrijven binnen o.a. de retail. De organisatie zit gevestigd in regio Zwolle en bestaat uit zo'n 35 medewerkers, waarvan 30 IT. Je komt te werken binnen één van de zelfsturende development

Bekijk vacature »

C#.NET Developer

Dit ga je doen Ontwikkelen van de Back-end in .NET6 / C# en WebAPI (Focus);) Ontwikkelen van de Front-End in Nodje.js en Angular (secundair); Opstellen van een technisch ontwerp; Testen, documenteren en implementeren van de nieuwe applicatie; Verzorgen van de nazorg, na de implementatie; Het oplossen van bugs en incidenten. Hier ga je werken Als C#.NET Developer binnen deze organisatie kan jij het verschil maken. Zij werken momenteel nog met programmatuur die is ontwikkeld in C++. Hiervan gaan zij afscheid nemen zodra alle nieuwe software in C#.NET geschreven is. Een grootschalig en langdurig project. Voor hen is deze software van

Bekijk vacature »

Back end developer Digital Agency

Functie Wij zijn van origine een wordpress bureau, maar sinds 2006 zijn wij dit wel redelijk ontgroeid. Naar mate de jaren verstreken zijn we gegroeid in omvang, maar ook in de complexiteit van opdrachten waarin wij onze klanten kunnen bedienen. Momenteel bestaat onze organisatie uit 4 front end developers, 12 back end developer 3 projectmanagers en een 2 koppig management. Wij zijn een hele informele, bijna familiaire organisatie. Geen strak pak of overhemd, nee gewoon dragen waar jij je prettig bij voelt. De gemiddelde leeftijd ligt tussen de 25 en 30 en wij doen er veel aan om onze hechte

Bekijk vacature »

Java Developer (Training And Simulation)

Wat jij doet Je zou onze Java Developer zijn en nauw samenwerken met je Product Owner, Software System Engineer, Scrum Master en andere Developers. Samen draag je bij aan een multidisciplinair en zelf organiserend Agile team. De rol is zeer afwisselend en bestaat uit, maar is zeker niet beperkt tot: de-risk en prototype onbewezen simulatietechnologieën; simulatiekaders ontwikkelen voor gebruik door andere teams; je bent goed in het begrijpen van ingewikkelde ideeën; heeft de mogelijkheid om nauw samen te werken met grote internationale klanten, leveranciers en overheden om onze oplossingen, vastleggingsvereisten, enz. te definiëren en te presenteren. Ben jij het? Wij

Bekijk vacature »

Lead C++ Developer

The role of Lead C++ Developer As Lead C++ Developer at KUBUS you will be responsible for the implementation design of requirements and the software architecture of the desktop applications of BIMcollab, our platform for 3D model validation and issue management aimed at improving the quality of 3D building design models. Better 3D models lead to better buildings, thus contributing to the sustainability of the built environment with smarter use of materials, less waste and energy-efficient buildings. A good user experience is of paramount importance to us; we go for innovation and quality in our development. In your role as

Bekijk vacature »

Medior/senior Front-end developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

Fullstack Software Developer

Bedrijfsomschrijving Functieomschrijving Java ontwerpen, bouwen en testen (T-shaped). Als senior ontwikkelaar ben je bekend in zowel de back-end als de frontend van een applicatie. Angular, Continious Delivery / Integration. Een ervaren iemand die de leiding kan nemen, een weg vindt in nieuwe situaties, en in oude applicaties. Initiatiefrijk, bekend met de (technische) omgevingen die we bij duo gebruiken, niet te beroerd om collega’s te helpen. Als senior programmeur in staat om op te treden als lead programmeur. Ondersteunt de testers bij de testautomatisering en minder ervaren programmeurs bij dagelijks werkzaamheden. Dit laatste met name op het gebied van Angular. Achtergrond

Bekijk vacature »

Senior Applicatie ontwikkelaar Java

Bedrijfsomschrijving De IV- organisatie van de Belastingdienst is verantwoordelijk voor en verzorgt de ICT- voorzieningen. Het merendeel van de applicaties wordt op dit moment door de IV- organisatie zelf ontwikkeld, onderhouden en beheerd in het eigen data center. Naast de zorg voor continuïteit op de massale heffing- en inningsprocessen die plaatsvinden binnen een degelijke, stabiele omgeving, wordt er tevens volop gewerkt aan modernisering van het IV- landschap. Dit gebeurt deels intern door gebruik te maken van de expertise die intern aanwezig is, maar ook door het aantrekken van (kant-en-klaar) oplossingen en expertise uit de markt. Functieomschrijving We verwachten van je,

Bekijk vacature »

(Junior) PHP Ontwikkelaar bij een retail bedrijf i

Bedrijfsomschrijving Ben jij een ervaren PHP ontwikkelaar met een passie voor retail en ICT? Wil jij werken in een team dat zich bezighoudt met het ontwikkelen van uitdagende applicaties voor een groot retailbedrijf in Delft? Dan zijn zij op zoek naar jou! Functieomschrijving Als PHP Ontwikkelaar werk je in een team aan de ontwikkeling van applicaties die door de gehele organisatie worden gebruikt. Je bent verantwoordelijk voor het ontwikkelen, testen en implementeren van deze applicaties. Je werkt hierbij nauw samen met andere ontwikkelaars, projectmanagers en stakeholders binnen de organisatie. Je taken bestaan onder andere uit: Ontwikkelen van nieuwe functionaliteiten en

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 »

Pagina: 1 2 volgende »

Ozzie PHP

Ozzie PHP

03/07/2014 18:36:37
Quote Anchor link
Zie dit codevoorbeeld: http://3v4l.org/XcH5I

Waarom komt er geen melding als ik een statische functie op een niet-statische manier aanroep?

Als ik een array-key opvraag die niet bestaat, volgt er een notice dus error reporting staat aan.

Ik zou verwachten dat je een statische functie altijd statisch moet aanroepen??
 
PHP hulp

PHP hulp

29/04/2024 15:49:29
 
Wouter J

Wouter J

03/07/2014 20:14:48
Quote Anchor link
Omdat PHP nou eenmaal zou werkt...

Iets uitgebreider, statische functies kun je in PHP als instance functies aanroepen, maar instance functies niet als statische functies.
 
Ozzie PHP

Ozzie PHP

03/07/2014 22:33:29
Quote Anchor link
Aha, oké... dat wist ik niet.

Dus om te voorkomen dat ik (per ongeluk) een statische class ga initialiseren, is dus de enige oplossing om een private constructor te maken?
 
Wouter J

Wouter J

03/07/2014 23:00:56
Quote Anchor link
Waarom zou je dat niet willen? Ga niet je hele applicatie dicht bouwen...

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools." -Douglas Adams
 
Ozzie PHP

Ozzie PHP

03/07/2014 23:29:22
Quote Anchor link
Ik snap wat je bedoelt. Maar ik maak dus bewust een statische class, met als bedoeling dat die altijd statisch wordt aangeroepen. En dan blijkt dat je 'm gewoon kunt instantiëren en vanuit de instance de statische functies kunt aanroepen. Dat vind ik maar vaag :(
 
Wouter J

Wouter J

04/07/2014 00:55:52
Quote Anchor link
Statische klassen bestaan niet in PHP.
 
Ozzie PHP

Ozzie PHP

04/07/2014 01:00:30
Quote Anchor link
Hoe bedoel je Wouter? Een class met alleen statische methods is toch een statische class (eventueel met private constructor)?
 
Thom nvt

Thom nvt

04/07/2014 10:30:35
Quote Anchor link
Wat Wouter bedoelt is dat PHP geen statische classes heeft op een manier zoals bijvoorbeeld in C#. Je kan in PHP een class niet markeren als 'static' maar members en methods wel. (zie: http://php.net/manual/en/language.oop5.static.php)
 
Wouter J

Wouter J

04/07/2014 10:38:13
Quote Anchor link
>> Hoe bedoel je Wouter? Een class met alleen statische methods is toch een statische class (eventueel met private constructor)?

Nee, dan heb je alsnog een normale class, maar dan met statische methods. Als PHP wel statische klassen had, dan had ie wel betere gesupport gehad voor bijv. het initializen van de statische klasse.
 
Ozzie PHP

Ozzie PHP

04/07/2014 12:17:09
Quote Anchor link
Ah oké... ik heb een autoloader die "statische" classes kan initialiseren :)
 
Wouter J

Wouter J

04/07/2014 12:36:09
Quote Anchor link
Dan doet jouw autoloader veel meer dan loaden...
 
Ozzie PHP

Ozzie PHP

04/07/2014 12:37:51
Quote Anchor link
Yup... 't is een magische autoloader :D

(alleen mijn default autoloader doet dit overigens, de PSR varianten doen dit niet)
 
Wouter J

Wouter J

04/07/2014 13:30:13
Quote Anchor link
Dan doe je echt iets goed verkeerd. In PHP heeft elke klasse maar 1 functie, je autoloader laad nu klassen in en initialiseerd klassen. Daarnaast bepaald hij dus ook nog het type klasse. Dat is veel te veel voor een autoloader.

Een autoloader hoort alleen te laden, meer niet. De rest is de verantwoordelijkheid van andere klassen.
 
Ozzie PHP

Ozzie PHP

04/07/2014 13:37:43
Quote Anchor link
Is een keuze Wouter. Het is een handigheidje waardoor ik statische classes automatisch kan initialiseren, net zoals niet-statische classes automatisch worden geconstruct. Op het moment dat een class in gebruik wordt genomen, moet ie gebruiksklaar worden gemaakt. Anders kun je de class niet op een geldige manier gebruiken. Je zou het initialiseren dus kunnen zien als onderdeel van het laden.
 
Wouter J

Wouter J

04/07/2014 14:12:31
Quote Anchor link
Wacht even, een statische klasse die gebruiksklaar gemaakt moet worden? Dat kan niet. Static betekend dat ze niet afhankelijk zijn van een instance of wat dan ook. In andere woorden: static klassen zijn altijd klaar voor uitvoeren. Static klassen zijn niet meer dan losse functies groeperen.
 
Ozzie PHP

Ozzie PHP

04/07/2014 14:17:55
Quote Anchor link
En toch (hoewel het niet vaak zal voorkomen) kan er zich een situatie voordoen waarin je een statische class wilt initialiseren. Ik heb een statische class waarbij ik iets met de class constants moet doen, voordat je de class kunt gebruiken. Nu kan ik telkens als ik een method in die class aanroep controleren of die handeling al is uitgevoerd, of ik initialiseer de class eenmalig bij het inladen.
 
Ward van der Put
Moderator

Ward van der Put

04/07/2014 14:58:18
Quote Anchor link
Ozzie, dan is er nog een mogelijkheid: je kunt de configuratie van een klasse eenmalig inladen zonder de klasse zelf te laden. Dat is eigenlijk ook wat er gebeurt met configuratie-instellingen in php.ini.

Als je die "static" klasse abstract maakt, werken de static methoden overigens ook nog steeds. Dat lijkt me dan de elegantste work-around.
Gewijzigd op 04/07/2014 14:58:40 door Ward van der Put
 
Ozzie PHP

Ozzie PHP

04/07/2014 15:05:44
Quote Anchor link
Ward, ik denk niet dat dat lukt.

Stel ik heb deze class:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php

class color {

  const blue = 1;
  const red  = 2;

  static private $reversed;

}

?>

De gedachtengang is dat ik in de statische $reversed property de constanten omgedraaid wil opslaan, dus zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
[reversed]
   1 => blue
   2 => red

Hiervoor gebruik ik de initialisatie method (in een abstracte parent class).

>> je kunt de configuratie van een klasse eenmalig inladen zonder de klasse zelf te laden.

Dat lijkt me niet mogelijk.
 
Wouter J

Wouter J

04/07/2014 15:43:16
Quote Anchor link
Ozzie, dan doe je zoiets de eerste keer dat je een method aanroept. Zoiets hoor je niet in een autoloader te regelen.
 
Ozzie PHP

Ozzie PHP

04/07/2014 17:57:18
Quote Anchor link
Wouter, dat zou kunnen, maar dan moet ik telkens als ik een method aanroep een controle gaan uitvoeren. Da's ook niet echt chique toch? :-(
 
LEDfan nvt

LEDfan nvt

04/07/2014 18:12:21
Quote Anchor link
Het zorgt er wel voor dat overal waar je die statische classe gebruikt je afhankelijk bent van die specifieke autoloader....
 

Pagina: 1 2 volgende »



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.