Enviar pesquisa
Carregar
使用Rails best practices做代码审查
•
Transferir como KEY, PDF
•
5 gostaram
•
979 visualizações
Richard Huang
Seguir
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 28
Baixar agora
Recomendados
NodeUkraine - Postgresql для хипстеров или почему ваш следующий проект должен...
NodeUkraine - Postgresql для хипстеров или почему ваш следующий проект должен...
DmitryChirkin1
自作コンパイラのお話
自作コンパイラのお話
秋 勇紀
TDC2016SP - Trilha Frameworks JavaScript
TDC2016SP - Trilha Frameworks JavaScript
tdc-globalcode
Ruby off Rails---rack, sinatra and sequel
Ruby off Rails---rack, sinatra and sequel
Jiang Wu
Coq to Rubyによる証明駆動開発@名古屋ruby会議02
Coq to Rubyによる証明駆動開発@名古屋ruby会議02
Hiroki Mizuno
Coqによる証明駆動開発
Coqによる証明駆動開発
Hiroki Mizuno
Objective-C Survives
Objective-C Survives
S Akai
From 0 to 60 in SPARQL in 50 Minutes
From 0 to 60 in SPARQL in 50 Minutes
ewg118
Recomendados
NodeUkraine - Postgresql для хипстеров или почему ваш следующий проект должен...
NodeUkraine - Postgresql для хипстеров или почему ваш следующий проект должен...
DmitryChirkin1
自作コンパイラのお話
自作コンパイラのお話
秋 勇紀
TDC2016SP - Trilha Frameworks JavaScript
TDC2016SP - Trilha Frameworks JavaScript
tdc-globalcode
Ruby off Rails---rack, sinatra and sequel
Ruby off Rails---rack, sinatra and sequel
Jiang Wu
Coq to Rubyによる証明駆動開発@名古屋ruby会議02
Coq to Rubyによる証明駆動開発@名古屋ruby会議02
Hiroki Mizuno
Coqによる証明駆動開発
Coqによる証明駆動開発
Hiroki Mizuno
Objective-C Survives
Objective-C Survives
S Akai
From 0 to 60 in SPARQL in 50 Minutes
From 0 to 60 in SPARQL in 50 Minutes
ewg118
Quiz de cultura italiana
Quiz de cultura italiana
rosaband
How-To: Federalize Your Resume
How-To: Federalize Your Resume
GovLoop
Topic Maps as a service
Topic Maps as a service
Arnim Bleier
WOMANIC VERSES
WOMANIC VERSES
Devcom Media
Feldspathoids
Feldspathoids
jo
Feedstuffs
Feedstuffs
SUNY Ulster
Articulation
Articulation
mel12589
Colors Of Fauve Paintings
Colors Of Fauve Paintings
G Bai
ECG: Fascicular VT
ECG: Fascicular VT
Stanley Medical College, Department of Medicine
Feasibility study
Feasibility study
Prof.Nilesh Magar
Fiebre
Fiebre
Kenia Felix
Colour fastness
Colour fastness
Rajeev Sharan
How DSL works on Ruby
How DSL works on Ruby
Hiroshi SHIBATA
How to Begin to Develop Ruby Core
How to Begin to Develop Ruby Core
Hiroshi SHIBATA
Kubernetes and AWS Lambda can play nicely together
Kubernetes and AWS Lambda can play nicely together
Edward Wilde
Solr Masterclass Bangkok, June 2014
Solr Masterclass Bangkok, June 2014
Alexandre Rafalovitch
JRuby, Ruby, Rails and You on the Cloud
JRuby, Ruby, Rails and You on the Cloud
Hiro Asari
The details of CI/CD environment for Ruby
The details of CI/CD environment for Ruby
Hiroshi SHIBATA
Enterprise search in Plone using Solr
Enterprise search in Plone using Solr
Calvin Hendryx-Parker
rubyonrails
rubyonrails
tutorialsruby
rubyonrails
rubyonrails
tutorialsruby
Strangers In The Night: Ruby, Rack y Sinatra - Herramientas potentes para con...
Strangers In The Night: Ruby, Rack y Sinatra - Herramientas potentes para con...
Alberto Perdomo
Mais conteúdo relacionado
Destaque
Quiz de cultura italiana
Quiz de cultura italiana
rosaband
How-To: Federalize Your Resume
How-To: Federalize Your Resume
GovLoop
Topic Maps as a service
Topic Maps as a service
Arnim Bleier
WOMANIC VERSES
WOMANIC VERSES
Devcom Media
Feldspathoids
Feldspathoids
jo
Feedstuffs
Feedstuffs
SUNY Ulster
Articulation
Articulation
mel12589
Colors Of Fauve Paintings
Colors Of Fauve Paintings
G Bai
ECG: Fascicular VT
ECG: Fascicular VT
Stanley Medical College, Department of Medicine
Feasibility study
Feasibility study
Prof.Nilesh Magar
Fiebre
Fiebre
Kenia Felix
Colour fastness
Colour fastness
Rajeev Sharan
Destaque
(12)
Quiz de cultura italiana
Quiz de cultura italiana
How-To: Federalize Your Resume
How-To: Federalize Your Resume
Topic Maps as a service
Topic Maps as a service
WOMANIC VERSES
WOMANIC VERSES
Feldspathoids
Feldspathoids
Feedstuffs
Feedstuffs
Articulation
Articulation
Colors Of Fauve Paintings
Colors Of Fauve Paintings
ECG: Fascicular VT
ECG: Fascicular VT
Feasibility study
Feasibility study
Fiebre
Fiebre
Colour fastness
Colour fastness
Semelhante a 使用Rails best practices做代码审查
How DSL works on Ruby
How DSL works on Ruby
Hiroshi SHIBATA
How to Begin to Develop Ruby Core
How to Begin to Develop Ruby Core
Hiroshi SHIBATA
Kubernetes and AWS Lambda can play nicely together
Kubernetes and AWS Lambda can play nicely together
Edward Wilde
Solr Masterclass Bangkok, June 2014
Solr Masterclass Bangkok, June 2014
Alexandre Rafalovitch
JRuby, Ruby, Rails and You on the Cloud
JRuby, Ruby, Rails and You on the Cloud
Hiro Asari
The details of CI/CD environment for Ruby
The details of CI/CD environment for Ruby
Hiroshi SHIBATA
Enterprise search in Plone using Solr
Enterprise search in Plone using Solr
Calvin Hendryx-Parker
rubyonrails
rubyonrails
tutorialsruby
rubyonrails
rubyonrails
tutorialsruby
Strangers In The Night: Ruby, Rack y Sinatra - Herramientas potentes para con...
Strangers In The Night: Ruby, Rack y Sinatra - Herramientas potentes para con...
Alberto Perdomo
Liquor, Liquid и другие безопасные языки разметки в RoR
Liquor, Liquid и другие безопасные языки разметки в RoR
Александр Ежов
Optimize perl5 code for perfomance freaks
Optimize perl5 code for perfomance freaks
karupanerura
Free The Enterprise With Ruby & Master Your Own Domain
Free The Enterprise With Ruby & Master Your Own Domain
Ken Collins
Scala in practice - 3 years later
Scala in practice - 3 years later
patforna
Scala in-practice-3-years by Patric Fornasier, Springr, presented at Pune Sca...
Scala in-practice-3-years by Patric Fornasier, Springr, presented at Pune Sca...
Thoughtworks
Polyglot Grails
Polyglot Grails
Marcin Gryszko
Gemification for Ruby 2.5/3.0
Gemification for Ruby 2.5/3.0
Hiroshi SHIBATA
Graphite
Graphite
Oleg Obleukhov
遇見 Ruby on Rails
遇見 Ruby on Rails
Wen-Tien Chang
Asynchronous single page applications without a line of HTML or Javascript, o...
Asynchronous single page applications without a line of HTML or Javascript, o...
Robert Schadek
Semelhante a 使用Rails best practices做代码审查
(20)
How DSL works on Ruby
How DSL works on Ruby
How to Begin to Develop Ruby Core
How to Begin to Develop Ruby Core
Kubernetes and AWS Lambda can play nicely together
Kubernetes and AWS Lambda can play nicely together
Solr Masterclass Bangkok, June 2014
Solr Masterclass Bangkok, June 2014
JRuby, Ruby, Rails and You on the Cloud
JRuby, Ruby, Rails and You on the Cloud
The details of CI/CD environment for Ruby
The details of CI/CD environment for Ruby
Enterprise search in Plone using Solr
Enterprise search in Plone using Solr
rubyonrails
rubyonrails
rubyonrails
rubyonrails
Strangers In The Night: Ruby, Rack y Sinatra - Herramientas potentes para con...
Strangers In The Night: Ruby, Rack y Sinatra - Herramientas potentes para con...
Liquor, Liquid и другие безопасные языки разметки в RoR
Liquor, Liquid и другие безопасные языки разметки в RoR
Optimize perl5 code for perfomance freaks
Optimize perl5 code for perfomance freaks
Free The Enterprise With Ruby & Master Your Own Domain
Free The Enterprise With Ruby & Master Your Own Domain
Scala in practice - 3 years later
Scala in practice - 3 years later
Scala in-practice-3-years by Patric Fornasier, Springr, presented at Pune Sca...
Scala in-practice-3-years by Patric Fornasier, Springr, presented at Pune Sca...
Polyglot Grails
Polyglot Grails
Gemification for Ruby 2.5/3.0
Gemification for Ruby 2.5/3.0
Graphite
Graphite
遇見 Ruby on Rails
遇見 Ruby on Rails
Asynchronous single page applications without a line of HTML or Javascript, o...
Asynchronous single page applications without a line of HTML or Javascript, o...
Mais de Richard Huang
Semi Automatic Code Review
Semi Automatic Code Review
Richard Huang
Rails project code review
Rails project code review
Richard Huang
rails_best practices_rubykaigi
rails_best practices_rubykaigi
Richard Huang
Rails bestpractices.com
Rails bestpractices.com
Richard Huang
Ruby application based on http
Ruby application based on http
Richard Huang
Css sprite best practices
Css sprite best practices
Richard Huang
Static Code Analysis For Ruby
Static Code Analysis For Ruby
Richard Huang
Email Contacts For Invitation
Email Contacts For Invitation
Richard Huang
Mais de Richard Huang
(8)
Semi Automatic Code Review
Semi Automatic Code Review
Rails project code review
Rails project code review
rails_best practices_rubykaigi
rails_best practices_rubykaigi
Rails bestpractices.com
Rails bestpractices.com
Ruby application based on http
Ruby application based on http
Css sprite best practices
Css sprite best practices
Static Code Analysis For Ruby
Static Code Analysis For Ruby
Email Contacts For Invitation
Email Contacts For Invitation
Último
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
LoriGlavin3
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
blackmambaettijean
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
HarshalMandlekar2
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
UiPathCommunity
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Manik S Magar
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
Nicole Novielli
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
Stephanie Beckett
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
hariprasad279825
Training state-of-the-art general text embedding
Training state-of-the-art general text embedding
Zilliz
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Alex Barbosa Coqueiro
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
Sergiu Bodiu
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Fwdays
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
Dilum Bandara
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Curtis Poe
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
MounikaPolabathina
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
Lonnie McRorey
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
LoriGlavin3
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
LoriGlavin3
How to write a Business Continuity Plan
How to write a Business Continuity Plan
Databarracks
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
BookNet Canada
Último
(20)
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
Training state-of-the-art general text embedding
Training state-of-the-art general text embedding
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
How to write a Business Continuity Plan
How to write a Business Continuity Plan
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
使用Rails best practices做代码审查
1.
rails_best_practices flyerhzm@gmail.com Proprietary and Confiden/al. © 2010 Aurora Feint.
1
2.
•
a.k.a Richard Huang • hDp://huangzhimin.com • hDp://twiDer.com/flyerhzm • hDp://github.com/flyerhzm • OpenFeint Proprietary and Confiden/al. © 2010 Aurora Feint. 2
3.
rails_best_practices gem •
rails • 24 • • Proprietary and Confiden/al. © 2010 Aurora Feint. 3
4.
rails-bestpractices.com •
• 63 • gem • gem Proprietary and Confiden/al. © 2010 Aurora Feint. 4
5.
rails_best_practices gem
Proprietary and Confiden/al. © 2010 Aurora Feint. 5
6.
Proprietary and Confiden/al. © 2010 Aurora Feint.
6
7.
rails • • •
Proprietary and Confiden/al. © 2010 Aurora Feint. 7
8.
Java • checkstyle
Proprietary and Confiden/al. © 2010 Aurora Feint. 8
9.
Ruby • Saikuro ‐ • Flog ‐ •
Flay ‐ • Reek ‐ code smell Proprietary and Confiden/al. © 2010 Aurora Feint. 9
10.
rails_best_practices gem •
rails check list Proprietary and Confiden/al. © 2010 Aurora Feint. 10
11.
rails_best_practices gem
Proprietary and Confiden/al. © 2010 Aurora Feint. 11
12.
rails_best_practice gem
Proprietary and Confiden/al. © 2010 Aurora Feint. 12
13.
rbp gem
sexp Proprietary and Confiden/al. © 2010 Aurora Feint.
14.
sexp
class Post < ActiveRecord::Base attr_accessor :editable end s(:class, :Post, s(:colon2, s(:const, :ActiveRecord), :Base), s(:scope, s(:call, nil, :attr_accessor, s(:arglist, s(:lit, :editable)) ) ) ) Proprietary and Confiden/al. © 2010 Aurora Feint. 14
15.
sexp
def test puts "hello world" end s(:defn, :test, s(:args), s(:scope, s(:block, s(:call, nil, :puts, s(:arglist, s(:str, "hello world")) ) ) ) ) Proprietary and Confiden/al. © 2010 Aurora Feint. 15
16.
if i >
10 puts "more than ten" else puts "less than or equal to ten" end s(:if, s(:call, s(:call, nil, :i, s(:arglist)), :>, s(:arglist, s(:lit, 10)) ), s(:call, nil, :puts, s(:arglist, s(:str, "more than ten")) ), s(:call, nil, :puts, s(:arglist, s(:str, "less than or equal to ten")) ) ) Proprietary and Confiden/al. © 2010 Aurora Feint. 16
17.
Play with sexp
ruby_parser Proprietary and Confiden/al. © 2010 Aurora Feint. 17
18.
•
• trailing white space • tab spaces Proprietary and Confiden/al. © 2010 Aurora Feint. 18
19.
(prepare) •
• models • model associa/ons • model aDributes • mailers Proprietary and Confiden/al. © 2010 Aurora Feint. 19
20.
(review) •
• use model virtual aDribute • use query aDribute • always add db index • ...... Proprietary and Confiden/al. © 2010 Aurora Feint. 20
21.
Demo Proprietary and Confiden/al. © 2010 Aurora Feint.
21
22.
• diaspora github
rails • rails_best_prac/ces diaspora Proprietary and Confiden/al. © 2010 Aurora Feint. 22
23.
• rails_best_prac/ces • rails_best_prac/ces ‐‐format html •
rails_best_prac/ces ‐f html ‐‐with‐textmate • rails_best_prac/ces ‐f html ‐‐with‐mvim Proprietary and Confiden/al. © 2010 Aurora Feint. 23
24.
• rails_best_prac/ces ‐g • mvim config/rails_best_prac/ces.yml
Proprietary and Confiden/al. © 2010 Aurora Feint. 24
25.
How to write your own check list?
Proprietary and Confiden/al. © 2010 Aurora Feint. 25
26.
• rails best prac/ces
hDp://rails‐bestprac/ces.com/ • rails_best_prac/ces hDps://github.com/flyerhzm/rails_best_prac/ces • rails_best_prac/ces hDp://rdoc.rails‐bestprac/ces.com/ 03/23/11 Proprietary and Confiden/al. © 2010 Aurora Feint. 26
27.
Proprietary and Confiden/al. © 2010 Aurora Feint.
27
28.
OpenFeint •
mobile game social network ( 7 ) • • • mailto: hr@openfeint.cn Proprietary and Confiden/al. © 2010 Aurora Feint. 28
Notas do Editor
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Baixar agora