[Powered by Google Translate] [კვირა 7 გაგრძელდა] [დევიდ ჯ Malan, ჰარვარდის უნივერსიტეტი] [ეს არის CS50.] [CS50.TV] ყველა უფლება. კეთილი იყოს. ეს არის CS50, და ეს არის ბოლომდე კვირაში 7. ასე რომ ერთი ამ სულელური პატარა რამ რომ მიდის გარშემო ინტერნეტში და ჩვენ slurped მდე, და ეს უნდა გააკეთოს ახლა ცოტა geeky გრძნობა თქვენ. ასევე, ის იყო funnier ამ ბიჭს, ვიდრე ეს იყო თქვენ ბიჭები. საუბრის დროს, ასევე, ბიჭები, დღეს არის Nate დღე. გადმოგცეთ გრძნობა, თუ რამდენად კარგი Nate და მე ვართ ზე ვებ უზრუნველყოფა ეფუძნება ორშაბათს კლასი და ეფუძნება ახლა ამ, მეგონა მე დახევის up Nate სახლის გვერდზე, თუ თქვენ არ მინახავს ეს არავის გაუკეთებია. ეს აქ ია Nate ს HTML. ასე ვხედავ მის sourcecode თუ გსურთ ნახოთ როგორ გავაკეთოთ ეს, და Nate, თუ ჩვენ შეგვიძლია embarass უბრალოდ მოკლედ, პერსონალის მივიღე თქვენ პატარა რაღაც თუ გსურთ გაუზიაროს რამდენიმე დესერტი ზოგიერთ ბავშვები კლასის აქ. თუ გსურთ მოდის down. თქვენ ყველა მივესალმებით და ძალიან ლამაზი, მაგრამ არავინ ზის სადმე ახლოს Nate, რატომღაც, რომ უკან ზონაში. ასე რომ, ალბათ ნახავთ ზოგიერთ FOLKS ისარგებლოს ამ ერთად. ბედნიერი დაბადების დღე, Nate. დამატებითი hellos: ვაჩვენეთ რამდენიმე clips ჩვენი CS50x სტუდენტებს. თუ გვსურს, რომ ვინ არის ეს მსოფლიოში რომ შემდეგ ერთად, შეგიძლიათ უხელმძღვანელებს ამ URL, სადაც იოსები, ერთი ჩვენი TFs, დააყენა ერთად მონტაჟი ჯიშები ვისაც უკვე წარდგენის ეს ვიდეოები, მათ შორის Rick Astley. და თუ თქვენ გადახვევა მეშვეობით ამ, ეს მართლაც საკმაოდ ინსპირირებით დაინახოს მრავალფეროვნება ქვეყნებსა და ქალაქებში, საიდანაც ხალხი hailing. ასე რომ, თუ გსურთ შევხედოთ, რომ, რომ იქნება up ბოლომდე სემესტრში. დღეს ჩვენ გავაგრძელებთ შევხედოთ ვებ, ვებ პროგრამირება, HTML და მოსწონს, და ჩვენ ასევე გვაქვს სადილი ახლოვდება ამ პარასკევს თუ გსურთ, და განსაკუთრებით, არ გავაკეთეთ ადრე. ეს პარასკევის თემა იქნება Nate დღე, ასე რომ, თუ გსურთ აქვს დაბადების დღე ლანჩი Nate და სხვები, ზოგიერთი ჩვენი მეგობრები მრეწველობა, გთხოვთ ხელმძღვანელს, რომ URL არსებობს. ფართი, როგორც ყოველთვის, არის შეზღუდული. ასევე, თუ თქვენ დავიწყებული, გააცნობიეროს, რომ მომავალ კვირას არის ვადა პრობლემა მითითებული 4 ს scavenger hunt, რის შემდეგ აღმოფხვრას ყველა იმ JPEGS საწყისი card.raw, თქვენ და თქვენი თანამოაზრეების მონაკვეთზე, თუ გსურთ, შეგიძლიათ სცადოთ იღებდა როგორც ბევრი კომპიუტერის მეცნიერები, რომ მეხსიერების ბარათი, რაც შეიძლება, და თქვენ და თქვენი მონაკვეთის შემდეგ გაიმარჯვებს ზღაპრული პრიზი. იხილეთ თავში pset 4 ს სპეციფიკაცია, თუ რა უნდა წარმოადგინოს და როდესაც. ასევე, თუ თქვენ გსურთ აქვს თქვენს ქმნილებას immortalized on რა თქმა უნდა ნახვა და მისი ისტორიის ტანსაცმელი, ვიცი, რომ თქვენ მივესალმებით ახლა უნდა დაიწყოს წარდგენის დიზაინით ამ წლის მაისურები და sweatshirts და მოსწონს. ჩვენ ყველაფერს გავაკეთებთ იმისათვის, რომ მოიცავს როგორც ბევრი როგორც შეგვიძლია, მაგრამ ჩვენ გვექნება გარკვეული პერსონალის წევრები მიმოხილვა ყველა დიზაინით რომ დავრწმუნდეთ, ისინი შეესაბამება სპეციფიკაციები, და ჩვენ მაშინ აირჩიოთ ზოგადად მუჭა მათ გამოიფინება. ასე რომ, თუ თქვენ დიზაინის ტიპი, უბრალოდ ვიცი, რომ მოთხოვნების ამისთვის გრაფიკა არის PNG, მინიმუმ 200 DPI, ისინი არ უნდა იყოს ზე მეტი 4000 x 4000 pixels, და არა უმეტეს 10 მბ, მაგრამ თქვენ მივესალმებით გამოიყენოს რამ, როგორიცაა Photoshop ან GIMP ან სხვადასხვა გრაფიკული პროგრამების, რასაც თქვენ გაქვთ თქვენს განკარგულებაში. ასევე ჰორიზონტზე არის საბოლოო პროექტი. საბოლოო პროექტი მართლაც კულმინაციას 50, რომლითაც ყველა დანიშვნები რა თქმა უნდა, ეს თქვენი შანსი ნამდვილად უნდა გავაკეთოთ თქვენი რამ. და რომ შეიძლება უბრალოდ რაღაც გასართობად, ეს შეიძლება იყოს გადაჭრის ზოგიერთი მწვავე პრობლემის თქვენი სტუდენტი ჯგუფს, ზოგიერთი ახალი ნახვა, ზოგიერთი ახალი კოლექცია მექანიზმი მონაცემები. ეს შეიძლება იყოს მობილური განაცხადი Android, iOS ამისთვის. მართლაც, ცაში არის ლიმიტი, და მომდევნო რამდენიმე კვირის განმავლობაში, როგორც ჩვენ გადასვლას C ამ უმაღლესი დონის ენებს, როგორიცაა PHP და JavaScript, თქვენ აღმოჩნდეთ სულ უფრო გაეცნო ზოგიერთი რეალური ტექნიკა, ზოგიერთი რეალური იარაღები, და რომ შეავსონ რომ, ვიცი, რომ რა თქმა უნდა ისტორია აქვს სემინარები, რომლითაც მომდევნო რამდენიმე კვირის განმავლობაში, ზოგიერთი აკადემიური პერსონალის და მეგობრები ჩვენი მხრიდან წლის კამპუსში შესთავაზებს სურვილისამებრ სემინარები რაც წასვლა ზემოთ და მის ფარგლებს გარეთ, რა ტიპიურად კეთდება ნაწილში წარმოგიდგინოთ, რათა რამ, როგორიცაა Android პროგრამირება, წარმოგიდგინოთ, რათა რამ, როგორიცაა iOS პროგრამირების ან უფრო დახვეწილი ვებ განვითარების ტექნიკა. არსებობს მთელი ისტორია ამ უკვე ხაზზე. თუ წასვლა cs50.net/seminars, ჩვენ ამით საკმაოდ რამდენიმე წელია, და დაინახავთ, რომ საარქივო აქ PDFs და ვიდეო და მოსწონს რამდენიმე ათეული ვიდეოები სემინარები. შარშან, მაგალითად, ჩვენ გვქონდა სემინარი acing თქვენი ტექნიკური ინტერვიუები, თუ თქვენ რეალურად ეძებს მიდის და გავაკეთოთ სტაჟირების ან სრულ განაკვეთზე GIG. Windows პორტალის განვითარება, Android განვითარება, Google Maps, API, CSS, განვითარებად ამისთვის BlackBerry, Emacs. მართლაც, თქვენ მივესალმებით to შეხედეთ რომელიმე ამ სემინარები თქვენს მოხერხებულობისთვის. და ჩვენ უნდა ჩატარების ზოგიერთი ახლის ამ სემესტრში, ისევე. რა არის დააჩქაროს საბოლოო პროექტი? ისე, პირველ რიგში, მიუხედავად იმისა, რომ ეს თარიღი გარკვეულწილად გარდაუვალი, ეს მართლაც მხოლოდ საშუალება უნდა დაიწყოს ფიქრი საბოლოო პროექტი საკმაოდ რეალისტურად. ჩვენ ვიცით მხოლოდ დასაწყისი ზოგიერთი რა ამას ისევ გააშუქებს წელს რა თქმა უნდა, HTML, PHP და მოსწონს, მაგრამ თქვენ ყველა იცნობს Web, მე და კომპენსაცია ამ საუბრის მიმართ ვებ მხოლოდ იმიტომ ადამიანების უმრავლესობას დასრულდება მდე აკეთებს ინტერნეტის მეშვეობით საბოლოო პროექტების, მაგრამ ეს არ ნიშნავს საჭირო. გამოყენება C არის ჯარიმა, ობიექტური C, ჯავის, ნებისმიერი სხვა ენა მოგეხსენებათ ან აინტერესებთ საკმაოდ ჯარიმა. მაგრამ მისაღებად წვენები მიედინება თავდაპირველად, ჩვენ ველით, რომ წარდგენის preproposal რომელიც, თითო PDF on ნახვა, რომელიც ახლა cs50.net, და ზედა მარცხენა დაინახავთ საბოლოო პროექტი არის სპეციფიკაცია საბოლოო პროექტი, და არსებობს დეტალები preproposal და ასე შემდეგ. ეს საკმაოდ ბევრი boils ქვემოთ ელ სწავლების თანამემამულე მხოლოდ გაფიცვის up საუბარი მის შესახებ თუ რას ფიქრობდა. On projects.cs50.net არის საცავი იდეების საწყისი FOLKS წლის კამპუსში თუ თქვენ იბრძვის ამუშავება ზოგიერთი იდეა, და manual.cs50.net/APIs არის საცავი კავშირების to APIs. რა, თუმცა, არის API? რა არის API? მე განაცხადა, რომ მინიმუმ ორჯერ, შესაბამისად ტრანსკრიპცია წარსულის რამდენიმე კვირით. რა არის ეს? [სტუდენტი გაუგებარია] >> Okay, კარგი. ასე რომ რაღაც პროგრამირების ინტერფეისი. განაცხადის პროგრამირების ინტერფეისი, და ეს შეიძლება მიიღოს რამდენიმე ფორმა, მაგრამ რა ეს ნამდვილად boils ქვემოთ არის კოდი რომ ვინმე hs წერილობითი ან მონაცემები, რომ ვინმეს აქვს შეგროვებული რომ მზადდება თქვენთვის ხელმისაწვდომი ზოგიერთ პროგრამული გზა. თქვენ შეგიძლიათ დაწეროთ კოდი C, PHP, Python, Ruby, რასაც თქვენი ენა არჩევანის ტიპიურად არის, და შეგიძლიათ როგორმე ქმნით სხვისი ფუნქციონალური ან სხვისი მონაცემები კომპლექტი. მაგალითად, თუ მივდივარ ამ ბმულს აქ, და დაინახავთ წყვილი ბმულები მომდევნო გვერდი რომლითაც ჩვენ გვაქვს CS50 საკუთარი APIs, რომელიც ძალიან ჰარვარდის-centric, ხოლო შემდეგ მესამე მხარის APIs. შორის მესამე მხარის APIs მართლაც სასარგებლო რამ მოსწონს მიმდინარეობს შეუძლია გააგზავნოს SMS-ის ხალხს, მას შეუძლია მიიღოს SMS ტექსტური შეტყობინებები ხალხისგან. და რამ, როგორიცაა, რომ თქვენ შეიძლება არ ვიცი, როგორ განახორციელოს თავის, მაგრამ წყალობით მომსახურება, რამოდენიმე უფასო და ზოგიერთი კომერციული, თქვენ შეძლოთ atop იმ და რაღაც საინტერესო იყოს თქვენთვის. შორის CS50-ს APIs ეს კამპუსში-centric რამ, როგორიცაა ჰარვარდის კურსები, ენერგეტიკა, მოვლენები, საკვები, რუკები, ახალი ამბები, tweets და Shuttleboy საკუთარი, და ეს APIs რომ გამოიყურებოდეს პატარა რაღაც მსგავსი. ნება მომეცით დახევის up HarvardFood API. თუ თქვენ ოდესმე ყოფილა HUD ნახვა, თქვენ ალბათ ყოფილა უბრალოდ ნახეთ, რა სადილად ან რა საათებია რაღაც D-დარბაზში. ისე, ეს არ განსაკუთრებით იოლად ნავიგაცია, და მერე რა ჩვენ ცოტა ხნის წინ იყო ჩვენ წერდა პროგრამული უზრუნველყოფა, ეს მოხდება, რომ PHP, რომ რეალურად ეკრანზე scrapes მთლიანად საქართველოს HUD ნახვა. ეკრანის scrape რაღაც ნიშნავს დაწერა პროგრამა ენა მოსწონს PHP რომ პრეტენზია უნდა იყოს ბრაუზერში, მიუხედავად იმისა, რომ თქვენ შეიძლება აწარმოებს მას command prompt, რომ პრეტენზია უნდა იყოს ბრაუზერში, შეუერთდება ნახვა, ჩამოტვირთვების მისი HTML, ენა, რომელშიც ის წერილობითი, და შემდეგ ნათქვამია, ან უფრო კონკრეტულად, ეს parses ყველაზე ქვედა, მარცხნიდან მარჯვნივ. და რა ჩვენ არ იყო ჩვენ წერდა ჩვენი კოდი ისე, რომ ნებისმიერ დროს დავინახეთ რაღაც რომ HTML რომ ჰგავდა რაღაც მენიუ, მოსწონს ბილიარდი, ჩვენ ამის შემდეგ იმპორტი რომ ჩვენს საკუთარ მონაცემთა ბაზაში. და ნებისმიერ დროს ვნახეთ კვების შინაარსი, ჩვენ შემოტანა, რომ ჩვენს საკუთარ მონაცემთა ბაზაში. და რა გავაკეთეთ იყო ბერკეტი იმისა, რომ HUD ნახვა, მიუხედავად იმისა, რომ შესაძლოა, ცოტა გამოწვევა ჩვენთვის ადამიანები ნავიგაცია ქვევმოთ Hood ყველა HTML გენერირდება საკუთარი კომპიუტერული პროგრამების. ამიტომ ყველა მათი HTML, მიუხედავად იმისა, რომ შეიძლება ბინძურ, ყველაზე საიტებზე ქვეშ hood ლოსს ნიმუში. ასე რომ, ჩვენ მხოლოდ დახარჯული რამდენიმე საათის მჭიდროდაა, რომ ნიმუში ასე რომ, საბოლოო ჯამში, ჩვენ გადაყარეთ ყველა ბინძურ HTML, ყველა ესთეტიკას თამამი მოსაპირკეთებელი და კურსივით და მოსწონს, და რასაც ჩვენ მაშინ ვერ გააკეთებს არის გამოამჟღავნონ რომ იგივე მონაცემები. მაგალითად, ამ გზით. ამიტომ, ჩვენ, შესაბამისად დოკუმენტაცია აქ, არ აცნობა მსოფლიოს, რომ თუ თქვენ მოითხოვოს URL რომ ასე გამოიყურება, food.cs50.net / რაღაც, და თქვენ გარკვეული პარამეტრების, რომელიც ჩვენ ვსაუბრობთ დღეს, მოსწონს საბოლოო თარიღი დრო, დამწყებ თარიღი დრო, კვება და ა.შ., რა არის ჩვენი სერვერები დაბრუნდება თქვენ, მაგალითად, არის CSV ფაილი, მძიმით separted ღირებულებებს, როგორიცაა Excel ფაილი, შემცველი ყველაფერი საუზმეზე ამ კონკრეტული თარიღი მარტში გასული წლის როცა მოხდა დაწერა ეს დოკუმენტაცია. მათთვის ნაცნობი, CSV არ არის ერთადერთი ფორმატი. არსებობს კიდევ ერთი ფორმატი რომ ყველა უფრო მრავალმხრივი მოუწოდა JSON, JavaScript Object ნოტაცია. მონაცემები შეიძლება დავბრუნდებით ამ ფორმატში. ამიტომ takeaway აქ არის ის, რომ თუ არა თქვენ ჩაყვინთვის შევიდა ამ API ან ნებისმიერი სხვა მიზნით CS50 ან არაფერი არსებობს ინტერნეტში, ან საერთოდ არ, გააცნობიერონ, რომ მსოფლიო სულ უფრო და უფრო დაიწყო standardize როგორ მანქანები intercommunicate. ჩვენ ვიყენებთ სტანდარტული მონაცემები ფორმატში CSV ან JSON. და რას ნიშნავს თქვენთვის არის თქვენ შეგიძლიათ დაწეროთ საინტერესო ნაწილი პროგრამა რომელიც საშუალებას თქვენი მომხმარებლის ძებნის სასადილო დარბაზში მენიუ, რომელიც საშუალებას მათ შექმნას სიები სანიშნეს რომელიც საშუალებას მათ მისაღებად ტექსტი შეტყობინებები როდესაც მათი საყვარელი კვება დაახლოებით იქნება გაწერილი ზოგიერთ D-დარბაზში გამოყენებით სხვისი მონაცემები კომპლექტი და შენობა თავზე მათი APIs. ასე უფრო, რომ სახით სემინარებისა და დოკუმენტაცია, რომ თქვენ გაქვთ აქ ფორუმზე. ასე რომ იმ, მაშინ, არის APIs. რომ მოაქვს ჩვენთვის თავში HTML. სწრაფი recap. რა არის HTML? [სტუდენტი გაუგებარია] >> კარგი. ჰიპერტექსტის მარკირებას ენა. ვინმეს, თუ რა არის სტილისტიკა მარკირებას ენა? ჰიპერტექსტის მარკირებას ენა. Okay. ასე რომ HTML, ჰიპერტექსტური. ჰიპერტექსტის უბრალოდ ეხება ვებ, ამისთვის დიდი ნაწილი. Markup ნიშნავს, რომ ის რეალურად არ პროგრამირების ენა, HTML. ეს არ არის ენა, რომ შეგიძლიათ გამოხატოს ლოგიკა სისტემაში ეს იმას არ მარყუჟების. არა აქვს პირობები. არა აქვს ფუნქციები, თავისთავად. უფრო მეტიც, მას ეს ყველაფერი მოუწოდა tags, ან სწორად, ელემენტებს. და იმ ელემენტების აქვს დაწყება tags და სასრულ ტეგებს, ან ღია tags და დახურული tags, და რა იმ Tags ზოგადად ნიშნავს ბრაუზერს, დაიწყოს აკეთებს რაღაც და შემდეგ შეწყვიტოს აკეთებს რაღაც, თუმცა არის გამონაკლისი, რომ. ზოგჯერ უბრალოდ 'დააყენა ხაზის შესვენების აქ, "მაგალითად. და ჩვენ ვხედავთ მაგალითები, რომ მეორე დღეს, შორის თამამი მოსაპირკეთებელი, ხაზის წყვეტები, და შემდეგ რამდენიმე სხვა tags. ასე რომ HTML არის ენა, რომელშიც ვებ გვერდები იწერება. ასე რომ, თუ მე წასვლა რაღაც Google.com და გაიყვანოს up მხოლოდ მათი მთავარი გვერდი, გავიხსენოთ, რომ თუ თქვენ უფლება ან გააკონტროლოს დააჭირეთ და შევხედოთ გვერდის წყაროს ნახვა, ჩვეულებრივ ეს სრული არეულობა ამ დღეებში ქვეშ Hood, მაგრამ ეს იმიტომ, რომ კომპიუტერები არ აინტერესებს თეთრი სივრცის, ამიტომ ეს არ უნდა გამოიყურებოდეს ნამდვილად. მაგრამ თუ ჩვენ მიუახლოვდით ნაწილების იგი, შეამჩნევთ, რომ Chrome, უბრალოდ უნდა იყოს ლამაზი, აქვს ფერი კოდირებული რამ. მართლაც, ეს არის პირველივე tag რომ ვნახეთ ვებ გვერდზე. ისევ და ისევ, HTML 5, უახლესი ვერსია ამ ენაზე, ამჯამად ამ რამ დასაწყისში, > ჰო, ჩვენ მოგვარდება ეს ადრე მიერ მკაფიოდ ვეუბნებოდი ბრაუზერის 'დააყენა ხაზის შესვენების აქ. " და ეს იმიტომ, რომ კიდევ ერთხელ, ბრაუზერის მხოლოდ აპირებს მკაფიოდ რა მარკირებას ენა ეუბნება ეს უნდა გააკეთოს, ამიტომ, მიუხედავად იმისა, თქვენ ალბათ არ დააჭიროთ ერთხელ ან ორჯერ ან თუნდაც ათჯერ, ის აპირებს დააკავშიროთ, რომ ყველა ერთ სივრცეში, მხოლოდ კონვენციას. ასე რომ, თუ თქვენ ნამდვილად გსურთ ხაზი შესვენების თქვენ უნდა გამოიყენოთ br tag, და ახლა შეტყობინება, როგორიც ორშაბათს, მე ზუსტად / შიგნით ამ tag, მხოლოდ იმიტომ, რომ ამ უბრალოდ ვერ გრძნობს უფლება დაიწყოს ხაზის შესვენების შემდეგ შეწყვიტოს იგი არაფერი შორის. ასე რომ კონვენციის HTML არის გახსნას და დახუროს tag ერთდროულად. როგორც განზე, თქვენ ნახავთ უამრავი საიტებზე წიგნებში არ აკეთებს, რომ. ეს არის სწორი უნდა გავაკეთოთ თუ არა ამის გაკეთება, მაგრამ ჩვენ იტყოდა რომ დიზაინის-ბრძენი და სტილისტურად, ეს მხოლოდ უკეთესი რადგან მაშინ ყველა ტეგი არის ორივე გაიხსნა და დაიხურა როგორღაც. ახლა მოდით შენახვა და ჩატვირთვა. დაბრუნება ბრაუზერის, okay. ახლა ჩვენ მიღების გარკვეული პროგრესი განიცადეს, მაგრამ ეს არ საკმარისია. მოდით წავიდეთ წინ და დავიწყოთ აკრეფით რაღაც აღარ ორგანოს ტექსტი. ასე ვთქვათ, 'სწრაფი ყავისფერი მელა jumps ზე lazy dog.' და ახლა ნება მომეცით მხოლოდ და ჩასვით ეს რამდენიმე ჯერ ასე რომ ჩვენ გვაქვს პუნქტის ტექსტი. ნება მომეცით დაბრუნდეს მეტი აქ. ამიტომ არ ეძებს ძალიან კარგი. მე აქვს ხაზის შესვენების, ამიტომ okay, მაგრამ ახლა, ერთხელ ჩვენ მიღების იმ წერტილამდე, რომ ვებ გვერდზე რომელსაც აქვს უამრავი შინაარსი და არა მხოლოდ ერთჯერადი ხაზები დემონსტრირება HTML, ჩვენ შეგვიძლია დავიწყოთ ფიქრი ეს ყველაფერი როგორც რეალურ პუნქტებში. და ჩვენ შეგვიძლია დავიწყოთ სტრუქტურირებაზე ჩვენი ვებ გვერდზე ცოტა მეტი cleanly. მართლაც, რა შეგვიძლია გავაკეთოთ არის ახვიდეთ აქ შიგნით ჩემი სხეულის tag, და იცით, რა, თუ "ეს არის CS50. . ". მართლაც demarks დასაწყისში პუნქტის, კარგად, მოდით tag იგი როგორც ასეთი. ნება მომეცით აბზაცის ტექსტი, მხოლოდ კონვენციის, მინდა ვთქვა რომ ამ პუნქტის დამთავრდა აქ, და მაშინ, ვიდრე ამის გაკეთება ხაზის შესვენების ნება მიბოძეთ, უბრალოდ, ვამბობთ რომ ეს ეკუთვნის და როგორც ახალი პუნქტის, და მე უბრალოდ სწრაფად აბზაცის მხოლოდ clobbering ყველა ამ პერსონალის. ახლა ჩვენ გვაქვს indented პუნქტის იქ, და ახლა ჩვენი markup იწყება მისაღებად ცოტა მეტი semantically შეესაბამება იმას, რასაც ჩვენ ვცდილობთ გავაკეთოთ. ჩვენ გვყავს პუნქტის, მოდით ეძახით პუნქტის ერთად p ტეგით. ჩვენ გვყავს მეორე პუნქტის, მოდით ეძახით პუნქტის ერთად p ტეგით. ახლა, რა ბრაუზერი ჩვეულებრივ გააკეთოს არის ისევე როგორც ინგლისურ წიგნაკი ან ესე, სადაც თქვენ, როგორც წესი, ვხედავთ რამოდენიმე ხაზის წყვეტები შორის პუნქტებში. ბრაუზერები გავაკეთებთ, რომ თქვენ ავტომატურად. ახლა ჩვენ გვაქვს ორი პუნქტებში და ჩვენ შეგვიძლია გავაგრძელოთ ამ. მაგრამ, რა თქმა უნდა, ინტერნეტში, როდესაც თქვენ ორგანოების ტექსტი ეს არ ტიპიურად მხოლოდ უზარმაზარი Blobs ტექსტის. ხშირია ბმულებს იქ. ასე რომ, თუ ჩვენ გვინდა, მაგალითად, მოიცავს რამდენიმე Links იქ, ვარაუდობენ, თუ რა შეიძლება იყოს საინტერესო ნებისმიერი ვებ გვერდზე მე შექმნის აქ არის - ნება მომეცით წასვლა Google.com, და ნება მომეცით მოძებნოთ სწრაფი ყავისფერი მელა. მოინახულე Google-ის სურათები, და, რა - ეს არის cute. ჩვენ წავიდეთ ერთად ამ. ასე რომ აქ გვაქვს სწრაფი ყავისფერი მელა jumping მეტი lazy dog. მერე რა მე ვაპირებ აქ, უბრალოდ გულისთვის დემონსტრირება, არის ვარაუდი, რომ ეს სურათი იყო ჩემს სერვერზე, და მე უკვე შექმნა ამ images. მე უბრალოდ საერთოდ იყო სწორი click ან გააკონტროლოს დააწკაპუნეთ გამოსახულება, და რა თქვენ ნახავთ ყველაზე ბრაუზერები არის პატარა მენიუ - შეწყვიტოს აკეთებს, რომ - პატარა მენიუ, რომელიც საშუალებას გაძლევთ აირჩიონ ასლი ლინკები საიდან ან ასლის URL. ნება მომეცით, დავუბრუნდეთ ახლა ჩემს HTML, და ვარაუდობენ, რომ მინდა to ჰიპერბმულის ამ მეორეში ვებ გვერდზე. რა იყო tag მოუწოდა, რომ? [სტუდენტი გაუგებარია] >> Yeah. ამიტომ href ამისთვის ჰიპერ მითითება. ნება მომეცით წავიდეთ წინ და ჩასვით, რომ სისტემაში ეს საკმაოდ ხანგრძლივი URL, ნება მომეცით, zoom out უკან. დახურვა ფრჩხილებში, ამიტომ ახლა შეამჩნია ვარ გზა მეტი აქ იმიტომ, რომ URL მოხდა იყოს საკმაოდ ხანგრძლივი. ნება მომეცით გადახვევა მეტი აქ ბოლომდე სწრაფი ყავისფერი მელა, და მაშინ ნება მომეცით ჩემი გამოსვლა ამ tag ერთად . ყველაფერი ზედა ლურჯი ფერით მხოლოდ კომენტარი. ეს არის ჩემი doctype დეკლარაცია, რომელიც ისევ, შეგიძლიათ უბრალოდ დააკოპირეთ და ჩასვით on რწმენა, ახლა. ეს უბრალოდ ეუბნება ბრაუზერის, "აქ მოდის ზოგიერთი HTML 5. ' ქვემოთ რომ, on line 14 წლის პირველ ჩემი ფაქტობრივი tags, და ეს უბრალოდ ამბობს, როგორც ადრე, აქ მოდის ზოგიერთი HTML, აქ მოდის უფროსი ჩემი გვერდი, აქ მოდის სათაური, და შემდეგ, პირიქით, სწორედ ეს სათაური, რომ მას უფროსი. აქ ჩნდება ორგანოს ჩემი გვერდი. ასე რომ რამდენიმე ახალი tags არის: h1 დგას სასაქონლო 1. არსებობს ტრადიცია HTML მრავალი წლის განმავლობაში უკან მქონე სხვადასხვა ზომის ტექსტი. და უკან დღეში, ყოველ ერთ ნიშნავდა, ზოგადად, უბრალოდ დიდი და თამამი. მაგრამ ასევე H2, რომელიც დიდი მაგრამ არა საკმაოდ დიდი, როგორც და თამამი. აქ H3, რომელიც სახის დიდი მაგრამ არა თითქმის როგორც დიდი და გაბედული, და ა.შ., ყველა გზა ქვემოთ h6. ამ დღეებში, თუმცა, h1, h2 და H3 ნამდვილად ნიშნავდა უფრო სემანტიკური მნიშვნელობა მათთვის, რის h1 ნამდვილად სათაურს: სასაქონლო პოზიციაში ვებ გვერდზე, სასაქონლო პოზიციაში სვეტი ან რაღაც მსგავსი რომ ტექსტი. ასე რომ მე შეგნებულად განაცხადა h1 CS50 ძებნა> h1 მიუთითოთ, რომ ეს ნამდვილად სათაურს, ტიტული ჩემი გვერდი. არ სათაურის სათაურის ზოლში გრძნობა, მაგრამ სათაური რომ თქვენ ნამდვილად ვხედავთ ვებ გვერდზე თავად სხეულში. ახლა ეს, თქვენ ალბათ შეუძლია გამოიცნოს რა არის, მიუხედავად იმისა, რომ ჩვენ გვაქვს რამდენიმე ახალი ცალი სინტაქსი. ეს არის ფორმა. ამიტომ ვებ ნამდვილად იღებს საინტერესო როდესაც საიტებზე მიიღოს შეიტანენ მომხმარებლებს. ამ კლასში, პრობლემის წაუკიდეს ვებ პროგრამირება, ჩვენ არ ვაპირებთ ნახვა, თავისთავად, ერთად კონტენტი, რომელიც აჩვენებს ფოტოები, რომ თქვენ მიღებული, ან ეს ჩემი რეზიუმე და რამ ჩემს შესახებ, რადგან იმ რამ შედარებით ადვილად დააყენა ერთად. ძნელი მიიღოს რამ ლამაზი ინტერნეტში, მაგრამ მაინც აყენებს up კონტენტი საკმაოდ ტრივიალური. მაგრამ მოვლენები კიდევ მართლაც საინტერესო, როცა ვინმე შეგიძლიათ მოინახულოთ თქვენი ნახვა და უზრუნველყოს შეყვანის და შეგიძლიათ შეავსოთ ფორმები, შეგიძლიათ შეამოწმოთ off checkboxes და შეუძლია ურთიერთქმედება თქვენი ვებ საიტი. მართლაც, ალბათ ყველა ნახვა თქვენ აღელვებს ამ დღეებში, ნებისმიერ დეტალს, არის რატომღაც ინტერაქტიული. Facebook, Google, და მოსწონს, რომ მიიღოს მომხმარებლის შეყვანის და აწარმოოს ადრინდელს გამომუშავება. მოდით ახლა გადავიდეთ გავაკეთოთ, რომ ახლა. მოდით ახლა გარდამავალი საწყისი გამოყენებით HTML ამისთვის markup of კონტენტი როგორც ნაცვლად მიწოდების მექანიზმი დინამიური შინაარსის. და მიმართ, რომ ბოლოს, მოდით განხორციელება ჩვენი საკუთარი საძიებო სისტემა. მოდით ეს შემდეგნაირად. აქ ფორმა ტეგით. აქცია ატრიბუტი განსაზღვრავს, რომ როდესაც მომხმარებელი ავსებს ეს ფორმა მათი კლავიატურის, მას წარედგინება ამ მისამართი აქ. ასე რომ, მე ვარ სახის მოტყუების. ის აპირებს us პატარა აღარ ერთზე კლასის განსახორციელებლად მთელი საძიებო სისტემა, ამიტომ ჩვენ უბრალოდ წინა ბოლომდე, ასე ვთქვათ. ჩვენ ყველაფერს გავაკეთებთ ნაწილი, რომელიც საშუალებას მომხმარებლის მოძებნა, და ჩვენ სახის punt to Google მძიმე ნაწილი მოძიებაში ძებნის შედეგები, მაგრამ, კონკრეტულად, მე ვაპირებ გაიგო Google-ის სერვერზე გამოყენებით ერთი ორი ძალიან პოპულარული მეთოდები. ერთი მიმდინარეობს მიღება, მეორე, რომ ჩვენ საბოლოოდ ვხედავთ, როგორც ჩანაწერი, თუმცა არის სხვები, რომლებიც უფრო ხშირად გამოიყენება. ასე რომ კიდევ მხოლოდ conjures up იდეა, მინდა კიდევ რაღაც შინაარსი, მიიღოთ გარკვეული ძიების შედეგები. ეს, შეგიძლიათ, ალბათ გამოიცანით რა ეს იმას. ეს არის ერთგვარი შეყვანის, ის, ფაქტობრივად, აპირებს გამოიყურებოდეს ტექსტური ველი, და სახელი, რომ შეყვანის, სახელით რომ ცვლადი, ასე ვთქვათ, იქნება Q ამისთვის შეკითხვის მიერ კონვენციას. ისევ და ისევ, გაცნობის ამ შეყვანის არ აპირებს იყოს ჩამრთველი; ეს არ იქნება მენიუ, ეს იქნება ტექსტური ველი როგორც აღნიშნა ამ ატრიბუტის აქ, და ამ ველში, მოსწონს ხაზის შესვენების არის ან იქნება თუ არა. ამიტომ ცარიელი ელემენტს ერთად ირიბის შიგნით რომ ტეგით. მაშინ მე ვაპირებ დააყენა ხაზის შესვენების, და თქვენ შეგიძლიათ, ალბათ, გამოიცანით რა ამ გაკეთებას აპირებს. ეს არის კიდევ ერთი სახის ფორმა შეყვანის. ეს ერთი იქნება გამოყენებული წარდგენის ფორმით. ასე რომ, ეს იქნება დიდი ღილაკი, რომელიც მომხმარებელს შეუძლია დააწკაპუნეთ წარუდგინოს ფორმით, და ეტიკეტზე, რომ ღილაკს იქნება "CS50 ძებნა. ' დახურვა ფორმა, მჭიდრო ორგანოს, მჭიდრო HTML. ვნახოთ რა გვაქვს სახით ამ ვებ გვერდზე. ნება მომეცით გადასვლა ჩემს ბრაუზერში, ნება მომეცით გადასვლა, ჯერ კიდევ, ადგილობრივი მასპინძელი. ეს არის ჯერ კიდევ index.html ასე რომ, თუ მინდა, რომ ეს ფაილი სახელად search0, მე შემიძლია უბრალოდ / search0.html, შეიყვანოთ - და პირველი ჩემი შეცდომები. რა ხდება? მე ნათლად არ გაქვთ წვდომისათვის ამ ფაილის, რატომღაც. მაგრამ ეს იმიტომ, რომ, განსხვავებით მუშაობის ჩვენ გავაკეთეთ დღემდე დო, სადაც პროგრამების წერთ მათ აღებული იქნება runable თქვენს მიერ შესრულებადი თქვენს მიერ, რომ არ ნამდვილად შემთხვევაში ინტერნეტში, რომლითაც ხანდახან დაგვჭირდება შევქმნათ ფაილი სერვერზე, მაგრამ არ გსურთ მთელი მსოფლიოს ნახოს მათ. პირიქით, თქვენ გინდათ რომ მსოფლიომ დაინახოს, რამდენიმე ფაილი მაგრამ არა სხვები, მხოლოდ პირადობა ის გულისთვის. ასე რომ უფრო დამ-in საფუძველზე, როდესაც თქვენ აკეთებთ რამ ინტერნეტში. და ნება მომეცით, ფაქტობრივად აკრიფოთ ls აქ, და ხედავთ ფაილი მაქვს, მაგრამ გავიხსენოთ, რომ თუ ls-l ხანგრძლივი, მე კიდევ აღარ ჩამონათვალი, რომელიც მაძლევს ზოგიერთი უფრო ვრცლად ამ ფაილების რომ ახლა, მართლაც, პირველად ჩვენთვის აქტუალურ საკითხებზე. გაითვალისწინეთ, რომ შორს უფლება are სახელები ჩემი ფაილი და მაშინ დრო, რომლის დროსაც ისინი ბოლოს განახლდა ან გადმოღებულია. ეს რიცხვი აქ რა ხდება? მიგაჩნიათ თუ არა გავიხსენოთ? ზომა ბაიტებში, რამდენად დიდი ფაილი. ასე რომ, როგორც ჩანს, გარკვეული სახის ლოგოს აქ რომ უფრო დიდია, ვიდრე ყველა სხვა ფაილი. ეს არის ვინ ვარ, ეს რა ვარ და რა ჯგუფის მე შემოსული მაგრამ შემდეგ, მეტი აქ მარცხენა არის ცოტა cryptic თანმიმდევრობა, და ჩვენ ვისაუბრეთ, ვფიქრობ, მოკლედ ამ წარსულში, მაგრამ ეს არ უკავშირდება მიცემის უფლებები. და მაშინაც კი, თუ ეს პატარა hazy, RW ალბათ იმას ნიშნავს, წაიკითხა და წერენ. გამოდის, რომ ეს dashes აღინიშნოს სხვადასხვა კომპლექტი ნებართვების არჩევანს. და ნიმუში არის, არსებითად, შემდეგნაირად. როდესაც ხედავთ თანმიმდევრობა dashes აქ, ისინი ასე გამოიყურება. აქ ტირე, მაშინ არსებობს კიდევ სამი dashes, მაშინ არსებობს კიდევ სამი, შემდეგ იქ კიდევ სამი. პირველი ის არის, ან dash ან მისი რეკლამის დირექტორია. ასე რომ ერთი საკმაოდ მარტივია. თუ ეს ფოლდერი, ნათქვამია დ, წინააღმდეგ შემთხვევაში ეს დეფისი. არსებობს რამდენიმე სხვა შემთხვევებში, მაგრამ ახლა ჩვენ უბრალოდ აინტერესებს ფაილების და დირექტორიების. ეს მომდევნო სამი dashes - და მე ხელოვნურად შეიყვანეს სივრცეებს. ისინი, ბუნებრივია, არ არსებობს, როცა დავინახეთ, მათ მომენტში წინ. ეს არის ფაილი მესაკუთრის უფლებები, და გავიხსენოთ საწყისი მეორე წინ, რომ წაიკითხეს და წერენ. ეს იყო, რადგან მე, როგორც პიროვნება, რომელმაც შექმნა ეს ფაილი მომენტში წინ, მე, უბრალოდ იყოს, on Linux კომპიუტერზე, აქვს უნარი გააგრძელოს კითხვა და წერა, რომ ფაილი. ამიტომ ოპერაციული სისტემის მხოლოდ მაძლევს RW ავტომატურად. ახლო ვინც ეხება ჩემს ჯგუფს, რომ სტუდენტების, რაც სახის უაზრო on ელექტრო რადგან მე ვარ ერთადერთი ადამიანი გამოყენებით ელექტრო მოწყობილობების. ნება მომეცით, უბრალოდ ტალღა ხელები რომ ახლა. მაგრამ ბოლო პირობა ყველაზე მნიშვნელოვანია ვებ. ეს არის ყველას მსოფლიოში და ფაქტი რომ რომ --- იმას ნიშნავს, რომ არავინ მსოფლიოში აქვს უფლება ამ ფაილის. ცხადია პრობლემა, ასე რომ მე უნდა დაფიქსირება ამ მიერ რატომღაც ვაძლევთ მსოფლიოს რა? მოხმარებლის & წერენ? სწორედ ალბათ მუნჯი, არა? მე არ მინდა ვინმეს ინტერნეტში წასვლა ჩემს გვერდზე და რატომღაც შეიცვალოს, რომ ფაილი, მიუხედავად იმისა, რომ მართლაც შეეძლო არა HTML ფაილი, მაგრამ პრინციპში, ალბათ, სურთ, მათ უნდა შეეძლოს მისი წაკითხვა. რას ნიშნავს, რომ მისი წაკითხვა? ეს არ ნიშნავს, ისინი აპირებენ აინტერესებს ფაქტობრივი HTML, მაგრამ ბრაუზერი უნდა შეეძლოს გარჩევის რომ მარკირებას ენაზე ყველაზე ქვედა, მარცხნიდან მარჯვნივ. ასე რომ ვინმეს ინტერნეტში უნდა შეეძლოს მისი წაკითხვა, ამიტომ მინიმალურად უნდა მივცეთ მას r. შემიძლია ამ რამდენიმე სხვადასხვა გზით, მაგრამ ალბათ უმარტივესი არის გასაშვებად ამ ბრძანების აქ. Chmod, ენის რეჟიმში, მაშინ + R, ასე რომ ყველა, ყველას მსოფლიოში + წავიკითხე, და მერე სახელით ფაილი, search0.html. არის თუ ls-l ისევ შეამჩნევთ, რომ რომ ფაილი შეიცვალა, და მართლაც, მე ჩართული R ყველასთვის. მე ასევე აღმოჩნდა ეს ჩემი ჯგუფი, მაგრამ ეს ჯარიმა, რადგან თუ მე ქცეული on ყველასთვის, ჩემი ჯგუფი არის subset რომ. ასე რომ ჯარიმა იყო. ეს მხოლოდ იმას ნიშნავს, კომპიუტერი უკვე გახადა იკითხება. ახლა ნება მიბოძეთ დავუბრუნდე ჩემს ბრაუზერში, დააწკაპუნეთ განაახლეთ. AH-ჰა. ჩვენ ახლა აქვს CS50 ძებნა. მე zoomed პატარა ხელოვნურად - საკმაოდ hideous საძიებო სისტემა. მაგრამ ვნახოთ, თუ იგი რეალურად მუშაობს. პირველი, მინდა გავაკეთოთ სწრაფი საღი აზრის შემოწმება, ნება მომეცით გააკონტროლოს დაწკაპეთ და გვერდის წყაროს ნახვა. გაითვალისწინეთ, რომ შიგნით Chrome ჩვენ ახლა ვხედავთ იგივე HTML რომ მე თვითონ შექმნა. ნუ დაბნეული აქ, თუმცა. მე არ შეგიძლიათ შეცვლის კოდი აქ, რადგან ბრაუზერის აქვს წაკითხული მხოლოდ ხედი ამ კოდექსით. ბრაუზერის ახლახანს სთხოვა ადგილობრივი მასპინძელი ამისთვის ფაილი სახელად search0.html. ეს არის სუფთა დამთხვევა, რომ ელექტრო მოწყობილობების ხდება იყოს იმავე კომპიუტერში, როგორც ჩემი ბრაუზერში. შემეძლო უბრალოდ, equivalently, არ აკრეფილი www.facebook.com/search0.html, და თუ Facebook ჰქონდა ფაილი სახელად რომ, მინდა მაშინ ხედავს მათი HTML. და, რა თქმა უნდა, მე ვერ შეცვლის ფაილი, რომელიც მოდის უკან Facebook, ან. ახლა ჩვენ სახის blurring ხაზები. ელექტრო მოწყობილობების არის ორივე სერვერზე, რომელიც ემსახურება up ვებ გვერდები, მაგრამ ასევე კლიენტს იმ გაგებით, რომ მე გამოყენებით ბრაუზერში რეალურად გაიგო, რომ სერვერზე. მოდით ვნახოთ, თუ ჩემი Google საძიებო სისტემა მუშაობს. ნება მომეცით წავიდეთ წინ და მოძებნოთ სწრაფი ყავისფერი მელა, შეიყვანოთ. და voila, მე ახლა უკვე ჩემი საკუთარი საძიებო სისტემა. მაგრამ რამდენად შეესაბამება ეს ნამუშევარი? ცოტა გაჭიმვის, მაგრამ - და ახლა ვერ ვხედავ, კერძოდ, ნაწილი რომ ინტერესთა. გაითვალისწინეთ, რა მოხდება. გაითვალისწინეთ URL. თურმე, რომ მეთოდი, მოუწოდა მიიღოს, არის სუპერ მარტივი. როდესაც თქვენს მიერ მითითებული უნდა იყოს იმ ფორმით, რომ გსურთ 'მიიღოს' შედეგებს რამდენიმე სერვერზე, რასაც ის აპირებს არის მიიღოს რასაც თქვენ აკრეფილი შევიდა ფორმა და მისი მისამართი. იგი აპირებს standardize როგორ იგი იღებს შევიდა URL შემდეგნაირად. გაითვალისწინეთ, რომ ეს არის URL რომ იყო ღირებულება ჩემი სამოქმედო ატრიბუტი. სწორედ აქ მინდოდა ფორმა მოხვდნენ. მაგრამ შემდეგ შეამჩნევთ ამ კითხვის ნიშნის. ეს არის კონვენციის ვებ რის უზრუნველყოს მომხმარებლის შეყვანის to ნახვა, თქვენ დამატება to URL კითხვის ნიშნის, და მაშინ თქვენ მთელი bunch of საკვანძო მნიშვნელობის წყვილის. სახელით გასაღები, სხვაგვარად ცნობილია როგორც პარამეტრი Web, მაშინ თქვენ თანაბარი ნიშანი, მაშინ თქვენ ღირებულება რომ პარამეტრი. ასე რომ არსებითად ცვლადის სახელი და ცვლადი ღირებულება, მაგრამ იმ ცვლადის სახელებისაგან და ღირებულებების მოვიდა HTML ფორმით. რატომ pluses არსებობს, როგორ ფიქრობთ? იმის გამო, რომ მე არ აკრიფოთ + შორის ჩემი სიტყვები. [სტუდენტი გაუგებარია] >> ჰო მხოლოდ ინტერვალი. შანსი, როცა ვხედავთ URL, არსებობს არასდროს ნებისმიერი ფართები, თუ მხოლოდ იმიტომ თუ იყო, თქვენ ვერ ნამდვილად დააკოპირეთ და ჩასვით იგი შევიდა IM ან ელ, რადგან ეს იქნებოდა შესვენება. გსურთ მთელი რამ, რომ ერთი მომიჯნავე სიმებიანი პერსონაჟების. ამიტომ ბრაუზერს smart საკმარისი გააცნობიეროს, Uh-uh. ნუ უბრალოდ დააყენა სივრცეში არსებობს. ნება მომეცით encode სივრცის ზოგიერთ სტანდარტის გზა. ერთი კონვენციების ამისათვის არის ის, რომ აქვს ბრაუზერი ავტომატურად დააყენა + სადაც თქვენ წინააღმდეგ შემთხვევაში აქვს სივრცეში. ახლა, განცხადებების Google უკვე სახის მოსახერხებელი. მე ნამდვილად არ შექმნა ამ გვერდზე, მაგრამ ისინი არ prepopulated საკუთარი ტექსტური ველი რა, კერძოდ, მაქვს აკრეფილი შემოსული დავუშვათ, მინდა ვეძებოთ რაღაც, როგორიცაა lazy dog. მე შემიძლია მხოლოდ აკრიფოთ ამ აქ, ხელახალი ძებნა. გაითვალისწინეთ, რომ URL ცვლის აქ, მაგრამ შეამჩნია მაშინ, რომ მე შემიძლია რეალურად მოძებნოთ არაფერი მინდა მხოლოდ გაგება, თუ როგორ მისამართები მუშაობა. მე ვერ გავაკეთებ ზარმაცი კატა, მიუთითოთ, და შენიშნავს, ახლა მე მიღების ძალიან ზარმაცი - უნდა? ვგრძნობ როგორც ჩვენ უნდა. მივიღებ ძალიან ზარმაცი კატა. ყველა უფლება. ეს არის ერთ stupidest რამ გავაკეთეთ. თუმცა, ეს კიდევ ზარმაცი კატა. Anyhow, რა გასაღები takeaway აქ? ახლა ჩვენ ერთგვარი თამაში სამყაროში HTTP. HTML მხოლოდ ამ მარკირებას ენაზე, ღია tag, მჭიდრო tag, რომ ეუბნება ბრაუზერის როგორ გაწევა შინაარსის ვებ გვერდზე. მაგრამ როდესაც თქვენ დავიწყოთ გადამცემი მონაცემები მასშტაბით ინტერნეტ შორის ბრაუზერში და სერვერზე, რომ როდესაც ოქმი ცნობილია, როგორც ჰიპერტექსტის გადაცემის პროტოკოლი იღებს. ეს არის ერთგვარი ადამიანის კონვენციით; როდესაც სემ და მე ხელი ჩამოართვა ორშაბათს, დაწყებული კავშირი და შემდეგ იხურება დაკავშირებით, იგივე იდეა აქ. როგორ ხდება Google-ის შედეგებს დაბრუნებას მე? როგორ არის ჩემი ფორმით წარდგენის აპირებს Google? ისე, გავიხსენოთ, მეორე დღეს, რომ ის, რაც მართლაც მიმდინარეობს ქვევმოთ Hood როცა თქვენ მოითხოვოს ვებ გვერდი, თქვენი ბრაუზერის აგზავნის გარკვეულწილად-cryptic გაგზავნა მოსწონს GET / HTTP/1.1 ამისთვის ნაგულისხმევი საწყისი გვერდი. ანუ, ამ შემთხვევაში, რადგან მე კონკრეტულად მოითხოვა ადრე search0.html, შემდეგ, ეს იქნება გარკვეულწილად-cryptic გაგზავნა რომ ჩემი ბრაუზერი უგზავნის ელექტრო მოწყობილობების. ანუ, ამ შემთხვევაში Google, რა რეალურად გაუგზავნა არის თხოვნით / ძიება, და შემდეგ? q = ზარმაცი კატა, ერთად plus არსებობს. ასე რომ, ეს მესიჯი, რომ მე, ადამიანური, ვარ არასოდეს აკრეფით, მაგრამ მიმდინარეობს მიერ გამოგზავნილი ჩემი ბრაუზერი, ასე HTTP ხდება. ეს არის ეკვივალენტი ჩვენი რომელმაც შეძრა ხელში. ეს არის თხოვნა, და სერვერის შესახებ გამოაგზავნოს პასუხი. მოდით შევხედოთ ამ ქვევმოთ hood. როგორც ადრე, ჩვენ შეგვიძლია ქმნის ამ სპეციალური სფეროში ბრაუზერში. ნახვა გვერდზე, შეამოწმოს ელემენტებს. ასე ქვეშ შეამოწმოს ელემენტს შეამჩნევთ, რომ რა მოხდა Chrome, და IE და Firefox აქვს მსგავსი მექანიზმები, ჩვენ გვაქვს ამ დეველოპერი ინსტრუმენტები ხელმისაწვდომი ჩვენთვის. ჩვეულებრივი ხალხი არ გამოიყენოს ამ ჩანართების. მაგრამ ჩვენ, ახლა, დაინტერესებული ვართ, რა ხდება ქვევმოთ hood at ქსელის დონეზე. ასე რომ, თუ მე დახევის up ქსელის დონეზე აქ, ნება მომეცით წავიდეთ წინ და გაფართოებას ფანჯრის, გახსენით ამ ჩანაწერში აქ და შევხედოთ headers. რა ხდება, როდესაც მე ვთხოვ ფაილის სერვერზე არის ჩემი ბრაუზერის აგზავნის მთელი bunch რამ. და ნება მომეცით იხილე წყარო. ასე ქვეშ მოთხოვნით სათაურების, და ეს მხოლოდ Chrome გვიჩვენებს ჩემთვის ზოგიერთი დიაგნოსტიკური გამომუშავება, სახის მოსწონს debugger რაიმე სახის, შეამჩნევთ, რომ რასაც მე ხაზგასმით აქ არის ზუსტად ის, რაც Chrome აგზავნის სერვერზე, რათა მოითხოვოს ფაილი სახელად search0.html. იგი ეუბნება სერვერზე, თუ რას ფიქრობს, მისი სახელი, მადლობა ამ მასპინძელი მსხვილი ნაწლავის სფეროში, მაშინ არსებობს გარკვეული საკმაოდ ეზოთერულ პერსონალის აქ, ისევე როგორც რაიმე გასაკეთებელი ერთად ვადები და ჯერ, რაღაც არ უკავშირდება ენებზე, რომ ბრაუზერის ესმის, მაგრამ ნამდვილად მნიშვნელოვანი ხაზები ეს პირველი ორი აქ. რას სერვერზე უპასუხოს? ისე, თუ ჩვენ გადახვევა ქვემოთ აქ და იხილე წყარო ამ რამ, რომ სერვერზე გამოეხმაურა ერთად გარკვეულწილად cryptic გაგზავნა ისევე, 304 არ შეცვლილია. სწორედ უცნაური, ნება მომეცით რეალურად ცდილობენ დაფიქსირება ამ. ნება მომეცით გეჭიროთ Shift და დაწკაპეთ განაახლეთ აქ ვაიძულოთ ბრაუზერზე რეალურად ამ მოთხოვნას პირველად. მაშინ ნება მომეცით დიდი ზომით, და ვნახავთ, რომ სერვერის საპასუხოდ, რადგან გავმართე ცვლა, არის 200 OK. ასე რომ თქვენ ალბათ მინახავს ნომერი 200 კონტექსტში Web, მაგრამ რა ნომრები თქვენ ზოგჯერ ჩანს მოულოდნელად საწყისი სერვერზე? 404, ფაილი ვერ მოიძებნა, 403, აკრძალული, 500, სერვერული შეცდომის. ასე რომ ამ რიცხვითი კოდები, რომ მსოფლიო იყენებს ვებ უნდა ნიშნავდეს შეცდომები, ისევე, როგორც C ფუნქციები დასაბრუნებლად შეცდომები და მთავარ დასაბრუნებლად გასასვლელში კოდები. 200, თუმცა, თქვენ იშვიათად ვხედავ, რადგან ეს იმას ნიშნავს, ყველა კარგად არის. და 304 თქვენ ალბათ არასდროს ვხედავ, რადგან რა არის ეს signifying? თითქოს არაფერი - ვნახოთ, თუ შეგვიძლია სიმულაცია ეს კიდევ ერთხელ - ოჰ, ახლა ეს არ თანამშრომლობს. 304 თქმით არ შეცვლილია, რატომ იყო სერვერზე კი პასუხობს? კარგად, ამისთვის ეფექტურობის, სერვერზე ავტომატურად თქვენთვის, თუ ფაილი არ შეცვლილა, იგი არ retransmit მთელი HTML ფაილი. ეს კიდე უბრალოდ ვუთხრა ბრაუზერის იგი არ შეცვლილა. ისარგებლეთ ასლი თქვენ უკვე გაქვთ. ასე რომ არსებობს ამ ცნება ქეშირების ინტერნეტში შესრულების, ასე რომ თქვენ არ დახარჯონ დრო და ნარჩენების სიჩქარეს ფაილების ჩამოტვირთვის ისევ და ისევ უმიზეზოდ. მაგრამ ამ გვერდზე, ახლა, იყო სუპერ მარტივია, და ეს მხოლოდ მიჩვენა HTML რომ დაბრუნდა. მოდით რეალურად გამოიყენოს ქსელში tab ახლა ამის გაკეთება Google ძებნა მოსწონს სწრაფი ყავისფერი მელა. ნება მომეცით, ხოლო შემდეგ დააჭირეთ CS50 ძებნა, და ახლა, ცნობა, ბოლოში აქ მთელი bunch პერსონალის დაბრუნდა რადგან, როდესაც მე ეწვევა უძრავი ვებ როგორიცაა Google.com, მათ აქვთ, სურათებით, მათ აქვთ ტექსტი, მათ აქვთ ენა მოუწოდა JavaScript არსებობს. ასე რომ ყოველ სტრიქონს ამ მაგიდასთან ქვემოთ აქ წარმოადგენს, რომ რაღაც Google Spit out საპასუხოდ ჩემი ერთჯერადი თხოვნით. ერთი მე აინტერესებს, თუმცა, ეს პირველი. და თუ წასვლა ძებნა, მოთხოვნა, დააწკაპუნეთ იხილე წყარო აქ, შეამჩნევთ, რომ, მართლაც, cryptic გაგზავნა, რომ ჩემი ბრაუზერის გაუგზავნა Google-ის იყო ამ ორ ხაზს აქ, მოჰყვა რამდენიმე arcane ინფორმაცია ქვემოთ აქ რაც ჩვენ იგნორირება ახლა. მაგრამ გაფრთხილების, ძალიან, რა Chrome საკმაოდ მოსახერხებელი ერთად, ასევე აჩვენებს ჩემთან მოთხოვნის სტრიქონი რომ გადაეგზავნა სისტემაში ასე რომ, ვიდრე ეჩვენებინა ამ, რომელიც სიტყვასიტყვით გაიგზავნა, თუ ჩაირთოს გაშიფრული გამოჩნდება, Chrome, მხოლოდ გამართვის მიზნებისათვის, დეველოპერები ჩვენნაირი, უბრალოდ გვიჩვენებს ჩემთვის ადამიანის მეგობრული ვერსია - რომ არ არის, თუ როგორ მართლწერის მელა, სავარაუდოდ. მე უბრალოდ დაენახა ეს ახლა - მაგრამ ეს აჩვენებს, თუ რა მე, როგორც ჩანს, აკრეფილი. იმავდროულად, საპასუხოდ, რომ მოვიდა უკან სერვერზე კვლავ 200 OK. მაგრამ შედის, რომ საპასუხოდ, რა თქმა უნდა, თუ ჩვენ რეალურად ნახოთ გვერდის HTML - უკაცრავად, ეს არის პატარა კლავიატურის მალსახმობი წავიდა awry დღეს. მე გაუმკლავდეთ ამ მოგვიანებით. ასე რომ, თუ ჩვენ რეალურად ნახოთ გვერდის წყარო, რაც შემიძლია ქვემოთ აქ დაჭერით საპასუხოდ, ეს არის ის, რაც სინამდვილეში Spit უკან, გარდა ამისა cryptic 200 OK შეტყობინება სერვერზე. პატარა cryptic, მაგრამ სად არის ეს ყველაფერი მოდის? ისე, მოდით ერთი სხვა რამ აქ. კიდევ ერთი გარკვეულწილად-cryptic ბრძანება, მაგრამ ამ ერთი სახის სისუფთავე, რომ ის ავლენს ჩვენთან ზუსტად რა ხდება ქვეშ hood. ამიტომ დავბრუნდი ჩემს Mac აქ, მე არ უკავშირდება მეშვეობით პროგრამის მოუწოდა SSH, უსაფრთხო შელი, სხვა სერვერზე რადგან ყველაზე ჰარვარდის კომპიუტერების დაბლოკოს ბრძანება ჩვენ შესახებ გასაშვებად რადგან იქ ამ ბრძანების ზოგიერთი სერვერები მოუწოდა traceroute რომელიც საშუალებას გაძლევთ კვალი მარშრუტი შორის რაოდენობა და ბ, და დღემდე ჩვენ აღების სრულიად თავისთავად რომ შემიძლია აკრიფოთ Google.com და როგორღაც მონაცემების მიღება უკან საწყისი შუა ნაწილამდე იყვნენ ქვეყნის მასშტაბით ან შუა ნაწილამდე იყვნენ მთელს მსოფლიოში. With traceroute შეგვიძლია რეალურად ჩაყვინთვის პატარა ღრმა თუ როგორ მუშაობს ინტერნეტში და ვნახავთ რა ხდება ქვეშ hood. მოდით წავიდეთ წინ და თვითნებურად ტრასირებისათვის, ვთქვათ, Stanford.edu, რომელიც მთელი ქვეყნის მასშტაბით, და დააჭიროთ. ეს ბრძანება შეიძლება იყოს სუპერ სწრაფი ან სუპერ ნელი, მაგრამ რა ჩვენ ახლა ვხედავთ, ხაზს, არის ყველა ერთი ნაბიჯები ან hops და ჩვენს შორის Palo Alto, ან სტენფორდის, სადაც მათ თავიანთი ვებ სერვერზე. რას თითოეულ ამ ხაზები წარმოადგენს უფრო კონკრეტულად, თუმცა? ნაჭერი jargon ინტერნეტიდან? [სტუდენტი გაუგებარია] >> რა არის რომ? [სტუდენტი გაუგებარია] >> Oh, ასე რომ ჯერ, მაგრამ რას თითოეული მწკრივი - რას ვგულისხმობ მიერ hop? ისე, არსებობს ეს ყველაფერი ინტერნეტში მოუწოდა მარშრუტიზატორები. და მარშრუტიზატორები, როგორც სახელი ვარაუდობს, მარშრუტი ინფორმაციის წერტილი აღვნიშნო B. მაგრამ არსებობს რამდენიმე რაოდენობა მიღმა და ბ. არსებობს C და D და E და F შორის ზედიზედ 1, რაც ხდება, რომ იყოს ჩემი კომპიუტერის IP მისამართი, ან ჩემი რიცხვითი მისამართი, რომელიც ცალსახად განსაზღვრავს ჩემი კომპიუტერი, და ნაბიჯი 15, რომელიც რეალურად მეექვსე სერვერზე, როგორც ჩანს, რომელიც მე inferring ამ, ან ვერსია 6 მათი სერვერზე სტენფორდის. მაგრამ რა სახის სისუფთავე არის, ვხედავთ გზას ადგას რომ ჩემი 0 და 1 ს იღებენ, ჩემი კომპიუტერიდან სტენფორდის. ასე ნაბიჯი 1 არის ჩემი საკუთარი კომპიუტერის მისამართზე. ყველა კომპიუტერს ინტერნეტში აქვს უნიკალური იდენტიფიკატორი, რომელიც ასე გამოიყურება. Number.number.number.number. სადღაც ამ კამპუსში, ალბათ მეცნიერების ცენტრი, არის როუტერის მოუწოდა Core Gateway 2-te83, რასაც არ უნდა ნიშნავდეს, ასე რომ ეს არის ერთ ერთი ჰარვარდის მისი დიდი ლამაზი მარშრუტიზატორები, რომ მარშრუტების ბევრი მათი მოძრაობის. აქ არის კიდევ ერთი ჰარვარდის ს მარშრუტიზატორები, ამ ერთი სასაზღვრო Gateway, საზღვრის მნიშვნელობა ალბათ on პერიფერიაზე კამპუსში სადღაც. მაშინ არსებობს NOX ერთი, ზედიზედ 4, რომელიც ჩრდილოეთ გზაჯვარედინზე, რაც დიდი ISP, ინტერნეტ მომსახურების პროვაიდერი, რომ მსგავს ადგილებში ჰარვარდის დააკავშირებს მდე. მაგრამ შემდეგ რამ კიდევ ცოტა საინტერესო ხაზი 6. სად არის ჩემი ბიტი უეცრად? Kansas. მსოფლიოს ჩვევა გამოყენებით აეროპორტის კოდების ბევრი ეს ყველაფერი, ან მინიმუმ შემოკლებული შტატები ან ქალაქებში, ასე გამოიყურება, სულ რაღაც 60 ms, პაკეტი ინფორმაცია, 0 და 1 არის ჩემი ლეპტოპი მივიღე ყველა გზა Kansas, და კვლავ, 60 ms. უფრო მეტიც, შემდეგ Kansas, მათ ტურის მეშვეობით Houston, ალბათ, როგორც მიერ შემოთავაზებული სახელი ამ სერვერზე. ამიტომ ისევე როგორც სერვერს ინტერნეტში უნდა ჰქონდეს რიცხვითი მისამართი, მას ასევე შეუძლია, არჩევითად, აქვს ოდნავ მეტი ადამიანის მეგობრული მისამართი რომ ადამიანები გამოვიდა. ახლა კი, ნაბიჯი 8, ჩვენ არ ვიცით, რა არის ეს. ზოგჯერ მარშრუტიზატორები მხოლოდ სახის იგნორირება თქვენ, და მათ უბრალოდ არ უპასუხოს კითხვებს, ასე რომ ჯარიმა. ერთი შემდეგ ნაბიჯი 8 აშკარად სად? L.A. ცნობა, მხოლოდ 78 ms, რა სჭირდება ჩვენს ადამიანებში მოსწონს 6 + საათი გავაკეთოთ ფიზიკურად, იღებს პაკეტი ინტერნეტში ინფორმაციის 78 ms გამგზავრება, რომ შორს. ნაბიჯი 10 არის ლა ისევე, და ნაბიჯი 11 როგორც ჩანს, არ წავიდა ჩრდილოეთით, up ახლოს სტენფორდის. ეს არის მათი საზღვრის როუტერი, ან საზღვრის როუტერთან. წყვილი ნაბიჯები სტენფორდის რომ იგნორირებას ჩვენთვის, და ბოლოს, მივაღწევთ სერვერზე რაღაც 87 ms. ახლა, ყველა ეს ციფრები, როგორც განზე, უბრალოდ გითხრათ, რამდენი ხანი სჭირდება მონაცემების მისაღებად ჩემგან თითოეულ ამ მარშრუტიზატორები, და ეს არ accumulative. რა ამ პროგრამის ამჯამად არის, ეს პირველი აგზავნის გაგზავნა, არსებითად, პირველი როუტერთან. მაშინ ერთი მეორე როუტერი მაშინ ერთი მესამე როუტერი, საზომი ყოველ ჯერზე. ასე რომ თეორიულად, ამ ჯერ იქნება მზარდი ან თუნდაც საკმაოდ ახლოსაა ერთმანეთთან, და, მართლაც, ვინც არიან უფლება აქ კამპუსში არიან სუპერ პატარა. როგორც კი დაიწყება აპირებს მთელი ქვეყნის მასშტაბით, სჭირდება მონაცემები პატარა აღარ გამგზავრებას, დაახლოება 100 ms, მისცეს ან მიიღოს. მაგრამ მოდით წავიდეთ სხვა მიმართულებით არის. როგორ შესახებ კემბრიჯის უნივერსიტეტის დიდ ბრიტანეთში? ნება მომეცით ნაცვლად აწარმოებს traceroute of www.cam ამისთვის კემბრიჯი, . AC აკადემიური,. დიდი ბრიტანეთი, და დააჭიროთ აქ. ეს იყო საკმაოდ Damn სწრაფად. ჩემი მონაცემები სიტყვასიტყვით წავიდა კემბრიჯი, ინგლისი, რომ გაყოფილი მეორე დრო. ასე რომ ვნახოთ გზა, რომელსაც დასჭირდა. ჰარვარდის, ჰარვარდის, ჰარვარდის, ჩრდილოეთ გზაჯვარედინზე, რაც ISP, და მაშინ ეს არის ჩრდილოეთ გზაჯვარედინზე, ხოლო შემდეგ bam. რა არის შორის ნაბიჯები 6 და 7, როუტერი 6 და 7? Atlantic Ocean. და ჩვენ ამ inferring იმისა, რომ ჩვენ აქედან 20 ms აქ 80 ms აქ. ასე რომ რაღაც აიღო 60 ms, მისცეს ან მიიღოს, მიიღოს დასრულდა. და ეს იყო ალბათ დიდი ორგანოა წყალი. რა გრძელდება ამის შემდეგ? ისე, აქ ვართ, ლონდონში მხოლოდ 88 ms მოგვიანებით. გაძლიერებული ლონდონი, მეტი ლონდონი, არ ვიცი, სადაც ეს არის, მაგრამ ჩვენ ვივარაუდოთ, რომ ის გარეთ ლონდონის, კემბრიჯის აქ, და საბოლოოდ ჩვენ - სიტყვასიტყვით, კემბრიჯის უნივერსიტეტის . Something.net, ხოლო შემდეგ, საბოლოოდ, შეესაბამება 16, მათი სერვერზე აშკარად მოუწოდა Scorpius ქვევმოთ hood, მიუხედავად იმისა, რომ ჩვენ ვიცით, როგორც www. სახის გონება-აფეთქებით, ვფიქრობ. პირველად მე ოდესმე გააკეთა, ეს მთლიანად ააფეთქეს ჩემი აზრით. სამწუხაროდ, ჰარვარდის ბლოკავს ამ სახის მოძრაობის, როგორც წესი, ქსელში. ასე, რომ თქვენ ვერ გავაკეთებთ სუპერ მარტივად. გააცნობიეროს, თუმცა, ამ აქ არის შესაძლებელი. ყველა უფლება. ავიღოთ ჩვენი 5 წუთიანი შესვენება აქ. ჩვენ დავბრუნდებით და ჩაყვინთვის წელს გაღრმავდება. ასე რომ, ჩვენ უკან და ჩვენ სახის ambled შესახებ რამდენიმე სხვადასხვა მიმართულებით აქ. მოდით შევაჯამოთ ზუსტად რა ხდება აქ. ჩვენ დავიწყეთ საუბარი ვსაუბრობთ ამ ენის მოუწოდა HTML. ისევ და ისევ, არ პროგრამირების ენაზე. უბრალოდ მარკირებას ენა რომ უფრო მეტად შესახებ ესთეტიკის და სტრუქტურირება შინაარსის სახით ვებგვერდზე. მაგრამ HTML, ამიტომ სჭირდება გარკვეული სახის მექანიზმი სამოგზაუროდ შორის ბრაუზერში და სერვერზე. HTML ამიტომ სახის RIDES თავზე ამ სხვა ენაზე ან სწორად, ოქმი, რომელიც ცნობილია როგორც HTTP. და HTTP, როგორც ჩვენ ვხედავთ მას ჯერჯერობით არის სახის ანალოგიური ამ ადამიანის კონვენციის შერყევისკენ ხელში. როდესაც ბრაუზერში სურს მოითხოვოს გვერდი საწყისი სერვერზე, ის აგზავნის, რომ "მიიღოს" მოთხოვნის ბრაუზერზე სერვერზე, და შემდეგ სერვერი პასუხობს რიგ მოსწონს 200, ყველა არის okay, ისევე როგორც HTML ან ცუდი ხმების მოსწონს 404, ფაილი ვერ მოიძებნა. მაგრამ ამავდროულად, HTTP თავად არ არის ინტერნეტი, თავისთავად. HTTP მხოლოდ სამსახურის, თვისება ინტერნეტ ჰგავს G სტატისტიკა კიდევ ერთი მომსახურება, ჰგავს ელ კიდევ ერთი მომსახურება. აქ ყველა სახის რამ შეგვიძლია გავაკეთოთ ინტერნეტში. HTTP მხოლოდ ერთი იმ პროგრამებისთვის. ასე თავზე - HTTP არის თავზე რაღაც რაც ჩვენ არ უხსენებია სახელის მიხედვით, თქვენ ალბათ მსმენია სახელის მიხედვით, TCP / IP. ასე ამბავი ჩვენ უბრალოდ განუცხადა იქ არის ყველაფერი რა მონაცემები მოგზაურობს წერტილი აღვნიშნო B. და ამ შემთხვევაში, ჩვენ ვნახეთ ძალიან დაბალი დონე როუტერი რომ როუტერი რომ როუტერი რომ როუტერი, როგორ მონაცემები რეალურად მიმდინარეობს გადამდები. მაგრამ გზაზე, იგი აპირებს ექმნებათ სხვადასხვა დაბრკოლებისა. გარდა ამისა ამ მარშრუტიზატორები, არის რამ მოუწოდა ეკრანები ინტერნეტში, და ა.შ. მონაცემები, როგორიცაა, რომ ჩვენ უბრალოდ გადამცემი ჩემგან რომ სტენფორდის, ჩემგან, კემბრიჯი, ეგზავნება, ამ ეტაპზე, რაღაც მოუწოდა IP მისამართი. ჩვენ ვნახეთ ამ მომენტში წინ, და IP მისამართი მხოლოდ რიცხვითი მისამართი ფორმით w.x.y.z, სადაც თითოეული მათგანი შორის, მისცეს ან მიიღოს, 0 და 255, თუმცა ვერ საკმაოდ გამოიყენონ ყველა იმ ნომრები. მაგრამ თითოეული ეს ადგილი მფლობელებს არის რიცხვი 0 და 255. ამიტომ IP მისამართი ამ დღეებში არის 32 ბიტი. ახლა, რომ გვაძლევს რამდენი შესაძლო IP მისამართები მსოფლიოში? დაახლოებით 4 მილიარდი, რადგან ნებისმიერ დროს ჩვენ დათვლის წელს უფლებამოსილების 2 ყველა გზა მდე 32 რაღაცის, რომ ჩვეულებრივ გვაძლევს 4 მილიარდი. ასე რომ ბევრი IP მისამართები, მაგრამ თქვენ ალბათ წავიკითხე, ან შეიძლება არის ცნობა, პოპულარული პრესა, ბიძგი მიმართ ახალი ვერსია IP მოუწოდა IPv6. ამ დროისათვის ჩვენ იყენებთ ვერსია 4. მართლაც არ ყოფილა ვერსია 5, ჩვენ უბრალოდ jumping უფლება 6. ვერსია 6 აპირებს გამოიყენოს 128 ბიტი ამისთვის IP მისამართები, რომელიც freaking უზარმაზარი. ჩვენ არ უნდა ამოიწურა საკმაოდ ზოგიერთი ახლა, მაგრამ ჩვენ უკვე დავიწყეთ ამოიწურა ვერსია 4 IP მისამართები, რადგან ყველას უნდა გვქონდეს არა მხოლოდ რამ, როგორიცაა ლაპტოპები და კომპიუტერები, ბევრი გვაქვს ტელეფონები, ბევრი გვაქვს სხვა მოწყობილობები მოსწონს TiVo და მოსწონს, რომ აქვს IP მისამართები თავს. ჰარვარდის თავად ათიათასობით კომპიუტერები. ასე, რომ მსოფლიო გულწრფელად გაშვებული გარეთ IP მისამართები, როგორც მინიმუმ ამ ფორმით. ასე რომ მომდევნო რამდენიმე წლის განმავლობაში, თქვენ აპირებთ ვხედავ მისამართები საკუთარ კომპიუტერები ალბათ ნელა შეიცვალოს როგორც უფრო და უფრო მეტი კომპანიები და უნივერსიტეტებში დაიწყოს მხარდასაჭერად ახალი ვერსია. მაგრამ IP მისამართი არ არის საკმარისი კომპიუტერის მოითხოვოს მონაცემები კომპიუტერულ ბ. რადგან კომპიუტერის ბ შეიძლება იყოს სერვერი, და სერვერზე, როგორც მე ზემოთ აღინიშნა, შეგვიძლია გავაკეთოთ bunches რამ. მას შეუძლია უმასპინძლოს ვებ გვერდები, ეს შეიძლება იყოს ფოსტაზე, ეს შეიძლება იყოს სკაიპის სერვერზე, მას შეუძლია იყოს G სტატისტიკა სერვერზე. ყველა ეს სხვადასხვა სახის მომსახურებას, რომ შესაძლებელია სერვერზე შეიძლება ყველა, ფიზიკურად იყოს იმავე მანქანა. ასე რომ გარდა IP მისამართები, მსოფლიოს რამ მოუწოდა პორტები ინტერნეტში. პორტის მხოლოდ ნომერი, ამიტომ არსებობს უნიკალური ნომერი, HTTP. მისი ნომერია 80. HTTP ასევე იყენებს ნომერი 443, მაგრამ უფრო კონკრეტულად, ამისთვის დაშიფრული HTTPS. როდესაც ხედავთ s, უსაფრთხო, რომ გამოყენებით სხვადასხვა ნომერზე. არსებობს სხვა ნომრები, როგორიცაა 25, გამოიყენება რაღაც მოუწოდა SMTP, სხვაგვარად ცნობილია როგორც ელ. არსებობს რაღაც მოუწოდა 22 ამისთვის SSH, და არსებობს მთელი bunch სხვა პორტები out არსებობს. ახლა ჩვენ ადამიანები იშვიათად ვხედავთ ამ ნომრებზე. თუმცა, როდესაც თქვენ აკრიფოთ მისამართი მოსწონს http://www.facebook.com, ბროუზერი ფარულად ჩასმა 80, რადგან თქვენ იყენებთ HTTP. თუ თქვენ, ნაცვლად, ტიპი HTTPS, ის ფარულად ჩასმა 443. და ჩვენ შეგვიძლია სახის ვხედავთ ამ ხელით თუ დახევის up brower და წასვლა http://www.facebook.com:80. ამიტომ ცალსახად მოტივით არა მხოლოდ სახელწოდება ნახვა მაგრამ პორტი, რომ მინდა გაიგო, და დააჭიროთ. შენიშნავს ქრება, რადგან ბრაუზერის ვარაუდობს, OH, 80, მე კი არ აპირებს გადაიტვირთოთ აჩვენებს, რომ თქვენ. მაგრამ მიზეზი არის ის, რომ თუ რეალურად სურდა გაგზავნას ვინმეს ელ, მინდა ნამდვილად უნდა გაგზავნის იგი მათ პორტი 25, რომ მიმდინარეობს SMTP. ცოტა oversimplification, მაგრამ ზოგიერთი გაქვთ მეგობრები ვინც რეალურად მუშაობს Facebook, და ისინი, ასევე, აქვს სერვერები, რომ მიიღოთ ელ. ნებისმიერ დროს თქვენ აგზავნით ელექტრონული ფოსტის, თუ რა gmail აკეთებს თქვენთვის ან Outlook ან რასაც პროგრამა თქვენ იყენებთ, ეს ერთგვარი ფარულად ჩასმა, რომ ნომერი, ასევე, 25, ამ შემთხვევაში. ეს ეს კომბინაცია IP მისამართი და ნომერი, რომელიც ცალსახად განსაზღვრავს კომპიუტერი ინტერნეტში და კონკრეტული მომსახურების რომ კომპიუტერში. ახლა, რა თქმა უნდა, ყველაზე მეტად ჩვენს ალბათ არასდროს აკრეფილი ხელით IP მისამართი. იქნებ გაქვთ ელექტრო მოწყობილობების, მაგრამ რეალურ ცხოვრებაში, არა იმდენად. რატომ არ აკრიფოთ IP მისამართები შევიდა ბრაუზერები? იგი იმუშავებს, ფაქტობრივად, ვხედავთ ამ; ნება მომეცით გაჩვენოთ ერთი სხვა ბრძანება, რომ უნდა ვიმუშაოთ საუკეთესო სადმე ჰარვარდის ს კამპუსში on Mac ან PC. არსებობს ამ ბრძანების მოუწოდა nslookup, name server lookup. თუ გავითვალისწინებთ up www.cnn.com, აღმოჩნდება, რომ CNN აქვს - ოჰ, საინტერესოა. CNN დაიწყო გამოყენებით Amazon ვებ სერვისები. მოგეხსენებათ of Cloud Computing, Amazon-ის ერთ დიდ მოთამაშეთა Cloud Computing. მე უბრალოდ საერთოდ იყო, მე ვთქვი, "მომეცი მისამართი CNN-ის სერვერზე, ' მაგრამ აღმოჩნდება, რომ CNN-ს სერვერზე მართავს Amazon, Amazon ვებ სერვისები, ამ ვარაუდს. და მისამართი, რომ სერვერზე არის ამ აქ. ასე რომ არ ვარ დარწმუნებული, თუ ეს იმუშავებს, რადგან არ გამოიყენება გამოიყენოთ Amazon. მაგრამ მოდით ცდილობენ ამ; http://, IP მისამართი, მიუთითოთ, და - იგი იმუშავებს? დიახ. იგი იმუშავებს. ინტერნეტი სუპერ ნელი დღეს. მაგრამ, მომენტში, ნახავთ ზოგიერთ საინფორმაციო ამბავი. იქ ჩვენ წავიდეთ. ბანკი ამერიკის მიმდინარეობს უჩივლა. ყველა უფლება. ეს იმიტომ რომ ამ IP მისამართი უბრალოდ მოხდება მიერ სინონიმი www.cnn.com. რა თქმა უნდა, ეს იქნება საშინელი მარკეტინგული ვთქვა, გვეწვიოთ ინტერნეტში ზე 50.112.94.127. ნეტავ არასდროს გვახსოვს. ისე კი ამ დღეებში შეიძლება გავიხსენოთ რამ მოსწონს 1-800-COLLECT ან mnemonics მსოფლიოს გამოვიდა ტელეფონის ნომრები. რაც, ადრე ტელეფონები, იყო საკმაოდ რთული უნდა გვახსოვდეს სანამ არ შეეძლო უბრალოდ აკრიფოთ მას და დაივიწყოს იგი. ამიტომ ვებ, ძალიან, აქვს ამ კონვენციის სახელები და IP მისამართები, და არსებობს ეს ყველაფერი იქ მოუწოდა DNS სერვერების, დომენი სისტემები სერვერები, რომ თარგმნოს IP მისამართები შევიდა სახელები და პირიქით. ასე რომ მისი რა ხდება ქვეშ hood. საბოლოო ჯამში, ჩვენ გვაქვს TCP / IP, რომელიც ამ ძალიან მაღალი დონის პროტოკოლი რომ, მართლაც, უბრალოდ იღებს 0 და 1 ს მასშტაბით ინტერნეტი, და ეს ასე იქცევა გამოსული მათთვის ვირტუალური კონვერტში, თუ გნებავთ, და წერილობით გარეთ კონვერტში IP მისამართი დანიშნულების, ასევე რიცხვითი პორტის ნომერი სამსახურის შესახებ, რომ დანიშნულების, რომ მას სურს გაიგო. ამასობაში, on კონვერტში არის კიდევ რაღაც ცნობილი როგორც დაბრუნების მისამართი, რომელიც არის თქვენი IP მისამართი, იმიტომ რომ როცა CNN იღებს პაკეტი ინფორმაცია თქვენგან, ხსნის ამ ვირტუალურ კონვერტში, ხედავს, რომ გსურთ მთავარი გვერდი, იგი დარწმუნებულია, საწყისი გამგზავნი ნაწილი ამ ვირტუალურ კონვერტში ვის გაგზავნას HTML თავში. მოდით შევხედოთ ამ პატარა უფრო დეტალურად. ეს არის საწყისი კომპანია მოუწოდა Ericson, საწყისი რამდენიმე წლის უკან. ისინი რამდენიმე თავისუფლებებს, თუ როგორ ინტერნეტში რეალურად მუშაობს, მაგრამ ეს ხატავს ბევრად უფრო ვიზუალური სურათის ვიდრე უბრალო ცარცით აქ. ამიტომ მე გაძლევთ "ცოტა ინტერნეტი." [მთხრობელი] პირველად ისტორიაში, ადამიანი და მანქანა ვმუშაობთ ერთად, აცნობიერებენ ოცნება. აერთიანებს ძალა, რომელიც დარწმუნებულია, არ გეოგრაფიული საზღვრები. განურჩევლად რასისა, Creed, ან ფერი. ახალი ერა, სადაც ურთიერთობა ნამდვილად მოაქვს ხალხს ერთად. ეს არის Dawn of the Net. გაინტერესებთ როგორ მუშაობს? დააწკაპუნეთ აქ, რათა დაიწყოს თქვენი მოგზაურობის შევიდა წმინდა. ახლა, ზუსტად რა მოხდა, როდესაც თქვენ დაწკაპავთ ბმული? თქვენ დაიწყო ინფორმაციის ნაკადის. ეს ინფორმაცია მოგზაურობს down შევიდა თქვენი პირადი mailroom სადაც ბატონი IP პაკეტების ის, აფიქსირებს მას, და უგზავნის გზაზე. თითოეული პაკეტი შეზღუდულია თავის ზომა. გვერდის ოთახი უნდა გადაწყვიტოს, თუ როგორ უნდა დაყოს ინფორმაცია და როგორ პაკეტი იგი. ახლა პაკეტი სჭირდება ეტიკეტების შემცველი მნიშვნელოვანი ინფორმაცია როგორიცაა გამგზავნის მისამართი, მიმღების მისამართი, და ტიპის პაკეტი ეს არის. იმის გამო, რომ ამ კონკრეტულ პაკეტი აპირებს out გადატანა ინტერნეტი, იგი ასევე იღებს მისამართი proxy სერვერს, რომელსაც აქვს სპეციალური ფუნქცია, როგორც ვნახავთ, მოგვიანებით. პაკეტი არის დაწყებული გადატანა თქვენს ლოკალურ ქსელში, ან LAN. ამ ქსელის გამოიყენება დაკავშირება ყველა ადგილობრივი კომპიუტერები " მარშრუტიზატორები, პრინტერები, etcetera, ინფორმაციის გაცვლის ფარგლებში ფიზიკური კედლები შენობა. LAN არის საკმაოდ უკონტროლო ადგილას, და, სამწუხაროდ, უბედური შემთხვევა შეიძლება მოხდეს. გზატკეცილზე LAN იფუთება ყველა სახის ინფორმაციას. ეს არის IP პაკეტი, Novell პაკეტი, AppleTalk პაკეტი. ისინი აპირებენ წინააღმდეგ მოძრაობის, როგორც ყოველთვის. ადგილობრივი როუტერი ნათქვამია მისამართი და, საჭიროების შემთხვევაში, ლიფტები პაკეტს სხვა ქსელში. Ah, როუტერი. სიმბოლო კონტროლის შეხედვით არაორგანიზებულად, პრაქტიკულად მსოფლიოში. [როუტერი mumbling და საუბარი თავად] [მთხრობელი] არსებობს ის არის, სისტემატური, uncaring, მეთოდური, კონსერვატიული, და ზოგჯერ არა საკმაოდ მდე სიჩქარე. მაგრამ მაინც ის არის ზუსტი, ყველაზე ნაწილი. როგორც პაკეტების დატოვება როუტერი, მათ თავიანთი გზა შევიდა კორპორატიული ინტერნეტის და უფროსი for როუტერის შეცვლა. ცოტა უფრო ეფექტურია, ვიდრე როუტერი, როუტერი შეცვლა უკრავს სწრაფი და ფხვიერი ერთად IP პაკეტებს, ოსტატურად მარშრუტიზაციის მათ გასწვრივ გზა. ციფრული 'Pinball Wizard, "თუ გნებავთ. [Router Switch საუბარი თავად] [მთხრობელი] როგორც პაკეტი მივიდეს მათი დანიშნულების, ისინი აიყვანეს მიერ ქსელის ინტერფეისი, მზად გაიგზავნება მომდევნო დონეზე. ამ შემთხვევაში, მარიონეტული. მარიონეტული გამოიყენება მრავალი კომპანიის როგორც სახის შუა კაცი რათა შეამციროს დატვირთვის შესახებ ინტერნეტი და უსაფრთხოების მიზნით, ასევე. როგორც ხედავთ, პაკეტების არის ყველა სხვადასხვა ზომის იმის მიხედვით, მათი შინაარსი. მარიონეტული ხსნის პაკეტი და ეძებს ვებ მისამართი ან URL. იმის მიხედვით, თუ რამდენად მისამართი მისაღებია, პაკეტი გაგზავნილია შესახებ, რომ ინტერნეტში. არსებობს, თუმცა, ზოგიერთი მისამართები რომლებიც არ შეხვდება დამტკიცების მარიონეტული. სწორედ რომ ვთქვათ, კორპორატიული ან მართვის პრინციპებს. ეს summarily შეეხო. ჩვენ გვექნება არცერთი რომ. მათთვის, ვინც იყოს იგი, ეს გზაზე კვლავ. შემდეგი up, firewall. კორპორატიული Firewall ემსახურება ორი მიზნისათვის. ეს ხელს უშლის ზოგიერთი საკმაოდ nasty რამ ინტერნეტის შემოდიოდნენ to ქსელის, და მას შეუძლია ასევე აღსაკვეთად მგრძნობიარე კორპორაციულ ინფორმაციას მიმდინარეობს გააძევეს გადატანა ინტერნეტში. ერთხელ გავლით firewall, როუტერი Picks up პაკეტი და ადგილები იგი გადატანა გაცილებით ვიწრო გზა, ან სიჩქარეს, როგორც ჩვენ ვამბობთ. ცხადია, გზა არ ფართო საკმარისი მიიღოს მათ ყველა. ახლა, ალბათ, საინტერესოა, რა მოხდება ყველა იმ პაკეტებში, რომელიც არ იყოს იგი გასწვრივ გზა. ისე, როცა ბატონმა IP არ იღებს აღიარება რომ პაკეტი უკვე მიღებული დროულად, ის უბრალოდ აგზავნის ჩანაცვლება პაკეტი. ჩვენ მზად ვართ შესვლის სამყაროში ინტერნეტში. Spiderweb ურთიერთდაკავშირებულ ქსელების რომელიც span ჩვენი მთელი მსოფლიოს მასშტაბით. აქ, მარშრუტიზატორები და კონცენტრატორები კავშირები დავამყაროთ შორის ქსელები. ახლა, Net არის სრულიად სხვა გარემოში, ვიდრე თქვენ იპოვოთ ფარგლებში დამცავი კედლები თქვენი LAN. აქ, ეს ველური დასავლეთი. უამრავი სივრცე, უამრავი შესაძლებლობები, უამრავი რამ შეისწავლონ და ადგილებში წასვლა. მადლობა ძალიან მცირე კონტროლისა და რეგულირების, ახალი იდეები იპოვოს ნოყიერი ნიადაგი დააყენებს კონვერტში მათი შესაძლებლობები. მაგრამ იმის გამო, რომ ამ თავისუფლებას, გარკვეული საფრთხეები ასევე lurk. თქვენ არასდროს იცით, როდესაც თქვენ აკმაყოფილებდეს dreaded პინგ გარდაცვალების, სპეციალური ვერსია ნორმალური მოთხოვნით ping, რაც ზოგიერთი იდიოტი ეგონა მდე mess up unsuspecting მასპინძლებს. გეზი ჩვენი პაკეტი მიიღოს შეიძლება იყოს თანამგზავრული, სატელეფონო ხაზები, უსადენო, ან თუნდაც transoceanic კაბელი. ისინი ყოველთვის არ მიიღოს უსწრაფესი ან უმოკლეს მარშრუტების შესაძლებელია, მაგრამ ისინი იქ საბოლოოდ. იქნებ ამიტომაც ის ხშირად წოდებული "მსოფლიო მოითმინოთ." მაგრამ როდესაც ყველაფერი მუშაობს გამართულად, შეგიძლიათ circumvent მსოფლიოში ხუთჯერ ზე წვეთი ქუდი, სიტყვასიტყვით. და ყველა ღირებულება ადგილობრივი ზარი ან ნაკლები. ახლო დასასრულს ჩვენი დანიშნულების, ჩვენ გამოვძებნით სხვა firewall. იმის მიხედვით, თქვენი პერსპექტივა, როგორც მონაცემები პაკეტი, firewall შეიძლება იყოს დასაყრდენი უსაფრთხოების ან dreaded მოწინააღმდეგეს. ეს ყველაფერი დამოკიდებულია იმაზე, თუ რომელი მხარე თქვენ და რა არის თქვენი მიზნები. Firewall მიზანია შეუშვეს მხოლოდ იმ პაკეტების რომ შეასრულოს თავისი კრიტერიუმები. ეს firewall ფუნქციონირებს პორტების 80 და 25. ყველა მცდელობა შესვლის სხვა პორტები დახურულია ბიზნეს. პორტი 25 გამოიყენება გვერდის პაკეტი, ხოლო პორტი 80 არის შესასვლელი ამისთვის პაკეტების საწყისი ინტერნეტ სერვერზე. Inside firewall, პაკეტები ნაჩვენები უფრო დეტალურად. ზოგიერთი პაკეტი რათა ის ადვილად მეშვეობით საბაჟო, ზოგი გამოიყურება უბრალოდ ცოტა საეჭვო. ახლა, firewall ოფიცერი არ არის ადვილად წამოეგოთ, მაგალითად, როდესაც ამ პინგ გარდაცვალების პაკეტი ცდილობს შენიღბვას თავს ნორმალურ Ping პაკეტი. [Firewall ოფიცერი საუბარი პაკეტი] [მთხრობელი] იმ პაკეტების გაუმართლა საკმარისი რათა ის ამ შორს, მოგზაურობა თითქმის დასრულებულია. უბრალოდ ხაზი up on ინტერფეისი იქნას up შევიდა სერვერზე. დღესდღეობით სერვერზე შეიძლება გაშვება ბევრი რამ, საწყისი mainframe რომ ვებ კამერა კომპიუტერს თქვენს მაგიდასთან. რატომ არ თქვენი მაცივარი? შესაბამისი რეგულაცია, შეგიძლიათ გასარკვევად თუ თქვენ გაქვთ საქმე ამისთვის ქათმის Cacciatore, ან გაქვთ წასვლა სავაჭრო. გახსოვდეთ, ეს არის გარიჟრაჟზე წმინდა. თითქმის არაფერი არ არის შესაძლებელი. სათითაოდ, პაკეტები მიიღო, გაიხსნა, და დაუფასოებელი. ინფორმაციას ისინი არ შეიცავენ, რომ არის, თქვენი მოთხოვნა ინფორმაციით, იგზავნება შესახებ, რომ ვებ სერვერი განაცხადი. პაკეტი თავისთავად რეციკლირებული, მზად იქნება გამოყენებული ერთხელ, და ივსება თქვენი მოთხოვნილი ინფორმაცია, მიმართა, და გააძევეს გზაზე უკან თქვენ. თავში წარსულის firewall, მარშრუტიზატორები, და მეშვეობით ინტერნეტში. თავში საშუალებით თქვენი კორპორატიული Firewall და გადატანა თქვენს ინტერფეისს, მზად მიაწოდოს ბრაუზერში იმ ინფორმაციას თქვენ სთხოვა. სწორედ, ამ ფილმში. კმაყოფილი მათი ძალისხმევა, და ვაღიარებთ უკეთესი მსოფლიოს, ჩვენი სანდო პაკეტების ვისრიალოთ off blissfully შევიდა ჩასვლა სხვა დღეს, იცოდა სრულად მათ ემსახურებოდა მათი პატრონები კარგად. ახლა არ არის, რომ ბედნიერი დასასრული? [Malan] Okay, რომ საკმარისია. ჩვენ დავინახავთ, თქვენ მომავალ კვირას. [CS50.TV]