[Powered by Google Translate] [Seminè] [Web Devlopman: Soti nan lide yo Aplikasyon]
[Ben Kuhn] [Billy Janitsch] [Inivèsite Harvard]
[Sa a se CS50] [CS50.TV]
[Billy] Hi, mwen se Billy ak sa a se Ben. >> [Ben] Hi.
Nou pwal yo dwe pale sou devlopman entènèt jodi a.
[Webdev] [Billy Janitsch ak Ben Kuhn]
Yon ti jan sou nou premye.
Ben se sòt de nèg la tounen-fen. Li fè tout bagay mache.
Lè sa a, m 'ale nan, epi fè yo bèl.
Mwen se lajman patisipe ki gen plis devan-fen kalite konsepsyon aranjman tèks yo nan bagay,
ak Ben, nan lòt men an, konnen de kisa lap fè sa li travay sou do-fen bagay.
Ansanm, nou te fè kèk bagay.
Pou egzanp, ane pase a nou te travay sou Gimblium ki se yon sou entènèt estidyo devlopman jwèt.
Sa ki te pwojè final nou an pou klas la,
epi depi lè sa a nou te fè Gwoup Harvard
ki se yon fondasyon sou entènèt pou Navigasyon ak kou fè makèt nan Harvard.
>> Nou pwal kòmanse ak ide sa a pou sit entènèt nou an.
Nou pwal fè Facebook, men pou chat.
Anvan ou aktyèlman fè sou sit wèb sa a,
pa fè sit entènèt sa a paske li nan pa bon, men nou pral sèvi ak li kòm yon fondasyon
epi ale atravè tout pwosesis la nan ki jan nou pran ide sa a
ak vire l 'nan yon sit entènèt reyèl nou ka sèvi ak yo.
Nou pral kòmanse pa kraze sou sit wèb la desann.
Menm jan ak ou ve yo te fè nan CS50,
ou vle panse osijè de ki sa yo eleman yo reyèl ki ale nan sit entènèt sa a.
Fondamantalman vire l 'soti nan yon lide ki se jis sòt de yon konsèp abstrè
nan yon reyèl, bagay byen mèb ke ou ta ka fè.
Nou kòmanse pa mande kèk kesyon.
Ki sa ki se sit wèb sa a? Poukisa nou fè li?
Ki sa ki li yo pral itilize pou? Sa sòt de bagay sa.
Nan ka a nan Facebook chat,
nou fondamantalman vle yon sit entènèt ki pèmèt chat rezo sosyal youn ak lòt.
Lide a ke yo te yo ke yo ka afiche sou mi chak lòt la,
yo ka fè kòmantè, ki sòt de bagay.
Epi sa a, kote nou antre nan eleman yo fonksyonèl.
Nou kounye a gen sa a sòt de fondasyon an - nou gen Des itilizatè,
nou gen kòmantè, epi nou ka poste.
Petèt yon jou nou pral ekoule renmen ak ki sòt de bagay.
Epi nou kalite vle priyorite karakteristik sa yo pral pous
Nou vle di tankou, oke, sa se vrèman enpòtan ke tout moun gen yon pwofil
e ke tout moun ka poste sou mi chak lòt la.
Lekòl Segondè ak sa yo ki, kòmantè ta dwe nice.
Petèt pita sou nou pral ekoule renmen.
Se konsa, ou vle gen yon lide sou sa ki nan fondamantal nan pwojè ou
ak sa ki nan sòt de yon karakteristik pi jeneral ki te kapab aplike pita.
Ou vle sòt de gen yon lis espesifik nan tèt ou,
men pwojè a ke ou kòmanse avèk pa a pwal pwojè a ke ou fini avèk yo.
Nan lòt mo, bagay yo ap mache a chanje pandan w ap devlope sit la,
epi ou vle soti nan chanm pou sa.
Mwen pral vire l 'nan men Ben moun ki nan pral pale yon ti jan sou estrikti.
>> [Ben] Mwen pral yo dwe pale sou bò a plis teknik nan devlopman entènèt.
Se pou nou jis ale sou kèk atik debaz premye.
Lè w ap fè yon app entènèt,
divizyon prensipal la ke w ap pral fè yo genyen se
w ap ale nan gen kèk bagay k ap pase nan bò a kliyan -
ki se, kòd la ke w ap navigatè pran nan sit la
ak JavaScript, HTML, bagay la CSS.
Sa a tout sou bò kliyan.
W ap ale nan gen lòt kòd ki kouri sou bò sèvè
ki kenbe tras nan tout done yo ke gen moun ki voye l 'nan nou la a,
deside ki moun ki bay sa, bagay tankou sa.
Sa a se jis kèk tèminoloji pou ke ou nèg, yo tout ki abitye avèk ki sa nou ap pale.
Pi lwen pase sa divizyon li bon panse a app entènèt ou an tèm de
yon koup nan eleman diferan.
Lè w ap fè devlopman entènèt
youn nan bagay sa yo ke ou ta dwe toujou ap eseye fè se diminye konpleksite.
Pi konplèks kòd la ou se chans an plis gen fè pinèz,
pi rèd la li se chanje pita.
Se konsa, si ou ka kraze moute app ou nan kèk zòn distenk fonksyonèl
ki pral - ak ou ka redwi sòt nan kantite lajan pou kominikasyon kwa-zòn -
ki pral ede w yon anpil nan kouri nan longè an tèm de diminye pinèz.
>> Pou yo kapab konkrè, anjeneral, moun ki divize moute yon app web nan -
sa yo, se kalite mo Buzz kounye a, men yo ap toujou itil.
Ou ta ka te konn tande moun pale sou modèl, gade, e contrôleur.
Modèl yo done yo reyèl ki app ou a pral fè fas ak.
Pou egzanp, nan Cat ou Facebook, modèl ou ta dwe -
ou ta gen yon modèl pou tankou posts, ak yon modèl pou Des itilizatè, bagay tankou sa.
Opinyon ou yo ki jan ou prezante ke done itilizatè ou an.
Ou ka gen 1 View pou gade nan yon pòs yon sèl ak tout kòmantè sa yo ki
ak yon View diferan pou miray ou ki gen yon lis tout posts yo
ke yo dirije yo sou ou, epi yon View diferan pou manje nouvèl ou - bagay tankou sa.
Finalman, ou gen contrôleur yo ki fè yo fondamantalman lè moun voye ba ou posts
epi ou fè mizajou nan sistèm do ki fin ou a,
ou enkreman yon pakèt moun sou kontè, ak tou sa.
Sa yo se contrôleur ou.
>> Mwen pral yo dwe pale sitou sou modèl.
Vizitè yo se teknikman pa sa ki difisil ak pwoblèm nan se pi plis ak desine yo
Contrôleur yo ale nan dwe espesifik nan tou sa w ap desine.
Men, gen kèk teknik trè jeneral ou ka sèvi ak
fè modèl ou joli ak pi fasil yo travay avèk ke mwen panse ke yo trè itil.
Sa a se sitou pral fè sou jan yo ka fè fas ak done apps entènèt ou an nan yon fason bèl.
Pwoblèm yo ki prensipal ak modèl
yo se yo ke yo ap viv sou kliyan an ak sèvè a epi ou gen figi konnen
a) kòman ou kapab jwenn yo - tout moun yo ki enpòtan - soti nan sèvè a nan kliyan an,
epi b) ki jan yo kenbe yo nan senk.
Itilizatè ou yo ale nan vle fè kèk dènye enfòmasyon yo.
Yo ap ale nan vle fè nouvo pòs.
Yo ap ale nan vle renmen bagay sa yo ak lòt bagay si ou gen renmen.
Sa yo se prensipal defi yo teknik nan fè fas ak modèl.
Premye bagay ki w ap ale nan vle mande tèt ou se
ki kalite done ale nan modèl sa a ak ki kalite demann nou pral vle fè -
ki se, ki jan nou pral fè yon gade nan modèl yo?
Pou chat ou Facebook egzanp,
pòs ou a pral nan gen yon otè ki asosye ak li,
kèk tèks pòs miray, ak yon moun k ap resevwa nan post la miray la.
Lè sa a, ou ta ka vle sijè rechèch ki nan yon pakèt moun sou diferan fason.
Ou ta vle gade nan li pa ki te ekri ki post,
pa ki te resevwa ki afiche, petèt anvan dat ki yo te afiche.
Men, si w ap ale nan fè l 'pou dat, Lè sa a, ou gen ajoute yon lòt jaden nan pòs ou
nan lè li te aktyèlman afiche.
Sa yo 2 faktè - ki sa done ou vle itilize ak ki jan ou vle wè li -
ou ta dwe reflechi sou yo premye paske yo depann sou chak lòt,
epi li pral fè pi difisil yo ajoute yo pita sou.
>> Gen kèk lòt konsiderasyon.
Lè w ap panse sou fason ou fè fas avèk modèl sou sèvè a
ki sa ou vle fè yon gade nan se -
ou fondamantalman vle fè sèvè a kòm senp tankou sa posib.
Lè w fè bagay ki sou bò kliyan se jeneralman pi vit si ou ka fè li piman sou kliyan an
san yo pa fè nenpòt ki sòt de rezo demann.
Lide a se fè kòm anpil nan demann sa yo, kòm ou kapab pou kliyan an.
Pwoblèm lan sèlman avèk ki
se ke si ou mande tout done ou nan kòmansman an
Lè sa a, ki nan pral pran yon tan long chaj.
Se konsa, lide a se fè grèv yon medyòm kè kontan ant gen done ase sou kliyan an
ke ou ka fè pi fò nan travay ou gen, men se pa jis atiran tout bagay nan yon fwa
Se konsa, ke ou jwenn fwa chaj vrèman dousman nan kòmansman an.
Pou egzanp, pou done chat ou
ou ta pwobableman vle chache yon pakèt moun sou ki sot pase posts miray la.
Ou pa ta vle al pran tout nan yo paske sa te ka tounen yon koup nan ane.
Men, ou pa ta vle al pran yo tounen yon sèl nan yon moman
paske yo ta ka prezante yon anpil nan rezo tèt yo.
>> Li nan souvan byen difisil - yon fwa ou gen yon kouri baz done -
li konn byen souvan byen difisil yo chanje sa done ou gen nan li -
ki se, ajoute yon nouvo kolòn baz done oswa yon bagay -
Se konsa, yon sèl bon estrateji se aktyèlman jis kenbe yon anpil nan done ou a nan yon pate tèks -
yon JSON pate - JSON yo te JavaScript objè Notasyon -
Rezon ki fè la sa a, se itil se paske Lè sa a, ou ka ajoute pwopriyete nouvo
nan tout sa yo tach JSON san li pa chanje baz done ou.
Inconvénient la sèlman ak sa yo ki se ke si ou gen yon pakèt moun sou jaden
ke ou te ajoute pita sou - tankou kache nan ki pate JSON -
Lè sa a, li la pi rèd sijè rechèch yo anndan baz done a.
Pou egzanp, si ou pita - si ou te gen modèl post ou ke nou diskite pi bonè
ak jis otè a, moun k ap resevwa a ak tèks la -
ou ta ka genyen tou yon pate JSON ak Lè sa a, si ou pita te vle ajoute yon dat jaden
ou pa ta oblije chanje baz done ou.
Ou ta ka jis ajoute dat nan tout nan jaden yo tèks.
Lè sa a, ou ta kapab fè yon gade nan sa ki sou bò a kliyan,
men ou pa ta kapab sijè rechèch yo sou bò sèvè
paske li te kache andedan ke tèks.
>> Pwoblèm nan lòt ke ou vle panse osijè de
ki jan kliyan ou ak sèvè ou yo ale nan kominike.
Anjeneral ou vle kenbe sa a kòm senp tankou sa posib.
Ou ka jis gen tankou yon jwenn-m-sa a demann done,
yon kreye-yon-nouvo-objè bagay, ak yon demann aktyalizasyon-yon-fin vye granmoun-objè.
Apre sa, sa yo ta tout gen URL diferan sou yon sèvè ke ou -
ki navigatè a ta - ou ka sèvi ak Ajax demann pou tout moun sa yo
ak swa resevwa oswa done post.
Yon fwa ankò, pou Cat nou Facebook egzanp,
ou ta ka genyen ki URL ou kapab jwenn yon pòs endividyèl,
epi ou ta gen yon URL pou kreye yon nouvo pòs miray
e petèt yon URL pou téléchargement pwofil foto ou a, bagay tankou sa.
Men, ankò, sa a, se nan pre-chache pi fò nan done ou pou sa ou pa bezwen kenbe
fè demann rezo-a.
Pou rezon sa, ou pa ta ka vle gen sa demann Pran endividyèl pou yon pòs yon sèl,
ak olye ou ta jis vle 1 demann jwenn pou miray ranpa a nan tout antye.
Lè sa a, si w ap eseye fè grèv yon balans paske -
sa a se tou ale nan depann sou aplikasyon w lan.
Paske, si w ap tann ke gen moun ki gen sèlman 10 oswa 20 posts miray
ke yo pral amann.
Men, si w ap tann yo pral gen dè milye Lè sa a, ki te fè demann ta pran twò lontan,
yo ak pou ou ta ka vle ajoute yon paramèt jwenn-tout posts--depi.
>> Pou tout moun sa yo w ap pwobableman ale nan vle senk done ou a nan JSON -
JavaScript objè Notasyon.
Bèl anpil chak lang kontra ak JSON trè byen.
JQuery gen sa a fonksyon getJSON bèl ki pral fè tout travay la difisil pou ou.
Yo, epi sou PHP gen nan tou fonksyon kominikasyon JSON trè bèl.
Se konsa, sa a, se pwobableman fòma a pi bon pou voye modèl ou retounen ak lide.
>> Kòm yon egzanp nan sa ki nou te pale osijè de twò lwen,
isit la nan yon koule egzanp pou aplikasyon Facebook chat ou a.
Li kòmanse koupe ak navigatè ou a mande URL sit entènèt la baz.
Sèvè a pwobableman ta voye sou estatik HTML ak kèk JavaScript ak CSS.
Li pi bon yo pa fè nenpòt ki rann sou sèvè a.
Ou pwobableman pa vle -
sa ki sèvè a se pa sa fè gen pral desann lis la nan posts miray
ak génération kèk HTML pou chak yon sèl ak voye ke plis pase.
Li pi bon yo fè sa ki sou bò kliyan paske otreman
chak fwa ou vle re-desen yon bagay, ou gen fè yon demann sèvè.
Epi ki trè byen vit ba ou yon anpil nan tèt yo.
Li pi pi bon jis bato voye desann estatik HTML
ak Lè sa a, JavaScript ak CSS ki pral fè rann a sou bò kliyan.
Le pli vit ke ke bagay vini nan,
Lè sa a, ou ka gen - nan JavaScript - ou ka fè demann pou done nan miray
ak lòt bagay tankou sa, Apre sa, sèvè a se fondamantalman jis ap fè demann baz done
epi tyeke autorisations.
Sèlman Sa ki enpòtan se ke li pa ka voye voye sou kèk lòt moun kap itilize posts miray
ke ou pa ap pèmèt yo wè.
Li ka fondamantalman gen yon kouch aksè trè mens nan baz done ou a,
ak Lè sa a, tout moun nan ki montre done a - tout nan yo opinyon yo ak lòt bagay - nan
sa yo ka rive nan navigatè ou a, ak Lè sa a, lè ou vle fè yon pòs oswa yon bagay
ou jis voye yon lòt demann.
>> Genyen tou kèk bagay anpenpan ou ka fè sou tèt sa a.
An tèm de enfòmasyon teknik ki gen plis detay,
devlope nan plenn JavaScript ka yon ti jan ti kras fè mal,
Se konsa, gen kèk bibliyotèk ak zouti ki pral ede w yon anpil ak sa.
Mwen panse ke ou te tout pwobableman tande pale sou jQuery sa ki fè fè HTML rann
ak manipilasyon yon anpil pi fasil - gen anpil bagay nan fonksyon anpenpan pou manyak nan ak soti,
ak ap fè Animations vif.
Genyen tou bibliyotèk sa a te rele Underscore.js.
Li te gen yon anpil nan fonksyon sèvis piblik ki itil, bagay ke ou ta atann JavaScript gen
ke li vrèman doès - bagay sa yo tankou mélanger yon etalaj,
retire Doublon nan yon lis, oswa plat yon lis nan lis.
Sa a se jis yon echantiyon Kòd piti.
Souliye gen yon tòn sa yo fonksyon bèl ke ou vle ou ta gen tout tan tout tan an.
>> Lè sa a, gen nan 1 plis bibliyotèk ke mwen ta renmen yo ap depanse yon ti kras nan tan sou
rele Backbone.js paske sexclips reyèlman ede ou fè fas avèk modèl sou bò kliyan
ak yon anpil nan konfizyon ke li ka lakòz.
Zo rèl do ba ou konsèp sa a nan modèl ak koleksyon
nan JavaScript ki se fondamantalman egzakteman menm jan ak JavaScript objè
nan JavaScript ranje men yo gen evènman lè ou chanje pwopriyete yo.
Jis tankou nan JavaScript, ou ka gen yon evènman lè vin yon bouton klike oswa yon bagay
sa yo modèl sexclips ak koleksyon sexclips ap teledifize bagay sa yo tankou
ke lè yo chanje.
Sa vle di ke ou ka jis ekri yon bagay tankou sa brib nan kòd isit la -
sa a di, nenpòt lè ou ajoute anyen yo etalaj la posts ou rdesine miray ranpa a nan tout antye.
Lè sa a ta ka di chak fwa nimewo yon pòs nan renmen chanje,
ou fè itilizatè a gen yon moun ki te renmen pòs yo.
Oswa nenpòt lè nenpòt ki byen nan yon pòs chanje ou rdesine pòs la.
Stuff tankou sa pral delivre ou tòn konpleksite paske otreman
si ou pa gen kèk kad tankou sa a Lè sa a, chak fwa nan kòd ou ke ou chanje
anyen sou yon pòs, ou ta gen sonje tèt ou yo rele tout rann fonksyon yo
ak lòt bagay tankou sa yo, epi si ou te vle ajoute yon bagay nouvo sa ki te rive
chak fwa ou modifye yon pòs ou ta gen yo ale nan tout kote nan ou
Kòd ke ou modifye yon pòs epi ajoute ke bagay nouvo.
Yon fondasyon tankou sa a ap retire yon anpil nan ki kominikasyon ant-kouch
ki fè kòd ou a konplèks epi yo ka difisil yo kenbe.
>> Genyen yon ti kras sou opinyon tou.
Mwen pral kite pi fò nan sa a nan Billy paske yo ap teknikman pa trè difisil.
Sèvi ak jQuery pou opinyon ou. Li nan pratikman tankou yon nesesite nan pwen sa a.
Li jis fè tout bagay tèlman pi fasil.
Gen yon anpil nan bibliyotèk yo.
Si ou te konplike eleman itilizatè-koòdone,
si ou vle yon bagay oto-konplè oswa renmen youn nan moun ki anpenpan milti-seleksyon -
si ou vle yon bagay tankou sa, ou ta dwe pwobableman jis rechèch alantou
epi ou ka jwenn yon bibliyotèk bon ki pral fè sa ou vle.
Billy pral eksplike plis enfòmasyon sou pati pyès sa yo aktyèlman difisil nan opinyon.
Epitou, kòm yon nòt bò, sexclips gen kèk fonctionnalités pou fè opinyon kominike
joliman ak modèl - gade nan dokiman an pou tout moun nan bibliyotèk sa yo, aktyèlman.
Jis gade nan Doc yo. Yo ap trè byen ekri ak fasil yo swiv.
An jeneral, ou kapab bèl anpil jis Google si ou gen pwoblèm.
Gen yon anpil moun nan pèp lè l sèvi avèk yo.
Mwen panse ke sa a se kòm yon nòt final la.
>> Genyen tou kèk bagay ki pi avanse ke ou ka fè
si w ap chèche fè app entènèt ou an plis pè.
Ou ka fè - nouvo HTML5 spesifikasyon la gen yon bann bagay sa yo anpenpan ou ka fè.
Depo lokal yo - ki se ou ka magazen done nan navigatè a -
olye ke gen yo ale retounen lakay yo epi parkourir sèvè a pou tout bagay,
ou kapab kenbe kèk nan l 'sou kliyan an ak ke menm pèmèt moun -
nan kèk ka li ka menm kite ou sèvi ak offline nan Paj Web.
Genyen bagay sa yo rele websockets ki se yon lòt kalite diferan nan rezo kominikasyon
kote olye pou yo jis ou fè yon sèl demann, ou jwenn repons ak w ap fè,
ou kenbe louvri yon koneksyon sou sèvè a ak sa ou kapab fè bagay sa yo tankou
an tan reyèl dènye enfòmasyon yo.
Se konsa, si ou te ap eseye fè yon app chat, ou ka sèvi ak websockets
yo kominike dèyè, yo soti pou ke ou pa ta gen kenbe mande,
"Oh, sèvè, t 'nenpòt moun ki voye m' yon chat?" chak 10 segonn oswa yon bagay.
Genyen tou yon karakteristik HTML5 enteresan kote ou ka fè li sanble
URL la nan paj la ap chanje san yo pa janm gen aktyèlman Reload li.
Ou kapab sèvi ak retounen lakay yo epi voye bouton san yo pa fè yon pakèt moun sou demann rezo-a.
Stuff tankou sa se vrèman itil an tèm de fè li rapid, men tou travay tankou yon app web ta dwe.
>> Genyen tou bagay sa yo rele CoffeeScript.
CoffeeScript se yon lòt lang, aktyèlman, ki compiles desann nan JavaScript.
Ou ta ekri tout kòd ou a nan CoffeeScript, ak Lè sa a, ou kouri du sa a,
epi li krache soti yon dosye JavaScript ke ou ka mete nan Paj Web ou.
Rezon ki fè CoffeeScript se bèl se paske li vin debarase m de yon anpil nan la
ka etranj ki JavaScript gen kote egal egal,
ak egal egal fè bagay sa yo diferan, oswa renmen -
li gen joli sentaks pou fè fas ak ranje ak fonksyon.
Sa a se yon ti kras brib nan CoffeeScript ki pwodui yon lis tout kare yo
soti nan 10 ^ 2 a 1 ^ 2 nan do lòd.
Kòm ou ka wè, CoffeeScript souvan pèmèt ou eksprime nan 1 liy
sa ki ta pran 5 liy nan JavaScript.
Li ka fè bagay sa yo anpil pi fasil.
Li se yon ti kras nan nouvo sentaks yo aprann an premye,
men li definitivman pral fè ou pi pwodiktif nan kouri nan longè.
>> Ou ka itilize tou lòt lang sou sèvè a pase PHP -
lang tankou Ruby, Piton, oswa gen nan menm yon pwojè yo rele node.js
ki pral kite ou sèvi ak JavaScript sou sèvè a.
Pèsonèlman, mwen reyèlman, reyèlman rayi PHP.
Mwen jis pa jwi ap travay avèk li.
Si ou, tou, panse ke li se yon cluge terib nan yon lang,
Lè sa a, ou ka sèvi ak youn nan sa yo pito.
An jeneral, si ou vle fè yon bagay epi ou pa vrèman konnen kijan ou ta fè l ',
jis rechèch sou Entènèt.
Gen tòn ak tòn resous espesyalman sou -
StackOverflow se yon yon sèl gwo.
Li nan sit entènèt sa a kote pwogramasyon mande youn ak lòt kesyon.
Ou ka gen kouri antre nan li si ou te gen pwoblèm sou kouche pwoblèm CS50.
E genyen anpil tòn bibliyotèk la pou li fè bèl anpil nenpòt bagay ou ta vle.
Si ou vle fè yon bagay epi ou pa konnen ki jan yo fè l ',
Pa sipoze ke li nan enposib.
Jis gade ozalantou yo ak ou ta ka jwenn kèk bon resous yo.
>> Kòm yon jeneral vlope leve,
takeaways yo prensipal yo se kenbe bagay sa yo ki senp.
Pi konplèks nan Kòd ou a nan kòmansman an
ak plis ankò nan ou eseye epi fè bagay anpenpan,
pi long la li pral pran yo ka resevwa yon bagay aktyèlman fonksyonèl
ak pi rèd la li pral chanje pita.
Se konsa, fè bagay sa yo bèbè, fason ki pi fasil an premye.
Yo ale ansanm ak sa a,
Ou pa bezwen pè a jete fin vye granmoun Kòd oswa netwaye li moute yon anpil.
An jeneral, yon fwa ou gen aktyèlman yon bagay k ap travay,
li nan pi fasil yo reflechi sou pase lè w ap toujou nan premye etap yo kòmanse
nan jan mwen mete sa a tout ansanm.
Li pi bon fè desen an dumbest posib ke travay
ak Lè sa a, amelyore li iterativman pase ap eseye jwenn tout bagay dwa premye fwa a.
An tèm de divizyon kliyan-sèvè, eseye epi kenbe sèvè ou trè senp -
jis yon baz done ak kèk otantifikasyon epi yo pa fè nenpòt ki travay di a.
Èske tout bagay konplike ou sou bò a kliyan nan navigatè a
nan JavaScript kòm anpil jan ou kapab.
Chèche ozalantou w pou bibliyotèk ki fè lavi ou pi byen.
Toujou pi bon yo sèvi ak kòd ki yon lòt moun ekri
si ou - epi yo pa yo ekri li tèt ou.
Genyen yon anpil nan bagay sou entènèt la. Google se pi bon zanmi ou yo.
Google se pi bon zanmi pwogramè a.
Yeah, definitivman pa bezwen pè yo gade toutotou pou bagay.
Tout dwa. Ak sou Billy.
>> [Billy] Aktyèlman, anvan mwen kòmanse ak kèk bagay konsepsyon,
nenpòt moun ki gen nenpòt kesyon pou Ben sou anyen ke li te pale osijè de?
Oke, bon.
Yon fwa ankò, fè nou konnen si anyen pa klè
oswa si ou ta renmen nou ale sou yon bagay yon ti jan pi plis.
Mwen pral etap tounen yon ti jan epi pale sou pati pyès sa yo plis fondamantal nan konsepsyon.
Ben mansyone modèl la rele - regrèt sa, sistèm nan kontwolè wè modèl
ki se sòt de aspè nan teknik, se konsa mwen pral fè yon gade nan opinyon espesyalman,
ak mwen pral kòmanse ak ki jan ou ta desine yon View ki sanble bèl.
Isit la nan kalite yon modèl vrèman debaz pou Facebook chat nou an.
Mwen panse ke gen kèk fondamantal nan konsepsyon UI modèn
ki vo davwa ke yo pran.
Ou ka remake gen nan yon anpil nan espas blan tout lòt peyi sou paj la,
anpil plas pou bagay sa yo.
pa santi tankou ou gen kraze bagay sa yo nan yon paj.
Ou vle kite anpil nan chanm louvri, epi si ou ale nan prèske nenpòt ki sit entènèt modèn
ou pral wè gen nan blan toupatou.
Genyen blan nan kote ou pa ta atann.
Ou gen sa a palèt koulè po yo, epi li gen bon konprann nan kòmansman an
yo chwazi yon palèt koulè ke w ap ale nan travay avèk yo epi devlope.
Ou menm tou - li te ede yo chwazi yon Tipografi, ak fason sa ou ap sòt de travay ak
sa yo fondamantal konkrè nan konsepsyon.
Ou gen kalite ou, ou gen koulè ou, ak Lè sa a, ou kapab kalite
anfòm Tout Lòt Bagay nan jan sa nesesè.
Se konsa, jan mwen te di, ak konplo koulè ou ou vle itilize koulè yo odasyeu nan konplo koulè ou
ti kras. Tèt yo se bèl. Bouton yo se bon gen reyèlman gwo, koulè flachi.
Men, an jeneral, si ou gen yon sit entènèt ki gen koulè tout kote,
tout fikse ou nan figi a, li jis sanble ankonbre, epi li pa bon.
Ou vle jeneralman sèvi ak koulè limyè.
Eseye, ankò, chwazi yon koulè régime bèl aderan.
Ou ka gen sa yo vole ti kras nan anpil nan koulè -
ki kapab sanble trè bèl, men ou vle sèvi ak yo trè ti kras.
>> Kòm mwen te di, ou vle yo minim. Mwens se preske toujou plis ankò.
Si ou ka montre yon bagay oswa ou pa montre yon bagay,
epi w ap kalite fin si wi ou non li ta dwe gen pa default -
pwobableman ou se pi bon nan kite li soti. Ou ka toujou ajoute li nan pita.
Yeah, kenbe bagay sa yo ki senp.
Men, sa ki pi enpòtan, ou ta vle konsidere desen miltip.
pa panse ke lè ou fè yon sit, ou genyen li nan tèt ou ke w ap ale nan
fè sit la nan yon sèten fason, epi li pral gade egzakteman tankou sa a.
Li pral fè lento la ble nan tèt la ak bar nan bò ble
ak Lè sa a, bagay la jòn sub-header.
Ou vle fè plizyè modèl.
Ou ka swa - si w ap bon ak Photo Shop, ou ka louvri ki leve, li sòt de
desine yon sit entènèt tankou ou renmen l 'bay gade.
Si ou pa, ou ka jis sèvi ak plim ak papye,
men grate moute desen miltip.
Ou vle fondamantalman gen yon mete kanpe kote ou gen anpil bagay nan desen diferan,
epi si yon sèl fini moute k ap travay, lè sa a sa a, se gwo.
Si youn fini moute li pap resevwa, Lè sa a, ou toujou gen yon lòt yon sèl ale nan.
An jeneral, pa santi tankou ou ta dwe contrainte
mèt fè tout sa konsepsyon ou okòmansman deside sou.
Designs yo trè varyab, ak yon pati nan enpòtans ki genyen nan modèl la
sistèm kontwolè wè se ke ou ka swap nan ak soti opinyon diferan ou vle.
Ou ka balanse done yo yon fason, ak Lè sa a, deside, o, aktyèlman, ki pa travay ki byen.
Mwen panse ke li nan kalite twò konplike oswa gen yon pati isit la ki nan pa reyèlman travay,
Se konsa, mwen jis ale nan totalman abandone sa a wè ak swap nan yon yon sèl totalman nouvo.
Nou ka toujou itilize modèl yo fin vye granmoun ak contrôleur yo fin vye granmoun.
Nou ka fè tout bagay sou sèvè a ak kliyan jan nou ta ye anvan an.
Men, vag aktyèl la nan done yo kòm parèt a pwal yon ti kras diferan.
>> Osi lwen ke aktyèlman mete ann aplikasyon konsepsyon la ou vle,
yon fwa ou gen yon desen kèk eskize soti sou papye oswa sou Photo Shop oswa kèlkeswa sa,
gen yon nimewo nan zouti ki yo te fè disponib nan ou.
Premye a w ap trè abitye avèk ki se HTML ou a, PHP, oswa kèlkeswa sa
lang w ap itilize jis kòd paj sa yo estatik sou sit entènèt ou.
Ou te travay yon anpil ak HTML ki kalite ba ou sa yo Tags
ke ou ka mete bagay sa yo nan, ak fondamantalman li nan yon fason pou òganize kontni ou.
Pou egzanp, ou gen lento a kanpe, se konsa w ap ale nan gen yon tag header,
epi li ale nan gen kèk tèks andedan nan li ki se pwobableman pral fè nan yon lòt tag.
Lè sa a, ou gen yon ankadre petèt ak kèk lyen yo diferan,
ak moun ki yo ale nan tout dwe nan Tags apa a.
Se konsa, fondamantalman HTML nan kè li yo se yon fason pou divize moute paj la ki jan
ou evantyèlman vle fòma li.
Se konsa, ankò, ou te wè ke anvan.
Ou se trè alèz ak ap travay ak li kounye a
bay sa ou te fè dènye pset la èspere ke,
se konsa ke ta dwe gen okenn pwoblèm.
>> Lè sa a, ou gen CSS ki fondamantalman okipe tout nan konsepsyon aspè yo estatik.
Li ta okipe tout nan koulè yo, nan tout pwezante a nan eleman diferan,
kote yo ale ki gen rapò ak yon lòt,
ki jan gwo yo ye a, kalite sa yo diferan nan positionings ke ou ta genyen -
nan lòt mo, ou ka gen bagay sa yo fiks se konsa ke lè ou desann yo rete,
oswa ou ka gen bagay relatif nan lòt eleman.
Tout moun nan ki sòt de bagay se nan CSS.
Anplis de sa, ou ka fè diferan dekorasyon, ou ka gen koulè tèks,
efè tèks yo, tout nan ki kalite bagay.
Ben te bay yon seminè reyèlman bon sou fen semèn sa a pase a,
Se poutèt sa mwen ta definitivman tcheke ki soti si ou fè plan yo dwe fè kèk bagay anpenpan ak CSS.
CSS3 se aktyèlman vèsyon an dernye nan CSS, epi li ka fè tout kalite reyèlman bon bagay sa yo.
Li ka fè pant; ou ka gen bèl, kwen awondi; ou ka fè tout kalite bagay
fè sit entènèt ou a gade plis modèn ak anpenpan.
>> Zouti nan pwochen se JavaScript ak jQuery ki Ben te pale yon ti kras sou,
Men, mwen pral jwenn yon ti kras pi lwen nan.
JavaScript, menm jan ou te travay ak li yon ti kras, oswa omwen wè l 'nan konferans,
se kalite yon fason pou dynamique fè bagay nan HTML.
HTML, jan ou konnen, se estatik, se konsa yon fwa ou gen HTML ou pa kapab modifye li.
Men, JavaScript, nan kèk fason, se yon fason pou kapab modifye HTML.
Se konsa, ou ka fè sa, e ke sa a gwo, men JavaScript vrèman se yon doulè nan travay avèk yo.
Li nan tèlman lontan ak obti ak fè menm bagay sa yo ki pi senp lan
mande pou anpil nan liy nan JavaScript.
Se konsa, jQuery se fondamantalman yon bibliyotèk pou JavaScript ki senplifye nan tout sa.
Li di: oke, si ou vle gen yon bwat kare soti nan bò gòch la
ak disparèt nan paj la pou ke li la nan mitan an, nan JavaScript ki ta ka pran -
Mwen pa konnen, yon santèn liy fè, epi li ta ka yon doulè,
epi ou soti ladan l 'rayi tout bagay sou pwogram sou entènèt.
JQuery ou fondamantalman gen eleman-dot-fennen-nan, oswa yon bagay nan tankou sa.
Fonksyon Se konsa, trè, trè senp ki pral kite ou fè tout kalite Animations fre
e ke jan de bagay konsa.
Lòt bagay la ke sa yo 2 yo se reyèlman bon pou se jis fè bagay dinamik
ak sit entènèt la.
Se konsa, olye ke jis ki gen paj HTML ou - ki montre kèk done men li pa aktyèlman
fè anyen - JavaScript ak jQuery ap kite ou gen bouton ke ou ka klike sou,
epi ou ka trennen eleman ak re-lòd yo ak sòt yo, li gen nouvo eleman
te ajoute oswa retire li. Ou kapab ajoute-efase, ki sòt de bagay.
Se konsa, jQuery fè tòn de bagay sa yo fre.
Apre sa, Vipul se aktyèlman bay yon seminè sou li jodi a, mwen kwè, nan-5 è,
Se konsa, si ou ka bwa alantou pou ke long, ki ta - 5 oswa 4?
Kat. M regrèt. Li nan aktyèlman dwa apre sa a, se konsa mwen ta rekòmande pou
rete soude alantou pou li si ou kapab.
JQuery se super, super ki itil, epi ou ap kapab fè anpil bagay nan vrèman bèl bagay sa yo avèk li
pou bèl anpil nenpòt pwojè devlopman entènèt.
>> Koulye a, mwen pral jwenn nan kalite yon diferans.
Mwen te pale fondamantalman sou koòdone itilizatè.
Koòdone itilizatè se jis desen an nan sit la.
Men, gen nan sòt de yon lòt konsèp ki se eksperyans itilizatè.
De nan yo trè diferan.
Koòdone a se definitivman yon pati nan eksperyans la.
Nan lòt mo, lè ou ale nan yon sit, ou gade nan koòdone la.
Sa a yon pati nan ki jan ou fè eksperyans sou sit la.
Men, eksperyans itilizatè se pi plis pase sa.
Eksperyans itilizatè se sou sa enpresyon ke itilizatè a vin soti nan sit ou ye.
Se konsa, evidamman, koòdone se yon pati nan sa.
Epi li definitivman yon pati nesesè, men li pa ase.
Nan lòt mo, si ou gen yon koòdone bèl, epi li bèl ak kolore ak nan tout sa,
sa a, se gwo, men si itilizatè a ale nan sit ou a, wè yon Layout bèl ak li a mele nan
tout bagay, pa gen okenn lide ki jan fè anyen, lè sa a evidamman ou te fè yon reyèlman
pòv sou sit wèb.
Sa a sòt de kote eksperyans itilizatè vini pous
Mwen pral pale yon ti jan sou uks konsepsyon - uks se kout pou eksperyans itilizatè -
ak kalite ki jan ou ka asire w ke ou gen yon eksperyans itilizatè bon.
Pwen nan premye se ke ou ka desine yon sit entènèt kote yon itilizatè kapab fè nenpòt ki bagay ki
ki itilizatè posib vle.
Men, si itilizatè a pa ka figi konnen kouman ou fè bagay sa yo -
nan lòt mo, si itilizatè a pa gen yon bon lide yo lè yo ale nan sit ou a,
"O, si mwen vle mete Kontakte m ', lè sa a mwen klike sou bouton sa a, oswa si mwen vle post sou
miray yon moun, Lè sa a, m 'ale nan miray yo, epi klike sou yon bwat ti kras. "
Si itilizatè a pa konnen sa a, lè sa a ou efektivman pa gen aktyèlman
aplike ke fonctionnalités kòrèkteman.
Pati nan mete ann aplikasyon yon fonctionnalités se ke itilizatè yo yo aktyèlman kapab sèvi ak li.
Apre sa, li ta kapab fwistre - ou ta ka fè yon sit, epi li ka fè tout kalite
anpil bèl bagay, men Lè sa a, ou pral gen moun tès li ak di, "Li pa ka fè sa.
Poukisa pou l 'pa ka fè sa a? "Epi ou ap di tounen nan yo,
"Oke, li ka. Ou jis bezwen ale nan drop-desann meni an 7yèm sou sa a fènwa
paj ke se sèlman yo jwenn pa yon lyen nan kwen an anba-men dwat-ou "oswa yon bagay.
Li evidan, ou pa vle sa.
Ou vle li yo dwe klè itilizatè ou sa y ap sipoze fè,
ak li ta dwe senp ak entwisyon pou yo.
>> Yon lòt bagay ke ou vle pou yo eseye fè se, si yon moun k ap pase pou yo ale nan sit ou
ak 9 soti nan 10 fwa fè aksyon A a, epi 1 soti nan 10 fwa fè aksyon B,
pwobableman ou vle konsantre eksperyans yo sou aksyon A.
Nan lòt mo, ou vle fè li trè, trè klè ki jan fè A.
Yon ta dwe devan-ak-sant - ale nan sit la, wè li; oh, li la ki la a.
Lè nou konsidere ke B evidamman ou vle yo dwe klè, men ou ka kite li yon ti jan pi plis
nan background nan.
David bay yon bon ekzanp de sa a nan konferans,
ki se sistèm nan Boston T yo.
Lè ou ale nan T Boston an, epi ou vle achte yon tikè,
ou gen jwenn nan 5 meni anvan ou ka aktyèlman achte yon tikè
pou yon valè $ 2, $ 2.50, ki se konbyen lajan li pran yo monte tren an
nan yon direksyon.
Sa se yon pwoblèm paske pifò moun ki ap monte tren an
pwobableman jis vle pou yo ale nan yon sèl kote, achte tikè yo, jwenn sou touswit.
Li pa fè sans yo ke yo gen yo ale nan anpil nan meni diferan
yo ka resevwa la.
Yon eksperyans itilizatè pi bon ta dwe yon bouton rapid sou premye paj la
ki jis di, 'achte yon tikè yon sèl-fason,' ak yo ta ka mete tout nan estanda a nan
valè default, epi Lè sa a, si yon moun vle achte yon tikè diferan pase sa,
yo toujou, nan kou, gen opsyon a, men ou te optimisé pou
ka a itilize komen-ki se reyèlman enpòtan.
Ou ka wè egzanp sou sa a sou Facebook, dwa?
Si ou ale nan Facebook, epi ou vle poste yon estati,
li nan dwa nan tèt la ki se ki sa ou souvan vle fè.
Osito ke ou antre nan paj la, ou ka fè bagay ki pi komen ki
ou vle fè.
Si ou vle fè bagay sa yo yon ti kras pi konplike tankou,
di mwen vle pou yo ale nan miray zanmi m 'nan ak afiche yon foto sou li -
ki mwen pral vle fè souvan, men se pa osi souvan sa afiche Ki dènye nouvèl -
Se konsa, nan ka sa a, mwen tape non yo nan ti bwat la nan tèt la, klike sou pwofil yo,
ak Lè sa a, toujou, li nan dwa nan tèt la gen yon fwa mwen te vinn nan pwofil yo.
Yon fwa ankò, mwen te optimisé nan priyorite pou itilize komen-pifò ka yo yo.
>> Yon lòt bagay enpòtan se ke souvan moun ki pral sòt de eseye jwenn alantou sa a
lè li di, oke, se konsa mwen te fè sit la ak moun yo jwenn li konfizyon,
e ke sa a yon pwoblèm, dwa?
Li evidan, mwen pa vle moun yo dwe mele nan sa ki ekri nan sit m 'yo.
Men, wout la yo rezoud ki pa gen yon bagay pòp moute li di yo:
hey, mwen pral moutre ou ki jan yo sèvi ak sit sa a.
Etap 1 - klike sou bouton sa-a. Etap 2 - ale isit la.
Asire w, sa a, se yon fason bò kote l '- li a yon fason ke ou ka di moun sa yo dwe fè, men li la
vrèman pa wout la pi bon.
Si m 'ale nan yon sit entènèt epi toudenkou mwen bonbade ak leson patikilye sa a ki nan di m'
kisa w dwe fè ak ki kote yo ale ansanm ak tout de sa, sa a pa plezi pou mwen.
Li pa yon bon eksperyans pou mwen.
Li nan kalite yon doulè. Mwen vle jis kòmanse fè bagay.
Moun yo ale nan fèmen soti nan bwat dyalòg yo,
oswa jwenn soti nan leson patikilye a, pa konnen ki sa fè, ak Lè sa a, pote plent paske
ou pa t 'di yo sa yo dwe fè.
Wout la yo rezoud sa a se pa pa bay nenpòt kalite leson patikilye oswa direksyon -
anyen tankou sa.
Kòm anpil jan ou ka evite li, ou reyèlman vle montre itilizatè a kisa w dwe fè
jis pa nati a nan ki jan yo sit entènèt la mete deyò.
Nan lòt mo, si mwen ale nan Facebook san yo pa ouvri sesyon an,
premye bagay la ke mwen wè sou paj prensipal la -
li nan yon bwat login ti kras. Se konsa, du. Èske mwen dwe louvri sesyon Li nan dwa gen.
Lè nou konsidere ke, si mwen te ale nan Facebook ak mwen te gen klike sou yon ti kras lyen nan pati anba a
ki t'ap di: 'ouvri sesyon an' ak rès la nan paj la te jis kèk kalite foto oubyen yon bagay,
Mwen pa ta vrèman konnen ki sa fè, dwa? Mwen ta dwe bay konfizyon.
Se konsa, li te kapab di m 'desann ale la epi klike sou bouton an ouvri sesyon an,
oswa boutèy demi lit la nan bouton t 'kapab dwe gen dwa nan tèt la kote mwen pral wè li.
Ou vle toujou ki montre itilizatè a sa ki fè,
e ke yo ta dwe nannan nan paj nan tèt li.
>> Lè w ap panse sou desen ak t'ap jwe moute diferan fason pou
eksprime sit ou a, ou reyèlman vle panse sou sa itilizatè yo yo ale nan
ap fè ak fason ou kapab montre yo ki sa yo fè.
Youn nan bagay pase a se tès yo trè reyèlman, reyèlman enpòtan.
Li se gwo yo ka resevwa yon moun - jwenn yon zanmi, jwenn yon moun ou pa konnen menm -
ki pa janm nan wè sou sit la avan yo sèvi ak sit la.
Paske ou ve yo te ap travay sou sit la pou èdtan, ou ve yo te fikse nan li,
epi ou konnen ekzakteman ki sa yo fè sa evidamman w ap ale nan dwe fè tès la
bagay sa yo ke ou ve yo te ap travay sou yo ak sou ke ou konnen travay.
Men, si yon lòt moun vini ansanm ak itilize sit la ki pa janm gen te itilize li anvan,
ki yon eksperyans inik paske ou gen yon moun ki pa gen okenn konesans anvan an
nan sit la pral antre nan li, se konsa yo ap ale nan gen efektivman gen okenn lide ki sa yo fè
oswa ki kalite ka sèvi ak yo prezan pou yo.
Sa a gwo. Sa a inik paske yo ap esansyèlman yon moun ki gen yon vid pou yon tèt ou.
Yo ka fè w konnen si gen yon bagay ki konfizyon oswa klè.
Yo ka ba ou yon lide nan pwesizeman sa ki eksperyans nan itilizatè nan sit ou ye.
Li kapab difisil anpil di ke tèt ou, se konsa definitivman Mwen ta ankouraje w
kòm w ap devlope pwojè ou a - si w ap fè pwojè ki baze sou wèb -
jwenn moun lè l sèvi avèk sit la osi bonè ke lè ou gen kèk kalite fonksyonèl Demo.
>> Koulye a, mwen pral pale yon ti kras sou jan yo ka jere yon pwojè devlopman entènèt.
Nou te ale sou kouman ou ka fè bò la teknik back-fen,
ki jan ou kapab desine yon sit reyèlman bon,
e ke sa a gwo si w ap travay nan tèt ou, men -
menm si ou ap travay nan tèt ou epi espesyalman si w ap travay sou yon ekip,
jesyon pwojè vin tounen yon gwo pwoblèm.
Ou te sòt de tande pale sou jesyon pwojè nan diferan fòm depi
lekòl primè lè ou te di travay nan gwoup.
Ou gen pou kolabore pou, kominike, nan tout sa.
Konsa, tout toujou aplike isit la, men gen kèk sikonstans inik ak
syans òdinatè ke ou vle yo dwe okouran de, epi ou vle asire w ke ou okipe byen.
M ap pale premye yon ti kras sou ekip la ke ou pral pous
Li enpòtan anpil yo chwazi gwosè dwat la nan yon ekip yo dwe ap travay sou li a,
ak nan pwojè final ou Mwen panse ke ou gen opsyon pou yo chwazi
ant 1 ak 4 moun si mwen kòrèk la.
Ou vle asire w ke ou ap pa sèlman w ap chwazi kantite moun ki
ke ou vle travay avèk yo paske yo ap zanmi ou yo.
Ou vle chwazi yon ekip ki nan yon gwosè byen ak sa ki ki pral jwenn travay la fè.
Genyen yon koupe komès nan gen plis moun kont mwens moun.
Si ou gen plis moun, yo ka evidamman plis travay dwe fè
paske ou gen anpil moun, anpil nan Kòd, anpil nan lide,
e ke sa a tout gwo.
Men, li tou mande pou yon anpil plis jesyon ak yon anpil plis kominikasyon.
Nan lòt mo, si ou gen 4 moun ap travay sou pwojè a menm
epi yo ap tout koreksyon Kòd la menm, plis oswa mwens yo tout kalite bezwen konnen
sa k ap pase sou sa li mande pou ou -
si ou ajoute kèk fonksyon nouvo ou sòt de yo dwe di moun - I'm ajoute sa a,
Mwen chanje sa a nan fason sa a - sitou si ou jwenn nan bagay la reyèlman gwo twou san fon
tankou modèl yo epi ak contrôleur yo ke yo aktyèlman pral gen enfliyans sou ki jan sit la travay.
Ekip la antye bezwen yo dwe okouran de li,
kidonk ou bezwen asire w ke ou pa ap chwazi twò gwo yon ekip ki k ap pase yo dwe difisil
fè ki kominikasyon.
Ou menm tou pa vle yo chwazi yon ti ase ekip ke ou pa ap ale nan
kapab kominike paske li nan jis ou.
>> Yon lòt bagay yo konsidere se balans lan nan kote ladrès moun nan ye.
Li nan gwo si w ap tout pwogramasyon vrèman bon.
Men, si ou se tout moun tounen-fen, lè sa a sit ou se pa pral gade trè bon
paske ou gen gwo baz done sa a, epi li fè sa demann rechèch super-vit -
ki se gwo - men lè ou ale nan li, li la tankou yon sit 1990 a ak wouj ak ble
tout kote, e ke sa a pa bon swa.
Remake Ben ak mwen k ap travay kòm yon ekip yo trè bèl paske mwen se sòt de plis
nan fen a devan, nou tou de kominike nan mitan-fen a, ak Ben se vrèman bon ak tounen-fen bagay,
Se konsa, ki travay vrèman byen paske nou kapab desine nenpòt sit ak fondamantalman twou yo
nan ki sou sit ki bezwen plen ka plen swa pa yon sèl nan nou, oswa pètèt tou de.
Ou vle asire w ke pa gen okenn twou nan ekip ou.
Li oke si gen nan yon ti jan nan sipèpoze.
Nan lòt mo, si ou gen 2 moun ki tou de se bon ak fen tounen,
ki ka bon kòm byen paske yo ka ede youn ak lòt ki gen pwoblèm
yo ke yo ap gen.
Li kapab yon pwoblèm si ou sèlman gen 1 moun ki nan responsab pou yon bagay sèten
epi yo kouri antre nan yon pwoblèm, se konsa ou vle gen yon ti kras nan sipèpoze
men ou ki pi enpòtan vle asire ke tout twou yo posib fin ranpli.
>> Bagay la pase - ak sa a ta dwe evidan, men li la anpil fwa yo pa.
Ou reyèlman vle yo pran plezi.
Pwen an nan pwojè final sa a nan CS50 epi byen souvan yo pwen an nan devlopman sit entènèt an jeneral
se pa jis fè yon travay paske li bezwen fè.
Ou reyèlman vle yo pran plezi, epi ou vle yo fè yon bagay
sa ki nan motivasyon ou fè travay ou sou li.
Si tou sa ou ap fè a se yon doulè yo chita ak travay sou li a,
Lè sa a, ou pa ap chwazi pwojè a dwat.
Ou vle chwazi yon bagay ke ou jwenn ki enteresan,
ou reyèlman vle wè rezilta a, w ap eksite lè ou jwenn yon nouvo lide sou
yon bagay ou ta ka fè - se konsa gen nan tout kalite pwojè gen ke mwen si ke
ou ka jwenn - tout moun gen yon bagay ki ta reyèlman konplote yo
yo si yo ap fè yon pwojè ki baze sou wèb.
Mwen pral di l 'ankò kounye a.
Si pwojè ou a sanble tankou yon doulè, epi ou pa vle travay sou li,
chwazi yon lòt pwojè. Chwazi yon bagay ki vrèman enspire ou.
>> Ben mansyone konsèp sa a nan iterasyon yon ti jan, ak mwen vle ale sou li yon ti jan.
Li nan vrèman enpòtan nan travay nan jayisman kote ou jwenn yon bagay fonksyonèl.
Li ka gen gwo pouvwa si ou gen plan sa a pou yon sit entènèt ki nan pral fè A, B, ak C,
ak evantyèlman li pral jwenn la.
Men, w ap kole nan faz sa a kote w ap travay sou li epi li ap travay sou li,
men pa gen anyen nan ap resevwa fè. Ou pa gen anyen yo wè ak yon byen mèb, bagay fonksyonèl.
Ki sa ou reyèlman vle fè kòm anpil jan li sanble kalite yon doulè pafwa
travay sou yon bagay ak Lè sa a sòt de bouchon li koupe konsa ke li nan omwen nan yon ki estab, kouri
vèsyon menm si li pa gen tout karakteristik yo ki ou vle.
E petèt, gen kèk karakteristik ke ou reyèlman vle ajoute men ou jis pa kapab
paske ou ta vle jwenn sit sa a nan yon pwen fonksyonèl.
Se konsa, ou vle kalite gen pwosesis la devlopman antye gade tankou sa.
Ou vle kòmanse yon kote fonksyonèl - oswa esansyèlman kòmanse ak pa gen anyen -
men ou ta vle jwenn yon kote anpil debaz ak fonksyonèl.
Lè sa a, ankò, fè yon sòt de so epi pou yo jwenn yon kote fonksyonèl ankò.
Ou ap tou dousman bati, epi li ta ka ale yon ti jan pi dousman pase li ta otreman,
Men, nan kouri nan longè, si w ap toujou ap kole nan sa a faz tè mitan kote ou
pa aktyèlman gen anyen k ap travay, li kapab yon reyèlman gwo fristrasyon
nan travay sou pwojè ou a paske w ap toujou konsa fèmen nan jwenn li ap travay,
epi li pa janm aktyèlman ap travay.
Ou vle travay nan sa yo jayisman fonksyonèl,
epi ou vle tou fè kèk refleksyon yo apre chak yon sèl.
Nan lòt mo, yon fwa w ap nan yon pwen kote sit la se kounye a ap travay -
li pa gen tout bagay ou renmen men li fè sa kèk bagay -
ou vle panse, oke, se sit sa a reyalize objektif la ke mwen mete soti nan fè?
Nan lòt mo, si sit la ki pral fè X, se sa m 'te ap travay nan yon direksyon ki nan X?
Èske tout nan fonksyonalite yo ke mwen te vle genyen?
Apre sa, Anplis, se li k ap sèvi objektif la an jeneral ke mwen vle?
Si w ap jwenn ki sit ou ap kòmanse Veer nan yon direksyon ki diferan
oswa petèt bagay sa yo jis kalite yo pa ap travay sou, li kapab tan chanjman angrenaj yon ti kras.
Nan lòt mo, li la vo konsidere - li an vo voye soti ide si sa nesesè
ak konsidere m 'vrèman ap travay pou sa m' vle yo dwe.
>> Mwen kwè ke nan pwen pwochen mwen. Nou pa bezwen pè vle abandone lide.
Jis paske ou te pase anpil nan èdtan ap travay sou yon karakteristik
epi finalman te resevwa li ap travay men li vrèman pa pral byen -
tankou li pa ke itil oswa itilizatè yo gen pwoblèm lè l sèvi avèk li - ki sòt de bagay -
Nou pa bezwen pè yo voye jete byen lwen ou.
Li absorb ke ou te depanse anpil tan ap travay sou li,
men finalman ou pa vle yon sit ki nan kalite mete tèt yo ansanm pa moso vyann bèt yo ki
sòt de travay men se pa sa ki byen sèvi.
Epitou, pa bezwen pè yo anbrase nouvo lide.
Si yon moun vini ansanm ak di, hey, ki sou sit sanble vrèman fre men
pa t 'vle li menm vin yon grannèg, si li' te fè sa a?
Jis paske sa a, se yon bagay ke ou pa t 'gen entansyon ak yon bagay sa a, se pa nan ou
karakteristik, yon bagay ki ou pa t 'mete soti nan fè sa,
Nou pa bezwen pè yo pran l 'sou yo ak sou Lè sa a, travay avèk li.
Paske souvan ide sa yo ke ou kouri ak nan tout kou a nan devlopman
yo te fini karakteristik yo ki vrèman fre nan sit wèb la.
>> Mwen te di sa anvan. Mwen pral di l 'ankò.
Tester yo se super, super itil.
Eseye jwenn moun ki pa janm wè sou sit la avan ale sou ak wè sa ki k ap pase sou
paske yo ka pa sèlman teste itilite la nan sit la ak eksperyans nan itilizatè,
men yo ka tou tès fonksyonalite a nan fason ke ou pa kapab.
Si ou fè kèk karakteristik ki fè yon bagay sèten
epi ou konnen sa k ap pase fè sa menm bagay kòrèkteman chak fwa yon sèl, sa a, se gwo.
Men, li kapab souvan difisil yo kont nan bank pou ka kwen kote yon fòs itilizatè
tape yon bagay ke ou pa t prevwa - jisteman paske ou defini
karakteristik yo ki tèt ou.
Se konsa, yo gen yon moun vin sou ki moun ki pa gen okenn lide kouman yo sèvi ak sit la
ak jis kraze l 'nan tou sa fason yo ka fè se reyèlman itil paske ou
jwenn yon lide nan yon pèspektiv totalman diferan de sa ki sou sit ou ap travay
ak sa ki bezwen reparasyon.
>> Pase a, mwen pral pale sou kèk pratik jeneral bon,
epi ou te wè yon anpil nan sa yo nan CS50, men yo menm tou yo reyèlman, reyèlman aplike nan yon anviwònman pwojè.
Youn nan se kòmantè. Toujou kòmantè Kòd ou espesyalman si w ap travay sou yon gwo ekip.
Li kapab se konsa anmèdan jis gen yon blòk jeyan nan kòd ki yon moun nan ekri
e petèt li ap travay, petèt li pa fè sa, men ou pa gen okenn lide ki sa li fè,
konsa ou pa gen okenn lide si li nan itil oswa ou pa oswa si li ta dwe gen oswa ou pa,
epi si ou ap travay sou yon lòt bagay li nan menm posib ke w ap travay sou
menm bagay la, Se konsa, jis dwe pran anpil, anpil prekosyon yo dwe atansyon nan lòt lekòl parèy ou
ak kòd ekri ki nan byen dokimante.
Ou pa oblije ale twò lwen pou yo fè tout bagay la kote renmen si ou enkreman
yon vann san preskripsyon gen yon kòmantè ki di, mwen ajoute 1 sou sa a vann san preskripsyon.
Li pa dwe fè ki detaye, men pou nenpòt ki fonksyon ke w ap tout tan tout tan ekri
ou ta dwe gen kèk dokiman sou ki sa sa fonksyon egzakteman fè sa,
sa entrain li yo ki ap, ak sa li ta dwe retounen.
Nan fason sa a ou ka sèvi ak eleman nan sit la lòt moun nan
epi ou ka travay pou bati yon bagay gwo.
>> Yon lòt bagay enpòtan an se ou vle fè regilye pwòp-UPS.
Kòd vin sal. pa santi yo move si Kòd ou se jis totalman ilizibl ak yon dezòd jeyan.
Sa k ap pase nan devlopman sit entènèt toujou.
Ou ap ajoute karakteristik nouvo, retire moun fin vye granmoun. Stuff a pwal gen ki pa ta dwe.
Sa a bon, men ou vle fè asire w ke ou fè fas ak ki regilyèman.
Ou pa vle kite l 'bati nan pwen kote ou jis pa ka jwenn anyen
nan kòd ou, epi ou pa gen okenn lide ki sa anyen fè.
Sa a ka a ak HTML.
Pafwa ou pral fini ak objè ki pa gen anyen,
ak ou pral vle debarase m de sa yo.
Nan CSS, ou ka refere li a eleman ki pa la ankò,
Se konsa, ou vle debarase m de ki kòd.
Nan JavaScript, ou ta ka gen retire yon bagay nan men HTML la.
Se konsa, ou vle asire w ke ou ap toujou netwaye yo, ki fè bagay sa yo trè
kòm anpil jan ou kapab sou yon baz regilye.
>> Se yon lòt bagay reyèlman itil ke mwen pa panse ke yo dekri anpil nan CS50
men li la vo ap resevwa nan se vèsyon kontwòl.
Lide a nan vèsyon kontwòl la se lè w ap fondamantalman kenbe tras nan tout pwogrè nan
ou te fè nan direksyon pou sit ou epi si nan nenpòt ki pwen ou reyalize, o, sa a te travay
yon ti tan Anons sa pibliye depi men li pa la ap travay ankò, ou ka ale tounen nan vèsyon anvan
ak wè sa ki te chanje depi lè sa a ak ki sòt de bagay.
Wout la prensipal fè sa se ak GIT, ak GIT se sa a kalite antye nan sistèm ki
Mwen kwè ke Tommy MacWilliam te bay yon seminè sou dènye ane yo.
Si ou ale nan seminè yo CS50 pou 2011, ou kapab wè seminè l 'sou sa.
Lide a nan GIT se fondamantalman ki nan entèval regilye ou ap fè angajman sa yo
ki se fason pou li di sit la la nan yon vèsyon trè ki estab kounye a se konsa
Mwen anbalaj li leve, li voye l 'ale nan yon sèvè, ak Lè sa a, ou ka ale nan ki sèvè
ak gade tout vèsyon anvan nan kòd ou ak wè konbyen li a ap pwogrese
ak tout sa ki sòt de bon bagay.
Se konsa, sa a, se fondamantalman li.
Osi lwen ke devlopman web, nou kontan nan bwa ozalantou yo ak reponn nenpòt
kesyon osi lwen ke prezantasyon nou an.
Sa a li. Mèsi. >> [Ben] Mèsi.
[Aplodisman]
>> [Billy] anplwaye yo, nenpòt moun ki gen nenpòt kesyon sou bagay sa yo ke nou te kouvri
oswa bagay sa yo ke nou pa te kouvri yo ke yo te gen espwa nou ta kouvri?
Nou ta byen kontan reponn sa yo. Nenpòt moun ki?
[Manm odyans] Ki sa ki avantaj yo ak dezavantaj pou yo sèvi ak Ruby oswa lè l sèvi avèk Piton?
[Ben] kesyon an te, ki sa yo avantaj yo ak dezavantaj pou yo sèvi ak Ruby oswa Piton
olye pou yo tankou PHP.
Avantaj yo se ke Ruby ak Piton yo se pi bon lang pase PHP.
Omwen nan opinyon mwen, e mwen panse ke nan yon anpil nan opinyon lòt moun nan kòm byen.
Yo te fèt plis pou fè bagay konplèks,
ak mwens pou èkstrèmeman ansanm paj wèb vrèman byen vit ak
yon ti kras nan kontni dinamik.
Dezavantaj yo se ke gen nan yon ti kras nan - gen nan plis nan yon koub aprantisaj
jwenn yo fè fè a.
Sa se, tankou nan PHP, ou ka jis gen yon dosye HTML ak ou ekri mwens-pase,
kesyon mak, ak Lè sa a, ou ekri kèk kòd, ak Lè sa a, ou ekri kesyon make,
pi gwo-pase, ak Lè sa a, w ap fè.
Nan lòt lang yo tankou Ruby oswa Piton,
ou gen yo ale nan yon ti jan plis travay yo ka resevwa premye sit kouri la.
Genyen tou - omwen li itilize yo dwe ka a - ki gen nan plis dokiman
ki disponib pou PHP jis paske gen plis moun sèvi avèk li.
Mwen panse ke sa a pa kòm anpil nan yon pwoblèm ankò.
Genyen sètènman trè bon dokiman pou bagay tankou Ruby sou ray
oswa Django pou Piton ki ekivalan a.
PHP se youn nan ke tout moun a te lè l sèvi avèk pou ane, epi ou konnen kijan li fonksyone.
Ruby ak Piton yo yon ti jan ti kras mwens ki gen matirite.
>> [Manm odyans] Si ou te bezwen chwazi ant youn nan yo aprann oswa ranmase,
ki ta nou pito?
Onètman, mwen panse ke depann sou moun nan.
Mwen regrèt. Kesyon an te ki ta ou chwazi pou yon moun yo aprann?
Mwen jwenn Piton bèl la pèsonèlman.
Gen yon anpil nan moun ki - m 'te fè premye pwojè entènèt dev m' ki nan Piton ak Django.
Gen yon anpil nan moun ki tankou Ruby sou ray tou.
Pwobableman pi plis moun ki konnen Ruby sou ray.
Onètman, mwen ta jis ale ak tou sa moun ki bòkote ou konnen
Se konsa, ke ou gen moun yo poze kesyon.
>> Kesyon an te - sou serveurs pataje se li kalite difisil nan travay sou Piton?
Ki depann de hosting ou.
Genyen yon kantite ki gen tout pouvwa wèb ki ap afiche bagay Piton.
WebFaction fè sa, dwa?
WebFaction se youn ki Billy ak mwen te itilize pou kèk pwojè yo.
Yo ap reyèlman gwo. Yo sipòte pi lang yo.
Men, li la vre ke PHP se pi plis lajman sipòte.
Se konsa, si w ap kole sou yon lame web ke se sèlman fè PHP, sa a, se yon bon rezon yo sèvi ak PHP.
>> [Odyans manm] Mwen fèk sot nan aprann kouman sijè rechèch kèk bazdone,
e mwen konnen SQL mwen an se sou tout plas la, men mwen fèk te ekspoze a -
epi ou pwente li soti. Ou wè JSON ak baz done dilatabl.
SQL mwen an se toujou sou tout plas la. Ki jan ou fè wè ke rive?
Èske gen pral gen yon tandans k ap grandi pou plis dilatabl (fèbl)?
Kesyon an te - Mwen panse ke gen nan pral gen yon tandans nan direksyon pou baz done ki pa SQL.
Pou egzanp, tankou MongoDB. Mwen panse ke se definitivman vre.
Konsèy mwen an te sitou miskl ki gen rapò ak isit la sèlman paske miskl se
endistri estanda.
Pèsonèlman, mwen pi pito baz done ki pa gen schemos tankou MongoDB
kote ou pa gen pwoblèm nan nan, o, mwen bezwen ajoute yon lòt kolòn.
Nanpwen sove pou mwen, tankou tou sa m 'fè?
Li trè difisil yo fè sa sou miskl, men lè ou gen yon bagay tankou Mongo
li nan anpil joli.
Lòt bagay nan bon sou Mongo se ke dosye ou yo aktyèlman JavaScript objè yo.
Gen nan pa gen sòt de etap konvèsyon kote ou bezwen pran sa yo ranje baz done
epi vire yo nan yon objè JavaScript ak Lè sa a, voye yo sou fil la.
Mwen panse ke bagay tankou sa a pwal trè, trè itil pou rapid devlopman entènèt nan lavni.
>> [Billy] yon bagay mwen ta ajoute ki se jis yon pwen jeneral se ke
pa santi tankou ou ta dwe deja konnen tout lang yo nou te diskite
soti nan seminè nou an.
Li evidan pwen an se yo ba ou yon lide nan sa ki nan deyò,
ak si w ap entrige pa nenpòt nan bagay sa yo nou te mansyone ou ka Google yo
epi li moute sou yo.
Apre sa, kòm mwen mansyone, gen yon seminè kèk ki fè fas ak jisteman sa yo bagay sa yo.
Gen menm plis seminè ke mwen pa te mansyone ke pwobableman jwenn nan
sa a bagay yo tou.
Lide a se ke si ou vle travay sou yon bagay, isit la yo se zouti yo a jete ou.
pa santi yo akable si ou se pa reyèlman fin sèten sa ki zouti sa yo fè egzakteman,
Men, konnen ke yo ap soti, se la menm ke ou ka fè pou sèvi lajè nan yo
pa Google.
>> [Manm odyans] Ki kalite bagay ou bezwen fè pou asire w ke sit entènèt ou a
sanble bon sou aparèy mobil?
[Billy] aparèy mobil se yon ti kras difisil.
Genyen 2 fason ou kapab apwoche li.
Fason an premye se ke ou gen aktyèlman yon sit entènèt mobil.
Nan lòt mo, ou fè kèk sòt de deteksyon nan kòmansman an
lè navigatè a ap fè demann lan nan sit entènèt ou ki swa di
retounen sa a wè - ki pral wè a pou Desktop oswa laptop navigatè -
ak sa a lòt lide pou aparèy mobil.
Sa a se yon plas kote opinyon yo se reyèlman bèl nan ki ou kapab bèl anpil swap la
de deyò epi yo gen yon koòdone ki travay vrèman joliman sou aparèy mobil
epi ou gen yon yon sèl konplètman diferan ki travay joliman sou aparèy navigatè.
Pwoblèm nan ak se sa ki li pran yon bon bout tan paske li vle di kodaj
yon koòdone totalman diferan.
Lòt fason ke ou ka fè li se -
yon anpil nan telefòn modèn ap montre sou sit entènèt epi eseye rann yo tankou yon navigatè ta,
epi yo fè pi byen yo.
Ou ka kalite eseye rete limyè sou kantite lajan an nan jQuery JavaScript w ap itilize
ki gen tandans yo dwe kote bagay yo ka ale mal yon ti kras.
Sa a se sòt de fason ke ou ta dwe itilize si ou pa gen lè sa a anpil.
Si ou fè sa gen tan la nan travay sou yon koòdone mobil, sa a, se evidamman pi bon opsyon ou.
>> Mwen panse ke jeneralman pou pwojè CS50, w ap ale nan vle chwazi youn oswa lòt la.
Nan lòt mo, ou vle fè yon app mobil oswa ou vle fè yon sit entènèt Desktop.
Apre sa, ki sòt de detèmine kote ou vle ale ak sa a.
Men, si ou vle elaji li soti pita, pwobableman parye pi bon ou a se
fè yon lòt koòdone pou lòt la.
Mwen gen yon ti kras nan eksperyans nan devlope sit WordPress ki baze sou.
Mwen te anime yon sit entènèt pèsonèl sou WordPress pou ti tan.
Moun sa yo ki kalite estrikti ka bèl bagay sa yo menm jan anpil debaz.
Souvan ou pral jis kouri antre nan yon anpil nan pwoblèm pèrsonalizasyon menm si.
Ou pral vle gen yon bagay gade yon sèten jan oubyen gen yon sèten fason
epi ou jis pa kapab paske li te difisil-branche nan sistèm lan ki
sa a se ki jan sa ou dwe fè bagay sa yo ki kapab yon ti jan nan yon pwoblèm.
Depi lè sa a mwen te kalite te plis enkline yo travay avèk sit soti nan tè a leve.
Pou bagay sa yo tankou baz done blog ak ki sòt de bagay li vrèman pa sa ki difisil yo bati yon fondasyon.
Si w ap reyèlman etann pou tan, ou ka nan kou itilize yon bagay tankou WordPress
oswa ki sòt de bagay sa pou yon blog.
Kalite ki nan bagay sa yo ke blogs magazen ak pa fè sa yo se reyèlman difisil ase ki
si w ap kouri nan nenpòt nan moun sa kalite bagay sa yo, w ap pwobableman pi bon jis yo
fè yon vèsyon nan-kay.
>> Mwen panse ke la sou li, se konsa mèsi ankò pou vini yo.
Nou vrèman jwi ap pale ak ou nèg, epi nou swete ke ou te aprann kèk bagay.
[Ben] Nou kontan pale - nou gen yo ale men nou kontan pale plis deyò
si ou gen yon lòt kesyon. Mèsi ankò. [Aplodisman]
[CS50.TV]