]]> ]]>

BlackBox Component Builder

Реализация языка программирования Oberon

Наиболее доступной и подходящей реализацией Oberon под Windows является среда BlackBox. В ней используется несколько расширенный вариант Оберона, который получил название Компонентный Паскаль. В целом BlackBox является профессиональной промышленной средой разработки. BlackBox и Component Pascal относятся к одному поколению с Java и .NET, поддерживая концепции так называемого компонентного программирования. BlackBox Component Builder включает в себя средства разработки, библиотеку многократно используемых компонентов (в т.ч. визуальных), фреймворк, упрощающий разработку надежных пользовательских компонентов и приложений, а также среду времени выполнения.

Весь пакет представляет собой развитый, но весьма нетребовательный к системным ресурсам инструмент быстрой разработки компонентных приложений. Он нетребователен к системным ресурсам, т.к. полностью построен из модулей Component Pascal.

BlackBox поддерживает оригинальную концепцию пользовательского интерфейса, основная идея которой: можно вставлять все что угодно во все что угодно. Например, кнопку, другой элемент управления или форму целиком можно вставить в текст, форматированный текст положить на форму, вставить объекты внешних программ (например, таблицу или диаграмму Excel). В этом аспекте среде BlackBox нет равных.

Примеры:

Hello, World!:

Пример для версий BlackBox Component Builder 1.5

О том как запустить программу на выполнение — см. Как запустить Блэкбокс и выполнить первую программу. Для запуска после конца описания модуля добавляется строка с коммандером и действием Hello.Do (см. скриншот). При нажатии на коммандер действие выполняется.

MODULE Hello;

IMPORT StdLog;

PROCEDURE Do*;
BEGIN
  StdLog.String("Hello World");
END Do;

END Hello.

Запуск программы в BlackBox
Запуск программы в BlackBox

Факториал:

Пример для версий BlackBox Component Builder 1.5

Используется рекурсивное определение факториала.

О том как запустить программу на выполнение — см. Как запустить Блэкбокс и выполнить первую программу.

MODULE Example;

IMPORT StdLog;

PROCEDURE factorial(n: INTEGER): LONGINT;
BEGIN
  IF n = 0 THEN
    RETURN 1;
  ELSE 
    RETURN n * factorial(n-1)
  END;
END factorial;

PROCEDURE Do*;
VAR 
  n: INTEGER;
BEGIN
  FOR n := 0 TO 16 DO
    StdLog.Int(n);
    StdLog.String('! = '); 
    StdLog.Int(factorial(n));
    StdLog.Ln; 
  END;
END Do;    

END Example.

Числа Фибоначчи:

Пример для версий BlackBox Component Builder 1.5

Используется рекурсивное определение чисел Фибоначчи.

MODULE Fibonacci;

IMPORT StdLog;

PROCEDURE fibonacci(n: INTEGER): INTEGER;
BEGIN
    IF n < 3 THEN
        RETURN 1;
    ELSE
        RETURN fibonacci(n-1)+fibonacci(n-2)
    END;
END fibonacci;

PROCEDURE Do*;
VAR
    n: INTEGER;
BEGIN
    FOR n := 1 TO 16 DO
        StdLog.Int(fibonacci(n));
        StdLog.String(', ');
    END;
    StdLog.String('...');
    StdLog.Ln;
END Do;

END Fibonacci.
Fibonacci.Do

Комментарии

]]>

blog comments powered by Disqus

]]>

Работа программистам