[oop] niet bestaande class

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Full stack .NET developer Microsoft 365

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

Developer Front-end

Functie omschrijving Front-end Developer gezocht! Wij zijn op zoek naar een front-end developer voor een organisatie in de regio Veenendaal die de eindverantwoordelijkheid op zich neemt van alles wat met design te maken heeft. Je hebt in deze functie een adviserende rol hiervoor moet je beschikken over een grote dosis vakinhoudelijke kennis. Je creëert unieke concepten door samen met collega’s en klanten te overleggen over aangeleverde designs. Hiermee draag jij je steentje bij aan de groeiambities van de klant. Jij wordt het vaste aanspreekpunt voor klanten wanneer het gaat over planningen, hierin is het jouw taak om alle betrokkenen goed

Bekijk vacature »

Applicatie Ontwikkelaar

Bedrijfsomschrijving DUO verzorgt als uitvoeringsorganisatie, zijnde onderdeel van het Ministerie van Onderwijs, Cultuur en Wetenschap de uitvoering van complexe wet- en regelgeving en heeft een uitgebreid dienstenpakket. DUO financiert en informeert onderwijsdeelnemers en onderwijsinstellingen. Voor verdere informatie zie www.duo.nl Functieomschrijving Wie zoeken we? Jij bent een enthousiaste, flexibele OPS’er die het leuk vindt om het bestaande examenlandschap te vernieuwen. Je bent leergierig en hebt interesse in cloud- en containertechnieken zoals OpenShift, Docker en Helm. Je gaat een uitdaging niet uit de weg en wil je nieuw opgedane kennis graag delen met de collega’s binnen en buiten het team. Doordat de

Bekijk vacature »

Front end developer binnen de consultancy

Functie Je komt in een team met ambitieuze developers die de passie voor Front-End met jou delen. Samen ga je aan de slag met leuke en leerzame opdrachten. Het team heeft een eigen budget en financiën en zij bepalen zelf hoe dat besteed en investeert wordt. Je gebruikt tools als JavaScript, Node.js, React, Angular, Typescript en Vue.js wanneer je werkt aan de opdrachten. Daarnaast zul je veel leren van je collega’s en gezamenlijk een leuke tijd doorbrengen tijdens activiteiten zoals wintersport, hackatons en conferentiebezoeken. Je krijgt niet alleen de mogelijkheid Front-End te ontwikkelen, maar ook vooral jezelf. Dit kan behaald

Bekijk vacature »

C#.NET developer

Functieomschrijving Wij zijn op zoek naar een gepassioneerde Full Stack C#.NET Software Developer. Als Software Developer ben je verantwoordelijk voor het ontwikkelen van webapplicaties, apps en dashboards voor de eigen IOT-oplossingen. Je werkt samen met andere ontwikkelaars en engineers om de sensoren in machines uit te lezen en deze data om te zetten in management informatie voor jullie klanten. Taken en verantwoordelijkheden: Testen en valideren van de ontwikkelde software. Ontwikkelen en onderhouden van webapplicaties, apps en dashboards voor de eigen IOT-oplossingen. Je gaat aan de slag met diverse technologieën en frameworks. Denk hierbij aan C#, JS frameworks, HTML, CSS, TypeScript,

Bekijk vacature »

Senior Developer ERP Dynamics 365

Samengevat: Deze werkgever is een softwarebedrijf. Ben jij een enthousiaste developer? Heb je ervaring met ERP of Dynamic 365 bussines central? Vaste baan: ERP Applicatie Specialist ERP MBO €3.600 - €5.200 Wij houden ons als bedrijf bezig met het leveren en implementeren van het Microsoft Dynamics pakket binnen verschillende industriële sectoren. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Binnen ons open team is er een no-nonsense cultuur. Daarnaast is er veel onderling contact door de korte communicatielijnen. Het team werkt enthousiast samen om een

Bekijk vacature »

C# .NET Software Ontwikkelaar

Functie omschrijving C# .NET Developer gezocht. Ben jij een full stack developer die op zoek is naar een nieuwe uitdaging binnen een leuk snel groeiend bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Developer met ervaring op het gebied van .NET die een organisatie in de regio Arnhem gaat versterken. Jij gaat je binnen dit bedrijf vooral bezighouden met het verbeteren van de functionaliteiten van hun dataplatform. Samen met andere ontwikkelaars denk je mee in oplossingsrichtingen, architectuur en nieuwe technologieën. Als C# .NET Developer binnen dit bedrijf houd je je niet alleen bezig met het verbeteren van

Bekijk vacature »

Front-End React Developer

As a Front-End React Developer you improve the user-experience of our web applications for your colleagues in Coolblue. How do I become a Front-End React Developer at Coolblue? As a Front-End React Developer you are responsible for developing user interface components and implementing them using React.js concepts and workflows. You work with the UX Designer and get energy from coming up with creative solutions and present these within the team. During the day you gather and welcome feedback on your technical and soft skills. Would you like to become a Front-End React Developer at Coolblue? Read below if the job

Bekijk vacature »

C# .NET Developer IoT SQL Server

Samengevat: Wij ontwikkelen innovatieve oplossingen om apparaten en bezittingen op een eenvoudige en flexibele manier te beveiligen. Ben jij een C# .NET developer? Heb jij ervaring met C# en SQL server? Vaste baan: C# .NET Developer IoT HBO €3.200 - €4.500 Deze werkgever is gespecialiseerd in hoogwaardige GSM/GPRS alarm- en telemetrietechnologie. Met een eigen productlijn en klantspecifieke ontwikkelingen biedt deze werkgever oplossingen om op afstand te meten, melden, loggen en aansturen, ook op plaatsen zonder stroomvoorziening. Onze producten worden gekarakteriseerd door flexibiliteit in de configuratie, betrouwbaarheid en een extreem laag stroomverbruik. Zij werken voor MKB klanten. Deze werkgever heeft veel

Bekijk vacature »

Java Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 12946 Introductie We are looking for a Java Developer! Our client is one of the most innovation companies located within the Netherlands. We provide high quality software in a high-tech and challenging market. Functieomschrijving The department is specialized in creating and developing high quality software for manufacturing automation in a high tech environment. We strive to provide our clients with high quality software and deliver state of the art solutions in a variety of ways. Creating software infrastructure using Java SE / EE Create applications to fine tune manufacturing processes

Bekijk vacature »

Full stack .NET developer Microsoft 365

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

Software Developer

Dit ga je doen Je bent verantwoordelijk voor de warehouse applicatie die een integratie heeft met de PLC laag; Je ontwikkelt in C#/.Net; Je werkt mee aan de migratie naar .NET 6; Je bent verantwoordelijk voor het ontwikkelen van interfaces en het visualiseren van componenten; Je denkt mee over het design voor business oplossingen; Je bent verantwoordelijk voor het testen van de gebouwde oplossing. Hier ga je werken Voor een internationale organisatie in de transport zijn wij momenteel op zoek naar een Software Developer. Zij zijn wereldwijd de grootste speler en lopen voorop met het automatiseren van alle processen van

Bekijk vacature »

Software Programmeur

Functie omschrijving Voor onze opdrachtgever in omgeving Rotterdam zijn wij opzoek naar een software programmeur die goed kan schrijven in de talen C of C++ en die het leuk vind om te werken met Linux! Werkzaamheden Programmeur Je bent bezig met het ontwikkelen van software en webapplicaties. Je kunt technische klussen uitvoeren op locatie. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een project goed verloopt. Je zult klanten ondersteunen. Verder zul je technische ontwerpen en gebruikersdocumentaties schrijven en deze onderhouden. Bedrijfsprofiel Dit bedrijf wil de klanten een volledige oplossing kunnen bieden, waarbij ze een

Bekijk vacature »

Fullstack Developer TOTO

Do you want to work with the latest technologies on the development of new systems and applications? Get moving and strengthen Nederlandse Loterij as a Fullstack Developer TOTO. Thanks to your efforts, complex business critical applications are always running smoothly. In this way, you directly contribute to a happy, healthy and sporty Netherlands. As a Fullstack Developer you score by: Taking ownership of the development cycle of an application in a large scale, high availability, geo redundant landscape Coaching your peer developers and safeguarding code quality Integrating the application with other components of the system using the available API’s Managing

Bekijk vacature »

3D BIM Add-on Developer

As a 3D BIM add- on developer at KUBUS, you will develop add-ons (called BCF- Managers) to the leading building information modeling (BIM) programs Revit, Navisworks, Archicad, AutoCAD and Tekla Structures. BCF Managers enable data transfer between BIM software and BIMcollab. You will work on both the front- and the back-end. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact in the market, but small enough that as an individual

Bekijk vacature »

Pagina: 1 2 volgende »

Ozzie PHP

Ozzie PHP

17/02/2014 19:48:03
Quote Anchor link
In navolging van mijn eerdere topic vandaag, ben ik tot de conclusie gekomen dat ik mijn vraag wellicht anders / breder moet stellen.

Stel ik wil een class Foo gebruiken:

$foo = new Foo();

Echter, om een of andere reden kan het bestand wat bij deze class hoort niet geladen worden (bijvoorbeeld omdat het niet bestaat). Kan ik de fout die hieruit volgt dan op de een of andere manier opvangen?
 
PHP hulp

PHP hulp

09/05/2024 01:44:17
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

17/02/2014 19:56:21
 
Ozzie PHP

Ozzie PHP

17/02/2014 20:08:32
Quote Anchor link
Ger, dankjewel. Wat voor error wordt er in zo'n situatie gegooid? Waar kan ik dat terugvinden?
 
Wouter J

Wouter J

17/02/2014 20:27:29
Quote Anchor link
In je script door het uit te voeren...
 
Ozzie PHP

Ozzie PHP

17/02/2014 20:32:55
Quote Anchor link
Oké, dan krijg ik een "PHP Fatal error". Hoe vang je die dan op?
 
Wouter J

Wouter J

17/02/2014 20:40:47
Quote Anchor link
"The following error types cannot be handled with a user defined function: E_ERROR, E_PARSE, E_CORE_ERROR, E_CORE_WARNING, E_COMPILE_ERROR, E_COMPILE_WARNING, and most of E_STRICT raised in the file where set_error_handler() is called."
Bron: http://www.php.net/manual/en/function.set-error-handler.php

ValueConstantDescription
1E_ERRORFatal run-time errors. These indicate errors that can not be recovered from, such as a memory allocation problem. Execution of the script is halted.
4E_PARSECompile-time parse errors. Parse errors should only be generated by the parser.
16E_CORE_ERRORFatal errors that occur during PHP's initial startup. This is like an E_ERROR, except it is generated by the core of PHP.
32E_CORE_WARNINGWarnings (non-fatal errors) that occur during PHP's initial startup. This is like an E_WARNING, except it is generated by the core of PHP.
64E_COMPILE_ERRORFatal compile-time errors. This is like an E_ERROR, except it is generated by the Zend Scripting Engine.
128E_COMPILE_WARNINGCompile-time warnings (non-fatal errors). This is like an E_WARNING, except it is generated by the Zend Scripting Engine.
2048E_STRICTEnable to have PHP suggest changes to your code which will ensure the best interoperability and forward compatibility of your code.

Bron: http://www.php.net/manual/en/errorfunc.constants.php

Gelukkig kunnen mensen altijd zo goed documentatie lezen...
Gewijzigd op 17/02/2014 20:43:35 door Wouter J
 
Ozzie PHP

Ozzie PHP

17/02/2014 20:45:46
Quote Anchor link
Rustig Wouter, relax... niet iedereen is zo technisch als jij. Niet gelijk zo cynisch worden. Is echt niet nodig.

Ik snap het eerlijk gezegd nog steeds niet. Ik dacht dat je een FATAL error niet kon opvangen? Maar kan dan dus wel???
 
Wouter J

Wouter J

17/02/2014 21:14:12
Quote Anchor link
"The following error types cannot be handled with a user defined function: E_ERROR"

"E_ERROR - Fatal run-time errors"

Hier is niks technisch aan... Gewoon domweg wat engels lezen en iets verder kijken en iets preciezer de doc lezen en iedereen kan hier makkelijk op komen.
 
Ozzie PHP

Ozzie PHP

17/02/2014 21:25:18
Quote Anchor link
Nee Wouter, verschillende mensen... verschillende interpretaties. Ik bedoel dit overigens niet lullig tegenover jou, maar jij bent veel technischer dan velen hier op het forum. Dat betekent dat je bepaalde dingen sneller doorziet en dat je sneller verbanden kunt leggen. Wees daar vooral blij om, en probeer andere mensen daarmee te helpen. Maar ga er niet vanuit dat andere mensen hetzelfde denken en kunnen als jij. Ieder mens heeft zijn/haar eigen kwaliteiten op diverse vlakken.

Dat gezegd hebbende... een PHP Fatal error is dus een run-time error? En die kan ik niet opvangen... dus anders gezegd, als er een object wordt aangemaakt dat niet vantevoren is geladen, klapt je applicatie er gewoon uit en daar is niks tegen te doen. Correct?
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

17/02/2014 21:46:58
Quote Anchor link
Leuk hé PHP?
Even buiten code fouten, de ene keer een catchable error en dan andere keer niet (bv als je bij je database connectie een niet bestaande host opgeeft, kan je dat afvangen met try ... catch)
 
Ozzie PHP

Ozzie PHP

17/02/2014 21:51:33
Quote Anchor link
>> Leuk hé PHP?

Nou :-/

>> de ene keer een catchable error en dan andere keer niet

Ja, in dit geval dus niet... dus vraag ik me af hoe je daar mee om moet gaan. Wat als jij een class aanroept, en om een of andere reden is het class bestand verdwenen. Hoe ga je daar dan mee om? De autoloader een exception laten gooien als het bestand niet bestaat? Ik zie niet echt een andere mogelijkheid :-s
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

17/02/2014 22:17:15
Quote Anchor link
Niet zo :s(ip), dat hoort bij programeren
 
Ozzie PHP

Ozzie PHP

17/02/2014 22:23:41
Quote Anchor link
Jawel, dat snap ik ook wel. Maar het is niet altijd leuk. Ik probeer een oplossing te vinden, maar niemand kan me helpen, terwijl het toch een probleem zou moeten zijn waar iedereen mee te maken heeft :(
 
Mar cel

Mar cel

17/02/2014 22:33:06
 
Ozzie PHP

Ozzie PHP

17/02/2014 22:44:27
Quote Anchor link
Hmmm, dankjewel voor het meedenken Marcel, maar als ik het goed begrijp kun je de error daarmee niet herstellen. Dus stel dat ik een module wil laden en daar ontbreekt een file, dan kan ik de rest van de pagina niet laden.

Volgens mij is de enige optie om in de autoloader te controleren of het bestand bestaat, en zo niet, dan een exception gooien. Maar waarom reageert er niemand op dit idee? Weten jullie het antwoord ook niet?
 
Wouter J

Wouter J

17/02/2014 22:54:30
Quote Anchor link
In jouw autoloader een exception gooien, en die 3rd party autoloader dan? Heeft die niks meer te zeggen? Het is geen verhaal met 2 kanten: file exists -> class bestaat, file not exists -> class bestaat niet.

En ga eerst eens na of je hele idee wel klopt. Je wilt je applicatie verlaten gaan als er een klasse niet bestaat? Hoe dan? Stel je Container klasse bestaat niet meer, hoe wil de applicatie verder gaan? Hetzelfde geldt voor zowat elke andere klasse die je opvraagt, je vraagt ze namelijk op omdat je ze nodig hebt...
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

17/02/2014 22:54:34
Quote Anchor link
Volgens mij heb je antwoord zelf al gegeven.
Kortom: Je moet een fatal error voorkomen.
 
Ozzie PHP

Ozzie PHP

17/02/2014 23:20:59
Quote Anchor link
>> In jouw autoloader een exception gooien, en die 3rd party autoloader dan? Heeft die niks meer te zeggen?

Je kent toch namespaces toe aan je autoloader? Op het moment dat een class-naam tot die betreffende namespace behoort, maar het bestand kan niet worden gevonden. Waarom kun je dan geen exception gooien?

>> Stel je Container klasse bestaat niet meer, hoe wil de applicatie verder gaan?

Klopt, ik kan me voorstellen dat je stopt als je container class niet bestaat. Maar probeer het even anders te zien. Stel ik heb op een homepage ergens een blokje "laatste nieuws" staan. Nu kan een bepaalde class van die module niet geladen worden. Moet ik dan de hele website platgooien? Want dat is wat jij nu toch zegt?
 
D Vivendi

D Vivendi

19/02/2014 13:12:26
Quote Anchor link
Als ik het goed begrijp heb je een autoload class zodat je in je code simpelweg iets als dit kan doen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$obj = new EenClass();


Je autoloader laadt die class dan voor je. Nu wil je weten hoe je de error kunt afvangen die je krijgt wanneer je autoloader de opgevraagde class niet kan vinden?

Je hebt daar een aantal opties voor. Je voorkeur hangt een beetje af van wat je precies wilt bereiken. Ik zou in elk geval niet aan "set_error_handler" sleutelen.

Dan is de enige manier om te checken of een class bestaat in je autoloader. Je zou bijvoorbeeld dit kunnen doen:

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
function __autoload($name) {
    if(class_exists($name)) {
        require_once($name);
    }
    else {
        throw new MissingException("Kan class $name niet vinden.");
    }
}

try {
    $obj = new EenClassDieNietBestaat();
} catch (Exception $e) {
    echo $e->getMessage(), "\n";
}


Je zou bijvoorbeeld ook een soort "Error" object kunnen vullen ipv met exceptions te werken.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
function __autoload($name) {
    if(class_exists($name)) {
        require_once($name);
    }
    else {
        Errors::Add ( "Kan class $name niet vinden." );
    }
}


Je kan dan bijvoorbeeld altijd nog de "Errors" class uitlezen in je views en daar de melding geven dat een module niet geladen kon worden. Of het wegschrijven naar een log file oid.


Denk alleen dat er wel meer problemen optreden wanneer een module niet gevonden wordt. Waarschijnlijk wordt kort daarna ook die class gebruikt om methods aan te roepen en properties uit te lezen. Maar ja, als er geen instance is gevonden krijgt je natuurlijk weer errors van: "Accessing property on non object" oid.

Dus bedenkt goed of je je applicatie wel echt door wilt laten gaan als een class niet gevonden kan worden. Vaak is dit niet zo'n handig idee.
Gewijzigd op 19/02/2014 13:13:26 door D Vivendi
 
Wouter J

Wouter J

19/02/2014 13:15:41
Quote Anchor link
Vivendi, het is beter om spl_autoload_register te gebruiken, aangezien die meerdere autoloaders chained.
 
D Vivendi

D Vivendi

19/02/2014 13:21:30
Quote Anchor link
Ja klopt, dat weet ik. Ik gebruikte __autoload meer als simpele illustratie. Maar inderdaad, de spl_autoload class hiervoor had misschien beter geweest om als voorbeeld te geven.
Gewijzigd op 19/02/2014 13:21:54 door D Vivendi
 

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.