Skip to main content

OOPS/Perl Examples + Excercises

Exercise:
Imagine the following situation. Software is to be written to handle information about the aircraft housed at a particular airport. There are various kinds of these aircraft and these fall into three categories: personal, elite and passenger. Personal and elite aircraft are privately owned and the airport keeps information about the owner’s name and contact details. Personal aircraft are never piloted by the airport’s pilots. Elite aircraft also have a V.I.P. associated with them. Elite aircraft are usually owned by companies but usually use the airport’s pilots. Passenger aircraft are owned by the
airport and have a regular route with predetermined destinations and only use the airport’s pilots.

All aircrafts have fuel quantities, hanger numbers, a maximum person carrying capacity as well as luggage and cargo, a maximum flying distance and several other values.

1. What classes can you identify in this description?
2. Draw these classes and their relations to each other. Can you identify any places where inheritance might be useful?
3. With each class list any methods and attributes you can think of that belong to that class.
4. Can we make use of inheritance polymorphism to reduce code duplication? Mark any methods you’ve included in child classes that can be inherited in total from an ancestor class.

PERL :

Exercises
1. Create a file called MyTest.pl Define at least two subroutines; pass and fail which print some
amusing output. Make sure that it uses strict.
2. Test that your code compiles by running perl -c MyTest.pl. (The -c tells Perl to check your
code).
3. Create a simple Perl script which requires MyTest.pl and calls the functions defined within.

---------------
OOPS Examples and Concepts :

1.A drinks machine has a number of attributes; the amount and type of coins with which to give change, inventories of the various drinks available, the cost of each drink, the current internal temperature, whether or not the refrigeration unit is operating, and so on. People don’t have direct access to those attributes, instead they’re restricted by the buttons and coin slots on the machine.
This interface is designed to ensure that only certain operations may be performed so that the machine maintains a consistent internal state. For example, the owners of the drinks machine only want to dispense a drink if an appropriate amount of money has been inserted.
The restrictions aren’t just in the interest of the machine’s owner, some of them are to help the customer as well. By maintaining a consistent state it’s possible to ensure that customers get both the drink they asked for as well as correct change. Some restrictions (like the machine being bolted to the floor) can stop potentially dangerous operations, like people trying to rock the machine. Otherrestrictions help ensure that the internal temperature setting can’t be changed and spoil the drinks for
others.
2.A common mistake in object oriented programming is to forget the distinction between objects and their classes. The class is the description of the object and the object in an instance of the class. For example the class of humans would describe us as having the attributes such as arms, hands, legs and heads; and methods such as talk, think, eat, and sit. However each of us would be an instance of that class, an object. If I can jump it’s because humans can jump, if I can laugh, it’s because humans can laugh. That is, the class defines the methods and attributes for each object belonging to that class.

3.
Parent and child classes are related by an "is a" relationship. A credit-card drinks machine is a drinks
machine, and a grandfather-clock is a clock. Inheritance extends not just to parents, but to
grandparents and great-grandparents and so on as well. So a credit card drinks machine is a drinks
machine is a vending machine is a machine. The further up the ancestry we go, the more generalised
things become.
We should note that there’s a difference between "is a" relationships and "has a" relationships. A car
has a steering wheel (which may be a class unto itself that inherits from a steering device class), but
it is not a steering wheel. A car has a headlight (or two) but the car is not a headlight. On the other
hand, the car may inherit from the vehicle class and hence we’d say the car is a vehicle. It’s usually
fairly straight forward to determine which is the correct relationship

Comments

Popular posts from this blog

How to Use Chisanbop (Korean Finger Math) for Basic Addition and Counting | eHow.com

How to Use Chisanbop (Korean Finger Math) for Basic Addition and Counting eHow.com Difficulty: Easy Instructions Step 1 In Chisanbop you'll be using your two hands and ten fingers to represent numbers from 0 to 99. Start out with your hands out in front of you with closed fists. This represents 0. Each finger (not thumb) on your right hand represents 1. To represent 3, just press down three right hand fingers. Your right thumb represents 5. To represent 7, press down your right thumb and 2 right hand fingers. Think of your right hand as the ones or units place (column). Step 2 Your left hand represents the tens place (column). Each finger on your left hand is worth 10. For example, to represent 30, press down three left hand fingers. To represent 38, do the same, but also use your right hand to represent 8 as described above. Your left thumb represents 50. To represent 86, press down your left thumb and three left hand fingers for the 80, and your right thumb and one righ...
Should we allow our staff to use social networking sites? Some people say they are dangerous but I can't see how. Can you explain the dangers? > EXPERT RESPONSE There's nothing wrong with using Facebook, other than the potential impact on working time, but that's not a security matter! The issue is in how your staff configures Facebook, and what information they place on it. A few tips to pass on to your staff: Don't allow anyone that isn't part of your network of 'friends' to see your profile. Don't allow non-friends to see your friends. Why? I could easily impersonate one of your friends, fake a new profile, and send you an invite. You accept, thinking a genuine friend has created a new profile, then I'm in your network of friends and can see your profile. Think about what information is in your profile. What would be useful in stealing your identity? Date of birth, address, email address, employer, interests. why does this type of information n...

Creative commons

Few Terms related to CC  - Commons :  The Commons refers to resources that are collectively owned. [1] This can include everything from land to software. [2] The process by which the commons are transformed into private property is often termed enclosure . [source : wikipedia ] The public domain (public ownership of creative works) is an intellectual property designation for the range of content that is not owned or controlled by anyone. These materials are "public property", and available for anyone to use freely (the "right to copy" [1] ) for any purpose. The public domain is most often discussed in contrast to works whose use is restricted by copyright . Under modern law, most original works of art, literature, music, etc. are covered by copyright from the time of their creation for a limited period of time (which varies by country). When the copyright expires, the work enters the public domain. The public domain can be defined in contrast to several f...