РачунариПрограмирање

ПХП конструкт: креирање примерака класа

Идеја о објектно-оријентисаном програмирању је много шира од могућности ПХП-а због својих специфичности, али чак иу постојећој имплементацији она даје програмеру неограничене могућности. ПХП конструкт је посебан метод класе (објеката), који се позива сваки пут када инстанца инстанце инстанцира.

Ограничење је да ПХП функционише у тренутку формирања странице. У тренутку када се страница ажурира или се учита друга страница истог сајта, неопходан систем предмета се поново формира из нуле.

Креирање инстанце класе

Опис класе није потребан да има конструктор. Ако је потребно да припремите почетне вредности варијабли, ухватите тренутак инстанцирања класе (објекта), извршите одређене радње на другим објектима, онда не можете користити ПХП класу синтаксу конструисати и написати одговарајући код изван класа класе.

Према логици објектно-оријентисаног програмског стила, свака класа мора имати конструктора, и поред тога, потребно је покренути дрво класе од најебстрактнијег (апсолутно празног) предака. То је реликт прошлости, а не разумна пракса.

Када педигре почиње са значајном класом која има своје податке и својства повезане са вањским подацима (објектима), функција рутина ПХП се не може диспензирати.

У овом примеру, када креирате (ПХП конструкт) инстанцу класе датума, позива се ова функција (конструктор). Има специфично име __цонструцт и аутоматизацију га позива само једном, када се креира инстанца класе.

Ова класа пружа статичку варијаблу $ иУникуеНо, која ће у свакој новој инстанци ове класе имати јединствену вриједност. Примери класа немају ништа заједничко, осим описа унутар синтаксе ПХП-а и наменске интеракције њихових програмера.

Наслеђивање логике иницијализације

Сваки објекат мора остварити своју сврху, имати оно што му је потребно, и урадити оно што треба. Са такве разумне тачке гледишта, иницијализација на сваком нивоу педигреа може укључивати иницијализацију у сваком предаку званим са нивоа потомства.

У овом примеру, кључна реч парент :: дозвољава да позовете конструктора родитеља са нивоа потомкиње. Семантика је једноставна. Прво, преци морају извршити иницијализацију, затим тренутну инстанцу. Први прати своју логику, други - свој.

Када се сваки објекат ангажује у свом послу, цјелокупни процес изгледа тачан и разумљив. Али ово правило не треба сматрати нормом за све системе објеката.

Педигре прехрамбеног система у првом апроксимацијом може имати нешто заједничко, али производи млека, лубеница, тестенина и житарица, иако се односе на такав систем, али изгледају и описују сасвим другачије.

Програмер мора изградити сваки систем објеката из области примене, а не од начина на који је неко некада предложио. Сваки задатак је јединствен, захтев да га користите у ПХП родитељском конструкту није апсолутно.

Општи и приватни конструктори

Подразумевано, конструктор је генерички и доступан је за коришћење од свих потомака. Није неопходно навести конструкцију јавне функције, ПХП подразумевано сматра све описане, као опште.

Колико има смисла користити кључну реч приватну у опису конструктора - специфичност задатка, особина процеса развоја или преференције програмера?

Са концептуалне тачке гледишта, педигре предмета може толерисати било какву забрану предака у односу на потомке, али колико је логична логика у сваком случају отежати у општем контексту.

Вијек трајања предмета

Концепт објектно-оријентисаног програмирања је шири од ПХП конструкт класе због једноставног разлога који други постоје само у моменту формирања странице, његовог поновног стварања или стварања друге странице сајта.

Учешће АЈАКС-а путем ЈаваСцрипт-а и одговарајућег кода на серверу ће помоћи продужавању животних објеката, али у било којој верзији то ће бити ограничени стил.

ПХП пружа могућност извршавања скрипте на серверу када је клијент "искључен" и "дозволи" клијенту назад у скрипту на који је раније раније, али то није опција када се објектно-оријентирани програм имплементира у Ц ++.

У другом случају, можете направити комплетан систем објеката који ће постојати "заувек", док се програм покреће и покреће. Међутим, ово је једина ствар коју може похвалити стационарни програмски језик као што су Ц ++, Ц #, Пасцал и Делпхи. У динамичном свету интернета, све је изграђено другачије, живи брже и постиже више.

Од серијализације до самоодржавања

Можете пронаћи историјско оправдање за појам "серијализација" и појаву у свакодневном животу концепта "магичних метода". Али све је много једноставније. Тачно као и слобода Ц ++ се разликује од ригидности Ц #, серијализација се разликује од баналних концепата:

  • Напишите објекат у низ;
  • Прочитајте објекат из стринга.

Да се окружује поменута магија митским магичним методама је лепа, звучна, али не и практична. Свијет информација је пре свега интересантан јер се све видљиво, чујно и опипљиво може описати једноставним и досљедним текстом.

Информација је одувек била, јесте и биће низ симбола. Није битно каква је природа. У формалним конструкцијама програмских језика, природа карактера је једна - табела кодирања.

Идеја да се предмет претвори у низ тако да га можете вратити из ове линије без губитка суштине, ако је потребно, врло практична идеја.

Од самозаштите до саморазвоја

Семантика конструктора унутар његове синтаксе је ограничена, али ако се дизајнер развија из развојне позиције:

  • Постоји почетак - креира се потпуно нова инстанца;
  • Постоји тренутно стање - створена је постојећа инстанца.

Ограничења ПХП-а, јер систем објеката на њој постоји само у тренутку формирања странице, отићи ће сами.

Креирањем система објеката приликом креирања странице сајта, можете га сачувати. За једноставност, овај процес се не мора назвати серијализацијом, можете задржати текуће стање ствари (базе података, датотеке), а када је потребно поновно креирати исту страницу или креирати још једну на истој локацији, само вратите тренутно стање ствари које су већ формиране.

У том контексту, систем објеката се креира само једном, ау процесу сајта једноставно се развија. Са таквом шемом, можете дизајнирати систем објеката као нешто што се прилагођава променљивим условима постојања.

Систем самоуситавања објеката "сећао" се акције посетилаца и стање страница, а сваки пут када се ПХП покреће, он није креиран из нуле, већ је обновљен у претходном стању.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 sr.birmiss.com. Theme powered by WordPress.