Անցնել պարունակությանը

Մոդուլներ

Այս էջը վերաբերում է Eiger-ի մոդուլների սինտակսիսին և օգտագործմանը: Մոդուլները թույլ են տալիս կազմակերպել կոդը, նորից օգտագործել գործառույթները և պահպանել մաքուր նախագծային կառուցվածք: Այս ուղեցույցը կբացատրի, թե ինչպես ընդգրկել թե՛ կառուցվածքային, թե՛ օգտագործողի կողմից ստեղծված մոդուլները ձեր նախագծերում:

Ներածություն

Eiger-ի մոդուլները տրամադրում են կոդը առանձին ֆայլերի մեջ կափարելու հնարավորություն, որոնք կարելի է ներառել և կրկնօրինակել տարբեր մասերում նախագծի: Post-հարուցվածք բոլոր մոդուլները:

  • Կառուցվածքային: Տրամադրված են լեզվով և ընդգրկվում են առանց չակերտների
  • Օգտագործողի կողմից ստեղծված: Ստեղծված են օգտագործողի կողմից և ընդգրկվում են չակերտներով

Մոդուլների ներառում

Համալրված մոդուլը ձեր ֆայլում ներառելու համար օգտագործեք include հրահանգը, որը հետևում է մոդուլի անվանը:

Կառուցվածքային մոդուլներ

Կառուցվածքային մոդուլները ներառվում են առանց չակերտների: Այս մոդուլները տրամադրում են հաճախ օգտագործվող գործառույթներ:

include math ~ Սա ներառում է կառուցվածքային math մոդուլը

Օգտագործողի կողմից ստեղծված մոդուլներ

Օգտագործողի կողմից ստեղծված մոդուլները ներառվում են չակերտներով: Այս մոդուլները ստեղծվում են օգտագործողի կողմից և կարող են կազմակերպվել նախագծային պանակում:

include "mymodule.ei" ~ Սա ներառում է օգտագործողի կողմից ստեղծված mymodule.ei մոդուլը

Ներառված մոդուլների օգտագործում

Մոդուլը ներառելուց հետո կարող եք օգտագործել դրա գործառույթներն ու սահմանված դասերը կամ փոփոխականները: Օրինակ, եթե մոդուլը սահմանում է դաս կամ փոփոխական, կարող եք դրանք ուղղակիորեն օգտագործել ձեր կոդում:

include "mymodule.ei" ~ Այս մոդուլը պարունակում է dataclass Test-ի իրականացումը

emitln(Test.message) ~ Գործողություն կատարելով ներառված մոդուլի dataclass-ից մի հատկություն

Նմուշ նախագիծի կառուցվածք

Ահա մի օրինակ նախագծի կառուցվածքից, որը օգտագործում է մոդուլներ:

project/
│
├── main.ei
└── mymodule.ei

main.ei

~ սա մեկնաբանություն է
include math ~ չօգտագործեք չակերտներ կառուցվածքային մոդուլների համար
include "mymodule.ei" ~ օգտագործեք չակերտներ օգտագործողի կողմից ստեղծված մոդուլների համար

emitln(Test.message) ~ Օգտագործելով օգտագործողի կողմից ստեղծված մոդուլի dataclass Test-ի message փոփոխականը

mymodule.ei

emitln("իմ մոդուլը բեռնված է") ~ Սա կկատարվի մոդուլը ներառելու ժամանակ
                            ~ այսինքն՝ ծրագրի սկզբում

dataclass Test
    let message = "Բարեւ աշխարհ"
end