დევიდ ჯ Malan: ყველა უფლება, ასე რომ ეს აქ არის Myo arm ჯგუფი, წყვილი, რომელსაც ჩვენ ჰქონდეს CS50 საბოლოო პროექტები. და ეს იყო აქციით რიგშია თქვენ წინასწარ, სადაც არსებითად ეს საკმაოდ მჭიდრო arm ბენდი აქ უსმენს თქვენი კუნთების მოძრაობები რომელიც შემდეგ დატანილი პროგრამული უზრუნველყოფა რომ კოლტონი ს ლეპტოპი აქ, რომელიც ჰქონდა iTunes და რომ სიმღერა უკვე რიგშია მდე. ვიდრე მე demoing ამ, კოლტონი უკვე ლაბორატორიაში აშკარად მთელი კვირის განმავლობაში მიღების დემონსტრაცია მზად ერთი მამაცი მოხალისე. თუ ვინმეს სურს მოვა on up-- ვნახე თქვენი მხრივ პირველი. მოდის up. [00:01:09] ყველა უფლება. და რა არის შენი სახელი? [00:01:13] აუდიტორია: Uh, მარია. [00:01:14] დევიდ ჯ Malan: Maria, კარგია თქვენ. მოდის მეტი აქ. ნება მომეცით წარმოგიდგინოთ, რათა კოლტონი. კოლტონი, ეს არის მარია. [00:01:21] COLTON: Hi, კარგია თქვენთან შეხვედრა. [00:01:23] დევიდ ჯ Malan: ყველა უფლება, ასე ნაბიჯი ერთი, ჩვენ აპირებს არ დააყენა ეს თქვენი მხარის ზემოთ დაიკავეს ასე რომ, ეს საკმაოდ მჭიდრო ახლოს თქვენი იდაყვის. მანამდე კი, მოდი, დააყენა ჩვენი Google Glass და ჩვენ აურიეთ ტექნოლოგიების დღეს. [00:01:33] COLTON: პირველი, ჩვენ უნდა Hook ამ შევიდა რამ. [00:01:36] დევიდ ჯ Malan: OK. რეალურად, მოდით, რომ თქვენი მკლავი, როგორც ახლოს კაბელი, რაც შეიძლება ასე რომ ჩვენ შეგვიძლია პირველი სინქრონიზაციის it up. [00:01:41] COLTON: მოდით ეს. [00:01:42] დევიდ ჯ Malan: ამასობაში, ასე რომ ყველას შეუძლია მიიღოს უფრო შეხედვით, ჩვენ toss Andrew კამერა ეკრანზე არსებობს. ამიტომ ჩვენ გვაქვს USB კაბელი, რომ არის მიმდინარეობს plugged შევიდა Maria სამკლაური. და ნება მომეცით toss კოლტონი ეკრანზე up პროექტორი შემდეგ. [00:02:00] ასე კოლტონი არის რეგისტრაციისას მოწყობილობა ახლა, როგორც Myo დაკავშირებული კაბელი. და ახლა რა მარია ვაპირებთ გავაკეთოთ, მომენტალურად რეალურად გავლა კალიბრაცია ნაბიჯები და ასწავლიან პროგრამული უზრუნველყოფა როგორ მისი კუნთების რეაგირება როდესაც იგი გარკვეული წინასწარ განსაზღვრული ჟესტები, რომ პროგრამული ესმის. თუ გსურთ წასვლა წინა ეკრანზე. OK, არ დავიშურებთ. [00:02:30] COLTON: გადადით მოსწონს ეს. და მინდა, რომ. და ყველა გზა უფლება. დაბრუნდეს. [00:02:35] დევიდ ჯ Malan: OK. სხვადასხვა პერსპექტივა. ეს არ არის თქვენთვის. ეს ჩვენთვის. [00:02:40] MARIA: OK. დევიდ ჯ Malan: No. მოდით გადატანა უმაღლესი, ასე რომ უფრო ახლოს თქვენი elbow, ან თუნდაც მკაცრი. ყველა უფლება. [00:02:52] აქ ჩვენ მივდივართ. ეს იქნება კარგი დრო CS52X. იქ ჩვენ წავიდეთ. [00:02:57] ძალიან ლამაზი. OK. ცერის Pinky. [00:03:02] ძალიან ლამაზი. გავრცელებული თქვენი თითების. კარგი. ტალღა უფლება. ეს საინტერესოა ნაჩვენებია თქვენ მარცხენა ხელით [00:03:17] COLTON: ჰო, უცნაური. დევიდ ჯ Malan: ტალღა მარჯვნივ და წინსვლა. სწრაფი წინ გამოტოვება ან შემდეგ. ეს OK Wave უფლება. [00:03:25] MARIA: მე do not დაველოდოთ. [00:03:26] დევიდ ჯ Malan: Need დახმარება? [00:03:28] COLTON: ასე რომ თქვენ აპირებს მოსწონს ეს. MARIA: ეს გარდამტეხი სხვა რამ, თუმცა. COLTON: ეს არის. დევიდ ჯ Malan: ჰო, არ ვიცი, რატომ გვიჩვენებს თქვენ leftie. COLTON: რატომ არ ვცდილობთ სცადეთ აპირებს მოსწონს ეს. [00:03:38] დევიდ ჯ Malan: არა? იქნებ მიღწევა თქვენი arm ცოტა სწორი და უფრო მკვეთრი მოსწონს ეს. ჰო, OK, მოდის. [00:03:48] MARIA: მე ბოდიში. დევიდ ჯ Malan: ეს არ არის თქვენი ბრალია. COLTON: ეს ჯარიმა. დევიდ ჯ Malan: ყველა უფლება. Well-- [00:03:56] MARIA: უნდა გამოტოვოთ ეს, მაშინ? დევიდ ჯ Malan: დიახ, მოდით ნება თქვენ გამოეყვანა მოთმინებიდან. ასე რომ, თუ ვინმეს სურს ამის გაკეთება საბოლოო პროექტის გამოყენებით ამ უახლესი ტექნიკა, გააცნობიეროს, რომ ეს შეიძლება მხოლოდ ცოტა შეგუება. და ამას რეალობა ის არის, რომ ეს პრაქტიკულად ძალიან სისხლდენა პირას. [00:04:10] ეს არის ის, რაც ე.წ. დეველოპერი ნაკრები, რომელიც იგულისხმება, რომ არსებითად წინასწარ გათავისუფლება ასე რომ ადამიანს შეუძლია გააკეთოს ზუსტად ამას ბრძოლას, ფიგურა გაირკვეს, თუ როგორ ადამიანებს ორგანოების მუშაობა ტექნიკა. ასე რომ, თუ გსურთ ამის შემდეგ, მას შემდეგ, ლექცია, ჩვენ შეგვიძლია მოდით მოვიდა და მიიღოს მეორე stab at მას. მაგრამ სხვაგვარად, რაუნდი ტაში, თუ შეგვეძლო, მარია მოდის up. [00:04:26] MARIA: დიდი მადლობა. [00:04:28] დევიდ ჯ Malan: დიდი მადლობა. ჩვენ გათიშეთ შესახებ, რომ ეს, მაგრამ ჩვენ მისცემს you-- როგორ შესახებ სტრესი ბურთი აქ? Oh, and-- if-- yeah, მადლობა. ყველა უფლება. ისე საინტერესოა, თუ იყო უცხო ხმის არჩევანი რომ ჩვენ მივიღეთ იქ ადრე, საოცარი TV აჩვენებს, რომ თქვენ უნდა აბსოლუტურად შეიძლება გონება დაეკარგა თვალს on Netflix ეს ერთი აქ. [00:04:51] დინამიკები 1: ქალბატონებო და ბატონებო, ჯადოქარი სახელად ჯოშ. [00:05:04] დევიდ ჯ Malan: და როგორც ჩანს, ეს რამ ტექსტის me დროს ლექცია ახლა. მე ეუბნებიან, რომ მარია დაბადების დღე ჰქონდა გუშინ. ასე ბედნიერი დაბადების დღე ეხლა CS50 მარია ასევე. [00:05:18] ასე, რომ თქვენ შეიძლება წაიკითხოთ ბოლო ერთი თვის განმავლობაში რომ ეს ბატონებო აქ, სტივ Ballmer, რომელიც რეალურად კლასი 1977 კოლეჯში, ცოტა ხნის წინ პენსიაზე for Microsoft. ის იყო ბაკალავრიატის აქ შემდეგ რამდენიმე წლის შემდეგ აღმოჩნდებოდა სტენფორდის ბიზნესის სკოლა როდესაც მან მიიღო სატელეფონო მოვუწოდებთ მეგობარი მისი, ვინც ცხოვრობდა ქვემოთ დარბაზში მისგან აქ ჰარვარდის. რომ მეგობრის სახელი ბილ კარი, და იმ დროს, იგი ცდილობს გადაბირების Steve იყოს პირველი ბიზნეს პირი, მართლაც, მცირე კომპანია ასახელებს Microsoft. [00:05:45] მოკლედ, სტივ საბოლოოდ სძლია, შეუერთდა Microsoft, როდესაც ისინი ჰქონდა მხოლოდ 30 თანამშრომელი. და იმ დროს, როცა გადადგა ცოტა ხნის წინ, კომპანიას 100,000 თანამშრომლები უკანასკნელი რამდენიმე წლის განმავლობაში. ასე რომ, საიტი ცნობილია, როგორც ზღვარზე მომზადებული ხარკი ვიდეო რომ გვეგონა, ჩვენ გვინდა საერთო, რომელიც გაძლევთ გრძნობა, თუ რამდენად ენერგეტიკული Steve მოაქვს რაიმე პრეზენტაცია იგი იძლევა. [ვიდეო აღწარმოების] -Microsoft მოსწონს მეოთხე შვილი. ბავშვები დატოვოს სახლი. ამ შემთხვევაში, ვფიქრობ, მე არ ტოვებს სახლს. Hey Bill, whazzap? [00:06:23] -Wazzap? [00:06:24] -Hey, Wazzap? ჩვენ მიეცა უზარმაზარი შესაძლებლობა. და ბილ მოგვცა, რომ შესაძლებლობა. მინდა მადლობა გადავუხადო კანონპროექტი რომ. მინდა, რომ ძალიან. ევროპის საბჭოს საპარლამენტო ასამბლეის ინოვაცია არ შენელდა. [00:06:42] ის აპირებს უფრო სწრაფად და სწრაფად. შეიძლება იყოს რამდენიმე კონკურენტების რომ, სამწუხაროდ, აღარ იარსებებს! [00:06:54] მე მიყვარს ეს კომპანია. დიახ! მე ვარ PC, და მე მიყვარს ეს კომპანია! [00:07:08] დეველოპერები, დეველოპერები, დეველოპერები, დეველოპერები, დეველოპერები, დეველოპერები, დეველოპერები, დეველოპერები. დიახ! ვებ დეველოპერები, [00:07:19] ვებ დეველოპერები, ვებ დეველოპერები, მოუსმინეთ რა თქვენ მიიღეთ დამატებითი ბრალდება, [00:07:28] MS-DOS აღმასრულებელი, დანიშვნის, კალენდრის, ბარათის წყობის, შენიშვნა pad, საათი, პანელი. და შეიძლება თუ არა ეს? Reversie! [00:07:35] ჩაწეროთ ისინი CD, პოსტი მათ MSN, თქვენ პირადია მათ მეგობრებს! [00:07:40] ყველა ერთი დაჭერით! ერთ Microsoft, ერთი სტრატეგია, ერთი team-- ყურადღება, მოწესრიგებული, პროფესიული, ექსპერტი არის ყველა, რომ ჩვენ ვაკეთებთ. მიადევნე თვალი გამოიყენოს ხაზი ძველი ფილმი. [00:07:52] ურთიერთობები, როგორიცაა Sharks. ისინი წინსვლა ან მათ სიკვდილს. მე რეალურად ვფიქრობ, tech კომპანიები იგივეა. [00:08:01] [END ვიდეო აღწარმოების] დევიდ ჯ Malan: ასე რომ, ჩვენ იმდენად სასიამოვნოა, განვაცხადო, რომ სტივ შემოგვიერთდება აქ CS50 შემდეგი ოთხშაბათს ჩვეულებრივი ადგილი და დრო აქ. ფართი იქნება შეზღუდული. და ასე შემოგვიერთდეს პირი, გთხოვთ ხელმძღვანელი დღეს ან ცოტა ხნის შემდეგ to cs50.harvard.edu/register. [00:08:22] და ჩვენ მოჰყვება მიერ სამშაბათი დამადასტურებელი წერტილებით. ველით, რომ მომავალი ოთხშაბათი დროს ლექცია CS50. ახლა კი, სხვა ამბები, მე მოხდა გვხვდება ამ Crimson მხოლოდ მეორე დღეს. [00:08:34] აღმოჩნდება, რომ ერთ-ერთი CS50 პერსონალი და მინიმუმ ერთი CS50 სტუდენტები ამჟამად გაშვებული UC პრეზიდენტი და ვიცე-პრეზიდენტი, რომელიც მომიყვანე უკან ჩემი საკუთარი დღით უკან როცა დაკარგა UC საარჩევნო სავალალოდ. მაგრამ ვერცხლის უგულებელყოფა რომ არის ყოველთვის ვუთხრა ამბავი ის არის, რომ ერთი დარწმუნებული ვარ, ბევრი მიზეზის გამო დაკარგა არჩევნები იყო სრული არარსებობა ნიჭი საჯარო speaking. და საკმაოდ პატიოსნად, ეს წავიდა ჩემთვის, რომ გამოცდილება მე ვფიქრობ, რომ ჩემი უმცროსი წელს, რეალურად მოაწერს მდე ჰარვარდის კომპიუტერული საზოგადოება, რომელიც არის ჯგუფის კამპუსში, რომ ფლობს სხვადასხვა ტექნიკური მოლაპარაკებები და სხვა ნივთები. და მე აიღო მათი სწავლება სემინარები და, შესაბამისად, ჰქონდა შესაძლებლობა, შესანიშნავი შესაძლებლობა, დაიწყოს მუშაობა სწორედ ეს არის. არამედ, მე მქონდა საშუალება ამ გამოცდილების ასწავლიან თავს, მით უფრო HTML. ასე რომ, მე გაჭიანურდა წუხელ მიერ გადახედეთ HTML დაფუძნებული ვებ საიტი მე გააკეთა, როგორიცაა 1997, '98, ჩემი კამპანია, რომელიც ასე გამოიყურება აქ. მე ვიცი. [00:09:29] იმიტომ, რომ, რა თქმა უნდა, ცნობა ამ საოცარი დიზაინი გადაწყვეტილება 1998 ან whatnot. პირველი, რაც თქვენ გჭირდებათ ასაკი უნდა გავაკეთოთ საფუძველზე გამოჩენის თქვენი ვებ საიტი უნდა ჰქონდეს დააწკაპუნეთ ერთი ლინკი მხოლოდ შეიტანეთ თქვენი საიტი აქ ბერი უკან, როგორც მოცული ფარდა, სადაც როგორც ჩანს, ჩემი კამპანიის პლატფორმა. და ეს ყველაფერი თქვენ მიიღებთ დღეს მხოლოდ სკრინშოტი. მაგრამ მე კითხულობს მეშვეობით, როგორიცაა, ჩემი სააგიტაციო პლაკატები წუხელ და ჩემი პლატფორმა. [00:09:50] და მე იმდენად გაბრაზებული დროს. ჩემი პლატფორმა was-- საინტერესო იყო. ასე რომ, მე დაწყნარდა შემდეგ. მაგრამ ოდესმე, მე კენჭს ისევ და იმედია უკეთესი იქნება ამ დროს. [00:10:03] ასე HTML, რომ ენა, რომელიც მე მივიღე რომ in-- თქვენ მალე მიიღოს გაცილებით more-- არის რაღაც ჩვენ ვსაუბრობთ გვიან და უმეტესწილად აღების თავისთავად ახლა რომ ჩვენ გადავიდა სხვა ენებზე. მაგრამ მოდით პაუზის მხოლოდ ერთი წუთით და ბოლო ზოგიერთი რამ კონტექსტში. ასე რომ, სასჯელი, თუ რა არის HTML? [00:10:18] ან, რა არის გამოყენებული? ვინმე? დიახ. [00:10:20] აუდიტორია: Markup საიტებზე. დევიდ ჯ Malan: Markup ვებ. ასე რომ, ეს მარკირებას ენა რომ გაძლევთ სტრუქტურირებაზე ვებ გვერდზე. Header მიდის აქ, სათაური მიდის აქ, სხეულის მიდის აქ. ეს არის boldface, ეს არის italics-- რომ ერთგვარი დეტალურად. [00:10:33] OK, კარგი. ასე CSS საშუალებას you-- და მე რამდენიმე თავისუფლებებს არსებობს თამამი-მოსაპირკეთებელი და კურსივით იმიტომ, რომ უკეთესი განხორციელდა ამ. CSS is-- რა? ამბობენ სასჯელს. არავის საერთოდ. ჰო. [00:10:46] აუდიტორია: Embellishments და პერსონალი, როგორიცაა, თუ როგორ რათა შეიმუშავონ. დევიდ ჯ Malan: OK, კარგი. Embellishments, რომელიც საშუალებას გაძლევთ რათა შეიმუშავონ და stylize ეს რამ, როგორიცაა boldface და კურსივით და ფერები და უფრო მეტი ჯარიმა წვრილმარცვლოვანი წესი ელემენტები. ეს ერთგვარი გაძლევთ რამ ბოლო mile ასე რომ, თუ, მაგალითად, in pset7, თქვენ ალბათ შენიშნა, თქვენი პორტფელის გვერდზე, თუ თქვენ ამ ეტაპზე მეტია, ძირითადად მაგიდასთან რომ თქვენ რათა აჩვენოს მომხმარებლის საფონდო ჰოლდინგის და ფულადი ალბათ გამოიყურება საკმაოდ მახინჯი იყოს ერთად თეთრ სივრცეში. ყველაფერი სახის შეფუთული ერთად რიგები და სვეტები. [00:11:18] ისე, ცოტა CSS, როგორც თქვენ შეიძლება გააცნობიეროთ, თქვენ შეგიძლიათ რეალურად tweak, რომ და ეს რაღაც ბევრად უფრო ნაცნობი და ბევრი გალამაზებაში შევხედოთ. ასე CSS შესახებ სტილიზაცია საიტებზე. მაგრამ მაშინ ჩვენ გააცნო კიდევ ერთი ენის, PHP, რომელიც საშუალებას გვაძლევს რა? [00:11:36] მოდით უბრალოდ, თუ რა? არავის. მიიღო მივცე მიღმა პირველი რამდენიმე რიგები. ჰო. [00:11:40] აუდიტორია: გენერირება დინამიური შინაარსის. დევიდ ჯ Malan: Perfect. გენერირება დინამიური შინაარსის. და თქვენ შეგიძლიათ ამის გაკეთება, ნებისმიერი რაოდენობის ენებზე. ჩვენ არ უნდა გამოვიყენოთ PHP, რადგან ეს ნაწილი ისე, მსგავსი C სინტაქსი. [00:11:50] მაგრამ PHP ზუსტად რომ. ეს გაძლევთ დინამიურად წარმოქმნის გამომავალი. ზოგიერთი რომ გამომავალი შეიძლება იყოს HTML, როგორც ჩვენ, როგორც წესი, უკვე აკეთებს. და ეს ასევე, რადგან ეს პროგრამირების ენა, არის მექანიზმი მეშვეობით რომელიც ჩვენ ვერ გაიგო ბაზაში. [00:12:03] და ჩვენ შეგვიძლია შეკითხვებს სხვა სერვერები, როგორიცაა Yahoos და პროგრამულად არაფრის გაკეთება მართლაც, რომ თქვენ შეიძლება სხვაგვარად მინდა, რათა აიძულოს კომპიუტერი უნდა გააკეთოს. ასე PHP საშუალებას გვაძლევს დაიწყოს დინამიურად outputting შინაარსი. ასე რომ, ამ ლოგიკით, მე არ მაქვს დინამიური ვებ უკან 1998 წელს. [00:12:16] ეს იყო მხოლოდ სტატიკური ვებ-გვერდზე. ჩემი კონტენტი უნდა შეიცვალოს ხელით gedit ან რაღაც ექვივალენტი. მაგრამ PHP არის ის, რაც ჩვენ გამოყენებული ან შეეძლო, უფრო სწორად, რაღაც Frosh მესიჯები ნახვა, რომელიც უნდა მიიღოს რეგისტრაცია და მართვა ჩამონათვალი users-- რამ, რომ რეალურად იცვლება დროს, მიუხედავად იმისა, რომ ჩვენ არ გამოიყენოთ Perl, სხვადასხვა ენის დროს. [00:12:35] და მერე ბოლოს, ჩვენ გააცნო SQL-- სტრუქტურირებული შეკითხვის ენა. ასე კიდევ ერთი ენა რომელიც გამოიყენება რა? გამოიყენება რა? შეგვიძლია მივცე slight-- OK, ჩვენ არ ვაპირებთ კიდევ უფრო შორს ვიდრე ორკესტრისათვის აქ. აუდიტორია: ეს ოქმი გამოიყენება გაიგო ბაზაში. დევიდ ჯ Malan: ოქმი გამოიყენება გაიგო ბაზაში. მიადევნე თვალი tweak. ეს ბუნებრივი ენა გამოიყენება გაიგო, რომ databases-- ირჩევს და ჩანართები და შლის და განახლება და რეალურად კიდევ უფრო მახასიათებლები რომ ჩვენ კი არ საპირისპირო მხარეს შევიდა, მაგრამ თქვენ შეიძლება გსურთ explore-- აქვს შეისწავლონ, ვთქვათ, საბოლოო პროექტი. ასე რომ ამ სხვადასხვა ცალი. [00:13:09] და იმედია pset7, მიუხედავად იმისა, მისი დაზუსტება საკმაოდ ხანგრძლივი, ეს განზრახ ხანგრძლივი ფეხით თქვენ მეშვეობით, თუ როგორ ეს ყველაფერი შეგიძლიათ ყველა აკრეფილი ერთად. ახლა, ორშაბათს, ჩვენ გავაცანით ბოლო ენის ის, რომ ჩვენ ოფიციალურად წარმოგიდგინოთ in რა თქმა უნდა, რომ არის, JavaScript. ეს, როგორც PHP, არის ინტერპრეტირებული ენა. [00:13:25] მაგრამ მთავარი განსხვავება მე შევთავაზე ორშაბათს არის ის, რომ მაშინ, როცა PHP შესრულებაში ან ინტერპრეტაცია სერვერზე, რომელიც ამ შემთხვევაში არის CS50 ელექტრო მოწყობილობების, ან შეიძლება იყოს რაღაც კომერციული ვებ სერვერზე ინტერნეტში, JavaScript ზოგადად არის ენა, რომელიც ეშვება კლიენტის მხარეს არ სერვერზე მხარეს, ასე რომ ბრაუზერში. რაც უნდა ითქვას, ისევე, როგორც, როდესაც გახსნა up Facebook კოდის და ნაპოვნი ყველა იმ .js ფაილი, გავლენა იყო რომ, როდესაც თქვენ ეწვევა Facebook ან ყველაზე საიტებზე ამ დღეებში, თქვენ არა მხოლოდ HTML, არა მხოლოდ CSS, მაგრამ მთელი bunch of JavaScript კოდი ხშირად სახით .js ფაილი. და მაშინ ეს ბრაუზერი საკუთარი Mac ან PC--, რომელიც ახორციელებს, რომ კოდი. [00:14:03] მაგრამ თქვენს ბრაუზერს ახორციელებს. შეგიძლიათ წარმოიდგინოთ, რომ ერთგვარი სავარჯიშოში. ასე რომ JavaScript კოდი არ უნდა იყოს შეუძლია წაშლა ფაილი თქვენს კომპიუტერში. ეს არ უნდა იყოს შეუძლია გაგზავნის წერილებს თქვენი სახელით. თქვენი ბრაუზერის სახის ზღუდავს რა შეგიძლიათ გააკეთოთ ეს. [00:14:17] ასე რომ, ამ თვალსაზრისით, ეს პატარა ნაკლებად ძლიერი, შესაძლოა, მეტი C. მაგრამ JavaScript შეგიძლიათ, როგორც გარდა, უნდა იქნას გამოყენებული სერვერზე, მიუხედავად იმისა, რომ ჩვენ, როგორც წესი, არ გაიგო შესახებ ამ კონტექსტში. ახლა მოდით უსიამოვნოა ამ ერთად. კვირაში პლუს წინ, ჩვენ წარმოადგინა HTML on მარცხენა super მოსაწყენი ვებ გვერდზე. [00:14:34] უბრალოდ ამბობს მიესალმები მსოფლიოში. და მერე შემოთავაზებული მარჯვენა შეგვიძლია სახის იპარავს იდეებს ჩვენი განხილვა მონაცემთა სტრუქტურების C და ვიფიქროთ, როგორ ეს იერარქიული markup ენის მარცხენა შეიძლება შედგენილი და განხორციელებული მეხსიერება როგორც ფაქტობრივი ხე სტრუქტურა კვანძების და მაჩვენებლებისა და იმ სახის დეტალი. მარჯვენა, მოვუწოდებთ რომ DOM-- დოკუმენტი წინააღმდეგი Model-- რომელიც მხოლოდ ლამაზი გზა ამბობდა ხე. [00:14:56] ახლა, რატომ არის ეს სასარგებლო ვფიქრობ, რომ ამ გზით? იმის გამო, რომ ახლა JavaScript, იმიტომ, რომ ჩვენ კოდი, რომელიც იღებს ითამაშოს ამ გარემო, ფაქტობრივი HTML, რომ ის, გაიგზავნა ბრაუზერი უკვე და უკვე ისინი ჩაიტვირთება კომპიუტერის მეხსიერებაში მიერ ბრაუზერი ხე თქვენი კომპიუტერის RAM, როგორც ეს, ჩვენ შეგვიძლია გამოვიყენოთ JavaScript რეალურად გავლის ან ფეხით ან ძიების ან შეიცვალოს, რომ DOM ხე თუმცა ჩვენ გვინდა. ასე რომ, ფაქტობრივად, თუ ფიქრობთ, შესახებ facebook.com, თუ თქვენ იყენებთ სტატისტიკა ფუნქცია, თუ თქვენ გამოყენება Gmail და gchat ფუნქცია არაფერი, სადაც თქვენ უნდა შეტყობინებები მოდის ისევ და ისევ და ისევ, ის გზავნილები, ალბათ, როგორიცაა, LI tag, სია Item tags, იქნებ. [00:15:35] ან იქნებ ისინი უბრალოდ divs, რომ შევინარჩუნოთ გამოჩენა ყოველ დროს, თქვენ შეძლებთ მყისიერი გაგზავნა. და ისე, რომ მხოლოდ იმას ნიშნავს, რა Facebook ან Google აკეთებს არის ნებისმიერ დროს თქვენ შეტყობინება სერვერზე, ისინი ალბათ გამოყენებით JavaScript უბრალოდ დაამატოთ კიდევ ერთი კვანძის ამ ხე კიდევ ერთი კვანძის ამ ხე, რომელიც მაშინ ვიზუალურად გამოიყურება როგორც ახალი ხაზი ტექსტი თქვენს ეკრანზე. მაგრამ ისინი ჩასმა ამ მონაცემების სტრუქტურას. [00:15:57] ასე რომ, კლასები მოსწონს CS124 და სხვები, თქვენ რეალურად წერენ უფრო კოდექსის წინააღმდეგ მონაცემთა სტრუქტურები, როგორიცაა ამ. მაგრამ ახლა JavaScript, ჩვენ მხოლოდ ვივარაუდოთ, ჩვენ ყველა ეს ფუნქცია უფასოდ ენა თავისთავად. მოდით შევხედოთ მაგალითს. [00:16:09] ნება მომეცით გახსენით ფაილი სახელად form.html. ეს სუპერ მარტივი. ეს უბრალოდ ასე გამოიყურება. [00:16:15] არ CSS, არ აზრის ესთეტიკას. ეს წმინდა ფუნქციური და როგორც ჩანს, მე ვარ ითხოვენ ელ, password, პაროლი კიდევ ერთხელ, და შემდეგ გამშვები ვეთანხმები, რამდენიმე პირობებით. რა კოდის ეს ჰგავს ალბათ რაღაც თქვენ ალბათ მიხვდები ერთად ცოტა აზრისა არის. მაქვს ფორმა აქვს აქ. [00:16:32] ქმედება აშკარად აპირებს გადასვლა ფაილის მოუწოდა register.php. მეთოდი მე ვაპირებ გამოიყენოთ მიიღოს. და შემდეგ მე მივიღე ტექსტი სფეროში რომლის სახელიც ელ. [00:16:40] მაქვს დაგავიწყდათ ველი რომლის სახელი პაროლი. მაქვს სხვა დაგავიწყდათ სფეროში, რომლის სახელი გარკვეულწილად თვითნებურად დადასტურებას. ეს არის კიდევ ერთი HTTP პარამეტრი. [00:16:49] და მაშინ ჩვენ ჩვენ არ გამოიყენება ამ გარდა მას შემდეგ, რაც Frosh მესიჯები დემო class-- თოლიას, რომელიც უბრალოდ ტიპის შეადგენს ქვითარი. და მე მოვუწოდებ, რომ შეთანხმებას. ასე რომ მე სახის თვითნებურად, მაგრამ მოხერხებულად დაასახელა ამ სფეროებში. ასე რომ ახლა, როდესაც ამ ფორმით იღებს წარმოდგენილი, ვნახოთ, რა მოხდება. თუ ამის გაკეთება malan@harvard.edu, მე გავაკეთებ დაგავიწყდათ ჟოლოსფერი. მე გავაკეთებ დაგავიწყდათ არაფერი. მოდით არ ითანამშრომლოს. [00:17:10] და მე არ შეამოწმოთ ყუთი. ნება მომეცით დააჭირეთ რეგისტრაცია. და ამბობს, რომ hm, თქვენ არ არის რეგისტრირებული. ნამდვილად არ. [00:17:16] მაგრამ URL შეიცვალა. ასე რომ, ეს ფორმა აშკარად დაშვებული წარუდგინოს register.php. თუმცა, სავარაუდოდ, მე უნდა catching ზოგიერთი შეცდომები. ახლა, pset7 და ზოგიერთი ჩვენი ლექციების მაგალითები, ჩვენ, როგორც წესი, ამობეჭდოთ დიდი წითელი შეცდომა, აქ განაცხადა, რომ დაკარგული სახელი, ან დაკარგული პაროლი. ჩვენ გავაკეთეთ, რომ ადრე და ჩვენ გაკეთდა სერვერზე შეცდომების გამოვლენის. [00:17:37] მაგრამ ბევრი საიტებზე ამ დღეებში გავაკეთოთ კლიენტის მხარეს შეცდომების გამოვლენის, სადაც URL არ იცვლება. მთელი გვერდი არ განახლდა. თქვენ მიიღებთ მყისიერი კავშირი საწყისი ბრაუზერში. შესაძლოა, რაღაც მიდის წითელი. [00:17:48] იქნებ კიდევ პოპ up. მაგრამ თქვენ არ დაგვრჩა დრო გაგზავნის სერვერზე მონაცემების, რომ ეს არასრული. მოდით ვნახოთ, თუ როგორ შეიძლება მიღწევა, რომ ფუნქცია, ასევე. [00:17:56] ნება მომეცით წასვლა form1.html, რომელიც გამოიყურება იგივე. მაგრამ თუ ამ დროს გავაკეთო malan@harvard.edu და მე აკრიფოთ ჟოლოსფერი და მე არ შემდგომი თანამშრომლობის მაგრამ დააჭირეთ რეგისტრაცია, შეამჩნევთ. ეს არ არის ყველაზე სექსუალური გადაწყვეტა. მე მინიმუმ დაიჭირეს ეს შეცდომა. და მე გამოიყენება მზადყოფნაში ფუნქცია JavaScript-- რომელიც ჩვენ მხოლოდ გამოყენებით კლასში. ზოგადად, თქვენ არ უნდა გამოიყენოს ეს იმიტომ, რომ ეს შეიძლება ძალიან სწრაფად გავიდნენ კონტროლი. მაგრამ პაროლები არ ემთხვევა არის შეცდომა. [00:18:19] ნება მომეცით წავიდეთ წინ და დააჭირეთ OK. მაგრამ რა გასაღები takeaway აქ ის არის, რომ URL არ შეცვლილა. ასე რომ, მე არ აწუხებს გაყვანაა სერვერის დროს ითხოვს კითხვა რომ შემეძლო figured out პასუხი თავს. [00:18:30] და მომხმარებელი, მიუხედავად იმისა, ვსაუბრობთ ამ უმეტეს მომხმარებლის აპირებს ფიქრი, აპირებს მყისიერი კავშირი. არ არსებობს შეყოვნება ქსელის კავშირი. მოდით შევხედოთ ამ კოდის. [00:18:40] Form1.html გამოიყურება სტრუქტურულად მსგავსი აქ. სახით, ფაქტობრივად, ერთი და იგივე. მაგრამ ვნახოთ, რა გავაკეთე ქვემოთ აქ. და არსებობს სხვადასხვა გზა ამის გაკეთება. და მე ვაკეთებ ყველაზე სწორი მიმდევარი, მაგრამ არა ყველაზე ელეგანტური გზა არ არის. მაქვს სცენარი აქვს. მე მაშინ მოვუწოდებთ document.getElementByID (რეგისტრაციის). მე და შესანახად, რომ ღირებულება ფორმა, ცვლადი. [00:19:04] ასე რომ, რა ჩავიდინე? შეგიძლიათ წარმოიდგინოთ, document.getElementByID როგორც სპეციალურ ფუნქციას, რომელიც JavaScript გაძლევთ რომ ფაქტიურად ხელში თქვენ მომცეთ ერთი კვანძების ან ოთხკუთხედს ამ ხეს. ასე რომ, ახლა არის ის, რაც ჩვენს ფორმით ცვლადი in JavaScript რეალურად მიუთითებს. [00:19:21] ასე რომ, ახლა სინტაქსი განსხვავდება C. მაგრამ ჩვენ ვაკეთებთ არის რამდენიმე რამ აქ. ერთი, ეს ცოტა უცნაურია, ეძებს, რა თქმა უნდა წინააღმდეგ C. მაგრამ შევხედოთ ხაზი 35. ასე რომ მარცხენა form.onsubmit. შეგახსენებთ, რომ onsubmit არის მოსწონს სფეროში struct. თუ ფიქრობთ, რომ ფორმის ცვლადი არის მხოლოდ იმიტომ, რომ C struct, ეს შესაძლოა გარკვეულ სფეროებში. [00:19:42] უკან დღეს, ჩვენ გვქონდა სტუდენტები, სახელები, პირადობის დამადასტურებელი მოწმობა, სახლები, იმ სახის სფეროებში. უბრალოდ ვფიქრობ onsubmit როგორც სხვა სფეროში. მაგრამ ეს სპეციალური ველი, რადგან ბრაუზერის წინასწარ უნდა ველოდოთ .onsubmit არ უნდა იყოს არც ისევე როგორც მთელი რიგი ან ტექსტი, მაგრამ რეალურად იყოს ფუნქცია ან მისამართი ფუნქცია კომპიუტერის მეხსიერებაში. [00:20:02] და მართლაც, ის, რაც ამ სიტყვით აქ აკეთებს. ეს ამბობს, მომეცი ახალი ფუნქცია. მაგრამ რა არის მისი სახელი იქნება, როგორც ჩანს? [00:20:09] ფიქრი თავში ორშაბათს. რა არის სახელი ამ ფუნქციის საფუძველზე ეს სინტაქსი? არა, მე ვგულისხმობ, რომ აშკარად no name associated-- რა თქმა უნდა, არ რა მე ხაზგასმით აქ. [00:20:21] მაგრამ ეს რეალურად OK. ეს არის ანონიმური ფუნქცია, ან lambda ფუნქცია, ზოგიერთი შეიძლება ეძახით. და რომ მხოლოდ იმას ნიშნავს, ეს ჯერ კიდევ ფუნქცია. უბრალოდ, არ შეიძლება უწოდო მას სახელი. მაგრამ ეს OK. იმიტომ, რომ კიდევ ერთხელ, ბრაუზერის წინასწარ კომპანიების მიერ, როგორიცაა Google ან Microsoft ან Mozilla ან სხვა უბრალოდ ვიცი, რომ თუ .onsubmit სფეროში შიგნით ფორმა ელემენტს აქვს ღირებულება, მკურნალობა, როგორც ფუნქცია ფუნქციის მაჩვენებელი, თუ გნებავთ. და მას, როდესაც ფორმით წარედგინება. [00:20:46] ასე რომ, რა კოდი უნდა განხორციელდეს როდესაც სახით არის წარმოდგენილი? როგორც ჩანს, ყველაფერი შიგნით Curly გაუწიოს. და ეს მხოლოდ სტილისტური. [00:20:53] თქვენ შეიძლება ამის გაკეთება, როგორიცაა ჩვენ, როგორც წესი, ამის გაკეთება CS50. მაგრამ JavaScript, ყველაზე ხალხი ტენდენცია შენარჩუნება, იგივე ხაზი მხოლოდ იმიტომ, რომ უფრო ნათლად არის უკავშირდება, რომ სიტყვით ფუნქცია. ახლა რა ვარ მე აკეთებს? [00:21:03] თუ form.email.value შეადგენს შეადგენს ცარიელი სიმებიანი ან არაფერი, აქ მზადყოფნაში, სადაც მე ვაპირებ ვთქვა, თქვენ უნდა უზრუნველყოს თქვენი ელექტრონული ფოსტის მისამართი, და შემდეგ დაბრუნების ცრუ. და ის არის, რომ სანაცვლოდ ყალბი რომ ხელს უშლის ფორმით მიმდინარეობს წარმოდგენილი. ამასობაში, თუ დაგავიწყდათ არც ცარიელი, მე ვაპირებ დაწეროთ შესახებ და ამბობენ, რომ, თქვენ უნდა უზრუნველყოს პაროლით. [00:21:21] ამასობაში რამ მისაღებად პატარა fancier აქ. თუ form.password.value არ თანაბარი form.confirmation.value, სხვა სფეროში, დაწეროთ შესახებ, რომ პაროლები არ ემთხვევა, რადგან ისინი არ მომენტში წინ. და შემდეგ ამ ერთი პატარა sexier იმიტომ, რომ მე ვიცი, ვიცოდი, კონცეპტუალურად რომ არის გადამოწმებული თოლიას სახელი. [00:21:40] ასე, რომ შეიძლება უბრალოდ გამოიყენოთ ძახილის წერტილი ვთქვა, თუ ქვითარი არ არის მოწმდება ის ლოგიკური ღირებულება, true ან false მე დაწეროთ ზე მომხმარებლის მიზეზით. წინააღმდეგ შემთხვევაში, თუ მივიღებთ მეშვეობით ყველა ამ პირობებში, მოდით უბრალოდ დააბრუნოს ჭეშმარიტი. მიადევნე სახით იქნება წარმოდგენილი. და ეს მაშინ მოხდება. [00:21:56] მოდით აკრიფოთ ჟოლოსფერი. მოდით შეამოწმეთ ყუთი, დააჭირეთ რეგისტრაცია. და ახლა მე გავლა დანიშნულების. ახლა, არ არსებობს ბაზაში. იქ არაფერი საინტერესო in register.php. უბრალოდ საჭიროა რაღაც რეალურად გაიგო. ნება მომეცით პაუზის აქ. ნებისმიერი შეკითხვა, რაც ჩვენ უბრალოდ გაკეთდეს ან რასაც ზოგიერთი ამ ახალი სინტაქსი? OK, yeah? [00:22:17] აუდიტორია: ასე რომ ნებისმიერი ჩამრთველი ავტომატურად ლოგიკური. თქვენ არ უნდა განაცხადოს, რომ. [00:22:21] დევიდ ჯ Malan: სწორი. ნებისმიერი ჩამრთველი რომ გაეგზავნა თქვენ HTML ფორმა თქვენი JavaScript კოდი იქნება დამუშავებული, დიახ, როგორც ლოგიკური ღირებულება ჭეშმარიტი ან ცრუ. ეს კარგი კითხვაა. ხოლო სხვა ღირებულებებს, რა თქმა უნდა, არ იყო ტექსტი, AKA strings. [00:22:36] ყველა უფლება, ნება მომეცით გადახვევა ცოტა შემდგომი. რა იყო მთელი წერტილი ამ? უბრალოდ უნდა იყოს მკაფიო. როგორიცაა, ჩვენ უკვე ვიცით, თუნდაც pset7 და კიდევ გასულ კვირას ლექცია მაგალითები, რომ ჩვენ შეგვიძლია აშკარად სანახავად $ _GET $ _POST, რომ მომხმარებლის მოგვცეს ცარიელი ღირებულება. დამახსოვრება ცარიელი ფუნქცია PHP. [00:22:54] ასე რომ, უბრალოდ უნდა იყოს მკაფიო, რა არის ერთ-ერთი მიზეზი შესაძლოა ასევე გვინდა, რომ ეს შეცდომა შემოწმების შიგნით ბრაუზერში? რა მოტივაცია აქ? ჰო. [00:23:06] აუდიტორია: Faster, და თქვენ არ გაუგზავნე უსარგებლო მონაცემების სერვერზე. დევიდ ჯ Malan: კარგი. ეს სწრაფად. თქვენ არ გაგზავნის აზრი მონაცემების სერვერზე. [00:23:12] ასე რომ თქვენ დავუბრუნდეთ მეტი დაუყოვნებლივ რეაგირებას. და საერთო ჯამში, მომხმარებელს გამოცდილება უკეთესია. ვიფიქროთ ალტერნატივა. [00:23:17] თუ Gmail-- და იმ შემთხვევაში, მრავალი წლის წინ. დავუშვათ, თქვენ გაქვთ ახალი ელ თქვენი Gmail ანგარიში, მაგრამ ერთადერთი გზა, ვხედავთ, რომ არის, ისევე, განაახლეთ მთელი გვერდი. ან დავუშვათ თქვენ დააჭირეთ ბმული წაიკითხა ელ. [00:23:29] ყველაფერი განაახლეთ ასე რომ თქვენ ხედავთ, ელ. ან Facebook-- თქვენ ჩატში გაგზავნა. თქვენ ვერ ვხედავ, სანამ თქვენ განაახლეთ გვერდზე, ან დააწკაპუნეთ ზოგიერთი ბმული. [00:23:36] ისევე, როგორც ეს იქნებოდა, საშინლად შემაშფოთებელი მომხმარებლის, გამოცდილება. და ეს არის ის, რაც იყო, ნათლად, როდესაც მე გაიქცა UC და ვებ ბევრად ნაკლებად დინამიური და JavaScript არ იყო, როგორც პოპულარიზაცია როგორც ეს არის. და რამ იღებენ ბევრად უფრო დინამიური და ბევრად უფრო კლიენტის მხარეს ამ თვალსაზრისით. [00:23:49] მაგრამ არის დაჭერა აქ და ეს არის ერთგვარი შემაშფოთებელი gotcha. მხოლოდ იმიტომ, რომ თქვენ დაამატოთ კლიენტის მხარეს გამოვლენის, როგორც ეს იმას არ ნიშნავს, თქვენ შეგიძლიათ ან უარი თქვას სერვერის მხარეს გამოვლენა. თქვენ ნამდვილად გვინდა, რომ თქვენი შეცდომების შემოწმების ორივე ადგილებში. რადგან ის, რაც ერთ-ერთი იყო გაკვეთილი ვისწავლეთ სტატია წავიკითხე ნაწყვეტები საწყისი ამ სულელური CMS სისტემა ინფორმაციის მართვის სისტემა, რომელიც იყო ახორციელებს ამოცნობის სისტემა, მისი შესვლის მეშვეობით რა მექანიზმით? JavaScript. [00:24:20] აუდიტორია: JavaScript. დევიდ ჯ Malan: JavaScript, ზუსტად, არა? ის გამოყენებით JavaScript. და ფაქტიურად, თქვენ ბიჭები ითამაშა ცოტა ალბათ ერთად Chrome- ს ინსპექტორი. და თუ შემიძლია ის, შეამოწმოს ელემენტს. [00:24:30] ნება მომეცით წასვლა მეტი უნდა გააკეთოს ყველა Chrome პარამეტრები. და ეს არის, თუ როგორ ადვილი არის გათიშე JavaScript ბრაუზერში. შეამოწმეთ, აღარ JavaScript. [00:24:38] ასე რომ, სამართლიანობა, ბევრი ვებ ამ დღეებში უბრალოდ აპირებს დაარღვიოს, რადგან Gmail და სხვა sites-- Facebook-- ვივარაუდოთ, რომ JavaScript ჩართულია. მაგრამ თუ თქვენ აკეთებთ რაღაც სულელური ისევე, როგორც მხოლოდ შემოწმების მომხმარებლებს შეყვანის და შემოწმების ეს შეცდომები კლიენტის მხარეს, მოწინააღმდეგის ადვილად შეიძლება ამის გაკეთება. შემდეგ კი მსოფლიოს სასურველი სტუმარი გახდებით მოწინააღმდეგის, როგორც თქვენ ბიჭები ახლა შეიძლება გამოიყენოთ Telnet ან Curl ან უბრალოდ ბრძანების ბრძანებები და რეალურად შეტყობინებები სერვერზე რომ ანალოგიურად არ შეცდომა შემოწმება. [00:25:05] ასე რომ, ეს არის უფრო ინტერფეისი გადაწყვეტილება ვიდრე ეს არის ფაქტობრივი ტექნიკური improvement-- ახორციელებს რაღაც კლიენტის მხარეს მოსწონს ეს. ასე რომ, ახლა ერთი შეხედვით სწრაფად, მაგრამ შემდეგ მე თვლიან, ონლაინ გარეშე მეშვეობით ეს ერთი. ფორმა ორი, ჩვენ რეალურად გაიარა და გაიწმინდოს კოდი ცოტა. მაგრამ ნება მომეცით მორჩილების ერთ-ერთი ვიდეო ჩვენ სავარაუდოდ embed in pset8 რომ მხოლოდ გიჩვენებთ მსგავსი სინტაქსი გამოყენებით ბიბლიოთეკა მოუწოდა jQuery, რომელიც სუპერ, სუპერ პოპულარული ბიბლიოთეკა JavaScript რომ გულწრფელად ყველაზე ხალხი უბრალოდ გამოიყენოთ ამ დღეებში და კიდევ აღრეული, როგორც ყოფნა JavaScript თავად. [00:25:37] და ეს ტენდენცია გულისხმობს ზოგიერთი დოლარის ნიშნები და სიტყვა, როგორიცაა დოკუმენტი ფრჩხილებში აქ. მაგრამ კიდევ ერთხელ, ნება მომეცით თვლიან ზოგიერთი ნელა გაკვეთილები ონლაინ ნაცვლად იმისა, რომ გაყინული მხოლოდ სინტაქსი. მოდით გადაადგილება, რათა რაღაც პატარა ქულერი თვალსაზრისით განაცხადების ამ. [00:25:50] ასე რომ, კერძოდ, ნება მომეცით წავიდეთ წინ და გახსენით ეს აქ. მოდის. იქ ჩვენ წავიდეთ. [00:25:59] ნება მომეცით გახსენით ამ სურათს აქ. ზედმეტად გართულებულია ეძებს, მაგრამ ის აღწერს ტექნიკა მოუწოდა AJAX-- ასინქრონული JavaScript და XML, სადაც X for XML ფაქტიურად აღარ იყენებდნენ. ის აპირებს გამოიყენოს რაღაც სხვა მოუწოდა JSON. [00:26:13] მაგრამ აქ არის თუ როგორ რაღაც მსგავსი Google Maps ან Google Earth მუშაობს. მოდით ცდილობენ ამ on the fly, რეალურად. ნება მომეცით წავიდეთ წინ და გახსნა up Chrome ჩემს ბრაუზერში. [00:26:21] და ნება მომეცით წასვლას, ამბობენ, maps.google.com. და რეალურად, თუ თქვენ წლის საკმარისია გავიხსენოთ, რა, როგორიცაა, MapQuest იყო, როგორიც უკან დღეს, და შესაძლოა მათ მაინც მუშაობს. როდესაც თქვენ მოძიება რაღაც 33 Oxford Street, კემბრიჯის, მასობრივი, მოდით ამის გაკეთება თქვენ რეალურად, თუ სასურველი პან და down, მარცხენა და მარჯვენა, თქვენ ჰგავს დიდი ისარი ზევით, და ეს რომელიც აჩვენებს, თუ სხვა ფარგლებში რუკაზე აქ. ან თქვენ დააჭირეთ მარცხენა და თქვენ წავიდოდა აქ, ან სხვა click და თქვენ გადასვლა ზე მეტი აქ. მაგრამ ნაცვლად ეს დღის განმავლობაში, ჩვენ, რა თქმა უნდა, ისევე, თავისთავად, რომ ჩვენ შეგვიძლია წავიდეთ გარშემო Cambridge საკმაოდ სწრაფად უბრალოდ დაჭერით და აჭიანურებენ. მაგრამ შეამჩნია, რომ არსებობს რამდენიმე glitches. [00:26:59] თუ ამის გაკეთება სწრაფი საკმარისი, რაც, როგორც ჩანს, ხდება როგორც მე გადაიტანეთ ცოტა სწრაფად კომპიუტერი შეინარჩუნოს? რას ხედავთ? ჰო. [00:27:07] აუდიტორია: pixels არ ცარიელია. დევიდ ჯ Malan: pixels არ ცარიელია. არსებობს რეალურად და ვერ ვხედავ ამ, ფაქტობრივად, თუ თქვენ თვალს ონლაინ და პაუზა ამ და რეალურად ანელებს რამ ქვემოთ for once-- დაინახავთ, რომ არსებობს ფილები, მოედნების, ან ოთხკუთხედს, რომ არ გვყოფნის რუკაზე, სანამ გაყოფილი მეორე მოგვიანებით, მეტი მონაცემები, მეტი სურათები რეალურად ეკრანზე გამოჩნდება. და რეალურად, თუ ჩვენ მიერ ეძებს up Chrome's-- ვთქვათ, Chrome-- ვნახოთ. ჩვენ არ შეგვიძლია გავაკეთოთ, რომ. [00:27:31] Oh, whoops. მოდით გახსენით maps.google.com. ნება მომეცით მიიღოს window დიდი ერთხელ. [00:27:36] დაბრუნება 33 Oxford Street. რა იყო საიტი ვიყავი ცოტა ხნის წინ? მე მქონდა ეს, ისევე, როგორც კერძო rant to თავს, რომ მინდა მაშინ მყისიერი გაგზავნა ნებისმიერი მეგობართან ონლაინ ვისაც სურდა მოვისმინოთ იგი. არსებობს გარკვეული საიტზე. მე ვფიქრობ, რომ Comcast-- ასე ძალიან დიდი American ISP. შეგიძლიათ, როდესაც ხელმოწერის მდე საკაბელო მოდემი მომსახურების ან საკაბელო ტელევიზიის, მათ აქვთ ფორმა ძალიან გონივრულად სადაც ისინი გკითხოთ თქვენი მისამართზე. და ამ საოცარი ფუნქცია მოუწოდა სრული ავტომატური, როგორიცაა Google, რომელიც იწყებს შეავსოთ პასუხი თქვენს კითხვაზე. [00:28:04] პრობლემა ის არის, რომ მათ ამის გაკეთება ავტომატურად სრული პირველი რამ, რომ თქვენ ტიპის. ასე რომ, თუ თქვენ დაიწყება აკრეფით 33, ის გაჩვენებთ ფაქტიურად ყველა სახლში ამერიკაში, რომელიც იწყება რაოდენობის 33 სანამ გრძელდება ველით თქვენ აკრიფოთ მეტი. ასე რომ, თუ თქვენ ტიპის 33 Oxford, მაშინ იგი გვიჩვენებს თქვენ ყველა ქუჩა ამერიკაში, რომ 33 ოქსფორდში მისი სახელი, მიუხედავად იმისა, ქალაქის რომ თქვენ. [00:28:25] და მაშინ აგრძელებენ აკრეფით. და ბოლოს, ის აცნობიერებს, რომ ისინი არ გთავაზობთ მომსახურების თქვენს სახლში Cambridge ან რამე მაგდაგვარს. მაგრამ საქმე ის არის, რომ ეს არის ყველაზე asinine განხორციელების განცხადება შეავსოთ ოდესმე. [00:28:34] და მე უბრალოდ აპირებს off ამ მხები ერთხელ. მაგრამ არსებობს კარგი გზა გამოყენება JavaScript და ცუდი გზები. და ეს არ არის აუცილებლად საუკეთესო. [00:28:40] მაგრამ საქმე ისაა, რომ, სანამ ეს tirade, იყო გახსნას ინსტრუმენტები ქვემოთ აქ და ქმნის დეველოპერი ინსტრუმენტები, როგორც ჩვენ წახალისება ადრე, და უყუროთ ქსელი tab მე დააწკაპუნეთ მართლაც სწრაფი. და შეამჩნია მთელი bunch მისაღებად მოთხოვნა მოხდა. ეს ყველაფერი მოხდა მას შემდეგ, რაც მე გამოათრიეს. [00:28:57] და სავარაუდოდ, მართლაც ბევრი ამ სტრიქონების ახლა არის გამოსახულება slash JPEG MIME ტიპის ან შინაარსის ტიპის. ეს იმიტომ, რომ ის, რაც Chrome აკეთებს ყოველ ჯერზე მე დაწკაპეთ და გადაიტანეთ, დააჭირეთ და გადაიტანეთ, არის ის, ხვდებიან, მე, უნდა წავიდეს ვთხოვთ Google ფილა რუკაზე რომ მეტი აქ, სწრაფად გადმოწეროთ მეშვეობით HTTP, და შემდეგ დაამატოთ ეს ე.წ. DOM ვებ ბრაუზერები მეხსიერება ხე წარმომადგენლობა ისე, რომ მომხმარებელს, ჩემთვის, ხედავს, რომ განახლება ფილა. და ეს იმიტომ, რომ ტექნიკა მოუწოდა AJAX. უკან დღეში, ეს ნამდვილად იყო შემთხვევა, რომ თუ უნდოდა, რომ შეიცვალოს რა არის ეკრანზე, თქვენ უნდა დააწკაპუნეთ up, down, მარცხნივ, უფლება. და შემდეგ ახალი გვერდი არ გახსნა. მაგრამ ამ დღეებში, ყველაფერი უფრო დინამიური. ეს ხდება ისე, როგორც ჩვენ ადამიანები რომ იმედი მაქვს, რომ რეალურად ინტერაქტიულად. და აღწევს ეს გზა ტექნიკით მოუწოდა AJAX, რომელიც ალბათ საუკეთესო ამით აიხსნება მაგალითად. პირველ რიგში, ნება მომეცით წავიდეთ წინ და გახსენით ფაილი მოუწოდა quote.php in დღევანდელი განაწილების კოდი. [00:29:53] და მაშინ ნება მომეცით გავაკეთოთ სიმბოლო whoops. ნება მომეცით ამის სიმბოლო = GOOG მხოლოდ რამდენიმე საფონდო. ან რეალურად, მოდით ერთი Pset უფასო. შევა. [00:30:05] და ახლა შეამჩნია, რაც მე უკან. ასე რომ, ეს არის ძალიან მოკლე PHP ფაილი, რომელიც მე წერდა, რომ უბრალოდ იღებს კოდი საწყისი pset7 ის საძიებელი ფუნქცია და SpitS გამოყენებით ამ Curly გაუწიოს და შეთავაზებები და მსხვილი ნაწლავის ნოტაცია, როგორც ჩანს, მიმდინარე აქციების ფასი კომპანია, რომ თქვენ გაივლის მეშვეობით მისაღებად. ასე რომ ეს არის სხვადასხვა ყველაზე მეტად, რაც ჩვენ გაკეთდეს, რომ გაფრთხილების ვარ ფაქტიურად spitting გარეთ როგორც ჩანს, JavaScript კოდი. [00:30:27] ფაქტობრივად, ეს არის JavaScript ობიექტი. სინამდვილეში, უბრალოდ უნდა იყოს უფრო მკაფიო, JavaScript Object Notation-- JSON-- მხოლოდ ლამაზი გზა ამბობდა, რომ თქვენ შეიძლება წარმოადგენდეს მონაცემები JavaScript ბევრად როგორც თქვენ შეგიძლიათ PHP გამოყენებით გასაღები ღირებულება წყვილი. ასე რომ, თუ მინდოდა განაცხადოს ცვლადი JavaScript რომ წარმოადგენს Zamyla, for instance-- struct ამისთვის Zamyla-- და ჩვენ მას აბიტურიენტი, ეს ცვლადი. მისი ID არის ერთი, ბინა არის WINTHROP, და სახელი Zamyla. [00:30:53] მაგრამ მე ასევე შეუძლია მასივი ობიექტები. ასე რომ, თუ მე რეალურად სურდა აქვს როდის JavaScript შეიცავს მრავალჯერადი ასეთი ობიექტები, ამ დრო წარმოადგენს თანამშრომლები, მე შეიძლება ამ სამი მოცულობით კოდი უკან თავში დაბრუნება ამ სამი ყოფილი თანამშრომელი. ასე რომ, სინტაქსი, საკმაოდ მსგავსი both-- PHP. მაგრამ ეს განსაკუთრებით JavaScript. ეს ობიექტი notation. რა არის ეს სასარგებლო? [00:31:17] თუ ვწერ კოდი, რომელიც spits JSON-- JavaScript Object Notation-- პერსონალი, ასე გამოიყურება და პერსონალი, ჰგავს Zamyla სტრუქტურა, მე შემიძლია რეალურად გამოიყენოს ეს პროგრამების ვწერ. ნება მომეცით წასვლა ajax0.html. და ეს too-- დიდად არ ეგონა მიცემული ესთეტიკას. მაგრამ ფრთხილად, რა მოხდება. [00:31:34] ნება მომეცით წავიდეთ წინ და ტიპის free აქ. დააწკაპუნეთ მისაღებად ციტირებით. და შეამჩნია URL არ შეცვლილა. მაგრამ მე კიდევ pop up აშკარად დღეს Penny საფონდო ფასი $ 0.15. ასე არ არის, რომ ცუდი. მაგრამ განსხვავება ის არის, რომ რატომღაც, ეს მონაცემები დაბრუნდა ჩემთან პირდაპირ. მაგრამ ავიღოთ ნაბიჯი რაღაც უფრო იცნობს. ერთი ვერსია ამ, ნება მომეცით ჩაწერეთ უფასო კვლავ, დააჭირეთ Get გაცემა, და ახლა, ო, ეს იყო რეალურად jQuery ვერსია. ასე ნება მომეცით, მე არ სწრაფად წინ საკმაოდ შორს საკმარისი. ნება მომეცით წასვლა ორი ვერსია, სადაც მე მინდოდა. შეამჩნია რა მე ვაკეთებ აქ. მაქვს ვებ page-- სუპერ მარტივი ვერსია ნებისმიერ ვებ გვერდზე თქვენ შეიძლება გამოიყენოთ დღეს ველში აქ უფასოდ და შემდეგ, როგორც ჩანს, მხოლოდ ტექსტი. [00:32:14] ეს ფორმა არ არის აქ, როგორც ჩანს. მაგრამ თუ მე დააწკაპუნეთ მიიღოს გაცემა, შეამჩნია ჩემი ვებ გვერდი არის შეცვალოს თითქოს მე უბრალოდ მიიღო ახალი მყისიერი გაგზავნა ან თითქოს მე უბრალოდ გადავიდა რუკა და საჭიროა მიიღოთ მეტი მონაცემები დამატებული დინამიურად ვებ გვერდზე გარეშე URL იცვლება და მომხმარებელს გამოცდილება მიღების გაწყდება. რა თქმა უნდა, მე ჯერ კიდევ ზუსტად იგივე place-- ajax2.html. [00:32:35] მოდით შევხედოთ მხოლოდ ამ მაგალითს და ვნახოთ, როგორ ხდება ეს. ნება მომეცით წასვლას ajax2.html. და შეამჩნია ფორმა პირველი. [00:32:44] აქ, მე გარდამტეხი off სრული ავტომატური. ზოგჯერ იგი იღებს შემაშფოთებელი თუ ბრაუზერი ცდილობს გაჩვენებთ მთელი ისტორიის მანძილზე. ასე რომ თქვენ შეგიძლიათ ეს გააკეთოთ HTML მიერ უბრალოდ ვამბობ, ავტო სრული off. [00:32:53] მე, ამ ველში სიმბოლო, არამედ, ID სიმბოლო. და ახლა, ეს არის საინტერესო ფუნქცია. ჩვენ არ ისაუბრა span, მაგრამ თქვენ შეიძლება ვიფიქროთ, რომ ეს როგორიცაა პუნქტის tag ან div tag. ეს არის ის, რაც ე.წ. in-line ელემენტი, რომელიც ნიშნავს, რომ თქვენ ვერ მიიღებთ, პუნქტი შესვენება ზემოთ და ქვემოთ. ეს მხოლოდ აპირებს დარჩენას-line გარეშე დარტყმის ექვივალენტი შევა. ასე მივეცი ბლოკი HTML უნდა განისაზღვროს, უნიკალური იდენტიფიკატორი რომ მე თვითნებურად მოუწოდა ფასად. და მე უნდა წარმოადგინოს ღილაკს. [00:33:21] იმის გამო, რომ ახლა აქ და ეს არის ფაქტიურად სუპერ საინტერესოა, როგორ პატარა კოდი თქვენ შეგიძლიათ წერა შედარებით სუფთა რამ შეამჩნია რა მე ვაკეთებ აქ თუ მე გადახვევა მდე ხელმძღვანელი ამ გვერდზე. მე მოიცავდა პირველი ჩემი უფროსი სცენარი აქვს რომ რეალურად ცნობას JavaScript ფაილი სხვაგან. ეს არის ორგანიზაცია რომ წერს jQuery, და ეს მხოლოდ გაძლევთ უახლესი ვერსია მათი jQuery ბიბლიოთეკა. [00:33:42] ასე რომ, ეს არის ის, რომ მწვავე მოიცავს C ან მოითხოვს PHP. თქვენ იყენებთ სცენარი აქვს წყარო ატრიბუტი. მაგრამ ახლა ჩემი საკუთარი კოდი არის იქნება უფლება აქ. [00:33:52] შეამჩნია მაქვს ფუნქცია მოუწოდა შეთავაზებები. და იგი გამოიყურება ცოტა cryptic ერთი შეხედვით. მაგრამ მოდით აჯავრებენ ამ გარდა. მომეცი ცვლადში URL. მივანიჭოთ მას ფაქტიურად ეს კონტექსტი. ასე რომ, ერთ შეთავაზებები, ორმაგი შეთავაზებები JavaScript მხოლოდ მაძლევს სიმებიანი. რას პლუს გავაკეთოთ? გაერთიანების. [00:34:08] ასე რომ, ეს ახლა არის jQuery სინტაქსის რომელიც იღებს პატარა შეგუება. მაგრამ ეს მხოლოდ იმას ნიშნავს, წავიდეთ მისაღებად ჩემთვის DOM კვანძის რომლის უნიკალური იდენტიფიკატორი არის სიმბოლო. Hashtag არ ნიშნავს, უნიკალური იდენტიფიკატორი სიმბოლო. [00:34:21] დოლარის ნიშანი ბრჭყალების უბრალოდ ნიშნავს, გადაიტანოთ ეს in jQuery ერთგვარი საიდუმლო სოუსით ასე თქვენ მიიღებთ დამატებით ფუნქციებს. და შემდეგ .val, როგორც ჩანს, ფუნქცია, ან, როგორც ჩვენ ვამბობთ, ახლა, მეთოდი შიგნით ამ კვანძის რომ მხოლოდ გაძლევთ ღირებულება. მოკლედ, მახინჯი და გაუგებარია როგორც ეს ჩანს ერთი შეხედვით, ეს მხოლოდ იმას ნიშნავს, მიიღოს მომხმარებლის აკრეფილი , დააყენა ბოლოს სიმებიანი მიერ concatenating იგი. ეს ყველაფერი. [00:34:43] ახლა, ბოლო სამი ხაზები. შეგიძლიათ შესუსტებას ბევრი ფუნქციონალური სამი ხაზები. ეს დოლარის ნიშანი, როგორც გათვალისწინებულია, მხოლოდ მეტსახელი სპეციალური გლობალური ცვლადი მოუწოდა ფაქტიურად jQuery. [00:34:55] დოლარის ნიშანი გამოიყურება cool. ასე რომ jQuery საზოგადოების მხოლოდ სახის გამოიყენება, როგორც მათი სპეციალური სიმბოლო. ეს იმას არ ნიშნავს, რას ნიშნავს PHP. JavaScript, დოლარის ნიშანი არის ისევე წერილი ანბანი ან რაოდენობის ცვლადი. [00:35:07] შეგიძლიათ უბრალოდ, როგორც სახელი. უბრალოდ გამოიყურება cool. ასე რომ, საზოგადოების მიიღო მეტსახელი საკუთარი ბიბლიოთეკა მოუწოდა jQuery. [00:35:13] და ეს სუპერ პოპულარული. ასე რომ კიდევ JSON ზუსტად. ეს ფუნქცია ეგ jQuery დაწერა რომ იღებს JSON საწყისი სერვერზე JavaScript Object ნოტაცია. ის, რაც URL იგი აპირებს იმისათვის რომ ეს ინფორმაცია? როგორც ჩანს, ამ URL აქ. [00:35:27] და რა უნდა ბრაუზერს არ, როგორც კი იგი იღებს უკან ეს პასუხი? და ეს არის ჯადოსნური AJAX, ასე ვთქვათ ასინქრონული JavaScript XML. ძნელია ვხედავ ასეთ მარტივი მაგალითი, რადგან ჩვენ გვქონდა აქ. [00:35:41] მაგრამ ეს იყო ასინქრონული in იმ გაგებით, რომ ჩემი კოდი, როდესაც შესრულებული გაგზავნილი გაგზავნა სერვერზე წავიდეთ მისაღებად ჩემს რამდენიმე JSON. და ეს მოხდა სუპერ სწრაფი რომ მე მივიღე პასუხი. მაგრამ რა არის საინტერესო ის არის, რომ ეს ხაზი კოდი არ დევს ჩემი კომპიუტერი. [00:35:55] მე ვერ ვხედავ დაწნული ხატი. მე არ დაუკარგავს უნარი გადაადგილება ჩემი მაუსის. ჩემი ბრაუზერი იყო რეალურად შესანიშნავად ჯარიმა. [00:36:01] რადგან გზა JavaScript ამუშავებს პასუხი სერვერზე ასეთია. თქვენ რეგისტრაცია, რაც თქვენ მინდა მოვუწოდო გადმორეკე ფუნქცია, რომელიც მხოლოდ იმას ნიშნავს, hey, JavaScript. როგორც კი სერვერი პასუხობს JSON, დარეკეთ ამ ანონიმური ფუნქცია. [00:36:18] გთხოვთ, შევიდა ამ ფუნქციის რასაც სიმებიანი სერვერზე შამფურზე როგორც არგუმენტი მოუწოდა მონაცემები. ასე რომ, სხვა, ანუ, თუ მე იკრიბებიან დინამიურად URL quote.php გადადის ეს სიმბოლო, როგორიცაა უფასო და GOOG ან whatnot, მე მაშინ ვეუბნებოდი JavaScript წავიდეთ მისაღებად რომ URL. გვახსოვდეს, რომ ბრაუზერი დაბრუნებას აპირებს რაღაც რომელიც გამოიყურება, როგორც დავინახეთ, ადრე ეს. [00:36:42] და რა მეორე არგუმენტი აქ მიიღოს JSON ამბობს არის მოვუწოდებთ ამ ფუნქციის როდესაც სერვერზე იღებს უკან არის თუ არა ეს 10 მილიწამში ახლა ან 10 წამი შემდეგ. და როგორც კი თქვენ ამის გაკეთება, რჩეულებში ფასი გვერდზე. ეს სინტაქსი აქ მხოლოდ ნიშნავს წავიდეთ მიიღოს კვანძის ხე, რომელთა უნიკალური იდენტიფიკატორი არის price-- რომ span ჩვენ ვნახეთ ადრე. [00:37:01] ამ მეთოდს ჰქვია HTML უბრალოდ ამბობს, წასვლა შეცვლის HTML რომ იქ data.price. რა არის data.price? ასევე, ბრაუზერი, გავიხსენოთ, მიჩვენა ამ ბრუნდებოდა. ასე რომ, ეს მონაცემები. [00:37:14] ასე რომ, ეს ცოტა cryptic იმისათვის, რომ ნახოთ მძიმეები აქ. მაგრამ ფაქტია, რომ ნება მომეცით ამის გაკეთება. ნება მომეცით უბრალოდ ჩასვით ეს რეალური სწრაფად შევიდა gedit და დავანახოთ ამ როგორც ჩვენ აჩვენა Zamyla სტრუქტურა ადრე. [00:37:27] რა სერვერზე აგზავნის უკან არის პატარა ობიექტი, რომელიც ასე გამოიყურება. და ასე data.price არის უბრალოდ მაძლევს 0,1515. ასე რომ, ბევრი მოძრავი ნაწილები აქ ერთდროულად. [00:37:39] მაგრამ გასაღები takeaways არის რომ ჩვენ გვაქვს ამ უნარი მიიღოს დამატებითი HTTP მოთხოვნა გამოყენებით JavaScript გარეშე განაახლეთ გვერდი. და მაშინ ჩვენ შეიძლება რეალურად შეცვლა ვებ გვერდზე on the fly. და აღმოჩნდება, რომ JavaScript და სხვა ენებზე შეიძლება გამოყენებულ იქნას არა მარტო რომ მუტაციის ვებ გვერდები, მაგრამ რეალურად ჩაწერის პროგრამული ფაქტობრივი კომპიუტერი, არ არის მხოლოდ შემოიფარგლება Chrome და სხვა. [00:38:00] ფაქტობრივად, if-- კოლტონი, რომ თქვენ მინდა შემოგვიერთდნენ უკან აქ თქვენი ლაბორატორია კოდი და Chang ისევე? მოდით წავიდეთ წინ, რომელმაც ისაუბრა ანონიმური ფუნქციები და callbacks და მართლაც ეცადა ბედი აქ ცოცხალი demo სისხლდენა პირას ტექნოლოგიის ერთ-ერთი ამ Elite Motion მოწყობილობების. ახლა, ამ მოწყობილობის, გავიხსენოთ, არის პატარა USB მოწყობილობა ასევე that-- რომ ის beautiful-- რომ სპირალი თქვენს USB პორტი. [00:38:25] და მაშინ ის უზრუნველყოფს input სახით ადამიანის ჟესტები გამოვლენის გამოყენებით ინფრაწითელი სხივების, არსებითად, მოძრაობები თქვენი arm. ასე რომ, მაშინ, რა მარია შეეცადა ადრე იყო კუნთოვანი, რეალურად შეგრძნება, რა შეცვლის თქვენი იარაღი, ეს არის ინფრაწითელი საფუძველზე. ასე რომ, ის ეძებს მოძრაობები სახის სფეროში ფეხით ან იმდენად მოწყობილობის თავად. [00:38:46] რატომ არ შემიძლია მიიღოს stab ამ პირველი? და მოდით წავიდეთ წინ და სახიფათოა თქვენ up ოვერჰედის აქ. მოდით დააყენა კოლტონი ლეპტოპი აქ. ჩვენ მივიღეთ Andrew ტელევიზიით. და რა გნებავთ მომეცით გავაკეთოთ პირველ რიგში? [00:39:00] COLTON: წავიდეთ წინ და მხოლოდ თქვენს ხელში მეტი ამ ბიჭს და დაინახავთ რაღაც ზღაპრული ბრჭყვიალა. [00:39:04] დევიდ ჯ Malan: ძალიან ლამაზი. ეს ყველაფერი ხდება რეალურ დროში. OK. ყველა უფლება და yep. ისე ლამაზი. ყველა უფლება, რა ვქნათ? [00:39:15] COLTON: გადადით შემდეგ ეკრანზე და ვნახოთ. [00:39:17] დევიდ ჯ Malan ყველა უფლება. [00:39:19] COLTON: A fun პატარა თამაში სადაც თქვენ, რათა რობოტები. [00:39:21] დევიდ ჯ Malan: ყველა უფლება, ასე რომ, ეს ყალბი ხელები აჩვენებს რა უნდა გააკეთოს. COLTON: Yes ასე რომ წავიდეთ წინ და დაიბრუნოს ერთ-ერთი კორპუსის და თავზე, რომ რობოტი ორგანო. დევიდ ჯ Malan: ოჰ, ჩემი მხრივ. Oh. OK, adorable. დაელოდეთ ერთი წუთით, OK. იქ ჩვენ წავიდეთ. [00:39:41] COLTON: მე მივიღე ერთი შემთხვევა. [00:39:43] დევიდ ჯ Malan: OK, მე კიდევ ეს ბიჭი. Damn it! როდესაც ჩვენ პრაქტიკოსი ამ ბოლო ღამით, იცით ეს რა გადადის შევიდა? [00:39:51] მოსწონს ეს. OK. ერთი? [00:39:55] COLTON: რა თქმა უნდა. [00:39:56] დევიდ ჯ Malan: ყველა უფლება, და იქ მესამე. ყველა უფლება. COLTON: და ეს ერთი, თქვენ მიზანია: დევიდ ჯ Malan: Oh, ეს ერთი ლამაზი. COLTON: --yeah, აირჩიოთ გარდა ამ ყვავილს. დევიდ ჯ Malan: OK. არა? გაშვებული. [00:40:14] COLTON: Oh, რომ თქვენ გადასვლა. [00:40:15] დევიდ ჯ Malan: Ah, შეხედეთ, რომ. ძალიან ლამაზი. ისე, რატომ არ "ჩვენ ვიღებთ ერთი მოხალისე აქ , ვისაც სურს მოდის up. როგორ შესახებ უფლება არსებობს მწვანე, არის ეს? [00:40:27] ყველა უფლება, მოდით ჰქონდეს ამის ნაცვლად, ზოგიერთი ალბათ, იცით, ამ თამაშში აქ მოჭრილი, ალბათ? ვნახოთ. ჩვენ გვაქვს ჩვენი სათვალე აქ? [00:40:37] OK. მადლობა. რა გქვია? [00:40:39] აუდიტორია: Laura. [00:40:40] დევიდ ჯ Malan: Laura? ლამაზი, რომ ნახოთ. თუ თქვენ არ იბადება აყენებს Google Glass მეტი სათვალე. ეს არის კოლტონი. [00:40:46] COLTON: Hi. კარგია თქვენთან შეხვედრა. [00:40:48] დევიდ ჯ Malan: OK, მოდის გარშემო. ყველა უფლება, ასე რომ თქვენ აპირებს აქ, რომელმაც ითამაშა ეს ადრე, არის თქვენს ხელში მეტი ნახტომი Motion აქ. და ახლა თქვენი arrow უნდა გადავიდეს. Oh, nope. [00:40:57] აუდიტორია: No. [00:40:58] დევიდ ჯ Malan: ჩვენ არ მინდა დატოვა ამჟამად. OK, დაველოდოთ. მეტი აქ. ასე რომ შეამჩნია, როგორც თქვენ გამართავს თქვენი თითის მეტი რამე, მაუსის იწყება წასვლა მწვანე, რომელიც, როგორ უნდა მიჰყვეთ. [00:41:06] ასე hover მეტი Play. და მხოლოდ ერთი თითის კარგად არის. და ახლა დააჭირეთ პატარა მწვანე ბიჭი მარცხენა. და ახლა გამართავს სანამ ის ავსებს up მწვანე. კარგი. ახლა, ისევე, დონე ერთი up დაბრუნება. [00:41:16] აუდიტორია: Yeah, ჩვენ გვინდა დონეზე ერთი, აქ. [00:41:20] დევიდ ჯ Malan: კარგი. OK, ასე რომ ყველა თქვენ რომ გააკეთოთ, არის მოჭრილი. კურსორი არის თეთრი და ერთი ქვემოთ. [00:41:28] ძალიან ლამაზი. ყველა უფლება, ეს დაახლოებით მიიღონ უფრო დამძიმდა. ასე გამართავს თითის მომდევნო დღეს. კარგი. ეს ერთი მძიმე. [00:41:39] აუდიტორია: Oh crap. OK. მას სურს წავიდეთ ამ გზით. Oh crap, that-- [00:41:44] დევიდ ჯ Malan: ჰო. საშუალო მიზანია ყველა ვარსკვლავი. ყველა უფლება, შემდეგი. [00:41:53] მოდით ვნახოთ, თუ შეგიძლიათ მიიღოთ ამ მესამე. კარგი. OK, წავიდეთ იქ. [00:42:06] რა თქმა უნდა. ოჰ, ძალიან ლამაზი. ყველა უფლება. [00:42:11] რატომ არ ჩვენ adjourn დღეს აქ? მივცემ მოდის up, ვისაც სურს ითამაშოს. მადლობა იმდენად Laura ჩვენი მოხალისე. და ვნახავთ თქვენ ორშაბათს. [00:42:18] აუდიტორია: თქვენ ალბათ გვინდა, რომ ეს უკან. [00:42:21] დინამიკები 2: მომდევნო CS50