Domanda

sto iniziando un una nuova applicazione, e vuole concentrarsi sul rendere più modulare. Quello che voglio dire con questo è che è che nella mia testa mi immagino alcuni servizi di base collegarvi, ruoli utente, layout, ecc, ma poi sto cercando di essere in grado di essere in grado di aggiungere autosufficiente "pezzi" di funzionalità per esempio repository di documenti e caricare, diario e servizio di promemoria .. qualunque cosa.

Come ho layout di applicazioni finora è semplicemente tutto in radice, sottocartelle separate per le immagini e CFC, nel segno di convenzioni di denominazione per i nomi delle variabili e query ecc, tutta l'interazione del database tramite CFC, facendo tutta la mia trasformazione in cima della pagina, poi una riga di commento quindi visualizzare / layout di pagina inferiore a quello.

Ho provato e non è riuscito a ottenere la mia testa intorno ai vari quadri là fuori, ma ottengo solo paralizzato con indecisione e confuso circa se lo sto facendo "giusto". C'è un modo di lavorare che è un po 'l'accettazione di essere una metodologia utile senza ottenere per il tutto ufficiale "quadro"?

È stato utile?

Soluzione

Onestamente, i quadri può portare alla paralisi dell'analisi abbastanza facilmente. Si può facilmente pensare oltre le cose. Ecco ciò che si fa, fare cose semplici e basta sbattere via alla tastiera. Usa il "proprio" quadro. Potrebbe non essere abbastanza, ma si otterrà che alla fine e vedrete il motivo per cui esistono gli altri framework.

Ecco come iniziare:

Crea cartelle formati e visualizzazioni. Mettere tutte le cose il layout di pagina nelle cartelle layout (probabilmente dovrete solo pochi e forse anche un layout)! Mettere tutte le tue cose vista nella cartella viste (questo sarà probabilmente simile a quello che hai fatto con un gruppo gruppo di file non molto ben organizzato). La chiave è che non avrà alcun trattamento pagina "in alto della pagina" codice nei file di visualizzazione.

Il tuo index.cfm sarà la radice unica .cfm. Utilizzare una variabile URL "evento" = azione permetterà al vostro quadro.

Nel vostro index.cfm, utilizzare un cfswitch gigante per determinare quale "parte superiore della pagina" codice da eseguire (questo sarà un "controllore" gigante).

mysite.com/index.cfm?event=contactInfo

<cfswitch expression="#url.event#">
  <cfcase value="contactInfo">
    <top of page code>
    <cfset structLayoutInfo["pagetitle"] = "XYZ Contact Info" />
    <cfmodule template="/layouts/mainlayout.cfm" attributeCollection="#structLayoutInfo# >
      <cfinclude template="/views/contactInfo.cfm"/>
    </cfmodule>
   </cfcase>
  .....
</cfswitch>

Combinate questo con il tag cfmodule per caricare il layout. Quindi, tutte le vostre richieste di pagina sono disponibili attraverso index.cfm. Index.cfm farà tutto il top di roba pagina e poi fare un cfinclude alla visualizzazione appropriata nella cartella di vista. Utilizzare il tag cfmodule per caricare il layout (check out la roba modalità tag.execution per le intestazioni e piè di pagina).

Potrai continuare ad aggiungere funzionalità e l'aggiunta di funzionalità al vostro quadro. Probabilmente sposta il codice index.cfm in una cartella di controllo con un mazzo di CFC che chiamano i tuoi CFC database.

Altri suggerimenti

Poi probabilmente si desidera separare la parte di presentazione dal nucleo, per quanto possibile. Un buon modo popolare e per fare questo che è in ripresa velocità molto veloce seguendo l'MVC (Model-View-Controller) modello

http://en.wikipedia.org/ wiki / Modello% E2% 80% 93View% E2% 80% 93Controller

Questo vi permetterà di modulare le funzionalità in controllori che sono completamente separato dal layout, ecc I controllori possono più facilmente essere integrati in altri progetti come necessario.

So che hai detto che non volevamo quadro e certamente non hai bisogno di uno, ma ho il forte consiglio per applicazione più grande, come quello che si sta descrivendo. Alcuni possono avere così tante regole e che cosa non che sembrano ottenere nel modo molto. Uno che mi piace, che è basato su Ruby on Rails chiamato CFWheel (http://cfwheels.org/).

È praticamente lì per aiutarti a strutturare roba, siete liberi di seguire la via "normale" o meno non sarà davvero ti fermare. Dai un'occhiata alle screencast qui: http://cfwheels.org/screencasts

Modello Glue è un eccellente quadro CF. Il supporto di gruppo google + documenti sono grandi.

FW / 1 è un altro quadro più semplice per iniziare ad imparare, non sono sicuro circa la documentazione a questo punto.

quadri sono sicuramente la strada da percorrere. Una volta che ottenete la vostra testa intorno a loro, hanno appena sentono "a destra". Essi tendono a farti scrivere codice migliore, e dopo aver utilizzato un quadro ColdFusion per un anno o giù di lì ora, posso onestamente dire che non tornerò mai a non utilizzare un 8 -)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top