119 lines
6.3 KiB
HTML
119 lines
6.3 KiB
HTML
<html>
|
||
|
||
<head>
|
||
<object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e">
|
||
<param name="Keyword" value="PascalABC">
|
||
</object>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
|
||
<title></title>
|
||
<link rel="StyleSheet" href="../default.css">
|
||
<style type="text/css">
|
||
.auto-style1 {
|
||
color: #FF0000;
|
||
}
|
||
</style>
|
||
</head>
|
||
|
||
<body>
|
||
|
||
<OBJECT id=exam type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" style="position:absolute; top:-100; left:-100;">
|
||
<param name="Command" value="TCard">
|
||
<param name="Text" value="">
|
||
</OBJECT>
|
||
|
||
<H1>Ñèñòåìà PascalABC.NET</H1>
|
||
|
||
<p><strong>PascalABC.NET</strong> <font face="Arial">–</font> ýòî
|
||
<span class="auto-style1"><strong>ñèñòåìà
|
||
ïðîãðàììèðîâàíèÿ è ÿçûê Pascal íîâîãî ïîêîëåíèÿ</strong></span> äëÿ ïëàòôîðìû Microsoft .NET.
|
||
ßçûê <strong>PascalABC.NET</strong> ñîäåðæèò âñå îñíîâíûå
|
||
ýëåìåíòû
|
||
ñîâðåìåííûõ ÿçûêîâ ïðîãðàììèðîâàíèÿ:
|
||
<a href="../LangGuide/Modules/indexmodule.html">ìîäóëè</a>,
|
||
<a href="../LangGuide/Classes/index_classes.html">êëàññû</a>,
|
||
<a href="../LangGuide/Classes/operoverloading.html">ïåðåãðóçêó îïåðàöèé</a>,
|
||
<a href="../LangGuide/Interfaces/indexinterf.html">èíòåðôåéñû</a>,
|
||
<a href="../LangGuide/ExceptionHandling/Overview.html">èñêëþ÷åíèÿ</a>,
|
||
<a href="../LangGuide/Generics/index_generics.html">îáîáùåííûå êëàññû</a>,
|
||
<a href="../LangGuide/MemoryManagement/index_memory.html">ñáîðêó ìóñîðà</a>,
|
||
<a href="../LangGuide/FuncProgramming/lambdas.html">ëÿìáäà-âûðàæåíèÿ</a>, à
|
||
òàêæå íåêîòîðûå ñðåäñòâà ïàðàëëåëüíîñòè, â òîì ÷èñëå
|
||
<a href="../LangGuide/OpenMP/indexopenmp.html">äèðåêòèâû OpenMP</a>. Ñèñòåìà <b>PascalABC.NET</b> âêëþ÷àåò
|
||
â ñåáÿ òàêæå ïðîñòóþ èíòåãðèðîâàííóþ ñðåäó, îðèåíòèðîâàííóþ íà ýôôåêòèâíîå
|
||
îáó÷åíèå ñîâðåìåííîìó ïðîãðàììèðîâàíèþ. </p>
|
||
<ul>
|
||
<li><a href="../LangGuide/index_lang_guide.html">Îïèñàíèå ÿçûêà <strong>PascalABC.NET</strong></a>.</li>
|
||
<li><a href="AdvantagePABC.html">Ïðåèìóùåñòâà <b>PascalABC.NET</b></a> äëÿ
|
||
ðàçðàáîòêè ïðîãðàìì è äëÿ îáó÷åíèÿ. </li>
|
||
<li><a href="PABCNETvsDelphi.html">Îòëè÷èÿ <b>PascalABC.NET</b> îò Delphi (Object
|
||
Pascal)</a>.
|
||
</li>
|
||
<li>Ïðèìåðû, èëëþñòðèðóþùèå îñíîâíûå îñîáåííîñòè <b>PascalABC.NET</b>,
|
||
íàõîäÿòñÿ â ìåíþ "Ïîìîùü/Êîðîòêî î ãëàâíîì".</li>
|
||
</ul>
|
||
<p>ßçûê Ïàñêàëü áûë ðàçðàáîòàí øâåéöàðñêèì ó÷åíûì Íèêëàóñîì Âèðòîì â 1970 ã. êàê
|
||
ÿçûê ñî ñòðîãîé òèïèçàöèåé è èíòóèòèâíî ïîíÿòíûì ñèíòàêñèñîì. Â 80-å ãîäû
|
||
íàèáîëåå èçâåñòíîé ðåàëèçàöèåé ñòàë êîìïèëÿòîð Turbo Pascal
|
||
ôèðìû Borland, â 90-å åìó íà ñìåíó ïðèøëà ñðåäà
|
||
ïðîãðàììèðîâàíèÿ Delphi, êîòîðàÿ ñòàëà îäíîé èç
|
||
ëó÷øèõ ñðåä äëÿ áûñòðîãî ñîçäàíèÿ ïðèëîæåíèé ïîä Windows.
|
||
Delphi ââåëà â ÿçûê Ïàñêàëü ðÿä óäà÷íûõ îáúåêòíî-îðèåíòèðîâàííûõ ðàñøèðåíèé,
|
||
îáíîâëåííûé ÿçûê ïîëó÷èë íàçâàíèå Object Pascal. Ñ âåðñèè Delphi 7
|
||
<span lang="ru">ÿçûê </span>Delphi Object Pascal<span lang="ru"> ñòàë íàçûâàòüñÿ
|
||
ïðîñòî </span>Delphi<span lang="ru">. </span>Èç
|
||
àëüòåðíàòèâíûõ ðåàëèçàöèé Object Pascal ñëåäóåò îòìåòèòü
|
||
ìíîãîïëàòôîðìåííûé open source êîìïèëÿòîð Free
|
||
Pascal.</p>
|
||
<p>Ñîçäàíèå <strong>PascalABC.NET</strong>
|
||
<font face="Arial">äèêòîâàëîñü äâóìÿ îñíîâíûìè ïðè÷èíàìè:</font> óñòàðåâàíèå
|
||
ñòàíäàðòíîãî ÿçûêà Pascal è ñèñòåì, ïîñòðîåííûõ íà åãî îñíîâå (Free Pascal), à
|
||
òàêæå íåîáõîäèìîñòü â ñîâðåìåííîé ïðîñòîé, áåñïëàòíîé è ìîùíîé
|
||
èíòåãðèðîâàííîé ñðåäå
|
||
ïðîãðàììèðîâàíèÿ.</p>
|
||
<p> <strong>PascalABC.NET</strong> îïèðàåòñÿ íà ïåðåäîâóþ ïëàòôîðìó
|
||
ïðîãðàììèðîâàíèÿ Microsoft.NET, êîòîðàÿ îáåñïå÷èâàåò ÿçûê <b>PascalABC.NET</b>
|
||
îãðîìíûì êîëè÷åñòâîì ñòàíäàðòíûõ áèáëèîòåê è ïîçâîëÿåò ëåãêî
|
||
ñî÷åòàòü åãî ñ äðóãèìè .NET-ÿçûêàìè: C#,
|
||
Visual Basic.NET, óïðàâëÿåìûé C++, Oxygene è äð. Ïëàòôîðìà .NET ïðåäîñòàâëÿåò òàêæå òàêèå ÿçûêîâûå
|
||
ñðåäñòâà êàê åäèíûé ìåõàíèçì îáðàáîòêè èñêëþ÷åíèé, åäèíûé ìåõàíèçì óïðàâëåíèÿ
|
||
ïàìÿòüþ â âèäå <em>ñáîðêè ìóñîðà</em>, à òàêæå âîçìîæíîñòü ñâîáîäíîãî èñïîëüçîâàíèÿ êëàññîâ, íàñëåäîâàíèÿ,
|
||
ïîëèìîðôèçìà è èíòåðôåéñîâ ìåæäó ìîäóëÿìè, íàïèñàííûìè íà ðàçíûõ .NET-ÿçûêàõ.
|
||
Î òîì, ÷òî òàêîå ïëàòôîðìà Microsoft.NET, î åå ïðåèìóùåñòâàõ äëÿ ïðîãðàììèðîâàíèÿ
|
||
è äëÿ îáó÷åíèÿ ìîæíî ïðî÷èòàòü <a href="Net.html">çäåñü</a>.</p>
|
||
<p>ßçûê <b>PascalABC.NET</b> áëèçîê ê ðåàëèçàöèè Delphi (Object Pascal). Â íåì
|
||
îòñóòñòâóåò ðÿä <a href="PABCNETvsDelphi.html">ñïåöèôè÷åñêèõ ÿçûêîâûõ êîíñòðóêöèé Delphi</a>,
|
||
íåêîòîðûå êîíñòðóêöèè èçìåíåíû. Êðîìå ýòîãî,
|
||
äîáàâëåí ðÿä âîçìîæíîñòåé: èìååòñÿ àâòîîïðåäåëåíèå òèïà ïðè îïèñàíèè, ìîæíî îïèñûâàòü ïåðåìåííûå âíóòðè áëîêà, èìåþòñÿ îïåðàöèè <code>+=</code>, <code>
|
||
-=</code>, <code>*=</code>, <code>/=</code>, ìåòîäû ìîæíî îïèñûâàòü íåïîñðåäñòâåííî â òåëå êëàññà èëè
|
||
çàïèñè, ìîæíî ïîëüçîâàòüñÿ âñòðîåííûìè â ñòàíäàðòíûå òèïû ìåòîäàìè è ñâîéñòâàìè, ïàìÿòü ïîä îáúåêòû óïðàâëÿåòñÿ
|
||
<a href="../LangGuide/MemoryManagement/index_memory.html">ñáîðùèêîì ìóñîðà</a> è
|
||
íå òðåáóåò ÿâíîãî îñâîáîæäåíèÿ, ìíîæåñòâà <b>
|
||
<code>set</code></b> ìîãóò áûòü ñîçäàíû íà îñíîâå ïðîèçâîëüíûõ òèïîâ, ââåäåí
|
||
îïåðàòîð <code><b>foreach</b></code>, ïåðåìåííûå
|
||
öèêëîâ <b><code>for</code></b> è <b><code>foreach</code></b>
|
||
ìîæíî îïèñûâàòü íåïîñðåäñòâåííî â çàãîëîâêå öèêëà, èìåþòñÿ
|
||
îáîáùåííûå êëàññû è ïîäïðîãðàììû (generics),
|
||
<a href="../LangGuide/Types/sequences.html">ïîñëåäîâàòåëüíîñòè</a>,
|
||
<a href="../LangGuide/Types/tuples.html">êîðòåæè</a>,
|
||
<a href="../LangGuide/Operations_Expressions/Slice.html">ñðåçû</a>,
|
||
<a href="../LangGuide/FuncProgramming/lambdas.html">ëÿìáäà-âûðàæåíèÿ</a> è äð.</p>
|
||
<p>Áëèçêèì ïî èäåîëîãèè ê <strong>PascalABC.NET</strong>
|
||
ÿâëÿåòñÿ ÿçûê RemObjects Oxygene (Object Pascal 21 âåêà). Îäíàêî îí ñèëüíî èçìåíåí â
|
||
ñòîðîíó .NET: íåò ãëîáàëüíûõ îïèñàíèé, âñå îïèñàíèÿ
|
||
ïîìåùàþòñÿ â êëàññ, ñîäåðæàùèé <span lang="ru">ñòàòè÷åñêèé</span> ìåòîä Main,
|
||
îòñóòñòâóåò ðÿä ñòàíäàðòíûõ ïîäïðîãðàìì ÿçûêà Ïàñêàëü. Êðîìå òîãî, ñèñòåìà
|
||
RemObjects Oxygene - ïëàòíàÿ
|
||
è íå ñîäåðæèò ñîáñòâåííîé îáîëî÷êè (âñòðàèâàåòñÿ â Visual Studio<span lang="ru">
|
||
è äðóãèå </span>IDE), ÷òî ïðàêòè÷åñêè äåëàåò íåâîçìîæíûì åå èñïîëüçîâàíèå â ñôåðå îáðàçîâàíèÿ.</p>
|
||
<p>Èíòåãðèðîâàííàÿ ñðåäà <strong>PascalABC.NET </strong>
|
||
îáåñïå÷èâàåò ïîäñâåòêó ñèíòàêñèñà, ïîäñêàçêó ïî êîäó (ïîäñêàçêà ïî òî÷êå,
|
||
ïîäñêàçêà ïàðàìåòðîâ ïîäïðîãðàìì, âñïëûâàþùàÿ ïîäñêàçêà ïî êîäó), ôîðìàòèðîâàíèå
|
||
òåêñòà ïðîãðàììû ïî çàïðîñó, ïåðåõîä ê îïðåäåëåíèþ è ðåàëèçàöèè èìåíè, ýëåìåíòû
|
||
ðåôàêòîðèíãà.</p>
|
||
<p>Âñå ïðàâà íà ñèñòåìó ïðîãðàììèðîâàíèÿ <b>PascalABC.NET</b>
|
||
ïðèíàäëåæàò PascalABCCompiler Team (web-ñàéò
|
||
<a href="http://pascalabc.net/" target=_blank>http://pascalabc.net</a>). </p>
|
||
</body>
|
||
|
||
</html>
|