119 lines
9.2 KiB
HTML
119 lines
9.2 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>
|