default properties?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

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 »

Software developer

Functieomschrijving Voor een gewaardeerde werkgever in de regio van Middelburg zijn wij op zoek naar een ambitieuze PHP/Symfony Developer. Een enthousiast persoon die het development team komt versterken met het aanpakken van complexe en nieuwe projecten. Ben jij op zoek naar een baan met veel uitdaging binnen een snelgroeiend e-commerce bedrijf, waar je de tijd en ruimte krijgt voor zowel persoonlijke als professionele groei? Lees dan snel verder! Dit ga je doen: Aanpassingssuggesties van collega’s in kaart brengen, vervolgens te analyseren en daarna te concluderen of de aanpassing een verbetering is; Ontwikkeling en beheer van de serviceportal in Symfony en

Bekijk vacature »

Network Engineer (f/m/d) in Heidelberg

Network Engineer (f/m/d) The IT Services team operates and supports the IT infrastructure and services at EMBL headquarters in Heidelberg and at the laboratory’s sites in Barcelona and Rome. As part of IT Services, the Network team is responsible for managing and developing the network infrastructure in our data centres, on campus, and to our external network providers. As a leading scientific institution with highly data-intensive research, extensive data flows at and between the laboratory’s six sites and to the Internet, EMBL is connected to national and international scientific networks using state-of-the-art technologies from vendors including Cisco, Extreme Networks and

Bekijk vacature »

Software Developer

Functie omschrijving In deze functie ga je aan de slag met het door ontwikkelen van de interne software. Zij maken gebruik van een CRM, wat door de hele organisatie gebruikt wordt. Andere taken: Je gaat het CRM-systeem door middel van PHP verder ontwikkelen; Verder bouw je verschillende API's en koppelingen tussen systemen; Ook ga je collega's ondersteunen bij vragen over de software en applicaties; Deelnemen aan overleggen met het development team; Bij interesse is er de mogelijkheid om junioren te gaan begeleiden. Bedrijfsprofiel Dit bedrijf is actief binnen de telecombranche. Het hoofdkantoor zit in regio van Den Bosch en er

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 »

Senior pega developer

You work on software that makes colleagues and customers happy! Thanks to your IT skills, De Mandemakers Groep really makes a difference for its customers. Do coding, testing and deployments make your heart beat faster? Then apply today as Senior Pega Developer at De Mandemakers Groep! Wat ga je doen? The job title gives it away: You will be developing Pega software. This ranges from technical design, coding and testing to test automation, deployments and bug fixing. Your goal is to continuously improve our systems so that colleagues can work efficiently and customers receive optimal service. You don't have to

Bekijk vacature »

Frontend Developer - Leeuwarden

Frontend Developer – Leeuwarden Als Frontend Developer bouw jij mee aan het onderwijs van de toekomst! In een scrum team werken met jonge en enthousiaste collega’s, moderne technieken, ruimte voor eigen ontwikkeling en op een proactieve wijze kunnen meewerken aan innovatie binnen het onderwijs. Magister is het state-of-the-art softwarepakket dat scholen in het voortgezet onderwijs op alle fronten ontzorgt. Van leerlingenadministratie tot het ondersteunen van individuele leerlijnen, van toegang tot digitaal lesmateriaal tot het plannen van het lesrooster. In de Magister app bedient Magister ruim 2,5 miljoen gebruikers waarvan, dagelijks meer dan 600.000 unieke. Hiermee is Magister de absolute marktleider

Bekijk vacature »

Back-end ontwikkelaar

Functie omschrijving Wil jij meebouwen aan diverse databasesystemen in een klein bedrijf met een platte organisatie? In een team van ruim 10 ontwikkelaars wordt er aan diverse ICT oplossingen gewerkt. Jouw taken hierbij zullen bestaan uit: Het onderhouden en door-ontwikkelen van bestaande databases. Denk hierbij aan schema verbeteringen en performance-tuning. Bij nieuwe ontwikkelingen ga jij ook bezig met het bouwen van het databaseschema. Omdat je in een klein team werkt zal je ook de C# routine verder uitbouwen en ontwikkelen. Ook kan je meedraaien in algemene refactory-, ontwikkel- of testwerkzaamheden. Je zal voornamelijk gebruik maken van de volgende technieken: .NET

Bekijk vacature »

Full stack developer

Functie Binnen een ontzettend stimulerende werkomgeving kom jij te werken in een software team van 14 developers. Met ontzettend stimulerend bedoel ik een modern pand, wat voorzien is van alle nodige soft- en hardware, zodat jij jouw werk goed kan uitvoeren. Daarnaast zitten ze in een bos, waardoor je in een groene omgeving rustig kunt werken. Het team bestaat uit front end, back end en full stack developers. Jij krijgt dus de keuze hier waar jij jezelf het liefst op zou richten, maar de voorkeur gaat uit naar back end. Er wordt hier Scrum (agile) gewerkt in multidisciplinaire teams met

Bekijk vacature »

Software Developer

Longship.io gaat de wereld veroveren met baanbrekende software en legendarische... pizza-avonden! Lees hier de vacature van Software Developer! Bij Longship werken we met een team van 5 mensen aan software voor laadpaal operators. Longship is ontstaan in 2020 met als doel om de elektrische mobiliteitstransitie aan te jagen. We zijn nu al een wereldwijde speler doordat we continu voorop lopen in innovatie. Ons platform helpt het versneld elektrificeren van wagenparken, internationaal! Wij zijn een startup met grote ambities die we willen bereiken met een relatief klein en efficiënt team. Je krijg de kans om ontzettend veel te leren van ervaren

Bekijk vacature »

Database Developer

Functieomschrijving Heb jij ongeveer 3 jaar ervaring als Database Developer met MS SQL of een vergelijkbare database? Wil jij werken voor een gewaardeerde werkgever in regio Tilburg waar jij de tijd en ruimte krijgt jezelf te ontwikkelen? Lees dan snel verder! Hoe ziet jouw takenpakket eruit? Je houdt je bezig met het creëren en bouwen van MS SQL server databases; Je gaat projecten vanaf het begin tot het eind begeleiden. Je sluit aan bij meetings met klanten om hun processen in kaart te brengen. Vervolgens voer jij het project uit en zorgt dat dit zo goed mogelijk verloopt; Je werkt

Bekijk vacature »

Back-end Developer

Functieomschrijving Voor een erkende werkgever in de regio van Middelburg zijn wij op zoek naar een enthousiaste PHP / Symfony Developer. Een ambitieus persoon die het gemotiveerde development team komt versterken met het realiseren van nieuwe en complexe projecten. Ben jij op zoek naar een baan met veel uitdaging binnen een snelgroeiend e-commerce bedrijf, waar je de tijd en ruimte krijgt voor professionele groei? Dit ga je doen: Je bent verantwoordelijk voor de beheer en ontwikkeling van de serviceportal in Symfony en de webshops in de tweede versie van Magento; Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten;

Bekijk vacature »

Laravel PHP developer in een jong team

Bedrijfsomschrijving Als je op zoek bent naar een werkplek waar plezier en uitdaging hand in hand gaan, dan is dit bedrijf de juiste keuze voor jou. Hier kun je werken aan uitdagende projecten en krijg je als developer veel verantwoordelijkheid. Het bedrijf waardeert kwaliteit boven kwantiteit en richt zich op het ontwikkelen van hoogwaardige applicaties en websites waar klanten enthousiast over zijn. Dit bedrijf is vooruitstrevend en streeft naar het leveren van de best mogelijke resultaten voor hun klanten. Als medior PHP ontwikkelaar met 3 jaar ervaring ben jij de persoon die we zoeken. Je krijgt hier de kans om

Bekijk vacature »

Developer Full Stack

Functie omschrijving Developer gezocht! Ben jij een enthousiaste developer die graag wil bijdragen aan ontwikkelingen binnen een mooie organisatie? Solliciteer dan snel. Wij zijn op zoek naar een Full Stack Developer uit de regio Nijkerk die gaat bijdragen aan het door ontwikkelen, onderhouden en optimaliseren van een SaaS applicatie. Je moet beschikken over beheersing van zowel de Nederlandse als Engelse taal aangezien je samen met de klant gaat werken. Bedrijfsprofiel Je komt te werken binnen een echt familiebedrijf dat al sinds 1925 actief is binnen de FMCG branche. Het bedrijf heeft 40 medewerkers en er heerst een platte communicatiestructuur waarbij

Bekijk vacature »
Ozzie PHP

Ozzie PHP

15/04/2014 19:46:49
Quote Anchor link
Hey guys,

Ik heb een class User met een getName functie en een setName functie. Wat moet volgens jullie de getName functie teruggeven op het moment dat setName nog niet is gebruikt om een naam op te geven?

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
<?php
class User {

  private $name;

  public function getName() {
    return $this->name;
  }


  public function setName($name) {
    $this->name = $name;
  }
 
}

?>

De twee meest voor de hand liggende opties lijken mij dat de getName functie null returnt (zoals hierboven), of dat de getName functie een lege string returnt:

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
<?php
class User {

  private $name = '';

  public function getName() {
    return $this->name;
  }


  public function setName($name) {
    $this->name = $name;
  }
 
}

?>

Heeft een van beide opties de voorkeur (en zo ja waarom) of maakt het helemaal niks uit en is het een kwestie van persoonlijke smaak?
 
PHP hulp

PHP hulp

29/04/2024 01:59:28
 
Ward van der Put
Moderator

Ward van der Put

15/04/2014 19:53:05
Quote Anchor link
Null vanwege de speciale betekenis: geen waarde.
 
Ozzie PHP

Ozzie PHP

15/04/2014 19:57:26
Quote Anchor link
Oké. Zo doe ik het zelf ook. Ik had verwacht dat er misschien ook mensen zijn die juist alles initialiseren. Geef jij dan in je commentaar bij de getName functie aan dat deze óf een string teruggeeft, óf null?
 
Ward van der Put
Moderator

Ward van der Put

15/04/2014 20:10:11
Quote Anchor link
Aan het initialiseren van klassen kunnen we beter een nieuw topic besteden, want dat is soms bittere noodzaak en soms juist een hel ;-)

>> Geef jij dan in je commentaar bij de getName functie aan dat deze óf een string teruggeeft, óf null?

Strikt genomen moet je volgens PSR-4 dan inderdaad @return string|null en dergelijke gebruiken. Je wilt immers weten of er uitsluitend een string uitkomt (@return string) of eventueel ook een null (@return string|null). Bovendien kan je methode een null nog met '' retourneren als string.
 
Ozzie PHP

Ozzie PHP

15/04/2014 20:14:28
Quote Anchor link
>> Bovendien kan je methode een null nog met '' retourneren als string.

Oké.. maar dit willen we dus niet toch? Als ie niet is geset, dan wordt het dus gewoon null. Right?
 
Ward van der Put
Moderator

Ward van der Put

15/04/2014 20:22:42
Quote Anchor link
Als we het, zoals eerder deze week, hebben over tussenvoegels/voorvoegsels in achternamen, is er misschien toch wel een verschil tussen:

• null voor: er is geen tussenvoegsel ingesteld en

• '' voor: deze achternaam heeft geen tussenvoegsels.
 
Ozzie PHP

Ozzie PHP

15/04/2014 20:28:52
Quote Anchor link
Oké, maar als iemand geen tussenvoegsel ingeeft, zou je kunnen zeggen a) deze naam heeft geen tussenvoegsel of b) deze persoon heeft geen tussenvoegsel ingevuld. Dat weet je niet. Dus lijkt het me geen probleem om die op null te laten (even afgezien van wat je er in de database mee doet).

Maar de "regel" is dus dat wanneer een property geen default value heeft en de property niet geset is, er null wordt gereturned, als in "deze property is niet geset/onbekend"?
 
P-ter AA

P-ter AA

16/04/2014 11:36:48
Quote Anchor link
In andere programmeertalen wordt er altijd null teruggegeven als een variabel geen waarde heeft. Ik houd dit bij PHP ook altijd aan.

PHP wijkt hierin af van andere programmeertalen. In bijvoorbeeld C# of Java is het onmogelijk om een lege string terug te krijgen als een variabel geen waarde heeft. In zo'n programmeertaal krijg je een null pointer exception i.p.v. een lege string als je met een lege of niet bestaande variabel werkt.
 
Ozzie PHP

Ozzie PHP

16/04/2014 11:41:34
Quote Anchor link
Oké, thanks. Dus gewoon null aanhouden. En in het verlengde daarvan (ik had hier onlangs op het forum een vraag over) hoe sla jij lege waardes op in de database? Ook als null?
 
P-ter AA

P-ter AA

16/04/2014 11:49:13
Quote Anchor link
Dit hangt af van de soort data. Wanneer een veld/kolom verplicht is, geef ik deze een default waarde. De prijs van een product bijvoorbeeld geef ik het type DECIMAL(6,2) en een default value van 0,00.

Maar velden die niet verplicht zijn geef ik inderdaad altijd de waarde null. Ik vind dat zelf netter. Daar is de null waarde in MySQL immers voor bedoelt. Daarnaast gaan string functies in MySQL zoals CONCAT() volgens mij anders met null waardes om dan strings (VARCHAR of TEXT), maar dat weet ik niet zeker.

Overigens vind ik IS NULL netter staan in je query dan = "", maar dat is persoonlijk.
 
Ozzie PHP

Ozzie PHP

16/04/2014 11:54:21
Quote Anchor link
Allright, thanks. Ik ben zelf ook gewend om met NULL te werken, maar er zijn ook mensen die overal per se een niet-null waarde in de database willen hebben staan.
 
Ward van der Put
Moderator

Ward van der Put

16/04/2014 13:53:26
Quote Anchor link
>> De prijs van een product bijvoorbeeld geef ik het type DECIMAL(6,2) en een default value van 0,00.

Dat is een goed voorbeeld van een lastige keuze: met 0.00 als standaardwaarde verlies je het onderscheid tussen producten waarvan de prijs nog niet bekend is en gratis producten. Om te voorkomen dat er per ongeluk producten cadeau worden gedaan, zou ik hier toch kiezen voor een nullable kolom en een DEFAULT NULL.
 
Ozzie PHP

Ozzie PHP

16/04/2014 13:58:27
Quote Anchor link
Daar heb je een punt Ward. Kan me herinneren dat zoiets een paar jaar geleden eens is gebeurd. Het exacte hoe en wat herinner ik me niet meer. Maar het ging erom dat mensen iets voor 0 euro konden kopen, en dat gebeurde dan ook massaal. Daar sta je dan als ondernemer :-s Hahaha...
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

16/04/2014 14:18:55
Quote Anchor link
Maurice vB op 16/04/2014 11:49:13:
Overigens vind ik IS NULL netter staan in je query dan = "", maar dat is persoonlijk.

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
Execute:

> SELECT '' IS NULL AS waarofniet



+ --------------- +

| waarofniet      |

+ --------------- +

| 0               |

+ --------------- +

1 rows

Dan is er één of andere druiloor een formulier aan het verwerken:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$this
->db->set('product_price', (float) $post->getFieldValue('price'));
?>
 
P-ter AA

P-ter AA

16/04/2014 15:33:51
Quote Anchor link
Ward van der Put op 16/04/2014 13:53:26:
>> De prijs van een product bijvoorbeeld geef ik het type DECIMAL(6,2) en een default value van 0,00.

Dat is een goed voorbeeld van een lastige keuze: met 0.00 als standaardwaarde verlies je het onderscheid tussen producten waarvan de prijs nog niet bekend is en gratis producten. Om te voorkomen dat er per ongeluk producten cadeau worden gedaan, zou ik hier toch kiezen voor een nullable kolom en een DEFAULT NULL.


Klopt, ik wilde even snel een voorbeeld geven, maar je hebt inderdaad een punt. Ook in dit geval kun je beter NULL gebruiken. Bedankt voor de aanvulling!

@Ger van Steenderen: Als je de set method zo maakt dat hij rekening houdt met lege waardes, kan dat toch prima? Als het framework er maar op gemaakt is.
Gewijzigd op 16/04/2014 15:34:50 door P-ter AA
 



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.