b5cb367e32
Strings are XHTML compliant
183 lines
16 KiB
HTML
183 lines
16 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||
<head>
|
||
<title>Moodle Docs: Developers Manual</title>
|
||
<link rel="stylesheet" href="docstyles.css" type="text/css" />
|
||
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
|
||
</head>
|
||
<body>
|
||
<h1>Інструкцыя карыстальніка</h1>
|
||
<blockquote>
|
||
<p>Гэты дакумент часткова апісвае структуру Moodle, а таксама спосаб, якім вы можаце ўключыць яго ў сваё развіццё.</p>
|
||
<p>На гэты момант ён не вельмі імпануючы. Але з цягам часу павінна з’явіцца лепшая дакументацыя!</p>
|
||
<p>Змест:</p>
|
||
<ol>
|
||
<li><a href="#architecture">Архітэктура Moodle</a></li>
|
||
<li><a href="#contribute">Як яго можна ўключыць у сваё развіццё</a> </li>
|
||
<ul>
|
||
<li><a href="#activities">Складнікі курсаў</a></li>
|
||
<li><a href="#themes">Тэмы</a></li>
|
||
<li><a href="#languages">Мовы</a></li>
|
||
<li><a href="#database">Схемы для баз дадзеных</a></li>
|
||
<li><a href="#courseformats">Фарматы курсаў</a></li>
|
||
<li><a href="#doc">Дакументацыя і артыкулы</a></li>
|
||
<li><a href="#bugs">Пошук памылак</a></li>
|
||
</ul>
|
||
</ol>
|
||
</blockquote>
|
||
<h2><a name="architecture"></a>1. Архітэктура Moodle</h2>
|
||
<blockquote>
|
||
<p>З пункту гледжання адміністратара, платформа Moodle была створана згодна з наступнымі крытэрыямі :</p>
|
||
<ol>
|
||
<li><strong>Moodle павінен спрыяць запуску найбольшай колькасці платформ</strong><br />
|
||
<br />
|
||
Платформа сецевых аплікацый, якая найлепш паддаецца пераносу - гэта PHP злучаная з MySQL. Менавіта ў гэтым асяроддзі быў створаны Moodle (пад Linuks, Windows, а таксама Mac OS X). Дзеля падтрымкі базаў дадзеных Moodle карыстаецца бібліятэкай ADOdb. Гэта азначае, што Moodle здольны выкарыстоўваць <a href="http://php.weblogs.com/ADOdb_manual#drivers">больш чым дзесяць розных відаў баз дадзеных.</a> (на жаль Moodle не здольны пакуль што <em><strong>ствараць табель</strong></em> ва ўсіх гэтых базах дадзеных. Больш падрабязную інфармацыю вы знойдзеце у наступнай частцы гэтага падручніка) <br />
|
||
</li>
|
||
<li><strong>Moodle павінен быць простым пры ладаванні, асвойванні абслугоўвання i мадыфікацыі</strong><br />
|
||
<br />
|
||
Раннія прататыпы Moodle (1999) былі створаны з дапамогай <a target=_top href="http://www.zope.org/">Zope</a> - высокаўзроўневага, арыентаванага на аб'екты сэрвера сецевых аплікацыяў. На жаль, аказалася, што паміма самой па сабе файнай тэхналогіі, яе цяжка было засвоіць і яна была недастаткова гнуткай з пункту гледжання адміністравання. З другога боку, да скрыптавай мовы PHP можна вельмі лёгка прызвычаіцца (асабліва, калі вы ўжо займаліся праграмаваннем з выкарыстаннем скрыптавых моваў). Я вырашыў адносна хутка, што не буду ўжываць праектавання, якое арыентавана на прафесіяналаў-праграмістаў, зноў жа дзеля таго, каб цэлае засталося лёгкім і зразумелым для пачаткоўцаў. Паўторнае выкарыстанне коду (code reuse) дасягаецца дзякуючы сістэме бібліятэк з ясна акрэсленымі функцыямі і сцісла вызначаным месцазнаходжаннем файлаў са скрыптамі. Мова PHP таксама нескладаная пры закладцы і настолькі ж даступная, бо большасць сэрвераў прапануе яе як стандарт.
|
||
<br />
|
||
</li>
|
||
<li><strong>Пераходы да чарговых версій Moodle павінны быць нескладанымі</strong><br />
|
||
<br />
|
||
Платформа Moodle уключае інфармацыю пра свае версіі (таксама як і пра версіі знешніх модуляў). У яе ўбудаваны механізм, які дазваляе Moodle правільна актуалізаваць самыя новыя версіі (напрыклад, Moodle мае магчымасць змяніць назвы табліцаў або дадаць новыя палі да ўжо існуючых). Калі напрыклад вы карыстаецеся CVS у Юніксе, то дастаткова толькі даць каманду "cvs update -d", a затым выйсці на галоўную старонку сэрвісу каб закончыць працэс актуалізацыі.<br />
|
||
</li>
|
||
<li><strong>Moodle павінен мець модульную пабудову, каб мець магчымасць разбудовы сістэмы.</strong><br />
|
||
<br />
|
||
Moodle мае шэраг мадуляцыйных функцый, такіх як тэмы, змест курсаў, моваў абалонак праграмы, схемы баз дадзеных і фарматы курсаў. . Гэта дазваляе дадаваць новыя функцыі да галоўнага коду, або нават асобна іх размяркоўваць. На гэту тэму вы зможаце атрымаць больш інфармацыі далей.<br />
|
||
</li>
|
||
<li><strong>Павінна існаваць магчымасць карыстання Moodle разам з іншымі сістэмамі</strong><br />
|
||
<br />
|
||
Moodle трымае ўсе файлы дадзенага курса ў звычайным каталогу на сэрверы. Гэта дазваляе адміністратару сістэмы зрабіць іх даступнымі на файлавым узроўні кожнаму настаўніку, напрыклад праз Appletalk, SMB, NFS, FTP, WebDAV і д.п.. Модулі верагоднасці дазваляюць Moodle карыстацца LDAP, ІMAP, POP3, NNTP, або іншымі базамі дадзеных як крыніцай інфармацыі аб карыстальніках. У будучыні Moodle збіраецца мець магчымасць імпартаваць і экспартаваць дадзеныя пры дапамозе фарматаў, якія абапіраюцца на XML (у тым ліку ІMS і SCORM), а таксама павышаную магчымасць карыстання ўзорамі фарматавання абалонкі (дзякуючы гэтаму стане лягчэй інтэграваць Moodle з іншымі старонкамі WWW)<br />
|
||
</li>
|
||
</ol>
|
||
</blockquote>
|
||
<h2><a name="contribute" id="contribute"></a>2. Як можна уключыць Moodle у сваё развіццё</h2>
|
||
<blockquote>
|
||
<p> Як ужо гаварылася вышэй, Moodle утрымлівае шэраг функцый, якія маюць модульную пабудову. Нават калі вы не праграміст, існуюць такія сферы, у якіх вы можаце сабе дапамагчы.</p>
|
||
<h3><a name="activities" id="activities"></a>Складнікі курсаў</h3>
|
||
<blockquote>
|
||
<p>Гэта на самай справе найбольш істотныя модулі. Яны размешчаны ў каталогу 'mod'. Існуе сем асноўных модуляў гэтага тыпу : заданне, выбар, форум, дзённік, тэст, запас, а таксама анкета. Кожны з гэтых модуляў уключае асобны падкаталог, у які ўключаны неабходныя элементы (плюс дадатковыя скрыпты, тыповыя толькі для дадзенага модуля) : </p>
|
||
<ul>
|
||
<li>mod.html: служыць для змяшчэння або актуалізацыі інстанцыі дадзенага модулю</li>
|
||
<li>version.php: акрэслівае інфармацыю (meta-іnfo) і робіць магчымым выкарыстанне</li>
|
||
<li>icon.gif: абразок памерам 16x16, які сімвалізуе модуль</li>
|
||
<li>db/: db rables і дадзеныя для SQL (для кожнага асобнага віду базы дадзеных)</li>
|
||
<li>index.php: уключае ў сябе спіс інстанцый у курсе</li>
|
||
<li>view.php: старонка, якая служыць для агляду выбранай інстанцыі</li>
|
||
<li>lib.php: Калі модуль акрэслівае нейкія функцыі, то яны павінны знаходзіцца тут. Калі модуль мае назву напр. wіdget, у такім разе неабходнае замяшчэнне наступных функцый:
|
||
<ul>
|
||
<li>widget_add_instance() - код , які служыць для дадавання новых інстанцый</li>
|
||
<li>widget_update_instance() - код, які служыць для актуалізацыі ўжо існуючых інстанцый</li>
|
||
<li>widget_delete_instance() - код, які служыць для выдалення інстанцый</li>
|
||
<li>widget_user_outline() - маючы дадзеную інстанцыю, можна падсумаваць уклад карыстальніка</li>
|
||
<li>widget_user_complete() - маючы дадзеную інстанцыю, можна падрабязна пералічыць усе элементы ўкладу карыстальніка<br />
|
||
</li>
|
||
<li>каб пазбегнуць магчымых канфліктаў, кожная з функцый модулю павінна пачынацца на wіdget_ . Кожная пастаянная, якую вы акрэсліце, павінна пачынацца WІDGET_</li>
|
||
</ul>
|
||
</li>
|
||
<li>Урэшце кожны модуль будзе уключаць файл, які ўключае ланцугі знакаў для дадзенай мовы. Падрабязнасці знойдзеш ніжэй.</li>
|
||
</ul>
|
||
<p>Найбольш простым метадам пабудовы новага складніка курсу з’яўляецца выкарыстанне ўзору, які запісаны ў файле <strong><a href="http://moodle.com/mod/newmodule_template.zip">mod/newmodule_template.zip</a>.</strong>
|
||
Распакуй яго, а затым прачытай файл README </p>
|
||
<p>Добрай справай з’яўляецца ўдзел у <a href="http://moodle.com/mod/forum/view.php?id=44" target="_top"> Форуме, прысвечаным складнікам курсаў.</a> (Activities
|
||
modules forum on Using Moodle).</p>
|
||
</blockquote>
|
||
<h3><a name="themes" id="themes"></a>Тэмы</h3>
|
||
<blockquote>
|
||
<p>Тэмы акрэсліваюць выгляд усяго сэрвісу. Разам з галоўнай дыстрыбуцыяй, прапануецца некалькі простых тэмаў, але ты можаш стварыць сваю ўласную, падбіраючы колеры, стылі і графіку, а таксама змясціўшы свой лагатып</p>
|
||
<p>Кожная тэма размешчана ў падкаталогу "theme" і уключае, як мінімум, наступныя файлы:</p>
|
||
<ul>
|
||
<li><strong>config.php</strong>: акрэслівае колеры тэмы, якія ўжываюцца ва ўсім сервісе</li>
|
||
<li><strong>styles.php</strong>: уключае інфармацыю пра стылі, у тым ліку дэфініцыю CSS для стандартных элементаў HTML, а таксама для многіх модуляў Moodle</li>
|
||
<li><strong>header.html</strong>: размешчаны зверху кожнай старонкі. Можаш выкарыстаць яго, напрыклад, для размяшчэння лагатыпу.</li>
|
||
<li><strong>footer.html</strong>: размешчаны знізу кожнай старонкі</li>
|
||
</ul>
|
||
<p>Каб стварыць уласную тэму для Moodle у існуючай версіі:</p>
|
||
<ol>
|
||
<li>Зрабі копію якую-небудзь з ужо існуючых тэмаў у тэчку з іншай назвай. Прапаную табе пачаць з нейкай стандартнай тэмы. </li>
|
||
<li>Адрэдагуй config.php і размясці ў ім уласныя колеры. </li>
|
||
<li>Адрэдагуй styles.php і замяні стылі CSS. </li>
|
||
<li>Адрэдагуй header.html i footer.html каб дадаць лагатып і візуальную схему старонкі.
|
||
</li>
|
||
</ol>
|
||
<p>Памятай, што кожны з гэтых крокаў з’яўляецца апцыянальным. Можаш дыяметральна змяніць выгляд сэрвісу, толькі змяніўшы колеры ў confіg.php</p>
|
||
<p>Чарговыя версіі Moodle <em>могуць</em> у некаторай ступені змяніць тэмы, таму заўсёды чытай заўвагі да новага выдання, калі карыстаешся нестандартнай тэмай.</p>
|
||
<p>Асабліва Moodle 2.0 будзе мець зусім новую сістэму дэманстрацыі, якая, хутчэй за ўсё, будзе заснавана на трансфармацыях XSL выхаду XML з Moodle. Верагодна што тэмы будуць мець зусім іншы фармат, але затое будуць куды больш здольныя да мадыфікацыяў (напрыклад будуць мець магчымасць перасоўвання асобных элементаў на старонцы).</p>
|
||
<p>Больш інфармацыі на гэту тэму знойдзеце на <a target=_top href="http://moodle.com/mod/forum/view.php?id=46">форуме, які прысвечаны тэмам </a> (Themes forum on Using Moodle). Калі створыш добрую тэму, якой бы захацеў падзяліцца, перашлі упакованы файл на форум, прысвечаны тэмам.<br />
|
||
</p>
|
||
</blockquote>
|
||
<h3><a name="languages" id="languages"></a>Мовы</h3>
|
||
<blockquote>
|
||
<p>Moodle запраектаваны як міжнародная платформа. Калі ланцужок знакаў або старонка тэксту, якая дэманструецца, як частка абалонкі, ён падтрымліваецца як моўны файл. Кожная мова захоўваецца ў падкаталогу 'lang'.
|
||
Структура падкаталогу lang наступная:</p>
|
||
<p><strong>lang/be</strong> - каталог, як уключае ўсе файлы для дадзенай мовы (напрыклад для беларускай)</p>
|
||
<ul>
|
||
<li>moodle.php - ланцужкі знакаў (strіngі) для галоўнай абалонкі (інтэрфейсу)</li>
|
||
<li>assignment.php - ланцужкі знакаў для модулю заданняў</li>
|
||
<li>choice.php - ланцужкі знакаў для модулю выбару</li>
|
||
<li>forum.php - ланцужкі знакаў для модулю форум</li>
|
||
<li>journal.php - ланцужкі знакаў для модулю дзённік</li>
|
||
<li>quiz.php - ланцужкі знакаў для модулю тэст</li>
|
||
<li>resource.php - ланцужкі знакаў для модулю рэсурсы</li>
|
||
<li>survey.php - ланцужкі знакаў для модулю анкеты</li>
|
||
<li>.... і да таго ланцужкі знакаў для ўсіх дадатковых модуляў.<br />
|
||
<br />
|
||
Ланцужок знакаў з гэтых файлаў можна атрымаць пры дапамозе <strong><em>get_string()</em></strong><em>
|
||
</em>або<em> <strong>print_string()</strong> </em>. Кожны ланцужок знакаў замяняе адпаведны ланцужок на іншай мове.<em><br />
|
||
<br />
|
||
</em>напрыклад: $strdueby = get_string("assignmentdueby", "assignment",
|
||
userdate($date)); <br />
|
||
<br />
|
||
Калі які-небудзь ланцужок знакаў у нейкай мове не існуе, ён аўтаматычна замяняецца сваім ангельскім адпаведнікам. </li>
|
||
</ul>
|
||
<p><strong>lang/be/help</strong> - уключае ўсе дапаможныя старонкі (для дапамогі ва ўсплываючых вокнах)</p>
|
||
<blockquote>
|
||
<p>Галоўныя дапаможныя файлы знаходзяцца непасрэдна ў гэтым каталогу, у той час як дапаможныя файлы дапамогі для асобных модулях змешчаны ў падкаталогі з назвамі адпаведнымі назвам модуляў. </p>
|
||
<p>Кнопку дапамогі можна змясціць на старонцы, карыстаючыся функцыяй helpbutton</p>
|
||
<p>пp. helpbutton("тэкст", "націсні, каб атрымаць дапамогу на тэму тэксту");</p>
|
||
<p>а ў выпадку модуляў:</p>
|
||
<p>helpbutton("Тып форум", "Тыпы форумаў", "форум");</p>
|
||
</blockquote>
|
||
<p>УВАГА : можаш выдаваць мовы on-lіne, карыстаючыся інструментам адміністравання "Правер мову".
|
||
Дзякуючы гэтаму можна не толькі лёгка дадаваць новыя мовы, але таксама мадыфікаваць ужо існуючыя. Калі пачнеш пераклад на новую мову, прашу, устанаві кантакт са мной : <a target=_top href="http://dougiamas.com/">
|
||
Martin Dougiamas</a>. </p>
|
||
<p>Можаш таксама скарыстаць <a target=_top href="http://moodle.com/mod/forum/view.php?id=43">Форум, прысвечаны мовам </a> (Languages forum on Using Moodle). </p>
|
||
<p>Магу таксама перадаць табе <a href="?file=cvs.html">правы запісу CVS у крынічны код Moodle</a> каб ты мог непасрэдна ўпраўляць файламі.</p>
|
||
</blockquote>
|
||
<h3><a name="database" id="database"></a>Схемы базаў дадзеных</h3>
|
||
<blockquote>
|
||
<p>Калі Moodle атрымае дзеючую базу дадзеных разам з акрэсленымі табліцамі, то мэтанакіраваныя простыя запыты SQL, выкарыстаныя ў Moodle, павінны правільна супрацоўнічаць з рознымі відамі баз дадзеных.</p>
|
||
<p>Праблема заключаецца ў <strong>аўтаматычным стварэнні</strong> новых табліцаў у базах дадзеных. Moodle імкнецца гэта выканаць падчас закладкі. Паколькі базы дадзеных у значнай ступені адрозніваюцца, яшчэ не існуе метад выканання гэтага незалежна ад платформы. Каб падтрымаць гэты працэс можна стварыць sekwenc даручэнняў SQL, якія служаць для стварэння табліцы Moodle у канкрэтнай базе дадзеных. Гэтыя файлы знаходзяцца у каталогу <strong>lib/db</strong>,
|
||
таксама ў падкаталогу <strong>db</strong> кожнага модулю.</p>
|
||
<p>Зараз толькі MySQL і PostgreSQL поўнасцю абслугоўваюцца гэтым механізмам (ніхто не склаў схемаў для іншых баз).</p>
|
||
<p>Moodle 1.2 будзе выкарыстоўваць новы метад, заснаваны на XML, якая забяспечыць, што тое, што ўсе гэтыя складанасці страцяць актуальнасць.
|
||
</p>
|
||
</blockquote>
|
||
<h3><a name="courseformats" id="courseformats"></a>Фарматы курсаў</h3>
|
||
<blockquote>
|
||
<p> Moodle абслугоўвае зараз тры розныя фарматы курсаў : тыднёвы, тэматычны, а таксама спецыяльны.</p>
|
||
<p>Усе яны некалькі больш прывязаны да кода (і праз гэта менш "эластычныя")чым іншыя модулі, але і тут можна адносна лёгка дадаць новыя фарматы.</p>
|
||
<p>Калі ты маеш нейкія задумы адносна іншых фарматаў, якія табе патрэбны, або хацеў бы сустрэцца, зкантактуйся са мной, а я зраблю ўсё што змагу, каб уключыць іх ў будучыя дыстрыбуцыі.</p>
|
||
</blockquote>
|
||
<p> </p>
|
||
<h3><a name="doc" id="doc"></a>Дакументацыя і артыкулы</h3>
|
||
<blockquote>
|
||
<p>Калі ты адчуваеш, што можаш напісаць даведнік, артыкул, навуковую працу (або любую іншую) на тэму Moodle, зрабі гэта!</p>
|
||
<p>Змясці сваю працу ў сетцы і памятай, што трэба таксама змясціць спасылку на <a target=_top href="http://moodle.org/">http://moodle.org/</a></p>
|
||
</blockquote>
|
||
<h3><a name="bugs" id="bugs"></a>Удзел у знаходжанні памылак</h3>
|
||
<blockquote>
|
||
<p> Напрыканцы, я б хацеў цябе заахвоціць, каб ты запісаўся ў "знаходжанне памылак " (bug tracker) на старонцы <a target=_top href="http://moodle.org/bugs/">http://moodle.org/bugs</a> ,
|
||
каб абвяшчаць пра ўсе памылкі, якія ты знойдзеш і каб ты мог удзельнічаць у абмеркаванні, як ад іх пазбавіцца.</p>
|
||
<p>Тэрмін "Памылкі" датычыць не толькі памылак у праграмаванні, але таксама новых ідэй або пажаданняў адносна функцый, або нават канструктыўнай крытыкі існуючых функцый. Прывабнасць праграмавання open-source заключаецца ў тым, што кожны можа прыняць удзел і дапамагчы ў стварэнні лепшага прадукта. У гэтым праекце твой асабісты ўклад будзе прывітаны з радасцю!</p>
|
||
</blockquote>
|
||
</blockquote>
|
||
<p align="center">Дзякую за карыстанне Moodle!!</p>
|
||
<p align="center">З найлепшымі пажаданнямі,<br />
|
||
<a target=_top href="http://dougiamas.com/">Martin Dougiamas</a></p>
|
||
<p align="center"><font size="1"><a href="." target="_top">Дакументацыя Moodle</a></font></p>
|
||
<p align="center"><font size="1">Version: $Id$</font></p>
|
||
</body>
|
||
</html> |