class maar 1x

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Embedded Developer C++

Functie omschrijving Ben jij op zoek naar een leuke uitdaging als Embedded Developer, zoek dan niet verder! Voor een leuke opdrachtgever in omgeving Rotterdam zijn wij op zoek naar een Embedded Developer die graag met Embedded Devices werkt. Je zult verantwoordelijk worden voor het ontwikkelen en onderhouden van diverse producten. Jouw specialisatie ligt op het vlak van software, hardware en back-end. Dit bedrijf is gespecialiseerd in het ontwerpen van software voor een unieke industrie. Wil jij betrokken worden bij een proces dat loopt van ontwikkeling tot installatie? Waarbij je bezig zult zijn met perfecte systemen die geleverd worden aan binnen

Bekijk vacature »

Randstad B.V.- Freelance Senior Fullstack Develope

Startdatum: 01.05.2023 Richttarief: € 75,00 - €85,00 Duur van de opdracht: 1 jaar Uren per week: 40 Werkmodel: Hybride, dinsdag en donderdag aanwezig op kantoor in Diemen en meer wanneer dit nodig is. Functieomschrijving: De ideale kandidaat gaat onderdeel uitmaken van een junior team binnen het foundation domein. Vanuit het foundation domein werkt dit team samen met andere foundation teams en teams uit het online domein (professionals B2B en B2C) voor het bouwen en integreren van HRM functionaliteiten (verlof en benefits) in de persoonlijke portal van Interim Professionals. Er is meer backend werk dan frontend, maar kandidaat moet beiden leuk

Bekijk vacature »

Python (Django) developer - Remote in The Netherla

Functie Together with your team, consisting of a senior, 2 mediors and one junior developer, you will work on their software in an Agile-based approach. You have an eye for quality, risk, and customer interest. Communication with your colleagues and, where necessary, with customers, plays an important role in achieving a successful result. As a person, you are smart, get things done, and are result-oriented. There is a lot of independence within the development team, apart from the stand-up (10:00 am) and occasional pair-programming sessions. Techniques they use include Python, Django, MySQL, Mercurial, Ubuntu Linux, Nginx. In terms of front-end

Bekijk vacature »

Java Ontwikkelaar

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

PHP developer (Laravel/Vue.js)

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 »

Senior Airport Developer ( System engineer)

De functie Nice to know (you) De nieuwe A-pier wordt de duurzaamste van Schiphol. Als deze af is ligt er 4000 vierkante meter zonnepanelen op het dak. En de toiletten? Die spoelen door met regenwater. we gaan ervoor: het creëren van de meest duurzame en hoogwaardige luchthavens ter wereld. een toekomstbestendig en duurzaam Schiphol. Daar werken we elke dag hard aan in team Development & Sustainability. Jij bent regisseur, expert én aanjager van de ontwikkeling van Schiphol. Connecting your world Hoe maak je de ambities en doelstellingen van Schiphol concreet in een project? De waarde voor Schiphol naar eisen die

Bekijk vacature »

Cloud Developer

Cloud Developers opgelet! Bij Luminis zijn ze opzoek naar jou. Lees de vacature en solliciteer direct. Luminis is een software- en technologiebedrijf met meerdere vestigingen. Vanuit deze vestigingen werken 200 professionals aan technisch hoogwaardige oplossingen voor klanten zoals KLM, Nike en Bol.com. Ook ontwikkelt Luminis eigen oplossingen op het gebied van cloud, Internet of Things, data intelligence, e-sports en e-learning. Luminis onderscheidt zich door aantoonbaar voorop te lopen in technologie en innovatie. Luminis heeft drie kernpunten die verankerd zitten in alles wat we doen: het omarmen van nieuwe technologie, meesterschap en kennis delen. Functiebeschrijving First things first! Het is belangrijk

Bekijk vacature »

Front-end developer E-Commere

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als front-end developer heb je een adviserende rol en sta je aan het eindpunt van alles wat met designs te maken heeft. Je overlegt met klanten en collega’s, en zet je in om ideeen om te zetten tot unieke concepten. Je bent het aanspreekpunt voor de klant en bewaakt tevens de planning. Eisen

Bekijk vacature »

Account Developer

Voor Bol.com zijn wij per direct op zoek naar een Account Developer voor 32-40 uur per week op het kantoor in Utrecht. Wil jij een directe bijdrage leveren door partners van de juiste data-inzichten te voorzien en via campagnes op nieuwe platformkansen en features te wijzen? Ben jij analytisch sterk en kun jij dit vertalen naar plannen en inspirerende gesprekken? Lees dan snel verder! wat bieden wij jou Salaris van €2400 - €2600 obv 40 uur Minimaal 6 maanden Werklocatie is Utrecht Werken bij bol.com wie ben jij Jij bent commercieel gedreven en weet altijd aan de juiste knoppen te

Bekijk vacature »

.NET developer

Functie Als .NET developer start jij in een development team met één Senior .NET developer en één junior .NET developer. Als team zijn jullie verantwoordelijk voor het schrijven van software voor onze toonaangevende Automatiseringssystemen. Jij gaat aan de slag met de onderhoud van de kernsoftware, ondersteund de software van derden door het gebruik van onze webservices en als team zijn jullie verantwoordelijk voor het ontwikkelen van onze backend oplossingen. Wij maken op dit moment veel gebruik van .NET met ASP.NET. Komend kwartaal gaan wij wel gedeeltelijk overstappen naar .NET Core. Verder werken wij ook met SOAP, REST, JSON, HTML5, CSS3

Bekijk vacature »

PHP Back-end Developer

Vacature details Vakgebied: Software/IT Opleiding: Starter Werklocatie: Nijmegen Vacature ID: 13633 Introductie OUr client develop websites, webshops, and digital environments that are used by many visitors daily. They are seeking an experienced PHP-Developer Back-end to join the team. If you're looking for a position where you can tackle challenging, innovative, and multidisciplinary ICT projects and make a difference, this vacancy might be for you! Functieomschrijving As a PHP developer, you'll develop websites and digital environments used by many visitors daily. You'll work as a back-end developer and want to continuously develop in this field. You can work independently and efficiently,

Bekijk vacature »

.NET developer

Functie Als .NET developer werk jij samen in een multidisciplinair ontwikkel team met 1-2 Senior .NET developers, twee front-end developers, Data Scientists en één UX designer. Als team werken jullie aan het ontwikkelen van een Cloud based applicatie en aan het stabieler maken van deze applicatie. Ook unit testing gaat erg belangrijk worden in jouw nieuwe functie. Samen met de Senior .NET ontwikkelaar wordt jij verantwoordelijk voor het ontwikkelen van de API. Jullie werken met veel data en incidenteel komen er ook data vraagstukken en zullen er wat queries gedraaid moeten worden. Dit betekend dat jij veel gaat werken met

Bekijk vacature »

Java Developer

Java Developers opgelet! Bij Luminis zijn ze opzoek naar jou. Lees de vacature en solliciteer direct. Luminis is een software- en technologiebedrijf met meerdere vestigingen. Vanuit deze vestigingen werken 200 professionals aan technisch hoogwaardige oplossingen voor klanten zoals KLM, Nike en Bol.com. Ook ontwikkelt Luminis eigen oplossingen op het gebied van cloud, Internet of Things, data intelligence, e-sports en e-learning. Luminis onderscheidt zich door aantoonbaar voorop te lopen in technologie en innovatie. Luminis heeft drie kernpunten die verankerd zitten in alles wat we doen: het omarmen van nieuwe technologie, meesterschap en kennis delen. Functiebeschrijving First things first! Het is belangrijk

Bekijk vacature »

Embedded Software Developer Games

Functie omschrijving Heb jij affiniteit met hardware en wil jij kleuren binnen een Qt framework? Spreek jij de talen C en of C ++? Dan ben ik wellicht opzoek naar jou! Voor een super gave opdrachtgever in omgeving Delft is er namelijk plek voor een nieuwe kracht! Dit bedrijf is gespecialiseerd in het ontwerpen van software voor een unieke game industrie. Wil jij betrokken worden bij een proces dat loopt van ontwikkeling tot installatie? Waarbij je bezig zult zijn met perfecte systemen die geleverd worden aan binnen en buitenland? Je zult in een team, samen met vier ontwikkelaars, de mooiste

Bekijk vacature »

.Net Front-end Ontwikkelaar

Wij zoeken een .Net Front-end Ontwikkelaar! Omschrijving Kun jij snel schakelen en ben je stressbestendig? Dan zoeken wij jou! Als .Net Front-end Ontwikkelaar help je mee aan de webapplicatie die over de hele wereld door allerlei bedrijven wordt gebruikt. Je werkt daarnaast mee aan nieuwe en verbeterde functionaliteiten en helpt met het oplossen van bugs. Over de opdrachtgever Je komt te werken in een ambitieus team dat zich blijft ontwikkelen. Dit is alle informatie die we nu kunnen delen over de werkplek. Als jij de .Net Front-end Ontwikkelaar bent voor deze job, vertellen we je snel nóg meer. Eisen Heb

Bekijk vacature »

Pagina: 1 2 volgende »

Ozzie PHP

Ozzie PHP

18/02/2012 02:11:08
Quote Anchor link
Hallo,

Ik heb een Application class met uitsluitend statische functies. In deze class wordt de complete applicatie opgebouwd. Van deze class mag geen instantie worden gemaakt (de applicatie moet immers maar 1x worden opgebouwd).

Hoe kan ik nu bereiken dat er van die class geen instantie wordt gemaakt? Ik heb er nu een abstract class van gemaakt met statische functies. Dit werkt wel, maar is dit de juiste manier? Of kan ik er beter een normale class van maken en dan een singleton implementeren?
 
PHP hulp

PHP hulp

20/04/2024 02:04:27
 
- Jim  -

- Jim -

18/02/2012 02:17:17
Quote Anchor link
Door de class zelf ook static te maken.

Ik vraag me wel af of je dit echt wilt... (sterker nog, lijkt me onverstandig...)
Bijv.: Een lijst met gebruikers, kan je geen class 'User' meer gebruiken, dus moet je weer alles met arrays gaan klooien.

Misschien is het een goed idee om eens een goed boek over OO te lezen, waarin ook voor- en nadelen van bijv. statics staan beschreven. Inheritance en Design by Contract komen dan waarschijnlijk ook langszij. Dit zijn een paar voorbeelden van belangrijke onderwerpen in OO.
 
Ozzie PHP

Ozzie PHP

18/02/2012 02:21:01
Quote Anchor link
Ik ga toevallig nu beginnen een hoofdstuk te lezen over OOP. Maar ik heb het nu dus over een Application class die de configuratie inlaadt, routes inlaadt en vervolgens een action en controller... dus in die class staan echt eenmalige zaken.

"Door de class zelf ook static te maken."

Hoe maak je een class static?

static class MijnClass ??
 
- Jim  -

- Jim -

18/02/2012 02:39:53
Quote Anchor link
http://nl.php.net/manual/en/language.oop5.static.php
(deze had je vast al wel gelezen.. toch????, zo niet, RTFM!!!)

Static Class ondersteund PHP dus blijkbaar niet.
Dan zal je iets moeten maken als een soort van SingleTon Constructor.
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
<?php
private $deEnigeInstantie;

public function someFactory() {
 if ($deEnigeInstantie == null)
 {

    $deEnigeInstantie = new ClassVanEnigeInstantie();
 }

 return $deEnigeInstantie;
}


?>


Zoiets, uit mn hoofd, garandeer dus ook niet dat het zo werkt.
Gewijzigd op 18/02/2012 02:40:42 door - Jim -
 

18/02/2012 10:04:13
Quote Anchor link
Code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
class MijnClass
{
    //Private zodat vanaf buiten niet aangeroepen mag worden
    private function __construct()
    {
        
    }

    private function __clone()
    {

    }
}


En een abstracte statische class? Ik mag aannemen dat je die dan ergens extend? Want een abstracte class kun je toch niet direct gebruiken?
 
Wouter J

Wouter J

18/02/2012 10:20:46
Quote Anchor link
@Dillen, van een abstract class kun je geen instance maken. Maar een class met allemaal static methods en properties is eigenlijk niet echt een class. Static properties zijn eigenlijk een soort global variabele en static methods zijn gewoon functies die een leuk classnaampje voor hun hebben. Eigenlijk is een class met allemaal static dingen geen echt class, maar gewoon een leuke verzameling global variabelen en functies.
Daarom kun je het ook gebruik als hij abstract is.

@Ozzie, ik zou er een singleton van maken. Meer informatie: http://php.net/language.oop5.patterns.php#language.oop5.patterns.singleton
Gewijzigd op 18/02/2012 11:36:13 door Wouter J
 

18/02/2012 10:51:38
Quote Anchor link
Wouter J op 18/02/2012 10:20:46:
@Dillen, van een abstract class kun je geen instance maken. Maar een class met allemaal static methods en properties is eigenlijk niet echt een class. Static properties zijn eigenlijk een soort global variabele en static methods zijn gewoon functies die een leuk classnaampje voor hun hebben. Eigenlijk is een class met allemaal static dingen geen echt class, maar gewoon een leuke verzameling global variabelen en functies.
Daarom kun je het ook gebruik als hij abstract is.


Dan snap ik het, bedankt ;)

Maar dan is ook gelijk je hele OOP structuur weg.. Dan kun je er inderdaad beter een Singleton van maken. Of zoals al gezegd een Factory class die je website aan maakt.

Of je maakt gebruik van Dependency Injection ligt er net even aan wat/hoe je het wil!
 
Wim E

Wim E

18/02/2012 12:07:57
Quote Anchor link
En hoe zie jij dat voor je met de Dependency Injection? Betekent dat ik bij het instantieren van mijn klasse altijd een klasse moet meegeven.

Mijn voorkeur gaat voor de singleton pattern. Maar ga zeker de afwegingen maken om dit te gebruiken, kan in later stadium misschien in 1x heel onhandig worden :)
 
Niels K

Niels K

18/02/2012 12:23:00
Quote Anchor link
Volgens mij zoekt Ozzie gewoon het Front controller pattern.
Gewijzigd op 18/02/2012 12:24:12 door Niels K
 
Kees Schepers

kees Schepers

18/02/2012 12:25:18
Quote Anchor link
Haha Niels je haalt echt de woorden uit mijn mond. Toen ik Ozzie zijn vraag/bedoeling las dacht 'Jij bent gewoon op zoek naar het FrontController pattern' haha
 
Niels K

Niels K

18/02/2012 12:26:17
Quote Anchor link
Haha :-) Dat is de laatste tijd wel vaker voorgekomen ;-) Mooi dat we iig op één lijn zitten.
 

18/02/2012 12:27:11
Quote Anchor link
Kun je dan niet sowieso beter een Framework gebruiken als je begint met een Application class en daarna over gaat op een frontcontroller pattern?

Als je het steeds blijft uitbreiden bedoel ik =P
Gewijzigd op 18/02/2012 12:27:30 door
 
Niels K

Niels K

18/02/2012 12:28:33
Quote Anchor link
We hebben Ozzie al een keer Zend Framework aangeraden ;-)

Daarnaast is een Application class niet erg (mits je deze goed implementeert) maar dat was op dit moment niet het oplossing van zijn probleem.
 
Ozzie PHP

Ozzie PHP

18/02/2012 15:57:50
Quote Anchor link
Ik heb even een voorbeeldje van een frontcontroller bekeken en feitelijk lijkt dit wel op mijn Application class. Mijn application class voert alle benodigde handelingen voor een pagina request uit. Dus bijv. de settings worden ingeladen, de route wordt naar een router gestuurd die de juiste action en controller teruggeeft. En uiteindelijk wordt de pagina dan opgebouwd. Alleen ik noem het dus geen frontcontroller maar een Application. Maar... wat mijn vraag dus was / is... die Application die mag per pagina request maar 1x worden gebruikt. Immers je gaat niet tijdens 1 pagina request je pagina 2x opbouwen. Hoe kan ik voorkomen dat er meerdere instanties van de Application worden gemaakt? Ik wil dus dat die Application class slechts 1x gebruikt kan worden en daarna niet meer. Nou zo kwam ik er dus bij om de functies statisch te maken en de class abstract, zodat je niet kunt zeggen $application = new Application. Maar wellicht kan ik ook gewoon afvangen of de class al eens gebruikt is en als iemand de class opnieuw aanroept een Exception throwen? Bijv. zoiets?

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

static private $application_started = false;

  public function __construct()
    if (self::$application_started) {
      // gooi een Exception "De applicatie is al gestart!"
    }
    self::$application_started = true;
    // voer overige code uit
  }

}

?>


$application = new Application(); // dit gaat goed

$application2 = new Application(); // dit gaat fout, er wordt eeen Exception gegooid.

Of je zou ook alleen statische functies kunnen gebruiken, waarbij je de class wel abstract maakt (zodat je geen nieuwe instantie kunt aanmaken) en dat je dan de "start" functie public maakt en alle andere functies private en dat je dan in de start functie weer een check uitvoert. Dus hetzelfde principe als het vorige voorbeeld, maar dan met statische functies en een abstracte class, zodat de Application niet opnieuw kan worden aangemaakt. Zoiets:

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

static private $application_started = false;

  static public function start()
    if (self::$application_started) {
      // gooi een Exception "De applicatie is al gestart!"
    }
    self::$application_started = true;
    // voer overige code uit
  }

}

?>


Wat is de beste manier?
Gewijzigd op 18/02/2012 15:58:42 door Ozzie PHP
 
Wouter J

Wouter J

18/02/2012 16:06:53
Quote Anchor link
Die laatste is niet goed, dat is doormiddel van een trick omgaan met het abstract keyword en dat lijkt me niet goed.

Ik zou de eerste gebruiken, als zou ik wel een LogicException gebruiken, of misschien wel een BadMethodCallException of een eigen exception maken.
 
Ozzie PHP

Ozzie PHP

18/02/2012 16:13:54
Quote Anchor link
Oké,dan ga ik voor de 1e optie. Ik heb besloten om alleen Exceptions te throwen als er iets mis gaat waardoor de applicatie moet stoppen. Ik heb een eigen Exception class. Nu nog heel simpel, maar die ga ik nog uitbreiden. Als er iets fout gaat als een bezoeker de site bezoekt dan toon ik een nette melding en mail ik de melding naar mezelf. Als er iets fout gaat in ontwikkel mode dan zie ik de foutmelding op m'n scherm.
 
Wouter J

Wouter J

18/02/2012 16:19:14
Quote Anchor link
Alleen exceptions? Dan haal je toch het hele nut van exceptions weg, namelijk dat je mooi verschillende lagen exceptions weg kunt zetten, zodat je die apart kunt opvangen?

Offtopic:
En een fout mailen ben ik niet zo'n voorstander van. Stel dat je 100 bezoekers per dag hebt en er zit een fout op in de Home controller. Dan krijg je dus 100 mailtjes, nog niet meegerekend dat mensen de pagina gaan refreshen.
 
Ozzie PHP

Ozzie PHP

18/02/2012 16:24:45
Quote Anchor link
Wouter, ik zou op dit moment niet weten waarom ik meerdere types nodig heb. Maar omdat ik zelf een class heb gemaakt, kan ik (eventueel als dat nodig mocht zijn) een type meegeven en aan de hand daarvan bepaalde handelingen doen. Maar ik gebruik exceptions alleen in situaties waarin de applicatie moet stoppen. Voor verkeerde invoer van gebruikers in invoervelden ga ik bijv. gewoon ifjes gebruiken. Is een persoonlijke keuze.

Dat van die mail is overigens wel een goede. Maar je moet toch weten dat er iets fout gaat? Je zou in je database kunnen bijhouden of een bepaalde melding al verstuurd is... maar als je database het niet doet gaat dat niet werken. Je zou eventueel in een bestandje kunnen bijhouden of de melding verstuurd is, maar wellicht zijn er nog betere oplossingen? Hoe dan ook, als er iets op de site fout gaat dan lijkt het me toch dat je een mailtje moet ontvangen...
 
Wouter J

Wouter J

18/02/2012 16:30:21
Quote Anchor link
Ik zou de bestanden loggen in een bestandje. Dat kan je via function.error-log doen, maar je kan ook een mooie log class maken (zie het topic 'logging clas opbouwen' en dan het antwoord van Jelmer).

In de log class kan je dan controleren of de laatste regel dezelfde fout is en als dat niet zo is kun je een mailtje sturen.
Fouten moet je altijd loggen in bestanden en niet in een db. Verder zou ik op het admin panel de mogelijkheid maken tot het uitlezen van deze log bestanden.
 
Ozzie PHP

Ozzie PHP

18/02/2012 16:43:31
Quote Anchor link
Heb je een link naar dat topic? De zoekfunctie laat me weer in de steek...
 
Wouter J

Wouter J

18/02/2012 16:46:42
Quote Anchor link
Die heb ik je vast al een keer gegeven, hij staat namelijk in het lijstje TopOO topics, maar hier is ie: http://www.phphulp.nl/php/forum/topic/de-opbouw-van-een-logging-class/81508/#577390
 

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.