MVC model

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Junior Software Developer

Functie omschrijving Wij zijn op zoek naar een Junior Software Developer .NET, C# voor een gaaf bedrijf in de omgeving van Utrecht! Sta jij aan het begin van je carrière en heb je net je HBO of WO-diploma in de richting van ICT of Techniek mogen ontvangen? En heb jij grote affiniteit met software development? Lees dan snel verder! Voor een opdrachtgever in de omgeving van Utrecht, zijn wij op zoek naar een Junior Software Developer. Werk jij graag aan verschillende projecten en ga je graag klanten op bezoek? Dan is dit de ideale functie voor jou! Binnen deze functie

Bekijk vacature »

Fullstack developer - medior

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie willen werken? Voor een mooi softwarebedrijf in omgeving Dordrecht zijn wij op zoek naar versterking voor op de afdeling Software Development! Als Fullstack developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Werkzaamheden Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met

Bekijk vacature »

C#.NET ontwikkelaar

Functieomschrijving Voor een gewaardeerde werkgever in regio Tilburg zijn wij op zoek naar een C#.NET ontwikkelaar. Je bent verantwoordelijk voor het ontwikkelen van dashboards, webapplicaties en apps voor de eigen IOT-oplossingen. Samen met een vooruitstrevend team van ontwikkelaars en engineers krijgen jullie de opdracht om de sensoren in de apparatuur te scannen en vervolgens de data om te zetten in belangrijke inzichten voor de klanten. Taken en verantwoordelijkheden: Heb jij ideeën over nieuwe technieken die jullie kunnen implementeren? Hier wordt echt naar je geluisterd en gekeken of jouw idee daadwerkelijk ingezet kan worden; Je gaat aan de slag met de

Bekijk vacature »

Senior Java developer

Dit ga je doen Jouw taken als Senior Java Developer zijn: Het maken van strategische keuzes omtrent de nieuwbouw van applicaties; Het maken van technische ontwerpen; Hands-on mee ontwikkelen met het team (met o.a. Java FX, JDBC, SQL, REST, Jax-RS, JSON, Maven, JUnit en Spring (boot)); Reviewen van code en feedback geven op collega developers; Analyseren en oplossen van bugs/incidenten door het onderlinge verband te kunnen leggen van verschillende losstaande systemen. Hier ga je werken Het bedrijf waar je als Senior Java Developer komt te werken staat internationaal bekend om het testen van bodemstructuren door middel van echotechnieken en beeldherkenning.

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 Applicatie ontwikkelaar Java

Bedrijfsomschrijving De IV- organisatie van de Belastingdienst is verantwoordelijk voor en verzorgt de ICT- voorzieningen. Het merendeel van de applicaties wordt op dit moment door de IV- organisatie zelf ontwikkeld, onderhouden en beheerd in het eigen data center. Naast de zorg voor continuïteit op de massale heffing- en inningsprocessen die plaatsvinden binnen een degelijke, stabiele omgeving, wordt er tevens volop gewerkt aan modernisering van het IV- landschap. Dit gebeurt deels intern door gebruik te maken van de expertise die intern aanwezig is, maar ook door het aantrekken van (kant-en-klaar) oplossingen en expertise uit de markt. Functieomschrijving We verwachten van je,

Bekijk vacature »

Back-end developer (Magento2)

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 back-end developer fungeer je als het verlengstuk van hun klanten. Technisch complexe zaken pak je met liefde op, en hierin werk je samen met o.a. front-end developers en designers. Klanten verwacht hierin kwaliteit van het hoogste niveau en een proactieve, meedenkende rol bij het maken van zowel technische als strategische keuzes. Ga

Bekijk vacature »

SQL developer

Functieomschrijving Voor een erkende werkgever in de omgeving van Tilburg zijn wij op zoek naar een ervaren SQL ontwikkelaar. Hier wordt jij mede verantwoordelijk voor zowel de design en implementatie van SQL-databases als voor het verstaan van de processen van klanten naar het vertalen van deze processen naar IT-oplossingen. Jouw takenpakket komt er als volgt uit te zien: Het ontwerpen en implementeren van databaseschema's: Je bent in staat om een database te ontwerpen en de structuur van tabellen, relaties, indexen en andere objecten te definiëren; Het schrijven van complexe SQL-query's: Je kunt complexe query's schrijven om gegevens uit de database

Bekijk vacature »

Software ontwikkelaar

Ben jij graag bezig met verschillende projecten? Vind jij beleving van klanten én medewerkers ook belangrijk? Wij zijn vanwege de doorontwikkeling van het applicatielandschap van onze opdrachtgever op zoek naar een fulltime software ontwikkelaar. Omschrijving Jij en jouw collega’s zijn verantwoordelijk voor de continuïteit en waarborging van het applicatielandschap. Om de processen vloeiend te laten verlopen is software ontwikkeling daarom van essentieel belang. Onze opdrachtgever doet dit voornamelijk zelf, met door hun eigen ontwikkelde applicaties. Dit betekent dat jij: functionele eisen vertaalt naar gebruiksvriendelijke software; tijdens SCRUM sessies advies geeft over het te bouwen ontwerp; nieuwe software ontwikkelt en het

Bekijk vacature »

Front-end developer wanted! (Angular, React, Vue.j

Functie Under the guidance of 3 account managers, one of whom will be your point of contact within your expertise, you will start working for various clients. He or she will help you find a suitable and challenging assignment. Naturally, they will take your situation, experience and (technical) ambitions into account. The assignments last one to two years on average. This allows you to really commit to a project and make an impact as a consultant. Besides the assignment, you will regularly meet your colleagues from the IT department to share knowledge or discuss new trends, for example. Master classes

Bekijk vacature »

Software programmeur

Functieomschrijving Voor een uitdagende werkgever in regio Breda zijn wij op zoek naar een Full Stack C#.NET programmeur. Je bent verantwoordelijk voor het ontwikkelen van apps, webapplicaties en dashboards voor de eigen IOT-oplossingen. Je werkt samen met andere developers en engineers om de sensoren in machines te scannen en vervolgens de data om te zetten in management informatie voor de klanten. Taken en verantwoordelijkheden: Je gaat aan de slag met de volgende technologieën en frameworks: C#, JS frameworks, HTML, TypeScript, SQL & C++, CSS. Geen ervaring met één van deze technologieën is dan ook geen enkel probleem! Deze werkgever biedt

Bekijk vacature »

Software Developer

Functie omschrijving Heb jij affiniteit met ICT en een WO diploma in de pocket? Dan ben je hier aan het juiste adres. Voor een opdrachtgever in Amsterdam zijn wij op zoek naar kandidaten die (enige) ervaring hebben met Java, Javascript, C of C++. Je zal door middel van trainingen worden opgeleid tot een volwaardige Software Developer. Er wordt tijdens de training natuurlijk veel aandacht besteedt aan de vaktechnische aspecten, maar er gaat ook veel aandacht uit naar jouw persoonlijke ontwikkeling. Bedrijfsprofiel Bij deze opdrachtgever in de omgeving van Amsterdam zoeken ze meerdere enthousiaste kandidaten die hun carrière willen starten met

Bekijk vacature »

Back-end developer

Dit ga je doen Development d.m.v. XQuery, JSON/XML en REST API's; Ontwikkelen aan een tof en complex zorgplatform; Koppelingen maken met de NoSQL database; Testen en documenteren van de ontwikkelde functionaliteiten; Samenwerking met andere front- en back-end ontwikkelaars. Hier ga je werken Voor een vooruitstrevende organisatie binnen de zorg in Den Haag zijn wij opzoek naar een Back-end Developer die ervaring heeft met o.a.XQuery en Vue.JS of daarin graag zou willen ontwikkelen. Je zal ontwikkelen aan een tof en complex zorgplatform en koppelingen maken met de NoSQL database. Ook het testen en documenteren van de ontwikkelde functionaliteiten behoort tot jouw

Bekijk vacature »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc 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

Bekijk vacature »

Node.js developer looking for a challenging consul

Functie Under the guidance of 3 account managers, one of whom will be your point of contact within your expertise, you will start working for various clients. He or she will help you find a suitable and challenging assignment. Naturally, they will take your situation, experience and (technical) ambitions into account. The assignments last one to two years on average. This allows you to really commit to a project and make an impact as a consultant. Besides the assignment, you will regularly meet your colleagues from the IT department to share knowledge or discuss new trends, for example. Master classes

Bekijk vacature »
Daan s

Daan s

14/04/2019 10:09:23
Quote Anchor link
Sinds ik gestart ben met het eigen MVC model te gaan gebruiken loop ik nog op een enkel ding vast. Dit heeft ongetwijfeld meer met het totaalplaatje te maken dan mijn actuele programmeer skills.

Wanneer ik ga kijken naar de OOP tutorial op phptuts (http://www.phptuts.nl/view/45/3/), welk gedeeltelijk op PHPhulp staat, dan staat er het volgende: `Elk zelfstandig naamwoord is een object`.

Stel we hebben de volgende mappen / bestanden

-> Views
Page.php
-> Models
PageModel.php
-> Controllers
PageController.php



De view spreekt voor zich. Alleen loop ik nu tegen het volgende probleem aan. Zoals hierboven gezegd heb ik het idee dat het Model (PageModel.php) voor een enkel object staat. Bijvoorbeeld één pagina met een titel en wat content.

Maar stel je wil een overzicht maken met verschillende pagina's (bijvoorbeeld een contactpagina, een linkpagina, et cetera). Hoe doe je dit dan?

Kun je dit uit een enkel model halen?
En is er een goed voorbeeld van de structuur (mappen + bestanden).
Gewijzigd op 14/04/2019 11:51:59 door Daan s
 
PHP hulp

PHP hulp

25/04/2024 16:22:10
 
Frank Nietbelangrijk

Frank Nietbelangrijk

14/04/2019 12:57:05
Quote Anchor link
De model fungeert als een laag tussen (de rest van) je applicatie en de database. Ik ben gewend -en dat hoeft niet perse een gouden regel te zijn- om een model aan te maken per tabel in de database. Dus stel je hebt in de database een tabel 'users' dan maak ik een UserModel welke ik vul met methods die ik nodig heb. Bijvoorbeeld de methods 'getAllUsers()' en 'getAdmins()' welke beiden een array met User objecten terug leveren. Wel ontstaan hierin overlappingen doordat sommige tabellen in de database 'keuzenlijstjes' zijn voor andere tabellen (bijv. een tabel provincies die alle provincies bevat en gebruikt wordt bij het aanmaken van een gebruiker). Ik ga dan geen ProvinceModel class maken maar integreer dit gewoon mee in de UserModel met een JOIN in de query.

Verder gebruik ik die UserModel class waar ik dat wil. In het login-systeem, in het berichten-systeem en als ik wil op iedere pagina.

Toevoeging op 14/04/2019 13:02:56:

Overigens heeft een goed framework natuurlijk een base model die in de belangrijkste behoeften voorziet zoals:

-findAll()
-findBy(array $criteria, array|null $orderBy = null, int|null $limit = null, int|null $offset = null)
-findOneBy(array $criteria, array $orderBy = [])
-count(array $criteria)

Toevoeging op 14/04/2019 13:06:02:

Enne.. eigen framework? reinventing the wheel?

Een stoomcursus Symfony of Laravel duurt minder lang ;-)
Gewijzigd op 14/04/2019 13:08:52 door Frank Nietbelangrijk
 
Ad Fundum

Ad Fundum

13/08/2023 11:02:51
Quote Anchor link
Natuurlijk helpt het om ook te kijken naar andere frameworks, maar het maken van een eigen framework kan ik ten zeerste aanraden, als je daar de tijd voor wilt nemen. Je moet er niet van uit gaan dat je framework meteen beter is dan wat er is. Maar je kunt er veel van leren, je houdt alles zelf in de hand en uiteindelijk kan je je eigen framework beter maken dan wat er al is.

Om te beginnen moet je je afvragen of jouw applicatie synchroon wordt of niet, dat scheelt heel veel refactoring achteraf. Kijk naar https://amphp.org voor meer informatie over aynchroon programmeren.
Bij twijfel, maak je je applicatie 'gewoon' multithreaded zoals dat standaard is in PHP.

Voordat je begint is het nodig om te snappen dat MVC gewoon niet werkt voor PHP applicaties. Veel mensen snappen het ook niet en dus lees je overal weer wat anders. Voor meer uitleg zie de serie 'Model-View-Confusion' van Tom Butler op https://r.je/views-are-not-templates . MVC was nooit bedoeld voor stateless programmeren wat PHP is.

Het helpt om te weten dat je vooral niet blind moet varen op wat mensen voorschrijven, ook al is het Google zelf. Neem bijvoorbeeld dependency injection. Dat werkt ook niet. Als je dat serieus zou willen doen dan moet je bijna elk object een database-verbindingsobject meegeven en andere objecten. Dat wordt uiteindelijk zo veel dat men dat ook is gaan automatiseren. Om de 'dependency injection hell' nog zo veel mogelijk te voorkomen, maar mooi is het niet.

Wanneer je verder bouwt aan je eigen framework kom je er achter dat Laravel ontzettend beperkt is (maar simpel genoeg voor veel dingetjes) en dat je het zelf beter kan. En dat Symfony het meest uitgebreide framework is, maar ontzettend traag vergeleken met maatwerk code. Reflection klinkt leuk maar kan je vanwege snelheid beter vermijden.

Wanneer je je een poos hebt verdiept in frameworks ontdek je dingen die werken, zoals bepaalde database objecten, schermwidgets, etc. en dingen die niet werken, zoals niet flexibele templates.
En wanneer je je hele framework hebt uitgewerkt kom je er achter dat er nieuwe technologie is waardoor je een betere UX krijgt met meer JavaScript, tot en met een PWA aan toe. Een site ter inspiratie: https://acko.net (geen PWA)
En als je uiteindelijk alles al een keer gezien hebt ga je over op WebAssembly.
Gewijzigd op 13/08/2023 11:05:45 door Ad Fundum
 
Ward van der Put
Moderator

Ward van der Put

16/08/2023 08:37:08
Quote Anchor link
MVC is inderdaad slecht geschikt als architectuur, maar wel bruikbaar als design pattern. Gebruik MVC liever niet als totaaloplossing, maar uitsluitend als deeloplossing.

In Patterns of Enterprise Application Architecture van Martin Fowler is MVC bijvoorbeeld slechts één van zeven web presentation patterns:

- Model View Controller
- Page Controller
- Front Controller
- Template View
- Transform View
- Two-Step View
- Application Controller

Voordat je definitief voor MVC kiest, moet je tot de conclusie zijn gekomen dat andere oplossingen voor jouw specifieke applicatie minder geschikt zijn.

Als je alleen een hamer hebt, ziet elk probleem eruit als een spijker...
 
Ad Fundum

Ad Fundum

19/08/2023 16:14:25
Quote Anchor link
Ben het niet helemaal met je eens op dit punt.
Als ik zoek naar 'consensus' op internet, is het wel dat PHP frameworks in meer of mindere mate MVC moeten zijn. Welke vergelijkingssite ik ook opentrek, ze hebben het allemaal over de MVC-architectuur van het raamwerk. Wikipedia over Web Frameworks: 'Most web frameworks are based on the model–view–controller (MVC) pattern'

Daarbij zijn er vele sites over design patterns. Het zijn er gewoon te veel. Dus voordat je überhaupt tot de conclusie kunt komen of het gekozen reeds bestaande design pattern wel het meest geschikt is voor jouw probleem, moet je al een guru zijn en alle andere patterns doorgronden.

In mijn ervaring is er eigenlijk geen enkele goede design pattern, daarom zijn er ook zo veel. Het is een bepaalde manier, een bepaalde stijl om een soort probleem op te lossen. Het is zeker nooit de enige manier om een probleem op te lossen. Daarom vergelijk ik design patterns ook wel met bouwstijlen. Uiteindelijk moet je programma aan eisen voldoen, zo van zo moet het werken. Maar hoe het dat doet, zal een klant niet uitmaken. Wil je liever pattern X dan Y? Ook best.
Maar voordat je daar achter bent moet je wel eerst ervaren hebben dat MVC, zoals meestal wordt geadverteerd binnen de PHP sector, gewoon een slecht idee is.
 
Aparicio Tello

Aparicio Tello

02/10/2023 08:50:21
Quote Anchor link
Ik denk dat het belangrijk is om het juiste ontwerppatroon te kiezen voor uw project. Als u een klein project ontwikkelt, kan MVC te complex zijn. In dat geval kunt u een eenvoudiger sjabloon gebruiken, zoals Model-View (MV).
 



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.