[oop] waarom geen warning/notice?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Medior/Senior Python developer (Django)

Functie Je komt te werken in het IT-team bestaande uit de Lead developer en 4 (medior/senior) developers. Gezamenlijk werken jullie aan de verbetering en uitbreiding van de software. Binnen het development team is er veel vrijheid en zelfstandigheid, zonder dat ze hiermee afdoen aan de kwaliteit. Zo hebben ze elke ochtend een korte stand-up (10:00 uur) en werken ze met pair-programming sessies. Ook is er een hele professionele ontwikkelcyclus waarbij code altijd eerst door een collega wordt getest voordat het naar deployement gaat. Er is een kwaliteitsfocus en dan biedt ruimte om verbeteringen echt door te voeren binnen de gehele

Bekijk vacature »

Back end developer PHP

Functie Heb jij altijd al eens bij een bedrijf willen werken waar jij géén nummertje bent, die alleen maar uitvoerend werk doet? Dan zou je hier perfect passen! Tuurlijk, je werkt aan projecten voor grote of kleine bedrijven… Het enige verschil hier is, jouw mening telt hier écht. Jouw inbreng wordt gewaardeerd, serieus genomen en gebruikt. En vergeet niet, je werkt niet alleen aan deze projecten. Er werken in totaal ruim 25 developers en designers, onderverdeeld over 3 development teams. Voornamelijk bestaande uit Medior en Senior developers, die samen voor een inspirerende en ambitieuze omgeving zorgen. Hun visie is namelijk

Bekijk vacature »

Robot Programmeur

In het kort Drie redenen waarom deze vacature uniek is! Programmeren van zelflerende robots Werken op kantoor en testen in de bedrijfshal Je krijgt verantwoordelijkheid, vrijheid en je mag werken naar eigen inzicht De organisatie Hier ga je aan de slag Een bedrijf dat innovatieve robottoepassingen ontwerpt en bouwt voor onder andere de staal industrie, energie- bouw- en agrarische sector. De robots die vaak in combinatie met diverse randapparatuur geleverd worden vormen een totaaloplossing voor de klant. Dit zijn klanten over de hele wereld, van België en Duitsland tot China, India, maar ook in Nederland. Projecten waar momenteel aan wordt

Bekijk vacature »

PHP developer - Digital Agency

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 »

Software Developer C# .NET

Functie omschrijving Zoek jij een nieuwe uitdaging binnen development waar je komt te werken binnen een flexibel, jong en ondernemend bedrijf? Wij zijn voor deze functie op zoek naar een C# .NET Developer die enthousiast wordt van het aansluiten en begeleiden van (complexe) nieuwe klanten. Verder begeleid je complexe projecten, ben jij iemand die altijd kansen ziet? Dan zoeken wij jou! Verder ga jij je bezighouden met: Het verbeteren van functionaliteiten binnen het dataplatform; Meedenken in oplossingsrichtingen; Werken aan de architectuur; Ontwikkelen van nieuwe technologieën. Bedrijfsprofiel Waar ga je werken? De organisatie waar je voor gaat werken heeft een onafhankelijk

Bekijk vacature »

.NET Developer

Functie omschrijving Jij gaat in de functie van Software Developer werken met C# en .NET framework. Jij gaat maatwerk software ontwikkelen en softwareoplossingen creëren. Daarnaast optimaliseer je de bestaande software. Oplossingen waar de klant echt iets aan heeft, jij krijgt er energie van op dit te realiseren. Je gaat werken in een Microsoft omgeving(ASP.NET) en gebruikt daarnaast C# en MVC. Samen met het huidige IT team binnen deze organisatie verwerk je de wensen van de klant tot een (eind)product. Bedrijfsprofiel Je komt te werken in een klein team van developers, die zich voornamelijk bezighouden met back-end development. Verder staat dit

Bekijk vacature »

C# Developer

Functie omschrijving Voor een softwarebedrijf in de omgeving van Veghel zijn we op zoek naar een C# developer. Word jij blij van ontwikkelen in C# en .NET? Lees dan snel verder! Jouw werkzaamheden zullen er als volgt uit gaan zien: Door middel van ASP.NET, MVC Framework en C# ga je webshops, websites en webapplicaties ontwikkelen. Je zorgt voor de optimalisatie van bestaande software en de automatisering van bedrijfsprocessen. Op basis van de wensen van de klant ga je samen met je collega's ga je op zoek naar de juiste oplossingen en je gaat dit uitwerken tot een mooi eindproduct. Bedrijfsprofiel

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 »

Junior .NET developer

Functie Om half 9 kom jij binnen en pak jij als eerst natuurlijk een bakje koffie of thee. Vervolgens ga jij je voorbereiden op de stand-up van kwart voor 9. Zijn er bijvoorbeeld dingen waar jij nog tegen aan loopt? Of is er nog code die getest of gereviewd moet worden? Vervolgens starten jullie met de stand up en na de stand up zoeken jullie elkaar op en gaan jullie aan de slag. Als team met 6 developers werken jullie in drie wekelijkse sprints. Het einde van een sprint is altijd op een donderdag zodat jullie op vrijdag de demo

Bekijk vacature »

Laravel / PHP developer

Functie omschrijving Wij zijn op zoek naar een Medior PHP / Laravel Developer voor een IT-consultancy in de omgeving van Hoofddorp! Ben jij op zoek naar een leuke nieuwe uitdaging binnen een veelzijdige werkomgeving? Lees dan snel verder! Binnen dit bedrijf werk je in een ontwikkelteam, waarin je zeer betrokken bent en meedenkt over softwareoplossingen. Binnen dit Team hou je je bezig met het aanpassen, verbeteren en vernieuwen van de logistieke oplossingen. Je zult je bezig houden met de volgende werkzaamheden: Je gaat aan de hand van de wensen van klanten software ontwikkelen; Je bent bij het gehele proces betrokken;

Bekijk vacature »

Medior Java developer

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 »

Backend developer

Functie omschrijving Ben jij graag bezig met de back-end van applicaties? Zou je dit graag willen doen voor een kleine werkgever waar ook tijd is voor een drankje op zijn tijd? Je taken hierbij zullen bestaan uit: Gebruik maken van de volgende technieken: .NET (core), C#, SQL, XML, MVC, JSON, REST & SOAP API. Gebruik maken van de volgende tools: Visual Studio, GIT, Jira, Jenkins. Bovengenoemde technieken en tools ga je gebruiken om: Nieuwe functionaliteiten te ontwikkelen. Wijzigingsverzoeken van klanten uitvoeren. Verzorgen van koppelingen tussen data. Bedrijfsprofiel Jouw nieuwe werkgever bevindt zich in regio Raamdonksveer en bieden oplossingen op gebied

Bekijk vacature »

.Net ontwikkelaar - Het schoolsysteem verbeteren!

Bedrijfsomschrijving Onze klant is een prettige en kleinschalige organisatie waar hard gewerkt wordt om het onderwijs te verbeteren. Daarom werken ze aan complexe om administratieve, financiële en facilitaire processen te versnellen en te verbeteren. Dit doen ze vanuit een platte organisatie voor klanten die door geheel Nederland verspreid zitten, hier horen vanzelfsprekend een aantal aansprekende HBO scholen en universiteiten toe. Functieomschrijving Je komt terecht in een organisatie waar op dit moment 2 scrumteams werken. Jij zal als .Net developer binnen 1 van deze scrumteams functioneren, iedereen binnen dit team heeft zijn/haar eigen expertise waardoor er met verschillende invalshoeken aan een

Bekijk vacature »

C# .NET Developer

Functie omschrijving Wij zijn op zoek naar een C# .NET Developer voor een bedrijf in de omgeving van Utrecht! Wil jij werken voor een internationaal bedrijf waar je legio mogelijkheden krijgt als Software Ontwikkelaar? Grijp nu je kans! Je kunt een uitdagende rol gaan vervullen als C#.NET Developer binnen een internationaal bedrijf dat gevestigd is in omgeving van Utrecht. Je zult gaan samenwerken met collega's die over de hele wereld verspreid zitten. Dit bedrijf is zeer vooruitstrevend en werkt met de nieuwste technieken. Als C#.NET Developer ga jij je bezig houden met het volgende: Je blijft op de hoogte van

Bekijk vacature »

Front-End Developer

As a Front-End Developer at Coolblue you improve the user-friendliness of our webshop for millions of customers. How do I become a Front-End Developer at Coolblue? As a 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 these within the team. You also take pride in your work and welcome any feedback. Would you like to become a Front-End Developer at Coolblue? Read below if the job suits you. You

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

28/03/2024 23:16:57
 
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.