포르테 4GL

Forte 4GL

Forté 4GLForté Software가 개발하여 확장 가능하고 가용성이 높은 엔터프라이즈 애플리케이션을 개발하는 데 사용된 독점 애플리케이션 서버였습니다.

역사

Forté 4GL은 클라이언트/서버 애플리케이션을 개발하고 관리하기 위한 통합 솔루션으로 개발되었다.Forté 4GL은 애플리케이션 서버, 애플리케이션 배치 및 모니터링을 위한 도구, 객체 지향 전용 프로그래밍 언어TOOL(트랜잭션 객체 지향 언어)으로 구성된다.TOOL은 Forté 애플리케이션 서버에서만 실행된다는 점을 감안할 때, 많은 사용자는 단순히 "TOOL" 애플리케이션을 "Forté" 애플리케이션이라고 부른다.1994년 8월에 Forté 4GL의 첫 번째 발매가 출판되었다.이 초기 제품을 출시한 후, Forté Inc.는 다음과 같은 몇 가지 확장을 진행하였다.

  • Web Enterprise - 리치 클라이언트 응용 프로그램이 웹 서버를 통해 화면을 게시할 수 있는 HTML-wrapper 인터페이스.
  • Forte Express - 1995년 7월에 출시된 신속한 데이터베이스 GUI 인터페이스 키트.
  • 지휘자 - 1997년 3월에 출시된 안무가 가능한 작업 흐름 엔진.
  • Forté Fusion - XML 메시징을 사용하여 외부 시스템을 연결하고 컨덕터 엔진과 연결하기 위한 통합 백본.

1999년 Forté Software는 시너J라는 이름의 TOOL 대신 자바를 기반으로 한 Forte 버전을 출시하였고, "Forté for Java"라고도 불렸다.원래 TOOL 기반 제품과 마찬가지로 개발 IDE, 코드 저장소 및 런타임 환경으로 구성되었다.이 새로운 자바 제품은 회사를 인수한 선 마이크로시스템스가 관심을 가졌다.위에 열거한 TOOL 기반 확장은 함께 묶어서 IPlanet 사업부 산하의 UDS(Unified Development Server)와 IS(Integration Server)로 다시 브랜딩되었다.서버 모듈은 나중에 EAI(Enterprise Application Integration)로 함께 묶였다.

선씨는 이 제품의 수명을 연장하겠다고 선언해 향후 제품 개발을 계속할 계획이 없음을 시사했다.쑨양의 포르테 공식 지원은 2009년 4월에 끝났다.[1]

역량

엔터프라이즈 애플리케이션 개발 시스템인 Forté 4GL은 오라클, Sybase, 마이크로소프트 SQL 서버, InformixDB2를 비롯한 다양한 관계형 데이터베이스 시스템과의 긴밀한 연계를 지원했다.이러한 연결은 TOOL 코드에 내장된 SQL이나 즉석에서 구축된 SQL을 통해 이루어질 수 있다.

그것은 또한 분산된 애플리케이션에 대한 지원도 가지고 있었다: 개발자는 특정 클래스의 인스턴스를 만들어 사용자 지정 서버에 배치할 것이다.인스턴스를 통해 메소드에 대한 호출은 네트워크를 통해 투명하게 전송될 것이다. 개발자는 호출이 어떻게 전송되는지에 대한 기본적인 세부사항을 알 필요가 없을 것이다.

프로그래밍 언어 도구

TOOL은 다음과 같은 특징을 가진 객체 지향 언어다.

  • 쓰레기 자동 수거
  • 참조 기반, 포인터 없음
  • 단일 상속 및 인터페이스
  • 멀티 프레임 프로그래밍 지원
  • 데이터베이스 액세스를 위한 통합문
  • 사건 처리
  • 예외 처리
  • GUI와의 강력한 통합
  • 흔히 부르는 베이스 클래스.Object

TOOL 코드는 대소문자를 구분하지 않는다.문장은 항상 세미콜론으로 종료된다.복합문은 키워드로 둘러싸여 있다.begin그리고end. 코멘트는 // 또는 --(줄의 리마인이 코멘트가 된다), /* … */로 표시된다.

데이터 유형

단순 데이터 유형:

  • 부울
  • 둥둥 뜨다
  • 곱절로 하다
  • 마를 뜨다
  • 끈을 매다
  • 정수 데이터 유형
    • i1, ui1(서명/서명되지 않은 1바이트 정수)
    • i2, ui2(서명/서명되지 않은 2바이트 정수)
    • i4, ui4(서명/서명되지 않은 4바이트 정수)
    • 정수(서명된 4바이트 정수, i4와 동일)
    • 짧은(서명된 정수, 최소 2바이트, int와 동일)
    • int (서명된 정수, 최소 2바이트)
    • 긴(서명된 정수, 최소 4바이트)

해당하는 개체 데이터 유형은 다음과 같다(일부 예:

  • BooleanData, BooleanNullable
  • 정수데이터, 정수Nullable
  • DoubleData, DoubleNullable
  • TextData, TextNullable

배열은 키워드로 표시됨Array of배열의 첫 번째 요소는 1로 색인화된다.

가변 선언

이름 : 문자열 = 'John'; 결과 : 정수, dataArray : 정수 데이터 배열 = new;

조건문(if-statement, 사례문)

결과가 5100이면 ...그렇지 않으면 != 0이면 ...그렇지 않으면...if; case result is when 1 do .... when 2 do ....그렇지 않으면...종료 사례

반복, 루프스

1에서 10까지 2까지 ...하다.종료, data의 경우dataArray의 항목 수행...end for; k : 정수 = 2; k < 14 do ... k = k + 1; ends while;

이벤트

이벤트는 다음과 같은 문장으로 게시된다.

사후 EV_CustomerSet(id = 선택됨)ID);

이 성명은 명명된 이벤트를 게시한다.EV_CustomerSet. 이 사건에는 "id"라는 한 가지 인수가 있다.

이벤트는 이벤트 핸들러에 의해 처리된다(예:

이벤트 루프 사전 등록 GeneralHandler(); ... postregister waitTimer.IsActive = true; ... EV_CustomerSet(ID )가 수행되는 경우...waitTimer를 사용할 때.태스크 실행 종료 시 체크 표시()종료 실행 종료, 종료 이벤트;

예외처리

시작... UsageException(); ... e : UsageException이 작업을 수행할 때 예외 발생.ErrMgr.Clear(); ...아니면 ...올림; 끝;

멀티스레딩

다음과 같은 진술에 의해 새로운 실이 발사된다.start task report.Print();

참고 항목

참조

외부 링크