Sviluppa la GUI e la logica in una squadra nel modo giusto? [chiuso]

0

Sto pianificando di iniziare un piccolo progetto con un amico. Svilupperò la GUI utilizzando JavaFX nel pattern MVC e sarà responsabile del modello / della logica.

La mia domanda è: come possiamo ottenere uno sviluppo parallelo parallelo, come fanno le aziende? Dovremmo semplicemente scrivere un'interfaccia per il modello insieme, che specifichi di quale funzionalità avrò bisogno nel controller e che quindi dovrà implementare?

Thx in anticipo.

    
posta Benjoyo 10.12.2014 - 11:22
fonte

2 risposte

1

Alla tua domanda specifica in termini di codice: una buona idea sarebbe quella di utilizzare il modello di facciata per avere un unico punto di accesso al modello dai controllori, in modo da poter sempre chiamare la facciata e non dover pensare su come la sua logica modello affronterà la richiesta internamente, o quali classi userà. Inoltre, se MVC viene eseguito correttamente, il modello, la vista ei controller saranno scambiabili (come in, potresti sviluppare la vista / i controller in javaFX ma qualcun altro può semplicemente utilizzare lo stesso modello e scrivere visualizzazioni / attività Android per chiamare la logica). Ciò significa che non dovresti dirgli cosa fornire dal punto di vista del controller, ma dovresti fare in modo che il controller funzioni con ciò che fornisce il modello. Ovviamente, il modello deve fornire tutta la logica necessaria, ecco alcuni suggerimenti su come ottenere questo in generale.

Alla tua domanda in generale: se sei solo tu e un amico ci sono diverse cose che puoi fare per migliorare lo sviluppo. La comunicazione è importante qui, assicurati di aver predefinito ciò che vuoi creare e di discutere alcuni aspetti di come ciò potrebbe essere fatto.

Magari creare alcune storie di utenti ( link ) o creare un mockup della GUI (ognuno crea un mockup, o semplicemente crei uno) e discuterne. Questo ti farà sapere cosa è richiesto dal punto di vista dell'utente nella GUI, e vedrà come la tua GUI gestirà ciò e saprà quali dati dovranno essere forniti dal modello.

Inoltre puoi provare la programmazione della coppia, in modo da avere un'idea del codice della vista / del controller e di avere un'idea del codice del modello. Naturalmente non ti stai più sviluppando a parte, ma piuttosto su alcune parti. Ad ogni modo, visto che si tratta solo di un progetto a due persone e entrambi andate d'accordo, questa potrebbe essere un'esperienza divertente e arricchente.

Ad ogni modo, se incontri un problema in cui pensi "Frick, ho bisogno di questi dati ma la facciata non la espone" puoi semplicemente dirgli che hai bisogno di quel po 'di dati e lui può creare un metodo nel facciata che fornisce questo. A volte i requisiti cambiano o devi fare qualcosa a cui non hai pensato prima. Questo è lo sviluppo del software però ^^

    
risposta data 10.12.2014 - 12:52
fonte
0

Il modo migliore è quello di sviluppare i 2 aspetti in diversi processi e utilizzare una forma di IPC per comunicare tra i due. Svilupperà un processo "server" che deve definire un'API da utilizzare. (Non è necessario utilizzare il modello client-server come questo in modo da poterlo sviluppare in 2 diversi moduli collegati, ma aiuta a testare e aiuta anche a riutilizzare i componenti del server se si desidera modificare la GUI su un Web o un dispositivo mobile interfaccia invece)

In qualsiasi altra forma di fare ciò che vuoi - cioè 2 sviluppatori che scrivono codice in aree di interconnessione diverse, l'unico modo corretto è definire l'API a prescindere. Qualsiasi altro modo scenderà in una follia di sviluppi caotici in cui si rompe continuamente il codice degli altri.

Nota che l'API può evolversi continuamente, spesso in risposta alle tue esigenze, ma di solito è una buona idea iniziare con qualche forma di design in cui trovi una base da cui partire.

    
risposta data 10.12.2014 - 11:54
fonte

Leggi altre domande sui tag