Forskjeller mellom "Inkluder" og "Krev" i Ruby

Forskjeller mellom "Inkluder" og "Krev" i Ruby


Språkanalyse er en grunnleggende trinn i å lære noe nytt programmeringsspråk - selv en forholdsvis "enkle" språk som Ruby. En nærmere titt hjelper deg å se forskjellene mellom programelementer som til slutt bestemmer hvordan et Ruby-skript oppfører seg og senere, hvordan du bruker skriptet riktig. Mens "Inkluder" og "Krev" uttalelser kan virke ganske like ved første øyekast, avslører en nærmere titt viktige forskjeller. De to kan være lett forvirret, men spesielt hvis du er kjent med programmeringsspråk som definerer disse begrepene på ulike vilkår.

Identifikasjon

"Krev" gir Ruby en instruks om å importere klasse eller modul fil fra modulen bibliotek katalog, slik at du kan referere til og bruke koden i modulen i programmet. "Ta med" er et eksempel på en Ruby preprosessor-direktiv kalt en "mixin." I det, du refererer en modul og ved å gjøre det du integrerer modulen og alle eller noen av sine handlinger i klassen din definisjon. Ved hjelp av en mixin - i dette tilfellet, en "inkludere" - gjør at programmerer for å øke eller utvide funksjonaliteten til en klasse.

syntax

Syntaksen strukturen inkluderer og krever er like, men attributtet du føye til hver enkelt er forskjellig. Syntaksen strukturen i en inkluderer føyer modulnavnet attributt til "inkludere" direktiv og omslutter attributt i doble anførselstegn, for eksempel: inkludere ". Module" I en kreve uttalelse, føyer du filnavnet attributt uten å bruke anførselstegn. For eksempel: krever filnavn.

Lokasjon

En krever uttalelsen er en en-linje stående utsagn som er oftest satt inn like etter programmets åpnings banen fil direktiv. For eksempel, hvis du skriver og lagrer en metode som kalles "Week" til biblioteket og ønsker å bruke metoden i et annet program, tilsett krever uttalelse:

! / Usr / bin / ruby

krever "uke"

Selv om mindre vanlig, kan du også plassere en kreve uttalelse inni en "hvis" betinget statement. En inkludere er alltid en del av et større klassedefinisjon. Avhengig av hvordan du har tenkt å bruke metoden, kan du inkludere variabler fra metoden for å definere klassen enda lenger:

klasse Decade
inkluderer Week
no_of_yrs = 10
def no_of_months
setter Week :: FIRST_DAY
antall = 10 * 12
setter nummer
slutt

betraktninger

Forskjeller mellom "Inkluder" og "Krev" kan hjelpe deg å lage en robust og velfungerende Ruby skript. Forstå imidlertid at mens du bruker ofte de to sammen, dette er ikke alltid tilfelle. Når du oppretter en ny klasse og har tenkt å innlemme metoder fra en modul lagret i modulen biblioteket i den nye klassen, må du bruke begge. Hvis du oppretter og bruker metoden innenfor samme program, trenger du bare å "inkludere" det i klassen din definisjon.