Friday, January 18, 2008

Math/Science Report

Object-Oriented Programming:
Object-oriented programming is a method of computer programming that focuses primarily on the use of a graphical interface, rather than requiring the user to input individual lines of code. Some examples of modern languages that incorporate some degree of OOP (read: object-oriented programming) include:
➢ C++
➢ Microsoft Visual BASIC
➢ JAVA
➢ Adobe Flash

C++ is a language derived from C that is renowned for its ease of use and high level of adaptability. This makes it a popular choice of modern software developers for everything from server integration to designing the most recent video game titles. Visual BASIC is an extension of the Microsoft BASIC language, created specifically with OOP in mind. It comprises the underlying architecture of Windows, and is therefore notable from a programming standpoint.

JAVA, and by extension Flash are a common alternative to C++. Flash is a useful tool in website and animation design, allowing for seamless integration of visual and code-writing values. For this reason, this program is venerated by novice video game designers whose amateur works occupy the majority of the bandwidth of such popular sites as Addictinggames.com.

Basic Concepts of Object-Oriented Programming:
There are eight basic concepts in OOP. Called “quarks” by those in the field, they include the following (Abadi):
➢ Class
➢ Object
➢ Method
➢ Message Passing
➢ Inheritance
➢ Encapsulation
➢ Abstraction
➢ Polymorphism

Class:
Class is one of the most important of the fundamental concepts of OOP. It is defined as the basic essence that sets one object apart from another. In this way, an object is connected to a series of subroutines, based on the qualities that define it (Abadi).

Object:
An object is the basic unit in OOP. This takes the place of lines of code in traditional programming, and is directed by instances (see Figure 25C-A2). These modifiers define which properties an object possesses, and how they will change by the actions of the user during execution.

Method:
The method refers to the way in which Classes are modified by their instances. In this way, if a car was to be considered an object, instances of said car would include such qualities as drive ( ) and park ( ) in that these represent actions that such an “object” would be likely to perform. As seen in Figure 25C-A3, each instance contains an inherent method (Object).

Message Passing:
Figure 25C-A3 illustrates the concept of message passing, how an object calls upon each instance.

Inheritance:
Inheritance allows subclasses to gain the attributes of their parents, while allowing them to be programmed only once. In this way, OO Programmers can be more efficient and reduce the chances of scripting errors. For example, if a car was to be considered a class, its subclasses would include brands such as Ford ( ), Cadillac ( ), Toyota, and Infinity ( ), and each of these would “inherit” the instances of drive ( ) and park ( ). (Object)

Encapsulation:
This allows instances to apply only to certain classes at certain times in an effort to allow objects to adapt more readily to changing information. In this way, methods are defined as “public”, “protected”, or “private”. Public access allows the subroutine to be accessed at any point in time by any client. “Protected” instances can only be accessed by certain subclasses, while “private” indicates that an instance may only be accessed by the specific, defining class (Object).

Abstraction/Polymorphism
Abstraction allows different classes to be modified at the most appropriate level of inheritance, allowing the program itself to open each subroutine without knowing the specific details of each unit. Polymorphism occurs when a class may be defined by any of its subclasses depending on the scope of the method (Object).

Macromedia Flash:
Macromedia Flash is an Object-oriented program, derived from JAVA, used primarily in graphical design and animation for website design and other uses (Flash). It is ideal for the design of Willowbrook due to its ease of use, and attractive, graphically based user interface.

Flash Animation:
Although animating with Flash is a fairly involved process, it greatly simplifies the traditional methods (see Figure 25C-A4).

Method:
In order to animate in flash, one must import image files in .bmp format, rasterizing, to ensure smooth blending during scene transitions (Flash). From there, the user creates a background, extrapolating it over several scenes, while modifying the animated object between each frame, so that the illusion of movement is created. Audio files can be added and the frame rate adjusted to increase realism.

Summation:
Object-Oriented Programming is one of the most popular methods of creating new applications and web content. Its ease of use, coupled with a high degree of adaptability allow the user unparalleled freedom to create. Perhaps the quintessential example of OOP is Macromedia Flash. This system is popular with man novice game designers, and will therefore be a good format to base Willowbrook off of, allowing for my creative vision to be fulfilled without overcomplicating the design process with excessive coding or other complexities.

No comments: