Ruby - Et si on écrivait un ORM ? - partie 8
Je continue le refactoring de SORM. Voici la classe Database dans son
état actuel:
require 'sqlite3'
module SORM
class Database
@@db = false
def self.connect(database_filename)
@@db = SQLite3::Database.open(database_filename)
end
def self.connected?
@@db ? true : false
end
def self.connection
@@db
end
end
# ...
endLa première chose que j’ai envie de faire, c’est de supprimer l’abbréviation
db. De plus, comme il s’agit plutôt d’établir une connexion, je change
pour connection:
class Database
@@connection = false
def self.connect(database_filename)
@@connection = SQLite3::Database.open(database_filename)
end
def self.connected?
@@connection ? true : false
end
def self.connection
@@connection
end
endÀ ce sujet, j’applique mes propres principes ;)
Ensuite je vais modifier l’implémentation de la méthode .connected?. Elle
va passer de:
def self.connected?
@@db ? true : false
endÀ quelque chose de plus expressif:
def self.connected?
!!@@connection
endJ’ai écris récemment un article sur le double bang si vous vous demandez ce que c’est ;)
La prochaine fois, on refactorera un peu plus la classe Base.
To be continued
À demain.
/ / / / / / / / / /
« Ruby - Et si on écrivait un ORM ? - partie 7 ---//---
Ruby - Et si on écrivait un ORM ? - partie 9 »