Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 30.157.523 Times

Class::InsideOut::Manual::About 1.03

  Date Added: September 23, 2010  |  Visits: 931

Class::InsideOut::Manual::About

Report Broken Link
Printer Friendly Version


Product Homepage
Download (73 downloads)

Class::InsideOut::Manual::About is a guide to this and other implementations of the inside-out technique. This manual provides an overview of the inside-out technique and its application within Class::InsideOut and other modules. It also provides a list of references for further study. Inside-out object basics Inside-out objects use the blessed reference as an index into lexical data structures holding object properties, rather than using the blessed reference itself as a data structure. $self->{ name } = "Larry"; # classic, hash-based object $name{ refaddr $self } = "Larry"; # inside-out The inside-out approach offers three major benefits: - Enforced encapsulation: object properties cannot be accessed directly from ouside the lexical scope that declared them - Making the property name part of a lexical variable rather than a hash-key means that typos in the name will be caught as compile-time errors (if using strict) - If the memory address of the blessed reference is used as the index, the reference can be of any type In exchange for these benefits, robust implementation of inside-out objects can be quite complex. Class::InsideOut manages that complexity. Philosophy of Class::InsideOut Class::InsideOut provides a set of tools for building safe inside-out classes with maximum flexibility. It aims to offer minimal restrictions beyond those necessary for robustness of the inside-out technique. All capabilities necessary for robustness should be automatic. Anything that can be optional should be. The design should not introduce new restrictions unrelated to inside-out objects, such as attributes and CHECK blocks that cause problems for mod_perl or the use of source filters for syntatic sugar. As a result, only a few things are mandatory: - Properties must be based on hashes and declared via property - Property hashes must be keyed on the Scalar::Util::refaddr - register must be called on all new objects All other implementation details, including constructors, initializers and class inheritance management are left to the user (though a very simple constructor is available as a convenience). This does requires some additional work, but maximizes freedom. Class::InsideOut is intended to be a base class providing only fundamental features. Subclasses of Class::InsideOut could be written that build upon it to provide particular styles of constructor, destructor and inheritance support..

Requirements: No special requirements
Platforms: Linux
Keyword: Classinsideoutmanualabout Guide To Implementations Inside-out Insideout Libraries Name Object Objects Programming Reference
Users rating: 0/10

License: Freeware Size: 48.13 KB
CLASS::INSIDEOUT::MANUAL::ABOUT RELATED
Productivity  -  DeveloperPhoneProbe 1.0.0.1
developer Phone Probe is a Windows Phone app written to turn inside out the internal workings of the runtime used by such apps. This enables users to get a better understanding of how their device may operate, as well as acting as a debugging...
1024 KB  
Education  -  Basic OOP Concepts 1.0.0.0
Basic OOP Concepts application is related to information about the core concepts of Object-oriented programming (OOP). This App consists the most important core concepts of Object-oriented programming (OOP) where explanation will be given about...
3 MB  
Libraries  -  Class::InsideOut 1.02
Class::InsideOut is a Perl module with a safe, simple inside-out object construction kit. SYNOPSIS package My::Class; use Class::InsideOut qw( public private register id ); public name => my %name; # accessor: name() private age => my...
48.13 KB  
Libraries  -  Class::Std::Storable 0.0.1
Class::Std::Storable is a Perl module to support for creating serializable "inside-out" classes. SYNOPSIS In general, use this class exactly as you would Class::Std. package Ice::Cream; use Class::Std::Storable; { my %name_of :ATTR( :get...
8.19 KB  
Travel  -  Dining Out Guide to South Africa 1.0.0.2
The Dining Out Guide to South Africa is the most comprehensive list of restaurants and accommodation in the country. With more than 900 coffee shops, diners, fast food joints, hotels, bed and breakfasts, and more, all clearly marked on detailed...
2 MB  
Libraries  -  Chatbot::Alpha::Tutorial 2.04
Chatbot::Alpha::Tutorial is a beginners guide to Chatbot::Alpha 2.x. INTRODUCTION What is Chatbot::Alpha? Chatbot::Alpha is a Perl module for reading and processing Alpha code. Alpha code is a command-driven response language, primarily used...
30.72 KB  
Sports  -  Hockey Inside/Out 2.1.1
Hockey Inside/Out is the go-to app for fans of the Montreal Canadiens. Powered by the latest news, video, photos and commentary from the Montreal Gazettes award-winning team of hockey writers, Hockey Inside/Out keeps you in the game no matter...
11.6 MB  
Libraries  -  Class::Std::Utils 0.0.2
Class::Std::Utils is a Perl module for utility subroutines for building "inside-out" objects. SYNOPSIS use Class::Std::Utils; # Constructor for anonymous scalars... my $new_object = bless anon_scalar(), $class; # Convert an object...
5.12 KB  
Education  -  Quick Guide to English Verbs 1.01
Free English4Today studyGuide: Guide to English language verbs and tenses with optional online support materials and exercises. Part of a series of free studyGuides developed by English4Today.com for school, college,university and EFL students....
3 KB  
Sports Games  -  Computer Scientist's Guide to American Football 1.0
A Computer Scientist's Guide to American Football is in the form of a state diagram that models the basic flow of a game of American football. While a diagram could never capture all the intricacies of this great sport, this should be a useful...
39 KB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by freedesktop.org, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  wolfSSL 3.12.2
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
2.73 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB