Инструменты пользователя

Инструменты сайта


cp

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
cp [2026/02/10 12:31]
iadenisov [4. Модульность — встроена в язык]
cp [2026/02/11 13:51] (текущий)
iadenisov
Строка 1: Строка 1:
 ====== Компонентный Паскаль ====== ====== Компонентный Паскаль ======
  
- +**Компонентный Паскаль** (Component Pascal, Блэкбокс Оберон) --- [[https://ru.wikipedia.org/wiki/Компилируемый_язык_программирования|компилируемый]], [[https://ru.wikipedia.org/wiki/Статическая_типизация|статически типизированный]] язык программирования, который поддерживает парадигмы [[https://ru.wikipedia.org/wiki/Компонентно-ориентированное_программирование|компонентно-ориентированного]], [[https://ru.wikipedia.org/wiki/Структурное_программирование|структурного]] и [[https://ru.wikipedia.org/wiki/Объектно-ориентированное_программирование|объектно-ориентированного]] программирования. Поддержка языком предусловий, постусловий и инвариантов делают возможным применение подходов [[https://ru.wikipedia.org/wiki/Контрактное_программирование|контрактного программирования]].
-**Компонентный Паскаль** (Component Pascal, Блэкбокс Оберон) --- это высокоуровневый язык программирования широкого применения, который поддерживает парадигму компонентно-ориентированного программирования.+
  
 Компонентный Паскаль наследует основные черты языка [[ob:oberon2|Оберон-2]], но добавляет возможности по контролю за расширением типов, а также упрощает работу со строками. Компонентный Паскаль наследует основные черты языка [[ob:oberon2|Оберон-2]], но добавляет возможности по контролю за расширением типов, а также упрощает работу со строками.
Строка 11: Строка 10:
  
  
-===== Примеры ===== +===== Привет Мир=====
- +
-Привет Мир!+
  
 <code> <code>
 MODULE ObxHello0; MODULE ObxHello0;
  
- IMPORT StdLog;+  IMPORT StdLog;
  
- PROCEDURE Do*; +  PROCEDURE Do*; 
- BEGIN +  BEGIN 
- StdLog.String("Привет Мир!"); StdLog.Ln +    StdLog.String("Привет Мир!"); StdLog.Ln 
- END Do;+  END Do;
  
 END ObxHello0. END ObxHello0.
Строка 50: Строка 47:
 ==== 1. Простота и чистота языка ==== ==== 1. Простота и чистота языка ====
  
-Компонентный Паскаль намеренно мал и ортогонален:+Компонентный Паскаль намеренно **мал и ортогонален**:
  
   * небольшое число ключевых слов;   * небольшое число ключевых слов;
Строка 56: Строка 53:
   * синтаксис читается как псевдокод.   * синтаксис читается как псевдокод.
  
-👉 В результате код легко понимать через годы, даже без IDE и автодополнений.+👉 В результате код легко понимать **через годы**, даже без IDE и автодополнений.
  
 ==== 2. Строгая типизация без перегруза ==== ==== 2. Строгая типизация без перегруза ====
Строка 168: Строка 165:
   * контроль сложности.   * контроль сложности.
  
-Он не для стартапов и хайпа — он для **инженеров, которые ценят спокойствие и долговечность**.+Итак, КП --- хороший выбор для инженеров, которые ценят спокойствие и долговечность.
cp.1770715881.txt.gz · Последнее изменение: 2026/02/10 12:31 — iadenisov