Skip to content

Perl Object Orientated Programming Paradigm Illustration

License

Notifications You must be signed in to change notification settings

saiftynet/POOPPI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 

Repository files navigation

POOPPI

Perl Object Orientated Programming Paradigm Illustrations

Perl uinlike many other languages is not short of Object Orientated Programming paradigms. The classical Package was deemed to be in need of modernisation to bring in the advantages (and possibly disadvantages) of true OOP ideologies along with legibility. The Corinna Project is one such solution, and the more mature, well-established Moose/Mouse/Moo and about a dozen different other ones. As a non-expert it is difficult to choose which one to learn, which one is best, future proof etc. Suppose we are going to modernise our existing working modules, can such a transition be benificial or will it bring unnecessary pain?

Which POOP?

In order to help choose one needs to look beyond the simple illustrations normally provided (the general purpose Person, Point etc that is often demoed) and try and use some practical examples. The objective is to collect practical code examples, not of isolated examples of using OOP using one method or another, but the same functionality delivered using multiple different OOPs.

  1. Develop a reasonably complex functioning target program without using any OOP at all, but with one or target structures (e.g a hash) to be objectified into a class. A little bit of cheating is used, in that the subroutines that are linked with the structure are sort of prepped for the next steps.
  2. Convert the code it to use the classic Package and use the module in a simple clone of that program.
  3. Adapt that to a modern Paradigm...e.g. using Object::Pad. Ideally would like as many examples of OO systems as possible
  4. Review and reflect on the ease of use, readability future using Polls for recording public opinions.

About

Perl Object Orientated Programming Paradigm Illustration

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages