Domanda

Ruby ha degli strumenti simili a pylint per analizzare il codice sorgente per errori e semplici standard di codifica?

Sarebbe bello se potesse essere integrato con cruisecontrolrb per un'integrazione continua.

O tutti scrivono test così buoni da non aver bisogno di controllori del codice sorgente!

È stato utile?

Soluzione

Ho esaminato una serie di strumenti di Ruby disponibili qui

http://devver.wordpress.com/2008/10/10 / 03 / ruby-tools-carrellata /

la maggior parte degli strumenti sono stati citati da webmat, ma se vuoi maggiori informazioni vado abbastanza in profondità con esempi.

Consiglio vivamente anche di usare Metric-Fu che ti offre un'installazione on gem / plugin di 3 degli strumenti più popolari ed è costruito pensando all'integrazione cruisecontrolrb.

Il creatore ha un ottimo post che dovrebbe aiutarti a metterti in funzione in pochissimo tempo.

http: //jakescruggs.blogspot. COM / 2008/04 / dead-semplici-rails-metrics-con-metricfu.html

Di recente c'è stata molta attività negli strumenti di Ruby che penso sia un buon segno di un linguaggio in crescita e in maturità.

Altri suggerimenti

Dai un'occhiata:

  • su Ruby Inside, un articolo che presenta Towelie , Flay e Simian , tutti gli strumenti per trovare la duplicazione del codice
  • reek : a rilevatore di odore di codice per Ruby
  • Roodi : controlla lo stile del tuo codice Ruby
  • flog : un analizzatore della complessità del codice
  • rcov : ti darà un C0 (se ricordo bene) analisi della copertura del codice. Ma stai attento. La copertura al 100% è molto costosa e non significa un codice perfetto.
  • heckle : cambia il tuo codice in modi sottili ed esegue la tua suite di test per vedere se funziona esso. Brutale :-)

Poiché sono tutti strumenti da riga di comando, possono essere integrati semplicemente come attività cc.rb. Basta estrarre la tua regex skillz per scegliere la parte importante dell'output.

Ti consiglio di provarli prima a mano per vedere se giocano bene con la tua base di codice e se ti piacciono le informazioni che ti danno. Quando ne trovi alcuni che ti danno valore, trascorri del tempo a integrarli nel tuo cc.

Uno strumento dall'aspetto interessante recentemente aggiornato è Inferometro di design orientato agli oggetti di Ruby - roodi in breve. È alla v1.3.0, quindi immagino sia abbastanza maturo.

Non l'ho provato da solo, perché il mio codice è ovviamente già irreprensibile (hah).

Per quanto riguarda la copertura dei test (oh mio Dio, non ho provato neanche questo) rcov

Inoltre (guarda, proverò sicuramente alcuni di questi oggi. Uno almeno) potresti interessarti a dare un'occhiata a flog e flay per un altro controllo di stile e un cercatore di candidati per il refactoring.

Ci sono anche gli avvisi integrati che puoi abilitare con una rapida:

ruby -w

O impostando la variabile globale $ VERBOSE su true in qualsiasi momento.

Metriche del codice sul sito Web di Ruby Toolbox.

Rubocop è un analizzatore di codice statico ampiamente utilizzato.

Ho appena rilasciato Eccellente che implementa diversi controlli sul codice Ruby. Combina roodi, reek e flog e aggiunge anche alcuni controlli specifici di Rails:

gem sources -a http://gems.github.com
sudo gem install simplabs-excellent

Può essere utile ...

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