Mixins og moduler
Brug moduler og mixins til at udvide klassers funktionalitet uden traditionel nedarvning
Mixins og moduler er en gratis Ruby Academy-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Ruby Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Ruby Academy-kurset indeholder 4 lektioner i alt.
Dele kode med moduler
Mixins og moduler
Moduler gør det muligt at organisere og genbruge kode uden traditionel nedarvning.
Mixins gør det muligt for flere klasser at dele funktionalitet uden at være direkte relaterede.
I denne lektion lærer du at bruge moduler og mixins i Ruby.

Definere et modul
Moduler defineres ved hjælp af nøgleordet module og kan ikke instantieres.
module Greetings
def say_hello
puts 'Hello!'
end
endInkludere et modul
Brug include til at tilføje modulets metoder som instansmetoder.
module Greetings
def say_hello
puts 'Hello!'
end
end
class Person
include Greetings
end
person1 = Person.new
person1.say_helloBruge extend
extend tilføjer modulets metoder som klassemetoder.
module Greetings
def say_hello
puts 'Hello!'
end
end
class Person
extend Greetings
end
Person.say_helloBruge flere moduler
En klasse kan inkludere flere moduler til forskellige funktioner.
module Walkable
def walk
puts 'Walking...'
end
end
module Talkable
def talk
puts 'Talking...'
end
end
class Person
include Walkable
include Talkable
end
person1 = Person.new
person1.walk
person1.talkBruge konstanter i moduler
Moduler kan gemme konstanter, der kan tilgås ved hjælp af ::.
module MathOperations
PI = 3.14
end
puts MathOperations::PIIndkapsle metoder i moduler
Moduler gør det muligt at definere hjælpemetoder, der kan bruges på tværs af forskellige klasser.
module Formatter
def format_text(text)
text.upcase
end
end
class Document
include Formatter
end
doc = Document.new
puts doc.format_text('hello')Bruge self i moduler
Metoder inde i et modul kan defineres ved hjælp af self, så de bliver direkte tilgængelige.
module Helper
def self.greet
puts 'Hello from a module!'
end
end
Helper.greetTillykke!
Du har lært at bruge mixins og moduler i Ruby.
Derefter skal du udforske arbejde med filer samt ind- og uddataoperationer.

Lær Ruby med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 29
- Lektioner
- 109
Ofte stillede spørgsmål
Er lektionen “Mixins og moduler” gratis?
Ja — alle 3 lektioner i læringssporet Ruby Academy, inklusive “Mixins og moduler”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Ruby Academy-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Mixins og moduler”?
Brug moduler og mixins til at udvide klassers funktionalitet uden traditionel nedarvning Du øver dig i Ruby Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på Ruby Academy?
Der kræves ingen tidligere erfaring. Ruby Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.
Hvor lang tid tager lektionen “Mixins og moduler”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne Ruby Academy-lektion?
Ja. Alle Ruby Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.