Ultimamente mi sono guardato intorno, in particolare alcuni degli strumenti di MS disponibili, e sto notando una grande attenzione agli strumenti di progettazione e ai maghi. Non solo per lo sviluppo dell'interfaccia utente ma per tutto.
- Entity Framework ha il modellatore
- RIA Services dispone della procedura guidata di DomainService
- Il flusso di lavoro ha tutto il progettista del flusso di lavoro ... (Non lo so, non l'ho usato davvero)
C'è di più, ma penso che tu abbia l'idea. Ci sono molti strumenti di progettazione. Usando alcuni di questi trovo che:
Complicano le cose oltre i casi d'uso prescritti
(ovvero tutti i video dimostrativi tecnici)
Ho valutato alcune di queste tecnologie di recente, e provando a lavorare con loro finisco per dover analizzare esattamente ciò che i designer, i modellatori e i maghi stanno facendo per me ... altrimenti mi perdo quando devo davvero provare a fare qualcosa con qualunque cosa sia stata creata.
Questo finisce per essere un caso in cui devo combattere lo strumento o combattere la sua produzione in modo tale che avrei potuto fare tutto da solo senza di essa - e avere una comprensione molto più forte di ciò che sta succedendo. Lo trovo particolarmente esasperante con il designer Silverlight e la procedura guidata per i servizi di dominio dei servizi RIA.
Mi ritrovo a chiedere "A che serve questo strumento se devo capire i suoi meccanismi interni o riscrivere metà del suo output per usarlo?"
Non sono così veloci
Il punto di forza di questi strumenti è aumentare la produttività e questo punto può cambiare nel tempo usando lo strumento e non si applica necessariamente ai progettisti dell'interfaccia utente (sebbene, in alcuni casi, continui a farlo -> Sto guardando il tuo designer Silverlight) . Trovo che posso hackerare un po 'di codice molto più velocemente di quanto posso trascinare, ridimensionare, spostare, qualunque cosa in un designer.
L'interfaccia utente si frappone al modello
Forse sono solo io, ma quando sto usando qualcosa che ricorda uno strumento di progettazione UML finisco per passare più tempo a disporre tutto in modo che le mie linee non si incrociano e in modo da poter vedere tutto sullo schermo piuttosto che modellare ciò che sto cercando di raggiungere.
Non sono divertenti
La metà del motivo per cui codice per vivere è che mi diverto. Fare clic sulle caselle di controllo e selezionare le caselle combinate e quindi correggere tutto ciò che viene fuori non è divertente.
Non mi sembra di essere solo
La comunità sembra non voler nemmeno questi strumenti. Il miglior esempio che mi viene in mente al momento è Entity Framework Code-First.
Quindi chiedo:
- Gli strumenti di progettazione migliorano effettivamente la produttività?
- Sono assassini divertenti?
- La "comunità" sta effettivamente chiedendo più strumenti di progettazione o i venditori stanno solo pensando che siamo?