En aquest tema, aprendrem sobre les millors pràctiques per escriure codi Ruby net, llegible i mantenible. Seguir un estil de codi consistent no només fa que el teu codi sigui més fàcil de llegir per altres desenvolupadors, sinó que també ajuda a evitar errors i millora la col·laboració en equips.
- Guia d'Estil de Ruby
La comunitat de Ruby ha desenvolupat una guia d'estil que cobreix les millors pràctiques per escriure codi Ruby. Aquesta guia és àmpliament acceptada i utilitzada per molts desenvolupadors Ruby. Pots trobar la guia completa a Ruby Style Guide.
- Nomenclatura
2.1. Noms de Variables i Mètodes
-
Variables locals i mètodes: Utilitza
snake_caseper a noms de variables i mètodes.user_name = "John Doe" def calculate_total(price, tax) price + tax end -
Variables de classe: Utilitza
CamelCaseper a noms de classes i mòduls.class UserAccount end -
Constants: Utilitza
SCREAMING_SNAKE_CASEper a constants.MAX_USERS = 100
2.2. Noms de Fitxers
- Els noms de fitxers han de seguir el format
snake_case.rb.user_account.rb
- Indentació
- Utilitza dos espais per a la indentació, no tabuladors.
def example_method if condition do_something else do_something_else end end
- Espais en Blanc
-
Espais al voltant dels operadors: Afegeix espais al voltant dels operadors.
total = price + tax -
Espais després de comes: Afegeix un espai després de cada coma.
def example_method(arg1, arg2, arg3) end -
Espais després de paraules clau: Afegeix un espai després de paraules clau com
if,while,def, etc.if condition do_something end
- Longitud de Línia
- Mantingues les línies de codi amb una longitud màxima de 80 caràcters. Si una línia és massa llarga, considera dividir-la en múltiples línies.
def example_method some_long_variable_name = "This is a very long string that exceeds the 80 character limit, so it should be split." another_variable = some_long_variable_name.split(" ") end
- Comentaris
-
Comentaris de línia: Utilitza
#per a comentaris de línia.# Això és un comentari de línia total = price + tax # Calcula el total -
Comentaris de bloc: Utilitza
=begini=endper a comentaris de bloc.=begin Això és un comentari de bloc. Pot contenir múltiples línies. =end
- Estructura de Classes i Mòduls
-
Classes: Defineix una classe amb
classiend.class User attr_accessor :name, :email def initialize(name, email) @name = name @.email = email end def display_info "#{name} - #{email}" end end -
Mòduls: Defineix un mòdul amb
moduleiend.module Authentication def login(user) # codi per iniciar sessió end def logout(user) # codi per tancar sessió end end
- Exercicis Pràctics
Exercici 1: Refactoritza el Codi
Refactoritza el següent codi per seguir les convencions d'estil de Ruby:
class person
def initialize(name,age)
@name=name
@age=age
end
def display
puts "Name:#{@name}, Age:#{@age}"
end
end
p=person.new("Alice",30)
p.displaySolució:
class Person
def initialize(name, age)
@name = name
@age = age
end
def display
puts "Name: #{@name}, Age: #{@age}"
end
end
p = Person.new("Alice", 30)
p.displayExercici 2: Escriu un Mètode Seguint les Convencions
Escriu un mètode anomenat calculate_area que prengui dos arguments length i width i retorni l'àrea d'un rectangle. Assegura't de seguir les convencions d'estil de Ruby.
Solució:
def calculate_area(length, width)
length * width
end
area = calculate_area(5, 10)
puts "The area is #{area}"Conclusió
Seguir les convencions d'estil de codi és essencial per escriure codi Ruby net, llegible i mantenible. En aquest tema, hem cobert les pràctiques recomanades per a la nomenclatura, la indentació, l'ús d'espais en blanc, la longitud de línia, els comentaris i l'estructura de classes i mòduls. Practica aquestes convencions en els teus projectes per millorar la qualitat del teu codi.
Curs de Programació en Ruby
Mòdul 1: Introducció a Ruby
Mòdul 2: Conceptes Bàsics de Ruby
Mòdul 3: Treballant amb Col·leccions
Mòdul 4: Programació Orientada a Objectes en Ruby
- Classes i Objectes
- Variables i Mètodes d'Instància
- Variables i Mètodes de Classe
- Herència
- Mòduls i Mixins
Mòdul 5: Conceptes Avançats de Ruby
- Blocs, Procs i Lambdas
- Metaprogramació
- Gestió d'Excepcions
- Entrada/Sortida de Fitxers
- Expressions Regulars
Mòdul 6: Introducció a Ruby on Rails
- Què és Ruby on Rails?
- Configuració de l'Entorn Rails
- Creació d'una Aplicació Simple en Rails
- Arquitectura MVC
- Rutes
Mòdul 7: Proves en Ruby
- Introducció a les Proves
- Proves Unitàries amb Minitest
- Desenvolupament Basat en Comportament amb RSpec
- Mocking i Stubbing
Mòdul 8: Millors Pràctiques en Ruby
- Estil de Codi i Convencions
- Refactorització
- Optimització del Rendiment
- Millors Pràctiques de Seguretat
