[Powered by Google Translate] [Seminar] [Datblygiad Safle Wê: O Syniad i Gweithredu] [Ben Kuhn] [Billy Janitsch] [Prifysgol Harvard] [Mae hyn yn CS50] [CS50.TV] [Billy] Hi, Im 'Billy ac mae hyn yn Ben. >> [Ben] Hi. Rydym yn mynd i fod yn siarad am ddatblygiad ar y we heddiw. [Webdev] [Billy Janitsch a Ben Kuhn] Ychydig amdanom ni yn gyntaf. Ben yn fath o y dyn yn ôl diwedd. Ei fod yn gwneud pethau'n gweithio. Ac yna yr wyf yn mynd i mewn ac yn eu gwneud yn 'n bert. Rwy'n ymwneud yn bennaf gyda mwy-pen blaen fath dylunio cynllun o bethau, a Ben, ar y llaw arall, yn gwybod beth mae'n ei wneud felly mae'n gweithio ar ôl diwedd stwff. Gyda'n gilydd, rydym wedi gwneud rhai pethau. Er enghraifft, y llynedd buom yn gweithio ar Gimblium sy'n stiwdio datblygu gêm ar-lein. Dyna oedd ein prosiect terfynol ar gyfer y dosbarth, ac ers hynny rydym wedi gwneud Dosbarth Harvard sydd yn fframwaith ar-lein ar gyfer pori a chyrsiau siopa yn Harvard. Rydym yn mynd i ddechrau gyda'r syniad hwn ar gyfer ein gwefan. Rydym yn mynd i wneud Facebook, ond i gathod. Cyn i chi mewn gwirionedd yn gwneud y wefan hon, peidiwch â gwneud y wefan yma oherwydd nad ei fod yn dda, ond byddwn yn ei ddefnyddio fel fframwaith ac yn mynd drwy'r broses o sut yr ydym yn cymryd y syniad hwn ac yn troi i mewn i gwefan go iawn y gallwn ei ddefnyddio. Byddwn yn dechrau drwy dorri'r wefan i lawr. Fel rydych chi wedi bod yn ei wneud yn CS50, ydych chi eisiau i feddwl am beth yw'r elfennau gwirioneddol sy'n mynd i mewn y wefan hon. Yn y bôn droi o fod yn syniad sydd ychydig yn fath o gysyniad haniaethol i mewn i, beth pendant go iawn y gallech eu gwneud. Rydym yn dechrau drwy ofyn rhai cwestiynau. Beth yw'r wefan hon? Pam ydyn ni'n gwneud hyn? Beth yw ei mynd i gael ei ddefnyddio ar gyfer? Mae'r math hwnnw o beth. Yn achos Facebook Cat, rydym yn y bôn am gael gwefan sy'n gadael i cathod rhwydwaith cymdeithasol gyda'i gilydd. Y syniad yw y gallant bostio ar waliau ei gilydd, gallant wneud sylwadau, y math yna o beth. A dyna lle rydym yn dod i mewn i'r cydrannau swyddogaethol. Erbyn hyn mae gennym y math hwn o fframwaith - mae gennym proffiliau defnyddwyr, gennym sylwadau, a gallwn bostio. Efallai someday byddwn yn influent hoff bethau a math yna o beth. Ac rydym fath o eisiau rhoi blaenoriaeth i nodweddion hyn i fynd i mewn Rydym yn awyddus i ddweud fel, iawn, mae'n bwysig iawn bod pawb yn cael proffil ac y gall pawb bostio ar waliau ei gilydd. Eilaidd i hynny, byddai sylwadau yn braf. Efallai yn nes ymlaen byddwn yn influent hoffterau. Felly, yr ydych am gael syniad o beth sydd sylfaenol i'ch prosiect a pha fath o nodwedd fwy cyffredinol y gellid eu cymhwyso yn ddiweddarach. Byddwch am fath o restr benodol mewn golwg, ond nid yw'r prosiect eich bod yn dechrau gyda yn mynd i fod y prosiect eich bod yn gorffen gyda. Mewn geiriau eraill, mae pethau'n mynd i newid wrth i chi ddatblygu'r safle, a ydych chi eisiau gadael lle i hynny. 'N annhymerus' droi drosodd i Ben pwy sy'n mynd i siarad ychydig am strwythur. [Ben] Rydw i'n mynd i fod yn siarad am yr ochr mwy technegol o ddatblygiad ar y we. Gadewch i jyst yn mynd dros rai pethau sylfaenol yn gyntaf. Pan fyddwch yn gwneud app ar y we, y prif adran eich bod yn mynd i gael i gael ei ydych yn mynd i gael rhywfaint o bethau yn mynd ymlaen yn yr ochr y cleient - hynny yw, y cod eich bod yn porwr yn cymryd o'r safle a JavaScript, HTML, CSS stwff. Dyna i gyd ar yr ochr y cleient. Rydych yn mynd i gael cod arall sy'n rhedeg ar ochr y gweinydd sy'n cadw golwg ar yr holl ddata y mae pobl yn anfon i chi, penderfynu pwy i roi beth, pethau fel 'na. Mae hyn yn ddim ond rhai derminoleg er mwyn i chi guys i gyd yn gyfarwydd â'r hyn yr ydym yn sôn amdano. Tu hwnt i hynny adran mae'n dda meddwl am eich app ar y we o ran un neu ddau o gydrannau gwahanol. Pan fyddwch chi'n gwneud datblygu gwefan un o'r pethau y dylech bob amser fod yn ceisio ei wneud yw lleihau cymhlethdod. Po fwyaf cymhleth eich cod yw y mwyaf o siawns sydd i'w wneud bugs, yr anoddaf yw hi yw newid yn ddiweddarach. Felly, os gallwch dorri i fyny eich app i rai meysydd swyddogaethol penodol Bydd hynny - a gallwch leihau y math o swm y cyfathrebu traws-ardal - a fydd yn helpu llawer yn y tymor hir o ran lleihau bugs chi. I fod yn concrid, fel arfer mae pobl yn rhannu i fyny app ar y we i mewn - mae'r rhain yn fath o eiriau wefr yn awr, ond maent yn dal i fod yn ddefnyddiol. Efallai eich bod wedi clywed pobl yn siarad am fodelau, golygfeydd, a rheolwyr. Modelau yn y data gwirioneddol y mae eich app yn mynd i ddelio ag ef. Er enghraifft, yn eich Cat Facebook, byddai eich modelau fod - byddech yn cael model ar gyfer swyddi tebyg, ac yn fodel ar gyfer proffiliau defnyddwyr, pethau fel 'na. Mae eich barn yn sut yr ydych yn cyflwyno data hynny i'ch defnyddwyr. Efallai y bydd gennych 1 farn ar gyfer edrych ar un swydd a holl sylwadau a golygfa wahanol ar gyfer eich wal sydd â rhestr o'r holl swyddi sy'n cael eu cyfeirio i chi, ac farn wahanol ar gyfer eich porthiant newyddion - pethau fel 'na. Yn olaf, mae gennych rheolwyr sydd yn y bôn pan fydd pobl yn anfon swyddi rydych ac rydych yn gwneud diweddariadau i'ch system yn ôl diwedd, chi cynyddiad criw o cownteri, a beth bynnag. Dyna yw eich rheolwyr. Rydw i'n mynd i fod yn siarad yn bennaf am fodelau. Nid yw barn yw bod anodd yn dechnegol ac mae'r mater yn fwy gyda nhw ddylunio Rheolwyr yn mynd i fod yn benodol i beth bynnag rydych chi'n dylunio. Ond mae rhai technegau eithaf cyffredinol y gallwch eu defnyddio i wneud eich modelau brafiach ac yn haws i weithio gyda fy mod yn credu eu bod yn ddefnyddiol iawn. Mae hyn yn mynd yn bennaf i fod ynglŷn â sut i ddelio â'ch data apps ar y we mewn ffordd braf. Y prif faterion gyda modelau yw eu bod yn byw ar y cleient a'r gweinydd a rhaid i chi chyfrif i maes a) sut i gael nhw - yr holl rai perthnasol - o'r gweinydd i'r cleient, a b) sut i'w cadw mewn cydamseru. Eich defnyddwyr yn mynd i eisiau i wneud rhai diweddariadau. Maent yn mynd i eisiau i wneud swyddi newydd. Maent yn mynd i eisiau i hoffi pethau a phethau os oes gennych hoffterau. Dyna'r prif heriau technegol o ddelio gyda modelau. Y peth cyntaf eich bod yn mynd i eisiau gofyn eich hun pa fath o ddata yn mynd yn y model hwn a pha fath o ymholiadau yr ydym yn mynd i eisiau ei wneud - hynny yw, sut ydym yn mynd i edrych ar y modelau? Ar gyfer eich Cat Facebook enghraifft, eich swydd yn mynd i gael awdur sy'n gysylltiedig ag ef, rhywfaint o destun ôl-wal, a derbynnydd y swydd wal. Ac yna efallai y byddwch am gwestiynu hynny mewn criw o ffyrdd gwahanol. Byddai y byddwch am edrych arno gan bwy ysgrifennodd pa post, gan a dderbyniodd ba swydd, efallai erbyn y dyddiad y cawsant eu postio. Ond os ydych chi'n mynd i wneud hynny yn ôl dyddiad, yna rhaid i chi ychwanegwch maes arall at eich swydd o pan gafodd ei bostio mewn gwirionedd. Y 2 ffactor - pa ddata yr ydych am ei ddefnyddio a sut yr ydych am ei weld - dylech feddwl amdanynt gyntaf oherwydd eu bod yn dibynnu ar ei gilydd, ac mae'n mynd i fod yn fwy anodd eu hychwanegu yn nes ymlaen. Mae rhai ystyriaethau eraill. Pan fyddwch yn meddwl am sut yr ydych yn delio gyda modelau ar y gweinydd yr hyn yr ydych eisiau edrych arno yw - rydych yn y bôn am wneud y gweinydd mor syml ag y bo modd. Gwneud pethau ar ochr y cleient yn gyffredinol yn llawer cyflymach os gallwch chi ei wneud yn unig ar y cleient heb wneud unrhyw fath o gais rhwydwaith. Y syniad yw gwneud cymaint o'r ymholiadau ag y gallwch ar y cleient. Yr unig broblem gyda hynny yw os ydych yn gofyn am eich holl ddata ar y dechrau yna mae hynny'n mynd i gymryd amser hir i lwytho. Felly, y syniad yw i daro cyfrwng hapus rhwng cael digon o ddata ar y cleient eich bod yn gallu gwneud y rhan fwyaf o'ch gwaith yno ond nid dim ond nôl popeth ar unwaith fel eich bod yn cael amser llwytho araf iawn ar y dechrau. Er enghraifft, ar gyfer eich data cath Mae'n debyg y byddech am i nôl criw o swyddi wal diweddar. Ni fyddech am i nôl pob un ohonynt oherwydd gallai hynny fynd yn ôl ychydig o flynyddoedd. Ond nad ydych am i nôl nhw un ar y tro oherwydd byddai hynny'n cyflwyno llawer o gostau cyffredinol rhwydwaith. Mae'n aml yn eithaf anodd - unwaith y byddwch yn cael rhedeg cronfa ddata - mae'n aml yn eithaf anodd i newid pa ddata sydd gennych ynddo - hynny yw, ychwanegu colofn cronfa ddata newydd neu rywbeth - felly un strategaeth dda mewn gwirionedd dim ond i gadw llawer o'ch data mewn blob testun - blob JSON - JSON yn JavaScript Nodiant Gwrthwynebu - Y rheswm y yn ddefnyddiol oherwydd yna gallwch chi ychwanegu eiddo newydd i'r holl smotiau JSON hyn heb newid eich cronfa ddata. Yr unig anfantais i hynny yw os oes gennych criw o gaeau eich bod hychwanegu yn ddiweddarach ar - fel cudd yn y blob JSON - yna mae'n fwy anodd i holi nhw y tu mewn i'r gronfa ddata. Er enghraifft, os ydych yn nes ymlaen - os ydych yn cael eich swydd model a drafodwyd gennym yn gynharach gyda dim ond yr awdur, y derbynnydd a'r testun - gallech hefyd gael blob JSON ac yna os ydych yn ddiweddarach yn dymuno ychwanegu maes dyddiad Ni fyddai'n rhaid i chi newid eich cronfa ddata. Fe allech chi ychwanegu dyddiadau i bob un o'r meysydd testun. Ac yna byddech yn gallu edrych ar y rhai ar ochr y cleient, ond ni fyddech yn gallu holi nhw ar yr ochr gweinydd oherwydd ei fod yn gudd y tu mewn i'r testun. Y mater arall yr ydych am i feddwl am yw sut mae eich cleient a'ch gweinydd yn mynd i gyfathrebu. Fel arfer, byddwch am gadw hyn mor syml ag y bo modd. Alli jyst wedi hoffi a-fi-y get cais am ddata, a chreu-a-newydd-gwrthrych beth, a gais update-yn-hen-gwrthrych. A byddai'r rhain i gyd yn wahanol URLs ar weinydd eich bod - y byddai'r porwr - allwch ddefnyddio ceisiadau AJAX ar gyfer pob un o'r rhain a naill ai ei dderbyn neu ddata post. Unwaith eto, ar gyfer ein Cat Facebook enghraifft, gallech gael y URL i gael swydd unigol, a byddech yn cael URL ar gyfer creu swydd wal newydd ac efallai URL am lwytho'ch llun proffil, pethau fel 'na. Ond unwaith eto, mae hynny'n cyn-nôl y rhan fwyaf o'ch data fel nad oes rhaid i chi gadw gwneud ceisiadau rhwydwaith. Am y rheswm hwnnw, efallai nad ydych am gael y cais mynnwch unigol ar gyfer un swydd, ac yn lle y byddech yn unig am 1 cais get ar gyfer y wal cyfan. Ac yna os ydych yn ceisio taro cydbwysedd oherwydd - mae hyn hefyd yn mynd i ddibynnu ar eich cais. Oherwydd os ydych yn disgwyl bod gan bobl dim ond 10 neu 20 o swyddi wal Bydd hynny'n iawn. Ond os ydych chi'n disgwyl y bydd ganddynt filoedd yna byddai'r cais yn cymryd gormod o amser, ac felly efallai y byddwch am ychwanegu paramedr gael-holl swyddi--ers hynny. Ar gyfer pob un o'r rhain mae'n debyg eich bod yn mynd i fod eisiau i cydamseru eich data yn JSON - JavaScript Nodiant Gwrthrych. 'N bert lawer pob iaith yn delio â JSON yn dda iawn. JQuery Mae hyn yn swyddogaeth getJSON 'n glws a fydd yn gwneud yr holl waith caled i chi. Ac ar PHP mae hefyd swyddogaethau cyfathrebu JSON iawn 'n glws. Felly, dyna mae'n debyg y fformat gorau ar gyfer anfon eich modelau yn ôl ac ymlaen. Fel enghraifft o'r hyn yr ydym wedi siarad amdanynt hyd yn hyn, dyma llif enghraifft ar gyfer eich cais Cat Facebook. Mae'n dechrau i ffwrdd gyda eich porwr yn gofyn am y wefan sylfaen URL. Mae'n debyg bod y gweinydd yn anfon dros HTML statig a rhai JavaScript a CSS. Mae'n arfer gorau i beidio â gwneud unrhyw rendro ar y gweinydd. Mae'n debygol nad ydych eisiau - yr hyn nad yw'r gweinydd yn ei wneud yno yn mynd i lawr y rhestr o swyddi wal a chreu rhywfaint o HTML ar gyfer pob un ac anfon y drosodd. Mae'n arfer gorau i wneud hynny ar ochr y cleient oherwydd fel arall bob tro y byddwch eisiau ail-dynnu rhywbeth, rhaid i chi wneud cais gweinydd. A bod yn gyflym iawn yn rhoi llawer o gostau cyffredinol i chi. Mae'n arfer gorau yn unig i anfon llong i lawr HTML statig ac yna JavaScript a CSS y bydd gwneud y rendro ar ochr y cleient. Cyn gynted ag y stwff yn dod i mewn, yna gallwch chi gael - yn JavaScript - gallwch wneud ceisiadau ar gyfer y data wal a phethau fel 'na, ac ar ôl bod y gweinydd yn y bôn dim ond gwneud ymholiadau cronfa ddata a gwirio caniatâd. Yr unig beth pwysig yw na ellir ei anfon dros rai swyddi eraill wal defnyddwyr nad ydych yn cael gweld. Yn y bôn gall fod yn haen denau iawn mynediad at eich cronfa ddata, ac yna pob un o'r yn dangos y data - pob un o'r safbwyntiau a phethau - gall y rhai ddigwydd yn eich porwr, ac yna pan fyddwch am wneud swydd neu rywbeth 'ch jyst anfon cais arall. Mae hefyd rhai pethau ffansi y gallwch ei wneud ar ben hyn. O ran gwybodaeth dechnegol fwy penodol, Gall datblygu yng JavaScript blaen fod ychydig yn boenus, felly mae rhai llyfrgelloedd ac offer a fydd yn eich helpu llawer â hynny. Yr wyf yn meddwl eich bod wedi i gyd yn ôl pob tebyg clywed am jQuery sy'n gwneud gwneud HTML rendro a thrin yn llawer haws - yn cael llawer o swyddogaethau ffansi ar gyfer pylu i mewn ac allan, a gwneud animeiddiadau Zippy. Mae hefyd llyfrgell hon a elwir Underscore.js. Mae ganddi lawer o swyddogaethau cyfleustodau defnyddiol, pethau y byddech yn disgwyl Javascript i'w gael ei fod yn wir yn doesn't - pethau fel shuffling arae, cael gwared dyblygu o restr, neu gwastatau rhestr o rhestrau. Mae hyn yn unig sampl cod bach. Danlinellu Mae gan tunnell o swyddogaethau 'n glws hyn yr ydych yn dymuno byddai gennych yr holl amser. Ac yna mae 1 yn fwy llyfrgell y byddwn i'n hoffi treulio ychydig o amser ar a elwir yn Backbone.js oherwydd asgwrn cefn mewn gwirionedd yn eich helpu i ddelio gyda modelau ar yr ochr y cleient ac mae llawer o'r dryswch y gall ei achosi. Asgwrn cefn yn rhoi cysyniad hwn o fodelau a chasgliadau i chi yn JavaScript sydd yn y bôn yn union fel gwrthrychau JavaScript mewn rhesi JavaScript ond mae ganddynt digwyddiadau pan fyddwch yn newid eu heiddo. Yn union fel yn JavaScript, gallwch gael digwyddiad pan fydd yn cael botwm clicio neu rywbeth Bydd modelau asgwrn cefn y rhain a chasgliadau asgwrn cefn darlledu pethau fel bod pan fyddant yn newid. Mae hynny'n golygu y gallwch ysgrifennu rhywbeth fel hyn snippet cod yma - mae hyn yn dweud, pryd bynnag y byddwch yn ychwanegu unrhyw beth at yr amrywiaeth swyddi i chi ail-lunio'r wal cyfan. A byddai hyn yn ei ddweud pryd bynnag nifer swydd o hoff bethau yn newid, chi roi gwybod i'r defnyddiwr fod rhywun yn hoffi eu swydd. Neu bryd bynnag unrhyw eiddo o swydd yn newid i chi ail-lunio y swydd. Bydd pethau fel 'na yn arbed tunnell o gymhlethdod i chi oherwydd fel arall os nad oes gennych rhywfaint o fframwaith fel hyn yna bob amser yn eich cod eich bod yn newid unrhyw beth am y swydd, byddai'n rhaid i chi gofio eich hun i alw holl rendr swyddogaethau a phethau fel 'na, ac os ydych eisiau ychwanegu rhywbeth newydd a ddigwyddodd byddech bob tro y byddwch yn addaswyd swydd rhaid i chi fynd drwy bob lle yn eich cod eich bod addaswyd swydd ac ychwanegu y peth newydd. Bydd fframwaith fel hyn dynnu llawer o hynny cyfathrebiad rhwng-haen sy'n gwneud eich cod gymhleth ac yn anodd ei gynnal. Mae ychydig am safbwyntiau hefyd. Rydw i'n mynd i adael y rhan fwyaf o hyn i Billy oherwydd nad ydynt yn dechnegol anodd iawn. Defnyddiwch jQuery ar gyfer eich barn. Mae'n ymarferol fel anghenraid ar y pwynt hwn. Mae'n gwneud popeth yn llawer haws. Mae llawer o lyfrgelloedd. Os ydych wedi cymhlethu elfennau defnyddiwr-rhyngwyneb, os ydych am gael peth auto-gwblhau neu yn hoffi un o'r rhai aml-dewiswyr ffansi - os ydych am unrhyw beth fel 'na, dylech pob tebyg dim ond chwilio o gwmpas a gallwch ddod o hyd i lyfrgell da a fydd yn gwneud yr hyn rydych ei eisiau. Bydd Billy egluro mwy am y rhannau mewn gwirionedd yn anodd o safbwyntiau. Hefyd, fel nodyn ochr, asgwrn cefn wedi rhai swyddogaethau ar gyfer gwneud sylwadau yn cyfathrebu 'n glws gyda modelau - edrychwch ar y dogfennau ar gyfer pob un o'r llyfrgelloedd hyn, mewn gwirionedd. Dim ond yn edrych ar y docs. Maent yn ysgrifennu'n dda iawn ac yn hawdd i'w dilyn. Yn gyffredinol, gallwch 'n bert lawer yn unig Google os oes gennych broblemau. Mae yna lawer o bobl sy'n eu defnyddio. Rwy'n credu bod hyn yn fel nodyn terfynol. Mae yna hefyd rhai pethau mwy datblygedig y gallwch eu gwneud os ydych yn chwilio i wneud eich app gwe ychwanegol awesome. Gallwch wneud - y fanyleb HTML5 newydd wedi llawer o bethau ffansi gallwch ei wneud. Storio lleol - sef y gall ydych yn storio data yn y porwr - yn hytrach na gorfod mynd yn ôl a chael golwg ar y gweinydd ar gyfer popeth, gallwch gadw peth ohono ar y cleient, a bod hyd yn oed yn gadael i bobl - mewn rhai achosion, gall fod hyd yn oed yn gadael i chi ddefnyddio'r offline dudalen we. Mae hyn yn beth a elwir yn websockets sydd yn fath gwahanol o gyfathrebu rhwydwaith lle hytrach na dim ond i chi wneud un cais, byddwch yn cael ymateb ac rydych chi'n ei wneud, eich bod yn cadw agor cysylltiad â'r gweinydd ac fel y gallwch wneud pethau fel diweddariadau amser real. Felly, os ydych yn ceisio ei wneud sgwrs app, gallech ddefnyddio websockets i gyfathrebu yn ôl ac ymlaen fel na fyddai'n rhaid i chi gadw gofyn, "O, gweinydd, a oedd unrhyw un anfon sgwrs i mi?" bob 10 eiliad neu rywbeth. Mae hefyd yn nodwedd HTML5 diddorol lle y gallwch ei wneud yn edrych fel URL y dudalen yn newid heb erioed orfod mewn gwirionedd yn ail-lwytho iddo. Gallwch ddefnyddio yn ôl ac ymlaen botymau heb wneud criw o geisiadau rhwydwaith. Pethau fel 'na yn ddefnyddiol iawn o ran ei gwneud yn gyflym, ond hefyd yn gweithio fel y dylai app we. Mae hefyd y peth hyn a elwir CoffeeScript. CoffeeScript yn iaith wahanol, mewn gwirionedd, sy'n crynhoi i lawr i JavaScript. Byddech yn ysgrifennu eich holl cod yn CoffeeScript, ac yna ydych yn rhedeg compiler hwn, ac mae'n poeri allan ffeil JavaScript y gallwch eu cynnwys yn eich tudalen we. Y rheswm y CoffeeScript yn braf yw oherwydd ei fod yn cael gwared ar lawer o'r achosion rhyfedd fod JavaScript wedi lle hafal gydradd, ac yn dychwelyd gydradd wneud pethau gwahanol, neu os hoffech - mae ganddo cystrawen brafiach ar gyfer delio â araeau a swyddogaethau. Mae hyn ychydig yn snippet o CoffeeScript sy'n cynhyrchu rhestr o'r holl sgwariau o 10 ^ 2 i 1 ^ 2 yn ôl. Fel y gallwch weld, CoffeeScript yn aml yn gadael i chi yn mynegi yn 1 llinell beth fyddai'n cymryd 5 llinell o JavaScript. Gall wneud pethau'n llawer haws. Mae'n ychydig o gystrawen newydd i ddysgu yn gyntaf, ond mae'n bendant yn eich gwneud yn fwy cynhyrchiol yn y tymor hir. Gallwch hefyd ddefnyddio ieithoedd eraill ar y gweinydd na PHP - ieithoedd fel Ruby, Python, neu mae hyd yn oed brosiect o'r enw node.js a fydd yn gadael i chi ddefnyddio JavaScript ar y gweinydd. Yn bersonol, Fi 'n sylweddol,' n sylweddol casineb PHP. Dwi ddim yn mwynhau gweithio gydag ef. Os ydych chi, hefyd, yn meddwl ei fod yn cluge iawn o iaith, yna gallwch chi ddefnyddio un o'r rhain yn lle hynny. Yn gyffredinol, os ydych am wneud rhywbeth ac nad ydych yn wir yn gwybod sut y byddech yn ei wneud, dim ond chwilio'r Rhyngrwyd. Mae tunnell a tunnell o adnoddau yn enwedig ar - StackOverflow yn un gwych. Mae'n y wefan hon lle mae rhaglenwyr yn gofyn cwestiynau i'w gilydd. Efallai eich bod wedi rhedeg i mewn iddo os ydych yn cael trafferth ar setiau problem CS50. Ac mae tunnell o lyfrgelloedd ar gyfer gwneud 'n bert lawer unrhyw beth yr ydych ei eisiau. Os ydych am wneud rhywbeth ac nad ydych yn gwybod sut i wneud hynny, peidiwch â chymryd yn ganiataol ei fod yn amhosibl. Dim ond yn edrych o gwmpas ac efallai y byddwch yn dod o hyd rhai adnoddau da. Yn gyffredinol lapio i fyny, y prif siopau cludfwyd yn cadw pethau'n syml. Po fwyaf cymhleth eich cod ar ddechrau a po fwyaf y byddwch yn ceisio gwneud pethau ffansi, yr hiraf y bydd yn ei gymryd i gael rhywbeth mewn gwirionedd yn swyddogaethol ac y mwyaf anodd y bydd i newid yn nes ymlaen. Felly, yn gwneud pethau y, ffordd hawdd fud gyntaf. I fynd ynghyd â hynny, peidiwch â bod ofn o daflu i ffwrdd hen god neu lanhau i fyny llawer. Yn gyffredinol, unwaith y byddwch mewn gwirionedd yn cael gweithio rhywbeth, mae'n llawer haws i feddwl am na phan ydych yn dal yn y camau dechrau o sut ydw i'n roi hyn i gyd gyda'i gilydd. Mae'n well i wneud y dyluniad dumbest posibl sy'n gweithio ac yna wella iteraidd na cheisio cael popeth yn iawn y tro cyntaf. O ran is-adran cleient-gweinyddwr, ceisiwch gadw eich gweinydd yn syml iawn - nid dim ond cronfa ddata a rhai dilysu ac yn gwneud unrhyw waith caled yno. A yw eich holl bethau cymhleth ar ochr y cleient yn y porwr yn JavaScript gymaint ag y gallwch. Edrychwch o gwmpas ar gyfer llyfrgelloedd sy'n gwneud eich bywyd yn well. Yn well bob amser i ddefnyddio cod sy'n rhywun arall ysgrifennodd os ydych yn - ac nid i ysgrifennu eich hun. Mae yna lawer o bethau ar y Rhyngrwyd. Google yn eich ffrind gorau. Google yn ffrind gorau y rhaglennydd. Yeah, nid yn bendant peidiwch â bod ofn i edrych o gwmpas am bethau. Mae pob hawl. A throsodd i Billy. [Billy] A dweud y gwir, cyn i mi ddechrau gyda rhai pethau dylunio, oes unrhyw un gennych unrhyw gwestiynau am Ben am unrhyw beth y soniodd amdano? Iawn, yn dda. Unwaith eto, gadewch i ni wybod os nad yw unrhyw beth yn glir neu os ydych chi am i ni fynd dros rywbeth ychydig yn fwy. Rydw i'n mynd i gamu'n ôl ychydig a siarad am y rhannau mwy sylfaenol o ddylunio. Crybwyll Ben y model a elwir yn - mae'n ddrwg gennyf, mae'r model system barn rheolwr sydd yn fath o agwedd dechnegol, felly dwi'n mynd i edrych ar farn benodol, ac rwy'n mynd i ddechrau sut y byddech chi gynllunio farn bod yn edrych yn neis. Dyma fath o dempled sylfaenol iawn ar gyfer ein Cat Facebook. Yr wyf yn meddwl bod rhai hanfodion mewn dylunio UI modern sy'n werth codi. Gall y byddwch yn sylwi bod llawer o le gwyn ar draws y dudalen, digon o le am bethau. Peidiwch â theimlo fel yn rhaid i chi sboncen pethau i dudalen. Ydych chi eisiau gadael llawer o le agored, ac os byddwch yn mynd i bron unrhyw wefan modern byddwch yn gweld mae gwyn ym mhob man. Mae gwyn mewn mannau na fyddech yn disgwyl. Mae gennych y palet lliw, ac mae'n ddoeth ar y dechrau i ddewis palet lliw eich bod yn mynd i weithio a datblygu. I chi hefyd - mae'n helpu i ddewis teip, a bod y ffordd rydych chi'n fath o weithio gyda hyn hanfodion concrid o ddylunio. Mae gennych eich math, mae gennych eich lliwiau, ac yna gallwch math o ffitio popeth arall yn ôl yr angen. Felly, fel y dywedais, gyda'ch cynllun lliw rydych am ei ddefnyddio lliwiau beiddgar eich cynllun lliw gynnil. Penawdau yn neis. Botymau yn neis i gael lliwiau mawr iawn, flashy. Ond yn gyffredinol, os oes gennych wefan sydd â lliwiau ym mhob man, pawb 'ch syllu yn wyneb,' i jyst yn edrych yn anniben, ac mae'n dda i ddim. Byddwch am gyffredinol yn defnyddio lliwiau golau. Ceisiwch, unwaith eto, dewiswch cynllun lliw 'n bert cydlynol. Gallwch gael tasgu bach hyn o lawer o liw - sy'n gallu edrych yn 'n bert' n glws, ond yr ydych am eu defnyddio 'n bert yn gynnil. Fel y dywedais, yr ydych am i fod yn fach iawn. Llai yn fwy bron bob amser. Os gallwch arddangos rhywbeth neu beidio arddangos rhywbeth, ac rydych yn fath o ansicr a ddylai fod yno yn ddiofyn - mae'n debyg eich bod yn orau i ffwrdd adael allan. Gallwch chi bob amser yn ychwanegu yn ddiweddarach. Yeah, cadw pethau'n syml. Ond yn bwysicaf oll, y byddwch am ystyried cynlluniau lluosog. Peidiwch â meddwl bod pan fyddwch yn gwneud safle, mae gennych yn eich pen eich bod yn mynd i gwneud y safle mewn ffordd benodol, ac mae'n mynd i edrych yn union fel hyn. Mae'n mynd i gael y pennawd glas ar y brig a'r bar ochr glas ac yna y peth is-header melyn. Y byddwch am wneud templedi lluosog. Gallwch naill ai - os ydych yn dda gyda Siop Photo, gallwch agor y fyny ac i math o ddylunio gwefan wrth i chi ei hoffi edrych. Os na, gallwch jyst arfer beiro a phapur, ond crafu i fyny dyluniadau lluosog. Ydych chi am gael y bôn yn sefydlu lle mae gennych lawer o wahanol ddyluniadau, ac os oes un yn dod i ben i fyny gwaith, yna mae hynny'n wych. Os bydd un yn dod i ben i fyny yn methu, yna gennych chi bob amser un arall i droi ato. Yn gyffredinol, nid ydynt yn teimlo fel dylech gael eich cyfyngu i ba bynnag dylunio chi i ddechrau penderfynu ar. Dyluniadau yn amrywiol iawn, ac yn rhan o bwysigrwydd y model barn rheolwr system yw y gallwch gyfnewid i mewn ac allan o wahanol safbwyntiau ydych ei eisiau. Gallwch siglo un ffordd y mae'r data, ac yna'n penderfynu, oh, mewn gwirionedd, nid yw hynny'n gwaith sy'n dda. Rwy'n credu ei fod yn fath o yn rhy gymhleth neu os oes rhan yma nid yw hynny'n gweithio mewn gwirionedd, felly Im 'jyst yn mynd i roi'r gorau farn hon a chyfnewid mewn un hollol newydd yn llwyr. Gallwn barhau i ddefnyddio'r hen modelau a'r hen rheolwyr. Gallwn wneud popeth ar y gweinydd a'r cleient ag y byddem blaen. Ond mae'r don gwirioneddol y data fel y dangosir yn mynd i fod ychydig yn wahanol. Cyn belled ag y gwirionedd yn gweithredu'r cynllun rydych eisiau, unwaith y bydd gennych ychydig o gynlluniau braslunio allan ar bapur neu ar Siop Photo neu beth bynnag, mae nifer o offer sy'n cael eu gwneud ar gael i chi. Y cyntaf ydych yn gyfarwydd iawn ag ef yw eich HTML, PHP, neu beth bynnag iaith rydych yn ei ddefnyddio dim ond i roi cod y tudalennau sefydlog ar eich gwefan. Rydych chi wedi gweithio llawer gyda HTML pa fath o yn rhoi tagiau hyn yn eich y gallwch roi pethau i mewn i, ac yn y bôn mae'n ffordd o drefnu eich cynnwys. Er enghraifft, mae gennych y pennawd i fyny yno, felly rydych yn mynd i gael tag pennawd, ac mae'n mynd i gael rhywfaint o destun tu mewn iddo yn ôl pob tebyg yn mynd i fod yn dag arall. Yna mae gennych sidebar efallai gyda rhai cysylltiadau gwahanol, a'r rhai yn mynd i gyd fod mewn tagiau ar wahân. Felly, yn y bôn HTML ar ei galon yn ffordd o rannu y dudalen sut chi yn y pen draw am fformadu'r iddo. Felly eto, yr ydych wedi gweld hynny o'r blaen. Rydych yn eithaf gyfforddus â gweithio ag ef yn awr o gofio eich bod wedi gwneud y pset diwethaf gobeithio, felly dylai hynny fod yn broblem. Yna byddwch yn cael CSS sydd yn y bôn yn delio pob un o'r agweddau dylunio statig. Byddai'n trin pob un o'r lliwiau, pob un o'r leoliad gwahanol elfennau, ble maent yn mynd o ran un arall, pa mor fawr ydynt, y gwahanol fathau o lleoli'r a fyddai'n rhaid i chi - mewn geiriau eraill, y gallwch gael pethau sefydlog felly pan fyddwch yn sgroliwch i lawr y maent yn aros, neu gallwch gael pethau gymharu â elfennau eraill. Mae pob un o'r math hwnnw o bethau yn CSS. Ar ben hynny, gallwch wneud gwahanol addurniadau, gallwch gael lliw testun, effeithiau testun, i gyd math o bethau. Rhoddodd Ben seminar dda iawn ar y penwythnos diwethaf, ac felly byddwn yn bendant yn edrych ar hynny os ydych yn bwriadu ei wneud rhai pethau ffansi gyda CSS. CSS3 mewn gwirionedd yn y fersiwn diweddaraf o CSS, a gall wneud pob math o bethau neis iawn. Gall wneud graddiannau, gallwch gael corneli 'n glws, crwn, gallwch wneud pob math o bethau i wneud eich gwefan yn edrych yn fwy modern ac yn ffansi. Mae'r offeryn nesaf yw JavaScript a jQuery oedd yn trafod Ben ychydig am, ond byddaf yn cael ychydig ymhellach i mewn. JavaScript, fel yr ydych wedi gweithio ag ef ychydig bach, neu o leiaf ei weld mewn darlith, yn fath o ffordd o ddynamig yn gwneud pethau yn HTML. HTML, fel y gwyddoch, yn sefydlog, felly unwaith y byddwch wedi HTML na allwch addasu. Ond JavaScript, mewn rhai ffyrdd, yn ffordd i allu addasu HTML. Felly, gallwch wneud hynny, ac mae hynny'n wych, ond JavaScript wir yn boen i weithio gyda nhw. Mae mor hir ac aflem ac i wneud hyd yn oed y pethau symlaf gwneud yn ofynnol i lawer o linellau o JavaScript. Felly, jQuery yn y bôn yn llyfrgell ar gyfer JavaScript sy'n symleiddio hynny i gyd. Mae'n dweud, iawn, os ydych am gael blwch sgwâr yn dod o'r chwith ac yn pylu i mewn i'r dudalen fel ei bod yn yn y canol, yn JavaScript a fyddai'n cymryd - Nid wyf yn gwybod, cant linellau i'w wneud, a byddai'n fod yn boen, a byddwch yn dod allan ohono casáu popeth am rhaglennu ar y we. JQuery chi yn y bôn yn cael yr elfen-dot-pylu i mewn, neu rywbeth fel 'na. Swyddogaethau Felly, iawn, yn syml iawn a fydd yn gadael i chi wneud pob math o animeiddiadau oer a'r math hwnnw o beth. Y peth arall bod y 2 yn dda iawn i yn unig yw gwneud pethau deinamig gyda'r wefan. Felly, yn hytrach na dim ond cael eich dudalen HTML - sy'n dangos rhywfaint o ddata, ond nid yw mewn gwirionedd wneud unrhyw beth - bydd JavaScript a jQuery gadael i chi gael botymau y gallwch glicio ar, a gallwch llusgo elfennau a ail-archebu iddynt ac yn eu didoli, ac mae ganddynt elfennau newydd hychwanegu neu eu dileu. Gallwch ychwanegu-dileu, y math yna o beth. Felly, jQuery yn gwneud tunnell o bethau cŵl. Ac Vipul mewn gwirionedd yn rhoi seminar arno heddiw, yr wyf yn credu, am 5 o'r gloch-, felly os gallwch chi gadw o gwmpas am mor hir, a fyddai - 5 neu 4? Pedwar. Mae'n ddrwg gennym. Mae'n mewn gwirionedd i'r dde ar ôl hyn, felly byddwn yn argymell glynu o gwmpas am os oes modd. JQuery yn super, super defnyddiol, a byddwch yn gallu gwneud llawer o bethau neis iawn ag ef am 'n bert lawer unrhyw prosiect datblygu ar y we. Nawr rydw i'n mynd i fynd i mewn i fath o wahaniaeth. Rydw i wedi bod yn siarad yn y bôn am rhyngwyneb defnyddiwr. Rhyngwyneb defnyddiwr yn unig yw dyluniad y safle. Ond mae fath o gysyniad arall a yw profiad y defnyddiwr. Mae'r ddau yn wahanol iawn. Rhyngwyneb yn bendant yn rhan o'r profiad. Mewn geiriau eraill, pan fyddwch yn mynd i safle, rydych yn edrych ar y rhyngwyneb. Mae hynny'n rhan o sut yr ydych yn profi y safle. Ond mae profiad y defnyddiwr yn fwy na hynny. Profiad y defnyddiwr yn ymwneud â'r hyn yr argraff bod y defnyddiwr yn cael oddi wrth eich safle. Felly, yn amlwg, rhyngwyneb yn rhan o hynny. Ac mae'n bendant yn rhan angenrheidiol, ond nid yw'n ddigon. Mewn geiriau eraill, os oes gennych rhyngwyneb 'n glws, ac mae'n eithaf ac yn lliwgar a hynny i gyd, mae hynny'n wych, ond os bydd y defnyddiwr yn mynd at eich safle, yn gweld cynllun 'n bert ac mae'n drysu gan popeth, nid oes syniad sut i wneud unrhyw beth, yna mae'n amlwg eich bod wedi gwneud mewn gwirionedd Gwefan gwael. Dyna fath o lle mae profiad y defnyddiwr yn dod i mewn Rydw i'n mynd i siarad ychydig am ddylunio UX - UX yn fyr ar gyfer profiad y defnyddiwr - a math o sut y gallwch wneud yn siŵr eich bod yn cael profiad y defnyddiwr da. Y pwynt cyntaf yw y gall chi ddylunio gwefan lle gall defnyddiwr wneud unrhyw beth y defnyddiwr o bosib eisiau. Ond os na all y defnyddiwr ffigwr allan sut i wneud y pethau hynny - mewn geiriau eraill, os nad oes gan y defnyddiwr yn syniad da pan fyddant yn mynd at eich safle, "O, os ydw i eisiau i ddiweddaru fy broffil, yna yr wyf yn cliciwch y botwm hwn, neu os ydw i eisiau i swydd ar wal rhywun, yna yr wyf yn mynd at eu wal a chliciwch ar focs bach. " Os nad yw'r defnyddiwr yn gwybod hynny, yna rydych yn effeithiol wedi nid mewn gwirionedd rhoi ar waith y functionality yn gywir. Rhan o weithredu swyddogaethau yw bod y defnyddwyr mewn gwirionedd yn gallu ei ddefnyddio. A gallai fod yn rhwystredig - efallai y byddwch yn gwneud y safle, a gall wneud pob math o bethau gwych, ond yna bydd yn rhaid i chi brofi pobl a dweud, "Ni all wneud hyn. Pam na all wneud hyn? "A byddwch yn ei ddweud yn ôl iddynt, "Wel, gall. Mae'n rhaid i chi fynd i mewn i'r 7fed galw-i-lawr ddewislen ar y aneglur tudalen mai dim ond yn dod o hyd i ddolen ar y gornel isaf-dde "neu rywbeth. Yn amlwg, nid ydych yn dymuno hynny. Rydych am iddo fod yn glir i'ch defnyddwyr hyn y maent yn fod i'w wneud, a dylai fod yn syml a greddfol ar eu cyfer. Peth arall eich bod am geisio ei wneud yw, os bydd rhywun yn mynd i fynd at eich safle a 9 allan o 10 gwaith yn gwneud camau A, ac 1 allan o 10 gwaith yn gweithredu B, mae'n debyg y byddwch eisiau canolbwyntio eu profiad ar weithredu A. Mewn geiriau eraill, yr ydych am ei gwneud yn iawn, yn glir iawn sut i wneud A. A ddylai fod yn blaen-a-canol - ewch i'r safle, gweld; oh, ei fod yn iawn yno. Tra bod B yn amlwg eich bod am fod yn glir, ond gallwch adael ei fod yn ychydig yn fwy yn y cefndir. David yn rhoi enghraifft dda o hyn yn y ddarlith, sef y system Boston T. Pan fyddwch yn mynd i Boston T a'ch bod am i brynu tocyn, rhaid i chi fynd i mewn 5 bwydlenni cyn y gallwch mewn gwirionedd yn prynu tocyn ar gyfer $ 2, $ 2.50 gwerth yn, sy'n yw faint y mae'n ei gymryd i farchogaeth yr isffordd mewn un cyfeiriad. Mae hynny'n broblem oherwydd y rhan fwyaf o bobl sy'n marchogaeth y isffordd yn ôl pob tebyg dim ond eisiau mynd i un lle, prynu eu tocyn, yn cael ar y dde i ffwrdd. Nid yw'n gwneud synnwyr bod yn rhaid iddynt fynd drwy lawer o wahanol fwydlenni i gyrraedd yno. Byddai profiad y defnyddiwr yn well fod yn botwm cyflym ar y dudalen gyntaf sy'n dweud cyfiawn, 'prynu tocyn un-ffordd,' a byddai hynny'n rhoi ym mhob un o'r safon gwerthoedd diofyn, ac yna os bydd rhywun eisiau prynu tocyn wahanol na hynny, maent yn dal i, wrth gwrs, yn cael y dewis i, ond eich bod wedi optimeiddio ar gyfer yr achos cyffredin-ddefnydd sydd yn wirioneddol bwysig. Gallwch weld enghreifftiau o hyn ar Facebook, dde? Os byddwch yn mynd i Facebook a ydych am swydd statws, ei fod yn iawn ar y brig sef yr hyn yr ydych yn aml am ei wneud. Cyn gynted ag y byddwch yn mynd i mewn i'r dudalen, gallwch wneud y pethau mwyaf cyffredin sy'n rydych am ei wneud. Os ydych am wneud pethau ychydig yn fwy cymhleth fel, dweud fy mod eisiau mynd i'r wal fy ffrind a phostio llun arno - y byddaf am ei wneud yn aml, ond nid mor aml â phostio diweddariadau statws - hynny yn yr achos hwnnw, yr wyf yn teipio eu henwau yn y blwch ar y brig, cliciwch ar eu proffil, ac yna, yn dal, ei fod yn iawn ar y brig yno unwaith y byddaf wedi gotten at eu proffil. Unwaith eto, rwyf wedi optimized yn flaenoriaeth ar gyfer yr achosion mwyaf cyffredin-ddefnyddio. Peth pwysig arall yw bod yn aml bydd pobl yn fath o yn ceisio i fynd o gwmpas hyn drwy ddweud, iawn, felly yr wyf wedi gwneud y safle ac mae pobl yn ei chael yn ddryslyd, ac mae hynny'n broblem, dde? Yn amlwg, nid oes arnaf eisiau i bobl gael eu drysu gan gynnwys fy safle. Ond nid yw'r ffordd i ddatrys hynny yw cael rhywbeth pop i fyny a dweud, hey, dw i'n mynd i ddysgu chi sut i ddefnyddio'r safle hwn. Cam 1 - cliciwch y botwm hwn. Cam 2 - ewch yma. Cadarn, mae hynny'n ffordd o oresgyn hynny - mae'n ffordd y gallwch ddweud wrth bobl beth i'w wneud, ond mae'n mewn gwirionedd nid y ffordd gorau posibl. Os byddaf yn mynd i wefan ac yn sydyn roeddwn i'n peledu â tiwtorial hwn sydd wedi dweud wrthyf beth i'w wneud a ble i fynd a hynny i gyd, nid yw hynny'n hwyl i mi. Dyw hi ddim yn brofiad da i mi. Mae'n fath o boen. Rwyf am i ddim ond dechrau gwneud pethau. Mae pobl yn mynd i gau allan o'u blwch deialog, neu gael allan o'r tiwtorial, yn gwybod beth i'w wneud, ac yna cwyno oherwydd nad ydych wedi dweud wrthynt beth i'w wneud. Nid yw'r ffordd i ddatrys hyn yw drwy roi unrhyw fath o tiwtorial neu gyfarwyddiadau - unrhyw beth fel 'na. Yn gymaint ag y gallwch osgoi, chi wir am ddangos i'r defnyddiwr beth i'w wneud yn unig gan y natur o sut mae'r wefan yn cael ei osod allan. Mewn geiriau eraill, os byddaf yn mynd i Facebook heb mewngofnodi, y peth cyntaf i mi ei weld ar y brif dudalen - mae'n blwch mewngofnodi bach. Felly, duh. Rhaid i mi logio i mewn Mae'n iawn yno. Er, os es i Facebook a bu'n rhaid i mi glicio ychydig o ddolen ar y gwaelod a ddywedodd 'logio i mewn' a gweddill y dudalen yn unig oedd rhyw fath o lun neu rywbeth, Fyddwn i ddim wir yn gwybod beth i'w wneud, dde? Byddwn yn drysu. Felly, gallai ddweud wrthyf i fynd i lawr yno a chliciwch ar y botwm i logio i mewn, neu a allai y log yn y botwm fod yn iawn ar y brig ble dw i'n mynd i weld. Byddwch am bob amser yn dangos y defnyddiwr beth i'w wneud, ac y dylai fod yn gynhenid ​​yn y dudalen ei hun. Pan fyddwch chi'n meddwl am ddyluniadau a gwatwar i fyny gwahanol ffyrdd o mynegi eich safle, ydych wir eisiau i feddwl am yr hyn y mae'r defnyddwyr yn mynd i fod yn ei wneud a sut y gallwch ddangos iddynt beth i'w wneud. Un peth olaf yn profi yn wirioneddol bwysig. Mae'n wych i gael rhywun - gofynnwch i ffrind, gofynnwch i rywun nad ydych yn gwybod hyd yn oed - sydd erioed wedi gweld y safle cyn defnyddio'r safle. Oherwydd eich bod wedi bod yn gweithio ar y safle am oriau, rydych chi wedi bod yn syllu arno, ac yr ydych yn gwybod yn union beth i'w wneud felly mae'n amlwg eich bod yn mynd i gael eu profi pethau yr ydych wedi bod yn gweithio ar ac eich bod yn gwybod gwaith. Ond os bydd rhywun arall yn dod ar hyd ac yn defnyddio'r safle sydd erioed wedi ei ddefnyddio o'r blaen, dyna brofiad unigryw oherwydd bod gennych rywun sydd heb wybodaeth flaenorol o'r safle yn mynd i mewn iddo, felly maen nhw'n mynd i gael yn effeithiol unrhyw syniad beth i'w wneud neu pa fath o achosion defnydd yn bresennol ar eu cyfer. Mae hynny'n wych. Mae hynny'n unigryw gan eu bod yn y bôn person ag wag ar gyfer meddwl. Gallant ddweud wrthych os oes rhywbeth yn ddryslyd neu'n aneglur. Maent yn gallu rhoi syniad i chi o union yr hyn y mae'r profiad y defnyddiwr eich safle yn chi. Gall fod yn anodd iawn i ddweud bod chi eich hun, felly yn sicr byddwn yn eich annog fel eich bod yn datblygu eich prosiectau - os ydych yn gwneud prosiectau ar y we - i gael pobl defnyddio'r safle mor gynnar ag y byddwch yn cael rhyw fath o demo swyddogaethol. Nawr rwy'n mynd i siarad ychydig am sut i reoli prosiect datblygu ar y we. Rydym wedi mynd dros sut y gallwch wneud yr ochr yn ôl diwedd technegol, sut y gallwch chi ddylunio safle da iawn, ac mae hynny'n wych os ydych yn gweithio eich pen eich hun, ond - hyd yn oed os ydych yn gweithio eich pen eich hun ac yn enwedig os ydych yn gweithio ar dîm, rheoli prosiect yn dod yn broblem fawr. Rydych chi wedi math o glywed am reoli prosiectau mewn gwahanol ffurfiau ers ysgol elfennol pan oeddech yn gwybod gwaith grŵp. Mae'n rhaid i chi gydweithredu, cyfathrebu, i gyd. Mae hynny i gyd yn dal yn berthnasol yma, ond mae yna rai amgylchiadau unigryw gyda gwyddoniaeth gyfrifiadurol eich bod am fod yn ymwybodol o, a ydych am wneud yn siŵr eich bod yn trin yn dda. 'N annhymerus' siarad yn gyntaf ychydig am y tîm y byddwch yn i mewn Mae'n bwysig iawn i ddewis y maint cywir o dîm i fod yn gweithio ar, ac yn eich prosiect terfynol Rwy'n credu eich bod yn cael y dewis i ddewis rhwng 1 a 4 o bobl os ydw i'n gywir. Y byddwch am wneud yn siŵr nad ydych yn unig yn dewis y nifer o bobl eich bod am weithio gyda oherwydd eu bod yn eich ffrindiau. Byddwch am ddewis tîm sy'n o faint da ac a fydd yn cael y swydd ei wneud. Mae 'na oddi ar y fasnach mewn cael mwy o bobl yn erbyn lai o bobl. Os oes gennych fwy o bobl, yn amlwg, mwy o waith yn cael ei wneud oherwydd eich bod yn cael llawer o bobl, llawer o cod, lawer o syniadau, a dyna i gyd yn wych. Ond mae hefyd yn gofyn am lawer mwy o reolaeth a llawer mwy o gyfathrebu. Mewn geiriau eraill, os oes gennych 4 o bobl yn gweithio ar yr un prosiect ac maen nhw i gyd olygu'r un cod, fwy neu lai maent i gyd yn math o angen gwybod beth sy'n mynd ymlaen, felly mae angen i chi - os ydych yn ychwanegu rhyw swyddogaeth newydd fath o rhaid i chi ddweud wrth bobl - I'm ychwanegu hyn, Im 'yn newid yn y modd hwn - yn enwedig os ydych yn mynd i mewn i'r pethau mewn gwirionedd dwfn fel y modelau a'r rheolwyr sydd mewn gwirionedd yn mynd i ddylanwadu ar sut mae'r gwaith ar y safle. Mae angen i'r tîm cyfan i fod yn ymwybodol ohono, felly mae angen i chi wneud yn siŵr nad ydych yn dewis rhy fawr tîm sy'n mynd i fod yn anodd i wneud y cyfathrebu. Byddwch hefyd yn ddim eisiau i ddewis digon dîm bach nad ydych yn mynd i yn gallu cyfathrebu oherwydd ei fod dim ond i chi. Peth arall i'w ystyried yw'r cydbwysedd lle mae sgiliau pobl yn. Mae'n wych os ydych i gyd yn rhaglenwyr yn dda iawn. Ond os ydych yn yr holl bobl yn ôl diwedd, yna eich safle yn cael ei ddim yn mynd i edrych yn dda iawn oherwydd bod gennych gronfa ddata mawr hwn, ac mae'n gwneud ymholiadau chwilio hynod o gyflym - sy'n wych - ond pan fyddwch yn mynd iddo, mae fel safle 1990au gyda coch a glas ym mhob man, ac mae hynny'n dda i ddim chwaith. Sylwch fod Ben a minnau yn gweithio fel tîm yn neis iawn oherwydd fy mod math o fwy yn y pen blaen, yr ydym yn rhyngweithio mewn y-pen canol, a Ben wirioneddol dda gyda yn ôl diwedd stwff, fel bod yn gweithio'n dda iawn oherwydd gallwn ddylunio unrhyw safle ac yn y bôn y tyllau yn y safle y mae angen eu llenwi gellir ei lenwi gan naill ai un ohonom, neu'r ddau o bosibl. Y byddwch am wneud yn siŵr nad oes unrhyw dyllau yn eich tîm. Mae'n iawn os oes ychydig o orgyffwrdd. Mewn geiriau eraill, os oes gennych 2 o bobl sydd yn y ddau da gyda pen ôl, a all fod yn dda hefyd oherwydd gall helpu ei gilydd gyda phroblemau eu bod yn cael. Gall fod yn broblem os oes gennych ond 1 person pwy sy'n gyfrifol am beth penodol ac maent yn rhedeg i mewn i broblem, felly ydych chi eisiau i gael ychydig o orgyffwrdd ond eich bod yn bwysicaf oll eisiau gwneud yn siŵr bod pob un o'r tyllau posibl yn cael eu llenwi. Y peth olaf - a dylai hyn fod yn amlwg, ond mae'n aml yn peidio. Rydych yn wir eisiau bod yn cael hwyl. Y pwynt y prosiect terfynol yn CS50 ac yn aml y pwynt datblygu'r we yn gyffredinol Nid ydy at jyst yn gwneud gwaith am ei fod angen ei wneud. Rydych yn wir eisiau bod yn cael hwyl, a ydych am fod yn gwneud rhywbeth hynny sy'n eich cymell i weithio arno. Os beth bynnag yr ydych yn gwneud yn boen i eistedd i lawr a gweithio ar, yna ni fyddwch yn dewis y prosiect cywir. Ydych chi am ddewis rhywbeth yr ydych yn dod o hyd yn ddiddorol, chi wir am weld y canlyniad, yr ydych yn edrych ymlaen pan fyddwch yn cael syniad newydd am rhywbeth y gallech ei wneud - felly mae pob math o brosiectau yno fy mod yn siŵr gallwch ddod o hyd - mae gan bawb rhywbeth a fyddai'n wir yn eu dirgelwch os ydynt yn gwneud prosiect ar y we. 'N annhymerus' yn dweud ei fod eto ar hyn o bryd. Os yw eich prosiect yn ymddangos fel poen ac nad ydych am i weithio arno, dewis prosiect arall. Dewiswch rhywbeth sydd wir yn ysbrydoli chi. Crybwyll Ben cysyniad hwn o ailadrodd ychydig, ac yr wyf am i fynd drosto ychydig. Mae'n bwysig iawn i weithio mewn cyfnodau o newid sydyn lle rydych yn cael rhywbeth swyddogaethol. Gall fod yn wych os oes gennych cynllun hwn ar gyfer gwefan sy'n mynd i wneud A, B, ac C, ac yn y diwedd bydd yn cyrraedd yno. Ond eich bod yn sownd yn y cam hwn lle rydych chi'n gweithio arno ac yn gweithio arno, ond nid oes dim wedi cael ei wneud. Nid oes gennych unrhyw beth i'w weld a beth diriaethol, swyddogaethol chi. Yr hyn yr ydych wir eisiau i wneud cymaint ag y mae'n ymddangos fath o boen weithiau i yn gweithio ar rywbeth ac yna fath o cap i ffwrdd fel ei bod yn o leiaf yn sefydlog, yn rhedeg fersiwn hyd yn oed os nad yw'n cael yr holl nodweddion yr ydych ei eisiau. Ac efallai mae rhai nodweddion bod chi wir eisiau ychwanegu, ond 'ch jyst yn methu oherwydd eich bod am i gael y safle i bwynt swyddogaethol. Ac felly rydych am gael math o broses datblygiad cyfan yn edrych fel 'na. Byddwch am ddechrau yn rhywle swyddogaethol - neu yn ei hanfod yn dechrau gyda dim byd - ond ydych am gael rhywle sylfaenol a swyddogaethol iawn. Ac yna eto, yn gwneud rhyw fath o neidio a chael rhywle swyddogaethol eto. Byddwch yn araf yn adeiladu i fyny, ac efallai y bydd yn mynd ychydig yn arafach nag y byddai fel arall, ond yn y tymor hir os ydych yn sownd yn gyson yn y cyfnod tir canol lle rydych Nid oes mewn gwirionedd unrhyw beth yn gweithio, gall fod yn rhwystredigaeth fawr iawn i weithio ar eich prosiect chi oherwydd eich bod mor agos at ei gael yn gweithio bob amser, ac nid yw byth yn gweithio mewn gwirionedd. Rydych chi eisiau i weithio mewn cyfnodau o newid sydyn swyddogaethol hyn, ac rydych hefyd yn awyddus i wneud rhywfaint o fyfyrio ar ôl pob un. Mewn geiriau eraill, unwaith y byddwch chi ar bwynt lle mae'r safle yn awr yn gweithio - nid oes ganddo bopeth yr ydych yn ei hoffi, ond mae'n gwneud rhai pethau - ydych chi eisiau i feddwl, iawn, yn y wefan hon accomplishing y nod fy mod wedi bwriadu ei wneud? Mewn geiriau eraill, os bydd y safle yn mynd i wneud X, yr hyn yr wyf wedi bod yn gweithio yn y cyfeiriad o X? A yw pob un o'r functionalities fy mod eisiau yno? Ac ar ben hynny, a yw'n gwasanaethu'r diben cyffredinol yr wyf am? Os ydych yn dod o hyd bod eich safle yn dechrau gwyro i gyfeiriad gwahanol neu efallai bethau unig fath o yn nad ydynt yn gweithio allan, gall fod yn amser i symud gerau ychydig. Mewn geiriau eraill, mae'n werth ystyried - mae'n werth taflu syniadau os oes angen ac ystyried wyf Fi 'n sylweddol yn gweithio tuag at yr hyn yr wyf eisiau bod. Yr wyf yn credu bod fy mhwynt nesaf. Peidiwch â bod ofn i roi'r gorau syniadau. Dim ond oherwydd eich bod yn treulio llawer o oriau gwaith ar nodwedd ac yn olaf got a yw'n gweithio ond ddim wir yn mynd mor dda - fel nad yw mor ddefnyddiol neu ddefnyddwyr yn cael trafferth ei ddefnyddio - y math yna o beth - peidiwch â bod ofn i daflu i ffwrdd. Mae'n sucks eich bod wedi treulio llawer o amser yn gweithio arno, ond yn y pen draw nad ydych am safle sydd wedi fath o rhoi at ei gilydd gan y darnau hyn sy'n Nid yw math o waith ond yn cael eu gwasanaethu'n hynny'n dda. Hefyd, peidiwch â bod ofn i groesawu syniadau newydd. Os bydd rhywun yn dod ar hyd ac yn dweud, hey, y safle hwnnw yn edrych yn cŵl, ond ni fyddai hyd yn oed fod yn wych os yw'n hefyd yn gwneud hyn? Dim ond oherwydd dyna rhywbeth nad oeddech yn bwriadu ac yn rhywbeth nad yw yn eich specs, rhywbeth nad ydych wedi mynd ati i wneud, peidiwch â bod ofn i fynd ymlaen ac yna gweithio gydag ef. Oherwydd yn aml syniadau eich bod yn rhedeg gyda drwy gydol y cwrs y datblygiad pen draw yn cael y nodweddion 'n sylweddol oera ar y wefan. Rwyf wedi dweud hyn o'r blaen. 'N annhymerus' yn dweud ei fod eto. Brofwyr yn super, super defnyddiol. Ceisiwch gael pobl nad ydynt erioed wedi gweld y safle cyn i fewngofnodi a gweld beth sy'n mynd ymlaen oherwydd y gallant nid yn unig yn profi defnyddioldeb y safle a'r profiad y defnyddiwr, ond gallant hefyd brofi ymarferoldeb mewn ffyrdd nad ydych yn gallu. Os ydych yn gwneud rhywfaint o nodwedd sy'n gwneud beth benodol a ydych yn gwybod ei fod yn mynd i wneud hynny un peth yn gywir bob tro, mae hynny'n wych. Ond gall fod yn aml yn anodd i gyfrif am achosion cornel lle mae gallai defnyddiwr deipio rhywbeth nad oeddech yn ei ddisgwyl - yn union oherwydd eich diffiniedig nodweddion eich hun. Felly, i gael rhywun yn dod ar sydd heb unrhyw syniad sut i ddefnyddio'r safle ac i ddim ond dorri ym mha bynnag ffyrdd y gallant ei wneud yn wirioneddol ddefnyddiol oherwydd eich gael syniad o safbwynt hollol wahanol o beth ar eich safle yn gweithio a beth sydd angen atgyweirio. Diwethaf, yr wyf i'n mynd i siarad am rai arferion da cyffredinol, a ydych wedi gweld llawer o hyn yn CS50, ond maent hefyd yn iawn, iawn yn gymwys mewn lleoliad prosiect. Mae un yn sylwadau. Sylwadau eich cod bob amser yn enwedig os ydych yn gweithio ar dîm mawr. Gall fod mor blino i ychydig gael bloc mawr o god bod rhywun wedi'i ysgrifennu ac efallai ei fod yn gweithio, efallai nad yw'n gwneud hynny, ond nid oes gennych syniad beth mae'n ei wneud, felly nid oes gennych syniad p'un a yw'n ddefnyddiol ai peidio neu a ddylai fod yno neu beidio, ac os ydych yn gweithio ar rywbeth arall mae hyd yn oed yn bosibl eich bod yn gweithio ar yr un peth, felly dim ond yn iawn, yn ofalus iawn i fod yn ystyriol o'ch cyfoedion a chod ysgrifennu sydd wedi'i dogfennu'n dda. Nid oes rhaid i chi fynd cyn belled ag i wneud yr holl beth pan yn hoffi os ydych yn cynyddiad cownter gennych sylw sy'n dweud, rwy'n ychwanegu 1 i wrth hwn. Nid oes rhaid i bethau fod yn fanwl, ond ar gyfer unrhyw swyddogaeth yr ydych yn ysgrifennu erioed dylech gael peth dogfennaeth o'r hyn y swyddogaeth honno yn union yn ei wneud, beth yw ei fewnbynnau, a beth y dylid ei ddychwelyd. Fel hyn y gallwch chi ddefnyddio cydrannau pobl eraill y safle a gallwch weithio tuag at adeiladu rhywbeth mawr. Peth pwysig arall yw ydych am ei wneud glanhau rheolaidd. Cod yn cael anniben. Peidiwch â theimlo'n ddrwg os yw'ch cod yn unig hollol annarllenadwy a llanast mawr. Mae hynny'n digwydd yn datblygu gwefan bob tro. Rydych yn ychwanegu nodweddion newydd, gan gael gwared hen rai. Stuff yn mynd i fod yno na ddylai fod. Mae hynny'n iawn, ond ydych am wneud yn siwr i ddelio â hynny yn rheolaidd. Nid ydych am i adael iddo adeiladu hyd at y pwynt lle nad ydych yn gallu dod o hyd i unrhyw beth yn unig yn eich cod, ac nad oes gennych syniad beth unrhyw beth yn ei wneud. Yw hynny'n wir gyda HTML. Weithiau, byddwch yn darfod i fyny gyda gwrthrychau nad ydynt yn cynnwys unrhyw beth, a youll 'angen at cael gwared o hynny. Yn CSS, gallwch fod yn cyfeirio at elfennau nad ydynt yno anymore, felly rydych am i gael gwared ar y cod. Yn JavaScript, efallai y byddwch wedi dileu rhywbeth o'r HTML. Felly, yr ydych am wneud yn siŵr eich bod yn bob amser yn glanhau i fyny, gwneud pethau 'n bert gymaint ag y gallwch yn rheolaidd. Beth arall yn ddefnyddiol iawn nad wyf yn credu ei amlinellu yn fawr iawn yn CS50 ond mae'n werth mynd i mewn yn rheoli fersiynau. Mae'r syniad o reoli fersiynau yw pan fyddwch yn y bôn yn cadw golwg ar yr holl gynnydd ydych wedi gwneud tuag at eich safle, ac os ar unrhyw adeg rydych yn sylweddoli, oh, mae hyn yn gweithio amser yn ôl, ond nid yw'n gweithio mwyach, gallwch fynd yn ôl i fersiynau blaenorol a gweld beth sydd wedi newid ers hynny a bod y math yna o beth. Y ffordd sylfaenol o wneud hynny yw gyda Git, ac Git mae hyn yn fath gyfan o system sy'n Yr wyf yn credu Rhoddodd Tommy MacWilliam seminar am y llynedd. Os byddwch yn mynd i mewn i'r seminarau CS50 ar gyfer 2011, gallwch weld ei seminar ar hynny. Mae'r syniad o Git yn y bôn fod yn rheolaidd rydych yn gwneud ymrwymiadau hyn sydd yn ffyrdd o ddweud y safle sydd mewn fersiwn eithaf sefydlog ar hyn o bryd, felly Rydw i'n pacio i fyny ac yn ei anfon i ffwrdd i weinydd, ac yna gallwch fynd i'r gweinydd ac edrych ar yr holl fersiynau blaenorol eich cod a gweld sut y mae'n cael ei symud ymlaen a phob math yna o bethau da. Felly, dyna yn y bôn ei. Cyn belled ag y datblygu gwefan, rydym yn hapus i ffon o gwmpas ac ateb unrhyw cwestiynau o ran ein cyflwyniad. Dyna ni. Diolch. >> [Ben] Diolch. [Cymeradwyaeth] [Billy] Staff, oes unrhyw un gennych unrhyw gwestiynau am y pethau yr ydym wedi eu trafod neu bethau nad ydym wedi eu trafod eu bod yn gobeithio y byddem yn ei gwmpasu? Byddem yn hapus i ateb hynny. Dylai unrhyw un? [Aelod o'r gynulleidfa] Beth yw manteision ac anfanteision defnyddio Ruby neu ddefnyddio Python? [Ben] Y cwestiwn oedd, beth yw manteision ac anfanteision defnyddio Ruby neu Python yn hytrach na fel PHP. Y manteision yw bod Ruby a Python yn llawer gwell o ieithoedd na PHP. Mae o leiaf yn fy marn i, ac yr wyf yn meddwl mewn llawer o safbwyntiau pobl eraill yn ogystal. Cawsant eu cynllunio yn fwy am wneud pethau cymhleth, a llai ar gyfer bwrw'r ynghyd tudalennau gwe yn gyflym iawn gyda ychydig o gynnwys deinamig. Mae'r anfanteision yw bod yna ychydig o - mae mwy o gromlin ddysgu i gael eu sefydlu. Hynny yw, fel yn PHP, gallwch gael ffeil HTML ac i chi ysgrifennu llai-na, marc cwestiwn, ac yna byddwch yn ysgrifennu, mae rhai cod ac yna byddwch yn ysgrifennu cwestiwn marc, mwy-na, ac yna rydych yn ei wneud. Mewn ieithoedd eraill fel Ruby neu Python, rhaid i chi fynd drwy ychydig mwy o waith i gael rhedeg y safle cychwynnol. Mae hefyd - o leiaf mae'n defnyddio i fod yn wir - fod yna mwy o ddogfennaeth ar gael ar gyfer PHP yn unig oherwydd bod mwy o bobl yn ei ddefnyddio. Rwy'n credu nad yw hynny'n gymaint o fater anymore. Mae yn sicr dogfennaeth da iawn ar gyfer pethau fel Ruby acha Chledrau neu Django ar gyfer Python yn cyfateb. PHP yw'r un y mae pawb wedi bod yn ei ddefnyddio ers blynyddoedd, a ydych yn gwybod sut mae'n gweithio. Rhuddem a Python yn ychydig yn llai aeddfed. [Aelod o'r gynulleidfa] Os ydych yn dewis rhwng un ohonynt i ddysgu neu godi, a fyddai'n well gennych? Onest, credaf fod yn dibynnu ar y person. Mae'n ddrwg gen i. Y cwestiwn oedd pa un fyddech chi'n ddewis i rywun ddysgu? Yr wyf yn dod o hyd i Python y garedicaf yn bersonol. Mae llawer o bobl sydd - wnes fy mhrosiect dev gwe cyntaf yn Python a Django. Mae yna lawer o bobl sy'n hoffi Ruby acha Chledrau hefyd. Yn ôl pob tebyg mwy o bobl sy'n gwybod Ruby acha Chledrau. Onest, byddwn yn jyst yn mynd gyda beth bynnag y bobl o'ch cwmpas yn gwybod fel eich bod yn rhaid i bobl ofyn cwestiynau. Y cwestiwn oedd - ar weinyddion a rennir a yw'n fath o anodd i weithio ar Python? Mae hynny'n dibynnu ar eich cynnal. Mae nifer y lluoedd we a fydd yn ôl pethau Python. WebFaction yn gwneud hynny, dde? WebFaction yn un sy'n Billy ac rwyf wedi defnyddio ar gyfer rhai prosiectau. Maen nhw'n wirioneddol wych. Maent yn cefnogi rhan fwyaf o ieithoedd. Ond mae'n wir bod PHP yn llawer mwy cefnogaeth eang. Felly, os ydych yn sownd ar lu ar y we mai dim ond yn gwneud PHP, mae hynny'n rheswm da i ddefnyddio PHP. [Aelod o'r gynulleidfa] Fi jyst got i ddysgu sut i holi rhai cronfeydd data, ac yr wyf yn gwybod fy SQL i gyd dros y lle, ond yr wyf yn ddiweddar got agored i - ac rydych yn cyfeirio at hyn. Byddwch yn gweld JSON a chronfeydd data expandable. Fy SQL yn dal i gyd dros y lle. Sut yr ydych yn gweld hynny'n digwydd? A oes yn mynd i fod tuedd cynyddol am fwy expandable (anhyglyw)? Y cwestiwn oedd - ydw i'n credu bod yn mynd i fod tuedd tuag at gronfeydd data nad ydynt yn SQL. Er enghraifft, fel MongoDB. Credaf fod yn bendant yn wir. Fy nghyngor yn bennaf MySQL-gysylltiedig yma dim ond am fod mySQL yn safon y diwydiant. Yn bersonol, mae'n well cronfeydd data nad oes ganddynt schemos fel MongoDB wyf yn llawer lle nad oes gennych y mater, oh, mae angen imi ychwanegu colofn arall. Gwae fi, fel beth bynnag ydw i'n ei wneud? Mae'n anodd iawn i wneud hynny ar MySQL, ond pan fydd gennych rhywbeth fel Mongo mae'n llawer brafiach. Y peth arall braf am Mongo yw bod eich cofnodion mewn gwirionedd gwrthrychau JavaScript. Does dim fath o gam trosi lle mae angen i chi gymryd rhesi gronfa ddata yma ac yn troi i mewn i wrthrych JavaScript ac yna yn eu hanfon dros y wifren. Yr wyf yn meddwl pethau fel 'na yn mynd i fod yn iawn, yn ddefnyddiol iawn ar gyfer datblygiad ar y we cyflym yn y dyfodol. [Billy] Rhywbeth byddwn yn ei ychwanegu sydd ychydig pwynt cyffredinol yw bod nid ydynt yn teimlo fel dylech fod wedi'i ddysgu pob un o'r ieithoedd yr ydym wedi trafod gan ein seminar. Yn amlwg y pwynt yw rhoi syniad i chi o beth sydd ar gael i chi, ac os ydych yn chwilfrydig gan unrhyw un o'r pethau yr ydym wedi crybwyll gallwch eu Google a darllen i fyny arnynt. Ac fel y soniais, mae yna ychydig o seminarau sy'n delio â union y pethau hyn. Mae hyd yn oed mwy o seminarau nad wyf wedi sôn am hynny yn ôl pob tebyg yn mynd i mewn pethau hwn yn ogystal. Y syniad yw os ydych chi am weithio ar rywbeth, dyma offer ar gael i chi. Peidiwch â theimlo llethu os nad ydych yn wir yn siŵr beth yr offer yma yn gwneud yn union, ond yn gwybod eu bod ar gael ac y gallwch wneud defnydd eang ohonynt gan Google. [Aelod o'r gynulleidfa] Pa fath o bethau y mae angen i chi ei wneud i sicrhau bod eich gwefan yn edrych yn dda ar ddyfeisiau symudol? [Billy] dyfeisiau symudol yn ychydig yn anodd. Mae 2 ffordd y gallwch fynd o'i chwmpas hi. Y ffordd gyntaf yw eich bod mewn gwirionedd yn cael gwefan symudol. Mewn geiriau eraill, yr ydych yn perfformio rhyw fath o ganfod ar ddechrau pan fydd y porwr yn gwneud cais i eich gwefan sydd naill ai'n dweud dychwelyd y farn hon - a fydd yn olygfa i ben-desg neu liniadur porwyr - ac mae hyn yn farn arall ar gyfer dyfeisiau symudol. Dyna le lle mae barn yn wirioneddol neis yn y gallwch 'n bert lawer cyfnewid y dau allan a chael rhyngwyneb sy'n gweithio mewn gwirionedd 'n glws ar ddyfeisiau symudol ac mae ganddynt un hollol wahanol sy'n gweithio 'n glws ar ddyfeisiau porwr. Y broblem gyda hynny yw ei bod yn cymryd amser hir oherwydd ei fod yn golygu codio rhyngwyneb hollol wahanol. Y ffordd arall y gallwch ei wneud yw - bydd llawer o ffonau modern yn dangos gwefannau a cheisio gwneud yn fel y byddai porwr, ac maent yn gwneud eu gorau. Gallwch fath o yn ceisio aros goleuni ar y swm o jQuery JavaScript ydych yn defnyddio sy'n tueddu i fod yn lle y gall pethau fynd o chwith ychydig. Mae hyn yn fath o ffordd y dylech eu defnyddio os nad oes gennych bod llawer o amser. Os oes gennych yr amser i weithio ar ryngwyneb symudol, mae hynny'n amlwg yn eich dewis gorau. Yr wyf yn meddwl yn gyffredinol ar gyfer prosiectau CS50, rydych yn mynd i eisiau i ddewis un neu'r llall. Mewn geiriau eraill, yr ydych am wneud app symudol neu os ydych am wneud gwefan bwrdd gwaith. A'r math yna o penderfynu ble rydych yn mynd â hynny. Ond os ydych am ei ehangu yn ddiweddarach, yn ôl pob tebyg eich bet gorau yw i wneud rhyngwyneb arall ar gyfer y llall. Mae gen i ychydig o brofiad mewn datblygu safleoedd yn seiliedig ar WordPress. Yr wyf yn cynnal gwefan bersonol ar WordPress am dro. Gall y mathau hynny o fframweithiau fod yn bethau yr un mor sylfaenol iawn 'n glws. Oftentimes byddwch jyst hidla i mewn i lawer o faterion customizability er. Youll 'angen cael rhywbeth yn edrych mewn ffordd benodol neu fod yn ffordd benodol ac rydych nid yn unig yn gallu oherwydd ei fod yn anodd eu cyplysu â'r system sy'n dyma sut y mae'n rhaid i chi wneud pethau sy'n gallu bod yn dipyn o broblem. Ers hynny, rwyf wedi fath o bod yn fwy tueddol i weithio gyda safleoedd o'r gwaelod i fyny. Am bethau fel cronfeydd data blog a'r math yna o beth nid yw'n iawn bod galed i adeiladu fframwaith. Os ydych yn wir yn ymestyn am amser, gallwch, wrth gwrs, yn defnyddio rhywbeth fel WordPress neu y math yna o beth ar gyfer blog. Y mathau o bethau y blogiau storio ac nid ydynt yn ddigon anodd mewn gwirionedd yw bod os ydych yn rhedeg i mewn i unrhyw un o'r mathau hynny o bethau, mae'n debyg eich bod gorau yn unig i gwneud fersiwn yn fewnol. Rwy'n credu bod am y peth, felly diolch unwaith eto am ddod. Rydym yn mwynhau siarad â chi guys ac yn gobeithio eich bod yn dysgu rhai pethau. [Ben] Rydym yn hapus i siarad - mae'n rhaid i ni fynd, ond rydym yn hapus i siarad yn fwy y tu allan i os oes gennych gwestiwn arall. Diolch unwaith eto. [Cymeradwyaeth] [CS50.TV]