"Charting the Course ...

... to Your Success!"

Introduction to ooRexx Programming

Course Summary

Description

This course is designed to enable the student to create, debug, and modify programs in the Open Object (ooRexx) . The course is primarily designed for execution in a Windows environment, although it can also be hosted in a or (AIX/Solaris) environment.

A principle advantage of Open Object REXX is the ease of creating new programs that utilize existing vendor-supplied and/or site-written classes. Rapid design and development techniques will be taught that result in clean, maintainable code and reusable class libraries.

Objectives

By the end of this course, students will be able to:  Understand the primary programming constructs and classes supplied with Open Object REXX and how to combine these to form effective ooRexx programs.  Have knowledge of many advanced techniques; both those reviewed in class and additional sample programs.  Understand the concept and practice of defensive programming, handling and recovering from errors

Topics

 Introduction to Open Object REXX  Building your own classes  Quick review of classic REXX  Coding graphical user interfaces using the  ooRexx Functions ooDialog class  Introduction to objects  Using the Windows System Class Library  Using the built-in classes  TCP/IP Socket programming in REXX

Audience

This course is intended for , analysts, and project leaders.

Prerequisites

Before taking this course, students should have attended ProTech’s Multiplatform REXX Programming course or equivalent knowledge of the REXX language keywords, functions and syntax.

Duration

Five days

Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically

"Charting the Course ...

... to Your Success!"

Introduction to ooRexx Programming

Course Outline

I. Introduction to Open Object REXX O. REXXUTIL Printer Access Functions A. Built-in Functions and Methods P. REXXUTIL - SYSINI() B. REXX, ooRexx, NetRexx Q. REXXUTIL – SYSINI1 Sample Output C. Open Object REXX R. REXXUTIL REXX Functions D. Acquiring, Installing ooRexx S. Understanding Unicode E. Running REXX in Windows T. Unicode Conversion Functions F. Using the ooRexx Workbench U. Windows Encryption Functions G. Understanding the Trace Bar V. REXXUTIL Windows Semaphore H. Introduction to Object Orientation Functions I. ooRexx Supplied Classes J. Object REXX Windows Classes IV. Introduction to Objects K. Variables: Strings & Numbers A. Object Orientation - Why do it? L. Overcoming Traditional REXX B. Object-Oriented Terminology Problems C. Objects M. Quick Glimpse at ooRexx Pgm D. Data and Function Encapsulation N. New REXX Keywords E. Classes and Inheritance O. Enhanced REXX Keywords F. Directives P. ooRexx for Windows Books G. Introducing ~ (the "Twiddle") H. Defining Classes w/ Directives II. Quick Review of Classic REXX I. Defining Classes w/ Messages A. REXX Syntax J. Open Object REXX Class Types B. REXX Clause Types K. More Object Oriented Buzzwords C. REXX Keywords L. Private vs. Public Methods & Classes D. Expressions M. Polymorphism E. Functions and Subroutines F. Simple and Stem variables V. Using the Built-in Classes G. The REXX Stack A. Supplied Classes H. Command Interface B. Understanding the Built-in Classes I. File I/O C. Understanding Collection Classes J. Error handling D. Using Objects E. Understanding the Table Class III. ooRexx Functions F. Table Class Methods A. Built-in Functions: Beep G. Understanding the Set Class B. Built-in Functions: Directory H. Set Class Methods C. Built-in Functions: Filespec I. Using the SET class D. Built-in Functions: Var J. Understanding the Built-in Classes E. REXX API Functions K. Understanding the Bag Class F. REXX Function Packages L. Bag Class Methods G. Understanding REXXUTIL M. Lab: Using the Bag Class H. REXXUTIL Character UI Functions I. REXXUTIL Disk & File Functions VI. Building your own Classes J. Optional Lab: Finding a Program A. Creating Classes K. Optional Lab: Tallying disk information B. Directives L. REXXUTIL Misc. Functions C. How are Directives Processed? M. REXXUTIL REXX Variable Functions D. ::REQUIRES Directive N. REXXUTIL Windows API Functions E. ::CLASS Directive

Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically

"Charting the Course ...

... to Your Success!"

Introduction to ooRexx Programming

Course Outline (cont’d)

F. ::METHOD Directive F. WindowObject Move/Size Methods G. ::ROUTINE Directive G. Optional topic: CA-Automation Point H. Defining a STACK Class H. Coexisting w/ CA-Automation Point I. Lab: Extending the Stack Class I. Managing the AP Desktop J. Lab: Making Stack.cls J. Understanding Windows Focus K. Two Common Methods K. WindowObject Focus Methods L. Example: INIT & UNINIT Methods L. Focus Methods Example M. Special Open Object REXX Variables M. WindowObject Send Methods N. Special and Built-in Objects N. SendSysCommand Method Details O. The .environment Objects O. Windows Key Mnemonics P. .Local Environment Objects P. WindowObject Menu Methods Q. Sharing Data Between 2 Classes Q. Misc WindowObject Methods R. The .methods Object R. MenuObject Class Methods S. MenuObject Class Example VII. Introduction to the OODialog Classes T. Lab: MenuObject Class A. Why Should We Write Dialogs? U. Optional Lab: MenuObject Class B. What we can build: V. WindowsEventLog Class Overview C. Using Standard Dialogs W. WindowsEventLog Methods D. Standard Dialog: TimedMessage X. WindowsEventLog Class Example E. Standard Dialog: TimedMessage Y. WindowsClipboard Class Overview F. Standard Dialog: InputBox Z. WindowsClipBoard Methods G. Standard Dialog: MultiInputBox AA. WindowsClipboard Class Example H. Standard Dialog: CheckList I. Optional Lab: OODialog Functions IX. TCP/IP Socket Programming in REXX J. Building a Generic Dialog A. TCP/IP Networking Review K. The Buttons() Generic Function 1. TCP/IP Application Functionality L. Calling Buttons() Function 2. Two Similar Packet Delivery M. Inside Buttons() Systems N. Optional Lab: Using BUTTONS() 3. Packet Routing O. Building dialogs w/ Resource 4. Network Physical Layer, IP Layer Workshop 5. MVS TCP/IP Sockets P. Lab: Layout a List Box 6. Well Known UDP & TCP Ports Q. Lab: Enhanced List Box Management 7. TCP/IP Services R. Optional Lab: Layout File Browser 8. TCP/IP Applications S. Optional Lab: Implement File Browser 9. Telnet Access T. Optional Lab: File Browser w/ Menu 10. TCP/IP Applications: rsh, rexec U. Optional Lab: Enhanced File Browser 11. FTP (File Transfer Protocol) 12. Socket Programming Overview VIII. The Windows System Class Library 13. Basic Socket Send/Receive A. Windows System Library Classes Functions B. WindowsManager Class Methods 14. Resolver, Port number C. WindowsManager Class Caveats B. Basic Socket Connection Functions D. WindowObject Class Overview C. Sample TCP/IP Socket Application E. WindowObject Information Methods

Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically