>> Lai sāktu, lai novērstu to, varētu būt jūsu vienīgā pieredze
ar web programmēšana, ko es domāju, ka es gribētu darīt, ir nozagt pāris
piemēru, ka jūs var būt redzējis 50
Ja jūs pārņēma tā ir pagātne vai divus, vai var nebūt
Ja jūs pārņēma to pirms dažiem gadiem
ka ir bērnu soļi pretī pyridine pazīstams kā MBC,
Model View Controller, un ko tas nozīmē?
Tas ir, mēs redzēsim atkal, iespējams ir tikai veids, kā sākt
sakopt dizainu dažu tīmekļa gabals programmatūras,
vai tas varētu būt klienta pusē bāzes, kā arī, bet mēs izmantosim to
saistībā ar PHP, lai mēs varētu sākt
lai sarežģītāka projekti un kārtot
atsevišķu dažāda veida kods projekta pieteikumā;
it īpaši tā, ka tad, kad mēs ir vairāki cilvēki, kas strādā
par projektu, tas ir daudz vieglāk zīmētu līnijas.
Tāpēc vispirms pieņemsim apskatīt optimāli
īstenot kaut ko.
Pieņemsim, ka es gribēju, lai super vienkāršs kurss mājas lapā 50
vai jebkuru citu klasi, un ka klase ir lietas
piemēram, lekcijas un mācību programmu.
Es varētu darīt kaut ko līdzīgu h1 tag augšpusē manu lapu
un Nekārtots saraksts ar li saraksta elementi, lai
vienkārši ir aizzīmētu sarakstu izvēlnes iespējas, lai super vienkārši.
Tātad, kā varētu mēs to darām?
Nu, ļaujiet man iet manā termināļa logu šeit
un ievēroju, ka man ir lasīt mani un mēs saiti uz šo kodu
par kursu mājas lapā mazliet,
un ievēroju, ka man indekss dot htm - indekss dot php.
Tātad, ļaujiet man iet uz priekšu un atvērt ka, un tik tiešām tas ir veids
muļķīgi, ka šis pat sauc php
jo viss, kas man ir ir PHP comment
un tad viss pārējais ir tikai neapstrādātu html kodu.
Bet atkal tas ir versija nulle,
tā solis ceļā kaut ko interesantu,
bet paziņojums es esmu smagi kodēta CS50 kā nosaukums, CS50 H1,
un tagad man ir lekcijas saiti,
tagad man ir mācību programmas saiti.
Labi tā, ka nav šķiet, viss, kas nepamatoti
līdz brīdim, kad jums sekot saiti, piemēram, lekcijas, un tu saproti
ka viss ir labi tas ir atšķirīgs saturu, bet tas ir sava veida
no to pašu; tas ir virsraksts lapas un Nekārtots sarakstu.
Es uz nedēļu nulle no pagājušajā gadā, un tas ir veids
par vienu un to pašu, h1 tag un Nekārtots saraksts
un tad beidzot es noklikšķiniet tas, un man ar kādu lapu,
kas slaidi no ka īpaša lekcija.
Tātad kaut kas man saka Es esmu par to verdziskums.
Ja es atvērt lekcijas dot php paziņojums
ka tas ir diezgan daudz, kopēt un ielīmēt no iepriekšējo failu;
Es tikko mainīja nosaukumu uz h1, un ko šīs saites.
Vēl sliktāk, ja es dodos uz nedēļu nulle dot php,
tas pats copy paste darbu
tikai mazliet saturs tweaked.
Tātad, protams, tur ir iespēja šeit, lai uzlabotu,
un, protams, tas būtu ir labs noteikums īkšķis;
jebkurā laikā jūs jūtaties pats kopēšanu
un līmēšana kaut ko vairāk nekā varbūt vienu reizi,
sarkano karogu cerams sāk iet off.
Bet kā mēs varam iet par uzlabotu šo?
Nu, tur ir daži veidi, un metodes, jūs varat izmantot
php ir mainījies laiku, bet pieņemsim izmēģināt šo vienu.
Ļaujiet man iedziļināties versija vienā, tāpēc nākamais atkārtojuma to,
un ļaujiet man mēģināt tīrīt to uz augšu mazliet.
Tiesības, kas ir viens no php ir Vienkāršākais mehānismi
lai atrisinātu šo problēmu, ir vecās skolas prasa funkciju,
kas diezgan daudz dara kopiju un paste satura
Dažu failu tieši šeit, piemēram, c ir ass ietver,
un citās valodās ļoti līdzīgas konstrukcijas.
Tātad, tas izskatās nedaudz dīvaini tagad,
tas noteikti nav pabeigt meklē mājas lapā,
bet, iespējams, to, kas ir iekšā header dot php.
Visas citas lietas, labi, html tag, galvas tag,
nosaukums tag, visi sīkumi tas bija virs galvenā būtība
lapas, kas varbūt tikai Nekārtots saraksts,
un kājenes ir iespējams piemēram, slēgtā ķermeņa tag,
slēgtā HTML ir tag; diezgan neinteresanti
bet dublējas sīkumi.
Labi, un pārliecinieties, pietiekami, ja es dodos
uz galvenes dot php tas ir tikai veida reti sastopamu slimību ārstēšanai fragmentu
no augšas, un, ja es iedziļināties kājenes dot php,
tas ir bāreņiem Fragments no apakšas,
un es esmu, izmantojot tos pašu fragmenti maniem citiem failiem,
piemēram, lekcijas dot php.
Labi, lai to, kas ir labāk par šo jūs teiktu?
Yeah?
>> Vienkāršība.
>> Vienkāršība?
Es nezinu, šāda veida izskatu daudz scarier man tagad, vai ne?
>> Ja es gribēju mainīt savu header, jums nebūtu
lai mainītu to visu iepriekšējā piemēram failus.
Jūs vienkārši mainīt jūsu galvenes.
>> Tieši tā, tāpēc varbūt Tiktāl tā ir vienkāršāk,
varbūt es gribētu rāmi tā, kā tas ir vienkārši tā ir vieglāk atjaunināt.
Tas ir varbūt nedaudz tīrāku
tāpēc, ka jūs atjaunināt tas tikai vienā vietā.
Tātad tas ir diezgan pārliecinoši; kas ir negatīvie
Šīs pieejas vai kāda problēma joprojām
ka mēs neesam īsti atrisināt?
Yeah?
[Off Mic Piezīme]
Jā, tieši tā, es domāju, es esmu vēl kopējot un ielīmējot;
tas ir nedaudz mazāk, bet es tikai velk divi no šiem failiem,
un viņi diezgan daudz joprojām izskatījās identiski.
Bija vajadzīgas top, nepieciešama apakšā,
un Nekārtots saraksts pa vidu
kas pats par sevi vēl strukturāli pats.
Turklāt, paziņojums šo, ja es faktiski apskatīt šo piemēru,
ļaujiet man iet uz Version One tagad,
un paziņojums man CS50 Lekcija Mācību programma.
Uh oh, CS50 nedēļa Zero nedēļa Viens un CS50 trešdiena Piektdiena,
Es esmu veida sagriež stūri.
Kāds bija - kādi bija šie nosaukumi agrāk?
[Off Mic Piezīme]
Viņi bija kā lekcijas Nedēļa Zero, tāpat kā tas bija sava veida
un sexier, un tas faktiski bija dažas dinamiku uz to,
un tas ir sava veida - es esmu tikai veida punting tagad
un tikai pieņemot, ka visā mājaslapā ir CS50
un labi tā darbojas, bet tas ir protams, nav tik elegants
vai kā veida taisni priekšu, kā tas bija kādreiz,
bet tas ir jēga, jo ja paskatās indekss dot php
un lekcijas dot php un nedēļu nulles dot php,
viņi visi, ieskaitot pats fails,
Tātad, kā mēs varam uzlabot šo?
Kas ir nākamais atkārtojuma šis kodekss, iespējams, gatavojas darīt?
[Off Mic Piezīme]
Jā, tieši tā, tāpēc, ja - un ļaujiet man apkopot
ar mēs galvenokārt gribam parameterize ka galveni
tāpēc, ka, jā, tur ir vēl grūti kodētu h1 tag, bet sīkumi
starp, atklātā un aizvērt tagu,
Jādomā dinamiska, un nāk no kaut kas cits.
Varbūt "iegūtu virkni" vai lieta pēc jautājuma zīme
URL, bija kaut kur cits, tāpēc pieņemsim to apskatīt.
Tātad, ja es iedziļināties versija Two,
tagad paziņojums, ka es esmu saņēma papildu fails,
izskatās, ka palīgi dot php.
Man nav tiešām zināt, kur sākas tāpēc es esmu gatavojas sākt tikai
uz indeksu, piemēram, kā vienmēr, un tagad pamanāt, ka tas ir nedaudz atšķirīgs,
tāpēc man ir nepieciešams līniju
augšpusē nepieciešama palīgi dot php,
bet es nevaru to nosaukt ko es gribu,
bet tagad paziņojums līniju trīs ir funkcija zvans
padarīt header, kas ir Interesanti, tikai tiktāl, ciktāl
par to, kas tiek pieņemts acīmredzot, pasūtījuma nosaukums
šajā konkrētajā lapā.
Tajā pašā laikā tur ir padarīt kājene apakšā,
un man nav nepieciešama nekāda parametrizēšana tur tas ir tikai
kājene, bet tagad šķiet,
būt solis uz labāk risinājums, padarīt header notiek,
un ko darīt kvadrātu iekavās norāda tiem
kas nav redzējuši php kādreiz vai brītiņa?
[Off Mic Piezīme]
Jā, tas ir masīvs.
Tas ir asociatīvā masīva vai hash, kas apvieno atslēgas
ar vērtībām; tas ir tāpat kā Java Skripti, iebildums atzīme,
vai citas valodas, līdzīgi syntaxs.
Labi, lai to, kas ir ar palīgiem dot php?
In palīgi dot php tas ir tikai pāris funkcijas,
padarīt galveni un padarīt kājeni.
Tāpēc pāris detaļas ja mazāk pazīstami,
lai vispirms ar to
kas padara header notiek dati, arguments, ka acīmredzot
piešķirts tukšs masīvs tur ir, ko?
Ko tas nozīmē darīt vienāds atvērt kronšteins slēgts kronšteinu
kā parametrs php?
Tas ir noklusējuma vērtība.
Tātad, ja man nav caurlaide masīvā vai nevienu argumentu
uz apmetuma galvenē vai apmetuma kājenes funkcija,
Es varu vismaz uzticību, jo autors šīm funkcijām
ka dati būs minimāli būt tukšs masīvs;
netiks undefined vai nepatiesa, vai kaut kas tamlīdzīgs,
tas būs tieši tas, ko Man bija tā, kā noklusējuma.
Tagad tas ir mazliet veida hackish veids, iekraušanas simboli
jūsu vārdu kosmosā tā sakot,
bet tas darbojas diezgan arī uz šim nolūkam
īstenot mūsu pašu veida nabadzīgo ļaužu šablonu dzinējs.
Labi, tur ir daudz instrumenti, kas tur par Python, Ruby
un php kas dod jums šablonu iespējas
un tas ir tieši tas, ko mēs gribam.
Mēs vēlamies veidni, kas ir h1 open tag, h1 slēgta tag,
un veida vietu turētāju vidū,
, un mēs vēlamies, lai aizpildītu šīs vietas turētāji, caur šo funkciju,
tāpēc šī funkcija iegūt tikai tā notiek,
lai dotu jums šādus iespējas.
Ja tev asociatīvais masīvu ar galveno vērtību pārus
piemēram, foo vienāds bārs, ekstrakts radīs vietējo mainīgais
aicināja efektīvi dolāra zīmi foo un piešķir tai vērtību bar
tāpēc tas eksplodē savu asociatīvās masīvs no galvenajiem vērtību pārus
jaunos mainīgajiem ar attiecīgās vērtības.
Un tad prasa dot galveni dot php ir tāds pats, kā iepriekš,
lai to, ko mēs, iespējams, būs lai redzētu iekšpusē virsraksta dot php?
Tas ir iespējams, ieguvuši, ka h1 tag un aizvērt tagu; kas notiek
būt iekšpusē tā iespējams, starp to?
[Off Mic Piezīme]
Tieši tā, tur ir iespējams, dažas pieminēšana dolāra zīmi nosaukuma
un tik tiešām, ja es tuvinātu par to tur ir mans nosaukums tag,
tur ir mana h1 tag, un iekšā un tā ir dinamiska ievietošanas
no dolāra zīmi nosaukumu, bet tikai labs pasākums,
Es esmu darot šo html īpašs maksas atrociously nosaukts
funkcijas, bet tas ir lietderīga; ko tas dara
vai to, ko tas aizsargā pret?
Tas ir faktiski risinājums uz draudiem, ko hinting;
Jūs būtu novedusi mūs.
[Off Mic Piezīme]
Tieši tā, tāpēc, ja ļaunprātīga lietotājs vai nenojauš upuris
pikšķerēšanas uzbrukuma uzklikšķināt uz saites
ka sevi bija jautājuma zīmi un kaut kā foo vienāds,
un tad vērtība foo patiesībā bija
piemēram, atklātā grupā Skripts, slēgta kronšteins,
un tad daži JavaScript kodu;
ja Jums nav saucam ilgi galvenā funkcija,
jūs faktiski inficējošās neapstrādāta html savā mājas lapā,
rezultāts, kas ir ka Jums varētu būt tricked.
Jums varētu būt tricking lietotājam uz izpildes JavaScript kodu
ka viņš vai viņa darīja faktiski nav paredzējis.
Un, pat ja parasti jūs tikai hurting sevi,
piemēram, tikai jūs zināt idiots gatavojas rakstīt
atklātā stiprinājuma skriptu, slēgta kronšteins, un saka brīdinājumu
vai kaut kas tamlīdzīgs un darīt viņam sevi
ar kādu dīvainu rezultātu, Ja jūs saņemsiet tricked
noklikšķinot uz saites, kas ir neapstrādāta JavaScript iebūvēta tajā
par vērtību, kas saistīt,
Jūs varat cita starpā nozagt kāda cilvēka sīkdatnes
jo tur ir īpašums sauc dokuments dot cookie
JavaScript, kas ļauj jums sagrābt lietotāja sesijas cookie,
un, ja jūs atceraties, ko sesija nolaupīšana uzbrukums ir,
garš stāsts īss, tas ir viens veids, kā faktiski tricking kāds
uz sniedzot jums, ka virtuālā rokas zīmogu un tad, ņemot
pār savu Facebook kontu vai kāda cita veida profilā.
Labi, tāpēc šis ir diezgan garš,
bet tas ir tikai, izmantojot neapstrādāta html kodu.
Tas ir ekvivalents izsaucēja atbalss
vai efektīvi drukāt, un mēs būtībā ievietojot
kas dinamiski.
Tātad, kas vēl joprojām ir šeit?
Nu, ļaujiet man iedziļināties Version Trīs šeit
un mēs redzēsim nedaudz dažādi -
pašā precīzu faila izkārtojums bet paziņojums
ka šoreiz mēs ejam vispārināt galvenes un kājenes
kā veidnes, lai to, ko es domāju ar šo?
Kas ir viena lieta tas ir atšķirīgs šeit?
Kas ir mainījies kopš pēdējā versija?
Smalks, bet tas ir apstrīdami tikai labāk tīrāku dizains.
Yeah?
[Off Mic Piezīme]
Jā, tur ir tikai viens Standarta padarīt funkciju;
Man nav īpašs gadījums padarīt header vai padarīt kājeni,
abi, ja jums atsaukšana no palīgiem dot php,
mēs esam diezgan daudz identiski izņemot to nosaukumiem
un veidnes tie iekļauti.
Kāpēc ne tikai parameterize apmetuma funkcija
un veikt vienu argumentu, kas ir nosaukums veidnes,
un otrā izvēles arguments kas ir galvenie vērtību pārus
ka jūs vēlaties, lai kontaktdakšu collas
Tātad, ja es tagad paskatās palīgi dot paziņojumu php
, ka es esmu to nedaudz mīļotājs tagad.
Es tiešām pārbaudīt nav fails pastāv, un, ja tā iet uz priekšu
un tas vajadzīgs; tikai gadījumā, ja lietotājs nejauši veidi
Dažās viltus veidnes nosaukumu, nevēlos mest kļūdu
programmā, lai mēs varētu minimāli darīt to šis
labu šeit.
Viss ir labi, bet mēs varam ņemt to soli tālāk?
Šajā versijā šeit pamanīt sekojošo.
Esmu tikko ierakstījāt ls, un , kas uzreiz lec
kas ir nedaudz atšķirīgs.
Tātad tur ir divi katalogi, labi,
un tāpēc tagad tas ir solis pretī , kas galu galā ir vairāk
pareizu regulējumu.
Tas ir sava veida apliets no manis throwing visu
mana satura iekšpusē publiski pieejamu katalogs
kas burtiski sauc publiski.
Un, kaut arī diemžēl, daudz sistēmu,
vecajās īpaši, un pat dažas tīmekļa posts,
Sapnis Host vidū, spēki Jūs varat nodot visas jūsu failus
kas ekvivalenta sabiedrisko katalogs pat
ja jūsu failus varētu ietver datu bāzes paroles
un lietotājvārdi vai citas šādas pilnvaras,
tas nepavisam nav labs dizains.
Daudz labāk ir likts tikai
publiskajā direktorijā , kas absolūti ir
būt lietotājam pieejamu, un viss pārējais
ka jūs, tostarp piemēram, palīgi dot php,
nav iemesla, ka šis jābūt web pieejama caur
pārlūkprogramma ar url.
Tas varētu būt pilnīgi nekaitīgs ja lietotājs vēlas redzēt varbūt
kam pāri, bet tas ir tikai tā principa,
un nedod Dievs tas faktiski ir lietotāja vārdu un paroli;
jūs nevēlaties lietotājs nejauši
vai tīši ir varētu piekļūt.
Tātad mēs neesam gluži perfekta pieeja šeit
bet paziņojums sekojošo tagad.
Jo rādītājs dot php, ievērosiet, ka Es joprojām nepieciešama palīgiem,
bet daru to tādā veidā ka es esmu veida organizēt visu
failus, kas tiks iekļauti
uz apakšdirektorijā sauc tradicionāli ietver
un tad es aicinu apmetums Galvene un kājene kā agrāk.
Tātad vienīgā lieta Es esmu darījusi, ir sava veida
gada reorganizēt manu katalogi līdz nedaudz vairāk Anal
par failu struktūru.
Bet, ja mēs tagad iet uz Šis piektais piemērs,
paziņojums, ka mēs tagad ir trio mapes,
un tas ir nedaudz maldinošu brīdī
jo, vienkāršība labad klasē,
Esmu tikko izmet visu
uz John Harvard s Sabiedrības Directory tikko
lai mēs varētu doties to, izmantojot pārlūku, bet paziņojums -
ignorēt šo daļu tikai brīdi,
tas, ka es esmu tur.
Ievērojiet, ka man ir trīs apakšdirektorijas: valsts,
veidnes, un tā ietver.
Ideja ir tāda, ka ir pareizi konfigurēts tīmekļa serveris I
pateiks Apache, ka šis mājas lapa ir publiski pieejama
failus šeit un nekur citur.
Tātad, ko failu jūs domājat Es esmu gatavojas redzēt iekšpusē
Sabiedrisko ja es tipa ls?
Kas ir vismaz vienu failu tas ir iespējams, jo tur?
[Off Mic Piezīme]
Labi indekss dot php, un kāda fails ir acīmredzami nav
tur cita starpā?
Tāpat kā palīgi dot php, galveni dot php, kājenes dot php;
visas fragmentiem, visu funkcionalitāti
tas nav īsti nepieciešams jābūt publiski pieejamiem,
tai ir jābūt izmantojamiem ar failiem
, kas ir publiski pieejama, bet viņi paši,
nav lietotāja vajadzībām, lai redzētu, vai koris URL palīgi dot php.
Ievērojiet, ka tā vietā, ja es dodos
uz ietilpst tur palīgi dot php,
un, ja es dodos uz veidnes,
tur ir kājenes un header dot php.
Atklāti sakot, es varētu izvirzīt tos tajā pašā direktorijā,
bet es cenšos būt vēl vairāk anālais par saglabājot failus
tas ir tikai sava veida statiskā veidnes atšķiras
No funkcionālās failiem piemēram, palīgi dot php,
un es esmu tikai ievērot dažus diezgan bieži konvencijas
zvanot katalogi ietver un veidnes.
Tātad vienīgā lieta, kas mainījusies, tad atkal ceļš.
Ja mēs ejam uz augšu šeit paziņojums ka es tagad vienkārši ir
ietvert relatīvo direktorijā,
dot dot slash ietver palīgi dot php,
vai man var būt nedaudz vairāk pareizu un faktiski darīt kaut ko
kā šis, php un daudz
Valodu ir Šie īpašie simboli
, kas atspoguļo pašreizējā faila direktoriju,
lai uzsvērtu pasvītrojuma dir uzsvērt pasvītru pārstāv
neatkarīgi katalogs ir šo failu,
un tāpēc, ja jūs vienkārši saķēdēt ar dot operatoram, ka,
kas varētu sasniegt pašu rezultātu,
un parasti ir nedaudz vairāk stabils, jo jūs varat saņemt
par situāciju ar relatīvo katalogi bija tikai saku dot
vai dot dot faktiski var nest uz nepareizā vietā,
tāpēc tas mēdz būt nedaudz stingrāku.
Labi, lai to, ko lai gan paliek?
Ko jūs vēl nepatīk par šo?
Kas varētu uzlabot, un jūs komentēja to agrāk es domāju, ka
ka tur ir vēl daži jautājumi?
[Off Mic Piezīme]
Labi, protams, mums nav , lai sāktu rakstīt, piemēram, vietās,
ka izskatās šādi, labi?
Tas nejūtas visi, kas daudz labāk,
tur ir vēl kopēt paste.
Man joprojām ir pieprasa līniju augšpusē.
Man joprojām ir padarīt header padarīt kājeni.
Tur ir daudz dublēšanās.
Yeah?
[Off Mic Piezīme]
Jā, tieši tā, tāpēc mēs esam veikuši soli ceļā veida sadalīšanas
līdz "C" no "v", lai MVC ir Model View Controller;
kontrolieris ir sava veida smadzenes pieteikumu.
Modelis mēdz būt datu vai kādu dalīta funkcionalitāti,
un skats mēdz būt estētika, veidni,
tāpēc mēs esam spēruši soli pretī atdala "c" no "v"
jo mēs tagad vismaz ir Šī veidne direktoriju,
bet arī tur mēs būtībā ir viens kontrolieris uz vienu failu.
Tas nav izskatās tur ir daudz loģika šeit notiek,
bet indekss dot php ir efektīvi kontrolieris.
Kad jūs apmeklējat URL un beidzas indeksu dot php,
visas loģikas ka īsteno šī lapa ir taisnība
ar indeksu dot php, un Tas pats lekcijas dot php.
Pats par nedēļu nulles dot php.
Tāpēc mēs esam sava veida strone mūsu loģika visas vietas,
un tā uzskata, tāpat tas nav gatavojas
mērogā ir ļoti labi, kad mēs ir nevis četri, bet četrdesmit lapas
ja katra lapa sākas ar man kopējot vecāku versiju
faila un tikko tweaking daži
satura iekšpusē no tā.
Tāpēc mēs esam tikai ņemt solis uz to,
un viens no līdzekļiem mēs ieviest
trešdien ir formulējusi sauc par "Laravel"
un tas ir ļoti tautas PHP sistēmu,
citi tie ietver "Fuelphp."
Tur ir vecāks viens sauc par "CodeIgniter."
Tur ir viens sauc par "Cake."
Tur ir viens sauc par "Symphony".
Es domāju, ja jūs Google php sistēmas,
tur ir šausmīgs skaits, piemēram, sistēmu
ka cilvēki, kas īstenoti.
Laravel ir viens no vairāk uz augšu un šajā procesā iesaistījušās dalībvalstis;
tas ir viens no tīrītājs tiem, un jūs atradīsiet
ka galu galā tas palīdz ietaupīt diezgan daudz
gada laikā, pat ja pastāv mazliet mācīšanās līkne,
bet mēs vadīs jums vairāk trešdien.
Turklāt mēs ieviest ko sauc par "ORM".
Šajā gadījumā mēs izmantosim kaut kas nāk
ar šo sistēmu sauc Laravel.
To sauc par "Daiļrunīgs" un Tas ir tikai slānis kodu
, kas ļauj jums, lai cita starpā lietas runāt ar datu bāzēm.
Un arī šeit, ļaujiet man zagt piemērs, kas ir vai nu nesen
vai atavisms par daži no jums, no 50.
Ja jūs ņemt 50, un jūs "CS50 Finance"
Jūs varētu atgādināt failus, jūs rakstīt vai pārrakstīja ka izskatās
piemēram, tas, tas bija login dot php, un tajā laikā,
jo īpaši tāpēc mēs nav tērēt daudz laika
PHP pamatiem agri,
tas varētu pašai ir diezgan grūti,
un tā mēs darījām, patiesībā, mēģināt vienkāršot dizainu.
Mums nav īsti atsevišķs "M" no "V" no "C", ka daudz
par problēmām, kas "Seven CS50 Finance"
bet paziņojums viena lieta kas būtu cerams jāsāk
drīz berzēt jums nepareizi veidā, ir kaut kas līdzīgs šim.
Es domāju, ne tikai bija šī piesakieties dot php kontrolieris.
Tas bija arī runā tieši
ar datu bāzi, kas īpaši Izmantojot rezultāts, kas nav dodas
mērogā ir ļoti labi, ja jūs sākat strādāt ar vienu
vai divi vai trīs partneri.
Piemēram, ja viens no partneriem ir atbildīga
lai izveidotu savu datu bāzes tabulas un nāk
līdzi savu indeksi un norādītas
, ko galvenais būtu, primārās atslēgas, ārvalstu atslēgas,
un visu, kas, lemjot par galda vārdi un visu, kas.
Tagad jūs cita persona, grupai jāzina visiem
par lēmumiem, dizaina, viņš vai viņa ir veikusi, un jūs tagad ir nepieciešams
cietā kodu šie lēmumi savā failā, tāpēc tagad viņš
vai viņa ir diezgan ļoti ierobežotas
nekad atkal jāmaina šie tabulu nosaukumi.
Nekad vairs mainīt tie iesniegti nosaukumi
neinformējot jūs.
Bez tam, jūs nevarat īsti viegli strādāt par to pašu failu
bez sadurties viena ar otru, ja tas
vai viņa ir pastāvīgi mainot nosaukumus,
un jums ir vecs versijas, un tā tālāk,
tāpēc tas ir tikai aicinot daudz un daudz galvassāpes.
Turklāt, kā mēs skat pirms ilgi,
pat ja Jums nav nepieciešams
to darīt, jo īpaši sarežģītu vaicājumu šeit,
pēc tam, kad jūs sākat, kam vairākus galdi, divi galdi, trīs, pieci,
desmit tabulas MySQL vai parasti relāciju datu bāzi,
jums ir pievienoties šīs tabulas bieži, ja pazīstami, un jums ir
apvienot datus no viens ar otru,
un atklāti jūsu Turpinājums vaicājumi sāk saņemt ilgāk un ilgāk,
un ilgāk, un vairāk sarežģīts, un tas tikai sāk
iegūt daudz vieglāk kļūdīties
un daudz grūtāk iegūtu lietas labi.
Un tā instrumentus, piemēram, Daiļrunīgs un ORM notiek
lai palīdzētu mums modelēt mūsu datus un tas arī faktiski notiek
lai radītu kodu, kas mums nepieciešams, lai sāktu vaicājumiem datu bāzes
vairāk sarežģītu veidos.
Tātad, ja jums ir primārā atslēga šurp un ārējā atslēga
nekā šeit, viss, kas jums nepieciešams kas jādara, ir mācīt šo ORM,
Iebilst attiecību Mapper, kas tas attiecības
un tas skaitlis, ko vaicājumi, lai izpildīt jums.
Un tikai reti gadījumos jums vajag
lai vienmēr rakstīt Turpinājums kodu pats.
Ja jūs patiešām vēlaties smalka melodija kaut ko,
bet lielākā daļa, jūs varat sāciet ārstēt vienības
Jūsu datu bāzēm par patiesu priekšmeti un šie dzīvoklis rindas
ka jūs kaut kā ir nepieciešams, lai rekonstruēt un de normalizēt.