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.

  1. 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.

  1. Nomenclatura

2.1. Noms de Variables i Mètodes

  • Variables locals i mètodes: Utilitza snake_case per a noms de variables i mètodes.

    user_name = "John Doe"
    def calculate_total(price, tax)
      price + tax
    end
    
  • Variables de classe: Utilitza CamelCase per a noms de classes i mòduls.

    class UserAccount
    end
    
  • Constants: Utilitza SCREAMING_SNAKE_CASE per 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
    

  1. Indentació

  • Utilitza dos espais per a la indentació, no tabuladors.
    def example_method
      if condition
        do_something
      else
        do_something_else
      end
    end
    

  1. 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
    

  1. 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
    

  1. 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 =begin i =end per a comentaris de bloc.

    =begin
    Això és un comentari de bloc.
    Pot contenir múltiples línies.
    =end
    

  1. Estructura de Classes i Mòduls

  • Classes: Defineix una classe amb class i end.

    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 module i end.

    module Authentication
      def login(user)
        # codi per iniciar sessió
      end
    
      def logout(user)
        # codi per tancar sessió
      end
    end
    

  1. 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.display

Solució:

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.display

Exercici 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.

© Copyright 2024. Tots els drets reservats