Archief - Xml voor GUI

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

falc.be

Legacy Member
Voor alle duidelijkheid, .net is niet mijn hoofdjob. Ik gebruik C# op het werk voor interne tools om PLC en scada prgramma’s te genereren te maken.

Nu kom ik steeds meer en voorbeelden tegen waar xaml gebruikt wordt om de UI op te bouwen.

Maar: ik kan van geen kanten bedenken wat de voordelen er van zijn. Ik vind het absoluut niet handig om mee te werken (vooral de link tussen UI en code) en het komt meer over dat xml gebruikt wordt om het te kunnen gebruiken en modern te doen

Enlighten me plz :help:

Recipe4hate

Legacy Member
Gemakkelijker te configureren. Preciezer.
Imo ook overzichtelijker.

Als ik een website bouw ga ik ook niet gebruik make van een drag and drop editor, maar gebruik ik html en css (en razor :P)

Tyfius

Legacy Member
Het voordeel is dat je uw UI en uw code door verschillende mensen kunt laten doen.

Je kan daar zelf heel ver in gaan. Als programmeur maak je eerst de data context klassen, die je model bevatten en de ICommands die gebruikt worden om acties te triggeren, en een designer kan via Blend de hele WPF UI opbouwen zonder 1 letter code te moeten schrijnen of kennen. En als je dan straks beslist de UI aan te passen moet je niet in code liggen duiken.

Naar mijn ervaring werkt het ook een pak sneller. Althans, ik kan sneller en makkelijk een UI opbouwen via die xaml dan dat ik dat achterliggend allemaal hardcoded lig te doen.

Recipe4hate

Legacy Member
En natuurlijk is er ook het 'separation of concerns' gedeelte :)

Ebisoka

Legacy Member
Maar: ik kan van geen kanten bedenken wat de voordelen er van zijn.
Complexer
Geen RAD zoals in winforms (rapid application development)
Meer performance problemen
Veel onnodige blabla over best practices MVVM, oooh geen code behind
dus grotere learning curve

ah nee wacht, dat zijn allemaal nadelen :p

WinForms 4 Ever :love:

Recipe4hate

Legacy Member
Ebisoka zei:
Complexer
Geen RAD zoals in winforms (rapid application development)
AXML voor Android werkt imo sneller dan de designer te gebruiken.
De designer gaat nog steeds achter de schermen de XML markup genereren hoor...
Wanneer je cross-platform werkt, bestaan er genoeg frameworks om dit te plumben, zodat je in code voor meerdere platformen tegelijk kan schrijven. No way dat dit in de designer kan.
Rapid? Denk het niet!


Meer performance problemen
Waar haal je dit vandaan? Uwe 'form' wordt op krak dezelfde manier geparsed en ingeladen hoor...

Veel onnodige blabla over best practices MVVM, oooh geen code behind
dus grotere learning curve
Ah gij zijt zo ene.
Ik zou niet graag bij u in het team willen zitten ze...
Good luck om na 3 jaar uw oud project te gaan refactoren omdat een klant een module wil wijzigen...


ah nee wacht, dat zijn allemaal nadelen :p

WinForms 4 Ever :love:

Cycloon

Legacy Member
Eens je de leercurve genomen hebt en alles correct toepast dan wil je toch echt nooit meer terug naar GUIs programmeren in code :s

Over het algemeen levert xaml betere code op, omdat je verplicht bent om in een bepaald stramien te werken (wat sowieso in teamverband altijd één van de belangrijkste punten is).

Ebisoka

Legacy Member
Over het algemeen levert xaml betere code op, omdat je verplicht bent om in een bepaald stramien te werken
Bij bepaald stramien volgen denk ik aan hamburgers maken in de quick
Betere code, wat is "betere code" is consistente code betere code?

Uiteindelijk maakt het voor de klant niet uit als de onderliggende code consistent is of als alles via een bepaald stramien is opgelost
Wat belangrijk is is
Hoe goed is het eind-produkt in de ogen van de gebruiker
Hoeveel tijd heeft het gekost
Hoeveel tijd kost het om aanpassingen te maken in de toekomst

In de bepaalde context van wat gij moet maken voor de klant zullen bepaalde best practices of het aanleren van nieuwe technologieen
niet een beter produkt opleveren omdat men maar een beperkte tijd heeft

Good luck om na 3 jaar uw oud project te gaan refactoren omdat een klant een module wil wijzigen
Zeg heb ik nooit silverlight gebruikt :p

Demox

Legacy Member
Ebisoka zei:
Hoeveel tijd kost het om aanpassingen te maken in de toekomst
De consistentie van code en/of het volgen van een bepaald stramien heeft hier een rechtstreekse invloed op.

Voor de klant maakt het dus zeker wél uit: Hoe minder tijd het gaat kosten, hoe goedkoper voor hem/haar. Ik ben het dus absoluut niet eens met het volgende:
Ebisoka zei:
Uiteindelijk maakt het voor de klant niet uit als de onderliggende code consistent is of als alles via een bepaald stramien is opgelost

Cycloon

Legacy Member
Ebisoka zei:
Bij bepaald stramien volgen denk ik aan hamburgers maken in de quick

Code zou zo voorspelbaar en eenvoudig moeten worden zodat het aanvoelt als hamburgers maken in de quick. Dat is eigenlijk echt wel het punt.

Voor de rest van je argumentatie voelt het voor mij aan alsof je vaak éénmansprojectjes doet van hooguit enkele tientallen mandagen. Dan maakt het echt niet uit inderdaad wat je doet, als het maar werkt. Vanaf je naar grotere teams gaat (en groter kan al best vanaf 3-4 mensen) en projecten van verscheidene 100den mandagen, dan kom je er niet met "als het maar werkt". De enige manier om dan op lange termijn te kunnen slagen is om een consistente manier van programmeren toe te passen. En jammer genoeg zijn mensen vervelende wezens die vaak willen doen waar ze zich het best bij voelen, dus hoe meer een framework je verplicht om volgens een bepaalde manier te werken, hoe beter. Uiteindelijk leert iedereen het framework kennen en verloopt alles op een vlotte manier, op dat moment moet het aanvoelen als hamburgers in de quick maken, ja.

Programmeren is echt het eenvoudigste onderdeel van een groot project uitwerken.

Ebisoka

Legacy Member
De consistentie van code en/of het volgen van een bepaald stramien heeft hier een rechtstreekse invloed op.

Zal misschiens wat voorbeelden geven wanneer consistentie een probleem is, bedoel dus niet dat elke developer de dingen oplost zoals hij het graag ziet :)
Dus hou u vast voor een hoop gezaag :p

Stel dat we een WPF applicatie gaan maken

bv MVVM, no code behind, seperation of concerns, ge hebt dus echte No Code Behind puristen
Om in een complex project totaal geen code behind te hebben kost meer tijd, pragmatischer om het soms wel te doen
Allez dat zeggen de developers achter visual studio toch die met het hele MVVM gedoe zijn afgekomen :)

Stel dat we dan DDD gaan doen want welja we hebben domain logic :p
Dus we maken een hoop laagskes en interfacekes aan, als we dan een combo op het scherm zetten
en die moet gewoon gevuld worden zonder enige nood aan "domain logic" gaat die dan zoals de rest ook consistent door al die laagskes?
zoja --> anemic domain model, extra werk, extra kosten
(om maar een voorbeeld te geven project dat ik ken, om een combo toe te voegen op een form (dus enkel tonen) moeten 10 files aangepast worden)

We gebruiken een ORM
we moeten iets doen dat die ORM niet goed kan,
bv we moeten een vrij zware Batch-verwerking doen 10.000+ records die gesaved en gechecked moeten worden naar de database
We doen het consistent aan de rest -> minder goede performance
We doen het consistent en gebruiken het framework -> framework is er niet voor geschikt maar we zien dit als een 'extra uitdaging' -> extra tijd nodig om het goed te krijgen, niet zeker als het ooit goed komt
We gebruiken een stored procedure, niet consistent, maar duidelijk, en snel

Niets zo gemakkelijk om een hoop best practices te volgen en alles consistent te doen
Afhankelijk van de applicatie en de context weten wanneer het beter is om bepaalde dingen soms "niet consistent" op te lossen
of in te zien dat bepaalde "best practices" of "design patterns" niet genoeg meerwaarde gaan geven is juist de moeilijkheid

TheBud

Legacy Member
Maar allez. Wat een discussie is dit. Niemand zegt dat je verplicht om altijd voor alles een framework te liggen zoeken. Het is altijd een afweging. Maar je kan wel alleen maar de juiste afweging maken door alle techs mogelijkheden door en door te kennen en begrijpen zodat je idd weet waar je mee bezig bent.

Dit is net zoals dat een JavaScript ontwikkelaar zich afvraagt waarom je ooit typescript zou willen gebruiken

Verstuurd vanaf mijn HTC One mini 2 met Tapatalk
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan