initial checkin
[gitmo/MooseX-Patterns-GOF.git] / lib / MooseX / Patterns / GOF.pm
CommitLineData
eda1e151 1package MooseX::Patterns::GOF;
2
3use warnings;
4use strict;
5
6=head1 NAME
7
8MooseX::Patterns::GOF - Moose Versions of the 'Gang of Four' Design Patterns.
9
10=head1 VERSION
11
12Version 0.01
13
14=cut
15
16our $VERSION = '0.01';
17
18=head1 SYNOPSIS
19
20Please see the SYNOPSIS section of each individual Pattern Class.
21
22=head1 DESCRIPTION
23
24Design Patterns are best practices solutions to common problems faced by
25software engineers. Orginally popularized by the book of the same name
26L<http://en.wikipedia.org/wiki/Design_Patterns> these patterns, and how to
27implement them in a programming language, continue to have an impact on
28software design.
29
30L<MooseX::Patterns::GOF> is a set of classes which are both examples of the
31classic patterns with a Moosified spin, as well as useful bases for your
32practical projects. Thus the purpose of these classes are both educational
33(for learning L<Moose> and for increasing awareness of good software design)
34and practical.
35
36Design patterns are always evolving; additionally the classic patterns we will
37explore here were originally created to help solve problems that arise with
38statically compiled and strongly typed languages (such as Java). So we hope to
39find more Perlish (and Moose-ish) solutions when we can. Contributions,
40suggestions and constructive criticism welcomed!
41
42=head1 PATTERNS
43
44The classic Design Patterns books described many patterns organized into the
45following three types:
46
47=head2 Creational
48
49Patterns having to do with the creation of new objects.
50
51=head2 Structural
52
53Patterns for class composition and inheritance.
54
55=head2 Behavioral
56
57Patterns for object communication.
58
59=head1 AUTHOR
60
61John Napiorkowski, C<< <jjn1056 at yahoo.com> >>
62
63=head1 BUGS
64
65Please report any bugs or feature requests to C<bug-moosex-patterns-gof at rt.cpan.org>,
66or through the web interface at L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=MooseX-Patterns-GOF>.
67I will be notified, and then you'll automatically be notified of progress on
68your bug as I make changes.
69
70=head1 SUPPORT
71
72You can find documentation for this module with the perldoc command.
73
74 perldoc MooseX::Patterns::GOF
75
76
77You can also look for information at:
78
79=over 4
80
81=item * RT: CPAN's request tracker
82
83L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=MooseX-Patterns-GOF>
84
85=item * AnnoCPAN: Annotated CPAN documentation
86
87L<http://annocpan.org/dist/MooseX-Patterns-GOF>
88
89=item * CPAN Ratings
90
91L<http://cpanratings.perl.org/d/MooseX-Patterns-GOF>
92
93=item * Search CPAN
94
95L<http://search.cpan.org/dist/MooseX-Patterns-GOF>
96
97=back
98
99
100=head1 ACKNOWLEDGEMENTS
101
102
103=head1 COPYRIGHT & LICENSE
104
105Copyright 2008 John Napiorkowski, all rights reserved.
106
107This program is free software; you can redistribute it and/or modify it
108under the same terms as Perl itself.
109
110
111=cut
112
1131; # End of MooseX::Patterns::GOF