Principiante di programmazione: opzioni per le interfacce di programma di piccole dimensioni? [chiuso]

-1

Sono uno sviluppatore di Rails da un anno a questa parte, e voglio davvero iniziare a immergermi in Ruby e nella pura programmazione senza usare un framework. Tuttavia ho problemi a concettualizzare piccoli programmi che posso costruire da solo. Immagino sia perché sono così abituato ad avere una GUI (il browser web) per interagire con le classi che scrivo che in realtà non capisco come interagire con le classi senza fare clic, andare su pagine diverse, ecc.

In termini di puro Ruby (senza Rails), ho solo costruito un gioco di blackjack che giochi attraverso la console digitando Y / N per colpire e restare. Mi piacerebbe sapere quali tipi di interfacce usi per i tuoi piccoli programmi? Sono tutti eseguiti una sola volta dalla console utilizzando qualcosa come ruby myclass.rb ? Ho la motivazione ma non so cosa farei dopo aver scritto alcune lezioni. Tutto quello che faccio è avere un file separato che richiede tutte le mie altre classi, istanziare le mie classi in questo modo:

myclass = MyClass.new
myclass.part = ClassPart.new(1,2,3)
myclass.do_something # puts "value of instance_variable = #{@instance_variable}"

E poi cosa? Il programma finisce. Non è interattivo Non fa molto Non mi vedo costruendo qualcosa di bello / potente come quello. Qualcuno può illuminarmi?

    
posta Edmund 20.12.2013 - 23:28
fonte

2 risposte

3

Ci sono molti modi in cui puoi eseguire un programma e fare 'qualcosa' (ovviamente). Dal momento che vieni da Rails una semplice alternativa sarebbe scrivere un servizio web che richiede pochi parametri e restituisce un semplice json. In questo modo potresti in qualche modo smettere di pensare a piccoli dettagli sul rendering e sulla visualizzazione dei risultati.

L'opzione successiva sarebbe quella di leggere del testo dalla riga di comando e semplicemente stampare il testo come risultato. Ci sono stati molti giochi di base di questo tipo negli anni '80. È ancora un bel modo per imparare quelle cose semplici.

O semplicemente risolvi alcuni dei problemi di Project Euler. Quelli normalmente richiedono uno script senza input speciali (alcuni dati letti dai file) e ottengono un singolo numero come risultato che si stampa sullo schermo. Molti codici Katas e simili piccole sfide di codice funzionano in questo modo.

Btw: anche nella vita reale spesso scrivi tali script. Gran parte del mio attuale progetto Rails sono vari script per l'importazione / esportazione e l'elaborazione dei dati. (Non è il tuo progetto Rails medio)

E poi c'è ovviamente l'opzione per andare a "GUI completa". Ci sono diversi toolkit e librerie per questo. Magari scrivi un gioco semplice o quello che vuoi.

    
risposta data 21.12.2013 - 00:02
fonte
1

Le classi sono entità piccole o non piccole, che implementano un insieme definito di funzioni. Quelle funzioni possono essere realizzate da uno o più set di metodi. Gli script prevalentemente ruby sono usati come applicazioni console, che ricordano l'applicazione linux come ls , true , ecc. E anche le applicazioni ruby possono essere eseguite da cron per eseguire lavori quotidiani, come backup o ecc., e puoi automatizzare alcuni di voi lavorando sul PC creando un'applicazione semplice che è possibile utilizzare manualmente o eseguendo da cron .

Di solito quell'applicazione ripudia un cosiddetto ruby gem e viene ricondiviso con la licenza open source. Elenco di gemme che puoi vedere su sito rubygems.org .

Ad esempio, puoi scrivere un'applicazione ...., quindi trasformarla in gem e pubblicarla. Descriverò i passaggi da fare da zero:

  1. Installa rvm .

  2. Installa alcune versioni di ruby, ad esempio qualsiasi revisione di Ruby 2.0.0:

    $ rvm install ruby-2.0.0
    
  3. Installa una gemma bundler :

    $ gem install bundler   
    
  4. Genera uno schizzo gem con bundler:

    $ bundle gem yourgem     $ cd yourgem

  5. Modifica .gemspec e Gemfile per soddisfare le tue esigenze.

  6. Installa tutte le gemme richieste :

    $ bundle install
    
  7. Definisci la tua classe nella cartella / lib della tua gemma:

    $ vim lib/yourgem.rb
    
  8. Definisci il tuo binario (se necessario) nella cartella / bin della tua gemma:

    $ vim bin/yourgembin.rb
    
  9. Modifica la versione della gemma:

    $ vim lib/yourgem/version.rb
    
  10. Rilascia la tua gemma con rake . pubblica la gemma in rubygems :

    $ rake release
    
  11. Ad esempio, installa la gemma per il tuo sistema:

    $ sudo gem install yourgem
    
  12. Usalo:

    $ yourgembin
    
  13. Se desideri contribuire alla community open source, puoi arricchire la tua fonte di gemma in github .

Inoltre non sei obbligato a soddisfare tutti i punti. è solo lo schizzo.

Naturalmente, se sei un principiante di ruby a shell, pensa non solo alla sintassi valida durante la scrittura del programma, ma rispondi anche all'usabilità e alla leggibilità della sintassi del tuo codice. Il buono stile che puoi trovare qui .

    
risposta data 21.12.2013 - 12:45
fonte

Leggi altre domande sui tag