[Powered by Google Translate] [Mintegia] [Web garapena: Idea aurrera baliatzeko] [Ben Kuhn] [Billy Janitsch] [Harvardeko Unibertsitateko] [Hau CS50] [CS50.TV] [Billy] Hi, Billy naiz eta hau da, Ben. >> [Ben] Hi. Beharreko gaur web garapenerako buruz hitz egiten dugu. [Webdev] [Billy Janitsch eta Ben Kuhn] Guri buruz pixka bat lehen. Ben back-end zentzuduna moduko da. Gauzak lan egiten zuen. Eta gero joan nintzen eta horiek politak egiteko. Neurri handi batean, gehiago aurrean-end maketaren diseinua stuff mota dut parte hartzen duten, eta Ben, beste alde batetik, badaki zer ari den, beraz, egiten du lan back-end stuff on zuen. Gauza batzuk elkarrekin egin dugu. Esate baterako, iaz Gimblium horrek online jokoa garapen estudioan da lan egin dugu. Hori izan zen gure klaseko azken proiektua, eta orduz geroztik egin dugu Harvard Class horrek nabigazio eta merkataritza ikastaroak Harvard konektatuta esparru bat da. Ideia hau gure web batekin hasiko dugu. Facebooken egin behar izan dugu, baina katuak. Aurretik benetan egin duzun web hau, ez egin web hau ez da ona delako; baina erabili dugu esparru gisa eta ideia hori nola hartuko dugu prozesuan zehar joan eta piztu, benetako web orri bat erabili ahal izango dugu sartu. Egingo webgunean behera hautsi hasiko gara. Izan duzu CS50 egiten ditudan bezala, zer dira, web orri honetan sartu benetako osagaiak pentsatu nahi duzu. Funtsean inflexio horren moduko kontzeptu abstraktu bat besterik ez da ideia bat aurrera erreala, gauza hautemangarria hori egin ahal izango duzu sartu. Hasteko galdera batzuk eginez dugu. Zer da web hau? Zergatik egiten ari gara? Zer da erabili behar da? Gauza sort hori. Facebook Cat kasuan, funtsean, katuak sare sozial aukera ematen duten elkarren artean webgune bat nahi dugu. Ideia bata bestearen hormetan dutela argitaratu ahal izatea, iruzkinak, gauza sort hori egin ahal izango dute. Eta hor etorri da osagai funtzionalak sartuko gara. Orain dugu marko moduko hau - erabiltzaile profilak dugu, iruzkinak ditugu, eta argitaratzeko aukera izango dugu. Agian egunen batean gustatu eta gauza sort, eragingarria dugu. Eta nolako ezaugarri hauek joan sartu lehenetsi nahi dugu Esatea bezala nahi dugu, ados, benetan garrantzitsua da denek profil bat du eta denek ezin dela bata bestearen hormetan bidaltzeko. Duten bigarren mailako, iruzkinak polita izango litzateke. Agian geroago gustatu zaie influent dugu. Beraz, zer da zure proiektuaren oinarrizko ideia bat izan nahi duzu eta zer ezaugarri orokorrago bat beranduago aplika litezke moduko. Kontuan zerrenda jakin bati sort izan nahi baduzu, baina proiektua hasten zara hori ez da proiektua amaitu duten izango. Bestela esanda, gauza Gunean garatzen ari zaren bitartean aldatu egingo dira, eta gela utzi duten nahi duzu. Piztu dut gainetik Ben nor egitura zertxobait azaldu da joan behar. [Ben] noa web garapenaren alde gehiago teknikoei buruz hitz egiten. Dezagun oinarriak errepasatuko besterik lehen. Web aplikazio bat egiten ari zarenean, maila nagusira izan dute zarela da gauza batzuk gertatzen bezero-aldean dute joan zaren - hau da, kodearen Oraindik nabigatzailean duten gunetik hartzen eta JavaScript, HTML, CSS stuff. Hori da dena bezeroaren aldean. Duten zerbitzari aldean exekutatzen beste kode dute joan zaren eta horrek pertsona Bidali in duzu datu guztien jarraipena egiten du, nork zer, horrelako gauzak emateko erabakiko du. Hau besterik ez da terminologia batzuk da, beraz, mutilak dira guztiak zeri buruz hitz egiten ari gara ezagutzen. Zatiketa hori baino haratago, ona da zure web app uste terminoetan osagai desberdin pare bat. Noiz web garapenerako egiten ari zaren duten dira beti egiten saiatzen behar duzun gauza bat da konplexutasuna murrizteko. Zure kodea konplexuagoa aukera gehiago dago bugs aldaketez; gogorragoa izan ondoren aldatzen da. Beraz, zuk apurtu ahal bada zure aplikazioa zenbait arlo funtzional desberdin sartu izango - eta gurutze-area komunikazio zenbatekoa moduko murriztu dezakezu - duzula bugs murriztuz dagokionez, epe luzera asko lagunduko du. Hormigoia izan, normalean jendea zatitzen sortu web aplikazio bat sartu - horiek buzz hitz-mota daude gaur egun, baina oraindik erabilgarria ari dira. Entzun dezakezu jendea ereduak, aldiz, eta kontrolagailu buruz hitz egiteko. Ereduek duten zure aplikazioa da landu joan benetako datuak dira. Esate baterako, zure Cat Facebook, your maketak izango litzateke - bezalako mezu eredu bat, eta erabiltzaile profilak, horrelako gauzak eredu izan nahi duzuna. Datu horiek nola aurkeztuko zure erabiltzaile Hona zure iritziak daude. Baliteke 1 post bakar batean bila ikuspegi eta iruzkinak guztia duzu eta zure horma beste ikuspegi bat duen mezu guztien zerrenda bat du zuk zuzendu, eta zure berri elikatzeko beste ikuspegi bat - horrelako gauzak. Azkenik, kontrolagailu funtsean duzu jendeak bidaltzen dituzun mezu eta zure back-end sistema eguneratzeak egin duzu, counters mordo bat Kontatzailea duzu, eta edozein dela ere. Horiek zure kontrolagailu daude. Noa gehienbat hitz egiten modeloak buruz. Ikusia teknikoki ez dira zailak eta gaia haiek diseinatzen dituzten gehiago da Kontrolagailu dira edozein dela ere diseinatzen ari zaren zehatz izango. Baina badira zenbait teknika nahiko orokor erabili dezakezu your maketak ikusgarriago eta errazagoa dela uste dut oso lagungarria batera lan egiteko. Hau da, batez ere hemen nola zure web apps datuak aurre egiteko modu polit bat inguru izango da. Ereduen gai nagusietako dira bezeroak eta zerbitzariak bizi dutela eta irudikatu nahi izan duzu a) nola horiek lortzeko - garrantzitsuak direnak guztiak - bezeroari zerbitzariak, eta b) nola gorde sinkronizatuta. Zure erabiltzaile diren eguneratze batzuk egin nahi du. Mezu berririk egin nahi ari dira. Gauzak eta gauzak gustatzen gustatu duzu bada nahi ari dira. Horiek ereduen aurre erronka tekniko nagusiak. Zeure buruari galdetu nahi zarela lehenengo gauza da zer datu-mota eredu horretan doa eta zer nolako kontsulten ari gara egin nahi du - hau da, nola ari garen ereduak begiratu? Zure Cat Facebook adibidez, Zure mezua da lotutako egile bat izan du, horma post testua, eta horma post-hartzaile bat. Eta gero, agian galdetzeko modu ezberdinak sorta bat nahi duzu. Begiratu nor horrek zer idatzi nahi zenuke, jaso duten, bidaltzeko eta horrek, agian, data posted ziren arabera. Baina ari zaren egiten den dataren arabera egingo balitz, gero beste alor batera gehitzeko zure post behar duzu of benetan zen argitaratua. 2 faktore horiek - zer datu erabili nahi duzun eta nola ikusi nahi duzun - haiei buruz pentsatu behar duzu lehenengo araberakoa izango dute, bata bestearen on delako, eta nik gehiago zaila izan gehitu geroago joan. Gogoetak beste batzuk daude. Nola aurre zerbitzarian maketak, zuri buruz ari zaren pentsatzen zer begiratu nahi duzun da - funtsean zerbitzariari ahalik eta sinplea egin nahi duzun. Bezeroaren aldean stuff egiten da, oro har, askoz azkarrago duzu guztiz egin ahal izanez gero, bezeroak on Edozein sare eskaera moduko egin gabe. Ideia da, eta kontsultak egin ahal izango dituzu bezeroak on gisa asko egin. Duten arazo bakarra da duzula zure datu guztiak eskatu bada hasieran ondoren, hori denbora luzez kargatu hartzera joan. Beraz, ideia da bezeroaren datu nahikoa izatea arteko zoriontsu ertain bat greba dagoela zure lan gehienak egin dezakezu, baina ez besterik ez dena bakarrik eskuratzea aldi berean beraz, karga aldiz benetan motela lortuko duzu hasieran. Esate baterako, zure katua datuetan seguruenik azkenaldiko horman mezu mordo bat eskuratu nahi izatea. Ez luke nahi duzun denak eskuratu duen atzera urte pare bat delako joan liteke. Baina ez duzu horietako bat eskuratu aldi berean nahi duten sare gardenki asko aurkezten lukeelako. Da sarritan nahiko gogorra - behin datu-basea exekutatzen bat behar duzu - sarritan nahiko zaila da zer datu bertan duzu aldatzeko - hau da, gehitu datu-basearen zutabe edo zerbait berria - hain ona estrategia bat da, benetan, besterik gabe, zure datu asko mantentzeko testu blob batean - JSON blob bat - JSON JavaScript izatea - Arrazoia hori erabilgarria da, ondoren, propietate berriak gehitzen duzunean daitekeelako ra JSON tanta horiek guztiak zure datu-basea aldatu gabe. Duten arazotxo bakarra dela eremuak mordo bat bada geroago gehitu dituzula - atsegin JSON blob duten ezkutatuta - orduan zailagoa da datu-base barruan horiek galdetzeko. Esate baterako, zuk geroago bada - zure post eredu izan duzu lehenago eztabaidatu dugu besterik egileak, hartzaileak eta testuarekin - izan ere JSON blob bat behar duzu, eta gero nahi duzun data eremu bat gehitzeko bada ez zenituzke zure datu-basea aldatzeko. Izan duzun datak gehitu testu eremu guztiei. Eta, ondoren, bezeroaren alde on horiek begiratu ahal izango litzateke, baina ez duzu horiek galdetzeko zerbitzari aldean gai nik testu barruan ezkutatuta delako. Pentsatu nahi dituzun beste jaulkipen da, nola zure bezero eta zure zerbitzari dira komunikatu egingo. Hau ahalik eta simple mantendu nahi izan ohi duzu. Get-me-honen datuak eskaera bat bezala besterik ez duzu izan daiteke, bat sor-a-new-objektu gauza, eta egunera-an-zahar-object-eskaera bat. Eta horiek guztiak izango litzateke URL desberdinetan zerbitzari batean duzula - nabigatzailea litzateke - AJAX eskaerak erabili ahal izango dituzu horien guztien eta bai jaso edo mezu datuak. Berriz ere, gure Cat Facebook adibidez, URL izan ditzakezun banakako post bat lortzeko, eta URL bat behar duzuna wall post berri bat sortzeko eta, agian, horrelako profileko argazkia, gauzak kargatzeko URL bat. Baina, berriro ere, hori da aurrez eskuratu zure datu gehienak ez duzu beraz, ez dute mantentzeko sare eskaerak egiteko. Hori dela eta, baliteke get banakako eskaera post bakar bat izatea, eta horren ordez, besterik gabe nahi nuke 1 get eskaera horma osorako. Eta ondoren, oreka bilatu delako saiatzen ari zaren bada - hau ere da zure aplikazioa araberakoak joan. Duzulako zain ari bada, jendeak 20 edo 10 horma mezu bakarra izan duten ondo egongo da. Baina zuk milaka izango dute zain ari izanez gero eskaera hori luzeegia hartuko luke, eta, beraz, agian lor-all-mezu-geroztik parametro bat gehitu nahi al duzu. Horiek guztiak, seguruenik ari zaren zure datuak sinkronizatu JSON in nahi du - Object Notation Javascript. Nahiko askoz hizkuntza guztietan JSON jorratzen oso ondo. JQuery duten lan gogorra guztia egin ahal izango duzu hau polita getJSON funtzioa dauka. Eta PHP on oso polita JSON komunikazio funtzioak ez da, gainera. Beraz, hori da ziurrenik zure ereduak atzera eta aurrera bidaltzeko formatua onenak. Zer hitz egin dugu orain arte, adibide gisa, hemen adibide zure Cat Facebook aplikatzeko fluxua bat da. Off hasten da zure nabigatzailean base web URL eskatzen du. Zerbitzariari ziurrenik baino gehiago bidaliko litzateke HTML estatiko eta JavaScript batzuk eta CSS. Onena izan ohi da ez zerbitzarian errendatzeko edozein egiteko. Ziurrenik ez duzu nahi - zer zerbitzaria ez dago han egiten ari da behera horman mezu zerrendan joan eta bakoitzak HTML batzuk sortuz eta hori baino gehiago bidaltzea. Onena izan ohi da horretarako bezeroaren aldean bestela delako zerbait berriro marraztu nahi duzun bakoitzean, zerbitzari eskaera bat egin behar duzu. Eta hori gardenki asko oso azkar ematen dizu. Onena izan ohi da bakarrik itsasontzi bidaltzen behera HTML estatiko eta, ondoren, Javascript eta CSS ematea egingo bezeroaren aldean. Stuff datorren bezain laster, orduan izan dezakezu - JavaScript - eskaerak egin dezakezu horma datuak eta horrelako gauzak, eta horren ondoren zerbitzariari da funtsean, datu-basean kontsultak egiten eta baimenak egiaztatzen. Garrantzitsuena bakarra dela ezin da beste zenbait erabiltzaile horman mezu baino gehiago bidali Oraindik ez duzula onartzen ikusteko. Daiteke, funtsean sarbide zure basera geruza oso fin bat izango da, eta, ondoren, guztia datu erakutsiz - ikusia eta stuff guztiak - horiek zure nabigatzailean dezake gertatuko, eta, ondoren, post bat edo zerbait egin nahi duzun bidali berri duzun eskaera beste. Badira ere zenbait gauza sofistikatuak honen gainean egin ahal izango duzu. Informazio tekniko zehatzagoa dagokionez, JavaScript arruntean garatzen pixka bat mingarria izan daiteke, beraz, ez dago liburutegi eta tresna batzuk asko lagundu du horretan daude. Uste dut duzun guztia seguruenik jQuery buruz entzun eta horrek HTML errendatzea egiten ordezkari eta manipulatzeko errazagoa - funtzio asko eta lausotzen da, eta zippy animazioak egiten. Ere liburutegi hau Underscore.js deritzo. Erabilgarritasun baliagarria funtzio asko, gauza zela espero JavaScript behar du benetan doesn't da - array bat nahasteko gauzak bezala, zerrenda batetik bikoiztuak kentzean, edo zerrenden zerrenda bat berdintzea. Hau besterik Kode adibide txiki bat da. Azpimarrak denbora guztian izango litzateke duzu nahi duzun funtzio polit hauek tona bat dauka. Eta orduan, 1 liburutegia gehiago duten denbora pixka bat pasatzeko on nuke Backbone.js izeneko Backbone benetan laguntzen aurre bezeroaren aldean modeloak batera duzulako eta nahasmena sor daiteke asko. Bizkarrezurra ereduak eta bildumen kontzeptu hori ematen dizu JavaScript funtsean zehazki JavaScript objektuak bezalako JavaScript array baina beren propietate aldatzen duzunean ekitaldi izan dira. Just JavaScript bezala, gertaera bat izan dezakezu, botoia batean klik egindakoan lortzen edo zerbait Backbone ereduak eta Backbone bilduma horiek bezalako gauzak emititzen aldatu dute. Horrek esan nahi du, besterik gabe, ezin duzu idatzi kode hau bezalako zerbait hemen - hau dio, betiere, ezer gehitzen duzunean mezu array horma osoa marraztu duzu. Eta hau esango lukeen direnean post baten gustatu kopurua aldatzen da, erabiltzaileari norbait euren post gustuko duela jakinaraziko dizu. Edo ahal den edozein post baten jabetza aldatzen kargua marraztu duzu. Horrelako gauzak konplexutasun tona gorde egingo bestela delako ez baduzu hau bezalako esparru batzuk izan ondoren, zure kodea aldi bakoitzean aldatu duzula post bati buruz ezer, zeuk gogoratu errendatzeko funtzio guztiak deitu nahi duzuna eta horrelako gauzak, eta hori gertatu zen zerbait berria gehitu nahi baduzu Sarrera bat aldatutako duzun bakoitzean zure leku guztietan bidez joan behar duzuna duen post bat aldatutako duzu eta gauza berriak gehitzeko kodea. Hau bezalako esparru batek komunikazio geruza artean-horretan asko kendu egingo que hace zure kodea konplexu eta gogor eusteko. Han ikusia ere pixka bat. Hau gehiena utzi Billy noa teknikoki oso zaila ari dira ez delako. Erabili jQuery zure iritziak. Da ia puntu honetan behar bat bezala. Besterik Egiten dena beraz, askoz errazagoa. Badira liburutegiak asko daude. Duzun erabiltzaile-interfazearen elementu konplikatu badituzu, auto-osoa gauza bat nahi izanez gero edo gustuko dutenek fancy anitzeko selectors bat - horrelako ezer nahi izanez gero, ziurrenik besterik bilatu behar duzu inguruan eta liburutegi on bat, nahi duzuna egingo aurkitu dezakezu. Billy gehiago azalduko du, benetan zaila ikusia zatiak buruz. Halaber, albo-ohar bat bezala, Backbone ikusia komunikatzeko egiteko funtzionalitate batzuk ditu modeloak batera nicely - liburutegiak horien guztien dokumentazioa begiratu, benetan. Just docs begiratu. Oso ondo idatzia eta erraz jarraitu ari dira. Oro har, nahiko askoz besterik Google ahal duzun arazorik izanez gero. Han jende asko horiek erabiltzen dira. Nik uste dut hau azken ohar gisa. Badira ere egin dezakezu gauza gehiago aurreratu batzuk duzu zure web app estra awesome egiteko bila bazabiltza. Egin dezakezu - HTML5 zehaztapen berria fancy gauza egin dezakezu asko ditu. Tokiko biltegiratze - hau da, datuak gorde ahal izango duzu nabigatzailean - baizik eta atzera joan eta peruse guztia zerbitzari izatea baino, batzuk mantentzen zara bezeroa da eta, nahiz eta aukera ematen dizu jende - kasu batzuetan, nahiz eta web orrialdea offline erabiltzen utziko dizu daiteke. Ez dago websockets izeneko gauza hau desberdina sareko komunikazio mota bat dira non besterik eskaera bat egiten duzun ordez, erantzunik lortuko duzu eta Bukatutakoan, zerbitzariak konexio bat ireki mantentzeko eta, beraz, horrelako gauzak egin dezakezu denbora errealean eguneratzeak. Beraz, chat app bat egiteko saiatzen ari bazara, websockets erabili ahal izango duzu atzera eta aurrera komunikatzeko zenuke, beraz, ez dute eskatzen mantentzeko, "Oh, zerbitzari, inor bidali niri txat bat?" 10 segundotan behin edo zerbait. Ere bat HTML5 Ezaugarri interesgarri non itxura egin dezakezu orriaren URL benetan kargatzea eragingo du inoiz izan gabe aldatzen ari da. Atzera erabili dezakezu eta aurrera botoiak sare eskaerak mordo bat egin gabe. Horrelako gauzak benetan azkarra egiten aldetik baliagarria da baina baita ere web app egin beharko lukete bat bezala funtzionatzen. Ere CoffeeScript izeneko gauza hau. CoffeeScript beste hizkuntza bat da, egia esan, hori biltzen behera JavaScript izateko. Zure kodea idazten duzun guztiak litzateke CoffeeScript, eta gero konpiladore hau exekutatzen duzun, eta spits Javascript-fitxategi hori zure web-orrian sar ditzakezun. Arrazoia CoffeeScript da polita da lortzen asko deusezten delako Kasu bitxi duten JavaScript dauka non berdin berdin, eta berdin berdin egin gauza desberdinak, edo gustatuko - matrizeak eta funtzioak aurre sintaxia ikusgarriago ditu. Hau CoffeeScript snippet apur bat duten plazak guztien zerrenda bat sortzen da 10 ^ 2 ^ 1, 2 eta alderantzizko ordenan from. Ikusten duzun bezala, CoffeeScript askotan ematen dizu 1 line egiteko zuk 5 Javascript-ildo zer hartuko luke. Gauza asko errazago egin ahal izango da. Sintaxia berria pixka bat da lehenengo ikasi, baina, zalantzarik gabe, epe luzera gehiago produktiboa egingo. Halaber PHP baino zerbitzarian beste hizkuntzetan erabili ahal izango duzu - Ruby, Python, bezalako hizkuntzak edo ez da, nahiz eta Node.js izeneko proiektu bat duten JavaScript erabiltzen duzun zerbitzarian utziko. Pertsonalki, benetan, benetan gorroto dut PHP. Ez dut ez gozatzeko aukera izango da lanean. Duzu, ere, uste bada hizkuntza baten cluge awful bat dela, ondoren, horietako bat erabili dezakezu horren ordez. Oro har, zerbait egin nahi izanez gero, eta ez dakigu benetan nola egin nahi duzun, besterik Interneten bilatu. Badira tona eta batez ere baliabide tona - StackOverflow handi bat da. Webgune honetan bertan programatzaileak eskatu beste galdera bakoitzeko da. Sartu duzu agian bada arazoak CS50 arazo multzo on you ziren izatea exekutatu dute. Eta badira liburutegiak tona pretty much ezer nahi zenuke egiteko. Zerbait egin nahi baduzu eta ez badakizu nola egin, ez du bere gain hartzen, ezinezkoa dela. Ingurura begiratu eta agian baliabide on batzuk aurkituko dituzu. Orokor gisa biltzeko, takeaways nagusiak dira gauza simple mantentzeko. Konplexuagoa Zure kodea hasieran da eta zenbat eta gehiago saiatu, eta zuk egin gauza sofistikatuak, zerbait benetan funtzionalak lortzeko denbora gehiago izango da eta gogorragoa geroago aldatu ahal izango da. Beraz, gauza da, era erraz muda lehen. Batera joan horrekin, ez izan kode zaharra bota edo asko garbitzen sortu beldur. Oro har, behin benetan behar duzun zerbait lan, da noiz hasten etapatan Oraindik baino askoz errazagoa da pentsatu Zelan egin hau jarri guztiak elkarrekin. Hobe da lan egiten duten Dumbest posible diseinua egiteko eta gero hobetu da dena eskubidea lehenengo aldiz lortu nahian baino iteratively. Bezero-zerbitzari zatiketa dagokionez, saiatu eta zure zerbitzari oso erraza mantentzeko - besterik gabe datu-base bat eta autentifikazio batzuk, eta ez dute inolako lan gogorra egin han. Egin zure gauzak konplikatuak guztia nabigatzailean bezero aldean JavaScript gisa askoz dezakezu gisa. Look inguruan zure bizitza hobea egiten duten liburutegiak. Beti hobea kodea erabiltzeko beste norbaitek idatzi duzu bada - eta ez da idatzi zeuk. Ez dago gauza asko da Interneten. Google zure lagunik onena da. Google programatzailea lagunik onena da. Bai, zalantzarik ez izan beldurrik ingurura begiratu gaietarako erabili. Ondo da. Eta Billy baino gehiago. [Billy] Egia esan, hasi nintzen diseinu stuff batzuk lehenago, du inor Ben zalantzarik izanez ezer hitz egin zuen inguru izan? Ongi, ona da. Berriro, iezaguzu ezer ez da argia bada edo nahi izanez gero gurekin zerbait pixka bat gehiago baino gehiago joan. Atzera urratsa pixka bat eta diseinuaren gehiago funtsezko piezak buruz hitz egin dut. Barkatu, eredu controller ikuspegi sistema - Ben izeneko eredua aipatu horrek alderdi teknikoak sort da, beraz, aldiz begiratu zehazki noa, eta nik nahi duten itxura polita ikuspegi bat nola diseinatu litzaidake zurekin hasteko noa. Hona hemen gure Cat Facebooken benetan oinarrizko txantiloi bat mota. Uste dut UI diseinu modernoaren oinarriak batzuk daude duela merezi picking. Nabarituko dezakezu han guztiak orri gainean espazio zuri asko da, gauzak gela ugari. Ez sentitzen gauzak squash orri bat sartu behar duzun bezala. Gela asko irekita utzi nahi duzun, eta bazoaz, ia edozein web moderno ikusiko duzu, ez da zuria nonahi. Han zuria da lekuak ez duzu espero zen. Kolore paleta hau duzu, eta jakintsua da hasieran kolore paleta bat lan egin eta garatzen ari zaren aukeratzeko. Ere - tipografia aukeratzeko laguntzen du, eta zu moduko lan bide horretatik diseinu oinarriak hormigoi horiek. Zure mota duzu, zure koloreak behar duzu, eta, ondoren, mota horretako ahal duzun egokitzeko beste guztia beharrezko gisa. Beraz, esan dudan bezala, zure kolore eskema zure kolore eskema koloreak bolder erabili nahi duzun neurriz. Goiburuak politak dira. Botoiak polita, deigarria kolore benetan handia izan dira. Baina, oro har, duten kolore ditu nonahi webgune bat baduzu, guztiak staring duzu aurpegia, badirudi besterik cluttered, eta ez da ona. Kolore argia, oro har, erabili nahi duzun. Saiatzeko, berriro, jaso kolore eskema nahiko koherente bat. Kolore asko zipriztin txiki horiek izan dezakezu - pretty nice begiratu daiteke, baina horiek nahiko neurriz erabili nahi duzun. Esan dudan bezala, minimoa izan nahi duzun. Gutxiago gehiago da ia beti. Duzu zerbait erakutsi ahal edo ez bada zerbait erakutsi, eta nolako Oraindik ziur egon behar du ala lehenetsita duzu - seguruenik Oraindik onena utzi itzazu off. Beti gehitu ahal izango da geroago. Bai, mantentzeko gauza sinpleak. Baina garrantzitsuena, diseinu bat baino gehiago kontuan hartu beharko duzu. Ez uste denean gune bat egin duzula, hura dute zure burua dela joan zaren duzu modu jakin batean Gunean egiteko, eta nik zehazki itxura hau egingo. Honez goialdean urdin goiburua eta alboko urdin barra izan da joan eta, ondoren, horia azpi-goiburua gauza. Templates anitz egin nahi duzun. Dezakezu bai - Oraindik Photo Shop ona bada, hori ireki ahal izango duzu sortu eta ordenatzeko Webgune bat diseinatzea itxura nahi duzun bezala. Hala ez bada, besterik gabe, luma eta paper erabili ahal izango dituzu, baina diseinu bat baino gehiago urratu du. Ra funtsean bat sortu non diseinu desberdin asko duzu nahi duzun, eta amaitu bat lan badute, haiek hori handia. One ondorioz sortu bada, izan ezean, orduan beti duzu nahi buelta beste bat. Oro har, ez sentitu bortcha bezalako behar duzu edozein dela ere diseinu nahi duzu hasiera batean erabakitzen da. Diseinu oso aldagarriak dira, eta ereduaren garrantzia zati kontroladore ikuspegi sistema dela eta ateratzen nahi duzun desberdinen iritziak trukatu ahal izango dituzu. Datuak modu batean sway dezakezu, eta gero erabaki, oh, egia esan, horrek ez du ondo funtzionatuko. Uste dut mota horretako ere zaila da edo ez zati bat, hemen hori ez da benetan lan egiten da, beraz, besterik ez dut guztiz alde batera utzi ikuspegi hau eta swap guztiz berri bat egingo da. Antzinako eredu eta zahar kontrolagailu oraindik ere erabili ahal izango dugu. Guztia egin dezakegu zerbitzari eta aurretik genuke gisa bezeroa da. Baina benetako datuak bistaratuko bezala olatu da apur bat ezberdina izango da. Orain arte bezala, benetan nahi duzun diseinua ezartzeko, behin diseinuak batzuk bat marraztu paperean nahiz Argazki Denda edo dena on duzu, Han zure eskura egiten diren tresna zenbaki bat daude. Lehenengoa Oraindik oso horrek ezagutzen zure HTML, PHP, edo dena delakoa da hizkuntza besterik ez zure web orriak estatikoak kode erabiltzen ari zarela. Asko lan egin duzun HTML horrek etiketa motatako ematen zurekin duten gauza jarri dezakezu sartu, eta, funtsean, zure edukiak antolatzeko modu bat da. Adibidez, goiburua duzu han, beraz header etiketa bat izan joan zaren, eta nik testu batzuk barruan zein da seguruenik etiketa beste batean izango da izan. Ondoren alboko barra bat duzu, agian, estekak desberdinak batzuekin, eta horiek dira etiketa guztiak desberdinetan izango. Beraz, funtsean HTML bere bihotz orriaren zatituz modu bat da nola azkenean, formateatu egin nahi duzun. Beraz, berriro ere, ikusi duzun hori baino lehen. Nahiko du orain lanean eroso zauden eman egin duzun azken pset zorionez, beraz, ez dago arazorik izan behar. Ondoren CSS funtsean maneiatzen diseinu alderdi estatiko guztia duzu. Kolore guztiak, elementu ezberdinak kokatzea guztiak bete litzateke, non bat beste aldean joan dira, nola big dira, hori izango litzateke positionings mota desberdinak - beste era batera esanda, ezin duzu egin gauzak horrela denean mugitu behera mantenduko dute, edo gauzak beste elementu erlatiboa izan dezakezu. Stuff sort hori guztia CSS dago. Gainera, apaingarriak ezberdinak egin ahal izango duzu, testua kolore izan dezakezu, testu efektu, stuff mota hori guztia. Ben azken asteburu honetan mintegi bat benetan ona eman, eta, beraz, behin betiko nuke egiaztatu dituen be fancy gauza batzuk egiten CSSrekin asmoa baduzu. CSS3 da, benetan CSS bertsio berriena, eta benetan polita gauza mota guztiak egin ahal izango da. Gradienteak egin ahal izango da; txoko polit, biribilduak izan dezakezu; stuff mota guztiak egin dezakezu egin zure webgunearen itxura modernoago eta Fancy. Hurrengo tresnaren JavaScript eta jQuery horrek Ben buruz pixka bat hitz egin da, baina lortu dut apur bat urrunago sartu. JavaScript, dituzun lan egin du pixka bat, edo behintzat ikusten da hitzaldi batzuetan bezala, mota da dinamikoki stuff egiten HTML modu bat. HTML, ezagutzen duzun bezala, estatikoa da, beraz, behin HTML duzu ezin duzu aldatu. Baina JavaScript, nolabait, HTML aldatu ahal izateko modu bat da. Beraz, ez da egin ahal izango duzu, eta hori handia da, baina JavaScript benetan lan egin mina bat da. Hain luze eta kamutsa da eta, nahiz eta errazena gauzak egiteko Javascript-ildo asko eskatzen du. Beraz, jQuery da, funtsean, hori guztia sinplifikatu Javascript liburutegia. Dio, ados, kutxa karratu bat ezker hegaletik etorri izan nahi baduzu eta orria desagertzen da, beraz da erdian, hori hartuko luke JavaScript in - Ez dakit, ehun ildoak egin, eta mina bat izango litzateke, eta web programazioa buruz dena hating da atera duzun. JQuery funtsean elementu-dot-fade-in, edo horrelako zerbait izan duzu. Funtzio beraz, oso, oso erraza dela cool animazioak mota guztiak egin dizu eta gauza mota hori. Beste gauza duten 2 horiek dira benetan ona da, besterik gabe, gauza dinamikoa egiten webgunean izena ematea. Beraz, baizik eta, besterik gabe, zure HTML orri izatea baino - zein datu batzuk benetan erakusten du baina ez du ezer egin - JavaScript eta jQuery horretan klik egin dezakezu botoi izan dizu, eta elementu eta re-ordena horiek arrastatu dezakezu, eta ordenatzeko horiek, eta elementu berriak izan gehitu edo kendu. Ahal gehigarri ezabatzen duzunean, gauza sort hori. Beraz, jQuery gauza cool tona. Eta Vipul da benetan mintegi bat gaur emanez, nire ustez, 5-goizeko, beraz, zuk makila inguruan dezakezun luze hori, zela - 5 edo 4? Lau. Barkatu. Egia esan, eskubide hori ondoren, beraz gomendatuko nuke itsastea inguruan da ahal bada. JQuery super, super erabilgarria, eta benetan polita gauza asko egin berarekin ahal izango duzu nahiko askoz edozein web garapen proiekturako. Orain naiz den bereizketa bat mota sartu noa. Funtsean aritu naiz hizketan erabiltzailearen interfaze buruz. Erabiltzaile interfaze besterik Gunean diseinatzea da. Baina badira moduko beste zein erabiltzaile esperientzia da kontzeptua da. Biak oso ezberdinak dira. Interfazea da, zalantzarik esperientzia parte. Bestela esanda, joan gune bat duzu, begiratu interfazearen at duzu. Duten gunean nola bizi duzu parte. Baina erabiltzaile esperientzia hori baino gehiago da. Erabiltzaile esperientzia inpresioa erabiltzaileari zure gunetik lortzen duten zer da buruz da. Beraz, jakina, interfaze horren zati bat da. Eta zalantzarik gabe, beharrezko zati bat, baina ez da nahikoa. Bestela esanda, interfaze polit bat izanez gero, eta polita eta koloretsua, eta hori guztia da, hori handia da, baina erabiltzailea zure webgunean joan ezkero, diseinua eder bat ikusten eta nik nahastu guztia, ideia ez du ezer egin, gero, jakina, benetan bat egin duzula Webgune pobrea. Hori da, non erabiltzaile esperientzia dator sartu moduko UX diseinu zertxobait azaldu noa - UX da erabiltzailearen esperientzia labur - eta nola ziurtatu erabiltzaile-esperientzia ona duzula egin dezakezu mota. Lehenengo puntua da duen webgune bat diseinatu ahal izango duzu, erabiltzaileak bertan ezer egin ahal izango duten erabiltzaile hori, seguru asko nahi du. Baina bada erabiltzailea ez daki gauza horiek nola egin - beste era batera esanda, erabiltzaileak ez badu ideia ona denean joan zure gunean nahi dute, "Oh, nire profila eguneratu nahi badut, orduan botoi hau sakatu dut, edo on bidaltzeko nahi badut norbaiten horma, eta gero joaten naiz bere horma eta egin klik kutxa txiki bat da. " Erabiltzaileak ez bada ezagutzen, gero eraginkortasunez duzu ez benetan funtzionalitate bezala inplementatuta. Funtzionalitate bat ezartzeko parte da erabiltzaileek dira benetan erabiltzeko gai. Eta frustrating izan zitekeen - gune bat egin dezakezu, eta mota guztiak egin ahal izango da Gauza zoragarri, baina gero jendeak probatu ezazu eta esan, "Ezin da egin hau izan dituzu. Zergatik ezin du hori egin da? "Eta atzera esan zien dituzu, "Beno, izan daiteke. Nahikoa duzu hemen 7an goitibeherako menuan sartu ilun honetara joan bakarrik aurkitzen dela beheko-eskuineko izkinan "edo zerbait esteka baten orria. Jakina, ez duzu nahi. Zure erabiltzaile zer suposatzen ari dira egin argi izan nahi duzun, eta sinple eta beraientzat intuitiboa izan behar du. Egin saiatu nahi duzun beste gauza bat da, norbaiten zure webgunean joan bada eta 9, 10 aldiz egin ekintza bat, eta 1, 10 aldiz egin B ekintza, Ziurrenik beren jarduera A. esperientzia zentratu nahi duzun Beste era batera esanda, nola egin, oso, oso argi utzi A. egin nahi duzun Bat izan beharko luke aurrean-eta-zentro - Gunean joan, ikusi da; Oh, eskuin hor da. B, berriz, jakina, argi izan nahi duzun, baina pixka bat gehiago utzi dezakezu atzealdean. David honen adibide ona ematen hitzaldia, horrek Boston T sistema da. Noiz joan Boston T behar duzu, eta txartel bat erosi nahi duzun, Eta 5 menuak sartu benetan dezakezu bidaia ordaindu aurretik a $ 2, $ 2.50 balioa, hau da, zenbat metroan ibiltzeko hartzen du norabide batean. Hori arazo bat da, zeren jende gehienak direnek metroan zaldiz Seguru asko leku bakarrean joateko, bere txartela erosi, get on berehala nahi. Ez du zentzurik karta ezberdin asko bidez joan behar dutela iritsi. Erabiltzaile-esperientzia hobea batek lehen orrialdean botoia azkar bat izango litzateke hori besterik ez dio, 'norabide bakarreko txartel bat erosi,' eta hori jartzea litzateke estandar guztia Balio lehenetsiak: eta orduan norbait nahi duela baino txartel ezberdin bat erosi nahi izanez gero, dute oraindik ere, noski, izan aukera, baina dituzun optimizatutako komun-erabileraren kasuan hau da benetan garrantzitsua. Facebook-en horren adibide ikusi ahal izango dituzu, ezta? Joan zaren Facebook-bada eta egoera, bidali nahi baduzu, eskuineko goialdean da eta hori da askotan egin nahi duzun. Orrialdean sartu bezain laster, gauza arruntenak egin ahal izango duzun Egin nahi duzun. Bezalako gauzak zertxobait konplexuagoak egin nahi baduzu, esateko nire lagunaren hormara joan eta argazki bat argitaratu nahi dut - askotan egin nahi dut, baina ez askotan status updates posting gisa - beraz, kasu horretan, idatzi nuen bere izena koadroan goialdean, sakatu bere profilean, eta gero, oraindik ere, eskuineko goialdean han behin dut bere profila ahaztuak. Berriz ere, lehentasuna dut optimizatu ohikoena-erabileraren kasuetan. Beste gauza garrantzitsu bat da, sarritan jende moduko egingo saiatzeko honen inguruan lortu arabera, esanez ados, beraz, gunearen egin dut eta jendea bertan nahasgarria aurkitzeko, eta hori arazo bat da, ezta? Jakina, ez dut nahi jendea nire gune edukiaren arabera nahastu behar. Baina modu hori konpontzeko ez da zerbait pop esaten dute, hey, noa irakasten duzu nola gune hau erabili ahal izateko. Step 1 - egin klik botoi honetan. Step 2 - joan hemen. Noski, horren inguruan modu bat da - duten pertsonek esan ahal duzu zer egin modu bat da, baina ez da benetan ez da modu optimoa. Joaten naiz, web orri bat eta bat-batean tutorial hori me kontatzea dut bonbardatu bada zer egin eta nora joan, eta hori guztia, hori ez da dibertigarria niretzat. Ez da niretzat esperientzia ona. Mina bat mota da. Nahikoa da stuff egiten nahi dut. Jendea beren elkarrizketa koadroan kanpo itxi egingo, edo tutoretza ateratzeko, ez dakit zer egin, eta gero kexatu delako ez duzu esan zien zer egin. Bide hau konpontzeko ez da inolako tutorial edo norabide mota emanez - horrelako ezer. Askoz gisa duzun hura saihestu ahal izango du, benetan erabiltzaileari erakutsi, zer egin nahi duzu besterik webgunearen diseinua izaeraren arabera. Bestela esanda, joan nintzen Facebook-bada saioa hasi gabe, lehenengo gauza dela ikus orrialde nagusian I - Apur login kutxa bat da. Beraz, duh. Saioa hasteko sartu da bertan daukat. Berriz, joan badut Facebook eta behealdean lotura apur bat sakatu behar izan nuen esan 'saioa hasi' eta orria gainerako besterik irudi edo zerbait bat ote zen, Ez nuke benetan jakin zer egin, ezta? I nahastu behar litzateke. Beraz, esan izan dit hor behera joan eta sakatu botoia saioa hasi ahal izateko, edo botoia in erregistroan eskubidea izan liteke goiko non naiz hura ikusteko joan ziren. Beti izango du erabiltzaileak zer egin erakustea nahi baduzu, eta hori orriaren bera berez izan behar du. Diseinuak buruzko duzunean pentsatzen eta modu ezberdinak sortu mocking ari zure gunea adierazteko, benetan zer erabiltzaileek ari joatea pentsatu nahi duzu izango egiten eta nola erakutsi ahal izango duzu zer egin. Azken gauza bat da probak benetan, oso garrantzitsua da. Handia da norbait heldu - Lagun bat lortzeko, lortu norbait ez duzu, nahiz eta jakin - nor inoiz ikusi Gunean gunean erabili aurretik. Zuk izan gunean lan orduz delako, it at sido duzu staring dut, eta zehazki zer hacerlo jakina duzu behar probatzen ari zaren badakizu Nahi duzula eta lan badakizu lanean gauzak. Baina norbaitek batera dator, eta gune hori ez da sekula erabili aurretik erabiltzen du, duten esperientzia paregabea da norbait aurretiko ezagutzak ez du duzulako Gunean sartu, beraz ari behar eraginkorrean ez daki zer egingo duen edo zer nolako erabilpena kasu beraientzat agertu dira. Hori handia. Hori da, funtsean berezia ari dira kontuan batentzat huts bat duen pertsona bat delako. Esango zerbait nahasia edo unclear bada, ahal izango dute. Erabiltzaileak zure gunea esperientzia hain zuzen, zer da ideia bat emango dizute. Oso gogorra izan da, zeure buruari esango, beraz, behin betiko animatzen nuke duzu zure proiektuak garatzen gisa ari - duzun web oinarritutako proiektuak egiten ari bada - Jende lortzeko gune gisa hasieran demo funtzional mota batzuk izan duzun bezala erabiliz. Orain ez dut web garapenerako proiektu bat nola kudeatu buruz pixka bat hitz egin dugu. Back-end teknikoak albo nola egin dezakezun baino gehiago joan gara, gune benetan ona nola diseinatu ahal izango duzu, eta hori handia da zu bakarrik lan egiten bada, baina - zu bakarrik lan egiten, nahiz eta talde batean ari zara lanean, batez ere, proiektuen kudeaketa gai handi bat bihurtzen da. Sort dituzun proiektu forma ezberdinetan kudeaketari buruz entzun geroztik oinarrizko eskola talde lana kontatu zinen. Kooperatzen komunikatzeko, hori guztia egin behar duzu. Hori hemen guztiak oraindik ere aplikatzen zaie, baina egoera berezia batzuk daude jakitun izan nahi duzula, eta ziur ondo kudeatzeko duzu egin nahi duzun informatika. Hitz egin dut lehen pixka bat taldeari egingo duzun be sartu buruz Oso garrantzitsua da lan-talde baten tamaina eskuin hautatzeko, eta zure azken proiektua aukera hautatu egin behar duzu, uste dut pertsona 1 eta 4 artean zuzena banago. Ziurtatu ez duzu besterik pertsonen kopurua aukeratzerakoan duten egin nahi duzun zure lagunekin delako landu nahi duzula. Duten tamaina ona da talde bat aukeratu eta lana egin duten lortuko nahi duzun. Han jende gehiago jende gutxiago versus beharrik merkataritza off da. Jende gehiago badituzu, lana, jakina, gehiago egin ahal izango da Jende asko, kode asko, ideia asko, duzulako eta hori guztia da handia. Baina kudeaketa askoz gehiago eta komunikazio asko gehiago ere eskatzen ditu. Bestela esanda, 4 pertsona proiektu berean lanean ari bada eta ari guztiak kode bera editatzen dute, gehiago edo gutxiago, premia-mota guztiak dakite zer ari den gertatzen, beraz, zuk eskatzen du - funtzio berri batzuk gehitu baduzu ordenatzeko duzu jendeak esaten - diat hau gehituz, I aldakor honetan modu horretan nabil - lortzen duzun gauza benetan sakona sartu batez ere ereduak eta kontrolagailu diren benetan gune nola funtzionatzen eraginik izango atsegin. Talde osoarentzat da jakitun izan behar du, beraz, ziurtatu ez duzu hori gogorra izango da handiegia talde bat aukeratu egin behar duzu komunikazio hori egiteko. Ere nahi ez zarela ez joatea nahikoa talde txiki bat aukeratu izan komunikatzeko gai besterik ez duzu delako. Kontuan hartu beharreko beste gauza bat non pertsonen gaitasunak dira oreka da. Handia Oraindik programatzaileek benetan ona guztiak galtzen. Baina ari zaren bada back-end pertsona guztiak, eta ondoren zure webgunean ez oso itxura ona du datu-base handi honen duzulako, eta bilaketa super-azkar kontsultak egiten du - handia da - baina noiz joan behar duzu, da 1990-ren gune bat bezala gorri eta urdinak nonahi, eta hori bai da ez ona. Nabarituko Ben eta talde-lanaren dut oso polita moduko gehiago naiz delako frontend, bai ditugun elkarreragin erdi-amaieran, eta Ben Benetan back-end stuff ona, beraz, lan benetan, dugu edozein gune diseinatu eta funtsean daitekeelako zuloak gune hori bete behar duten egon bai gurekin bat, edo, agian, biak bete daitezke. Ziur daudela zure taldea zulo ez egin nahi duzun. Ongi da, gainjartzea pixka bat izanez. Bestela esanda, atzera amaieran ekin onak dira bai 2 pertsona izanez gero, hori ona izan daiteke baita dute elkar laguntzeko daitekeelako arazoak dituzten duten beharrik dira. Arazo bat izan daiteke duzun besterik ez 1 pertsona nor den gauza jakin bat arduratzen bada eta exekutatu arazo bat sartzen dira, beraz, nahi duzun gainjartzea pixka bat izatea baina garrantzitsuena ziur ahalik eta zulo guztiak bete ziurtatu nahi duzu. Azken gauza - eta hau begi-bistakoa izan beharko luke, baina askotan ez da. Benetan dibertigarria izatea nahi duzu. CS50 azken proiektu honen puntua eta, askotan, web garapenerako puntuan orokorrean Ez da lan bat besterik ez dute egiten behar delako. Benetan dibertigarria izatea nahi duzu, eta zerbait egiteko nahi duzun hori da zuk motibagarria bertan lan egiteko. Dena delakoa egiten ari zaren mina bat eseri eta lan badago, orduan ez duzu eskuineko proiektua aukeratzerakoan. Interesgarria aurkituko duzu zerbait aukeratu nahi duzu, Benetan emaitza ikusi nahi baduzu, zaren ilusioa buruzko ideia berri bat lortuko duzu zerbait egin izan duzu - beraz, ez dago proiektu motari dago ziur naiz aurkitu ahal izango duzu - guztiontzat zela benetan Intriga horiek zerbait du dute web-oinarritutako proiektu bat egiten ari bada. Berriro esango dut oraintxe bertan. Zure proiektua mina bat dirudi bada eta ez duzu bertan lan egiteko nahi, Proiektu bat aukeratu. Aukeratu benetan inspiratzen duzu zerbait. Ben bit bat iterazio kontzeptu hori aipatu, eta pixka bat gainean joan nahi dut. Benetan garrantzitsua da nahi spurts non zerbait funtzionala lortzeko lan egiteko. Handia izan daiteke, eta hori da A, B, eta C egin da joan webgune bat plan hau edukiz gero, eta, azkenean, lortu dugu han. Baina fase honetan non zauden bertan, eta lan egiten ari zirela itsatsita, baina ezer ez da ohitu egin. Ez duzu ezer ikusi eta, gauza funtzionalak nabaria izan. Benetan zer asko egin mina bat mota badirudi batzuetan bezala nahi duzun zerbait lan egiteko eta, ondoren ordenatzeko cap off, beraz, gutxienez, da egonkor batean, korrika bertsioan bada ere, ez du nahi dituzun ezaugarri guztiak dituzte. Eta, agian, zuk benetan gehitu baina ezin besterik ez duzu nahi ezaugarri batzuk daude gune hau lortzeko puntu funtzionala nahi duzulako. Eta beraz, mota horretako garapen osoaren prozesuari itxura nahi duzun. Edo funtsean ezer hasiko da - nonbait funtzionala hasi nahi duzun - baina nonbait oso oinarrizkoa eta funtzionala lortu nahi duzun. Eta gero, berriz, egin salto moduko bat eta lortu nonbait funtzionala berriro. Duzu astiro eraikitzeko aukera izango dute, eta bestela ez litzateke izango baino pixka bat motelago joan zitekeen, baina epe luzera etengabe ari zaren erdiko beheko fase honetan itsatsita, non duzu Egia esan, ez ezer lanean, frustrazioa benetan handia izan daiteke Zure proiektuaren gainean lan Oraindik beraz, lan lortzetik gertu beti delako, eta nik inoiz ez benetan lan. Ra spurts funtzional hauetan lan egin nahi duzun, eta, gainera, hausnarketa batzuk egin ondoren, bakoitzak nahi baduzu. Bestela esanda, behin puntu bat non Gunean orain da lan honetan zaude - ez du gogoko duzun guztia, baina gauza batzuk egiten du - pentsatzeko nahi baduzu, ados, gune hori ezarri dut egin, helburua lortu da? Beste era batera esanda, gune X egin nahi izanez gero, zer da X norabidean dut lan? Direla han nahi nuen funtzionalitate guztietara? Eta proiektuak helburu orokorra duten nahi dut zerbitzatu du? Duzu zure gune horretan beste norabide batean Veer hasita aurkitzeko bazabiltza edo agian gauzak mota besterik ez dira lan, engranajeak mugitzeko pixka bat behar daiteke. Bestela esanda, kontuan hartuta merezi du - merezi ideiak bota da, behar izanez gero eta kontuan hartuta ari naiz benetan zer izan nahi dut alde lan. Uste dut nire hurrengo puntua da. Ez izan beldurrik ideiak alde batera uzteko. Ordu asko eman duzu ezaugarri bat lantzen ari da, besterik ez delako eta azkenik got lan, baina benetan ez da hain ongi joan - ez da atsegin erabilgarria edo erabiltzaile diren arazoak ezazu erabili beharrik - gauza sort hori - ez izan beldurrik botatzen urrun. Denbora asko igaro duzula lanean Sucks da, baina, azken finean, ez duzu gune bat hori da mota bildu pieza horiek nahi duten lan moduko baina ez dira ondo zerbitzatzen. Gainera, ez izan beldurrik ideia berriak besarkatu. Norbaitek batera badator eta dio, beno, gune horrek itxura benetan cool baina ez litzateke handia izango du ere, honek ez zuen bada? Hori ez duzu nahi eta hori ez da zerbait zerbait besterik ez delako zure specs, ez duzula ezarri egin zerbait, ez izan bere gainean hartu eta, ondoren, berarekin lan egiteko beldurrik. Duten garatzeko ikasturte osoan zehar exekutatu duzun burutazio duelako azkenean, webgunearen benetan cool ezaugarri izanik. Esan dut hau lehenago. Berriro esango dut. Probatzaile super dira, super erabilgarria. Saiatu inoiz ikusi ez duten gunean hasi baino lehen, eta ikusi zer gertatzen den jende lortzeko dutelako daiteke gune eta erabiltzailearen esperientzia erabilgarritasuna ez bakarrik probatzeko, baina ere funtzionaltasuna probatu ahal ezin duten bide batzuetatik. Hori gauza jakin bat egiten du ezaugarri batzuk egiten badituzu eta badakizu zer gauza bera behar bezala egin ahal izateko aldi bakoitzean bakarra, handia egingo. Baina askotan gogorra izan daiteke izkina kasuetan erabiltzaileari agian bat kontuan ez ziren espero zerbait idazten - hain zuzen, zehaztutako duzulako ezaugarri yourself. Beraz, norbait ideia ez gunean nola erabili du etorri izan eta benetan erabilgarria izateko besterik apurtu whatever modutan egin ahal izango dute in duzulako ideia bat lortzeko zer zure webgunean badabil perspektiba guztiz ezberdin batean eta zer konponketa behar. Azkena, praktika onak orokorrari buruz hitz egingo dut, eta hauetako asko ikusten duzun CS50, baina ere benetan, oso proiektu inguru batean aplikatuko. Bat iruzkinak da. Iruzkin beti zure kodea bereziki talde handi bat ari zara lanean bada. Hain gogaikarriak kode-bloke erraldoi bat besterik ez dute, norbaitek idatzi izan daiteke eta, agian, funtzionatzen du, agian, ez du, baina, ez duzu zer egiten ideia, beraz, ideia ez erabilgarria edo ez du edo ez den, edo ez ote den komeni da ala ez duzu, eta are gehiago, posible beste zerbait ari zara lanean bada da ari zarela lanean ari gauza bera, beraz, besterik ez izan, oso, oso kontuz ibili zure ikaskideek Kontutan izan eta idazteko kode hori da ongi dokumentatua. Ez duzu hain urruti joan gauza osoa non gustatzen Kontatzailea baduzu egin gisa kontagailu bat izan iruzkin bat dela dio, naiz batu 1 counter honetarako. Ez du horrek zehatza izan da, baina inoiz ari zaren idazteko edozein funtzio zer funtzio duten zehazki ez dokumentazioa batzuk izan behar duzu, zer bere inputak dira, eta zer itzuli behar da. Horrela pertsonen beste gune osagai erabili ahal izango duzu eta zerbait handia eraikitzeko bidean lan egin ahal izango duzu. Beste gauza garrantzitsua da erregularra garbi-ups egin nahi duzula. Kode lortzen narratsa. Ez sentitzen txarra zure kodea besterik ez da guztiz irakurtezina eta nahaspila erraldoi bat bada. Duten web garapenean gertatzen beti. Ezaugarri berriak gehitzen ari zaren, zaharrak kendu. Gauza da han egon behar ez den joan. Oso polita, baina ziurtatu aldizka horrekin aurre egin nahi duzun. Ez duzu nahi eraikitzeko sortu du puntua non besterik ez ezer aurkitu utzi zure kodea, eta ez dago ezer duenaren ideia duzu. HTML kasua da. Batzuetan, azkenean duzu ez ezer dituzten objektuak, eta horiek kentzeko nahi duzu. CSS, hori ez daude jada elementu behar duzun aipatuz daiteke, beraz kode hori kendu nahi duzu. JavaScript, HTML zerbait duzu kendu izana. Beraz, ziurtatu duzula beti garbitzen ari egin nahi duzun, gauza politak egiteko ahal duzun erregulartasunez bezainbeste. Ez, ez dut uste beste gauza bat benetan erabilgarria asko planteaturiko CS50 baina merezi du bertsio kontrola sartzea da. Bertsio kontrol ideia da noiz ari funtsean aurrerapen guztien jarraipena duzu duzun zure webgunean bidean egin eta edozein puntutan konturatzen bazara, ai, hori zela lanean pixka bat lehenago, baina ez da lan gehiago, atzera jo aurreko bertsioak dezakezu ikusi eta zer egin du gero eta gauza sort hori geroztik aldatu. Lehen bidea ez da egin behar Git da, eta Git sistema mota hau osoa dela Uste dut Tommy MacWilliam iaz buruzko mintegi bat eman. Joan behar CS50 mintegiak sartu bada 2011rako, bere horretan mintegi ikusi ahal izango duzu. Git ideia, funtsean da aldiro duten konpromiso horiek egiten ari zaren horrek gunearen bertsio nahiko egonkor bat da oraintxe bertan esaten modu dira hain Ontziak naiz sortu eta bidali urruntzen zerbitzari batera, eta, ondoren, zerbitzarira joango dezakezu eta zure kodea aurreko bertsio guztiak begiratu eta ikusi nola aurrera egin du eta gauza onak moduko hori guztia. Beraz, hori da funtsean da. Orain arte bezala, web garapen gisa, zoriontsu inguruan makila eta edozein erantzun gara galdera den neurrian gure aurkezpen gisa. Hori da. Esker. >> [Ben] Eskerrik asko. [Txalo] [Billy] langileak, ez du inor nik estaliko ditugun gauzei buruzko edozein zalantza edo hori ez dugu estaltzen duten mesederako ziren gauzak litzaidake estaltzeko dugu? Litzaidake zoriontsu horiek erantzun behar izan dugu. Edozeinek? [Ikusle kide] Zer dira pros eta txarrez Ruby erabiliz edo Python erabiliz? [Ben] Galdera izan zen, zer dira pros eta txarrez Ruby edo Python erabiliz ordez PHP bezala. Pros dira Ruby eta Python, PHP baino hizkuntzak askoz hobeak dira. Gutxienez, nire ustez, eta uste besteen iritziak asko izan dut, baita. Gauza konplexuak egiteko gehiago diseinatu ziren, eta web orriak elkarrekin itxi egingo benetan azkar rekin gutxiago eduki dinamiko pixka bat. Txarrez dira ez dagoela pixka bat da - ez da ikaskuntza kurba bat gehiago arte ezagutu ezarri. Hau da, PHP bezala, besterik izan dezakezu HTML fitxategi bat, eta gutxiago-baino idazterakoan, galdera-marka, eta, ondoren, kodea batzuk idazten duzun, eta ondoren galdera-marka idazterakoan, baino handiagoa-, eta, ondoren Bukatutakoan. Ruby edo Python bezalako beste hizkuntza batean lan pixka bat gehiago bidez joan hasierako gune entzierro lortzeko behar duzu. Ez da, gainera -, gutxienez kasua izan ohi da - ez dagoela dokumentazio gehiago PHP eskuragarri han jende gehiago erabiltzen dira, besterik ez delako. Uste dut hori ez baita arazo bat askoz gehiago. Inolako zalantzarik gabe, Ruby on Rails horrelako gauzak dokumentazioa oso ona edo Django Python baliokidea da. PHP guztiontzat izan erabiliz urtez bat da, eta nola funtzionatzen duen ezagutzeko aukera izango duzu. Ruby eta Python pixka bat gutxiago heldua. [Ikusle kide] horietako bat artean aukeratu ikasteko edo jasotzea bazina, zein nahiago duzu? Egia esanda, hori pertsonaren araberakoa dela uste dut. Sentitzen dut. Galdera zen litzateke zein norbaitek ikasi jaso duzu? Python nicest pertsonalki aurkitu dut. Nire lehen web dev Python eta Django proiektua egin nuen - ez dago jende asko nor dira. Ez dago Ruby gustuko duten ere Rails pertsona asko daude. Ezagutzen duten Ruby on Rails jende gehiago ziurrenik. Zintzotasunez, besterik ez nuke zure inguruan jendea ezagutzen dena delakoa joan beraz, galderak egiteko aukera izango duzu jendea. Galdera zen - partekatutako zerbitzarietan da Python gainean lan gogor mota? Duten zure hosting araberakoa. Badira web ostalarien kopuru hori Python stuff idazteko egingo dira. WebFaction du hori, ezta? WebFaction duten Billy eta I proiektu batzuk erabiliko dute bat. Benetan handia ari dira. Hizkuntza gehienetan onartzen dute. Baina egia da PHP dela askoz gehiago zabaldu onartzen. Beraz, zuk web ostalari bat PHP bakarrik ez duten itsatsita bazabiltza, hori arrazoi on bat PHP erabili da. [Ikusle kide] besterik ez dut datu-base batzuk nola galdetzeko ikastea lortu, eta ezagutzen dut nire SQL leku guztietan zehar, baina I got berriki jasan - eta esan dogun duzu. Ikusten duzu JSON eta datu-baseak handitu. My SQL da oraindik leku guztietan zehar. Nola ez, gertatzen ari dela ikusten duzu? Da gero eta gehiago handitu (inaudible) joera bat izango da? Galdera zen - baina ez da ez datubaseak joera bat izango dela uste dut. Esate baterako, MongoDB bezala. Nik uste dut, hau da, behin betiko egia. Nire aholkua gehienbat hemen MySQL-zerikusia zuten bakarra delako MySQL da industria estandarra. Pertsonalki, askoz ere nahiago dut ez duten MongoDB bezalako schemos datu baseak non ez duzu gai izan, oh, zutabe bat gehitu behar dut. Ay me da, edozein dela ere ez dut egin bezala? Oso zaila da horretarako MySQL on, baina Mongo antzeko zerbait izan duzu askoz politagoa da. Beste polita Mongo buruz gauza da zure erregistro dira benetan JavaScript objektuak. Ez da ez bihurtze urrats moduko non datu-baseko errenkada horiek hartu behar duzu eta buelta Javascript objektu bat sartu eta gero bidali alanbre gainetik. Uste dut horrelako gauzak oso, oso erabilgarria izango da etorkizunean azkar web garapen baten ondoren. [Billy] Something puntu orokor bat besterik ez da gehituko nuke dela ez sentitzen dituzun hizkuntzak eztabaidatu dugu guztia ikasi behar bezalakoa izan Gure mintegian from. Jakina puntua da zuk zer out ideia bat emateko, eta zuk aipatu dugun edozein intrigued bazabiltza horiek Google dezakezu , irakurri eta haien gainean. Eta aipatu dudan bezala, badaude gutxi batzuk mintegiak gauza horiek, hain zuzen, aurre egiteko daudela. Badira hori ez dut aipatu dela seguruenik sartu mintegiak are gehiago stuff hau baita. Ideia da zerbait lan egin nahi baduzu, hemen dituzu zure eskura erremintak. Ez sentitzen overwhelmed ez zara benetan ziur zer tresna horiek egin zehazki bada, baina ezagutzen ari dira han eta erabilera zabala egin dezakezu horietako duten Google-k. [Ikusle kide] Nolako gauzak egiten ziurtatu zure web egiteko egin behar duzu itxura ona gailu mugikorrean? [Billy] Gailu mugikorrak apur bat gogorra. Ez da 2 eratara hurbiltzen dezakezu. Lehen bidea da, benetan behar duzun web mugikor bat. Bestela esanda, detektatzeko moduko bat egiten duzunean hasieran denean nabigatzailea eskaera egiten ari den zure webgunean bai esaten ahal itzultzeko ikuspegi hau - zein desktop edo ordenagailu eramangarri nabigatzaileentzako ikuspegian izango da - eta Telefono mugikorren beste ikuspegi hau. Duten leku bat, non ikusia benetan polita dira horretan nahiko askoz swap ahal duzun da bi atera eta benetan nicely lan egiten duen gailu mugikorrean interfaze bat izan eta erabat beste bat egiten du lan nicely duten nabigatzaileak gailuetan. Duten arazoa da denbora luzea igarotzen da kodetze esan nahi duelako erabat ezberdinak interfazea. Duten gauza bera egin dezakezu beste modu bat da - telefono moderno asko webguneak erakutsiko dira eta saiatu horiek nabigatzaile bat litzateke gisa errendatu, eta euren onena egin dute. Daiteke motatako saiatu duzu argi lo jQuery JavaScript zenbatekoa erabiltzen ari zaren horrek non gauzak gaizki joan daiteke, pixka bat izan ohi da. Hori ez baduzu, denbora askorik ez dutela erabili behar duzu modu moduko da. Denbora interfazea mugikor batean lan egiten baduzu, zure aukerarik onena da, jakina. Oro har CS50 proiektuetarako, ari bat edo beste aukeratu nahi duzu uste dut. Bestela esanda, mobile app bat egin nahi duzun edo mahaigaineko web orri bat egin nahi duzu. Eta hori moduko zehazten non joan horrekin duzu. Baina gero zabaltzeko atera nahi izanez gero, ziurrenik, zure onena apustua bestea interfaze beste egiteko. WordPress-en oinarritutako guneak garatzen esperientzia pixka bat behar dut. WordPress on web pertsonal bat ostatutako dut awhile. Esparru mota horiek polita bezain oso oinarrizko gauza izan daiteke. Oftentimes dituzu besterik customizability gai asko sartu exekutatu arren. Zerbait begiratzeko modu jakin bat edo modu jakin bat izan nahi duzu eta ezin besterik ez duzu nik sisteman sartu hard-kable delako hau da, nola eta horrek arazo bat apur bat izan daiteke gauzak egin behar duzu. Nik motatako Orduz geroztik lurretik sortu guneak batekin lan gehiago gogoa izan da. Blogean datu-base eta gauza sort hori benetan ez da zaila hori esparru bat eraikitzea bezalako gauzak. Zu benetan aldiz luzatu bada, noski WordPress antzeko zerbait erabiltzen duzun edo gauza sort hori blog bat. Gauza mota hori blogen denda eta ez dira benetan gogorra nahikoa duzun gauza mota horietako edozein sartu darabilzun, onena Ziurrenera besterik etxe-bertsio bat egitea. Nik uste dut hori buruz, beraz, mila esker berriro etortzeagatik. Benetan gozatu dugu you guys hizketan eta espero gauza batzuk ikasi duzula. [Ben] pozik hitz egin gara - joan behar dugu baina pozik gehiago kanpo hitz egiteko gaude beste galdera bat baduzu. Eskerrik asko berriro. [Txalo] [CS50.TV]