waar exception gooien?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

IT-traineeship junior software ontwikkelaar

Zoek jij een stevige uitdaging en de mogelijkheid om veel nieuwe dingen te leren in een dynamisch vakgebied? Doe mee aan ons IT Professional Program en ontwikkel jezelf tot software engineer! Je begint met een opleidingstraject van ongeveer 4 maanden. Hierin ga je aan de slag met verschillende technieken die je op conceptueel niveau leert te overzien en interpreteren. Onderwerpen die aan bod komen zijn o.a. programmeren (Java/C#/Python), Object Oriëntatie, Databases, Webservices & webtechnologieën, Domain Driven Design en Continuous Integration/Continuous Delivery. Sommige van deze onderdelen sluit je af met een examen en bijbehorende certificering. Het opleidingstraject zelf sluit je af

Bekijk vacature »

IT-traineeship junior software developer

Zoek jij een stevige uitdaging en de mogelijkheid om veel nieuwe dingen te leren in een dynamisch vakgebied? Doe mee aan ons IT Professional Program en ontwikkel jezelf tot software engineer! Je begint met een opleidingstraject van ongeveer 4 maanden. Hierin ga je aan de slag met verschillende technieken die je op conceptueel niveau leert te overzien en interpreteren. Onderwerpen die aan bod komen zijn o.a. programmeren (Java/C#/Python), Object Oriëntatie, Databases, Webservices & webtechnologieën, Domain Driven Design en Continuous Integration/Continuous Delivery. Sommige van deze onderdelen sluit je af met een examen en bijbehorende certificering. Het opleidingstraject zelf sluit je af

Bekijk vacature »

Front-end Ontwikkelaar

Bedrijfsomschrijving Bij het accepteren van dit aanbod kom je terecht binnen een veelzijdige organisatie waar een goede sfeer hangt. Zij zijn gewend dagelijks met elkaar te lunchen en ruimte is voor een potje Mario. Als Front-end ontwikkelaar ga je je op projectbasis bezighouden met het ontwikkelen van content voor diverse opdrachtgevers. De projecten waar je aan gaat werken zullen verschillende qua omvang. Hierbij kan je rekening houden met een gemiddelde doorlooptijd van een half jaar, waarbij er meerdere projecten naast elkaar kunnen lopen. Naast ontwikkeling aan de Front-end ga je ook een rol spelen bij de ontwikkeling aan de back-end.

Bekijk vacature »

Full Stack Java Developer

Functieomschrijving Met jouw expertise zorg je als java developer voor de meest plezierige en efficiënte klant ervaring. Met jouw state-of-the-art-systemen verbeter je onze business en maak je echt impact! Want als je in ons tech team werkt, houd je jezelf en Nederland in beweging. Wij zijn continu bezig onze business en processen te optimaliseren, zodat we onze klanten en kandidaten meer gemak, snelheid en transparantie kunnen bieden. Impactvolle tech, daar doen we het voor. wat ga je doen? Met jouw slimme en gave oplossingen breng je mensen en werk dichter bij elkaar. Samen met jouw team uiteraard. Binnenstromende functionele vragen

Bekijk vacature »

Junior PHP Developer

Je maakt een vliegende start van je carrière door meteen mee te bouwen aan dingen zoals een optimaal werkende website aan de hand van je PHP kennis. Wat doe je als Junior PHP Developer bij Coolblue? Als Junior PHP Developer ben je meteen vanaf de start onderdeel van een development team. Je kijkt veel mee met collega’s en volgt trainingen om te groeien als Junior Developer. Op dat moment komt je wil om steeds te blijven leren naar boven. Daarnaast pak je in de sprints ook je eigen stories op om Coolblue iedere dag een beetje beter te kunnen maken.

Bekijk vacature »

IT-traineeship Low Code Developer

Vind jij het leuk om veel contact te hebben met een klant en je te verdiepen in een domein? Lijkt het je interessant om enerzijds met de klant mee te denken, maar tegelijkertijd ook zelf een bijdrage te leveren aan de implementatie van een IT oplossing? Wij zijn op zoek naar starters die aan de slag willen als low-code engineer. In deze functie bouw je aan applicaties met behulp van een low-code platform, zoals Outsystems, Blueriq, Mendix of Pega. Dergelijke platformen stellen je in staat om snel een werkende applicatie te ontwikkelen en zijn hierdoor heel geschikt voor maatwerk projecten.

Bekijk vacature »

Front-end Developer Vue.js Meewerkend voorman

Bedrijfsomschrijving Betreffende organisatie is gevestigd in de regio van Lelystad en is al ruim 20 jaar lang bedreven in het ontwikkelen en aanbieden van diverse communicatiemiddelen aan de consumentenmarkt. Hierin staan innovatie, optimale klantbeleving en een passie voor technologie centraal. Ruim 100 medewerkers staan dagelijks klaar om te zorgen voor een optimale klantbeleving en optimalisatie van het aanbod. Om diverse businessprocessen binnen de organisatie vloeiend te laten verlopen is software ontwikkeling van essentieel belang. Binnen de organisatie zijn drie scrumteams dagelijks bezig met het beheer en de doorontwikkeling van het applicatielandschap. Zij werken aan verschillende projecten om de beleving van

Bekijk vacature »

C# .NET Developer

Bedrijfsomschrijving Als .NET Developer kom je te werken in de regio van Lelystad bij een organisatie die met toonaangevende klanten uit heel Nederland samen werkt. De producten en diensten van de organisatie bereiken miljoenen Nederlanders. Hierbij komt een grote hoeveelheid informatie kijken en deze moet discreet en veilig verwerkt worden. De processen die hierbij horen worden door het IT team vormgegeven. De organisatie heeft ook een adviserende rol, omdat het de klantprocessen raakt en de markt constant in beweging is. Je werkt voor toonaangevende klanten, waaronder o.a. grote financiële dienstverleners, overheidsorganisaties, verzekeringsmaatschappijen en telecombedrijven. De organisatie wordt gekenmerkt als een

Bekijk vacature »

Sogyo zoekt medior software developer

Sogyo zoekt software engineers die klaar zijn voor de volgende stap! Heb jij de eerste stappen in je IT carrière gezet en ben je op zoek naar verdieping en verbreding van jouw kennis en vaardigheden in software engineering, lees dan verder! Sogyo biedt jou een traject waarin jouw ontwikkeling als software engineer centraal staat. Je start met een opleiding van 2 à 3 maanden op maat gemaakt naar jouw niveau en wensen. Belangrijk hierin is de combinatie van concepten, frameworks en tooling. De onderwerpen komen aan bod middels workshops, lectures, individuele opdrachten en een eindproject. Je krijgt een begeleider toegewezen

Bekijk vacature »

Medior Fullstack .NET developer maatwerk applicati

Bedrijfsomschrijving Deze informele organisatie heeft een brede klantenkring en ze staan erg goed bekend in de regio. Ze ontwikkelen maatwerkapplicaties voor klanten en onderhouden ze ook. Ze zijn Microsoft partner en je collega developers houden graag ook zelf de nieuwe technieken in de gaten. Ze hechten veel waarde aan het leveren van kwaliteit, ook als dit wat meer tijd in beslag neemt en dus minder winst oplevert. Het is hier fijn werken omdat er, naast een goede sfeer, ook een goede balans is tussen werk en privé. Functieomschrijving Je gaat in teamverband werken aan maatwerk applicaties voor een diversiteit aan

Bekijk vacature »

Application Developer Tech Lead

We’re Hiring! A UPS Application Developer Tech Lead *REMOTE WORK POSSIBLE FOR THIS ROLE As a Tech Lead Developer at UPS you work on delivering functionality for highly complex IT systems. You collaborate in agile teams and participate in emerging technologies and processes like CI/CD and DevOps to ensure that we meet our objectives effectively and efficiently. Your primary role is to perform full system life cycle activities, e.g. analysis, technical requirements, design, coding, testing and the implementation of software. Working in our Europe development center in Eindhoven means working in an international team with onsite people as well as

Bekijk vacature »

Angular Developer

Dit is de rol Hi, mijn naam is Marielle en ik neem je graag mee door deze vacature van Angular Developer bij Boels in Sittard! Ben jij de persoon die zorgt voor een ultieme online klantbeleving? Zowel via desktop, mobile en app? Dan is deze vacature waarschijnlijk geschikt voor jou! Boels pitstop Zet jij het Digital Solutions Team van Boels in Sittard op scherp? Als Angular Developerbouw je aan intuïtieve, goed werkende en gebruiksvriendelijke webpagina’s en apps. Wat onze klanten online zien, dat maak jij. Een hele verantwoordelijkheid, die je gelukkig niet alleen hoeft te dragen. Samen met je collega’s

Bekijk vacature »

.NET developer

Wil jij samen met gemotiveerde en slimme collega’s bouwen aan ons geavanceerde landschap in Azure? En vind je het ook nog eens leuk om jouw kennis te delen met junior- en medior devs? Dan heb je wellicht interesse in de positie van: Senior fullstack .NET developer voor ons kantoor in Alkmaar Over de positie: Bij SnelStart werken we in een AGILE-structuur om de productie meer focus en impact te geven. Met je collega’s kom je tot de beste resultaten door onderlinge discussie, goede refinement sessies, reviews en écht teamwork. Je hebt de vrijheid om de dingen te doen zoals jij

Bekijk vacature »

Software Developer / full-stack

Bedrijfsomschrijving Voor een organisatie binnen de zakelijke dienstverlening zijn wij op zoek naar een Software Developer met goede kennis van zowel Java als front-end technieken als Angular. Het betreft een organisatie bestaande uit ongeveer 100 mensen die klaar staan voor ruim twee duizend klanten. De organisatie staat bekend om het feit dat zij met hun kwalitatief goede dienst een van de snelste zijn. Dit valt op in de markt en dit bewerkstelligen zij door alles zoveel mogelijk te automatiseren. IT, en software development in het bijzonder, wordt als erg belangrijk gezien. Het complexe applicatie landschap is geheel maatwerk en geschreven

Bekijk vacature »

Senior C# Developer

You'll build modern applications for Coolblue back’s office. We have a lot of friends, and they crave well-structured data and user-friendly, task-focused applications. How do I become a Senior C# Developer at Coolblue? You regularly participate in brainstorm sessions about user experience, data, and task flow with the UX Designer, Product Owner, and Data Scientists in your team. Besides that you will create disconnected, highly congruent, and testable code that can easily be maintained and is future-proof. Want to become Senior C# Developer at Coolblue? Read below if the job suits you You enjoy doing this Working with various types

Bekijk vacature »
Ozzie PHP

Ozzie PHP

08/05/2014 12:19:34
Quote Anchor link
Ola peepz,

Puur uit nieuwsgierigheid... waar in een functie gooi jij je exception?

Vroeger deed ik dit:

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

public function foo() {
    if (isset($this->bar)) {
        return $this->bar;
    }

    throw Exception('bar not found');
}


?>

Ik koos voor deze aanpak omdat een "positief" if-statement sneller is dan een "negatief" if-statement. Ik deed het dus voor performance.

Tegenwoordig gebruik ik echter een "negatief" if-statement, en return ik de waarde pas aan het eind van de functie. Dan krijgen we dus dit:

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

public function foo() {
    if (!isset($this->bar)) {
        throw Exception('bar not found');    
    }

    return $this->bar;
}


?>

Voor mijn gevoel is dit een logischere, duidelijkere opbouw van de functie.

Toch zag ik eerder deze week iemand op het forum de eerste versie gebruiken, en dus vroeg ik me af welke versie jullie gebruiken. De eerste of de laatste?
Gewijzigd op 08/05/2014 15:17:40 door Ozzie PHP
 
PHP hulp

PHP hulp

11/04/2021 23:53:25
 
Snelle Jaap

Snelle Jaap

08/05/2014 14:43:03
Quote Anchor link
Ik doe het altijd met try catch.
 
Ozzie PHP

Ozzie PHP

08/05/2014 14:43:54
Quote Anchor link
Euh... dat is op dit voorbeeld toch niet van toepassing :-s
 
Dos Moonen

Dos Moonen

08/05/2014 15:11:26
Quote Anchor link
Dan had je het topic niet "waar foutafvanging" moeten noemen. Je wilt nu namelijk weten waar je de fout zou moeten gooien.

Precondities heb ik het liefst bovenaan. En op zo'n manier dat daar ook de foutmelding staat die bij de preconditie hoort. In dat geval dus bovenaan.

Postcondities zoals "deze methode mag nooit null returnen" komen dan waarschijnlijk wel weer onderaan.

Doe wat het meest leesbaar is. En aangezien smaken verschillen mag je zelf bepalen wat dat is. Zolang je maar argumenten kunt verzinnen en verdedigen.
Oh, en zoals bijna altijd: doe dit op een case by case basis.
Gewijzigd op 08/05/2014 15:16:41 door Dos Moonen
 
Ozzie PHP

Ozzie PHP

08/05/2014 15:19:34
Quote Anchor link
>> Dan had je het topic niet "waar foutafvanging" moeten noemen. Je wilt nu namelijk weten waar je de fout zou moeten gooien.

Fixed :)

>> Postcondities zoals "deze methode mag nooit null returnen" komen dan waarschijnlijk wel weer onderaan.

Hoe bedoel je dit? Wat versta je onder een "postconditie"?
 
Dos Moonen

Dos Moonen

08/05/2014 15:46:40
Quote Anchor link
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
18
19
20
21
22
23
24
25
26
27
28
package me.darsstar

import static java.util.Objects.requireNonNull;

...

    public SomeObject someMethod(String miauw, int offset, int length) {
        requireNonNull(miauw, "Violation of non-null contract for argument miauw");

        if (offset < 0 || offset >= miauw.length()) {
            throw new IllegalArgumentEception("Invalid offset");
        }

        if (length < 0 || length >= miauw.length() - offset) {
            throw new IllegalArgumentEception("Invalid length");
        }

        SomeObject value;

        ...

        value = injectedObject.someOtherMethod();

        ...

        // dit hier
        return requireNonNull(value, "Preventing violation of non-null contract for the return value");
    }
 
Ozzie PHP

Ozzie PHP

08/05/2014 15:52:37
Quote Anchor link
Ah oke... ik moet even goed kijken. Is dit javascript?

Maar je doet dus een controle in de return. Ik zou dan zelf voordat ik return kijken of ie niet null is.
 
Dos Moonen

Dos Moonen

08/05/2014 15:59:25
Quote Anchor link
Het is Java.

Dit doet het zelfde.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
        // dit hier
        requireNonNull(value, "Preventing violation of non-null contract for the return value");

        return value;
    }

Post condities zijn condities die waar moeten zijn aan het eind van de methode.
Objects.requireNonNull(Object, String) source code
 
Ozzie PHP

Ozzie PHP

08/05/2014 16:03:58
Quote Anchor link
Ah oke... als ik het goed begrijp is dat dus hetzelfde als dit?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if ($value === null) {
  throw Exception('you fool!');
}

return $value;
?>

Zo bedoel je?
 
- Pepijn  -

- Pepijn -

08/05/2014 16:25:47
Quote Anchor link
Zoals hierboven, gebruik ik..
Gewijzigd op 08/05/2014 16:25:59 door - Pepijn -
 



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.