pascalabcnet/PABCNetHelp/Common/main.html

119 lines
9.2 KiB
HTML
Raw Permalink Normal View History

<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">Преимущества&nbsp;<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>,
находятся в меню &quot;Помощь/Коротко о главном&quot;.</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>