Otteniamo un'immagine diversa quando leggiamo la pagina intera a cui sei collegato, e non solo il titolo.
program for the general case, and put the specifics somewhere else - outside the compiled code base.
Non abbiamo una base di codice compilata , il mio Ruby è interpretato . Non c'è alcun passo di ricompilazione, cambiare la configurazione è facile come cambiare il file sorgente e riavviare il programma.
There are several benefits to this approach:
- It forces you to decouple your design, which results in a more flexible and adaptable program.
Il framework RoR è già sufficientemente disaccoppiato.
- It forces you to create a more robust, abstract design by deferring details—deferring them all the way out of the program.
Parti dell'implementazione possono anche essere dettagli che dovrebbero essere rinviati dal programma principale. Nei linguaggi dinamici, semplicemente non c'è questa grande dicotomia tra codice e dati: il codice è solo un altro tipo di dati. Questo è stato dimostrato con grande successo dalle lingue Lisp e Ruby si distingue saldamente in questa tradizione Lispish attraverso il suo patrimonio Smalltalk.
- You can customize the application without recompiling it. You can also use this level of customization to provide easy work-arounds for critical bugs in live production systems.
Ancora una volta, nessuna ricompilazione è necessaria con Ruby (o altri linguaggi dinamici come Python o Perl). In effetti, possiamo eseguire il patch delle scimmie sul nuovo codice nel sistema mentre è ancora in esecuzione.
- Metadata can be expressed in a manner that's much closer to the problem domain than a general-purpose programming language might be (see Domain Languages).
La sintassi di Ruby è abbastanza flessibile da semplificare la metà di un DSL. In effetti, l'implementazione di Ruby ci fornisce un parser e un compilatore gratis, tutto ciò che dobbiamo fare è implementare la semantica.
- You may even be able to implement several different projects using the same application engine, but with different metadata.
Esattamente. Il framework RoR prende il codice specifico dell'applicazione dai tuoi file di configurazione. È facile scambiare questi file con un altro sito web.