1 00:00:00,000 --> 00:00:15,059 >> [ΜΟΥΣΙΚΗ Playing] 2 00:00:15,059 --> 00:00:19,170 >> Αυτό είναι CS50-- Χάρβαρντ εισαγωγή Πανεπιστημίου 3 00:00:19,170 --> 00:00:22,070 στην πνευματική επιχειρήσεις της επιστήμης των υπολογιστών 4 00:00:22,070 --> 00:00:23,800 και η τέχνη του προγραμματισμού. 5 00:00:23,800 --> 00:00:27,020 Και το όνομά μου είναι ο David Malan, και Σκεφτόμουν σήμερα το πρωί, 6 00:00:27,020 --> 00:00:33,120 αυτό είναι εκπληκτικά 20 χρόνια και σήμερα από την τελευταία φορά κάθισε όπου εσείς κάνετε τώρα. 7 00:00:33,120 --> 00:00:33,840 >> Ήταν το 1996. 8 00:00:33,840 --> 00:00:37,550 Ήμουν ένας δευτεροετής φοιτητής, και έπαιρνα CS50 για πρώτη φορά. 9 00:00:37,550 --> 00:00:40,890 Και δεν είχα πάρει ακόμη και μέχρι το νεύρο για να πάρει τον εαυτό μου το καινούριο έτος, 10 00:00:40,890 --> 00:00:42,500 εν μέρει λόγω του χρόνου. 11 00:00:42,500 --> 00:00:44,782 επιστήμη των υπολογιστών για μένα ήταν κάτι σαν, meh. 12 00:00:44,782 --> 00:00:46,990 Ήμουν ένα κομμάτι από ένα geek αυξανόμενη up, αλλά δεν το έκανα πραγματικά 13 00:00:46,990 --> 00:00:49,180 έχουν καμία πνευματική ενδιαφέρον σε ό, τι εμφανίστηκε 14 00:00:49,180 --> 00:00:51,920 να είναι απλώς ένα σωρό οι άνθρωποι τον προγραμματισμό όλη την ώρα. 15 00:00:51,920 --> 00:00:53,904 >> Και ήμουν φοβισμένος για να είμαι ειλικρινής. 16 00:00:53,904 --> 00:00:56,820 Η πορεία και η επιστήμη των υπολογιστών περισσότερα γενικά έπρεπε και σε κάποιο βαθμό, 17 00:00:56,820 --> 00:01:01,230 εξακολουθεί να έχει αυτή τη φήμη ενός πεδίου σε Προσοχή, έστω και μόνο επειδή τόσοι πολλοί από εμάς 18 00:01:01,230 --> 00:01:04,410 είναι εξοικειωμένοι με αυτό και σίγουροι για αυτό. 19 00:01:04,410 --> 00:01:08,480 Και πραγματικά δεν ήταν μέχρι να ψωνίσει Αυτή η τάξη που δευτεροετών φοιτητών fall-- 20 00:01:08,480 --> 00:01:10,880 και ακόμα και τότε, το μόνο που είναι εγγεγραμμένοι επειδή το professor-- 21 00:01:10,880 --> 00:01:13,950 ένα από τα πρώτα τους συμβούλους μου, Brian Kernighan τώρα στο Princeton-- 22 00:01:13,950 --> 00:01:15,700 μου επέτρεψε να πάρει το πέρασμα τάξη αποτύχει. 23 00:01:15,700 --> 00:01:18,020 Και πράγματι, γι ' σήμερα επιτρέπει και να ενθαρρύνει 24 00:01:18,020 --> 00:01:20,030 μαθητές να εκμεταλλευτώ αυτή την κατηγορία κάθισε / ακόρεστα. 25 00:01:20,030 --> 00:01:22,040 >> Και μόνο τότε, από το τέλος του εξαμήνου 26 00:01:22,040 --> 00:01:24,870 κατάλαβα όπως, wow, αυτό Δεν ήταν μια τέτοια άγνωστο πεδίο. 27 00:01:24,870 --> 00:01:26,850 Πράγματι, αυτό ήταν ένα πολύ ενδυνάμωση τομέα, 28 00:01:26,850 --> 00:01:28,970 και πιο συναρπαστικά, ειδικά αργότερα, 29 00:01:28,970 --> 00:01:32,809 όπως πήρα μαθήματα Δραματικές Τέχνες 101 και τη Λατινική Α 30 00:01:32,809 --> 00:01:34,600 και στη συνέχεια, τελικά grad αρχαιολογία σχολείο, 31 00:01:34,600 --> 00:01:37,860 δεν μπορώ πραγματικά να αρχίσουμε να βλέπουμε το διασταυρώσεις αυτού του πεδίου, ο υπολογιστής 32 00:01:37,860 --> 00:01:41,979 επιστήμη, με τις ανθρωπιστικές επιστήμες, φυσικές επιστήμες, τις τέχνες, την ιατρική, 33 00:01:41,979 --> 00:01:42,520 και τα παρόμοια. 34 00:01:42,520 --> 00:01:44,420 Και έτσι αυτό είναι ακριβώς τόσο τακτοποιημένο σχετικά με την επιστήμη υπολογιστών 35 00:01:44,420 --> 00:01:46,930 τελικά, όπως ελπίζουμε ότι θα see-- είναι εφαρμοσιμότητα της 36 00:01:46,930 --> 00:01:50,280 σε αυτούς τους άλλους τομείς, και πώς μπορείτε να να λάβει μερικές από τις σημερινές και το εξάμηνο του 37 00:01:50,280 --> 00:01:53,070 ιδέες και πρακτικές δεξιότητες πίσω στο δικό σας domain, 38 00:01:53,070 --> 00:01:58,200 και πραγματικά εξερευνήσετε αυτό το σημείο τομής από τις φιλελεύθερες τέχνες και τις επιστήμες. 39 00:01:58,200 --> 00:02:02,690 >> Έτσι, το 73% από εσάς, αν το τελευταίο έτος είναι οποιαδήποτε ένδειξη, 40 00:02:02,690 --> 00:02:04,390 Ποτέ δεν έχω λάβει ένα μάθημα CS πριν. 41 00:02:04,390 --> 00:02:06,389 Έτσι, αν, όπως εγώ, είσαι αίσθημα λίγο 42 00:02:06,389 --> 00:02:09,190 φοβάται, ή ειλικρινά δεν είστε πραγματικά βέβαιος γιατί είστε ακόμη εδώ. 43 00:02:09,190 --> 00:02:11,510 Ίσως το μόνο που ακολούθησαν μερικά φίλους για να Sanders τώρα. 44 00:02:11,510 --> 00:02:12,490 Αυτό είναι εντελώς καλά. 45 00:02:12,490 --> 00:02:15,059 Ο στόχος εδώ είναι να συνδέσετε σας και να σας διαβεβαιώσω 46 00:02:15,059 --> 00:02:17,100 ότι αν φαίνονται να η αριστερά και προς τα δεξιά, 47 00:02:17,100 --> 00:02:21,480 θα πάμε να δούμε τους συμμαθητές με ως μικρή ή μεγάλη εμπειρία 48 00:02:21,480 --> 00:02:22,890 ότι εσείς ο ίδιος θα μπορούσε να έχει. 49 00:02:22,890 --> 00:02:25,280 Και πράγματι, θα μοιραστούμε Μερικά στατιστικά στοιχεία αργότερα σήμερα 50 00:02:25,280 --> 00:02:28,120 ως προς το τι τα δημογραφικά στοιχεία του η τάξη συνήθως μοιάζουν. 51 00:02:28,120 --> 00:02:31,440 >> Και όπως πρόσθεσε reassurance-- και αυτό μας εννοώ από τότε που ανέλαβε τη διάρκεια 52 00:02:31,440 --> 00:02:33,252 Μερικά χρόνια ago-- στην εξεταστέα ύλη του μαθήματος 53 00:02:33,252 --> 00:02:35,460 είναι this-- ότι αυτό που τελικά θέματα σε αυτό το μάθημα 54 00:02:35,460 --> 00:02:38,040 δεν είναι τόσο πολύ, όπου θα καταλήξουμε up σε σχέση με τους συμμαθητές σας, 55 00:02:38,040 --> 00:02:43,110 αλλά όπου την 11η εβδομάδα, το τέλος του εξάμηνο, καταλήγουν σε σχέση με τον εαυτό σας 56 00:02:43,110 --> 00:02:46,280 σε εβδομάδα 0, η οποία είναι όπου είμαστε σήμερα εδώ. 57 00:02:46,280 --> 00:02:48,704 Και αυτό είναι ό, τι κατάλαβα όλα αυτά τα χρόνια. 58 00:02:48,704 --> 00:02:50,620 Και ξέρω πολλά τάξεις πω αυτό, αλλά είναι 59 00:02:50,620 --> 00:02:52,450 ισχύει ιδιαίτερα στην επιστήμη των υπολογιστών. 60 00:02:52,450 --> 00:02:55,320 Στο τέλος της ημέρας, αυτό το πεδίο είναι άγνωστη όπως ήταν για μένα 61 00:02:55,320 --> 00:02:58,590 και θα μπορούσε να είναι για σας, είναι πραγματικά ακριβώς για την επίλυση προβλημάτων. 62 00:02:58,590 --> 00:03:01,324 Και ως τέτοια, δεν έχει αυτό εφαρμογής για να πάρει άλλους τομείς. 63 00:03:01,324 --> 00:03:03,490 Και στην πραγματικότητα, αν προσπαθήσαμε για την απόσταξη τι σημαίνει αυτό, 64 00:03:03,490 --> 00:03:06,897 Αυτή είναι η επίλυση προβλημάτων στην ουσία του, τολμώ να πω. 65 00:03:06,897 --> 00:03:09,480 Υπάρχει input-- έτσι ό, τι είναι ότι προσπαθείτε να λύσετε. 66 00:03:09,480 --> 00:03:12,264 Υπάρχει εξόδου, η οποία είναι αισίως η λύση σε αυτό το πρόβλημα. 67 00:03:12,264 --> 00:03:14,180 Και τότε, όπως θα κάναμε λένε στην επιστήμη των υπολογιστών, 68 00:03:14,180 --> 00:03:17,310 υπάρχει αυτό το μαύρο κουτί στο μέση που δεν κάνουν απαραίτητα 69 00:03:17,310 --> 00:03:19,450 Πρέπει να νοιάζονται για το πώς λειτουργεί. 70 00:03:19,450 --> 00:03:22,230 Εσείς ο ίδιος τελικά θα μπορούσε εφαρμόσουν ό, τι είναι μέσα σε αυτό το κουτί. 71 00:03:22,230 --> 00:03:25,194 Αλλά για τη σημερινή σκοπούς και περισσότερα γενικά στη ζωή, το μόνο που νοιάζονται για 72 00:03:25,194 --> 00:03:26,610 είναι ότι αυτά τα προβλήματα λύνονται. 73 00:03:26,610 --> 00:03:29,340 >> Και τι είναι αυτό το μάθημα είναι τελικά περίπου διερευνά 74 00:03:29,340 --> 00:03:31,700 η τομή του Αυτές οι εισροές και εκροές, 75 00:03:31,700 --> 00:03:34,410 και αυτά τα λεγόμενα αλγορίθμους, όπως θα δούμε σύντομα, 76 00:03:34,410 --> 00:03:37,450 ότι η εφαρμογή ό, τι είναι κάτω από εκεί, η κουκούλα. 77 00:03:37,450 --> 00:03:40,487 Αλλά αυτές οι είσοδοι και οι outputs-- τι ότι πραγματικά σημαίνει; 78 00:03:40,487 --> 00:03:43,570 Λοιπόν, στο τέλος της ημέρας, χρειαζόμαστε κατά κάποιο τρόπο αναπαράστασης πληροφοριών. 79 00:03:43,570 --> 00:03:46,660 Αυτό ισχύει ιδιαίτερα σε έναν υπολογιστή, που τόσο φανταχτερό και πολύπλοκη, δεδομένου ότι 80 00:03:46,660 --> 00:03:48,160 μπορεί να φαίνεται, είναι μια πολύ χαζή συσκευή. 81 00:03:48,160 --> 00:03:52,240 Παίρνει electricity-- είτε από ένα καλώδιο ή μια μπαταρία ως input-- 82 00:03:52,240 --> 00:03:55,820 και στη συνέχεια να παράγει μερικά preprogramed απαντήσεις στην οθόνη. 83 00:03:55,820 --> 00:03:57,970 >> Αλλά πώς θα πάρετε από αρχίσει να τελειώσει εκεί; 84 00:03:57,970 --> 00:03:59,470 Λοιπόν, τι είναι ένα πρόβλημα που πρέπει να λυθεί; 85 00:03:59,470 --> 00:04:01,050 Καλά, ίσως θα μπορούσαμε, σε η έναρξη του κάθε εξαμήνου, 86 00:04:01,050 --> 00:04:02,841 προσπαθήστε να πάρετε τη συμμετοχή σε ένα δωμάτιο σαν αυτό. 87 00:04:02,841 --> 00:04:04,750 Γι 'αυτό και θα μπορούσε να κάνει σαν ένα, δύο, τρία. 88 00:04:04,750 --> 00:04:07,060 Ή ίσως, αν το έκανα σε είδος παρακολουθείτε 89 00:04:07,060 --> 00:04:10,560 της myself-- να παρακολουθείτε things-- Θα μπορούσα να τρέξει γρήγορα έξω από τα δάχτυλα. 90 00:04:10,560 --> 00:04:14,650 Γι 'αυτό και μπορεί να κάνει μόνο hash marks-- ένα πρόσωπο, δύο, τρία, τέσσερα, πέντε, έξι, 91 00:04:14,650 --> 00:04:15,431 επτά, οκτώ. 92 00:04:15,431 --> 00:04:17,930 Και όλοι μας έχουμε κατά πάσα πιθανότητα κάνει αυτό, είτε στα χέρια σας 93 00:04:17,930 --> 00:04:19,680 ή σε ένα κομμάτι χαρτί. 94 00:04:19,680 --> 00:04:22,140 Και αυτό είναι πραγματικά ακριβώς κάτι που ονομάζεται μοναδιαίος notation-- 95 00:04:22,140 --> 00:04:26,130 όπου αν έχετε μόνο ένα γράμμα το αλφάβητο σας, ένα ή κατακερματισμού 96 00:04:26,130 --> 00:04:29,440 σήμα σε αυτή την περίπτωση, για κάθε εισόδου που θέλετε να μετρήσετε, 97 00:04:29,440 --> 00:04:32,330 θα πρέπει να βάλει κάτω ένα από αυτά letters-- ένα από αυτά τα σήματα. 98 00:04:32,330 --> 00:04:32,510 >> Εντάξει. 99 00:04:32,510 --> 00:04:34,790 Αυτό είναι όλα ωραία και καλά και δεν είναι όλα αυτά περίπλοκα. 100 00:04:34,790 --> 00:04:37,800 Αλλά οι υπολογιστές δεν είναι όλα ότι πολύ πιο περίπλοκο. 101 00:04:37,800 --> 00:04:40,770 Πράγματι, οι περισσότεροι από εσάς ίσως ξέρω ακόμη και αν δεν έχετε πραγματικά 102 00:04:40,770 --> 00:04:44,080 θεωρείται τι σημαίνει αυτό, ότι υπολογιστές καταλαβαίνουν μόνο μηδενικά 103 00:04:44,080 --> 00:04:45,870 και ones-- τη λεγόμενη δυαδικό σύστημα. 104 00:04:45,870 --> 00:04:49,390 Εμείς οι άνθρωποι, αντιθέτως, είναι τόσο πολύ πιο εξελιγμένο βαθμό 105 00:04:49,390 --> 00:04:51,770 όπως καταλαβαίνουμε μηδενικά μέσα από εννιάρια. 106 00:04:51,770 --> 00:04:55,740 >> Αλλά ακόμη και αν δυαδικό είναι, σε πρώτη ματιά, δεν είναι όλα αυτά γνωστά, 107 00:04:55,740 --> 00:05:00,330 αποδεικνύεται ότι είναι ακριβώς όπως τα συστήματα και οι ιδέες που ήδη γνωρίζουμε. 108 00:05:00,330 --> 00:05:02,420 Έτσι, για παράδειγμα, σκεφτείτε το εξής. 109 00:05:02,420 --> 00:05:03,896 Αυτή είναι μόνο μια ακολουθία συμβόλων. 110 00:05:03,896 --> 00:05:05,770 Και όλοι σας, όταν Ματιές σε αυτό, πιθανώς 111 00:05:05,770 --> 00:05:09,380 σκεφτείτε 123-- τίποτα πραγματικά ενδιαφέρον εκεί. 112 00:05:09,380 --> 00:05:11,940 Αλλά γιατί είναι αυτός ο αριθμός, 123; 113 00:05:11,940 --> 00:05:14,440 Αυτά είναι μόνο γλύφων για η screen-- απλά μοτίβα 114 00:05:14,440 --> 00:05:16,387 ότι κάποιος μπορεί να έχουν καταρτίσει ή πληκτρολογήσει. 115 00:05:16,387 --> 00:05:18,970 Αλλά αν είστε σαν κι εμένα, σας ίσως θυμάστε από το σχολείο βαθμού 116 00:05:18,970 --> 00:05:21,610 ότι υπάρχουν είδους στήλες ή θέσεις εδώ. 117 00:05:21,610 --> 00:05:25,340 Υπάρχει θέση του ατόμου και η μέρος δέκα και ο τόπος της εκατό του. 118 00:05:25,340 --> 00:05:29,820 Και ο λόγος ότι αυτό είναι 123 και δεν είναι απλώς ένα σχέδιο τριών συμβόλων 119 00:05:29,820 --> 00:05:33,090 είναι επειδή, φυσικά, αν έχουμε έχουν ένα ένα στο μέρος εκατοντάδες, 120 00:05:33,090 --> 00:05:36,610 κάνετε τα μαθηματικά του 100 φορές μία, και, στη συνέχεια, δύο στη θέση του δέκα του. 121 00:05:36,610 --> 00:05:41,390 Έτσι ώστε να είναι 10 φορές 2, και στη συνέχεια, τρεις σε η θέση του καθενός και αυτό είναι 1 φορές 3. 122 00:05:41,390 --> 00:05:45,670 Και όταν προσθέτετε όλα αυτά μέχρι, της Φυσικά, μπορείτε να πάρετε 100 συν 20 συν 3. 123 00:05:45,670 --> 00:05:48,220 >> Έτσι ξεκινήσαμε με ένα απλό μοτίβο της symbols-- μια alphabet-- 124 00:05:48,220 --> 00:05:51,670 αλλά τότε θα χαρτογραφηθεί έννοια επάνω ότι μέσω αυτών των στηλών. 125 00:05:51,670 --> 00:05:54,450 Λοιπόν, αποδεικνύεται ότι υπολογιστές δεν είναι πραγματικά 126 00:05:54,450 --> 00:05:56,300 διαφέρει καθόλου από εσάς και εμένα. 127 00:05:56,300 --> 00:06:01,840 Αλλά αντί να χρησιμοποιούν τις εξουσίες του 10, έτσι ώστε να speak-- 1, 10, 100, 1.000, 128 00:06:01,840 --> 00:06:04,330 10.000 τόπο και έτσι forth-- πράγματι 129 00:06:04,330 --> 00:06:08,930 μόλις χρησιμοποιήσει τις εξουσίες της 2-- έτσι ένα, 2, 4, και στη συνέχεια 130 00:06:08,930 --> 00:06:12,810 αν βάλουμε περισσότερα ψηφία, 8, 16, 32, 64, 128, και ούτω καθεξής. 131 00:06:12,810 --> 00:06:16,050 Και έτσι αυτό είναι το πώς ένας υπολογιστής θα αντιπροσωπεύουν τον αριθμό 0, 132 00:06:16,050 --> 00:06:17,300 ακριβώς όπως εμείς οι άνθρωποι. 133 00:06:17,300 --> 00:06:21,660 >> 0, 0, 0-- και μπορείτε να μαντέψετε τι μοτίβο μηδενικά και μονάδες, 134 00:06:21,660 --> 00:06:24,610 αν ένας υπολογιστής μπορεί μόνο μιλήσουν 0 ή 1-- τι 135 00:06:24,610 --> 00:06:29,110 μοτίβο πρόκειται να αντιπροσωπεύουν ο αριθμός εμείς οι άνθρωποι γνωρίζουμε ως 1; 136 00:06:29,110 --> 00:06:30,590 Yeah-- 0, 0, 1. 137 00:06:30,590 --> 00:06:31,090 Εντάξει. 138 00:06:31,090 --> 00:06:35,900 Έτσι, 0, 0, 1, είναι το πώς εμείς εκπροσωπούμε 1, έτσι ώστε να μπορεί να έχει κλίση στη συνέχεια 139 00:06:35,900 --> 00:06:39,510 να αντιπροσωπεύουν τον αριθμό 2, αν έχετε του τέσσερις του τόπου και τη θέση του δύο του 140 00:06:39,510 --> 00:06:48,290 ως ένα σημείο, μπορείτε να πείτε, καλά, αν είχαμε ένα 1 στη θέση του ατόμου, 141 00:06:48,290 --> 00:06:50,430 και τώρα θέλουμε να μετρήσει μέχρι και 2, ίσως 142 00:06:50,430 --> 00:06:53,310 το κάνετε αυτό και να αφήσει αυτό να είναι ένα μηδενικό. 143 00:06:53,310 --> 00:06:56,397 Αλλά φυσικά αυτό δεν είναι το πώς είναι το δεκαδικό σύστημα λειτουργεί είτε. 144 00:06:56,397 --> 00:06:58,230 Αν βάλετε ένα ψηφίο τόσο από τις στήλες αυτές, 145 00:06:58,230 --> 00:06:59,563 έχετε να κάνετε την αριθμητική. 146 00:06:59,563 --> 00:07:01,930 Έτσι, ποιος είναι ο αριθμός έκανα τυχαία ακριβώς αντιπροσωπεύουν; 147 00:07:01,930 --> 00:07:06,710 >> Έτσι είναι 3, γιατί 2 φορές 1 συν 1 φορές 1, βέβαια, μας δίνει τρία. 148 00:07:06,710 --> 00:07:08,340 Έτσι, αυτό θα είναι δύο. 149 00:07:08,340 --> 00:07:12,730 Το bit είδος flips, να το πω έτσι, ως 0 γίνεται ένα, σαν ένα 9 ρόλους πάνω 150 00:07:12,730 --> 00:07:14,840 και γίνεται 0 όταν φέρουν το 1. 151 00:07:14,840 --> 00:07:16,510 Στη συνέχεια, αυτό θα είναι τρεις, φυσικά. 152 00:07:16,510 --> 00:07:20,170 Four-- άλλο ενδιαφέρον πράγμα συμβαίνει, όταν αυτοί κυλήσει 153 00:07:20,170 --> 00:07:21,750 και θα φέρουν το 1, να το πω έτσι. 154 00:07:21,750 --> 00:07:23,320 Έτσι, αυτό, φυσικά, είναι 4. 155 00:07:23,320 --> 00:07:25,160 >> Αλλά αν fast forward τώρα, τι είναι ο μεγαλύτερος αριθμός θα 156 00:07:25,160 --> 00:07:26,660 να είναι ότι ένας υπολογιστής μπορεί να αντιπροσωπεύει; 157 00:07:26,660 --> 00:07:30,420 158 00:07:30,420 --> 00:07:32,380 Έτσι είναι μόλις επτά στην περίπτωση αυτή, σωστά; 159 00:07:32,380 --> 00:07:35,570 Επειδή έχετε μία στις τέσσερις, μία στις δύο, ένα ένα στο ένα. 160 00:07:35,570 --> 00:07:36,900 Έτσι ώστε να είναι 4 συν 2 συν 1. 161 00:07:36,900 --> 00:07:37,972 Έτσι ώστε να δίνει επτά. 162 00:07:37,972 --> 00:07:39,680 Και πράγματι, θα ήταν φαίνεται με την πρώτη ματιά 163 00:07:39,680 --> 00:07:43,750 ότι οι υπολογιστές μπορούν να υπολογίζουν όχι μεγαλύτερο από αυτό. 164 00:07:43,750 --> 00:07:45,210 >> Αλλά αυτό βέβαια δεν είναι αλήθεια. 165 00:07:45,210 --> 00:07:48,243 Τι κάνουν οι άνθρωποι όταν θέλουμε να μετρήσει υψηλότερες από ό, τι σαν 999; 166 00:07:48,243 --> 00:07:51,000 167 00:07:51,000 --> 00:07:53,900 Απλά συνεχίστε το ένα και μόνο προσθέσετε ένα τέταρτο ψηφίο προς τα αριστερά. 168 00:07:53,900 --> 00:07:55,070 Και έτσι πράγματι θα μπορούσαμε. 169 00:07:55,070 --> 00:07:57,900 Θα μπορούσαμε να έχουμε μια οκτώ του τοποθετήστε και τοποθετήστε ένα 16ο του, 170 00:07:57,900 --> 00:08:02,000 και 32 του θέση, 64, 128-- και μπορεί απλά να κρατήσει σε εξέλιξη μέχρι το άπειρο. 171 00:08:02,000 --> 00:08:04,640 Έτσι, αυτά τα μηδενικά και ones-- το λεγόμενο δυαδικό system-- 172 00:08:04,640 --> 00:08:10,290 είναι ό, τι ένας επιστήμονας υπολογιστών θα γενικά αποκαλούν λίγο, ή δυαδικό ψηφίο. 173 00:08:10,290 --> 00:08:13,590 >> Αλλά τώρα, πώς παίρνουμε από το ιδέα ή τα γραφικά αυτά τα πράγματα 174 00:08:13,590 --> 00:08:14,620 σε ένα πραγματικό υπολογιστή; 175 00:08:14,620 --> 00:08:17,170 Σας φαίνεται να παρακάμπτοντας ένα βήμα εδώ. 176 00:08:17,170 --> 00:08:20,210 Λοιπόν, η μόνη είσοδος στο τέλος της ημέρας, για το laptop μου εδώ 177 00:08:20,210 --> 00:08:22,060 Είναι αυτή η ροή του ηλεκτρικού ρεύματος. 178 00:08:22,060 --> 00:08:24,560 Ακόμα κι αν έχουν περάσει μια μακρά φορά από το σκεφτεί 179 00:08:24,560 --> 00:08:26,580 ή ποτέ σκεφτεί πώς ηλεκτρικής ενέργειας λειτουργεί, 180 00:08:26,580 --> 00:08:30,909 υπάρχει ηλεκτρόνια ρέουν μέσα ή έξω, και αυτό είναι το είδος μου εισόδου. 181 00:08:30,909 --> 00:08:34,659 >> Έτσι, αν αυτό είναι το μόνο που είμαστε να πάρει ως είσοδο εδώ, 182 00:08:34,659 --> 00:08:36,830 τι μπορούμε να κάνουμε με αυτές τις πληροφορίες; 183 00:08:36,830 --> 00:08:40,040 Λοιπόν, θα μπορούσαμε να σκεφτούμε ένα μηδέν μόλις μια απουσία ηλεκτρικού ρεύματος. 184 00:08:40,040 --> 00:08:42,540 Τίποτα δεν είναι flowinw, τίποτα δεν είναι μετακίνηση, τίποτα δεν συμβαίνει. 185 00:08:42,540 --> 00:08:44,690 Αυτό είναι μόνο η προεπιλεγμένη state-- μηδέν. 186 00:08:44,690 --> 00:08:48,200 Αλλά αν υπάρχει ηλεκτρικό ρεύμα ρέει, γιατί Δεν κάνουμε εμείς απλά αυθαίρετα, αλλά και παγκοσμίως 187 00:08:48,200 --> 00:08:50,250 συνέπεια, καλέστε ότι ένα ένα. 188 00:08:50,250 --> 00:08:54,760 >> Έτσι, απλά με έχει καμία δύναμη, έχουμε ένα μηδέν, ναι δύναμη, 189 00:08:54,760 --> 00:08:57,520 έχουμε ένα ένα-- καμία δύναμη, ναι εξουσία. 190 00:08:57,520 --> 00:09:01,520 Και με αυτόν τον τρόπο, χρησιμοποιώντας κάτι πιο φυσική ή ηλεκτρονική 191 00:09:01,520 --> 00:09:05,340 αρχίζουμε να εφαρμόσουν αυτήν την έννοια της κάτι είτε είναι ένα ή μηδέν. 192 00:09:05,340 --> 00:09:07,230 Πράγματι, θα μπορούσαμε να το κάνουμε αυτό ακριβώς εδώ. 193 00:09:07,230 --> 00:09:10,590 Μέχρι εδώ, δεν έχω τρεις, αλλά οκτώ λαμπτήρες, καθένα από τα οποία 194 00:09:10,590 --> 00:09:11,810 έχει το δικό του διακόπτη. 195 00:09:11,810 --> 00:09:15,760 >> Και έτσι αν ήθελα να εκπροσωπεί ο αριθμός επτά εδώ, 196 00:09:15,760 --> 00:09:18,510 Θα ήθελα να ενεργοποιήσετε αυτές τις τρεις λαμπτήρες. 197 00:09:18,510 --> 00:09:21,470 Και πράγματι, στο εσωτερικό του ο υπολογιστής μου είναι τα εκατομμύρια, 198 00:09:21,470 --> 00:09:25,650 δισεκατομμύρια πράγματα που είναι απλά μικρότερη από εκείνη, που ονομάζεται τρανζίστορ, 199 00:09:25,650 --> 00:09:27,330 διακόπτες, ότι μόλις ενεργοποιήσετε και να σβήνουν. 200 00:09:27,330 --> 00:09:30,420 Έτσι, αυτά big-- σχετικά big-- διακόπτες στο εσωτερικό laptop-- μου 201 00:09:30,420 --> 00:09:32,150 είναι πολλά, πολλά, πολλά, πολλοί περισσότεροι διακόπτες. 202 00:09:32,150 --> 00:09:35,160 Αλλά το μόνο που κάνουν είναι ακριβώς ερμήνευα-- ενεργοποιήστε κάτι, γυρίστε κάτι μακριά. 203 00:09:35,160 --> 00:09:38,076 Και ως τέτοια, ένας υπολογιστής μπορεί να αντιπροσωπεύει, με αυτά τα εκατομμύρια ή δισεκατομμύρια 204 00:09:38,076 --> 00:09:40,480 των τρανζίστορ, τα μέρη και πολλά μηδενικά και μονάδες. 205 00:09:40,480 --> 00:09:43,160 Και δεν υπάρχει άλλο υλικό ακόμα ότι σας επιτρέπει να αποθηκεύετε πληροφορίες μακροπρόθεσμα, 206 00:09:43,160 --> 00:09:45,243 έτσι ώστε όταν τραβάτε το βύσμα, να μην το χάσετε. 207 00:09:45,243 --> 00:09:46,900 Αλλά αυτό είναι μια ιστορία για μια άλλη ημέρα. 208 00:09:46,900 --> 00:09:51,170 >> Τι μπορούμε λοιπόν να κάνουμε με αυτά τα κομμάτια; 209 00:09:51,170 --> 00:09:54,309 Θα μπορούσε απλά να λάβει η πίεση μακριά από me-- 210 00:09:54,309 --> 00:09:56,600 θα μπορούσε κάποιος θέλει να έρθει εδώ και προσφέρουν ένα demo; 211 00:09:56,600 --> 00:09:57,516 Είδα για πρώτη φορά αυτό το χέρι. 212 00:09:57,516 --> 00:09:58,709 Ποιο είναι το όνομά σου? 213 00:09:58,709 --> 00:09:59,250 MADAY: Maday. 214 00:09:59,250 --> 00:10:00,542 DAVID Malan: Maday, έλα επάνω. 215 00:10:00,542 --> 00:10:01,250 Χάρηκα για τη γνωριμία. 216 00:10:01,250 --> 00:10:02,390 MADAY: Χαίρω πολύ. 217 00:10:02,390 --> 00:10:02,930 >> DAVID Malan: Ελάτε με αυτόν τον τρόπο. 218 00:10:02,930 --> 00:10:04,182 Δεν θα πρέπει να σας τα χείλη επάνω. 219 00:10:04,182 --> 00:10:04,682 Εντάξει. 220 00:10:04,682 --> 00:10:11,090 Έτσι, εδώ, έχουμε, notice-- ένα, two-- θα επεξεργαστείτε ότι out-- ένα, δύο, τέσσερις, 221 00:10:11,090 --> 00:10:13,350 οκτώ, 16, 32, 64, 128. 222 00:10:13,350 --> 00:10:14,220 Αυτό είναι σκόπιμη. 223 00:10:14,220 --> 00:10:17,370 Υπάρχει οκτώ bits here-- δυαδικό digits-- μηδενικά και μονάδες. 224 00:10:17,370 --> 00:10:21,460 Και λίγο είναι μια χρήσιμη μονάδα measure-- όχι ως χρήσιμη μια μονάδα μέτρησης 225 00:10:21,460 --> 00:10:21,999 στον εαυτό του. 226 00:10:21,999 --> 00:10:24,290 Συνήθως θέλετε τουλάχιστον οκτώ από αυτά τα πράγματα, γνωστός και ως 227 00:10:24,290 --> 00:10:24,790 ένα byte. 228 00:10:24,790 --> 00:10:26,230 Έτσι έχουμε ένα byte των bits εδώ. 229 00:10:26,230 --> 00:10:31,130 >> Έτσι, αν θέλαμε να σας πρόκληση με, για παράδειγμα, υπαγόρευση, σε δυαδική, 230 00:10:31,130 --> 00:10:33,230 Αυτή η τιμή here-- 42. 231 00:10:33,230 --> 00:10:35,140 Θέλετε να πάρετε μια μαχαιριά σε αυτό; 232 00:10:35,140 --> 00:10:36,034 >> MADAY: [δεν ακούγεται]. 233 00:10:36,034 --> 00:10:38,700 DAVID Malan: Ναι, απλά πιέστε το μικρό λευκό διακόπτες μπροστά. 234 00:10:38,700 --> 00:10:41,290 Και θέλετε να σημάνει από 42, και επάνω για τις αρπαγές 235 00:10:41,290 --> 00:10:44,061 Είναι αυτό το CS50 το άγχος μπάλα, αν έχετε αυτό. 236 00:10:44,061 --> 00:10:44,560 Εντάξει. 237 00:10:44,560 --> 00:10:46,420 Έτσι έχετε 32. 238 00:10:46,420 --> 00:10:48,430 Εμείς πάμε να χρειάζονται 42. 239 00:10:48,430 --> 00:10:51,410 Έτσι ώστε να είναι οκτώ, έτσι ώστε να είναι 40. 240 00:10:51,410 --> 00:10:54,160 Και excellent-- πολύ όμορφα γίνεται. 241 00:10:54,160 --> 00:10:55,186 Ευχαριστώ. 242 00:10:55,186 --> 00:10:58,790 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 243 00:10:58,790 --> 00:10:59,290 Εντάξει. 244 00:10:59,290 --> 00:11:00,623 Έτσι έχουμε ένα πιο μπάλα για το άγχος. 245 00:11:00,623 --> 00:11:03,595 Ας κάνουμε αυτό για μια ακόμη φορά, αν μπορεί. 246 00:11:03,595 --> 00:11:05,368 Ένας άλλος εθελοντής; 247 00:11:05,368 --> 00:11:07,970 Δωρεάν μπάλα για το άγχος, χωρίς μπάλα για το άγχος. 248 00:11:07,970 --> 00:11:08,470 ΕΝΤΆΞΕΙ. 249 00:11:08,470 --> 00:11:11,640 Πάνω από εδώ στη μέση, θέλετε να κατέβει; 250 00:11:11,640 --> 00:11:14,100 Εντάξει. 251 00:11:14,100 --> 00:11:15,552 Ξέρω. 252 00:11:15,552 --> 00:11:16,360 Εκεί πάμε. 253 00:11:16,360 --> 00:11:20,818 >> Έτσι, οι αριθμοί here-- έλα κάτω. 254 00:11:20,818 --> 00:11:21,567 Πως σε λένε? 255 00:11:21,567 --> 00:11:21,984 >> DAVEY: Davey. 256 00:11:21,984 --> 00:11:22,820 >> DAVID Malan: Davey. 257 00:11:22,820 --> 00:11:23,320 ΕΝΤΆΞΕΙ. 258 00:11:23,320 --> 00:11:24,810 Ελάτε επάνω, Davey. 259 00:11:24,810 --> 00:11:25,890 Χάρηκα για τη γνωριμία. 260 00:11:25,890 --> 00:11:28,639 Και τι θα πάμε να έχετε spell-- αν θα μπορούσε να σταθώ εκεί 261 00:11:28,639 --> 00:11:32,810 για μία μόνο moment-- είναι ο αριθμός 50. 262 00:11:32,810 --> 00:11:36,293 Αλλά αλλά, αλλά, αλλά αλλά, αυτές είναι δημοτικό σχολείο μαγνήτες για έναν λόγο. 263 00:11:36,293 --> 00:11:39,370 264 00:11:39,370 --> 00:11:43,327 Μόλις έγινε λίγο πιο δύσκολο, εντάξει; 265 00:11:43,327 --> 00:11:44,160 Υπάρχει ακόμη οκτώ. 266 00:11:44,160 --> 00:11:46,820 267 00:11:46,820 --> 00:11:47,320 Εντάξει. 268 00:11:47,320 --> 00:11:48,486 Έτσι, αυτό που έχουμε εκεί; 269 00:11:48,486 --> 00:11:51,356 Έχουμε 32. 270 00:11:51,356 --> 00:11:54,344 Όμορφη. 271 00:11:54,344 --> 00:11:58,610 32 συν 16 μας δίνει 48-- τόσο κοντά. 272 00:11:58,610 --> 00:12:00,390 Και υπέροχη. 273 00:12:00,390 --> 00:12:02,831 Συγχαρητήρια στον Davey, καθώς και. 274 00:12:02,831 --> 00:12:05,720 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 275 00:12:05,720 --> 00:12:06,516 >> Εντάξει. 276 00:12:06,516 --> 00:12:09,390 Έτσι, μπορούμε να το κάνουμε αυτό όλη την ημέρα, και δεν παίρνει όλα αυτά πολύ πιο 277 00:12:09,390 --> 00:12:10,800 ενδιαφέρουσα και πιο προκλητική. 278 00:12:10,800 --> 00:12:13,250 Αλλά αυτό είναι πραγματικά το point-- είναι πώς σχετικά απλές 279 00:12:13,250 --> 00:12:16,930 είναι, στο τέλος της ημέρας, τι υπολογιστής κάνει για την αποθήκευση πληροφοριών, 280 00:12:16,930 --> 00:12:21,740 για την αποθήκευση των εισροών και, τελικά, αποθηκεύσετε ή να εκπροσωπούν αυτές τις εξόδους. 281 00:12:21,740 --> 00:12:23,750 Αλλά οι αριθμοί από μόνοι τους δεν όλα αυτά ενδιαφέροντα. 282 00:12:23,750 --> 00:12:26,069 >> Έτσι οι άνθρωποι, πριν από μερικά χρόνια, αποφάσισε, ξέρετε τι; 283 00:12:26,069 --> 00:12:27,860 Θα ήταν ωραίο αν υπολογιστές δεν ήταν μόνο 284 00:12:27,860 --> 00:12:31,030 αριθμομηχανές για αριθμητική επιχειρήσεις, αλλά στην πραγματικότητα θα μπορούσε να 285 00:12:31,030 --> 00:12:35,209 κάνουμε τα πράγματα όπως επεξεργασία κειμένου, ή e-mail, ή πιο μοντέρνα ενσαρκώσεις 286 00:12:35,209 --> 00:12:36,500 από αυτά τα είδη των τεχνολογιών. 287 00:12:36,500 --> 00:12:40,680 Και έτσι ο κόσμος αποφάσισε αυθαίρετα, αλλά καθολικά, 288 00:12:40,680 --> 00:12:44,380 ότι αν θέλετε να αποθηκεύσετε το κεφάλαιο Μια επιστολή σε έναν υπολογιστή, ξέρετε τι; 289 00:12:44,380 --> 00:12:47,730 Ας συμφωνήσουμε όλοι να αποθηκεύσετε μερικά μοτίβο μηδενικά και ones-- 290 00:12:47,730 --> 00:12:52,422 bits-- που τελικά αντιπροσωπεύει το δεκαδικό αριθμό 65. 291 00:12:52,422 --> 00:12:53,630 Εμείς απλώς θα συμφωνούμε όλοι σε αυτό. 292 00:12:53,630 --> 00:12:56,620 >> 66 θα αντιπροσωπεύουν Β, 67 θα αντιπροσωπεύει C, 293 00:12:56,620 --> 00:13:00,210 και υπάρχει τσαμπιά από άλλα πρότυπα της μηδενικά και μονάδες, ή υποκείμενη αριθμούς, 294 00:13:00,210 --> 00:13:02,224 ότι θα αντιπροσωπεύουν άλλα γράμματα ακόμα. 295 00:13:02,224 --> 00:13:04,390 Έτσι, αν το είδος των ψυχικά απορροφούν αυτό για μια στιγμή, 296 00:13:04,390 --> 00:13:10,900 Σκοπίμως θέσει ένα μέσα Ι, όπου H a 72 και είναι 73. 297 00:13:10,900 --> 00:13:15,830 Εάν ένας υπολογιστής τότε, στο πλαίσιο της ένα πρόγραμμα επεξεργασίας κειμένου ή ένα e-mail, 298 00:13:15,830 --> 00:13:19,620 αποκάλυψε κάτω από την κουκούλα για να έχουν αυτά τα πρότυπα της bits-- μοτίβο 299 00:13:19,620 --> 00:13:22,500 του bit που αντιπροσωπεύουν 72, τότε 73, τότε 33-- 300 00:13:22,500 --> 00:13:26,640 τι μπορεί αυτό να σημάνει στο εν λόγω πρόγραμμα; 301 00:13:26,640 --> 00:13:28,150 >> Έτσι γεια, και στη συνέχεια κάτι. 302 00:13:28,150 --> 00:13:31,460 Δεν απαραίτητα ξέρω, αλλά πράγματι 33-- όχι στο διάγραμμα earlier-- 303 00:13:31,460 --> 00:13:33,170 ήταν απλά ένα θαυμαστικό. 304 00:13:33,170 --> 00:13:38,870 Έτσι, 72 ήταν Η, 73 είναι Ι, 33 συμβαίνει να είναι ένα θαυμαστικό ακόμα. 305 00:13:38,870 --> 00:13:41,719 Αλλά αυτό είναι όλα ωραία και καλά, και στην πραγματικότητα σήμερα, παρά 306 00:13:41,719 --> 00:13:43,760 απλά χρησιμοποιήστε επτά ή οκτώ bits, χάρη σε κάτι 307 00:13:43,760 --> 00:13:46,530 ονομάζεται Unicode, σε αντίθεση σε ASCII πίσω στην ημέρα, 308 00:13:46,530 --> 00:13:50,010 μπορούμε πραγματικά να εκπροσωπεί ακόμη περισσότερο ενδιαφέροντες χαρακτήρες από ό, τι ακριβώς 309 00:13:50,010 --> 00:13:52,980 αυτά πρωτότυπο αγγλικό προκατειλημμένη γράμματα. 310 00:13:52,980 --> 00:13:56,030 Αλλά μπορούμε επίσης να αντιπροσωπεύουν ακόμα τακτοποιημένο πράγματα όπως τα χρώματα. 311 00:13:56,030 --> 00:13:59,750 >> Αν έχετε ακούσει ποτέ το ακρωνύμιο RGB, κόκκινο, πράσινο, μπλε, ότι 312 00:13:59,750 --> 00:14:03,510 Σημαίνει απλώς ότι έναν υπολογιστή τυπικά χρησιμοποιεί τρεις σειρές bits-- 313 00:14:03,510 --> 00:14:06,760 μερικοί αριθμός των bit που αντιπροσωπεύουν ένας αριθμός για το πόσο κόκκινο θέλετε, 314 00:14:06,760 --> 00:14:08,940 Ένα άλλο σύνολο των bits για πόσο πράσινο θέλετε, 315 00:14:08,940 --> 00:14:11,430 και ένα άλλο σετ αριθμό για πόσο μπλε θέλετε. 316 00:14:11,430 --> 00:14:14,457 Έτσι, ένας μεγάλος αριθμός σημαίνει πολλά κόκκινο, μικρός αριθμός σημαίνει ότι δεν υπάρχει κόκκινη. 317 00:14:14,457 --> 00:14:16,290 Και έτσι αυτά είναι το είδος της μεσαίας τιμές εδώ. 318 00:14:16,290 --> 00:14:20,180 >> Έτσι μου δώσει κάποιες κόκκινο, να μου δώσει κάποιες πράσινο, και να μου δώσει ένα μικρό κομμάτι του μπλε. 319 00:14:20,180 --> 00:14:24,260 Και εάν αναμίξετε αυτές τις τρεις αποχρώσεις του χρώματος μαζί, σε αυτήν την περίπτωση, 320 00:14:24,260 --> 00:14:26,850 μπορείτε να πάρετε αυτό το σκοτεινό σκιά του κίτρινου ή καφέ. 321 00:14:26,850 --> 00:14:32,330 Αλλά αυτό το μοτίβο των οκτώ συν οκτώ συν eight-- έτσι 24 bits-- 322 00:14:32,330 --> 00:14:36,550 αριστερά προς τα δεξιά, είναι το πώς ένας υπολογιστής θα αντιπροσωπεύουν το συγκεκριμένο χρώμα. 323 00:14:36,550 --> 00:14:38,090 Τώρα αυτό είναι απλά μια τελεία σε μια οθόνη. 324 00:14:38,090 --> 00:14:42,230 Αν κοιτάξετε πολύ κοντά στην τηλεόρασή σας σας υπολογιστή, θα δείτε τελείες ή εικονοστοιχεία. 325 00:14:42,230 --> 00:14:45,420 Και αν έχετε ένα ολόκληρο πλέγμα pixels, οριζοντίως και καθέτως, 326 00:14:45,420 --> 00:14:46,630 έχετε εικόνες. 327 00:14:46,630 --> 00:14:49,029 Και στη συνέχεια, αν παίρνετε μια εικόνα και στη συνέχεια πλύσιμο 328 00:14:49,029 --> 00:14:52,070 δείξει τον εαυτό σας μια άλλη εικόνα, μια άλλη εικόνα, μια άλλη εικόνα, μια άλλη εικόνα, 329 00:14:52,070 --> 00:14:54,760 πολύ γρήγορα, θα έχουν ασφαλώς ταινίες. 330 00:14:54,760 --> 00:14:56,109 >> Και έτσι παρατηρήσετε όπου ξεκινήσαμε. 331 00:14:56,109 --> 00:14:57,650 Ξεκινήσαμε με αυτά τα μηδενικά και μονάδες. 332 00:14:57,650 --> 00:15:00,570 Δουλέψαμε από εκεί σε δεκαδική αριθμούς, πώς θα τους εκπροσωπήσει. 333 00:15:00,570 --> 00:15:02,070 Τώρα έχουμε τα γράμματα του αλφαβήτου. 334 00:15:02,070 --> 00:15:05,664 Αλλά και σε άλλα πλαίσια περιμένουμε, μπορούμε να χρησιμοποιήσουμε λίγα περισσότερα bits και αναπαράσταση των χρωμάτων. 335 00:15:05,664 --> 00:15:07,830 Από τη στιγμή που έχετε το την ικανότητα να εκπροσωπεί τα χρώματα, 336 00:15:07,830 --> 00:15:11,200 έχετε τη δυνατότητα να εκπροσωπεί φωτογραφίες και κινούμενα gifs 337 00:15:11,200 --> 00:15:13,780 και άλλες τέτοιες χαρακτήρες στην οθόνη. 338 00:15:13,780 --> 00:15:17,160 Και όταν έχεις ένα σωρό εικόνες που φέρουν από το ανθρώπινο ταυτόχρονα, 339 00:15:17,160 --> 00:15:21,480 μοιάζει με κινηματογραφικές ταινίες, και έτσι μπορείτε να πάρετε τα βίντεο, καθώς και. 340 00:15:21,480 --> 00:15:23,460 >> Έτσι, χρησιμοποιώντας αυτά τα πολύ απλή πρωτόγονων εμείς 341 00:15:23,460 --> 00:15:28,070 έχουν τον τρόπο που εκπροσωπούν τελικά, όλες αυτές οι μορφές των μέσων ενημέρωσης. 342 00:15:28,070 --> 00:15:30,450 Και έχουμε αντλείται και πάλι και ξανά και ξανά, μέχρι να 343 00:15:30,450 --> 00:15:33,467 πάρετε από το χαμηλότερο επίπεδο σε αυτό το υψηλότερο επίπεδο. 344 00:15:33,467 --> 00:15:35,550 Έτσι ώστε να μας δίνει αυτό γενική ιδέα της αφαίρεσης. 345 00:15:35,550 --> 00:15:36,990 Αλλά αρχίσαμε εδώ. 346 00:15:36,990 --> 00:15:38,790 >> Εδώ τώρα, θα μπορούσαμε αντιπροσωπεύουν σε έναν υπολογιστή 347 00:15:38,790 --> 00:15:41,920 είσοδοι μας με μηδενικά και μονάδες, εξόδους μας σε μηδενικά και μονάδες, 348 00:15:41,920 --> 00:15:43,640 αλλά τι συμβαίνει μέσα στο κουτί; 349 00:15:43,640 --> 00:15:46,080 Αυτός είναι όπου ο υπολογιστής επιστήμη παίρνει ενδιαφέρον. 350 00:15:46,080 --> 00:15:49,770 Αυτό είναι όπου μπορείτε πραγματικά να σας δική μυαλά για να φέρουν στην επίλυση των προβλημάτων. 351 00:15:49,770 --> 00:15:52,590 Μπορούμε τώρα να ορίζουν, για το υπόλοιπο του εξαμήνου, ναι. 352 00:15:52,590 --> 00:15:53,870 Ξέρω πώς δυαδικό έργων. 353 00:15:53,870 --> 00:15:57,942 Θυμάμαι πώς ASCII ή Unicode-- η χαρτογράφηση να letters-- έργα. 354 00:15:57,942 --> 00:15:59,650 Και σίγουρα ξεχωρίζει για το λόγο που 355 00:15:59,650 --> 00:16:03,470 θα μπορούσε να αποτελέσει κόκκινο και πράσινο και μπλε, και αντιπροσωπεύουν πολυμέσων, καθώς και. 356 00:16:03,470 --> 00:16:05,390 Αλλά αυτή είναι η ενδιαφέροντα πράγματα. 357 00:16:05,390 --> 00:16:09,790 Αυτό είναι που κάνει κάποιος ικανή για την επίλυση των προβλημάτων. 358 00:16:09,790 --> 00:16:11,980 >> Και ένα τέτοιο πρόβλημα μας αρέσει να κάνουμε, πράγματι, 359 00:16:11,980 --> 00:16:15,345 λαμβάνει συμμετοχή, ή κάνει αυτό αλγοριθμικά. 360 00:16:15,345 --> 00:16:16,470 Και πάλι, θα μπορούσα να το κάνουμε αυτό. 361 00:16:16,470 --> 00:16:19,580 Θα ήθελα να κάνω μία, δύο, τρεις, τέσσερις πέντε, έξι, επτά, οκτώ εννέα. 362 00:16:19,580 --> 00:16:21,520 Και θα μπορούσα να γράψω προς τα κάτω για να παρακολουθείτε αυτό. 363 00:16:21,520 --> 00:16:23,769 Αλλά αυτό είναι μόνο το πώς θα αντιπροσωπεύουν την πληροφορία. 364 00:16:23,769 --> 00:16:27,550 Ή θα μπορούσα να κάνω αυτό faster-- δύο, τέσσερις, έξι, οκτώ, δέκα, 12, 14, 16, 18, 20, 365 00:16:27,550 --> 00:16:30,380 22-- αισθάνεται σαν δύο φορές τόσο γρήγορα, αλλά είναι ακόμα 366 00:16:30,380 --> 00:16:32,050 πρόκειται να πάρει πάρα πολύ χρόνο. 367 00:16:32,050 --> 00:16:35,990 >> Αλλά αποδεικνύεται, αν έχουμε αξιοποιήσει ακόμη άλλα resource-- και μάλιστα υπολογιστές 368 00:16:35,990 --> 00:16:38,940 αυτές τις μέρες έχουν πολλαπλούς επεξεργαστές ή μυαλά. 369 00:16:38,940 --> 00:16:41,970 Αποδεικνύεται υπολογιστές μπορούν να κάνει πολλά πράγματα ταυτόχρονα, 370 00:16:41,970 --> 00:16:44,460 και μάλιστα εμείς, σε αυτό το δωμάτιο, μπορεί να αντιπροσωπεύει ακριβώς αυτό. 371 00:16:44,460 --> 00:16:47,130 >> Έτσι είναι λίγο κοινωνικά δύσκολη, αλλά αν θα το χιούμορ μου 372 00:16:47,130 --> 00:16:51,550 μόνο για μια διαδικασία τριών βημάτων, ας Θέλω να ζητήσω από όλους στη θέση τους εκεί ακριβώς 373 00:16:51,550 --> 00:16:54,640 να σταθεί για μια στιγμή. 374 00:16:54,640 --> 00:16:57,380 Σήκω πάνω. 375 00:16:57,380 --> 00:17:01,580 Έτσι, σκεφτείτε τον εαυτό σας, τον αριθμό ένα-- έτσι ώστε όλοι σε αυτή την αίθουσα, 376 00:17:01,580 --> 00:17:05,010 εκτός από τους ανθρώπους που δεν έκαναν υποχρεώνουν, σκέφτεστε νούμερο ένα. 377 00:17:05,010 --> 00:17:06,510 Έτσι ώστε να είναι ο αριθμός σας τώρα. 378 00:17:06,510 --> 00:17:09,399 Αυτό είναι το πρώτο βήμα, ή ως επιστήμονας υπολογιστών ή προγραμματιστής 379 00:17:09,399 --> 00:17:11,827 συνήθως θα κάνουμε, θα πάμε να αρχίσουμε να μετράμε από το μηδέν. 380 00:17:11,827 --> 00:17:14,410 Αν ο μικρότερος αριθμός που μπορούμε αντιπροσωπεύουν με αυτούς τους λαμπτήρες πυράκτωσης 381 00:17:14,410 --> 00:17:17,410 είναι μηδέν, από απλά αφήνοντας τους όλα off, θα μπορούσε κάλλιστα ακριβώς 382 00:17:17,410 --> 00:17:19,271 αρχίζουν να μετρούν από μηδέν είναι αντί για μία. 383 00:17:19,271 --> 00:17:21,020 Και έτσι αυτό είναι που επιστήμονες υπολογιστών κάνει. 384 00:17:21,020 --> 00:17:23,750 Έτσι, βήμα το μηδέν, να σηκώνεται και σκεφτείτε το νούμερο ένα. 385 00:17:23,750 --> 00:17:26,339 Το επόμενο βήμα είναι this-- ζεύγος off με κάποιον στέκεται 386 00:17:26,339 --> 00:17:27,660 και προσθέστε τους αριθμούς μαζί σας. 387 00:17:27,660 --> 00:17:30,660 388 00:17:30,660 --> 00:17:32,850 Θαυμάσιος. 389 00:17:32,850 --> 00:17:37,640 >> Έτσι, σε αυτή τη χρονική στιγμή, κυριολεκτικά ο καθένας που συμμετέχει 390 00:17:37,640 --> 00:17:41,930 σκέφτεται τον αριθμό 2, με εξαίρεση για ένα περίεργο πρόσωπο, αν έχουμε 391 00:17:41,930 --> 00:17:43,450 μονός αριθμός των ανθρώπων σε ένα δωμάτιο. 392 00:17:43,450 --> 00:17:50,640 Και τώρα το τρίτο βήμα εδώ θα να this-- ένας από σας πρέπει να καθίσει. 393 00:17:50,640 --> 00:17:54,490 Κάποιος από εσάς θα πρέπει να καθίσουν, και εάν είστε ακόμα όρθια, 394 00:17:54,490 --> 00:17:56,590 επιστρέψτε στο βήμα ένα. 395 00:17:56,590 --> 00:18:44,799 396 00:18:44,799 --> 00:18:45,790 Εντάξει. 397 00:18:45,790 --> 00:19:00,760 398 00:19:00,760 --> 00:19:01,650 Εντάξει. 399 00:19:01,650 --> 00:19:03,880 Έτσι, όλο και περισσότεροι άνθρωποι Θα πρέπει να καθίσουμε. 400 00:19:03,880 --> 00:19:08,280 Παρατηρήστε ότι αυτό προκαλείται από ένα loop-- κάποιο είδος του κύκλου. 401 00:19:08,280 --> 00:19:11,983 Κάποιοι από εσάς θα πρέπει να είναι αδέξια κολλήσει, πηγαινοέρχονται μεταξύ το πρώτο βήμα 402 00:19:11,983 --> 00:19:14,180 και δύο, ένα και δύο, ένα και δύο. 403 00:19:14,180 --> 00:19:21,190 404 00:19:21,190 --> 00:19:21,810 Εντάξει. 405 00:19:21,810 --> 00:19:22,630 Η πρώτη μας σφάλμα. 406 00:19:22,630 --> 00:19:24,740 Θα ασχοληθεί με αυτό. 407 00:19:24,740 --> 00:19:25,320 Εντάξει. 408 00:19:25,320 --> 00:19:27,370 Επιτρέψτε μου να προσπαθήσω να ωθήσει τα πράγματα μαζί. 409 00:19:27,370 --> 00:19:31,454 >> Θεωρητικά, μόνο ένα άτομο που στέκεται όπως ο καθένας συνεχίζει να ζεύγος μακριά. 410 00:19:31,454 --> 00:19:33,870 Αλλά επιτρέψτε μου να επιταχυνθούν τα πράγματα με τους ανθρώπους στέκεται ακόμα. 411 00:19:33,870 --> 00:19:35,480 Τι αριθμό σκέφτεστε; 412 00:19:35,480 --> 00:19:36,070 46. 413 00:19:36,070 --> 00:19:36,570 ΕΝΤΆΞΕΙ. 414 00:19:36,570 --> 00:19:37,820 Προχωρήστε και να καθίσει. 415 00:19:37,820 --> 00:19:39,190 Εσείς είναι ακόμα όρθια. 416 00:19:39,190 --> 00:19:42,130 Ποιος στέκεται ακόμα; 417 00:19:42,130 --> 00:19:45,240 Τι αριθμό σκέφτεστε; 418 00:19:45,240 --> 00:19:46,160 ΕΝΤΆΞΕΙ. 419 00:19:46,160 --> 00:19:47,900 >> Γι 'αυτό και θα έρθει πίσω σε σας. 420 00:19:47,900 --> 00:19:49,630 Στην πλάτη? 421 00:19:49,630 --> 00:19:50,790 Τι είναι αυτό? 422 00:19:50,790 --> 00:19:53,100 22. 423 00:19:53,100 --> 00:19:56,540 OK κάποιον άλλο μέχρι top-- ναι; 424 00:19:56,540 --> 00:19:57,720 34. 425 00:19:57,720 --> 00:19:58,300 ΕΝΤΆΞΕΙ. 426 00:19:58,300 --> 00:20:02,780 Εδώ για right-- μου εδώ; 427 00:20:02,780 --> 00:20:06,820 132, πολύ ωραία. 428 00:20:06,820 --> 00:20:08,380 22; 429 00:20:08,380 --> 00:20:08,990 >> ΕΝΤΆΞΕΙ. 430 00:20:08,990 --> 00:20:10,031 Και ποιος στέκεται ακόμα; 431 00:20:10,031 --> 00:20:11,000 Εδώ? 432 00:20:11,000 --> 00:20:14,520 46, πολύ ωραίο. 433 00:20:14,520 --> 00:20:16,890 72. 434 00:20:16,890 --> 00:20:18,220 Δεν μπορώ να καθυστερήσει πολύ περισσότερο. 435 00:20:18,220 --> 00:20:20,520 Ναι; 436 00:20:20,520 --> 00:20:22,490 30, ωραία. 437 00:20:22,490 --> 00:20:24,120 Εδώ? 438 00:20:24,120 --> 00:20:26,200 23; 439 00:20:26,200 --> 00:20:27,270 23. 440 00:20:27,270 --> 00:20:30,920 >> Και νομίζω ότι αυτό είναι ο καθένας εκτός από σας παιδιά, χωρίς πίεση. 441 00:20:30,920 --> 00:20:32,860 Αα περίμενε. 442 00:20:32,860 --> 00:20:33,360 28; 443 00:20:33,360 --> 00:20:37,500 444 00:20:37,500 --> 00:20:38,281 Μόλις οκτώ. 445 00:20:38,281 --> 00:20:38,780 ΕΝΤΆΞΕΙ. 446 00:20:38,780 --> 00:20:41,030 Μόλις οκτώ. 447 00:20:41,030 --> 00:20:42,580 Εδώ κάτω? 448 00:20:42,580 --> 00:20:44,570 30. 449 00:20:44,570 --> 00:20:47,344 23. 450 00:20:47,344 --> 00:20:47,843 24. 451 00:20:47,843 --> 00:20:50,810 452 00:20:50,810 --> 00:20:52,310 18. 453 00:20:52,310 --> 00:20:54,690 Αυτή είναι η χειρότερη εκτέλεση αυτού του αλγορίθμου ποτέ. 454 00:20:54,690 --> 00:20:55,190 ΕΝΤΆΞΕΙ. 455 00:20:55,190 --> 00:20:59,760 Έτσι, κανείς άλλος; 456 00:20:59,760 --> 00:21:00,421 Κανένας άλλος? 457 00:21:00,421 --> 00:21:00,920 ΕΝΤΆΞΕΙ. 458 00:21:00,920 --> 00:21:03,300 Ένα ακόμα. 459 00:21:03,300 --> 00:21:04,400 16; 460 00:21:04,400 --> 00:21:04,900 ΕΝΤΆΞΕΙ. 461 00:21:04,900 --> 00:21:05,510 16. 462 00:21:05,510 --> 00:21:06,010 Εντάξει. 463 00:21:06,010 --> 00:21:09,070 Έτσι, αν δεν έχω χάσει κανέναν στην η αντηλιά εδώ, όταν χτύπησα Enter, 464 00:21:09,070 --> 00:21:13,091 θα δούμε, αλγοριθμικά, η συνολικός αριθμός των ανθρώπων σε Sanders. 465 00:21:13,091 --> 00:21:16,340 Επειδή και πάλι, είναι σαν όλους καθώς κάθισε, πέρασε τον αριθμό σας μακριά 466 00:21:16,340 --> 00:21:19,215 σε κάποιον άλλο, σε κάποιον άλλο, σε κάποιον άλλο, έτσι ώστε στη θεωρία, 467 00:21:19,215 --> 00:21:22,304 στο τέλος, μόνο ένας αδέξιος πρόσωπο πρέπει να μείνει όρθια. 468 00:21:22,304 --> 00:21:22,970 Αλλά αυτό είναι μια χαρά. 469 00:21:22,970 --> 00:21:24,290 Εμείς επιτάχυνε τα πράγματα με το χέρι. 470 00:21:24,290 --> 00:21:27,590 Είναι ιδιαίτερα δύσκολο να δούμε σε αυτή τη συγκεκριμένη θέση. 471 00:21:27,590 --> 00:21:34,200 >> Και ο συνολικός αριθμός των ατόμων πιστεύουμε ότι υπάρχουν εδώ είναι 546. 472 00:21:34,200 --> 00:21:37,330 Ο συνολικός αριθμός ήμουν χέρια από το διδακτικό υποτρόφων, 473 00:21:37,330 --> 00:21:40,660 ο οποίος έκανε το παλιό σχολείο αργό τρόπο, ήταν 820. 474 00:21:40,660 --> 00:21:43,660 >> [ΓΈΛΙΟ] 475 00:21:43,660 --> 00:21:47,170 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 476 00:21:47,170 --> 00:21:48,670 >> Εντάξει. 477 00:21:48,670 --> 00:21:50,740 Έτσι, σίγουρα τότε, υπάρχουν αυτά τα σφάλματα. 478 00:21:50,740 --> 00:21:51,460 Και αυτό είναι μια χαρά. 479 00:21:51,460 --> 00:21:53,810 Και έτσι ότι πίσω σε αυτό η πρώτη φορά που κάτι 480 00:21:53,810 --> 00:21:55,420 μπορείτε να γράψετε δεν λειτουργεί απαραίτητα. 481 00:21:55,420 --> 00:21:57,620 Αυτό έχει συμβεί σε μένα ως εδώ καλά. 482 00:21:57,620 --> 00:22:00,844 Αλλά ας εξετάσουμε τώρα πώς μπορούμε να εφαρμόζουν την ίδια ιδέα σε κάτι 483 00:22:00,844 --> 00:22:03,760 μπορεί να έχετε δει πριν, πράγμα που Είναι αυτή η παλιά τεχνολογία σχολείο here-- 484 00:22:03,760 --> 00:22:05,130 ένα πραγματικά μεγάλο τηλεφωνικό κατάλογο. 485 00:22:05,130 --> 00:22:09,380 Και ας υποθέσουμε ότι αυτό το τηλέφωνο το βιβλίο έχει 1.000 σελίδες και 1.000 ονόματα 486 00:22:09,380 --> 00:22:11,360 και τους αριθμούς αλφαβητικά στο εσωτερικό του. 487 00:22:11,360 --> 00:22:14,860 >> Λοιπόν, θα μπορούσαμε είδος εφαρμόσει μια παρόμοια ιδέα σε αυτό το πολύ πρόβλημα, 488 00:22:14,860 --> 00:22:16,270 χρησιμοποιώντας μόνο εμένα. 489 00:22:16,270 --> 00:22:18,810 Έχω ακριβώς το είδος της εξαπατημένοι με τη μόχλευση όλους εσάς 490 00:22:18,810 --> 00:22:23,240 με πολλές πολλές διαφορετικές CPUs ή εγκέφαλοι εκτέλεση κάποιου αλγορίθμου. 491 00:22:23,240 --> 00:22:25,440 Αλλά αν είναι μόνο λίγο παλιά μου, μπορώ ακόμα 492 00:22:25,440 --> 00:22:29,630 αξιοποιήσουν την ίδια την ουσία της ιδέας της διαίρεσης και κατακτά αυτό το πρόβλημα 493 00:22:29,630 --> 00:22:32,970 ξανά και ξανά, σύμφωνα με την οποία τα μισά από εσάς, μισό από εσάς, τα μισά από εσάς, τα μισά από εσάς, 494 00:22:32,970 --> 00:22:35,830 θεωρητικά διατηρούνται κάθεται κάτω, μέχρι που έμειναν, θεωρητικά, 495 00:22:35,830 --> 00:22:36,990 με ένα μόνο άτομο. 496 00:22:36,990 --> 00:22:39,810 >> Έτσι, σε αυτό το παλιό σχολείο τεχνολογικές εξελίξεις, εμείς δεν κάνουμε 497 00:22:39,810 --> 00:22:43,030 Πρέπει αυτό map-- αυτό παλαιάς τεχνολογίας σχολείο, 498 00:22:43,030 --> 00:22:47,300 θα μπορούσαμε να αρχίσει να ψάχνει για κάποιον όπως ο Mike Smith, μία σελίδα τη φορά. 499 00:22:47,300 --> 00:22:49,410 Και βλέπω ότι δεν υπάρχει, ο Mike δεν είναι εδώ. 500 00:22:49,410 --> 00:22:51,110 Είμαι ακόμα στο τμήμα Α. 501 00:22:51,110 --> 00:22:53,900 Τελικά, θεωρώ τον εαυτό μου στο τμήμα Β. 502 00:22:53,900 --> 00:22:56,910 Και αυτό είναι ένα algorithm-- βήμα-βήμα οδηγίες. 503 00:22:56,910 --> 00:22:59,890 Ξεκινήστε από την σελίδα αρχή και ένα σε έναν χρόνο, ψάξτε για τον Mike Smith. 504 00:22:59,890 --> 00:23:03,410 Είναι αυτό correct-- αυτό αλγορίθμου ή προσέγγιση; 505 00:23:03,410 --> 00:23:04,550 >> Ναι, αυτό είναι σωστό. 506 00:23:04,550 --> 00:23:06,840 Αν ο Mike είναι εδώ, τελικά Θα πάρω σε αυτόν. 507 00:23:06,840 --> 00:23:08,139 Αλλά δεν είναι αποτελεσματική. 508 00:23:08,139 --> 00:23:09,180 Είναι προφανώς πολύ αργή. 509 00:23:09,180 --> 00:23:11,340 Γι 'αυτό και μπορούν να αξιοποιήσουν το ίδια twosies πλησιάσει. 510 00:23:11,340 --> 00:23:15,350 Μπορώ να κάνω το είδος των δύο, τέσσερις, έξι, οκτώ, 10, 12. 511 00:23:15,350 --> 00:23:16,330 Είναι δύο φορές πιο γρήγορα. 512 00:23:16,330 --> 00:23:18,290 Πάω να φτάσετε στο Mike γρηγορότερα αν υπάρχει. 513 00:23:18,290 --> 00:23:20,770 Είναι σωστό? 514 00:23:20,770 --> 00:23:22,320 Ναι, αλλά έχω ακούσει little-- όχι. 515 00:23:22,320 --> 00:23:24,200 Τώρα άκουσα ένα όχι. 516 00:23:24,200 --> 00:23:24,700 Ναι. 517 00:23:24,700 --> 00:23:26,190 Υπάρχει ένα bug δυνητικά. 518 00:23:26,190 --> 00:23:29,374 Ίσως ο Mike παίρνει απλά λάθος ανάμεσα σε δύο σελίδες, 519 00:23:29,374 --> 00:23:31,290 επειδή είμαι πετούν μέσα αυτό δύο σε έναν χρόνο. 520 00:23:31,290 --> 00:23:33,580 Έτσι τουλάχιστον χρειαζόμαστε μερικά είδος λύση υπό όρους. 521 00:23:33,580 --> 00:23:35,330 Θέλω να πω, hey, αν χτύπησα κάποιον του οποίου η 522 00:23:35,330 --> 00:23:39,190 όνομα ξεκινά με ένα Τ αντί μιας S, Καλύτερα να διπλασιάσει πίσω τουλάχιστον μία σελίδα. 523 00:23:39,190 --> 00:23:40,767 Έτσι, με λάθη στην αρχή, αλλά επιδιορθώνεται. 524 00:23:40,767 --> 00:23:43,850 Αλλά κανένας από εμάς δεν πρόκειται να ψάξουν για Mike Smith μέσω τηλεφώνου 1,000 σελίδα 525 00:23:43,850 --> 00:23:45,290 να κλείσετε μια σελίδα τη φορά. 526 00:23:45,290 --> 00:23:48,486 Τι είναι ένα φυσιολογικό άτομο πρόκειται να κάνει; 527 00:23:48,486 --> 00:23:50,860 Θα πάμε για να πάει με τα S, το εάν ξέρατε όπου τα S του. 528 00:23:50,860 --> 00:23:54,230 Μπορείτε να πάτε περίπου στη μέση ή ελαφρώς λοξή προς το τέλος. 529 00:23:54,230 --> 00:23:56,850 Και βλέπω εδώ κάτω και Είμαι στο τμήμα Μ. 530 00:23:56,850 --> 00:23:58,952 Αλλά τι ξέρετε σχετικά με αυτό το πρόβλημα τώρα, 531 00:23:58,952 --> 00:24:02,160 ότι δεν ξέραμε απαραιτήτως πριν με όλους μας απλά μετρώντας τους εαυτούς μας 532 00:24:02,160 --> 00:24:03,030 ισοδύναμα; 533 00:24:03,030 --> 00:24:06,010 Λοιπόν, ο Mike είναι προφανές ότι θα να είναι σε αυτό το μισό του βιβλίου 534 00:24:06,010 --> 00:24:07,920 αν αυτός είναι καθόλου εδώ επειδή είναι ταξινομημένο. 535 00:24:07,920 --> 00:24:10,160 >> Και έτσι μπορείτε πολύ dramatically-- 536 00:24:10,160 --> 00:24:11,250 >> [Λαχανιάσει] 537 00:24:11,250 --> 00:24:12,300 >> Ξέρω. 538 00:24:12,300 --> 00:24:16,940 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 539 00:24:16,940 --> 00:24:19,450 >> Είναι πραγματικά πολύ εύκολο, αν μπορείτε να κάνετε κάτω από τη σπονδυλική στήλη εκεί. 540 00:24:19,450 --> 00:24:22,070 Αλλά μπορείτε στη συνέχεια να ρίξει το ήμισυ του προβλήματος μακριά. 541 00:24:22,070 --> 00:24:25,950 Τώρα, είμαι αριστερά με την ίδια problem-- βρείτε Mike Smith σε ένα τηλέφωνο book-- 542 00:24:25,950 --> 00:24:29,610 αλλά τώρα το βιβλίο του τηλεφώνου ξεκινά στις Μ και πηγαίνει ως το Ω, αλλά είναι το ήμισυ τόσο μεγάλη. 543 00:24:29,610 --> 00:24:30,890 >> Αλλά αυτό είναι αυτό που είναι εντυπωσιακό. 544 00:24:30,890 --> 00:24:34,170 Ακριβώς όπως και στη θεωρία, σας παιδιά, όταν όλοι κάθισε μόνο κατά το ήμισυ σε μια στιγμή, 545 00:24:34,170 --> 00:24:37,150 το πρόβλημα πήρε το μισό τόσο μεγάλη, το ήμισυ τόσο μεγάλη, ξανά και ξανά. 546 00:24:37,150 --> 00:24:40,260 Έτσι έχει γίνει αυτό το πρόβλημα η ίδιο πρόβλημα, αλλά το μισό τόσο μεγάλη. 547 00:24:40,260 --> 00:24:42,670 Τώρα είναι ένα πρόβλημα 250 σελίδα. 548 00:24:42,670 --> 00:24:45,340 Από τη στιγμή που συνειδητοποιώ, OH, είμαι στο τμήμα Τ κατά λάθος. 549 00:24:45,340 --> 00:24:46,590 Έχω πάει πάρα πολύ μακριά. 550 00:24:46,590 --> 00:24:48,500 Μπορώ να ρίξει ότι το ήμισυ του τηλεφωνικού καταλόγου μακριά. 551 00:24:48,500 --> 00:24:50,410 Τώρα, είμαι κάτω σε ένα τρίμηνο του προβλήματος. 552 00:24:50,410 --> 00:24:53,910 >> Και μπορείτε να επαναλάβετε, επαναλαμβάνω, επαναλάβετε μέχρι, στη θεωρία, είστε 553 00:24:53,910 --> 00:24:55,460 άφησε με μόνο μία σελίδα. 554 00:24:55,460 --> 00:24:59,010 Και αν ο Mike είναι σε αυτή τη σελίδα, Μπορώ τώρα να λύσει αυτό το πρόβλημα. 555 00:24:59,010 --> 00:25:00,810 Αλλά το πόσο γρήγορα το έκανα λύσει; 556 00:25:00,810 --> 00:25:05,420 Στην πρώτη περίπτωση, μου πήρε σαν ίσως 1.000 βήματα για να βρείτε τον Mike Smith. 557 00:25:05,420 --> 00:25:09,260 Θα μπορούσε να λάβει me-- Πήρα τον τηλεφωνικό κατάλογο 558 00:25:09,260 --> 00:25:11,440 και άρχισα να ψάχνω μία σελίδα τη φορά, 559 00:25:11,440 --> 00:25:13,480 και ο Mike θα μπορούσε να είναι 1.000 σελίδες αργότερα. 560 00:25:13,480 --> 00:25:16,020 >> Δεύτερη προσέγγιση ίσως μου παίρνει 500 βήματα, 561 00:25:16,020 --> 00:25:17,960 γιατί Πετάω μέσω δύο κάθε φορά. 562 00:25:17,960 --> 00:25:21,082 Και η τρίτη προσέγγιση όμως, είναι ιδιαίτερα ισχυρό. 563 00:25:21,082 --> 00:25:23,790 Αλλά ας εξετάσουμε τι πραγματικά έκανε με αυτή την τρίτη προσέγγιση. 564 00:25:23,790 --> 00:25:27,590 Θα έχω αυτό που θα καλέσω ακριβώς αυτά δηλώσεις εδώ, ένα κάθε φορά. 565 00:25:27,590 --> 00:25:28,560 Σήκωσε ένα τηλεφωνικό κατάλογο. 566 00:25:28,560 --> 00:25:30,130 Ανοίξτε στη μέση του τηλεφωνικού καταλόγου. 567 00:25:30,130 --> 00:25:31,419 Κοιτάξτε τα ονόματα. 568 00:25:31,419 --> 00:25:33,960 Και τότε τα πράγματα παίρνουν μια μικρή πιο διανοητικά ενδιαφέροντα, 569 00:25:33,960 --> 00:25:35,170 αν εξακολουθεί να είναι απλό. 570 00:25:35,170 --> 00:25:38,350 Αν Smith είναι μεταξύ των ονόματα στον εν λόγω τρέχουσα σελίδα, 571 00:25:38,350 --> 00:25:40,170 Στη συνέχεια κάνουμε κάτι υπό όρους. 572 00:25:40,170 --> 00:25:41,840 Είναι σαν μια διακλάδωση του δρόμου. 573 00:25:41,840 --> 00:25:42,660 Καλέστε Mike. 574 00:25:42,660 --> 00:25:44,930 Αν ο Mike είναι μεταξύ των ονομάτων σε αυτή τη σελίδα, που ονομάζεται Μάικ. 575 00:25:44,930 --> 00:25:49,720 Αλλά κάνουμε μόνο γραμμή τέσσερα, αν γραμμής δέντρο, αν θέλετε, είναι αλήθεια. 576 00:25:49,720 --> 00:25:51,590 Η απάντηση στο ερώτημα αυτό είναι ναι. 577 00:25:51,590 --> 00:25:55,520 >> Άλλο αν Smith είναι νωρίτερα στο book-- Με άλλα λόγια, αν είμαι στο τμήμα Μ 578 00:25:55,520 --> 00:25:58,540 και ψάχνω για κάποιον να η αριστερά, τότε τι πρέπει να κάνω 579 00:25:58,540 --> 00:26:00,300 Είναι κάτι πολύ παρόμοιο. 580 00:26:00,300 --> 00:26:03,440 Τότε θα πρέπει να ανοίξει στη μέση του αριστερού μισού του βιβλίου. 581 00:26:03,440 --> 00:26:07,930 Έτσι πάει αριστερά, και στη συνέχεια, επιστρέψτε στο βήμα δύο. 582 00:26:07,930 --> 00:26:09,290 Κοιτάξτε τα ονόματα εκεί. 583 00:26:09,290 --> 00:26:12,779 >> Έτσι με άλλα λόγια, κάνουν το ίδιο πράγμα, αλλά σε ένα πρόβλημα που είναι κατά το ήμισυ. 584 00:26:12,779 --> 00:26:13,570 Ξέρεις τι άλλο; 585 00:26:13,570 --> 00:26:16,470 Αν Smith είναι αργότερα στο βιβλίο με βάση τη σελίδα κοιτάζω, 586 00:26:16,470 --> 00:26:18,790 ανοικτή για τη μέση του δεξί μισό του βιβλίου 587 00:26:18,790 --> 00:26:22,050 και στη συνέχεια να επιστρέψετε και πάλι στο βήμα δύο, else-- 588 00:26:22,050 --> 00:26:24,000 υπάρχει μια τέταρτη δυνατότητα εδώ. 589 00:26:24,000 --> 00:26:28,830 Του Mike είτε εδώ είτε προς τα αριστερά ή προς τα δεξιά ή όχι εκεί. 590 00:26:28,830 --> 00:26:30,570 Και εδώ έχουμε καλύτερη θεωρούν αυτό. 591 00:26:30,570 --> 00:26:33,360 Και στην πραγματικότητα, αν είχατε ποτέ υπολογιστή σας, απλά συντριβή σε σας, 592 00:26:33,360 --> 00:26:36,822 ότι είναι μερικές φορές, αλλά όχι πάντα, το αποτέλεσμα μόνο ενός ανθρώπου προγραμματιστής δεν 593 00:26:36,822 --> 00:26:39,280 συνειδητοποιώντας, ω διάολε, υπάρχει στην πραγματικότητα αυτό το τέταρτο σενάριο. 594 00:26:39,280 --> 00:26:41,650 Και αν δεν γράφουν κώδικα για να χειριστεί αυτό το σενάριο, 595 00:26:41,650 --> 00:26:43,220 Μερικές φορές δεν ξέρεις τι μπορεί να κάνει ο υπολογιστής. 596 00:26:43,220 --> 00:26:44,770 Και πράγματι ένα πρόγραμμα θα μπορούσε να συντριβή. 597 00:26:44,770 --> 00:26:47,550 >> Αλλά στην περίπτωση αυτή, σκέφτηκα γι 'αυτό και είπα, άλλο σταματήσουν το κάπνισμα, 598 00:26:47,550 --> 00:26:49,850 γιατί αυτό είναι το τέταρτο λογική πιθανό σενάριο. 599 00:26:49,850 --> 00:26:51,950 Τώρα, ας προσθέσουμε μερικά λεξιλόγιο έτσι 600 00:26:51,950 --> 00:26:55,320 μπορεί να αρχίσει να πετάξει γύρω από τους όρους ότι είναι κατά τα άλλα αρκετά διαισθητική. 601 00:26:55,320 --> 00:26:57,870 Όλα τα πράγματα που έχω μόνο επισημαίνονται με κίτρινο χρώμα εδώ, 602 00:26:57,870 --> 00:27:00,140 Είμαι ακριβώς πρόκειται να το λειτουργίες ή διαδικασίες. 603 00:27:00,140 --> 00:27:01,590 Είναι ακριβώς το είδος των δράσεων. 604 00:27:01,590 --> 00:27:04,900 Έτσι pick up, ανοιχτή σε, κοίτα σε, κλήση, ανοικτή, ανοικτή, 605 00:27:04,900 --> 00:27:09,170 quit-- αυτά είναι μόνο ενέργειες, ή εμείς θα καλέστε τους πιο επίσημα, λειτουργίες. 606 00:27:09,170 --> 00:27:11,410 >> Εν τω μεταξύ, τώρα σε κίτρινο, Έχω επισημαίνονται τα πράγματα 607 00:27:11,410 --> 00:27:14,084 ερμήνευα-- ας αρχίσει καλώντας τους όρους ή υποκαταστήματα. 608 00:27:14,084 --> 00:27:16,750 Αυτά είναι τα σημεία λήψης αποφάσεων όπου μπορείτε να πάτε με αυτόν τον τρόπο, με τον τρόπο αυτό, 609 00:27:16,750 --> 00:27:18,100 ή κάποια άλλη κατεύθυνση ακόμα. 610 00:27:18,100 --> 00:27:19,430 Έτσι, αυτές θα είναι συνθήκες. 611 00:27:19,430 --> 00:27:20,930 Και τώρα αυτό είναι λίγο περίπλοκη. 612 00:27:20,930 --> 00:27:24,600 Ας το ονομάσουμε αυτές τις ερωτήσεις Boolean εκφράσεις, 613 00:27:24,600 --> 00:27:26,530 μετά από κάποιον με το επίθετο Bool. 614 00:27:26,530 --> 00:27:28,340 >> Και μια Boolean έκφραση Είναι απλά κάτι 615 00:27:28,340 --> 00:27:30,290 που είναι είτε αληθής ή ψευδής, ναι ή όχι. 616 00:27:30,290 --> 00:27:35,870 Έτσι είναι το ερώτημα του οποίου η απάντηση που νοιάζονται για, έτσι ώστε να σε μια κατάσταση 617 00:27:35,870 --> 00:27:39,210 κάνει μια decision-- πάρει πίσω μια απάντηση, και στη συνέχεια να πάει αριστερά ή δεξιά, ή κάτι 618 00:27:39,210 --> 00:27:40,450 άλλο συνολικά. 619 00:27:40,450 --> 00:27:42,860 >> Και, στη συνέχεια, τέλος, αυτά γραμμές here-- πάει πίσω 620 00:27:42,860 --> 00:27:44,737 στο βήμα δύο, πάει πίσω στο βήμα two-- θα μπορούσαμε να 621 00:27:44,737 --> 00:27:46,320 υλοποίηση αυτής της ιδέας με διαφορετικούς τρόπους. 622 00:27:46,320 --> 00:27:49,028 Και στη συνέχεια, όσοι από εσάς με εμπειρία προγραμματισμού θα μπορούσε να γίνει 623 00:27:49,028 --> 00:27:50,670 ή μπορώ να φανταστώ να κάνει αυτό με διαφορετικό τρόπο. 624 00:27:50,670 --> 00:27:53,170 Αλλά για τη σημερινή σκοπούς, είναι μόνο η ιδέα που έχει σημασία. 625 00:27:53,170 --> 00:27:55,400 Αυτό που προκαλεί ό, τι θα γενικά ονομάζουμε 626 00:27:55,400 --> 00:28:00,110 ένα loop-- κάποιο είδος του κύκλου, επειδή αυτό είναι κάνοντας μου να κάνω κάτι και πάλι. 627 00:28:00,110 --> 00:28:03,340 >> Έτσι τώρα, ας εξετάσουμε πόσο καλό είναι αυτό αλγόριθμος είναι. 628 00:28:03,340 --> 00:28:03,899 Είναι σωστό. 629 00:28:03,899 --> 00:28:06,940 Αν του Mike στο βιβλίο, είναι ένα από τα εκείνους τέσσερις scenarios-- ξανά και ξανά 630 00:28:06,940 --> 00:28:08,023 και πάλι, εμείς θα τον βρούμε. 631 00:28:08,023 --> 00:28:08,890 Αλλά πόσο καλό είναι αυτό; 632 00:28:08,890 --> 00:28:10,150 Λοιπόν, δεν έχουμε να είναι πολύ τυπική εδώ. 633 00:28:10,150 --> 00:28:12,066 Αλλά ας οικόπεδο κάτι, x και y, για να πάρει 634 00:28:12,066 --> 00:28:14,470 μια αίσθηση του σχήματος αυτού του προβλήματος. 635 00:28:14,470 --> 00:28:17,160 >> Στον άξονα χ είναι εδώ το μέγεθος του προβλήματος μου. 636 00:28:17,160 --> 00:28:20,256 Και ένα άξονα y εδώ θα είναι η ώρα να λύσουμε. 637 00:28:20,256 --> 00:28:21,630 Έτσι, ίσως αυτό είναι ο αριθμός των σελίδων. 638 00:28:21,630 --> 00:28:24,400 Ίσως αυτή να είναι δευτερόλεπτα ή σελίδα turns-- οτιδήποτε. 639 00:28:24,400 --> 00:28:27,290 Ωστόσο, θέλετε να μετρήσετε είναι τι αυτή η εικόνα θα εκπροσωπήσει. 640 00:28:27,290 --> 00:28:30,630 Και ότι το πρώτο αλγόριθμο, Πάω για να περιγράψει ως απλά μια ευθεία γραμμή. 641 00:28:30,630 --> 00:28:33,120 Αν υπάρχει n σελίδες ο τηλεφωνικός κατάλογος, τότε 642 00:28:33,120 --> 00:28:36,010 θα μπορούσε να μου πάρει όσες όπως n βήματα για να βρείτε τον Mike. 643 00:28:36,010 --> 00:28:38,930 Αν Verizon ή η τηλεφωνική εταιρεία προσθέτει μία ακόμη σελίδα επόμενο έτος, 644 00:28:38,930 --> 00:28:42,170 θα μπορούσε να μου πάρει ένα ακόμη step-- μία μονάδα του χρόνου να βρει τον Mike. 645 00:28:42,170 --> 00:28:44,230 Έτσι, υπάρχει μόνο αυτή αναλογία ένα προς ένα. 646 00:28:44,230 --> 00:28:45,970 Είναι μια ευθεία κλίση της γραμμής. 647 00:28:45,970 --> 00:28:49,110 >> Εν τω μεταξύ, η δεύτερη algorithm-- αν είμαι 648 00:28:49,110 --> 00:28:51,570 πηγαίνει δύο σε δύο time--, τέσσερις, έξι, οκτώ, ή double-- 649 00:28:51,570 --> 00:28:54,550 πηγαίνει μέσα από τις σελίδες δύο φορές κάθε φορά, δύο κάθε φορά, 650 00:28:54,550 --> 00:28:55,710 εξακολουθούν να είναι ευθεία γραμμή. 651 00:28:55,710 --> 00:28:58,720 Υπάρχει τώρα μια δύο παρα ένα αναλογία, αλλά ακριβώς λίγο πιο κάτω. 652 00:28:58,720 --> 00:29:02,240 Έτσι, αν υπάρχει αυτό πολλές σελίδες στο διάγραμμα εδώ σε κίτρινο, 653 00:29:02,240 --> 00:29:04,800 ότι θα μπορούσε να μου πάρει αυτό πολλά βήματα ή δευτερόλεπτα, 654 00:29:04,800 --> 00:29:07,980 Αλλιώς πρόκειται να με πάρει διπλάσια από την κόκκινη γραμμή. 655 00:29:07,980 --> 00:29:10,190 >> Αλλά η πράσινη γραμμή είναι το πραγματικό πακέτο. 656 00:29:10,190 --> 00:29:12,290 Αυτό είναι ό, τι συνήθως καλέσετε έναν logorithm-- καταγραφής 657 00:29:12,290 --> 00:29:13,840 του n, όπου n είναι ο αριθμός των σελίδων. 658 00:29:13,840 --> 00:29:16,450 Αλλά είναι το σχήμα που έχει σημασία σήμερα, γιατί δεν έχουμε 659 00:29:16,450 --> 00:29:17,950 ακόμη και να σκεφτεί για τη χάραξη σημεία. 660 00:29:17,950 --> 00:29:19,830 >> Σκεφτείτε ένα ακραίο σενάριο. 661 00:29:19,830 --> 00:29:23,070 Ας υποθέσουμε ότι η Verizon αύριο διπλασιάζει το αριθμό των σελίδων στο εν λόγω τηλεφωνικό κατάλογο, 662 00:29:23,070 --> 00:29:24,900 από 1.000 έως 2.000. 663 00:29:24,900 --> 00:29:28,440 Στο πρώτο αλγόριθμο, Ι μπορεί να σπαταλήσει ένα επιπλέον 1.000 664 00:29:28,440 --> 00:29:32,080 βήματα που αναζητούν Mike, μόνο και μόνο επειδή Verizon διπλασίασε το μέγεθος του βιβλίου. 665 00:29:32,080 --> 00:29:34,740 Η δεύτερη algorithm-- ότι θα μπορούσε πάρε με επιπλέον 500 βήματα. 666 00:29:34,740 --> 00:29:38,370 1.000 περισσότερες σελίδες, θα πάω δύο σε ένα time-- 500 περισσότερα βήματα για να βρείτε τον Mike. 667 00:29:38,370 --> 00:29:41,020 >> Αλλά αυτό τρίτο αλγόριθμο είναι το είδος των μαγικών. 668 00:29:41,020 --> 00:29:44,270 Verizon διπλασιάζει τον αριθμό σελίδες από 1.000 έως 2.000, 669 00:29:44,270 --> 00:29:47,730 αλλά πόσα περισσότερα βήματα κάνει μου πάρει να ψάξουν για τον Mike; 670 00:29:47,730 --> 00:29:51,220 Είναι μόνο ένα, γιατί δεν μπορώ απλά σχίσει το βιβλίο του τηλεφώνου για μια ακόμη φορά 671 00:29:51,220 --> 00:29:55,280 από ένα πρόβλημα 2,000 σελίδα σε ένα 1.000 πρόβλημα της σελίδας, και voila. 672 00:29:55,280 --> 00:29:57,030 Έχω πάρει ένα τεράστιο δάγκωμα από αυτό. 673 00:29:57,030 --> 00:29:59,405 >> Και αν πάτε πραγματικά ακραία, ας υποθέσουμε ότι στον τηλεφωνικό κατάλογο 674 00:29:59,405 --> 00:30:03,600 Η εταιρεία είχε κάτι τρελό σαν μια 4000000000 σελίδα τηλεφωνικό κατάλογο. 675 00:30:03,600 --> 00:30:07,020 Λοιπόν πόσα βήματα μπορεί να το πάρει να βρείτε Mike Smith σε μια 4000000000 676 00:30:07,020 --> 00:30:09,990 σελίδα τηλεφωνικό κατάλογο; 677 00:30:09,990 --> 00:30:16,450 Είναι ένα μεγάλο αριθμό, αλλά μόλις 4 δισεκατομμύρια 2.000.000.000 - 1000000000 για να τα 500 εκατομμύρια, 678 00:30:16,450 --> 00:30:18,720 250 million-- ακόμα Ακούγεται σαν μεγάλους αριθμούς, 679 00:30:18,720 --> 00:30:20,980 αλλά είμαι πολύ γρήγορα να πάρει σε μικρότερες τιμές. 680 00:30:20,980 --> 00:30:24,790 >> Και στην πραγματικότητα, αν το κάνω τα μαθηματικά δεξιά, μπορώ μόνο να διαιρέσει 4000000000 681 00:30:24,790 --> 00:30:28,750 κατά περίπου 32 φορές πριν Θα πιάσουμε μόνο ένα. 682 00:30:28,750 --> 00:30:31,640 Έτσι, αν το βιβλίο του τηλεφώνου ήταν 4 μακρά δισεκατομμύρια σελίδες, δεν είναι μεγάλη υπόθεση. 683 00:30:31,640 --> 00:30:35,270 Μέσα σε λίγα δευτερόλεπτα, ίσως 32 δευτερόλεπτα, θα μπορούσα να το διαιρέσει σε μισό 684 00:30:35,270 --> 00:30:39,560 και τελικά να βρει Mike ή καταλήγουν στο συμπέρασμα ότι δεν υπάρχει. 685 00:30:39,560 --> 00:30:42,219 Και αυτή είναι η ουσία της μια algorithm-- ένα καλό αλγόριθμο. 686 00:30:42,219 --> 00:30:44,260 Και αυτό είναι ένα από τα στόχοι μιας κατηγορίας, όπως αυτό, 687 00:30:44,260 --> 00:30:47,350 προσπαθεί να καταλάβω πώς μπορώ να κάνω λύσει το πρόβλημα όχι μόνο σωστά, 688 00:30:47,350 --> 00:30:52,360 όπως κάνω πάντα ήξερε πώς να το κάνουμε ένα σελίδα σε ένα time-- αλλά σωστά και καλά. 689 00:30:52,360 --> 00:30:55,034 Πώς μπορώ να σχεδιάσουν καλή λύσεις στα προβλήματα; 690 00:30:55,034 --> 00:30:57,200 Έτσι, ας ρίξουμε μια στιγμή εδώ και να σας δώσει μια αίσθηση τώρα 691 00:30:57,200 --> 00:31:00,260 του CS50 η πορεία itself-- εισαγάγει μέλη του προσωπικού λίγα μαθήματος. 692 00:31:00,260 --> 00:31:02,010 Λίγο πριν 2:00, εμείς θα να λάβει ένα σύντομο διάλειμμα 693 00:31:02,010 --> 00:31:03,520 έτσι ώστε όσοι από εσάς που ψωνίζουν μπορεί να 694 00:31:03,520 --> 00:31:05,130 πάπια έξω και να πάρει μια εξετάσουμε κάποια άλλη κατηγορία 695 00:31:05,130 --> 00:31:06,580 και να παρακολουθήσουν το υπόλοιπο αυτής της σε απευθείας σύνδεση. 696 00:31:06,580 --> 00:31:09,250 Αλλά για τώρα, επιτρέψτε μου να εισαγάγει CS50, η ίδια η τάξη, 697 00:31:09,250 --> 00:31:11,330 και ιδιαίτερα αυτό που είναι νέο. 698 00:31:11,330 --> 00:31:13,960 >> Έτσι, η τελευταία άνοιξη, πέρασε αρκετά ένα κομμάτι της time-- 699 00:31:13,960 --> 00:31:17,911 το προσωπικό του μαθήματος και I-- σκέψης για το τι είναι που θέλουμε CS50 να είναι, 700 00:31:17,911 --> 00:31:19,910 και πηγαίνοντας πίσω στην πρώτη αρχές, να το πω έτσι, 701 00:31:19,910 --> 00:31:22,760 να εξετάσει τι είναι αυτό που θέλουμε αυτό το μάθημα για να μοιάζουν και να είναι 702 00:31:22,760 --> 00:31:23,740 όπως και για τους σπουδαστές του. 703 00:31:23,740 --> 00:31:26,480 Και έτσι θα δείτε στο πρόβλημα που το μηδέν καθώς, μια πρόσκληση 704 00:31:26,480 --> 00:31:28,780 να ρίξετε μια ματιά σε αυτό URL που συνοψίζει 705 00:31:28,780 --> 00:31:33,270 μερικά από τα κίνητρα πίσω από το ακόλουθα χαρακτηριστικά της πτώσης 2016. 706 00:31:33,270 --> 00:31:35,570 >> Έτσι, όπως μπορείτε να έχετε σταχυολογηθεί από το TL: ελεημοσύνη DR, 707 00:31:35,570 --> 00:31:39,060 η διδακτέα ύλη και σήμερα, καθώς και από Ο κατάλογος Φυσικά, φέτος στο CS50, 708 00:31:39,060 --> 00:31:42,540 είστε μόνο αναμένεται να παραστούν today-- έτσι η δουλειά καλά done-- 709 00:31:42,540 --> 00:31:45,960 και η τελευταία διάλεξη στις 21 Νοεμβρίου. 710 00:31:45,960 --> 00:31:49,150 Και είστε ευπρόσδεκτοι, αλλά δεν αναμένεται να παρακολουθούν αυτές τις διαλέξεις στη μέση, 711 00:31:49,150 --> 00:31:51,180 γιατί αυτό που κάνουμε του τρέχοντος έτους, είναι τα γυρίσματα 712 00:31:51,180 --> 00:31:52,661 σε πραγματικό χρόνο το υλικό του μαθήματος. 713 00:31:52,661 --> 00:31:54,660 Έτσι, τα πάντα θα παραμείνουν τρέχουσες και ενσωματώθηκε 714 00:31:54,660 --> 00:31:57,410 όσο καλύτερα μπορούμε can-- τρέχοντα γεγονότα και τις συνομιλίες ότι οι λαοί θα μπορούσε 715 00:31:57,410 --> 00:32:00,400 να έχει στη βιομηχανία του κόσμο, αλλά κάνοντας αυτό το υλικό 716 00:32:00,400 --> 00:32:03,892 διαθέσιμα, ως εκ τούτου, ακόμη και earlier-- πλήρης, με πλήρη μεταγραφές κειμένου 717 00:32:03,892 --> 00:32:05,850 και έρευνας και συνδέσεις με άλλους πόρους. 718 00:32:05,850 --> 00:32:07,930 >> Και πράγματι, έχουμε ήδη υποστηρίζοντας για κάποιο χρονικό διάστημα 719 00:32:07,930 --> 00:32:10,830 και εμείς τώρα πιστεύουμε αυτό, ότι μπορούμε να δημιουργήσουμε, ψηφιακά, 720 00:32:10,830 --> 00:32:15,170 μια πιο συναρπαστική, πιο συναρπαστικό εκπαιδευτική εμπειρία, σε αντίθεση 721 00:32:15,170 --> 00:32:19,110 να συγκεντρώσει εδώ μερικά 23 φορές αυτοπροσώπως, ακούγοντας κάποιος μου αρέσει 722 00:32:19,110 --> 00:32:22,925 απλά μιλάμε για την επιστήμη των υπολογιστών, σε αντίθεση με την εμπλοκή πιο ενεργά. 723 00:32:22,925 --> 00:32:25,800 Έτσι θα δείτε το αναλυτικό πρόγραμμα του μαθήματος ένα σκίτσο του εξαμήνου εδώ, 724 00:32:25,800 --> 00:32:27,840 μαζί με όταν διαλέξεις θα να κινηματογραφηθεί, στην οποία είστε 725 00:32:27,840 --> 00:32:29,710 ευπρόσδεκτη, αλλά δεν αναμένεται, και πότε θα 726 00:32:29,710 --> 00:32:31,640 να κυκλοφορήσει στην ιστοσελίδα του μαθήματος. 727 00:32:31,640 --> 00:32:34,300 >> Και τι θα κάνουμε εδώ Τετάρτη αρχίζουν την επόμενη εβδομάδα, 728 00:32:34,300 --> 00:32:37,362 είναι πολύ πιο στενά, με μόνο εκείνοι οι λαοί που θέλουν να συμμετάσχουν, 729 00:32:37,362 --> 00:32:39,820 είναι το λεγόμενο βόλτα, όπου και οι κεφαλές του μαθήματος 730 00:32:39,820 --> 00:32:41,730 θα κάνει πραγματικότητα τα πράγματα λίγο πιο οικεία 731 00:32:41,730 --> 00:32:44,313 εδώ κάτω στην ορχήστρα ενότητα, εξακολουθούν να έχουν κάποια τεχνολογία 732 00:32:44,313 --> 00:32:46,365 και τα πόδια μέσα από το σετ πρόβλημα τρέχουσας εβδομάδας, 733 00:32:46,365 --> 00:32:50,020 και να σας προσφέρουμε particularly-- αν μεταξύ των Οι λιγότερο comfortable-- όλα τα πιο 734 00:32:50,020 --> 00:32:52,790 καθοδήγηση που μπορεί να θέλετε ή χρειάζονται για την πρόκληση της εβδομάδας. 735 00:32:52,790 --> 00:32:55,820 Και ομοίως, για όσους δεν μπορούν να παρακολουθούν εκείνους που στο πρόσωπο, δεν είναι μεγάλη υπόθεση. 736 00:32:55,820 --> 00:32:58,486 Εκεί θα οδηγήσει παρόμοια με ένα από τα ανώτερα στελέχη του μαθήματος, 737 00:32:58,486 --> 00:33:02,650 Zamalya, η ίδια δυνατότητα ενσωματωμένου το πρόβλημα οι ίδιοι θέτει. 738 00:33:02,650 --> 00:33:04,960 >> Πρόβλημα θέτει το τρέχον έτος θα κυκλοφορήσει την Παρασκευή 739 00:33:04,960 --> 00:33:08,080 και πλέον κάνει επτά ημέρες αργότερα, αλλά 10 ημέρες later-- σκόπιμα 740 00:33:08,080 --> 00:33:10,910 επικαλύψεις με κάθε πρόβλημα οριστεί, έτσι ώστε να φιλοξενεί καλύτερα, 741 00:33:10,910 --> 00:33:13,050 ελπίζουμε, άμπωτη και τη ροή στα προγράμματα των φοιτητών, 742 00:33:13,050 --> 00:33:16,550 ειδικά όταν εξετάσεις προόδου ή τον κλασικό αθλητισμό ή ακαδημαϊκούς ή εξωσχολικές 743 00:33:16,550 --> 00:33:18,465 τείνουν να έρχονται και να φεύγουν ειδικά μέσα εξαμήνου. 744 00:33:18,465 --> 00:33:21,340 Αυτό πρέπει να σας δώσει λίγο περισσότερο διακριτική ευχέρεια ως προς το αν μπροστά 745 00:33:21,340 --> 00:33:25,690 φορτώσει την εβδομάδα σας με CS50 ή την πλάτη του φορτίου αυτό το επόμενο σαββατοκύριακο αντ 'αυτού. 746 00:33:25,690 --> 00:33:28,817 Έτσι κοιτάξουμε να εξεταστέα ύλη του μαθήματος εδώ για το χρονοδιάγραμμα αυτών. 747 00:33:28,817 --> 00:33:30,900 Και θα παρατηρήσετε πάρα πολύ μεταξύ οι αλλαγές του τρέχοντος έτους, 748 00:33:30,900 --> 00:33:34,082 για όσους πιο εξοικειωμένοι με προγραμματισμού στο παρελθόν, 749 00:33:34,082 --> 00:33:36,290 θα ξεκινήσει το εξάμηνο, όπως θα είμαστε σήμερα στο Ξυστό, 750 00:33:36,290 --> 00:33:39,730 δίνει ιδιαίτερη έμφαση στη γλώσσα που ονομάζεται C, και στη συνέχεια να μην μετάβαση 751 00:33:39,730 --> 00:33:43,430 σε PHP, αλλά σε μια γλώσσα που ονομάζεται Python προς το τέλος του εξαμήνου 752 00:33:43,430 --> 00:33:46,565 στο πλαίσιο του web προγραμματισμό, μαζί με SQL και JavaScript, 753 00:33:46,565 --> 00:33:48,930 HTML, CSS, και ακόμα περισσότερα. 754 00:33:48,930 --> 00:33:51,790 >> Και απαντώντας σε συχνές ερωτήσεις, είναι πράγματι η περίπτωση 755 00:33:51,790 --> 00:33:55,520 ότι η CS δεν είναι τόσο τρομακτικό όπως εγώ κάποτε θεωρούν ότι ήταν, αλλά είναι και πολύ δουλειά 756 00:33:55,520 --> 00:33:57,280 όπως είχα ακούσει ότι θα μπορούσε να είναι. 757 00:33:57,280 --> 00:34:03,210 Αλλά αυτό είναι το να πούμε ότι εδώ είναι μερικά στατιστικά στοιχεία από το φθινόπωρο του 2015 το σώμα των φοιτητών, 758 00:34:03,210 --> 00:34:06,460 σύμφωνα με την οποία οι οριζόντιες μπλε γραμμές αντιπροσωπεύουν το μέσο αριθμό των ωρών 759 00:34:06,460 --> 00:34:06,960 αναφερθεί. 760 00:34:06,960 --> 00:34:10,570 Και θα δείτε έναν μέσο όρο έξι έως 10 12-- ίσως 16 761 00:34:10,570 --> 00:34:14,580 ή έτσι και ούτω καθεξής, αλλά με υψηλή διακύμανση να είναι σαφής. 762 00:34:14,580 --> 00:34:18,570 Και έτσι να συνειδητοποιήσουμε ότι δεν υπάρχει μόνο οι μαθητές πιο άνετη και λιγότερο 763 00:34:18,570 --> 00:34:22,150 άνετα κατά τη διάρκεια, αλλά μια αντίστοιχη υποστήριξη 764 00:34:22,150 --> 00:34:25,699 δομή για να πάρει τους φοιτητές μέσα από το εξάμηνο με επιτυχία. 765 00:34:25,699 --> 00:34:29,409 >> Πράγματι, απαντώντας σε συχνές ερωτήσεις, θα πρέπει να παίρνετε CS50 ως πρώτο έτος; 766 00:34:29,409 --> 00:34:30,139 Απολύτως. 767 00:34:30,139 --> 00:34:32,690 Και στην πραγματικότητα, εγώ δεν μετανιώνω Δεν έχει βρει το δρόμο μου 768 00:34:32,690 --> 00:34:35,170 ή να βρεθεί ένα νέο πεδίο ότι το πρώτο έτος. 769 00:34:35,170 --> 00:34:39,149 Και θα πρέπει να πάρετε CS50 με άλλα μαθήματα, σίγουρα ως well-- 770 00:34:39,149 --> 00:34:41,940 και η γενική συμβουλή θα μπορούσαμε δίνουν στους μαθητές, ότι CS50 είναι πιθανώς 771 00:34:41,940 --> 00:34:44,929 δεν είναι το είδος της κατηγορίας ή εισαγωγή κατηγορίας ότι θα πρέπει να πάρετε με τρεις 772 00:34:44,929 --> 00:34:47,199 άλλο ή άλλα τέσσερα ρ-set τάξεις. 773 00:34:47,199 --> 00:34:50,583 Αλλά εάν παίρνετε άλλα δύο π-σετ τάξεις, κάτι άλλο, και CS50, 774 00:34:50,583 --> 00:34:51,499 απολύτως διαχειρίσιμη. 775 00:34:51,499 --> 00:34:54,900 Είχα πολλούς μαθητές στο παρελθόν πράξει με μεγάλη επιτυχία. 776 00:34:54,900 --> 00:34:57,490 >> Και για να σας πάρει προς το ότι τελειώσω γραμμή με επιτυχία, 777 00:34:57,490 --> 00:35:00,260 δεν το μάθημα έχει sections-- διαφορετικές πίστες για τους φοιτητές 778 00:35:00,260 --> 00:35:03,100 λιγότερο άνετη, πιο άνετα, και κάπου ενδιάμεσα, 779 00:35:03,100 --> 00:35:04,850 σύμφωνα με την οποία κατά τη διάρκεια του πρώτο σετ πρόβλημα, 780 00:35:04,850 --> 00:35:06,360 θα σας ζητηθεί να περιγράψει τον εαυτό σας. 781 00:35:06,360 --> 00:35:09,151 Και αν είστε μεταξύ εκείνων λιγότερο άνετο, είναι το είδος του πράγματος 782 00:35:09,151 --> 00:35:10,420 ότι το μόνο που μάλλον γνωρίζετε. 783 00:35:10,420 --> 00:35:13,010 Και πράγματι, αυτό ήταν η αυξανόμενη δημογραφική στο CS50 784 00:35:13,010 --> 00:35:14,090 για αρκετά χρόνια. 785 00:35:14,090 --> 00:35:17,680 >> Από το περασμένο φθινόπωρο για παράδειγμα, το 58% της κατηγορίας 786 00:35:17,680 --> 00:35:20,560 περιγράφεται εαυτούς τους ως μεταξύ εκείνων λιγότερο άνετα, 787 00:35:20,560 --> 00:35:23,210 με 9% μεταξύ εκείνων περισσότερα άνετα, και στη συνέχεια 788 00:35:23,210 --> 00:35:25,900 οι άλλοι μαθητές εκεί κόκκινο περιγράφουν τους εαυτούς τους 789 00:35:25,900 --> 00:35:27,890 ως κάπου ανάμεσα. 790 00:35:27,890 --> 00:35:31,980 Και θα δείτε εδώ τα θέματα συνολικά και το χρονοδιάγραμμα των τμημάτων, τα οποία όλα 791 00:35:31,980 --> 00:35:34,820 προσφέρονται στο πρόσωπο, στο σε πραγματικό χρόνο, με την πορεία του 792 00:35:34,820 --> 00:35:38,320 καταπληκτικό προσωπικό της διδασκαλίας υποτρόφων και οι βοηθοί Φυσικά, μερικοί από τους οποίους 793 00:35:38,320 --> 00:35:39,660 θα ανταποκρίνονται ακριβώς σε μια στιγμή. 794 00:35:39,660 --> 00:35:42,993 >> Τμήματα τους εαυτούς τους, όπως θα δείτε, θα είναι Δευτέρα και την Τρίτη και την Τετάρτη, 795 00:35:42,993 --> 00:35:45,910 έτσι ώστε να σας επιτρέψει να βουτήξει στο μετά την εμπλοκή, αν έτσι 796 00:35:45,910 --> 00:35:48,110 επιλέξουν, κατά τη διάρκεια του διάλεξη νωρίτερα αυτή την εβδομάδα. 797 00:35:48,110 --> 00:35:51,420 Και μετά τις ώρες γραφείου, το οποίο Σίγουρα, με κάθε χρόνο που περνά, 798 00:35:51,420 --> 00:35:54,110 Έχουν όχι λιγότερο από ένα πρόκληση για το μάθημα. 799 00:35:54,110 --> 00:35:57,040 Και φέτος, δεν είμαστε το σχεδιασμό μόνο για να ασκεί τα καθήκοντά του hours-- ένα 800 00:35:57,040 --> 00:36:00,300 σε ένα ευκαιρίες για βοήθεια για οι μαθητές την Τετάρτη Πέμπτη 801 00:36:00,300 --> 00:36:03,790 και τις Κυριακές, το τελευταίο από αυτά είναι το απόγευμα από το σχεδιασμό 802 00:36:03,790 --> 00:36:06,910 να μειώσει ορισμένες από το άγχος που πάντα προκύπτει με αργά τη νύχτα 803 00:36:06,910 --> 00:36:10,180 p-settting με προθεσμία looming-- αλλά θα πρέπει επίσης να προσφέρονται ώρες γραφείου 804 00:36:10,180 --> 00:36:14,920 κάθε Δευτέρα και Τρίτη και Τετάρτες και τις Παρασκευές και τα Σάββατα, 805 00:36:14,920 --> 00:36:17,080 χάρη στους φίλους μας στο HSA. 806 00:36:17,080 --> 00:36:20,330 >> CS50 έχει πλέον το δικό του χώρο για τους φοιτητές και το προσωπικό CS50, 807 00:36:20,330 --> 00:36:23,070 στην κορυφή 67 Όρος Auburn Street, ακριβώς εκεί στην πλατεία του Χάρβαρντ. 808 00:36:23,070 --> 00:36:26,340 Το όραμα για το οποίο είναι ότι CS50 είναι TFs και ΑΠ σε όλη τη διάρκεια της εβδομάδας, 809 00:36:26,340 --> 00:36:29,052 λίγο πολύ σε όλη σχεδόν ημέρες, θα είναι εκεί για υποστήριξη. 810 00:36:29,052 --> 00:36:30,760 Έτσι, αν έχετε κάποια ερώτηση σχετικά με μια π-σετ 811 00:36:30,760 --> 00:36:33,093 ή αισθάνεστε λίγο μπλοκάρει ή μια μικρή σύγχυση, 812 00:36:33,093 --> 00:36:35,640 και καλό, έχετε μια ώρα ή μισή ώρα μεταξύ των τάξεων, 813 00:36:35,640 --> 00:36:38,920 ειδικά στην square-- μπορεί να σας ποπ και έχουν αυτό το ερώτημα απαντά 814 00:36:38,920 --> 00:36:41,720 της έχουν αυτή τη σύγχυση clarified-- πολύ στο πνεύμα, 815 00:36:41,720 --> 00:36:45,490 είστε εξοικειωμένοι, των μαθηματικών δική ερωτήσεις μαθηματικά κέντρο τμήματος, 816 00:36:45,490 --> 00:36:49,300 αλλά λίγο πολύ όλο το εικοσιτετράωρο ανά [? Gcal?] Που θα δημοσιεύσετε σε απευθείας σύνδεση. 817 00:36:49,300 --> 00:36:52,400 >> Διδακτική είναι επίσης διαθέσιμα για εκείνους φοιτητές, ελεύθερα από την πορεία του 818 00:36:52,400 --> 00:36:54,750 το δικό της προσωπικό, αν θα θέλατε πιο οικείο το ένα στο ένα, 819 00:36:54,750 --> 00:36:58,940 ή μόνο δύο ή τρεις συμμαθητές, που εργάζονται με ένα από τα μέλη του προσωπικού του μαθήματος. 820 00:36:58,940 --> 00:37:02,320 Και πράγματι, αυτά εδώ είναι ακριβώς ορισμένα από τα μέλη του προσωπικού του μαθήματος, 821 00:37:02,320 --> 00:37:04,120 μερικοί από τους οποίους θα ανταποκρίνονται ακριβώς σε μια στιγμή. 822 00:37:04,120 --> 00:37:07,440 Στην πραγματικότητα, CS50 δική το κεφάλι της διδασκαλίας τους συναδέλφους, 823 00:37:07,440 --> 00:37:09,790 και φυσικά το κεφάλι βοηθός, και διδάσκαλος, 824 00:37:09,790 --> 00:37:12,998 θα μπορούσε να έρθει επάνω, να επιτρέψει να πω ένα γεια. 825 00:37:12,998 --> 00:37:22,498 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 826 00:37:22,498 --> 00:37:23,456 ΟΜΙΛΗΤΗΣ 1: [δεν ακούγεται]. 827 00:37:23,456 --> 00:37:51,842 828 00:37:51,842 --> 00:37:57,856 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 829 00:37:57,856 --> 00:37:58,814 ΟΜΙΛΗΤΗΣ 2: [δεν ακούγεται]. 830 00:37:58,814 --> 00:38:17,240 831 00:38:17,240 --> 00:38:27,238 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 832 00:38:27,238 --> 00:38:28,196 ΟΜΙΛΗΤΗΣ 3: [δεν ακούγεται]. 833 00:38:28,196 --> 00:38:58,951 834 00:38:58,951 --> 00:39:03,120 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 835 00:39:03,120 --> 00:39:06,740 >> DAVID Malan: Και μας επιτρέψει να φέρει επί του σκάφους δύο CS50 πιο 836 00:39:06,740 --> 00:39:09,730 ανώτερα στελέχη, ο Rob και Zamayla, καθώς και. 837 00:39:09,730 --> 00:39:15,120 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 838 00:39:15,120 --> 00:39:17,226 >> Πράγματι, τόσο ο Rob και Zamayla ήταν μαζί μας 839 00:39:17,226 --> 00:39:19,940 για τόσο πολύ καιρό, ότι ήμουν σε θέση να μπω σε αρχεία CS50 του 840 00:39:19,940 --> 00:39:22,470 και να βρείτε αυτό το πολύ SD πλάνα από τις συμμετέχουσες 841 00:39:22,470 --> 00:39:25,402 στον εαυτό τους στάδιο πριν από μερικά χρόνια. 842 00:39:25,402 --> 00:39:26,110 ROB: [δεν ακούγεται]. 843 00:39:26,110 --> 00:39:53,660 844 00:39:53,660 --> 00:39:59,247 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 845 00:39:59,247 --> 00:40:00,080 ZAMAYLA: [δεν ακούγεται] 846 00:40:00,080 --> 00:40:50,888 847 00:40:50,888 --> 00:40:52,467 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 848 00:40:52,467 --> 00:40:53,425 DAVID Malan: Σας ευχαριστώ. 849 00:40:53,425 --> 00:40:56,160 850 00:40:56,160 --> 00:40:58,030 Έτσι, εκτός από αυτά τα μέλη της ομάδας εδώ, 851 00:40:58,030 --> 00:41:01,662 CS50 έχει μια ομάδα περίπου 100 μέλη του προσωπικού, όλοι εκ των οποίων 852 00:41:01,662 --> 00:41:04,370 θα είναι διαθέσιμο για τα τμήματα και ώρες γραφείου και τόσα άλλα. 853 00:41:04,370 --> 00:41:06,920 Και όπως λέει πάρα Rob, αυτό είναι η πιο σημαντική αναμόρφωση 854 00:41:06,920 --> 00:41:09,534 του CS50 στα 10 χρόνια ότι Έχω πάει σε [δεν ακούγεται]. 855 00:41:09,534 --> 00:41:12,200 [Δεν ακούγεται] επικεντρώθηκε ιδιαίτερα στην παροχή μιας δομής στήριξης, 856 00:41:12,200 --> 00:41:14,050 κλάδεμα μακριά πολλά το μεγαλύτερο μέρος που είναι ήδη 857 00:41:14,050 --> 00:41:16,870 συσσωρευτεί σε 10 χρόνια επαναληπτικών εξελίξεις 858 00:41:16,870 --> 00:41:18,120 σχετικά με το πρόβλημα σύνολα του μαθήματος. 859 00:41:18,120 --> 00:41:21,470 >> Έτσι φέτος, όχι μόνο στην τάξη, αλλά Επίσης, με τη μορφή του προβλήματος του μαθήματος 860 00:41:21,470 --> 00:41:24,800 σύνολα, θα πρέπει να βρείτε τα πράγματα να να είναι πιο βελτιωμένο, χλοοτάπητα, πολύ 861 00:41:24,800 --> 00:41:26,700 πιο εύχρηστο από ό, τι στην διάρκεια των προηγούμενων ετών, όπως 862 00:41:26,700 --> 00:41:31,330 ρίξει μερικές από τις αποσκευές που είναι που αναπτύχθηκε από τη φύση της εξελισσόμενης έτους 863 00:41:31,330 --> 00:41:32,970 με το χρόνο και την επανάληψη. 864 00:41:32,970 --> 00:41:35,110 Έτσι, το νέο και βελτιωμένο αρχίζει σήμερα. 865 00:41:35,110 --> 00:41:37,860 >> Θα συναντήσετε λίγο περισσότερο από το προσωπικό μαθήματος στο [δεν ακούγεται] 866 00:41:37,860 --> 00:41:40,186 στις 2:30, όπου σερβίρονται, ως παράδοση, κέικ. 867 00:41:40,186 --> 00:41:42,060 Υπάρχει ένα κομμάτι κέικ περισσότερα από αυτό, αλλά θα 868 00:41:42,060 --> 00:41:44,690 Γνωρίστε Erin και ο Tobias και άλλοι ακόμα. 869 00:41:44,690 --> 00:41:46,470 Και επιτρέψτε μου να σας δώσω μια περιοδεία πριν ακούμε 870 00:41:46,470 --> 00:41:49,600 από μερικά από τα άλλα μέλη του προσωπικού στην τάξη, για το τι περιμένει, καθώς και. 871 00:41:49,600 --> 00:41:52,730 Στην πραγματικότητα, πάντα ξεκινάμε CS50 του εξάμηνο αυτό το ερχόμενο Σάββατο, 872 00:41:52,730 --> 00:41:54,330 με ό, τι λέγεται Ημέρα CS50 παζλ. 873 00:41:54,330 --> 00:41:56,710 >> Δεν έχει τίποτε να κάνει με την επιστήμη των υπολογιστών per se, 874 00:41:56,710 --> 00:41:58,669 αλλά με περίπου προβλήματος επίλυση γενικότερα. 875 00:41:58,669 --> 00:42:01,210 Και αν το επιλέξουν να συμμετάσχουν, ανά μερικές από τις προσκλήσεις, 876 00:42:01,210 --> 00:42:03,460 μπορεί να έχετε δει την πόρτα πέσει ή στη σκηνή εδώ, 877 00:42:03,460 --> 00:42:05,830 Είναι μια ευκαιρία σε ομάδες δύο ή τρία ή τέσσερα, 878 00:42:05,830 --> 00:42:10,680 να συμμετάσχουν για γρίφους και πίτσα και τα βραβεία και πιο-- αυτό το Σάββατο, 879 00:42:10,680 --> 00:42:12,560 μείνετε συντονισμένοι για περισσότερα. 880 00:42:12,560 --> 00:42:15,082 >> Θα βρείτε, επίσης, ότι κάθε Παρασκευή, σε Φωτιά και Πάγος, 881 00:42:15,082 --> 00:42:16,790 δεν φέρει CS50 ένα σωρό των μαθητών 882 00:42:16,790 --> 00:42:19,100 στο μεσημεριανό γεύμα, να κάνει ένα μεγάλο τάξη αισθάνονται πιο οικεία, 883 00:42:19,100 --> 00:42:21,820 και γενικά συγκεντρώνουν αποφοίτους και τους φίλους από τη βιομηχανία 884 00:42:21,820 --> 00:42:24,710 για να μιλήσουμε για αυτό που έχετε ήταν μέχρι Μετά την αποφοίτησή του. 885 00:42:24,710 --> 00:42:27,820 Ομοίως, φέτος, θα έχουμε εγκαινιάσει η πρώτη CS50 50 886 00:42:27,820 --> 00:42:31,390 κωδικοποίησης contest-- ένα μέσα εξάμηνο δυνατότητα να μπορεί ο καθένας 887 00:42:31,390 --> 00:42:35,430 σε opt στη βάση, για να έχουν μια πρόκληση των πνευμάτων ενάντια συμμαθητές, 888 00:42:35,430 --> 00:42:39,250 και πάλι σε ομάδες των δύο ή τριών ή τέσσερις, χρησιμοποιώντας μόνο ότι ο προγραμματισμός 889 00:42:39,250 --> 00:42:41,920 καταλαβαίνω ότι θα πρέπει στη συνέχεια κάτω ζώνη σας μετά από μόλις έξι ή επτά 890 00:42:41,920 --> 00:42:44,710 εβδομάδων από την τάξη, και συμμετέχουν σε αυτό το είδος του ανταγωνισμού 891 00:42:44,710 --> 00:42:50,261 online-- αν θέλετε να ακονίσετε τη δική σας δεξιότητες πολύ περισσότερο σε αυτή την πρόκληση. 892 00:42:50,261 --> 00:42:52,760 Στο τέλος του εξαμήνου είναι η λεγόμενη CS50 Hackathon-- 893 00:42:52,760 --> 00:42:56,970 μια ευκαιρία που αρχίζει στις 7:00 PM τελειώνει στις 7:00 π.μ., και κατά μήκος του τρόπου 894 00:42:56,970 --> 00:43:01,900 είναι 12 ώρες το βράδυ για να βουτήξει στην τελική ταινία-- του μαθήματος 895 00:43:01,900 --> 00:43:04,820 μια ευκαιρία για το σχεδιασμό και να εφαρμόσουν τα περισσότερα τίποτα ενδιαφέροντος 896 00:43:04,820 --> 00:43:06,980 για να σας με τη διδασκαλία σας καθοδήγηση τους συναδέλφους του. 897 00:43:06,980 --> 00:43:09,600 Γύρω από 9:00 π.μ. κάνουμε συνήθως εξυπηρετούν πίτσα, 1.00 π.μ., 898 00:43:09,600 --> 00:43:13,210 Του Philippe, και οι λίγοι από εμάς που είναι ακόμα ξύπνιοι στις 5:00 π.μ., 899 00:43:13,210 --> 00:43:16,310 Δεν λεωφορείο μεταφερθούν με λεωφορείο προς τα κάτω το δρόμο προς IHOP για πρωινό. 900 00:43:16,310 --> 00:43:19,340 >> Και, στη συνέχεια, λίγες μέρες αργότερα είναι η λεγόμενη CS50 fare-- 901 00:43:19,340 --> 00:43:23,450 ένα τέλος της έκθεσης εξαμήνου γιορτή του πόσο μακριά τόσα πολλά 902 00:43:23,450 --> 00:43:28,200 του CS50 μαθητές έχουν έρθει από εβδομάδα μηδέν σε όλη τη διαδρομή μέχρι την εβδομάδα, 903 00:43:28,200 --> 00:43:32,610 και έχοντας κατά νου ότι το 73% των ατόμων συμμαθητές και η δική σας φέτος έχουν 904 00:43:32,610 --> 00:43:34,840 Ποτέ δεν λάβει μια τάξη CS πριν. 905 00:43:34,840 --> 00:43:39,226 Στην πραγματικότητα, για να επαναλαμβάνουν τόσο πολύ, εδώ είναι λίγα περισσότερα πρόσωπα από το προσωπικό CS50 του. 906 00:43:39,226 --> 00:43:40,184 ΟΜΙΛΗΤΗΣ 4: [δεν ακούγεται]. 907 00:43:40,184 --> 00:43:45,909 908 00:43:45,909 --> 00:43:46,867 ΟΜΙΛΗΤΗΣ 5: [δεν ακούγεται]. 909 00:43:46,867 --> 00:43:51,332 910 00:43:51,332 --> 00:43:52,290 ΟΜΙΛΗΤΗΣ 6: [δεν ακούγεται]. 911 00:43:52,290 --> 00:43:55,276 912 00:43:55,276 --> 00:43:56,234 ΟΜΙΛΗΤΗΣ 7: [δεν ακούγεται]. 913 00:43:56,234 --> 00:44:01,727 914 00:44:01,727 --> 00:44:02,643 ΟΜΙΛΗΤΗΣ 8: [δεν ακούγεται] 915 00:44:02,643 --> 00:44:10,066 916 00:44:10,066 --> 00:44:11,024 ΟΜΙΛΗΤΗΣ 9: [δεν ακούγεται]. 917 00:44:11,024 --> 00:44:14,475 918 00:44:14,475 --> 00:44:15,461 >> ΟΜΙΛΗΤΗΣ 4: [δεν ακούγεται]. 919 00:44:15,461 --> 00:44:16,461 >> ΟΜΙΛΗΤΗΣ 10: [δεν ακούγεται]. 920 00:44:16,461 --> 00:44:21,456 921 00:44:21,456 --> 00:44:23,438 ΟΜΙΛΗΤΗΣ 11: [δεν ακούγεται]. 922 00:44:23,438 --> 00:44:24,438 ΟΜΙΛΗΤΗΣ 12: [δεν ακούγεται]. 923 00:44:24,438 --> 00:44:30,438 924 00:44:30,438 --> 00:44:31,396 ΟΜΙΛΗΤΗΣ 13: [δεν ακούγεται] 925 00:44:31,396 --> 00:44:37,360 926 00:44:37,360 --> 00:44:40,342 >> ΟΜΙΛΗΤΗΣ 14: [δεν ακούγεται]. 927 00:44:40,342 --> 00:44:42,863 >> ΟΜΙΛΗΤΗΣ 13: [δεν ακούγεται]. 928 00:44:42,863 --> 00:44:43,821 ΟΜΙΛΗΤΗΣ 15: [δεν ακούγεται] 929 00:44:43,821 --> 00:44:48,785 930 00:44:48,785 --> 00:44:49,785 ΟΜΙΛΗΤΗΣ 16: [δεν ακούγεται]. 931 00:44:49,785 --> 00:44:53,761 932 00:44:53,761 --> 00:44:55,252 >> ΟΜΙΛΗΤΗΣ 11: [δεν ακούγεται] 933 00:44:55,252 --> 00:44:57,773 934 00:44:57,773 --> 00:44:58,731 ΟΜΙΛΗΤΗΣ 5: [δεν ακούγεται]. 935 00:44:58,731 --> 00:45:11,250 936 00:45:11,250 --> 00:45:15,130 DAVID Malan: Μερικές της ομάδας Οι ίδιοι ψώνια τάξεις. 937 00:45:15,130 --> 00:45:17,760 Αλλά αν τα μέλη αυτά του προσωπικού CS50 είναι εδώ, 938 00:45:17,760 --> 00:45:19,230 θα μπορούσε να έρθει σε για μια στιγμή. 939 00:45:19,230 --> 00:45:23,450 CS50 είναι TFs και ΑΠ και [; προσωπικό;] μέλη here-- αυτά είναι μόνο μερικά 940 00:45:23,450 --> 00:45:28,880 της faces-- ένας εκ των οποίων μόλις είδε, και μερικά other-- και μερικοί άλλοι 941 00:45:28,880 --> 00:45:30,020 ακόμη. 942 00:45:30,020 --> 00:45:33,242 Γιατί δεν πάμε μπροστά και να επιτρέψει εσείς ένα διάλειμμα πέντε λεπτών. 943 00:45:33,242 --> 00:45:35,450 Αν χρειαστεί να πάπια έξω για να τάξεις κατάστημα, αυτό είναι εντάξει. 944 00:45:35,450 --> 00:45:38,900 Και σε πέντε λεπτά, θα συνεχιστεί, ρίχνοντας μια ματιά σε Scratch-- πρώτη 945 00:45:38,900 --> 00:45:42,420 της γλώσσας προγραμματισμού μας, να πληρούν το προσωπικό του μαθήματος εδώ λίγο περισσότερο, 946 00:45:42,420 --> 00:45:45,020 και να επικεντρωθεί τελικά σχετικά με το πρόβλημα που μηδέν. 947 00:45:45,020 --> 00:45:46,710 Έτσι θα είμαστε πίσω σε πέντε λεπτά. 1 00:45:46,864 --> 00:45:47,370 >> Εντάξει. 2 00:45:47,370 --> 00:45:48,590 Έτσι, είμαστε πίσω. 3 00:45:48,590 --> 00:45:51,330 Και στις υπόλοιπες μας φορά σήμερα, ο στόχος 4 00:45:51,330 --> 00:45:54,320 είναι να εξασφαλίσει ισότιμους όρους ανταγωνισμού από την άποψη της κάποια ορολογία, 5 00:45:54,320 --> 00:45:55,297 από την άποψη κάποιων ιδεών. 6 00:45:55,297 --> 00:45:57,380 Διότι πράγματι, σύμφωνα με μερικά από τα διαγράμματα νωρίτερα, 7 00:45:57,380 --> 00:46:00,130 υπάρχει πρόκειται να είναι μια σειρά από επίπεδα εμπειρίας στην τάξη, 8 00:46:00,130 --> 00:46:03,210 των οποίων ορισμένοι μαθητές έχουν ληφθεί κάποια προγραμματισμού πριν, 9 00:46:03,210 --> 00:46:04,200 ορισμένοι από τους οποίους δεν έχουν. 10 00:46:04,200 --> 00:46:07,430 Και έτσι με αυτό το πρώτο πρόβλημα που και με αυτή την πρώτη γλώσσα 11 00:46:07,430 --> 00:46:10,830 έχουμε την ευκαιρία να ξεκινήσετε να θεωρούμε δεδομένο μετά τη σημερινή 12 00:46:10,830 --> 00:46:12,960 μερικά κοινό λεξιλόγιο και την ιδέα. 13 00:46:12,960 --> 00:46:15,590 >> Και εμείς θα κάνουμε αυτό με τον τρόπο της πρώτη languages-- του μαθήματος 14 00:46:15,590 --> 00:46:21,070 εκτός από την C και Python και JavaScript και SQL και HTML και CSS, 15 00:46:21,070 --> 00:46:24,450 εμείς θα πρέπει να επικεντρώνονται αρχικά και μόνο για το πρόβλημα που μηδέν 16 00:46:24,450 --> 00:46:28,160 σε αυτή τη γραφική γλώσσα, που ονομάζεται Το μηδέν, που αναπτύχθηκε από το Media Lab του MIT 17 00:46:28,160 --> 00:46:30,880 κάτω από το δρόμο, για να βοηθήσει οι μαθητές και τα παιδιά ιδιαίτερα 18 00:46:30,880 --> 00:46:35,070 εκφραστούν algorithmically-- κατά τρόπο πιο συνεπή με τι 19 00:46:35,070 --> 00:46:37,300 θα μπορούσαμε να αποκαλέσουμε υπολογιστικής σκέψης. 20 00:46:37,300 --> 00:46:40,985 >> Και είναι μια χρήσιμη γλώσσα, διότι πολύ γρήγορα την επόμενη εβδομάδα σε μία εβδομάδα, 21 00:46:40,985 --> 00:46:44,360 εμείς τη μετάβαση σε μια πιο παραδοσιακών και απόκρυφες γλώσσα που ονομάζεται 22 00:46:44,360 --> 00:46:46,370 C, η οποία είναι καθαρά κειμένου. 23 00:46:46,370 --> 00:46:48,930 Μπορείτε να χρησιμοποιήσετε μόνο το πληκτρολόγιο σας σε Για να γράψετε οδηγίες 24 00:46:48,930 --> 00:46:50,230 όπως αυτά που εμφανίζονται στην οθόνη. 25 00:46:50,230 --> 00:46:52,840 Αλλά ακόμα κι αν έχετε δει ποτέ μια γλώσσα προγραμματισμού πριν, 26 00:46:52,840 --> 00:46:55,170 σε μόλις ρίχνοντας μια ματιά αυτό, όλα είναι το αινιγματικό, 27 00:46:55,170 --> 00:47:00,010 μπορείτε να μαντέψετε ότι ίσως εκτυπώνει Hello World. 28 00:47:00,010 --> 00:47:02,050 Αλλά υπάρχουν πολλά συντακτική γενικά εκεί. 29 00:47:02,050 --> 00:47:05,770 Υπάρχει το παράξενο hash Σύμβολο ή hash tag επάνω στην κορυφή. 30 00:47:05,770 --> 00:47:08,900 Υπάρχει οι αγκύλες, μερικά παρενθέσεις, αγκύλες, ημι-colon-- 31 00:47:08,900 --> 00:47:11,880 υπάρχει μόνο τόσο πολύ την οπτική σύνταξη που παίρνει με τον τρόπο. 32 00:47:11,880 --> 00:47:13,940 Ξεκινάμε την πορεία με Το μηδέν, έτσι ώστε να πάρει 33 00:47:13,940 --> 00:47:17,600 παρελθόν όλα αυτά διανοητικά πληκτικός περισπασμούς, 34 00:47:17,600 --> 00:47:20,290 και να επικεντρωθεί αντ 'αυτού στις ιδέες. 35 00:47:20,290 --> 00:47:22,540 >> Στην πραγματικότητα, αυτό μπορεί να είναι πριν. 36 00:47:22,540 --> 00:47:24,830 Αυτό, για το σκοπό αυτό, την εβδομάδα θα είναι μετά. 37 00:47:24,830 --> 00:47:26,760 Αυτό, Αυτή η γραφική γλώσσα Scratch, 38 00:47:26,760 --> 00:47:29,870 είναι το πώς θα εφαρμόσουν το ίδιο program-- ένα πρόγραμμα που όταν τρέχει, 39 00:47:29,870 --> 00:47:31,340 απλά λέει hello world. 40 00:47:31,340 --> 00:47:34,740 Και τι είναι ωραίο για το Scratch είναι ότι είναι αυτό το γραφικό προγραμματισμό 41 00:47:34,740 --> 00:47:38,780 περιβάλλον που χρησιμοποιεί κομμάτια του παζλ ή μπλοκ, που αλληλοσυνδέονται μόνο μαζί 42 00:47:38,780 --> 00:47:40,440 αν κάνει λογικό νόημα να το πράξει. 43 00:47:40,440 --> 00:47:43,810 Και με το Scratch μπορείτε να αναπτύξετε animations και διαδραστικά παιχνίδια 44 00:47:43,810 --> 00:47:47,270 και της τέχνης, και οποιοσδήποτε αριθμός από τα πράγματα που μπορείτε να φανταστείτε στο μυαλό σας, 45 00:47:47,270 --> 00:47:51,200 και να τις εφαρμόσουν απλά με μεταφορά και απόθεση κομμάτια του παζλ. 46 00:47:51,200 --> 00:47:54,265 >> Και πράγματι, θα έχουμε τη δυνατότητα για να εκφράσουν κάποιες από τις ίδιες ιδέες 47 00:47:54,265 --> 00:47:56,890 που ανέφερα μόλις μια στιγμή πριν, στο πλαίσιο της Mike Smith 48 00:47:56,890 --> 00:48:00,670 και την αναζήτηση ενός κινητού τηλεφώνου book-- πράγματα όπως λειτουργίες, απλά δράσεις, 49 00:48:00,670 --> 00:48:03,070 τα πράγματα όπως βρόχους που κάνουν τα πράγματα ξανά και ξανά, 50 00:48:03,070 --> 00:48:05,170 μεταβλητές, οι οποίες είναι κάτι που θα εισαγάγει, 51 00:48:05,170 --> 00:48:08,086 αλλά είναι γνωστό ίσως από algebra-- απλά κάποιο είδος κράτησης θέσης 52 00:48:08,086 --> 00:48:10,840 για να αποθηκεύσετε κάποια τιμή που θα μπορούσε Πρέπει later-- Boolean εκφράσεις, 53 00:48:10,840 --> 00:48:13,720 όπου αυτοί ναι όχι ή αλήθεια ψευδή ερωτήσεις από πριν. 54 00:48:13,720 --> 00:48:17,117 Συνθήκες είναι εκείνες πιρούνια στο road-- τα υποκαταστήματα να το πω έτσι. 55 00:48:17,117 --> 00:48:19,700 Και τότε υπάρχουν μερικά φανταχτερά χαρακτηριστικά θα δούμε ακόμα και σήμερα, 56 00:48:19,700 --> 00:48:22,850 ονομάζονται συστοιχίες και τα θέματα και γεγονότα, ότι θα επανεξετάσουμε τότε πάνω 57 00:48:22,850 --> 00:48:24,460 φορά σε διαφορετικές γλώσσες. 58 00:48:24,460 --> 00:48:26,790 Αλλά Scratch μας επιτρέπει για να εξερευνήσετε όλα αυτά. 59 00:48:26,790 --> 00:48:30,779 Έτσι, εδώ στο Scratch, αυτό το μοβ μπλοκ είναι ό, τι μια λειτουργία είναι συνήθως 60 00:48:30,779 --> 00:48:31,570 πρόκειται να μοιάσει. 61 00:48:31,570 --> 00:48:35,620 Αυτό το μοβ κομμάτι του παζλ που έχει μερικά λέξη, όπως για παράδειγμα, η οποία είναι η δράση, 62 00:48:35,620 --> 00:48:38,490 και, στη συνέχεια, θα μπορούσε να έχει μια επιχείρημα ή parameter-- κάποιο τρόπο 63 00:48:38,490 --> 00:48:41,140 του είδους παραμετροποίηση τι μπλοκ κάνει 64 00:48:41,140 --> 00:48:45,182 έτσι ώστε να μην είναι προκαθορίζεται από MIT τι λέει αυτό το μοβ μπλοκ. 65 00:48:45,182 --> 00:48:47,390 Στην πραγματικότητα, θα δείτε σε ένα τη στιγμή που είμαι σε θέση να πληκτρολογήσετε 66 00:48:47,390 --> 00:48:49,931 οι λέξεις όπως κόσμου γειά σου, ή γειά σου David, ή γεια Zamayla, 67 00:48:49,931 --> 00:48:53,750 ή ό, τι θέλω, το επιχείρημα σε αυτό το παζλ piece-- το λευκό κουτί 68 00:48:53,750 --> 00:48:54,251 εκεί. 69 00:48:54,251 --> 00:48:57,166 Εν τω μεταξύ, αν θέλω μια θηλιά, που θα Βλέπουμε ότι υπάρχει κομμάτια παζλ που 70 00:48:57,166 --> 00:48:58,640 κοιτάξουμε λίγο πορτοκαλί όπως αυτό. 71 00:48:58,640 --> 00:49:01,690 Και το σχήμα τους, το είδος των υποδηλώνει ότι κάτι που συμβαίνει ξανά και ξανά 72 00:49:01,690 --> 00:49:02,680 σε έναν κύκλο. 73 00:49:02,680 --> 00:49:06,800 >> Έτσι, αν μπορώ να τυλίξει ένα πω ένα γεια κόσμο μπλοκ με μια για πάντα μπλοκάρουν το Ξυστό, 74 00:49:06,800 --> 00:49:10,307 είναι ακριβώς πρόκειται να κρατήσει λέγοντας γεια κόσμο για πάντα, κυριολεκτικά. 75 00:49:10,307 --> 00:49:12,390 Εν τω μεταξύ, υπάρχει ένα άλλο είδος βρόχου στο Scratch 76 00:49:12,390 --> 00:49:14,348 ότι θα see-- μια επανάληψη block-- όπου, αν 77 00:49:14,348 --> 00:49:17,940 γνωρίζουμε εκ των προτέρων πόσες φορές θέλετε ο βρόχος να εκτελέσει 78 00:49:17,940 --> 00:49:21,850 ένας πεπερασμένος αριθμός των φορές σε fact-- σας μπορούν να ορίζουν ότι με την πληκτρολόγηση ενός αριθμού 79 00:49:21,850 --> 00:49:25,380 ή ακόμα και να συνδέσετε σε μια μεταβλητή, όπως x ή y όπως θα δούμε. 80 00:49:25,380 --> 00:49:27,690 >> Στην πραγματικότητα, οι μεταβλητές όπως θ στην περίπτωση αυτή, η οποία 81 00:49:27,690 --> 00:49:30,109 είναι ένα κοινό όνομα για μια ακέραια μεταβλητή που 82 00:49:30,109 --> 00:49:31,900 απλώς αποθηκεύει ένα number-- ένας ακέραιος μπορεί να είναι, 83 00:49:31,900 --> 00:49:35,470 Για να χρησιμοποιήσετε αυτή πορτοκαλί μπλοκ εδώ για να ορίσετε μια μεταβλητή, όπως εγώ στο μηδέν. 84 00:49:35,470 --> 00:49:38,900 Εδώ είναι ένα παράδειγμα στο πράσινο ενός Boolean έκφραση στο Scratch. 85 00:49:38,900 --> 00:49:43,700 Ακόμα κι αν αυτό μοιάζει με τα μαθηματικά τύπο, οι ανισότητες μαθηματικά σαν αυτό 86 00:49:43,700 --> 00:49:45,320 πραγματικά είναι Boolean εκφράσεις. 87 00:49:45,320 --> 00:49:46,570 Αυτό είναι είτε αληθείς ή ψευδείς. 88 00:49:46,570 --> 00:49:48,300 Ι είναι μικρότερη από 50. 89 00:49:48,300 --> 00:49:51,815 Είναι είτε ένα ναι ή όχι απάντηση ή αληθής ή ψευδής απάντηση. 90 00:49:51,815 --> 00:49:53,940 Και εμείς θα αποκαλούμε γενικά αυτές οι Boolean εκφράσεις. 91 00:49:53,940 --> 00:49:55,148 Και δεν χρειάζεται να είναι 50. 92 00:49:55,148 --> 00:49:57,970 Μπορεί να είναι μικρότερη από x y, μεγαλύτερο από το y, ίσο με y-- 93 00:49:57,970 --> 00:50:00,020 οποιοδήποτε αριθμό άλλων ερωτήσεις μπορεί να σας ζητηθεί. 94 00:50:00,020 --> 00:50:03,250 >> Τώρα, με την πρώτη ματιά, αυτό μπορεί να μοιάζει ξαφνικά αρκετά τολμηρή εδώ, και αυτό είναι. 95 00:50:03,250 --> 00:50:06,540 Αλλά η έννοια σοφός, είναι αρκετά γνωστά από πριν. 96 00:50:06,540 --> 00:50:09,370 Αν το x είναι μικρότερο από y, από ό, τι να πω τόσο πολύ. 97 00:50:09,370 --> 00:50:12,230 Αλλιώς αν το x είναι μεγαλύτερο από το y, τότε να πω τόσο πολύ. 98 00:50:12,230 --> 00:50:14,260 Άλλο να πω το x είναι ίσο με το y. 99 00:50:14,260 --> 00:50:17,220 Έτσι έχουμε ένα παράδειγμα υπάρχει τρίτης scenario-- 100 00:50:17,220 --> 00:50:20,600 η μόνη τρίτη possibility-- x είναι είτε μεγαλύτερο από, μικρότερο από, ή ίσο με. 101 00:50:20,600 --> 00:50:22,420 Έτσι έχουμε μια τρίοδη διακλάδωση του δρόμου. 102 00:50:22,420 --> 00:50:26,290 >> Και να παρατηρήσετε τι είναι δροσερό Scratch here--, όπως φαίνεται, έχει μόνο ένα παζλ 103 00:50:26,290 --> 00:50:28,840 κομμάτι, σε αυτή την περίπτωση, αν άλλο μπλοκ. 104 00:50:28,840 --> 00:50:32,090 Και όμως αυτό θα φανεί σε σας σημαίνει να έχουν μόνο μια αμφίδρομη διακλάδωση του δρόμου. 105 00:50:32,090 --> 00:50:34,631 Μπορείτε να πάτε αριστερά ή προς τα δεξιά, αλλά τι γίνεται με το τρίτο σενάριο; 106 00:50:34,631 --> 00:50:35,760 Τι θα συμβεί αν το x ισούται με y; 107 00:50:35,760 --> 00:50:36,500 Δεν έγινε και κάτι. 108 00:50:36,500 --> 00:50:39,640 Πάρτε ένα κομμάτι του παζλ, βάλτε ένα άλλο εσωτερικό του 109 00:50:39,640 --> 00:50:45,759 για να δημιουργήσετε το σημασιολογικό ισοδύναμο του εάν, άλλο αν, else-- και τώρα 110 00:50:45,759 --> 00:50:47,300 έχουν τρεις τρόπο πιρούνι σας στο δρόμο. 111 00:50:47,300 --> 00:50:49,091 Και όπως θα δούμε, η κομμάτια του παζλ Scratch 112 00:50:49,091 --> 00:50:51,820 μπορεί να τεντωθεί και να αναπτυχθούν, έτσι ώστε να χώνω περισσότερα πράγματα σε αυτά. 113 00:50:51,820 --> 00:50:54,420 Δεν χρειάζεται να ταιριάζει πάντα στο προεπιλεγμένο μέγεθος του. 114 00:50:54,420 --> 00:50:56,690 >> Αυτό είναι κάτι που θα δείτε σύντομα ονομάζεται συστοιχία. 115 00:50:56,690 --> 00:51:00,880 Είναι σαν ένα list-- κάποιο τρόπο αποθήκευση πολλά κομμάτια των πληροφοριών 116 00:51:00,880 --> 00:51:02,886 σε μια μεταβλητή, όχι απλά ένας αριθμός. 117 00:51:02,886 --> 00:51:05,760 Αυτά θα δούμε έναν εκπρόσωπο της κάτι που ονομάζεται multi-threading. 118 00:51:05,760 --> 00:51:08,280 Στην πραγματικότητα, όλοι σας Mac και PC αυτές τις μέρες 119 00:51:08,280 --> 00:51:10,810 υποστηρίζει multi-threading, που σημαίνει ότι μπορείτε κυριολεκτικά 120 00:51:10,810 --> 00:51:12,390 κάνει πολλαπλές πράγματα ταυτόχρονα. 121 00:51:12,390 --> 00:51:15,390 Μπορείτε να έχετε το Microsoft Word σε η πρώτο πλάνο, που εργάζονται σε κάποιο δοκίμιο. 122 00:51:15,390 --> 00:51:17,160 Μπορεί να έχετε ένα πρόγραμμα περιήγησης στο άνοιγμα φόντο 123 00:51:17,160 --> 00:51:18,720 G-mail ή το Facebook ή τα παρόμοια. 124 00:51:18,720 --> 00:51:22,730 Ο υπολογιστής σας μπορεί να κάνει πολλαπλές πράγματα σήμερα, διότι είναι multi-threaded, 125 00:51:22,730 --> 00:51:26,390 και τα προγράμματα που είναι στο Ειδικότερα είναι επίσης πολυ-σπείρωμα. 126 00:51:26,390 --> 00:51:28,970 >> Υπάρχουν πράγματα που ονομάζεται γεγονότα όπως καλά στον κόσμο του Scratch, 127 00:51:28,970 --> 00:51:32,640 και στη συνέχεια να υπάρχει ένας τρόπος πάρα πολύ, να κάνει τα δικά μας κομμάτια έθιμο παζλ, αν τα πράγματα 128 00:51:32,640 --> 00:51:34,810 στην πραγματικότητα, δεν υπάρχουν εκ των προτέρων. 129 00:51:34,810 --> 00:51:38,260 Ας παρακινήσει αυτό ως εξής. 130 00:51:38,260 --> 00:51:40,580 Πριν από μερικά χρόνια, όταν ήμουν ανακαλύφθηκε για πρώτη φορά το μηδέν, 131 00:51:40,580 --> 00:51:43,530 όταν ήμουν στην πραγματικότητα ένα grad φοιτητής στο MIT, εμείς 132 00:51:43,530 --> 00:51:45,640 οι ίδιοι είχαν αναλάβει να κάνει την εργασία. 133 00:51:45,640 --> 00:51:47,614 Και εγώ implemented-- η οποία, εκ των υστέρων, 134 00:51:47,614 --> 00:51:50,780 Ήταν μια πολύ κακή απόφαση, γιατί είναι το πιο εξοργιστικό τραγούδι στον κόσμο 135 00:51:50,780 --> 00:51:53,321 για να ακούσετε για οκτώ ώρες ενώ εργαζόταν σε homework-- σας 136 00:51:53,321 --> 00:51:57,180 αλλά κάτι που είχα ονομάζεται Όσκαρ χρόνου, που είναι ίσως ένα γνωστό τραγούδι. 137 00:51:57,180 --> 00:51:59,820 >> CS50s δική Ιορδανία Hayashi, ένα από τα περισσότερα ανώτερα μέλη του προσωπικού μας, 138 00:51:59,820 --> 00:52:03,920 έχει αναβαθμιστεί για το 2015 και Τώρα το 2016, δεδομένου ότι πίσω στην ημέρα, 139 00:52:03,920 --> 00:52:06,610 Είχα πάντα ακριβώς πρόκειται σε δοχείο απορριμμάτων Oscar. 140 00:52:06,610 --> 00:52:09,320 Τώρα στηρίζουμε την ανακύκλωση και την κομποστοποίηση. 141 00:52:09,320 --> 00:52:12,050 >> Αλλά για να ζωγραφίσει την εικόνα για το τι μπορούμε να κάνουμε εδώ 142 00:52:12,050 --> 00:52:14,130 και να παρακινήσει ορισμένες από τις Τα παραδείγματα χαμηλότερο επίπεδο, 143 00:52:14,130 --> 00:52:16,400 θα μπορούσαμε να πάρετε ένα άλλο εθελοντών σε μόλις έρθουν τα πάνω 144 00:52:16,400 --> 00:52:18,331 και να παίξει το πρώτο μου εργασία για το σπίτι ποτέ; 145 00:52:18,331 --> 00:52:18,830 Έλα επάνω. 146 00:52:18,830 --> 00:52:19,250 Ποιο είναι το όνομά σου? 147 00:52:19,250 --> 00:52:20,030 >> HENRY: Henry. 148 00:52:20,030 --> 00:52:22,660 >> DAVID Malan: Χένρι, έλα επάνω. 149 00:52:22,660 --> 00:52:24,190 Έλα επάνω. 150 00:52:24,190 --> 00:52:27,070 Το κεφάλι ή τον άλλο τρόπο, και θα δείτε σε λίγο, 151 00:52:27,070 --> 00:52:29,870 Πάω να πάει μπροστά και να χτυπήσει το πράσινη σημαία στην πάνω δεξιά πλευρά 152 00:52:29,870 --> 00:52:31,100 γωνία, πράγμα που σημαίνει να πάει. 153 00:52:31,100 --> 00:52:33,320 Το εικονίδιο με το σύμβολο μικρή στάση πρόκειται να πω στάση, 154 00:52:33,320 --> 00:52:35,490 και ότι όταν ξεκινάτε και να σταματήσει το πρόγραμμα. 155 00:52:35,490 --> 00:52:36,450 Χάρηκα για τη γνωριμία. 156 00:52:36,450 --> 00:52:36,950 Εντάξει. 157 00:52:36,950 --> 00:52:39,100 Έτσι θα πάμε για να δείτε τις οδηγίες στην οθόνη ακριβώς σε μια στιγμή. 158 00:52:39,100 --> 00:52:41,450 Και μόνο από αυτό το παιχνίδι για μερικές seconds-- πιστέψτε με, 159 00:52:41,450 --> 00:52:43,670 εμείς δεν πρόκειται να θέλουν να παίξουν σε όλη τη διαδρομή προς το end-- θα σας 160 00:52:43,670 --> 00:52:45,470 να πάρετε μια αίσθηση του τι κάνει το πρόγραμμα. 161 00:52:45,470 --> 00:52:49,170 Και περισσότερο από ό, τι ακριβώς επικεντρωθεί σε Henry είναι καλό ή κακό σε αυτό το παιχνίδι, εστίαση 162 00:52:49,170 --> 00:52:52,600 και πώς θα εφαρμοστεί από εμένα αρχικά και στη συνέχεια με την Ιορδανία. 163 00:52:52,600 --> 00:52:54,640 Με άλλα λόγια, πού είναι οι μεταβλητές; 164 00:52:54,640 --> 00:52:55,520 Πού είναι οι βρόχοι; 165 00:52:55,520 --> 00:52:56,520 Πού είναι οι λειτουργίες; 166 00:52:56,520 --> 00:53:00,700 Και θα δούμε αν δεν βλέπουμε εκείνοι κάτω από την κουκούλα. 167 00:53:00,700 --> 00:53:03,660 >> Απλά κάντε κλικ και σύρετε τα σκουπίδια στον κατάλληλο κάδο. 168 00:53:03,660 --> 00:54:02,100 >> [ΜΟΥΣΙΚΗ Playing] 169 00:54:02,100 --> 00:54:02,600 Εντάξει. 170 00:54:02,600 --> 00:54:03,160 Αυτό είναι πολύ καλό. 171 00:54:03,160 --> 00:54:04,286 Γιατί δεν μπορούμε να σταματήσουμε εκεί. 172 00:54:04,286 --> 00:54:04,786 Ευχαριστώ. 173 00:54:04,786 --> 00:54:05,830 Συγχαρητήρια σε Henry. 174 00:54:05,830 --> 00:54:07,002 Ευχαριστώ. 175 00:54:07,002 --> 00:54:10,690 >> [ΧΕΙΡΟΚΡΟΤΉΜΑΤΑ] 176 00:54:10,690 --> 00:54:12,450 >> Απλά φανταστείτε τον εντοπισμό σφαλμάτων του εν λόγω προγράμματος. 177 00:54:12,450 --> 00:54:15,880 Εάν υπάρχει ένα πρόβλημα δύο λεπτά στο song-- αλλά έτσι 178 00:54:15,880 --> 00:54:17,430 τι συμβαίνει εδώ πραγματικά; 179 00:54:17,430 --> 00:54:20,900 Τόσο περίπλοκο όπως αυτό θα μπορούσε αρχίσει να φαίνεται για να πάρει την πάροδο του χρόνου, 180 00:54:20,900 --> 00:54:22,910 πράγματι όλο και περισσότερο τα πράγματα άρχισαν να πέφτουν, 181 00:54:22,910 --> 00:54:25,370 τι είναι ενδιαφέρον για το Αυτό το είδος της example-- 182 00:54:25,370 --> 00:54:27,270 και θα δούμε μερικά others-- είναι ότι αν 183 00:54:27,270 --> 00:54:30,416 κοιτάξουμε το παρελθόν της πολυπλοκότητας ή η πολυπλοκότητα του παιχνιδιού, 184 00:54:30,416 --> 00:54:33,040 υπάρχει μια πολύ απλή κατασκευή μπλοκ που play-- όλα εκ των οποίων, 185 00:54:33,040 --> 00:54:35,840 αν τα απόσταξη σε εκείνους δομικά στοιχεία, είναι πολύ προσιτές 186 00:54:35,840 --> 00:54:37,401 και εφαρμόσιμα για τον εαυτό τους. 187 00:54:37,401 --> 00:54:39,150 Για παράδειγμα, είναι κάποια στιγμή, αλλά είμαι 188 00:54:39,150 --> 00:54:42,900 αρκετά σίγουρος τι αρχικά έκανα όταν καθιστώντας αυτό το παιχνίδι για πρώτη φορά 189 00:54:42,900 --> 00:54:44,787 ήταν απολύτως σαν χρονοτριβήσει. 190 00:54:44,787 --> 00:54:47,120 Δεν είχα επικεντρωθεί σε όλα τα σχετικά με την λογική ή τα κομμάτια του παζλ, 191 00:54:47,120 --> 00:54:50,810 Έχω επικεντρώθηκε στα γραφικά και το εύρημα η θέση του δρόμου και το δοχείο απορριμμάτων 192 00:54:50,810 --> 00:54:51,540 και όλα αυτά. 193 00:54:51,540 --> 00:54:53,456 Αλλά αυτά ήταν απαραίτητα συστατικά με την πρώτη. 194 00:54:53,456 --> 00:54:57,220 Και μόλις τελείωσα χρονοτριβούν και περί το ευρύτερο πλαίσιο, 195 00:54:57,220 --> 00:55:00,337 Αποφάσισα, επιτρέψτε μου να κάνω ένα κομμάτι των σκουπιδιών πέφτουν από τον ουρανό. 196 00:55:00,337 --> 00:55:02,170 Και θα δούμε Scratch υποστηρίζει πράγματα που ονομάζεται 197 00:55:02,170 --> 00:55:06,386 sprites-- χαρακτήρες που μπορούν να έχουν διαφορετικά κοστούμια για έτσι ώστε να 198 00:55:06,386 --> 00:55:07,010 φαίνονται διαφορετικά. 199 00:55:07,010 --> 00:55:09,660 >> Και έτσι έβαλα ένα κάδο απορριμμάτων κοστούμι για ένα τέτοιο sprite. 200 00:55:09,660 --> 00:55:12,007 Και εγώ απλά χρειάζεται να πέφτουν από τον ουρανό. 201 00:55:12,007 --> 00:55:14,590 Και έτσι αποδεικνύεται, Ξυστό, όπως και οι περισσότερες γλώσσες προγραμματισμού, 202 00:55:14,590 --> 00:55:18,099 υποστηρίζει τυχαίων αριθμών ή τεχνικά pseudocode τυχαίων αριθμών, 203 00:55:18,099 --> 00:55:20,390 έτσι ώστε με μεταφορά και ρίψη ορισμένα κομμάτια του παζλ, 204 00:55:20,390 --> 00:55:22,890 Ήμουν σε θέση να έχουν τα σκουπίδια προέρχονται από την αριστερή από την πρώτη. 205 00:55:22,890 --> 00:55:25,580 Και στη συνέχεια την επόμενη φορά που έπεσε, από το δικαίωμα και, στη συνέχεια, από τη μέση. 206 00:55:25,580 --> 00:55:28,060 Και όλα αυτά το παιχνίδι δεν ήταν μόνο έχουν σκουπίδια πέφτουν από τον ουρανό. 207 00:55:28,060 --> 00:55:29,770 Δεν θα μπορούσε να δείξει σε αυτό ή κάντε κλικ σε αυτό. 208 00:55:29,770 --> 00:55:31,103 Δεν θα μπορούσε να ανοίξει τον κάδο απορριμμάτων. 209 00:55:31,103 --> 00:55:32,160 Δεν μπορούσα να κάνω τίποτα. 210 00:55:32,160 --> 00:55:34,450 Αλλά ήταν ένα βήμα μωρό προς τον τελικό όραμά μου. 211 00:55:34,450 --> 00:55:36,720 >> Και μετά από αυτό, εγώ πραγματικά εφαρμοστεί κάποιο είδος 212 00:55:36,720 --> 00:55:41,230 της ανίχνευσης, έτσι ώστε αν έκανε κλικ και σύρετε στο κομμάτι των σκουπιδιών 213 00:55:41,230 --> 00:55:44,350 πάνω από τον κάδο απορριμμάτων, του Oscar καπάκι θα ανοίξει και να κλείσει. 214 00:55:44,350 --> 00:55:47,650 Τίποτα δεν θα μπορούσε να συμβεί στον κάδο απορριμμάτων, αλλά τουλάχιστον το καπάκι θα ανοίξει και να κλείσει. 215 00:55:47,650 --> 00:55:49,642 Έτσι, στη συνέχεια, ελέγξτε, βήμα δύο από τις δύο. 216 00:55:49,642 --> 00:55:52,100 Και αυτό είναι ό, τι πρόκειται να είναι κλειδί, τόσο το πρόβλημα που μηδέν 217 00:55:52,100 --> 00:55:55,970 και στον προγραμματισμό γενικότερα, είναι να να λάβει αυτά τα πολύ σκόπιμη βήματα του μωρού. 218 00:55:55,970 --> 00:55:59,390 Γιατί όχι μόνο δεν θα σας επιτρέψει να αισθάνομαι ειλικρινά καταφέρει πολλά περισσότερα 219 00:55:59,390 --> 00:56:01,250 quickly-- είναι η χειρότερο πράγμα στον κόσμο 220 00:56:01,250 --> 00:56:06,149 να προσπαθήσει να εφαρμόσει το σύνολο των Oscar Time, Στη συνέχεια ώρες αργότερα έπληξε την πράσινη σημαία, 221 00:56:06,149 --> 00:56:08,440 και τίποτα δεν λειτουργεί όπως αναμένεται γιατί όπου μπορείτε να κάνετε ακόμα και 222 00:56:08,440 --> 00:56:11,150 αρχίζουν να debug ή να αντιμετωπίσετε αυτό το πρόγραμμα; 223 00:56:11,150 --> 00:56:12,470 Είναι απλά συντριπτική. 224 00:56:12,470 --> 00:56:16,792 >> Και έτσι πραγματικά αγκαλιάζει αυτή την ιδέα της λήψης και πάλι steps-- βήματα του μωρού 225 00:56:16,792 --> 00:56:19,000 και again-- δημιουργία κάτι που είναι, στο τέλος, 226 00:56:19,000 --> 00:56:23,672 Πραγματικά εντυπωσιακό και περίπλοκο, αλλά σε πρώτη φάση, δεν είναι σχεδόν τόσο πολύ έτσι. 227 00:56:23,672 --> 00:56:24,630 Στην πραγματικότητα, ας το κάνουμε αυτό. 228 00:56:24,630 --> 00:56:28,989 Επιτρέψτε μου να πάει μπροστά and-- ίδια Scratch υπάρχει στο διαδίκτυο σε Scratch.MIT.edu, 229 00:56:28,989 --> 00:56:30,780 και θα σας πει ως πολύ και πάλι το πρόβλημα 230 00:56:30,780 --> 00:56:34,200 που το μηδέν, η προδιαγραφή για η οποία είναι ήδη στην ιστοσελίδα CS50 του. 231 00:56:34,200 --> 00:56:35,725 >> Αλλά αυτό είναι ό, τι Ξύστε το ίδιο είναι. 232 00:56:35,725 --> 00:56:38,210 Και υπάρχει πραγματικά μόνο τρεις βασικούς τομείς. 233 00:56:38,210 --> 00:56:40,980 Στο πάνω αριστερό μέρος υπάρχει είναι η λεγόμενη φάση. 234 00:56:40,980 --> 00:56:41,810 Αυτό είναι το μηδέν. 235 00:56:41,810 --> 00:56:43,710 Η προεπιλογή κοστούμι είναι μια γάτα. 236 00:56:43,710 --> 00:56:46,950 Και αυτό είναι το ορθογώνιο κόσμο σε το οποίο μπορείτε να move-- πάνω, κάτω, αριστερά, 237 00:56:46,950 --> 00:56:48,130 δεξιά και κάποια άλλα πράγματα. 238 00:56:48,130 --> 00:56:51,839 Στη μέση είναι εδώ κατηγορίες μας ή παλέτες μας κομμάτια του παζλ, 239 00:56:51,839 --> 00:56:53,630 και διαφορετικά χρώματα σημαίνει διαφορετικά πράγματα. 240 00:56:53,630 --> 00:56:56,520 Και αν σακί γύρω, θα δείτε τα πράγματα όπως βρόχους και συνθήκες 241 00:56:56,520 --> 00:56:58,160 και μεταβλητές και άλλα συστατικά. 242 00:56:58,160 --> 00:57:00,060 >> Και τότε εδώ είναι η περιοχή σενάρια. 243 00:57:00,060 --> 00:57:03,020 Αυτό είναι όπου μπορώ να drag and drop αυτά τα κομμάτια του παζλ για να κάνουμε τα πράγματα. 244 00:57:03,020 --> 00:57:04,690 Έτσι, ας κάνουμε ένα τέτοιο πράγμα. 245 00:57:04,690 --> 00:57:06,630 Επιτρέψτε μου να πάει μπροστά and-- και ξέρω πού είναι. 246 00:57:06,630 --> 00:57:10,110 Έτσι, Πάω αμέσως να κάνετε κλικ στο όπου ξέρω ότι τα πράγματα είναι έτοιμα να είναι, 247 00:57:10,110 --> 00:57:13,140 αλλά δείχνοντας και κάνοντας κλικ και σπρώχνει γύρω είναι αναπόφευκτες. 248 00:57:13,140 --> 00:57:15,320 Έτσι, όταν κάνετε κλικ πράσινη σημαία, Τι θέλω να κάνω; 249 00:57:15,320 --> 00:57:17,100 Πάω να το κάνουμε αυτό. 250 00:57:17,100 --> 00:57:20,699 Πάω να μεταφέρετε αυτό το μωβ παζλ κομμάτι, να πω γεια για δύο δευτερόλεπτα, 251 00:57:20,699 --> 00:57:21,490 και επιτρέψτε μου να μεγεθύνετε. 252 00:57:21,490 --> 00:57:23,865 >> Και Πάω να αλλάξει αυτό να είναι αυτό που θέλω είναι να μαζεύουν 253 00:57:23,865 --> 00:57:26,471 γεια κόσμο για δύο δευτερόλεπτα είναι μια χαρά. 254 00:57:26,471 --> 00:57:28,970 Τώρα, είμαι πρόκειται να κάνετε κλικ στο πράσινη σημαία, ή αν θέλω πραγματικά, 255 00:57:28,970 --> 00:57:31,820 Μπορώ να πλήρη το οθόνη και στη συνέχεια να επανέλθει. 256 00:57:31,820 --> 00:57:34,060 Θα κρατήσει μόνο όλα σε ένα παράθυρο. 257 00:57:34,060 --> 00:57:36,141 Πράσινο flag-- κόσμο γεια. 258 00:57:36,141 --> 00:57:36,640 Εντάξει. 259 00:57:36,640 --> 00:57:38,789 Δεν είναι όλα αυτά ενδιαφέροντα. 260 00:57:38,789 --> 00:57:40,080 Επιτρέψτε μου λοιπόν να προχωρήσει και να το κάνουμε αυτό. 261 00:57:40,080 --> 00:57:41,038 Επιτρέψτε μου να προσπαθήσω άλλο. 262 00:57:41,038 --> 00:57:44,740 Όταν πράσινη σημαία clicked-- ας να κάνουμε κάτι σαν ήχος. 263 00:57:44,740 --> 00:57:46,880 Και παρατηρήσετε ότι από το πλαίσιο για την ελεύθερη παίρνετε 264 00:57:46,880 --> 00:57:49,910 μια καλή γάτα, όπως είναι η προεπιλεγμένη sprite. 265 00:57:49,910 --> 00:57:52,380 Έτσι τώρα επιτρέψτε μου να πάει μπροστά και να έπληξε την πράσινη σημαία τώρα. 266 00:57:52,380 --> 00:57:53,224 >> [Meowing] 267 00:57:53,224 --> 00:57:54,490 >> Aw. 268 00:57:54,490 --> 00:57:55,370 Αυτό είναι αξιολάτρευτο. 269 00:57:55,370 --> 00:57:57,040 Είμαι προγραμματισμού. 270 00:57:57,040 --> 00:57:58,550 Έτσι, ό, τι έχω κάνει; 271 00:57:58,550 --> 00:58:00,430 Αυτό είναι το ισοδύναμο ενός προγράμματος. 272 00:58:00,430 --> 00:58:01,600 Είναι προφανώς εξαιρετικά απλό. 273 00:58:01,600 --> 00:58:05,300 Δεν λαμβάνει πραγματικά όλα αυτά πολύ προσπάθεια και MIT έκανε την περισσότερη δουλειά, 274 00:58:05,300 --> 00:58:07,890 αλλά έχω ονομάζεται λειτουργία. 275 00:58:07,890 --> 00:58:08,940 Έχω χρησιμοποιήσει μια λειτουργία. 276 00:58:08,940 --> 00:58:12,480 Έχω κάνει κάποια ενέργεια, χρησιμοποιώντας μόνο ότι ένα μοβ κομμάτι του παζλ. 277 00:58:12,480 --> 00:58:15,960 >> Λοιπόν, αν θέλω να κάνω τρεις meows στη σειρά; 278 00:58:15,960 --> 00:58:18,570 Επιτρέψτε μου να προχωρήσει και να κάνει δύο και τρία. 279 00:58:18,570 --> 00:58:20,910 Και παρατηρήστε ότι όταν αιωρείται κοντά ένα κομμάτι του παζλ, 280 00:58:20,910 --> 00:58:22,970 εμφανίζεται μια μικρή λευκή γραμμή είδος μαγνητικά, 281 00:58:22,970 --> 00:58:25,190 και θα snap μαζί όταν θα αφήσει να πάει. 282 00:58:25,190 --> 00:58:26,600 Ας δούμε τι συμβαίνει εδώ. 283 00:58:26,600 --> 00:58:27,920 >> [Meowing] 284 00:58:27,920 --> 00:58:32,390 285 00:58:32,390 --> 00:58:34,510 >> Υπάρχει ένα bug. 286 00:58:34,510 --> 00:58:35,650 Ακούω μόνο ένα νιαούρισμα. 287 00:58:35,650 --> 00:58:37,440 Γιατί μπορεί να συμβαίνει αυτό; 288 00:58:37,440 --> 00:58:39,001 Ναι; 289 00:58:39,001 --> 00:58:39,500 Ναι. 290 00:58:39,500 --> 00:58:41,650 Εμείς δεν το ακούσω πραγματικά, αλλά αυτό είναι καλή διαίσθηση. 291 00:58:41,650 --> 00:58:43,400 Είναι όλοι παίζουν ταυτόχρονα. 292 00:58:43,400 --> 00:58:44,000 Γιατί; 293 00:58:44,000 --> 00:58:46,587 Λοιπόν, ο υπολογιστής είναι ακριβώς πρόκειται να κάνει ό, τι μπορείτε να πείτε για να το κάνει. 294 00:58:46,587 --> 00:58:48,670 Έτσι, αν σας πω, το παιχνίδι του ήχου, αναπαραγωγή ήχου, αναπαραγωγή ήχου, 295 00:58:48,670 --> 00:58:52,887 αλλά δεν το πείτε για να παίξουν μέχρι τελειώσετε, να παίξουν μέχρι να τελειώσετε, 296 00:58:52,887 --> 00:58:54,970 πρόκειται να φυσήξει μέσα το πρόγραμμα πολύ γρήγορα 297 00:58:54,970 --> 00:58:56,830 και μπορώ μόνο ό, τι το πω για να το κάνουμε. 298 00:58:56,830 --> 00:58:59,040 >> Γι 'αυτό πρέπει πραγματικά να διορθώσετε αυτό σε μια-δυο τρόπους. 299 00:58:59,040 --> 00:59:00,623 Θα μπορούσα απλά να το κάνετε αυτό, να απαλλαγούμε από αυτό. 300 00:59:00,623 --> 00:59:04,180 Επιτρέψτε μου να προσπαθήσω αυτό το άλλο παζλ piece-- αναπαραγωγή ήχου νιαούρισμα μέχρι να γίνει, 301 00:59:04,180 --> 00:59:07,072 και στη συνέχεια σύρετε τρεις αυτά και κάντε κλικ στο κουμπί Play. 302 00:59:07,072 --> 00:59:09,430 >> [Meowing] 303 00:59:09,430 --> 00:59:13,350 >> Δεν είναι πραγματικά very-- Ευχαριστώ you-- πολύ φυσικό. 304 00:59:13,350 --> 00:59:16,590 Γιατί λοιπόν να μην αφήσετε I-- να πάω για τον έλεγχο εδώ. 305 00:59:16,590 --> 00:59:17,090 Όμορφη. 306 00:59:17,090 --> 00:59:22,230 Περιμένετε ένα δευτερόλεπτο, και τώρα επιτρέψτε μου να πάω πίσω σε ήχους, και αναπαραγωγή ήχου μέχρι να γίνει, 307 00:59:22,230 --> 00:59:24,620 και, στη συνέχεια, επιτρέψτε μου να πάρει περιμένετε ένα δευτερόλεπτο. 308 00:59:24,620 --> 00:59:28,692 Και τότε επιτρέψτε μου να πάει και να πάρει ένα περισσότερο ήχο, και εδώ πηγαίνουμε. 309 00:59:28,692 --> 00:59:31,350 >> [Meowing] 310 00:59:31,350 --> 00:59:35,930 >> Λίγο πιο φυσικό, αλλά αυτό δεν είναι πολύ αποτελεσματική. 311 00:59:35,930 --> 00:59:39,830 Σαν να ήμουν βαρεθείτε, όλοι εν συντομία, κάνοντας κλικ εμπρός και πίσω 312 00:59:39,830 --> 00:59:42,724 και πραγματικά αντιγραφή work-- μου λίγο πολύ αντιγραφή και επικόλληση. 313 00:59:42,724 --> 00:59:44,640 Πράγματι, αν μπορώ να ελέγξω κλικ ή δεξί κλικ σε 314 00:59:44,640 --> 00:59:46,500 Θα μπορούσα να είχα μόλις αντιγραφεί και επικολληθεί. 315 00:59:46,500 --> 00:59:49,870 Ποια θα ήταν η καλύτερη κατασκευή για να χρησιμοποιήσετε; 316 00:59:49,870 --> 00:59:51,090 Τι ιδέα από πριν; 317 00:59:51,090 --> 00:59:51,990 >> Ναι, έτσι ένας βρόχος. 318 00:59:51,990 --> 00:59:54,580 Και στην πραγματικότητα, αν έσπρωξε γύρω, μπορούμε να βρούμε ακριβώς αυτό. 319 00:59:54,580 --> 00:59:57,730 Επιτρέψτε μου να πάω σε γεγονότα ή μάλλον Ελέγχου. 320 00:59:57,730 --> 00:59:59,650 Έτσι repeat-- εγώ δεν κάνω θέλω να είναι 10 φορές. 321 00:59:59,650 --> 01:00:01,370 Αυτό πρόκειται να πάρει ενοχλητικό γρήγορα. 322 01:00:01,370 --> 01:00:03,380 Αλλά θα επαναλάβω τρεις φορές. 323 01:00:03,380 --> 01:00:06,355 Επιτρέψτε μου να πάω πίσω να ακούγεται και αναπαραγωγή του ήχου μέχρι να γίνει. 324 01:00:06,355 --> 01:00:08,480 Επιτρέψτε μου να πάω πίσω σε Ελέγχου και απλά περιμένετε ένα δευτερόλεπτο. 325 01:00:08,480 --> 01:00:10,271 Και ειδοποίηση, ίσως νομίζω ότι δεν ταιριάζει, 326 01:00:10,271 --> 01:00:13,520 αλλά και πάλι, αν μαγνητικά μπορείτε να το αφήσετε θραύση στη θέση του, θα αυξηθεί για να γεμίσει. 327 01:00:13,520 --> 01:00:14,971 Τι θα παίξετε τώρα; 328 01:00:14,971 --> 01:00:18,500 >> [Meowing] 329 01:00:18,500 --> 01:00:19,000 ΕΝΤΆΞΕΙ. 330 01:00:19,000 --> 01:00:19,660 Όμορφη. 331 01:00:19,660 --> 01:00:22,540 Και αυτό είναι ό, τι θα μπορούσε να ονομάζεται ένα πρόγραμμα που είναι επίσης σωστό. 332 01:00:22,540 --> 01:00:27,590 Είναι meowed τρεις φορές αρκετά φυσικά, αλλά είναι καλύτερα σχεδιασμένη. 333 01:00:27,590 --> 01:00:29,580 Είμαι χρησιμοποιώντας λιγότερο πλεονασμό. 334 01:00:29,580 --> 01:00:30,970 Δεν είχα αντιγραφή και επικόλληση τίποτα. 335 01:00:30,970 --> 01:00:32,470 Θα χρησιμοποιηθεί μόνο μια καλύτερη ιδέα. 336 01:00:32,470 --> 01:00:35,340 >> Τώρα, αυτό δεν είναι ακόμα όλα ότι ενδιαφέρον με το Scratch δεν κάνει 337 01:00:35,340 --> 01:00:35,930 οτιδήποτε. 338 01:00:35,930 --> 01:00:37,388 Έτσι, ας κάνουμε κάτι άλλο αντ 'αυτού. 339 01:00:37,388 --> 01:00:38,670 Ας κάνουμε κάτι για πάντα. 340 01:00:38,670 --> 01:00:39,420 Και ξέρετε τι; 341 01:00:39,420 --> 01:00:40,470 Κίνηση φαίνεται ενδιαφέρουσα. 342 01:00:40,470 --> 01:00:45,760 Ας τον έχουν κινηθεί 10 βήματα και να χτυπήσει το παιχνίδι τώρα. 343 01:00:45,760 --> 01:00:46,570 >> ΕΝΤΆΞΕΙ. 344 01:00:46,570 --> 01:00:49,300 Λοιπόν, τι μπορούμε για το είδος της αντίστασης τον πίσω, και αυτός είναι ακόμα 345 01:00:49,300 --> 01:00:51,250 τρέχει γιατί κάνει αυτό για πάντα. 346 01:00:51,250 --> 01:00:53,150 Έτσι, ο βρόχος κάνει τι λέει να κάνει, 347 01:00:53,150 --> 01:00:54,650 αλλά αυτό δεν είναι όλα αυτά ενδιαφέρον. 348 01:00:54,650 --> 01:00:55,310 Ας το κάνουμε. 349 01:00:55,310 --> 01:00:59,870 Επιτρέψτε μου να προσθέσω ένα μπλοκ ελέγχου, και να χρησιμοποιήσετε ένα από τις προϋποθέσεις αυτές για πρώτη φορά. 350 01:00:59,870 --> 01:01:03,119 >> Γι 'αυτό πρόκειται να κινηθεί 10 steps-- 10 τελείες, 10 pixels στο screen-- 351 01:01:03,119 --> 01:01:04,660 Στη συνέχεια πρόκειται να θέσω το ερώτημα. 352 01:01:04,660 --> 01:01:09,340 Αν κάτι είναι αλήθεια, τότε κάνουμε κάτι μέσα σε αυτό το μπλοκ. 353 01:01:09,340 --> 01:01:13,060 Έτσι αποδεικνύεται ανίχνευσης έχει ένα ολόκληρο δέσμη των Boolean expressions-- 354 01:01:13,060 --> 01:01:16,580 ερωτήσεις του ναι όχι ή αλήθεια ψευδή form-- επιτρέψτε μου να το κάνουμε αυτό. 355 01:01:16,580 --> 01:01:19,260 >> Αν touching-- και έπειτα υπάρχει αυτό το μικρό drop down μενού. 356 01:01:19,260 --> 01:01:20,410 Μπορώ να το παραμετροποιήσετε. 357 01:01:20,410 --> 01:01:23,010 Αν αγγίξετε το edge-- ας να κάνει κάτι τέτοιο. 358 01:01:23,010 --> 01:01:27,310 Έτσι, αν αγγίξετε edge-- επιτρέψτε μου να πάω πίσω στην κίνηση. 359 01:01:27,310 --> 01:01:32,281 Και γιατί δεν μπορούμε απλά γυρίσει 180 μοίρες; 360 01:01:32,281 --> 01:01:32,780 Εντάξει. 361 01:01:32,780 --> 01:01:35,070 Έτσι για πάντα, κινούνται 10 βήματα. 362 01:01:35,070 --> 01:01:37,670 Αν αγγίξετε το ακμή, γυρίστε 180 μοίρες. 363 01:01:37,670 --> 01:01:39,720 Και αυτό δεν είναι το τέλος του προγράμματος επειδή είστε σε μια πάντα μπλοκ, 364 01:01:39,720 --> 01:01:42,053 γι 'αυτό πρόκειται να πάει ξανά και ξανά και ξανά και ξανά. 365 01:01:42,053 --> 01:01:43,980 Ας δούμε τι θα συμβεί. 366 01:01:43,980 --> 01:01:44,785 ΕΝΤΆΞΕΙ. 367 01:01:44,785 --> 01:01:48,270 Ένα μικρό αμαξάκι, αλλά το είδος της δροσερό. 368 01:01:48,270 --> 01:01:51,710 >> Και μπορούμε να προσθέσουμε σε αυτό κάποια ανόητα πράγματα ότι δεν είναι όλα ότι πνευματικά 369 01:01:51,710 --> 01:01:52,270 ενδιαφέρων. 370 01:01:52,270 --> 01:01:57,210 Αλλά αν έχουμε χτυπήσει αυτό το μικρό μικρόφωνο button-- ωχ. 371 01:01:57,210 --> 01:01:58,480 Επιτρέψτε μου να καθαρίσει αυτό επάνω. 372 01:01:58,480 --> 01:02:01,540 Επιτρέψτε μου να ενισχύσει αυτό ως θα έλεγαν στην τηλεόραση. 373 01:02:01,540 --> 01:02:05,400 Καθαρίστε ότι μέχρι, Αποθήκευση, και τώρα πάει μέχρι σενάρια. 374 01:02:05,400 --> 01:02:07,500 >> Και τώρα, επιτρέψτε μου να πάω να ακούγεται. 375 01:02:07,500 --> 01:02:09,002 Επιτρέψτε μου να δώσω ένα όνομα. 376 01:02:09,002 --> 01:02:12,440 Θα καλέσω αυτό το ωχ. 377 01:02:12,440 --> 01:02:13,840 Και τώρα αναπαραγωγή ήχου ωχ. 378 01:02:13,840 --> 01:02:16,520 Παρατηρήστε ότι εμφανίζεται στο λίγο drop down μενού. 379 01:02:16,520 --> 01:02:17,612 Ας δούμε. 380 01:02:17,612 --> 01:02:20,444 >> [ΩΧ] 381 01:02:20,444 --> 01:02:24,377 >> [ΓΈΛΙΟ] 382 01:02:24,377 --> 01:02:25,835 Αλλά μπορούμε να αλλάξουμε t του σχετικά με τη μύγα. 383 01:02:25,835 --> 01:02:28,106 Μπορούμε να είμαστε δύο φορές πιο ενοχλητικό. 384 01:02:28,106 --> 01:02:31,760 >> [ΩΧ] 385 01:02:31,760 --> 01:02:35,332 >> Ή αν το κάνει, όπως 1.000 βήματα σε μια time-- 386 01:02:35,332 --> 01:02:39,900 387 01:02:39,900 --> 01:02:40,670 >> ΕΝΤΆΞΕΙ. 388 01:02:40,670 --> 01:02:42,295 Έτσι θα πάμε να αφήσει ότι ένας και μόνο. 389 01:02:42,295 --> 01:02:45,290 Έτσι και πάλι, την οικοδόμηση blocks-- μου ξεκίνησε με κάτι εξαιρετικά απλό, 390 01:02:45,290 --> 01:02:47,930 και στη συνέχεια θα προστεθεί ένα χαρακτηριστικό, προστεθεί ένα χαρακτηριστικό, πρόσθεσε ένα χαρακτηριστικό. 391 01:02:47,930 --> 01:02:50,721 Και εγώ δεν χρειάζεται πλέον να ανησυχείτε για πώς το πρώτο από αυτά τα χαρακτηριστικά 392 01:02:50,721 --> 01:02:53,690 υλοποιήθηκε ως συνεχίζω να στρώμα τα πράγματα στην κορυφή. 393 01:02:53,690 --> 01:02:55,430 Έτσι, στην πραγματικότητα, επιτρέψτε μου να κάνω ένα άλλο εδώ. 394 01:02:55,430 --> 01:03:00,580 Επιτρέψτε μου να προχωρήσει και να ανοίξετε ένα αρχείο που Έφερα εκ των προτέρων, που ονομάζεται πρόβατα. 395 01:03:00,580 --> 01:03:03,970 >> Γι 'αυτό έχει μια ελαφρώς διαφορετική χαρακτήρα που μοιάζει με αυτό. 396 01:03:03,970 --> 01:03:07,370 Και επιτρέψτε μου να δούμε αν δεν μπορώ κάνει κάτι χρησιμοποιώντας ένα μετρητή 397 01:03:07,370 --> 01:03:09,310 σε αυτό case-- μια λεγόμενη μεταβλητή. 398 01:03:09,310 --> 01:03:15,540 Πάω να πάει μπροστά και κάτω από Events-- επιτρέψτε μου να πάρει μια πράσινη σημαία κλικ. 399 01:03:15,540 --> 01:03:19,030 Στη συνέχεια, επιτρέψτε μου να πάω σε δεδομένα, τα οποία γνωρίζω από παίζοντας ακριβώς γύρω από πριν, 400 01:03:19,030 --> 01:03:20,214 είναι όπου οι μεταβλητές είναι. 401 01:03:20,214 --> 01:03:21,880 Και Πάω να πάει μπροστά και να σύρετε αυτό. 402 01:03:21,880 --> 01:03:25,144 >> Έτσι, μια μεταβλητή που ονομάζεται μετρητή, και Πάω να γίνει η προετοιμασία στο μηδέν. 403 01:03:25,144 --> 01:03:27,560 Μπορώ να την αποκαλούν anything-- χ ή y ή z-- αλλά στον προγραμματισμό, 404 01:03:27,560 --> 01:03:30,410 ζητώντας κάτι σε ένα σημασιολογικά χρήσιμο τρόπο, όπως και σε αντίθεση, 405 01:03:30,410 --> 01:03:34,540 ότι περιγράφει αυτό που είναι, είναι ένα πολύ πιο εύκολο να διαβάσει τον κωδικό σας αργότερα. 406 01:03:34,540 --> 01:03:37,460 Επιτρέψτε μου να πάμε μπροστά και να πάρει μια για πάντα μπλοκάρει εδώ. 407 01:03:37,460 --> 01:03:41,289 Και επιτρέψτε μου να πάω να τα βλέμματα σελίδα και να κάνουμε ένα μπλοκ Say. 408 01:03:41,289 --> 01:03:44,330 Αλλά τι είναι δροσερό για μεταβλητών είναι I Δεν χρειάζεται να απλά πληκτρολογήστε σε κάτι 409 01:03:44,330 --> 01:03:47,850 όπως Hello World, το οποίο έχουμε ήδη κάνει, αντί να μπορώ να πάω να Δεδομένων 410 01:03:47,850 --> 01:03:50,690 και σύρετε μεταβλητή μου, ακόμη και Δεν αν το σχήμα δεν είναι αρκετά 411 01:03:50,690 --> 01:03:53,000 μοιάζει σαν να πρέπει να ταιριάζει, θα αυξηθεί για να γεμίσει. 412 01:03:53,000 --> 01:03:58,396 Και εγώ θα πω μόνο το μετρητή για ένα second-- spoiler-- ότι πρόκειται να μετρήσει. 413 01:03:58,396 --> 01:04:00,380 Θα το πω για ένα δευτερόλεπτο. 414 01:04:00,380 --> 01:04:02,840 Στη συνέχεια, Πάω να πάει και να πρέπει να περιμένει για ένα δευτερόλεπτο, 415 01:04:02,840 --> 01:04:04,650 οπότε δεν μετράνε πάρα πολύ γρήγορα. 416 01:04:04,650 --> 01:04:08,430 Και, στη συνέχεια, τέλος, να αλλάξει μετρητή από ένα-- με άλλα λόγια, 417 01:04:08,430 --> 01:04:13,520 αυξήσετε το μετρητή κατά ένα πρόσθετη αξία και να το κάνουμε αυτό για πάντα. 418 01:04:13,520 --> 01:04:16,129 >> Έτσι, τα πρόβατα πάρα πολύ, σαν ένα προγραμματιστής, μετράει από το 0. 419 01:04:16,129 --> 01:04:20,350 420 01:04:20,350 --> 01:04:23,740 Και αν περιμένουμε αρκετά μεγάλο χρονικό διάστημα, θα κάνει αυτό για πάντα. 421 01:04:23,740 --> 01:04:27,740 Αλλά αυτό δεν είναι ακριβώς αλήθεια, επειδή Στην πραγματικότητα, όπως θα ανακαλύψετε μέσα σε μία εβδομάδα, 422 01:04:27,740 --> 01:04:31,871 ακέραιοι και υπολογιστές γενικότερα, τεχνικά έχουν μόνο ένα finite-- καλά, 423 01:04:31,871 --> 01:04:33,829 μάλλον υπολογιστές, όταν αντιπροσωπεύουν ακέραιους αριθμούς, 424 01:04:33,829 --> 01:04:35,670 έχουν μόνο έναν πεπερασμένο αριθμό bits. 425 01:04:35,670 --> 01:04:37,860 Αυτοί οι λαμπτήρες εκεί μπορεί μόνο να μετρήσει τόσο υψηλά 426 01:04:37,860 --> 01:04:39,239 πριν είστε έξω από λαμπτήρες. 427 01:04:39,239 --> 01:04:41,590 Και ένας υπολογιστής πάρα πολύ, έχει μόνο τόση μνήμη, 428 01:04:41,590 --> 01:04:44,640 έχει μόνο τόσες πολλές τρανζίστορ, έτσι ώστε να μπορεί μόνο να υπολογίζει τόσο υψηλή. 429 01:04:44,640 --> 01:04:47,409 >> Έτσι αποδεικνύεται ότι τα πρόβατα, Νομίζω, μπορεί να υπολογίζει σε 2 δισεκατομμύρια 430 01:04:47,409 --> 01:04:48,409 ή κάτι πολύ μεγάλο. 431 01:04:48,409 --> 01:04:50,325 Γι 'αυτό και δεν πρόκειται να περιμένετε για να συμβεί αυτό. 432 01:04:50,325 --> 01:04:54,850 Αλλά τελικά μερικά bug θα συμβεί που μπορεί να έχουν κάποια πολύ πραγματικό κόσμο 433 01:04:54,850 --> 01:04:55,970 διακλαδώσεις. 434 01:04:55,970 --> 01:04:58,861 Αλλά πέρα ​​από τα πρόβατα, ότι απλά εισάγει μια μεταβλητή. 435 01:04:58,861 --> 01:05:01,110 Ας πάμε μπροστά και να ανοίξει κάτι που γίνεται εκ των προτέρων 436 01:05:01,110 --> 01:05:07,430 εδώ λέγεται Pet η Cat-- Pet την Cat εδώ. 437 01:05:07,430 --> 01:05:10,420 Και παρατηρήσετε εδώ είναι μερικά μπλοκ, αλλά όταν πράσινη σημαία 438 01:05:10,420 --> 01:05:12,474 κλικ, για πάντα να κάνει τα εξής. 439 01:05:12,474 --> 01:05:15,265 Αν αγγίξετε το ποντίκι pointer-- οπότε ο κέρσορας στην οθόνη, 440 01:05:15,265 --> 01:05:18,529 η arrow-- παιχνίδι νιαούρισμα ήχος και, στη συνέχεια, περιμένετε δύο δευτερόλεπτα. 441 01:05:18,529 --> 01:05:19,570 Και μόλις γίνει αυτό για πάντα. 442 01:05:19,570 --> 01:05:22,619 Απλά συνεχώς περιμένετε για να δούμε αν το pointer-- 443 01:05:22,619 --> 01:05:24,710 αν η γάτα είναι σε επαφή με το δείκτη. 444 01:05:24,710 --> 01:05:26,060 >> Έτσι χτύπησα το παιχνίδι. 445 01:05:26,060 --> 01:05:26,920 Τίποτα δεν συμβαίνει. 446 01:05:26,920 --> 01:05:28,980 Αλλά, όπως έχω να μετακινήσετε τον κέρσορα πάνω από τη γάτα, 447 01:05:28,980 --> 01:05:31,960 >> [Meowing] 448 01:05:31,960 --> 01:05:34,750 >> Και αν μπορώ να ξεφύγουμε, να μην χάιδεμα τη γάτα πια. 449 01:05:34,750 --> 01:05:38,090 Έτσι, κάποια υπό όρους λογική ένθετα μέσα από ένα βρόχο. 450 01:05:38,090 --> 01:05:43,070 Τι λέτε για αυτό το παράδειγμα, σκόπιμα που ονομάζεται Μην Pet τη γάτα; 451 01:05:43,070 --> 01:05:45,253 Τι είναι αυτό πρόκειται να κάνει; 452 01:05:45,253 --> 01:05:47,880 >> [Meowing] 453 01:05:47,880 --> 01:05:50,215 >> Γιατί δεν πρέπει να το κατοικίδιο ζώο η γάτα; 454 01:05:50,215 --> 01:05:59,440 >> [Meowing] 455 01:05:59,440 --> 01:06:00,699 >> ΕΝΤΆΞΕΙ. 456 01:06:00,699 --> 01:06:03,880 Έτσι, αυτό είναι ένα παράδειγμα ένα, αν άλλος. 457 01:06:03,880 --> 01:06:06,482 Είναι ένα σημείο απόφασης και γιατί κάθεται στο βρόχο, 458 01:06:06,482 --> 01:06:07,690 είναι και οι δύο να πάρει ελεγχθεί. 459 01:06:07,690 --> 01:06:08,280 Είναι αλήθεια? 460 01:06:08,280 --> 01:06:08,760 Είναι αλήθεια? 461 01:06:08,760 --> 01:06:09,250 Είναι αλήθεια? 462 01:06:09,250 --> 01:06:09,791 Είναι αλήθεια? 463 01:06:09,791 --> 01:06:11,880 Και τελικά, ένα από τα εκείνοι πρόκειται να εφαρμόσει 464 01:06:11,880 --> 01:06:16,480 και έτσι μπορείτε να ακούσετε, είτε το νιαούρισμα ή ο βρυχηθμός του λιονταριού στην εν λόγω υπόθεση. 465 01:06:16,480 --> 01:06:21,400 >> Λοιπόν, ας κάνουμε μια ελαφρώς πιο φανταχτερό ένα ότι έκανα πριν too-- θέματα. 466 01:06:21,400 --> 01:06:25,210 Έτσι, ένα νήμα είναι μόνο μία πράγμα που ένας υπολογιστής μπορεί να κάνει. 467 01:06:25,210 --> 01:06:29,349 Έτσι, ένα πολυ-σπείρωμα πρόγραμμα είναι ένα πρόγραμμα ότι μπορεί να κάνει πολλαπλές πράγματα ταυτόχρονα. 468 01:06:29,349 --> 01:06:31,140 Και όλα αυτά τα παραδείγματα μέχρι στιγμής είχαν 469 01:06:31,140 --> 01:06:35,980 μόνο ένα σενάριο, έτσι ώστε να speak-- ένα πρόγραμμα σαν αυτό εδώ. 470 01:06:35,980 --> 01:06:38,810 Αλλά παρατηρήσετε αυτό το πρόγραμμα έχει δύο ξωτικά, δύο χαρακτήρες. 471 01:06:38,810 --> 01:06:40,020 Το ένα είναι ένα πουλί. 472 01:06:40,020 --> 01:06:40,870 Το ένα είναι μια γάτα. 473 01:06:40,870 --> 01:06:45,080 >> Και παρατηρήσετε όταν κάνω κλικ σε αυτά τα κάτω αριστερά, το καθένα έχει τα δικά τους σενάρια 474 01:06:45,080 --> 01:06:47,120 ή τα προγράμματα που συνδέονται με αυτά. 475 01:06:47,120 --> 01:06:49,420 Και οι δύο από αυτούς προγραμμάτων, προειδοποίηση, εκκίνηση 476 01:06:49,420 --> 01:06:52,600 με όταν πράσινη σημαία clicked-- ας δούμε την cat-- 477 01:06:52,600 --> 01:06:54,030 όταν πατηθεί πράσινη σημαία. 478 01:06:54,030 --> 01:06:58,220 Και έτσι πράγματι, όταν χτύπησα το παιχνίδι τώρα, Τα δύο πράγματα που πρόκειται να συμβούν ταυτόχρονα. 479 01:06:58,220 --> 01:07:01,750 Η γάτα και το πουλί είναι τόσο πρόκειται να λειτουργούν ταυτόχρονα 480 01:07:01,750 --> 01:07:03,815 για να δημιουργήσετε αυτό το αποτέλεσμα. 481 01:07:03,815 --> 01:07:05,440 Και μπορείτε να φανταστείτε τι συμβαίνει. 482 01:07:05,440 --> 01:07:08,340 Υπάρχει μια θηλιά και το πουλί και η γάτα είναι σε ένα βρόχο. 483 01:07:08,340 --> 01:07:11,270 Το πουλί είναι ακριβώς γερός σαν Ήμουν πριν, όταν είπα ωχ. 484 01:07:11,270 --> 01:07:13,040 Αλλά η γάτα έχει σαφώς ένα πλεονέκτημα. 485 01:07:13,040 --> 01:07:16,040 Υπάρχει ένα άλλο μπλοκ ανίχνευσης που επισημαίνει τη γάτα σκόπιμα 486 01:07:16,040 --> 01:07:19,836 με το πουλί σε αυτήν την περίπτωση εδώ. 487 01:07:19,836 --> 01:07:22,960 Έτσι, θα μπορούσαμε να δώσουμε έμφαση, εκτός, κοιτάζοντας μέσω αυτών των μπλοκ, τι συμβαίνει. 488 01:07:22,960 --> 01:07:25,460 Αλλά το βασικό συστατικό εδώ είναι ένα. 489 01:07:25,460 --> 01:07:28,520 Το πουλί, έτσι ώστε αυτό το παιχνίδι δεν είναι εντελώς boring-- ή αυτό animation-- 490 01:07:28,520 --> 01:07:30,060 αρχίζει σε μια τυχαία κατεύθυνση. 491 01:07:30,060 --> 01:07:32,890 Και ο υπολογιστής είναι picking ένας αριθμός μεταξύ 90 και 180 492 01:07:32,890 --> 01:07:36,110 κατ 'ουσίαν, έτσι ώστε να είναι ελαφρώς διαφορετικά κινούμενα σχέδια κάθε φορά. 493 01:07:36,110 --> 01:07:39,480 >> Και στη συνέχεια παρατηρήσετε εδώ, αν η γάτα αγγίζει το πουλί, στη συνέχεια, 494 01:07:39,480 --> 01:07:42,030 παίζουν το λιοντάρι τέσσερις sound-- το βρυχηθμό. 495 01:07:42,030 --> 01:07:46,330 Αλλά εν τω μεταξύ στην πουλιού παλέτα, έχουμε αυτό. 496 01:07:46,330 --> 01:07:49,229 Για πάντα, αν δεν αγγίζουν τη γάτα, απλά να προχωρήσουμε τρία βήματα. 497 01:07:49,229 --> 01:07:50,770 Και στη συνέχεια, εδώ είναι ένα άλλο κομμάτι του παζλ. 498 01:07:50,770 --> 01:07:52,030 Αν είστε στην άκρη, αναπήδηση. 499 01:07:52,030 --> 01:07:54,840 Έτσι, το πουλί είναι ακριβώς το είδος της φύλαξη των παιδιών, τη δική του επιχείρηση, 500 01:07:54,840 --> 01:07:57,330 απλά πετούν γύρω και γερός, και είναι πραγματικά 501 01:07:57,330 --> 01:08:01,780 η γάτα που είχε την υπό όρους λογική για να διαπιστωθεί εάν είχε πιάσει το πουλί. 502 01:08:01,780 --> 01:08:02,280 Εντάξει. 503 01:08:02,280 --> 01:08:08,800 Έτσι, ας κάνουμε ένα άλλο εδώ, αυτό που ονομάζεται Hi Hi Hi. 504 01:08:08,800 --> 01:08:15,100 Και αυτό εδώ ακριβώς κάνει αυτό σε ένα πάντα βρόχο. 505 01:08:15,100 --> 01:08:18,925 Αλλά notice-- πώς μπορούμε να σταματήσουμε αυτό το πολύ ενοχλητικό πρόγραμμα; 506 01:08:18,925 --> 01:08:21,600 507 01:08:21,600 --> 01:08:22,640 Χτυπήστε το πλήκτρο διαστήματος. 508 01:08:22,640 --> 01:08:27,990 Διότι, αν το κάνω αυτό, το αριστερό χέρι program-- 509 01:08:27,990 --> 01:08:31,550 παρατηρήσετε ότι είναι συνεχώς listening-- είναι το κλειδί χώρο πιέστε. 510 01:08:31,550 --> 01:08:34,090 Αν ο χώρος μπαρ πιέζεται, και αν ναι, τι κάνει; 511 01:08:34,090 --> 01:08:35,980 Κάνει μια πολύ συνηθισμένη τεχνική. 512 01:08:35,980 --> 01:08:38,590 Θέτει μια μεταβλητή ίση με κάποια αξία. 513 01:08:38,590 --> 01:08:39,741 Αλλά εναλλαγή αυτή την τιμή. 514 01:08:39,741 --> 01:08:41,490 [? Έτσι εμφάνιση;] με βάση την shape-- Ι 515 01:08:41,490 --> 01:08:43,160 έχουν μια μεταβλητή που θα έγραψε εκ των προτέρων ονομάζεται 516 01:08:43,160 --> 01:08:44,770 Σίγαση, το οποίο ακριβώς λέει ναι ή όχι. 517 01:08:44,770 --> 01:08:45,880 Είναι ο ήχος σε σίγαση ή όχι; 518 01:08:45,880 --> 01:08:46,990 Σωστό ή λάθος? 519 01:08:46,990 --> 01:08:51,580 Και ειδοποίηση, λέω this-- αν σίγαση είναι μηδέν, στη συνέχεια, αλλάξτε σε μία, 520 01:08:51,580 --> 01:08:53,840 άλλο που σίγασης είναι στο μηδέν. 521 01:08:53,840 --> 01:08:55,540 Έτσι, απλά γυρίστε την τιμή από μηδέν έως ένα. 522 01:08:55,540 --> 01:08:58,320 Θα μπορούσα να έχω done-- το αλλάξετε από δύο σε τρία και τρεις δυο 523 01:08:58,320 --> 01:09:00,162 ή τέσσερεις έως πέντε ή τέσσερις σε έξι. 524 01:09:00,162 --> 01:09:01,870 Αλλά δεν έχει σημασία τι αριθμούς μπορώ να χρησιμοποιήσω, 525 01:09:01,870 --> 01:09:04,090 εφ 'όσον έχω κρατήσει αλλάζοντας το αντίθετο. 526 01:09:04,090 --> 01:09:07,290 >> Και το πιο οποιοσδήποτε προγραμματιστής θα ήταν απλά επιλέξετε το μηδέν και ένα-- ψευδείς και αλήθεια, 527 01:09:07,290 --> 01:09:09,510 μακριά και on-- να εκπροσωπεί αυτό. 528 01:09:09,510 --> 01:09:10,930 Και αυτό εξακολουθεί να λειτουργεί. 529 01:09:10,930 --> 01:09:12,190 Αν μου χτύπησε και πάλι το πλήκτρο διαστήματος 530 01:09:12,190 --> 01:09:13,590 >> [SEAL SOUNDS] 531 01:09:13,590 --> 01:09:15,440 >> Το πρόγραμμα τρέχει ακόμα. 532 01:09:15,440 --> 01:09:18,400 Επειδή υπάρχει αυτή η άλλη γραφή που λέει, πάντα κάνουμε το εξής. 533 01:09:18,400 --> 01:09:21,390 534 01:09:21,390 --> 01:09:24,770 Εάν η σίγαση μεταβλητή ισούται με zero-- οπότε αν δεν είστε σε σίγαση 535 01:09:24,770 --> 01:09:29,609 είναι η logic-- αν είναι ψευδής ή όχι, στη συνέχεια, αναπαραγωγή του ήχου, 536 01:09:29,609 --> 01:09:30,650 γιατί δεν είστε σε σίγαση. 537 01:09:30,650 --> 01:09:33,358 Θα πρέπει να παίξει τον ήχο και, στη συνέχεια, σκεφτείτε hi hi hi για δύο δευτερόλεπτα 538 01:09:33,358 --> 01:09:35,790 και στη συνέχεια, περιμένετε, και να το κάνουμε ξανά και ξανά και ξανά. 539 01:09:35,790 --> 01:09:40,760 >> Και έτσι με αυτό τον τρόπο έχουμε έναν τρόπο για οι άνθρωποι to-- για τα προγράμματα για να αλληλεπιδράσουν. 540 01:09:40,760 --> 01:09:43,120 Και δεν χρειάζεται να να καθώς χρονολογείται ως άλλοι. 541 01:09:43,120 --> 01:09:46,280 Στην πραγματικότητα, σπρώχνει around-- με το συμπάθειο-- 542 01:09:46,280 --> 01:09:49,250 κάποιος πέρασε ένα τεράστιο ποσό των χρόνο στο διαδίκτυο την εφαρμογή 543 01:09:49,250 --> 01:09:51,580 PokemonGo στο Scratch. 544 01:09:51,580 --> 01:09:55,440 Σας geolocates ακόμη και σε Cambridge ή Allston εδώ. 545 01:09:55,440 --> 01:10:03,120 Έτσι, εάν θέλετε να δείτε πάρα πολύ αυτό που οι άνθρωποι είναι να κάνουμε this-- πολύ φανταχτερό μενού. 546 01:10:03,120 --> 01:10:04,780 Κάντε κλικ εδώ. 547 01:10:04,780 --> 01:10:07,430 >> Αυτό είναι μου με τα βελάκια μου τώρα. 548 01:10:07,430 --> 01:10:09,446 Πάω να πάει μετά από αυτό. 549 01:10:09,446 --> 01:10:09,946 Κλίκ. 550 01:10:09,946 --> 01:10:12,949 551 01:10:12,949 --> 01:10:14,240 Και τώρα κάνετε κλικ στο Pokeball. 552 01:10:14,240 --> 01:10:17,130 553 01:10:17,130 --> 01:10:20,260 Θέλω να πω, νομίζω ότι είσαι υποτίθεται ότι πρέπει να κάνετε κλικ στο Pokeball. 554 01:10:20,260 --> 01:10:20,760 Εντάξει. 555 01:10:20,760 --> 01:10:22,680 Έτσι έκανα αυτό. 556 01:10:22,680 --> 01:10:23,950 Μπορώ να πάω εδώ. 557 01:10:23,950 --> 01:10:27,790 Και αυτό το πρόσωπο εφαρμοστεί λίγο περισσότερο PokeBalls πάνω here-- τρεις PokeBalls. 558 01:10:27,790 --> 01:10:29,950 >> Θα δημοσιεύσουμε ένα σύνδεσμο προς αυτό το σε απευθείας σύνδεση, ώστε να μπορείτε να παίξετε. 559 01:10:29,950 --> 01:10:32,364 Αλλά προειδοποίηση υπάρχει μόνο μερικά βασικά δομικά στοιχεία. 560 01:10:32,364 --> 01:10:33,780 Φαίνεται πολύ φανταχτερό, και αυτό είναι. 561 01:10:33,780 --> 01:10:35,905 Αυτό είναι εντυπωσιακό και πιο από ό, τι θα ήταν τυπικά 562 01:10:35,905 --> 01:10:37,740 Αναμένουμε, ασφαλώς για το πρόβλημα που μηδέν. 563 01:10:37,740 --> 01:10:40,809 Δεν έχω ιδέα πόσο καιρό το πρόσωπο αυτό δαπανάται σε απευθείας σύνδεση. 564 01:10:40,809 --> 01:10:41,850 Αλλά είναι όλα απλά ένας βρόχος. 565 01:10:41,850 --> 01:10:43,180 Υπάρχει ένας ήχος παίζει. 566 01:10:43,180 --> 01:10:44,850 Υπάρχει κάποιο είδος βρόχου ακούγοντας για το αν είμαι 567 01:10:44,850 --> 01:10:47,558 χτυπώντας το πάνω βέλος ή το κάτω Βέλος ή το αριστερό και το δεξί, 568 01:10:47,558 --> 01:10:49,834 και στη συνέχεια, αν ναι, κινείται αυτό κάποιος αριθμός των pixel. 569 01:10:49,834 --> 01:10:51,750 Και στη συνέχεια, αν κάνω κλικ άλλο ξωτικό, υπάρχει 570 01:10:51,750 --> 01:10:53,390 κάποιο είδος αν η κατάσταση εκεί. 571 01:10:53,390 --> 01:10:54,806 Ναι, αυτό είναι να πάρει πάρα πολύ έντονη. 572 01:10:54,806 --> 01:10:56,100 Εμείς πάμε για να σταματήσει. 573 01:10:56,100 --> 01:10:57,750 Είναι όλα εκείνα τα βασικά δομικά στοιχεία. 574 01:10:57,750 --> 01:11:01,530 Δεν υπάρχουν άλλα συστατικά εκτός από αυτά που έχουμε κοίταξε ήδη. 575 01:11:01,530 --> 01:11:04,670 >> Και όμως εδώ, επιτρέψτε μου να κάνω ένα τελικό σύνολο παραδειγμάτων 576 01:11:04,670 --> 01:11:06,960 ότι ζωγραφίζει μια εικόνα πολύ από ό, τι μπορείτε να κάνετε εδώ. 577 01:11:06,960 --> 01:11:10,481 Εδώ είναι ένα πολύ απλό πρόγραμμα που ακριβώς κάνει this-- βήχας, βήχας, βήχας. 578 01:11:10,481 --> 01:11:12,480 Και βασίζεται μόνο σε ό, τι έχουμε κοίταξε μέχρι στιγμής, 579 01:11:12,480 --> 01:11:14,570 όπου είναι η προφανής ευκαιρία για βελτίωση. 580 01:11:14,570 --> 01:11:15,570 Αυτό το πρόγραμμα είναι σωστό. 581 01:11:15,570 --> 01:11:17,980 Είναι βήχα τρεις φορές, το οποίο είναι αυτό που προορίζεται. 582 01:11:17,980 --> 01:11:19,650 Αλλά είναι ελάχιστα εφαρμοστεί. 583 01:11:19,650 --> 01:11:20,600 Είναι άσχημα σχεδιασμένο. 584 01:11:20,600 --> 01:11:22,000 Γιατί; 585 01:11:22,000 --> 01:11:22,500 Ναι. 586 01:11:22,500 --> 01:11:23,230 Δεν είναι ένας βρόχος. 587 01:11:23,230 --> 01:11:24,610 Και δεν είναι τόσο πολύ ότι δεν είναι ένας βρόχος, 588 01:11:24,610 --> 01:11:26,400 είναι ότι υπάρχει πολλή απόλυσης. 589 01:11:26,400 --> 01:11:28,830 Υπάρχει αντιγραφεί και επικόλληση κώδικα, να το πω έτσι. 590 01:11:28,830 --> 01:11:31,830 Και η λύση πιθανόν είναι πράγματι ένας βρόχος. 591 01:11:31,830 --> 01:11:34,350 Επιτρέψτε μου λοιπόν να πάμε μπροστά και βελτιώσουμε την κατάσταση αυτή. 592 01:11:34,350 --> 01:11:36,250 Και Πάω να σύρετε αυτές εδώ. 593 01:11:36,250 --> 01:11:39,986 Επιτρέψτε μου να πάμε μπροστά και να πάρει μια επανάληψη μπλοκ, το αλλάξετε αυτό σε τρεις. 594 01:11:39,986 --> 01:11:41,860 Πάω να πετάξουν ορισμένες από αυτές μπλοκ. 595 01:11:41,860 --> 01:11:43,150 >> Και θα παρατηρήσετε ότι είναι αρκετά έξυπνο. 596 01:11:43,150 --> 01:11:45,691 Μπορείτε drag and drop και τα πράγματα εμφανίζονται και εξαφανίζονται τελικά. 597 01:11:45,691 --> 01:11:49,170 Και μπορώ να σύρετε ακριβώς αυτό εδώ, και τώρα έχω ένα καθαρότερο έκδοση ακόμα. 598 01:11:49,170 --> 01:11:50,730 Αλλά ξέρετε τι; 599 01:11:50,730 --> 01:11:52,940 Υπάρχει αυτή η ευκαιρία τώρα για abstraction-- 600 01:11:52,940 --> 01:11:56,350 για να αρχίσει να καθορίσει νέο λεξιλόγιο ότι MIT δεν είχε προβλέψει. 601 01:11:56,350 --> 01:11:59,110 Υπάρχει περιμένουμε και επαναλάβετε και για πάντα και αν, 602 01:11:59,110 --> 01:12:02,590 αλλά τι γίνεται αν θέλω να εισαγάγουν η λέξη βήχα ως ένα μπλοκ; 603 01:12:02,590 --> 01:12:06,230 Τι γίνεται αν θέλω ένα κομμάτι του παζλ των οποίων ο σκοπός στη ζωή είναι να φτύνω; 604 01:12:06,230 --> 01:12:10,720 >> Λοιπόν, ας ρίξουμε μια ματιά σε αυτή την έκδοση εδώ, το οποίο έκανα ως εξής. 605 01:12:10,720 --> 01:12:13,579 Μαγικά, έχω δημιουργήσει αυτό το κομμάτι του παζλ εδώ, 606 01:12:13,579 --> 01:12:14,870 που Scratch σας επιτρέπει να κάνετε. 607 01:12:14,870 --> 01:12:16,787 Και πράγματι C και Python και JavaScript είναι 608 01:12:16,787 --> 01:12:18,370 πρόκειται να επιτρέψει σε σας για να το κάνετε αυτό, καθώς και. 609 01:12:18,370 --> 01:12:21,830 Μπορείτε να δημιουργήσετε τις δικές σας προσαρμοσμένες κομμάτια που σας καλούν ό, τι θέλετε. 610 01:12:21,830 --> 01:12:24,890 Σε αυτήν την περίπτωση, βήχας αισθάνεται όπως ένα λογικό ορισμό. 611 01:12:24,890 --> 01:12:27,880 Και στη συνέχεια με αυτά τα κομμάτια προς τα κάτω Εδώ μπορείτε να καθορίσετε τι σημαίνει. 612 01:12:27,880 --> 01:12:30,290 >> Έσερα και έπεσε από Αυτή η παλέτα here-- περισσότερα 613 01:12:30,290 --> 01:12:33,500 blocks-- αυτό το μεγάλο μωβ μπλοκ, όπου θα πληκτρολογήσει το βήχα 614 01:12:33,500 --> 01:12:35,290 ως το όνομα του νέου μου κομμάτι του παζλ. 615 01:12:35,290 --> 01:12:39,920 Και τότε λέω κάθε φορά που ένας χρήστης καλεί το νέο αυτό κομμάτι του παζλ βήχα, 616 01:12:39,920 --> 01:12:41,770 κάνει λόγο και αναμονή. 617 01:12:41,770 --> 01:12:46,160 Και έτσι εδώ στην επανάληψη μπλοκ μου, Μπορώ να βήχει μόλις τρεις φορές. 618 01:12:46,160 --> 01:12:49,972 >> Και θα έλεγα, ειδικά αν τώρα έχετε κρύψει αυτήν την λεπτομέρεια. 619 01:12:49,972 --> 01:12:51,430 Ποιος νοιάζεται πώς υλοποιείται ο βήχας; 620 01:12:51,430 --> 01:12:54,390 Όλα νοιάζει ως προγραμματιστής που μπορώ να βήξει. 621 01:12:54,390 --> 01:12:56,280 Δεν με νοιάζει πώς λένε υλοποιείται. 622 01:12:56,280 --> 01:12:58,620 Απλώς με νοιάζει ότι η γάτα μπορεί να πει κάτι. 623 01:12:58,620 --> 01:13:02,720 Μπορώ αφηρημένη μακριά ότι λεπτομέρεια και επικεντρωθεί μόνο σε ό, τι είναι στην οθόνη εδώ. 624 01:13:02,720 --> 01:13:04,400 Αλλά μπορώ να πάρω αυτό το ένα βήμα παραπέρα. 625 01:13:04,400 --> 01:13:08,070 >> Παρατηρήστε ότι εδώ, έχω υλοποιηθεί ο βρόχος τρεις φορές. 626 01:13:08,070 --> 01:13:11,560 Τι γίνεται όμως αν αντ 'αυτού να αρπάξει αυτή την έκδοση; 627 01:13:11,560 --> 01:13:14,640 Και τι θα γίνει αν αντί σε αυτή την έκδοση εδώ, 628 01:13:14,640 --> 01:13:18,730 Απλά αλλάξτε κομμάτι του παζλ μου να λάβει ένα επιχείρημα και των εισροών από μόνη της; 629 01:13:18,730 --> 01:13:21,100 Και αυτό εισόδου μπορεί να είναι ένας αριθμός σαν τρεις. 630 01:13:21,100 --> 01:13:24,580 Έτσι τώρα, αν γράφω ένα πρόγραμμα και θέλω η γάτα να βήξει, 631 01:13:24,580 --> 01:13:28,270 Μπορώ να πω πραγματικά το παζλ κομμάτι πόσες φορές να βήξει, 632 01:13:28,270 --> 01:13:31,990 γιατί στο κάτω μέρος εδώ, ένα φανταχτερό έκδοση από αυτά τα κομμάτια έθιμο παζλ 633 01:13:31,990 --> 01:13:34,500 ας μου διευκρινίζουν ότι βήχας διαρκεί στην πραγματικότητα 634 01:13:34,500 --> 01:13:36,951 μια input-- παίρνει ένα επιχείρημα όπως αυτό. 635 01:13:36,951 --> 01:13:37,700 Και ξέρετε τι; 636 01:13:37,700 --> 01:13:38,890 Ίσως Αντιλαμβάνομαι, περιμένετε ένα λεπτό. 637 01:13:38,890 --> 01:13:40,680 Ο βήχας είναι τρόπο-- είναι θεμελιωδώς 638 01:13:40,680 --> 01:13:42,120 η ίδια ιδέα όπως το φτέρνισμα. 639 01:13:42,120 --> 01:13:44,040 Είναι απλά ένα διαφορετικό λέξη στην οθόνη. 640 01:13:44,040 --> 01:13:46,550 Μπορώ αφηρημένη μακριά περαιτέρω και να εφαρμόσουν 641 01:13:46,550 --> 01:13:48,750 Αυτή η τελική έκδοση του ένα βήχας, η οποία με την πρώτη ματιά 642 01:13:48,750 --> 01:13:50,660 είναι πολύ πιο περίπλοκη ψάχνετε. 643 01:13:50,660 --> 01:13:52,140 Αλλά παρατηρήστε τι έχω κάνει. 644 01:13:52,140 --> 01:13:55,930 Τώρα έχω generalized-- Genericized really-- αυτό το κομμάτι του παζλ 645 01:13:55,930 --> 01:13:59,900 να κληθεί να πω λέξη n φορές. 646 01:13:59,900 --> 01:14:04,410 >> Και τώρα έχω δύο νέα κομμάτια του παζλ εδώ κάτω καθορίζουν βήχα n φορές. 647 01:14:04,410 --> 01:14:06,790 Και τι κάνει η λειτουργία του βήχα; 648 01:14:06,790 --> 01:14:08,420 Τι κάνει μου προσαρμοσμένο κομμάτι του παζλ; 649 01:14:08,420 --> 01:14:11,996 Είναι απλά καλεί το μπλοκ ας πούμε, περνώντας στη λέξη που θέλω να πω, 650 01:14:11,996 --> 01:14:13,870 περνώντας στον αριθμό φορές που θέλω να πω. 651 01:14:13,870 --> 01:14:18,210 Επειδή τώρα μπορώ να εφαρμόσουν φτάρνισμα λέγοντας απλώς achoo, 652 01:14:18,210 --> 01:14:20,320 στην περίπτωση αυτή, μερικές φορές. 653 01:14:20,320 --> 01:14:22,360 >> Και έτσι είμαι layering και layering. 654 01:14:22,360 --> 01:14:25,690 Και πάλι, το κλειδί δεν είναι εδώ πώς μπορώ να υλοποιηθεί, αλλά το γεγονός 655 01:14:25,690 --> 01:14:28,070 ότι αν εγώ απλά κυριολεκτικά μετακινήσετε αυτά έξω από την οθόνη, 656 01:14:28,070 --> 01:14:31,280 δείτε πόσο απλό, αν δεν πολύ το πρόγραμμά μου φαίνεται τώρα. 657 01:14:31,280 --> 01:14:33,930 Επειδή κάνει ό, τι λέει, έχω αντλούμενου 658 01:14:33,930 --> 01:14:37,640 μακριά ό, τι είναι μέσα σε αυτό το μαύρο κουτί. συμβαίνει να είναι ένα μωβ κουτί εδώ, 659 01:14:37,640 --> 01:14:41,430 αλλά έχω παρεμποδίζεται μακριά ό, τι είναι μέσα γιατί δεν με νοιάζει πώς λειτουργεί. 660 01:14:41,430 --> 01:14:43,650 Απλώς με νοιάζει τώρα ότι λειτουργεί. 661 01:14:43,650 --> 01:14:46,375 >> Και πράγματι, το πρόβλημα που το μηδέν, αυτό είναι ακριβώς 662 01:14:46,375 --> 01:14:49,250 το είδος της διαστρωμάτωσης των ιδεών που θα έχουν την ευκαιρία να εξερευνήσουν. 663 01:14:49,250 --> 01:14:53,510 Είναι ακριβώς η ευκαιρία να εφαρμόζουν τεχνικές επίλυσης προβλημάτων, 664 01:14:53,510 --> 01:14:55,550 σε ό, τι είναι πιθανώς ένα άγνωστο περιβάλλον. 665 01:14:55,550 --> 01:14:57,890 Και αν δεν έχετε προγραμματιστεί πριν ή προγραμματιστεί πριν, 666 01:14:57,890 --> 01:14:59,500 θα διαπιστώσετε ότι υπάρχει ένα μικρό κάτι 667 01:14:59,500 --> 01:15:00,874 σε αυτό το περιβάλλον για όλους. 668 01:15:00,874 --> 01:15:02,770 Και με το πρόβλημα που ένα στο χρόνο μιας εβδομάδας, 669 01:15:02,770 --> 01:15:06,630 θα πρέπει να μεταβεί στην εστίαση σε μια γλώσσα υψηλού επιπέδου που ονομάζεται 670 01:15:06,630 --> 01:15:09,290 Ντο-- ή μάλλον ένα χαμηλότερο γλώσσας επιπέδου που ονομάζεται 671 01:15:09,290 --> 01:15:11,347 Ντο-- αυτό είναι ακόμα πιο ισχυρό, ακόμα κι αν είναι 672 01:15:11,347 --> 01:15:12,930 λίγο πιο αινιγματική με την πρώτη ματιά. 673 01:15:12,930 --> 01:15:16,740 >> Και θα συνειδητοποιήσετε ανά σημερινή TL: DR, ότι αυτό το πρόβλημα που έχει βραχύτερη 674 01:15:16,740 --> 01:15:19,880 παράθυρο του χρόνου από το μέλλον αυτά, απλά γιατί θα πρέπει να το βρείτε αρκετά 675 01:15:19,880 --> 01:15:20,420 προσιτός. 676 01:15:20,420 --> 01:15:22,211 Και μην ανησυχείτε αν μπορείτε να προσθέσετε την κλάση αργά. 677 01:15:22,211 --> 01:15:23,920 Θα αντιμετωπίσουμε πριν από καιρό. 678 01:15:23,920 --> 01:15:28,480 Και πριν διακόψουμε για κέικ, ας τελειώσω με μια απλή ματιά δύο λεπτά 679 01:15:28,480 --> 01:15:30,500 σε ό, τι σας περιμένει εδώ σε CS50. 680 01:15:30,500 --> 01:15:40,950 681 01:15:40,950 --> 01:17:20,803 [ΜΟΥΣΙΚΗ Playing] 682 01:17:20,803 --> 01:17:21,302 Εντάξει. 683 01:17:21,302 --> 01:17:22,690 Αυτό είναι για το CS50. 684 01:17:22,690 --> 01:17:23,650 Θα σας δούμε σύντομα. 685 01:17:23,650 --> 01:17:25,526 Κέικ είναι τώρα εξυπηρετούνται. 686 01:17:25,526 --> 01:17:28,998 687 01:17:28,998 --> 01:18:14,267 [ΜΟΥΣΙΚΗ Playing] 688 01:18:14,267 --> 01:18:16,350 ΟΜΙΛΗΤΗΣ 17: Έχετε ακούσει ενός εκπαιδευτική άδεια, Διευθύνων; 689 01:18:16,350 --> 01:18:29,490 690 01:18:29,490 --> 01:18:31,920 ΟΜΙΛΗΤΗΣ 18: Ίσως υπάρχει πιο κάτω από την κουκούλα. 691 01:18:31,920 --> 01:18:38,279