8.1/10 (72 أصوات )

الدرجه : : الانترنت : : اعلن ريتشارد هي الوحده انتقدت في صالح الطبقه : : الانترنت : : عن. نبذه هذه هي اول محاوله في تقديم خدمه الدرجه الناصحين : : ميتا. ولا اجمل ، والدرجه : : الانترنت : : عن ما هو اجمل. الي ان استخدام احد. مجموعه مياب : : ثينغي » استخدام الفءه : : الانترنت : : اعلن : كل » استخدام البيانات : : وويد » الدرجه : : الانترنت : : اعلن الامين> الجديد ( ميتا => ( الرءيسيه => ، ثينغي اكيسورس => 000 acc_semi_affordance ، ) ، = الصفات » ( بي => 264 سياق => 000 ctxt_class ، اوثز => 000 authz_read ، = تخلف> 3.1415927 ، ) ، عيد => 264 اوثز => 000 authz_read ، النوع => 000 type_string ، = تخلف> الفرعيه (بيانات : : وويد -> الجديد> create_str) ، ) ، = الاسم » ( المطلوب => 1 ، النوع => 000 type_string ، = تخلف> اسم اي تقدم ، ) ، سنه => [نوع => 000) ، وtype_integer ) ، اساليب => ( some_method => 264 راي => 000 view_public ، = قانون & الفرعيه ( ونقل تقرير = 000 » العوده (4 - عكس) » ) ، ) ) ). وقدره الجسم = مياب : : - ثينغي & جديده » مياب المطبوعه : : ثينغي -> بي. # تطبع 3.1415927 طباعه موضوع - 000 » باسم » لقد نشرت المقدمه لا اسم ، 000 - شيء » set_name ( بوب) » طباعه موضوع - 000 » باسم » لقد نشرت بوب هذه الفءه علي التفاعل بديلا عن الطبقه : : ميتا. الدرجه : : ميتا هو مفيد وحده الذي يمكن ان تخلق فءات الدعم الذي اعتبر الاستيطان (ويعرف ايضا التفكير). عاده ، عندما اعتبر انشاء الطبقات ، لا توفر الكثير من البيانات. مساعده الوظاءف المستورده عندما تظهر لك شيء - 000 الي اكثر من (000 طريقه). الخاص ، وحمايه ثقه لا تكون اساليب الدعم. للحصول علي قاءمه الصفات او اساليب عشواءيه الشان. الدرجه : : ميتا فوق هذه القصور من بناء الفصول ويسمح لك انت ذهبت الي طبقه موضوع : وclass_object 000 = 000 جوه & my_class » وتعزو فورياش 000 (000 - class_object & الصفات) ( 000 - الطبعه الصفه » واسم ن. ) وطريقه فورياش 000 (000 - class_object & اساليب) ( 000 - الطبعه الطريقه » واسمه ن. ) اذا كنت تريد انشاء فءه ، صحيح ان هذه الممتلكات هي الان من السهل اكتشاف. للاسف ، نجد الكثير الدرجه : : ميتا بين ان تكون صعبه قليلا. وكبديل ، الطبقه : : الانترنت : : اعلن يسمح لك ان تعلن ان كل فءه واحده قاءمه علي الحجه والبناء الطبقي وقد بنيت لك تلقاءيا. اسباب التخلف ، ويرد علي كل شيء تقريبا. المهم : تريدون هذه الطبقه او الفءه : : ميتا اذا انت بحاجه الي ان يتعلموا دروس العربي. اذا انت لا تحتاج مراجعه او توليد ديناميه ، هذه الطبقه هي نماذج الاسراف. احتياجات : ? اعتبر



  • مرات التنزيل: 27562
  • متطلبات التشغيل:
  • الحجم: 0
  • الترخيص:
  • الاصدار : 0
  • اضيف في: 0000-00-00 00:00:00
  • اخر تحديث: 27/06/2014
  • الموقع علي الانترنت:






Description

Class::Meta::Declare is a Perl module deprecated in favor of Class::Meta::Express.

SYNOPSIS

This was a first attempt at making a saner interface for Class::Meta. It is nicer, but Class::Meta::Express is nicer still. Go use that one.

package MyApp::Thingy;
use Class::Meta::Declare ':all';
use Data::UUID;

Class::Meta::Declare->new(
meta => [
key => 'thingy',
accessors => $ACC_SEMI_AFFORDANCE,
],
attributes => [
pi => {
context => $CTXT_CLASS,
authz => $AUTHZ_READ,
default => 3.1415927,
},
id => {
authz => $AUTHZ_READ,
type => $TYPE_STRING,
default => sub { Data::UUID->new->create_str },
},
name => {
required => 1,
type => $TYPE_STRING,
default => 'No Name Supplied',
},
age => { type => $TYPE_INTEGER, },
],
methods => [
some_method => {
view => $VIEW_PUBLIC,
code => sub {
my $self = shift;
return [ reverse @_ ];
},
}
]
);

my $object = MyApp::Thingy->new;
print MyApp::Thingy->pi; # prints 3.1415927
print $object->name; # prints "No Name Supplied';
$object->set_name("bob");
print $object->name; # prints "bob"

This class provides an alternate interface for Class::Meta.

Class::Meta is a useful module which allows one to create Perl classes which support introspection (also known as reflection). Typically Perl classes, when created, don't supply a lot of metadata. Imported helper functions show up when you call $object->can($method). Private, protected and trusted methods are not readily supported. Fetching a list of attributes or methods is a haphazard affair. Class::Meta overcomes these shortcomings by building the classes for you and allowing you to fetch a class object:

my $class_object = $object->my_class;

foreach my $attribute ( $class_object->attributes ) {
print $attribute->name, "n";
}
foreach my $method ( $class_object->methods ) {
print $method->name, "n";
}

If you've set up your class correctly, these properties are now easy to discover.

Unfortunately, many find the Class::Meta interface to be a bit clumsy. As an alternative, Class::Meta::Declare allows you to declare your entire class in a single argument list to the constructor and have the class built for you automatically. Further, reasonable defaults are provided for just about everything.

IMPORTANT: You want this class or Class::Meta if you need an introspection API for your classes. If you do not need introspection or dynamic class generation, these modules are overkill.

Requirements:
· Perl





التعليقات علي Class::Meta::Declare 0.04
اضافة تعليق

تعليقات الفيسبوك

تعليقات الموقع