Buliding Object-Oriented Applications in PowerBuilder  Module 1: Introduction
Introductions and Expectations
What can you expect? In this hands-on course, you learn how to use and exploit the object-oriented features of PowerBuilder through a combination of group discussion and in-class labs.  This course introduces object-oriented application development concepts and outlines object-oriented programming techniques in PowerBuilder. You’ll learn how to implement inheritance, polymorphism, generic object messaging, and encapsulation. You’ll also examine how PowerBuilder works internally with object instantiation, source code, and memory pools. Proper use of the object-oriented development techniques presented in this course maximizes reuse - both in the current application and in future development projects.
Course Objectives Upon successful completion of the Building Object-Oriented Applications using PowerBuilder .0, you should be able to: Use Object-oriented construction techniques to help design and code PowerBuilder applications Implement Non-Visual User Objects  Put inheritance, polymorphism, generic object messaging, exception handling and encapsulation into practice
Class Materials Student Files CD with classroom setup for labs and PowerBuilder  documentation Student Guide The student guide contains  more  material than the slides the instructor will use, allowing the student to spend more time listening to the instructor. The student guide follows the slides in their order and all slide graphics will match the graphics in the student guide Slides that contain bulletted information in the slide will have explanatory text in the student guide.
What is Object-Oriented Programming? In an object-oriented environment, your program consists of a number of  objects  that interact by making requests of each other. These objects are discrete, self-contained application components that combine characteristics ( properties ) and behaviors ( methods ).  Incorporates 3 Characteristics Encapsulation Polymorphism Inheritance
Encapsulation Bundles object properties and methods together.  Treats each object as a package that contains the definition of the object's properties and methods.  One aspect of encapsulation, known as  information hiding , prevents objects from directly altering or accessing the property values of another object, giving the encapsulated object control over its property values.    Module 7 will examine Encapsulation in detail as it is  implemented in a PowerBuilder Application or component.
Polymorphism Polymorphism  is the ability to hide different object implementations behind a common interface.  Polymorphism  allows different objects to respond differently to the same message. Module 12 will examine Polymorphism in detail as it is implemented in a PowerBuilder Application or component.
Inheritance An object class can be inherited from another class.  The inherited or descendent object has all the instance variables, events, and functions of the ancestor.  You can augment the descendant by adding more variables, events, and functions.  If you change the ancestor, even after editing the descendant, the descendant incorporates the changes.
But … PowerBuilder does  not  force  you to be Object-Oriented While it does not force you to be Object-Oriented, there are many benefits to be gained by maintaining this discipline …
Why Build Object-Oriented Applications? Many aspects of programming are redundant Building and testing an application takes too long Object-oriented programming encourages and facilitates code reuse Distributed Programming requires object-oriented techniques Reusable  business logic destined for Web Clients use demands object-oriented techniques.
Advantages of Code and Design Reuse Leverages work of other programmers / designers Reduces testing time Improves quality Responds more quickly to change Can develop subsequent applications more quickly
Skills You Will Gain Use PowerBuilder to construct object-oriented applications Exploit the object-oriented features and strengths of PowerBuilder Write generic code
Summary Object-oriented coding facilitates code reuse. Code reuse speeds up many areas of application development.
Summary Questions
Lab Setup An executable is provided that is a sample solution of the application to be constructed during the labs in this course  C:\Sybase Courses\BooaPB8\Solutions\Final.   In this lab, you run this Order Entry application and observe its behavior.

Booa8 Slide 01

  • 1.
    Buliding Object-Oriented Applicationsin PowerBuilder Module 1: Introduction
  • 2.
  • 3.
    What can youexpect? In this hands-on course, you learn how to use and exploit the object-oriented features of PowerBuilder through a combination of group discussion and in-class labs. This course introduces object-oriented application development concepts and outlines object-oriented programming techniques in PowerBuilder. You’ll learn how to implement inheritance, polymorphism, generic object messaging, and encapsulation. You’ll also examine how PowerBuilder works internally with object instantiation, source code, and memory pools. Proper use of the object-oriented development techniques presented in this course maximizes reuse - both in the current application and in future development projects.
  • 4.
    Course Objectives Uponsuccessful completion of the Building Object-Oriented Applications using PowerBuilder .0, you should be able to: Use Object-oriented construction techniques to help design and code PowerBuilder applications Implement Non-Visual User Objects Put inheritance, polymorphism, generic object messaging, exception handling and encapsulation into practice
  • 5.
    Class Materials StudentFiles CD with classroom setup for labs and PowerBuilder documentation Student Guide The student guide contains more material than the slides the instructor will use, allowing the student to spend more time listening to the instructor. The student guide follows the slides in their order and all slide graphics will match the graphics in the student guide Slides that contain bulletted information in the slide will have explanatory text in the student guide.
  • 6.
    What is Object-OrientedProgramming? In an object-oriented environment, your program consists of a number of objects that interact by making requests of each other. These objects are discrete, self-contained application components that combine characteristics ( properties ) and behaviors ( methods ). Incorporates 3 Characteristics Encapsulation Polymorphism Inheritance
  • 7.
    Encapsulation Bundles objectproperties and methods together. Treats each object as a package that contains the definition of the object's properties and methods. One aspect of encapsulation, known as information hiding , prevents objects from directly altering or accessing the property values of another object, giving the encapsulated object control over its property values.   Module 7 will examine Encapsulation in detail as it is implemented in a PowerBuilder Application or component.
  • 8.
    Polymorphism Polymorphism is the ability to hide different object implementations behind a common interface. Polymorphism allows different objects to respond differently to the same message. Module 12 will examine Polymorphism in detail as it is implemented in a PowerBuilder Application or component.
  • 9.
    Inheritance An objectclass can be inherited from another class. The inherited or descendent object has all the instance variables, events, and functions of the ancestor. You can augment the descendant by adding more variables, events, and functions. If you change the ancestor, even after editing the descendant, the descendant incorporates the changes.
  • 10.
    But … PowerBuilderdoes not force you to be Object-Oriented While it does not force you to be Object-Oriented, there are many benefits to be gained by maintaining this discipline …
  • 11.
    Why Build Object-OrientedApplications? Many aspects of programming are redundant Building and testing an application takes too long Object-oriented programming encourages and facilitates code reuse Distributed Programming requires object-oriented techniques Reusable business logic destined for Web Clients use demands object-oriented techniques.
  • 12.
    Advantages of Codeand Design Reuse Leverages work of other programmers / designers Reduces testing time Improves quality Responds more quickly to change Can develop subsequent applications more quickly
  • 13.
    Skills You WillGain Use PowerBuilder to construct object-oriented applications Exploit the object-oriented features and strengths of PowerBuilder Write generic code
  • 14.
    Summary Object-oriented codingfacilitates code reuse. Code reuse speeds up many areas of application development.
  • 15.
  • 16.
    Lab Setup Anexecutable is provided that is a sample solution of the application to be constructed during the labs in this course C:\Sybase Courses\BooaPB8\Solutions\Final. In this lab, you run this Order Entry application and observe its behavior.