1 00:00:00,000 --> 00:00:11,050 2 00:00:11,050 --> 00:00:13,351 >> ROB BOWDEN: Αυτή είναι η πιο άνετα τμήμα, 3 00:00:13,351 --> 00:00:16,309 αλλά αυτό δεν σημαίνει ότι αν νιώθετε σαν να μην είστε πιο άνετα 4 00:00:16,309 --> 00:00:18,420 δεν θα μάθουν πράγματα εδώ. 5 00:00:18,420 --> 00:00:20,600 Έτσι, ας ξεκινήσουμε. 6 00:00:20,600 --> 00:00:22,819 Έχετε διαφάνειες πηγαίνει δεξιά μέσα στα πράγματα. 7 00:00:22,819 --> 00:00:24,360 Είμαι έτοιμος να το πάρει μόλις τώρα; 8 00:00:24,360 --> 00:00:25,680 9 00:00:25,680 --> 00:00:26,450 Εναλλαγή φορητούς υπολογιστές. 10 00:00:26,450 --> 00:00:30,470 11 00:00:30,470 --> 00:00:32,950 >> ALLISON: Δεν θέλετε να εισαγάγει τον εαυτό σας, Rob; 12 00:00:32,950 --> 00:00:34,090 >> ROB BOWDEN: Ω, είμαι Rob. 13 00:00:34,090 --> 00:00:35,182 14 00:00:35,182 --> 00:00:37,470 Αυτή είναι η πέμπτη χρονιά TF-σης CS50 μου. 15 00:00:37,470 --> 00:00:38,760 16 00:00:38,760 --> 00:00:39,650 >> GABRIEL: Είμαι Γαβριήλ. 17 00:00:39,650 --> 00:00:41,610 Είμαι επικεφαλής TF του CS50. 18 00:00:41,610 --> 00:00:44,009 Ήμουν TF πέρυσι και φέτος. 19 00:00:44,009 --> 00:00:46,675 ALLISON: Και είμαι Alison, και αυτό είναι η δεύτερη χρονιά TF-σης CS50 μου. 20 00:00:46,675 --> 00:00:48,510 21 00:00:48,510 --> 00:00:50,825 >> ROB BOWDEN: Εντάξει, έτσι αυτό το πράγμα στην αριστερά, 22 00:00:50,825 --> 00:00:52,250 Ας ελπίσουμε ότι έχετε δει πριν. 23 00:00:52,250 --> 00:00:54,112 Αν όχι, γιατί σας κατεβάστε το για τον εαυτό σας, 24 00:00:54,112 --> 00:00:55,570 θα πρέπει να έχετε δει σε διάλεξη. 25 00:00:55,570 --> 00:00:56,590 26 00:00:56,590 --> 00:01:01,320 Έτσι, αυτή είναι η συσκευή CS50, και ο ίδιος έκανε μια κάπως περιγραφή της επένδυσης 27 00:01:01,320 --> 00:01:01,880 σε διάλεξη. 28 00:01:01,880 --> 00:01:06,890 Αλλά βασικά είναι μόνο η δική σας εκτελείτε ένα λειτουργικό 29 00:01:06,890 --> 00:01:10,550 συστήματος στο λειτουργικό σας σύστημα έτσι ώστε να μπορούμε να σας δώσουμε 30 00:01:10,550 --> 00:01:12,540 προγράμματα χωρίς να χρειάζεται να ανησυχείτε, ω είναι αυτό 31 00:01:12,540 --> 00:01:15,989 πρόκειται να λειτουργήσει στα Windows και Mac, ή αν κάποιοι από εσάς 32 00:01:15,989 --> 00:01:17,280 είναι ήδη χρησιμοποιούν το Linux, το Linux. 33 00:01:17,280 --> 00:01:18,532 34 00:01:18,532 --> 00:01:20,240 Είναι ακριβώς υποτίθεται ότι είναι ένα κοινό παίζοντας 35 00:01:20,240 --> 00:01:23,010 τομέα έτσι ώστε ο καθένας έχει το ακριβώς το ίδιο περιβάλλον. 36 00:01:23,010 --> 00:01:25,344 >> Έτσι, αν δεν έχετε κατεβάσει ήδη αυτό, 37 00:01:25,344 --> 00:01:28,510 θα πρέπει να το κατεβάσετε, επειδή είστε πρόκειται να το χρειαστείτε για το σύνολο του προβλήματος. 38 00:01:28,510 --> 00:01:32,335 Και αυτό είναι ένα δύο gigabyte κατεβάσετε, έτσι ώστε να μπορεί να πάρει για λίγο. 39 00:01:32,335 --> 00:01:33,780 Στο Χάρβαρντ θα πάει γρήγορα. 40 00:01:33,780 --> 00:01:35,870 41 00:01:35,870 --> 00:01:37,440 Έτσι CS50 συσκευή. 42 00:01:37,440 --> 00:01:41,980 >> Τώρα, στην αρχή, θα πάμε να μιλάμε για ένα μάτσο γραμμή εντολών 43 00:01:41,980 --> 00:01:46,880 πράγματα, και έτσι με αυτό, εννοώ εργασίας σε αυτό το μικρό περιβάλλον εδώ. 44 00:01:46,880 --> 00:01:53,230 Και παρατηρήσετε όλα τα πράγματα Το λέω εδώ τώρα 45 00:01:53,230 --> 00:01:56,900 πρόκειται να λειτουργήσει εάν είστε στο εσωτερικό του ένα τερματικό στο εσωτερικό της συσκευής, 46 00:01:56,900 --> 00:02:00,790 ή αν είστε στο εσωτερικό του το παράθυρο τερματικού gedit 47 00:02:00,790 --> 00:02:02,090 στο εσωτερικό της συσκευής. 48 00:02:02,090 --> 00:02:03,770 Έτσι, αυτά τα περιβάλλοντα είναι πανομοιότυπα. 49 00:02:03,770 --> 00:02:04,940 50 00:02:04,940 --> 00:02:07,270 >> Αλλά Πάω να πάει μια τρίτη διαδρομή. 51 00:02:07,270 --> 00:02:12,200 Και παρατηρήσετε εδώ κάτω αυτό λίγο διεύθυνση IP εδώ. 52 00:02:12,200 --> 00:02:15,940 Έτσι, δεν έχετε να το κάνετε αυτό, αλλά αυτό το IP 53 00:02:15,940 --> 00:02:19,700 address-- τώρα αν I-- εκτός είναι αποκλεισμένη από αυτό το πράγμα. 54 00:02:19,700 --> 00:02:22,790 55 00:02:22,790 --> 00:02:27,000 Εντάξει, έτσι ώστε η διεύθυνση IP πάνω σε ένα τερματικό 56 00:02:27,000 --> 00:02:31,090 here-- έτσι αυτό το τερματικό πάνω εδώ είναι ένα τερματικό στο Mac μου. 57 00:02:31,090 --> 00:02:34,540 Έτσι, αυτό είναι κατά κανένα τρόπο τη στιγμή που συνδέεται με την συσκευή σε όλα. 58 00:02:34,540 --> 00:02:39,360 Και αν είστε σε Windows, τότε είστε Θα χρειαστεί να κατεβάσετε κάτι 59 00:02:39,360 --> 00:02:44,430 ειδικά για το σκοπό αυτό, ιδίως οι άνθρωποι τείνουν να χρησιμοποιούν στόκος, Ρ-U-Τ-Τ-Υ. 60 00:02:44,430 --> 00:02:50,700 >> Λοιπόν, τι Πάω να κάνουμε είναι τύπου SSH και, στη συνέχεια, ότι η διεύθυνση IP. 61 00:02:50,700 --> 00:02:54,030 Λοιπόν, jharvard σε αυτή τη διεύθυνση IP. 62 00:02:54,030 --> 00:03:00,150 Έτσι 192.168.24.220. 63 00:03:00,150 --> 00:03:02,127 Αυτό το τρομακτικό μήνυμα, αγνοήστε το. 64 00:03:02,127 --> 00:03:02,710 Απλά πληκτρολογήστε ναι. 65 00:03:02,710 --> 00:03:04,550 66 00:03:04,550 --> 00:03:06,030 Αυτό είναι CS50 σε ένα κουτί. 67 00:03:06,030 --> 00:03:07,460 Ζητά τον κωδικό πρόσβασής σας. 68 00:03:07,460 --> 00:03:11,910 >> Και έτσι σε πολλά από αυτά τα πλαίσια όπου ζητά για τον κωδικό πρόσβασης, [δεν ακούγεται]. 69 00:03:11,910 --> 00:03:15,670 Έχουμε πολλές ερωτήσεις όπου λέει ότι δεν είναι πραγματικά πληκτρολογώντας. 70 00:03:15,670 --> 00:03:20,011 Δεν σας δείξει τους χαρακτήρες του ο κωδικός πρόσβασης καθώς πληκτρολογείτε, αν μη τι άλλο, 71 00:03:20,011 --> 00:03:23,010 για ένα χαρακτηριστικό ασφαλείας, γιατί αν κάποιος ψάχνει πάνω από τον ώμο σας 72 00:03:23,010 --> 00:03:25,870 και βλέπουν αστέρι αστέρι αστέρι, τότε 73 00:03:25,870 --> 00:03:28,640 ξέρετε ότι ο κωδικός πρόσβασής σας είναι τέσσερις χαρακτήρες. 74 00:03:28,640 --> 00:03:32,660 Έτσι, η ιδέα είναι ότι θα ζητήσει σας για τον κωδικό πρόσβασής σας, τον τύπο. 75 00:03:32,660 --> 00:03:34,490 Δεν πρόκειται να δείξει που οι χαρακτήρες, 76 00:03:34,490 --> 00:03:36,090 αλλά στην πραγματικότητα την αποδοχή τους. 77 00:03:36,090 --> 00:03:39,210 Σε αυτήν την περίπτωση, κάθε φορά που ποτέ να δείτε μια προτροπή κωδικού πρόσβασης 78 00:03:39,210 --> 00:03:42,280 ασχολούνται με τη συσκευή, το κωδικό πρόκειται να είναι κατακόκκινο. 79 00:03:42,280 --> 00:03:43,270 Έτσι βυσσινί. 80 00:03:43,270 --> 00:03:44,730 81 00:03:44,730 --> 00:03:50,550 >> Και τώρα εδώ μέσα από αυτό παράθυρο που είναι στο Mac μου, 82 00:03:50,550 --> 00:03:54,120 Είμαι βασικά έχει η ίδια ακριβώς άποψη 83 00:03:54,120 --> 00:03:57,040 ως εσωτερικό ενός τερματικού στη συσκευή. 84 00:03:57,040 --> 00:03:58,470 Έτσι, δεν έχετε να το κάνετε αυτό. 85 00:03:58,470 --> 00:04:01,300 Μπορείτε να κάνετε ό, τι σας θέλουν εσωτερικό της συσκευής. 86 00:04:01,300 --> 00:04:05,140 I σχεδόν ποτέ πραγματικά να κάνουμε τίποτα στη συσκευή. 87 00:04:05,140 --> 00:04:09,440 I σχεδόν πάντα την ελαχιστοποίηση ότι και τώρα Είμαι SSH εργάζονται μέσα στη συσκευή. 88 00:04:09,440 --> 00:04:11,480 89 00:04:11,480 --> 00:04:14,180 >> Αν μη τι άλλο, αν έχουν βραδύτερη υπολογιστή, 90 00:04:14,180 --> 00:04:15,820 μπορείτε να παρατηρήσετε μια διαφορά. 91 00:04:15,820 --> 00:04:18,839 Το κάνω αυτό γιατί προτιμώ Αυτό το παράθυρο τερματικού. 92 00:04:18,839 --> 00:04:20,881 Έχει κάποια χαρακτηριστικά, όπως Μπορώ να χωρίσει το παράθυρο, 93 00:04:20,881 --> 00:04:22,672 και τώρα μπορώ να συνδεθώ με SSH σε μέσω της συσκευής. 94 00:04:22,672 --> 00:04:24,105 Πήρα δύο SSH συμβαίνει με τη μία. 95 00:04:24,105 --> 00:04:28,030 96 00:04:28,030 --> 00:04:32,250 Αν ο υπολογιστής σας είναι ιδιαίτερα αργή και εργάζεστε στη συσκευή, 97 00:04:32,250 --> 00:04:35,200 και έχετε συνειδητοποιήσει αυτό είναι πραγματικά laggy, οτιδήποτε. 98 00:04:35,200 --> 00:04:38,220 Τείνει να είναι πολύ πιο γρήγορα αν είστε SSH-ΕΔ στο. 99 00:04:38,220 --> 00:04:40,960 Αλλά κατά τα άλλα μπορείτε να εργαστείτε ή τον άλλο τρόπο. 100 00:04:40,960 --> 00:04:42,388 >> ΚΟΙΝΟ: Τι σημαίνει SSH σημαίνει; 101 00:04:42,388 --> 00:04:43,820 102 00:04:43,820 --> 00:04:47,479 >> ROB BOWDEN: Ασφαλής κοχύλια, κάτι σαν αυτό; 103 00:04:47,479 --> 00:04:48,270 Τι σημαίνει SSH σημαίνει; 104 00:04:48,270 --> 00:04:54,214 105 00:04:54,214 --> 00:04:55,130 GABRIEL: Ασφαλής κέλυφος. 106 00:04:55,130 --> 00:04:56,463 ALLISON: Είναι απλά ασφαλές κέλυφος. 107 00:04:56,463 --> 00:04:57,720 ROB BOWDEN: Ασφαλής κέλυφος. 108 00:04:57,720 --> 00:05:03,700 Είναι ένα πρωτόκολλο που you-- είναι ένα ασφαλές πρωτόκολλο, έτσι κρυπτογραφημένα. 109 00:05:03,700 --> 00:05:06,850 Οι άνθρωποι δεν μπορούν να κατασκοπεύω το δίκτυο και δείτε τι λέτε σε τίποτα 110 00:05:06,850 --> 00:05:08,120 είστε SSH-ed να. 111 00:05:08,120 --> 00:05:12,900 Και στην πραγματικότητα, σε παλιές ημέρες του CS50, έτσι το 2009 112 00:05:12,900 --> 00:05:19,300 όταν ήμουν πρωτοετής, ο τρόπος που θα εργαστεί για CS50 πρόβλημα σύνολα, 113 00:05:19,300 --> 00:05:22,490 θα ήταν SSH-ed σε κάποιο εξυπηρετητή ότι δώσαμε έχετε πρόσβαση σε αυτά, 114 00:05:22,490 --> 00:05:23,497 και θα εργαστεί εκεί. 115 00:05:23,497 --> 00:05:25,330 Έτσι, δεν έχετε αυτό γραφική συσκευή. 116 00:05:25,330 --> 00:05:26,160 Εσείς δεν έχετε το gedit. 117 00:05:26,160 --> 00:05:28,930 Εσείς δεν έχετε όλα αυτά που θα μπορούσε οπτικά το σημείο και κάντε κλικ. 118 00:05:28,930 --> 00:05:30,346 Θα έπρεπε να εργαστούν σε αυτό το περιβάλλον. 119 00:05:30,346 --> 00:05:31,580 120 00:05:31,580 --> 00:05:33,716 Μου αρέσει να δουλεύω σε αυτό το περιβάλλον. 121 00:05:33,716 --> 00:05:36,090 Έτσι, μέρος του τι θα πάμε να πηγαίνουν στο πάνω δεξιά τώρα 122 00:05:36,090 --> 00:05:39,560 είναι ένα μάτσο από το εντολές που θα πρέπει 123 00:05:39,560 --> 00:05:42,095 αρχίσει να εξοικειωθείτε με ως πηγαίνετε μαζί στο μάθημα. 124 00:05:42,095 --> 00:05:43,190 125 00:05:43,190 --> 00:05:45,790 Και ειλικρινά, τη στιγμή που θα συνηθίσουν σε αυτά, το 126 00:05:45,790 --> 00:05:48,220 είναι τόσο πολύ πιο γρήγορα σε εργάζονται σε αυτό το περιβάλλον 127 00:05:48,220 --> 00:05:53,690 ό, τι είναι να συνεργαστεί με σκόπευτρο, το σύρσιμο και κάνοντας κλικ πράγματα. 128 00:05:53,690 --> 00:05:55,340 129 00:05:55,340 --> 00:05:57,210 >> Έτσι, εδώ είμαστε. 130 00:05:57,210 --> 00:06:01,779 Τώρα έχω μόνο SSH-ΕΔ στο, και έτσι η προεπιλεγμένη σας location-- 131 00:06:01,779 --> 00:06:04,820 είδε μερικές από αυτές τις εντολές στην τάξη, αλλά θα πάμε πάνω από όλα αυτά και πάλι. 132 00:06:04,820 --> 00:06:08,060 Η προεπιλεγμένη θέση είμαστε in είναι ο κατάλογος home. 133 00:06:08,060 --> 00:06:11,520 Και κατάλογο, απλά μια άλλη λέξη για το φάκελο. 134 00:06:11,520 --> 00:06:13,310 Έτσι, είμαστε στον κεντρικό κατάλογο. 135 00:06:13,310 --> 00:06:15,889 Πληκτρολογήστε ls, απαριθμούν τα αρχεία σε αυτόν τον κατάλογο. 136 00:06:15,889 --> 00:06:17,430 Προφανώς έχω δημιουργήσει ένα blah.c νωρίτερα. 137 00:06:17,430 --> 00:06:19,120 138 00:06:19,120 --> 00:06:20,472 Έτσι έχουμε έναν κατάλογο στην επιφάνεια εργασίας. 139 00:06:20,472 --> 00:06:21,930 Θα παρατηρήσετε την επισήμανση σύνταξης; 140 00:06:21,930 --> 00:06:27,400 141 00:06:27,400 --> 00:06:32,900 Το γαλάζιο τονισμός υποδεικνύει ένα κατάλογο και η ευθεία λευκό 142 00:06:32,900 --> 00:06:34,380 δείχνει μόνο ένα απλό αρχείο. 143 00:06:34,380 --> 00:06:35,410 144 00:06:35,410 --> 00:06:37,690 Έτσι, οι εκεί πρόκειται να είναι κάποια άλλα χρώματα που βλέπετε. 145 00:06:37,690 --> 00:06:41,240 Ένα εκτελέσιμο αρχείο είναι κατά πάσα πιθανότητα θα να είναι πράσινο ή κάτι τέτοιο. 146 00:06:41,240 --> 00:06:44,820 Εντάξει, έτσι είμαστε στον κεντρικό κατάλογο. 147 00:06:44,820 --> 00:06:48,970 >> Τώρα, αν θέλω να πάω σε ένα διαφορετικό καταλόγου, cd είναι η εντολή που θέλω. 148 00:06:48,970 --> 00:06:52,720 Έτσι αλλάζουν τον κατάλογο, και στη συνέχεια θα να περάσει το όνομα του καταλόγου 149 00:06:52,720 --> 00:06:54,020 ότι θέλετε να πάτε σε. 150 00:06:54,020 --> 00:06:55,780 Έτσι, εδώ έχουμε τέσσερις επιλογές. 151 00:06:55,780 --> 00:07:03,397 Μπορώ να πάω σε λήψεις, και τώρα βλέπουμε εδώ έχει ενημερωθεί αυτό το παρενθετική 152 00:07:03,397 --> 00:07:04,480 να πω ότι είμαι στο ~ / λήψεις. 153 00:07:04,480 --> 00:07:05,620 154 00:07:05,620 --> 00:07:06,800 >> Έτσι τι είναι περισπωμένη; 155 00:07:06,800 --> 00:07:10,640 Είναι μια συντομογραφία για κατάλογο το σπίτι σας. 156 00:07:10,640 --> 00:07:15,260 Έτσι, σχεδόν όλα όσα κάνετε πρόκειται να να είναι σε σχέση με τον κατάλογο του σπιτιού σας, 157 00:07:15,260 --> 00:07:20,620 και pwd είναι απλά μια εντολή Χρησιμοποιώ μία φορά σε ένα έτος που 158 00:07:20,620 --> 00:07:22,420 απλά εκτυπώνει τον τρέχοντα κατάλογο. 159 00:07:22,420 --> 00:07:25,730 Και έτσι μπορείτε να δείτε εδώ ότι ~ / Downloads επιλύει πραγματικά 160 00:07:25,730 --> 00:07:26,896 για το / home / jharvard / downloads. 161 00:07:26,896 --> 00:07:29,320 162 00:07:29,320 --> 00:07:32,230 Έτσι, / home / jharvard είναι κατάλογο σπίτι μου. 163 00:07:32,230 --> 00:07:33,700 164 00:07:33,700 --> 00:07:39,400 >> Έτσι μπορούμε να cd dot dot. 165 00:07:39,400 --> 00:07:47,800 Τώρα dot dot είναι ένα ειδικό κατάλογο που αναφέρεται πάντα στο ένα κατάλογο επάνω. 166 00:07:47,800 --> 00:07:51,730 Έτσι, αν είμαι στο ~ / downloads, τότε cd dot dot πρόκειται να με φέρει στην περισπωμένη. 167 00:07:51,730 --> 00:07:52,950 168 00:07:52,950 --> 00:07:55,490 Τι πιστεύουμε cd dot dot πρόκειται να μου φέρει τώρα; 169 00:07:55,490 --> 00:07:58,740 170 00:07:58,740 --> 00:08:00,570 Θα με φέρει στην / στο σπίτι. 171 00:08:00,570 --> 00:08:04,450 Έτσι περισπωμένη από εκτύπωση κατάλογο εργασίας, Είμαι τώρα / home / jharvard. 172 00:08:04,450 --> 00:08:06,060 173 00:08:06,060 --> 00:08:08,820 το ένα επάνω από τον κατάλογο αυτό, Τώρα λέει εδώ / σπίτι. 174 00:08:08,820 --> 00:08:12,330 175 00:08:12,330 --> 00:08:17,180 >> Τώρα CD dot dot. 176 00:08:17,180 --> 00:08:20,910 Τώρα είμαι στο root directory, και δεν μπορείτε να το κάνετε ξανά. 177 00:08:20,910 --> 00:08:23,340 Θα μείνετε μόνο στο ριζικό κατάλογο για πάντα. 178 00:08:23,340 --> 00:08:26,700 Ο ριζικός κατάλογος έχει ένα σωρό πράγματα που, αν θέλετε να εξετάσει, 179 00:08:26,700 --> 00:08:27,410 μπορείτε. 180 00:08:27,410 --> 00:08:29,700 Για παράδειγμα, αν πάω σε δοχείο, το οποίο περιέχει 181 00:08:29,700 --> 00:08:35,789 Όλα αυτά τα εκτελέσιμα, όπως το ls, και CD, και όλα αυτά τα πράγματα. 182 00:08:35,789 --> 00:08:38,630 Έτσι, αυτές οι εντολές πρέπει να υπάρχουν κάπου στο σύστημα, 183 00:08:38,630 --> 00:08:40,820 και είναι στον κατάλογο / bin. 184 00:08:40,820 --> 00:08:44,530 Αλλά σχεδόν όλα όσα κάνετε είναι πρόκειται να είναι από τον κατάλογο το σπίτι σας. 185 00:08:44,530 --> 00:08:49,490 Και cd χωρίς επιχειρηματολογία, θα μπορούσαμε να πούμε cd ~, δεν χρειάζεται να. 186 00:08:49,490 --> 00:08:51,810 cd πρόκειται να σας φέρει πίσω στον κατάλογο του σπιτιού σας. 187 00:08:51,810 --> 00:08:53,170 188 00:08:53,170 --> 00:08:54,230 >> Ένα τελευταίο. 189 00:08:54,230 --> 00:09:00,200 CD - πρόκειται να σας φέρει πίσω στο το τελευταίο κατάλογο που ήσασταν στο. 190 00:09:00,200 --> 00:09:04,080 Γι 'αυτό ακριβώς cd'd δύο φορές στη σειρά, έτσι μου τελευταίο κατάλογο ήταν το κεντρικό κατάλογο. 191 00:09:04,080 --> 00:09:11,520 Αν πάω να μειώσει κάδο, και τώρα ας πάμε και σε χρήστη. 192 00:09:11,520 --> 00:09:12,550 193 00:09:12,550 --> 00:09:13,280 Το μερίδιο των χρηστών. 194 00:09:13,280 --> 00:09:14,840 195 00:09:14,840 --> 00:09:15,940 Ας πάμε στο μερίδιο των χρηστών. 196 00:09:15,940 --> 00:09:17,140 Τώρα είμαι τώρα στο μερίδιο των χρηστών. 197 00:09:17,140 --> 00:09:19,320 CD -, πίσω στον κάδο. 198 00:09:19,320 --> 00:09:22,980 Έτσι, αυτό γίνεται ιδιαίτερα χρήσιμο όταν have-- και θα αλλάξετε. 199 00:09:22,980 --> 00:09:25,660 Έτσι, το μερίδιο των χρηστών, πίσω Μπιν, Μπιν μετοχή. 200 00:09:25,660 --> 00:09:27,250 >> Έτσι, αυτό παίρνει χρήσιμη. 201 00:09:27,250 --> 00:09:33,150 Μπορείτε να βρείτε τον εαυτό σας με πολλά, πολλές, πολλές ένθετες καταλόγους. 202 00:09:33,150 --> 00:09:37,370 Και θέλετε να κάνετε κάτι πραγματικά γρήγορα σε ένα ανώτερο κατάλογο. 203 00:09:37,370 --> 00:09:40,330 Μπορείτε να πάτε σε αυτόν τον κατάλογο, να αλλαγές και τέτοια πράγματα, 204 00:09:40,330 --> 00:09:42,400 και τώρα θέλετε να πάτε πίσω εκεί που ήταν. 205 00:09:42,400 --> 00:09:43,660 CD -. 206 00:09:43,660 --> 00:09:47,320 Είμαι πάντα απογοητευμένος όταν τυχαίνει να πάει 207 00:09:47,320 --> 00:09:49,630 σε αυτόν τον κατάλογο Ι ήθελε να κάνει τη δουλειά σε. 208 00:09:49,630 --> 00:09:52,670 Πάντα να απογοητεύονται όταν έκανα αυτό σε δύο στάδια αντί για ένα βήμα, 209 00:09:52,670 --> 00:09:55,715 διότι αυτό σημαίνει ότι το CD - πρόκειται να θέσουν σε αυτή την ενδιάμεση θέση 210 00:09:55,715 --> 00:09:57,010 αντί για το πού θέλω να πάω. 211 00:09:57,010 --> 00:09:59,350 212 00:09:59,350 --> 00:10:01,450 >> Έτσι βλέπουμε όλα τα αρχεία του καταλόγου. 213 00:10:01,450 --> 00:10:03,300 Ξέρουμε πώς να πάρει γύρω μέχρι στιγμής. 214 00:10:03,300 --> 00:10:09,900 Έτσι τώρα ας μιλήσουμε για την επεξεργασία αρχείων. 215 00:10:09,900 --> 00:10:18,790 Έτσι, σε αυτό το μάθημα, είστε σχεδόν πάντα αναμένεται να χρησιμοποιήσουν το gedit. 216 00:10:18,790 --> 00:10:24,410 Αν θέλετε, μπορείτε να πάρετε το επόμενο βήμα και αρχίζουν να μαθαίνουν ένα κείμενο γραμμή εντολών 217 00:10:24,410 --> 00:10:25,240 editor. 218 00:10:25,240 --> 00:10:27,560 Έτσι, υπάρχουν διάφορες επιλογές. 219 00:10:27,560 --> 00:10:31,760 >> Και αυτά που είναι πιθανώς πρόκειται να είναι σχετικές με εσάς, 220 00:10:31,760 --> 00:10:35,340 έχουμε Νάνο, ο Vim, και το Emacs. 221 00:10:35,340 --> 00:10:40,196 Έτσι Νάνο είναι οι αρχάριοι γραμμή εντολών του επεξεργαστή κειμένου. 222 00:10:40,196 --> 00:10:42,985 Έτσι Νάνο ας πάμε στις blah.c μου δημιουργήσατε νωρίτερα. 223 00:10:42,985 --> 00:10:44,030 224 00:10:44,030 --> 00:10:46,480 Είναι ακριβώς αυτό το πρότυπο αρχείο Γ. 225 00:10:46,480 --> 00:10:51,540 Και θα δείτε ένα σωρό πράγματα συμβαίνει στο κάτω μέρος της οθόνης, 226 00:10:51,540 --> 00:10:54,100 και προφανώς blah.c περιέχει αυτόν τον κώδικα C. 227 00:10:54,100 --> 00:10:55,420 228 00:10:55,420 --> 00:11:00,330 >> Έτσι, σε αυτό το συγκεκριμένο επεξεργαστή, τι λέει στην bottom-- 229 00:11:00,330 --> 00:11:06,290 τώρα αυτό το σύμβολο καρέ, βλέπουμε αυτό το ^ Ζ, ^ Χ, ^ Ο. 230 00:11:06,290 --> 00:11:10,310 Έτσι ώστε σε όλες σχεδόν τις πλαίσιο που βλέπετε, 231 00:11:10,310 --> 00:11:13,530 μπορείτε να δείτε αυτό το σύμβολο καρέ σε άλλα μέρη σε απευθείας σύνδεση, σε Υπερχείλιση στοίβας, 232 00:11:13,530 --> 00:11:14,450 κάτι σαν αυτό. 233 00:11:14,450 --> 00:11:16,970 Αναφέρεται σχεδόν πάντα να ελέγξει. 234 00:11:16,970 --> 00:11:21,590 Έτσι για να βγείτε θέλω να κάνω Έλεγχος Χ Ελέγχου Χ, εξέρχεται. 235 00:11:21,590 --> 00:11:22,750 236 00:11:22,750 --> 00:11:26,855 Και μπορώ να χρησιμοποιήσω το βέλος μου πλήκτρα για να μετακινηθείτε. 237 00:11:26,855 --> 00:11:28,010 238 00:11:28,010 --> 00:11:31,015 Παρατηρήστε Δεν μπορώ να το σημείο και κάντε κλικ εύκολα. 239 00:11:31,015 --> 00:11:33,000 240 00:11:33,000 --> 00:11:35,010 Χρειάζεται να χρησιμοποιήσετε το βέλος σας πλήκτρα για να μετακινηθείτε. 241 00:11:35,010 --> 00:11:36,950 Μπορεί να υπάρχει μια ρύθμιση στο σημείο και κάντε κλικ. 242 00:11:36,950 --> 00:11:40,000 >> Αλλά ας κάνουμε κάποιες αλλαγές. 243 00:11:40,000 --> 00:11:42,100 Τώρα Ελέγχου Χ για να πάει έξοδο. 244 00:11:42,100 --> 00:11:44,120 Δεν πρόκειται να πω Αποθήκευση τροποποιημένο ρυθμιστικό. 245 00:11:44,120 --> 00:11:47,900 Τώρα η προτροπή, Y για ναι, n. 246 00:11:47,900 --> 00:11:49,900 Έλεγχος C για ακύρωση. 247 00:11:49,900 --> 00:11:50,780 Θα πω μόνο ναι. 248 00:11:50,780 --> 00:11:51,709 Όνομα να γράψει αρχείου. 249 00:11:51,709 --> 00:11:53,500 Η προεπιλογή είναι το αρχείο ότι ήδη είναι. 250 00:11:53,500 --> 00:11:54,230 Hit Enter. 251 00:11:54,230 --> 00:11:54,740 ΟΚ. 252 00:11:54,740 --> 00:11:58,580 Τώρα έχω μόλις επεξεργαστεί το αρχείο, αποθηκεύονται, και αυτό αλλάζει. 253 00:11:58,580 --> 00:11:59,770 254 00:11:59,770 --> 00:12:03,000 >> Έτσι Nano είναι ο ευκολότερος επεξεργαστή κειμένου συνηθίσεις. 255 00:12:03,000 --> 00:12:05,520 Οι εναλλακτικές λύσεις είναι το Vim και Emacs. 256 00:12:05,520 --> 00:12:11,250 Αυτά είναι υψηλότερο επίπεδο συντάκτες κειμένου που έχουν μια πολύ απότομη καμπύλη μάθησης. 257 00:12:11,250 --> 00:12:13,740 Έτσι, η προσωπική μου προτίμηση είναι το Vim. 258 00:12:13,740 --> 00:12:17,175 Και αυτό έχει μια ευρεία ποικιλία των επιλογών. 259 00:12:17,175 --> 00:12:18,210 260 00:12:18,210 --> 00:12:24,070 Και μόλις συνηθίσετε σε αυτό, ποτέ δεν θα 261 00:12:24,070 --> 00:12:26,900 θέλουν να πάνε σε οποιαδήποτε άλλη επεξεργαστή κειμένου, επειδή ακριβώς 262 00:12:26,900 --> 00:12:29,590 έχουν τόσα πολλά πράγματα στη διάθεσή σας σε αυτά, 263 00:12:29,590 --> 00:12:31,690 αλλά χρειάζεται μια πραγματικά πολύ χρόνο για να μάθουν. 264 00:12:31,690 --> 00:12:36,000 Έτσι, ίσως απλά θέλετε να αναγκάσει τον εαυτό σας αυτή τη στιγμή για να το συνηθίσεις, 265 00:12:36,000 --> 00:12:38,130 αλλά θα έλεγα ότι αξίζει τον κόπο. 266 00:12:38,130 --> 00:12:39,660 Αλλά είναι δύσκολο. 267 00:12:39,660 --> 00:12:41,220 >> Και τότε το Emacs. 268 00:12:41,220 --> 00:12:44,940 Πάντα αγωνίζονται στο Emacs, διότι Ξέρω πώς να το κάνουμε απολύτως τίποτα. 269 00:12:44,940 --> 00:12:47,755 Προφανώς Emacs δεν είναι από προεπιλογή εγκατεστημένο στη συσκευή. 270 00:12:47,755 --> 00:12:49,210 271 00:12:49,210 --> 00:12:51,720 Εμείς μάλλον θα προσθέσω ότι ως προεπιλογή εγκαταστάσεις. 272 00:12:51,720 --> 00:12:59,620 273 00:12:59,620 --> 00:13:02,390 Μόλις μάθετε ένα από τα Vim ή τον Emacs, υπάρχει 274 00:13:02,390 --> 00:13:04,810 δεν συντρέχει λόγος ποτέ να μάθουν την άλλη, 275 00:13:04,810 --> 00:13:07,570 αλλά αυτό είναι ένα εντελώς διαφορετικό στυλ. 276 00:13:07,570 --> 00:13:10,460 Εντάξει, έτσι αυτό είναι επεξεργασία αρχείων κειμένου. 277 00:13:10,460 --> 00:13:13,374 >> ΚΟΙΝΟ: Αν είχαν κολλήσει στο Vim τώρα, πώς we-- 278 00:13:13,374 --> 00:13:18,840 279 00:13:18,840 --> 00:13:20,800 >> ROB BOWDEN: Υπάρχουν πολλαπλές λειτουργίες στο Vim, 280 00:13:20,800 --> 00:13:23,770 και υπάρχουν ολόκληρα μαθήματα για την εκμάθηση Vim. 281 00:13:23,770 --> 00:13:27,390 Έτσι, αν τυχαίνει να είναι σε κατάσταση εισαγωγής για 282 00:13:27,390 --> 00:13:29,930 για να πληκτρολογήσετε κείμενο, το οποίο μπορείτε να εισάγετε ότι με διάφορους τρόπους, 283 00:13:29,930 --> 00:13:31,610 αλλά εγώ είναι πώς θα μπει σε κατάσταση εισαγωγής. 284 00:13:31,610 --> 00:13:34,780 Σε ή να βγει από οποιοδήποτε ειδικό κατάσταση στην οποία είστε, απλά Escape. 285 00:13:34,780 --> 00:13:37,640 Και απλά bash Escape για να πάρετε έξω από κάθε ένθετη τρόπους σε σας. 286 00:13:37,640 --> 00:13:40,360 Απλά ΟΚ, τώρα είμαι πίσω στην κανονική λειτουργία. 287 00:13:40,360 --> 00:13:43,790 >> Και έτσι σε κανονική λειτουργία, άνω και κάτω τελεία. 288 00:13:43,790 --> 00:13:45,160 Θα δείτε να εμφανίζεται στο κάτω μέρος. 289 00:13:45,160 --> 00:13:46,240 Και τότε το q. 290 00:13:46,240 --> 00:13:52,600 Έτσι, q θα σταματήσουν αν έχετε κάνει αλλαγές, το οποίο I-- έχω κάνει αλλαγές; 291 00:13:52,600 --> 00:13:54,180 Έχω κάνει αλλαγές προφανώς. 292 00:13:54,180 --> 00:13:57,264 Έτσι, αν έχετε κάνει αλλαγές, αυτό θα λένε ότι μπορείτε να βάλετε ένα θαυμαστικό. 293 00:13:57,264 --> 00:13:58,430 Πάω να το ονομάσουμε ένα κτύπημα. 294 00:13:58,430 --> 00:14:02,040 Έτσι, μπορείτε να βάλετε μια απαγόρευση μόνο σταματήσουν το κάπνισμα χωρίς να κάνει τίποτα, 295 00:14:02,040 --> 00:14:04,520 ή WQ του παχέος εντέρου θα σώσει και να σταματήσουν το κάπνισμα. 296 00:14:04,520 --> 00:14:06,580 Έτσι, w σε γενικές γραμμές είναι να γράψετε. 297 00:14:06,580 --> 00:14:08,300 Έτσι γράψει το αρχείο. 298 00:14:08,300 --> 00:14:09,810 Μπορώ να γράψω και να σταματήσουν το κάπνισμα. 299 00:14:09,810 --> 00:14:13,606 Ή θα μπορούσατε να έχετε μόνο QX slam, q Έκρηξη μόνο 300 00:14:13,606 --> 00:14:16,230 για να βγούμε από εκεί, ανεξάρτητα τυχόν αλλαγές που έχετε κάνει. 301 00:14:16,230 --> 00:14:21,310 302 00:14:21,310 --> 00:14:28,940 >> Εντάξει, έτσι και τώρα ας go-- μπορούμε να δημιουργήσουμε αρχεία. 303 00:14:28,940 --> 00:14:30,890 Ας ξεκινήσουμε την αφαίρεση αρχείων. 304 00:14:30,890 --> 00:14:35,450 Και εγώ θα ρίξει μόνο σε ένα γρήγορο νέα εντολή, αφή. 305 00:14:35,450 --> 00:14:38,200 Έτσι αγγίξει foo. 306 00:14:38,200 --> 00:14:39,340 Αγγίξτε το μπαρ. 307 00:14:39,340 --> 00:14:40,220 Αγγίξτε Baz. 308 00:14:40,220 --> 00:14:42,810 Αν LS εγώ, τώρα βλέπουμε ότι υπάρχουν αυτά τα αρχεία. 309 00:14:42,810 --> 00:14:44,315 Είναι εντελώς άδειο. 310 00:14:44,315 --> 00:14:47,178 Έτσι αφής είναι απλά ένα εύκολο τρόπος του ενός, [δεν ακούγεται]. 311 00:14:47,178 --> 00:14:50,850 312 00:14:50,850 --> 00:14:54,640 Δύο, τεχνικά απλώς να δηλώσω αυτό, ενημερώνει τις χρονικές σφραγίδες. 313 00:14:54,640 --> 00:14:58,470 Έτσι, κάθε αρχείο που δημιουργείτε έχει μια χρονική σήμανση που σχετίζεται με αυτό. 314 00:14:58,470 --> 00:15:01,330 Έτσι Baz δημιουργήθηκε για 14 Σεπτεμβρίου στις 16:21. 315 00:15:01,330 --> 00:15:02,570 316 00:15:02,570 --> 00:15:06,670 Είναι τώρα 16:22, οπότε αν Αγγίζω Baz πάλι, εμείς 317 00:15:06,670 --> 00:15:11,420 δείτε ότι Baz ήταν πιο τροποποιήθηκε πρόσφατα σε 16:22. 318 00:15:11,420 --> 00:15:17,680 Αλλά κατά τα άλλα εγώ σχεδόν ποτέ εξετάσουμε τις σημάνσεις χρόνου σε αρχεία. 319 00:15:17,680 --> 00:15:20,490 Έτσι αφής, εδώ είμαι απλά χρησιμοποιώντας να δημιουργήσει κάποιες γρήγορες αρχεία. 320 00:15:20,490 --> 00:15:21,620 321 00:15:21,620 --> 00:15:27,400 >> Εντάξει, έτσι και τώρα RM είναι η εντολή που μας νοιάζει εδώ. 322 00:15:27,400 --> 00:15:28,665 Και μπορούμε να rm boo. 323 00:15:28,665 --> 00:15:31,000 Πείτε αφαιρέσετε τακτική άδειο boo αρχείο. 324 00:15:31,000 --> 00:15:34,070 Και μπορούμε να πληκτρολογήσετε y, και τώρα αφαιρεί. 325 00:15:34,070 --> 00:15:34,850 RM Baz. 326 00:15:34,850 --> 00:15:35,910 327 00:15:35,910 --> 00:15:38,620 Αφαιρέστε τακτική κενό αρχείο Baz και τύπου n. 328 00:15:38,620 --> 00:15:40,060 Τώρα δεν έχει αφαιρεθεί. 329 00:15:40,060 --> 00:15:41,240 Έτσι, μπαρ και Baz εξακολουθούν να υπάρχουν. 330 00:15:41,240 --> 00:15:42,232 Foo έχει φύγει. 331 00:15:42,232 --> 00:15:43,148 GABRIEL: Συνεχίστε να μιλάτε. 332 00:15:43,148 --> 00:15:43,970 333 00:15:43,970 --> 00:15:44,720 ROB BOWDEN: Μεγάλη. 334 00:15:44,720 --> 00:15:45,800 335 00:15:45,800 --> 00:15:50,370 Έτσι, το ενοχλητικό μήνυμα Εδώ, αφαιρέστε την τακτική empty-- 336 00:15:50,370 --> 00:15:52,390 τι κάνεις εκεί κάτω; 337 00:15:52,390 --> 00:15:54,030 Αφαιρέστε τακτική κενό αρχείο. 338 00:15:54,030 --> 00:15:58,840 339 00:15:58,840 --> 00:16:01,610 Έτσι, αν δεν θέλουμε να είναι ενοχλούνται από αυτό το μήνυμα, 340 00:16:01,610 --> 00:16:05,340 μπορούμε να ρίξει σε αυτό το -f σημαία, και έτσι αυτό είναι δύναμη. 341 00:16:05,340 --> 00:16:11,330 Και τώρα, αν μου -f rm, δεν πρόκειται να πω θέλετε να αφαιρέσετε αυτό το αρχείο. 342 00:16:11,330 --> 00:16:12,040 Θα το κάνω ακριβώς. 343 00:16:12,040 --> 00:16:13,720 Και ls, δεν βλέπω μπαρ υπάρχει πια. 344 00:16:13,720 --> 00:16:14,810 345 00:16:14,810 --> 00:16:18,021 >> Τώρα που είναι ένα δυνητικά επικίνδυνη εντολή. 346 00:16:18,021 --> 00:16:19,020 Τείνει να μην είναι πολύ κακό. 347 00:16:19,020 --> 00:16:22,240 Θα επανέλθουμε σε ένα δεύτερο τρόπο μπορεί να πάρει πραγματικά επικίνδυνο. 348 00:16:22,240 --> 00:16:28,740 Και ας δημιουργήσουμε κάποιο προσωρινό κατάλογο. 349 00:16:28,740 --> 00:16:30,880 mkdir, μια άλλη εντολή. 350 00:16:30,880 --> 00:16:34,880 Έτσι mkdir είναι μια εντολή ότι κάνει έναν κατάλογο. 351 00:16:34,880 --> 00:16:40,650 Και τώρα από ls βλέπουμε αυτό το ωραίο φως μπλε υπογράμμισε κατάλογο temp. 352 00:16:40,650 --> 00:16:42,295 Μπορώ cd σε θερμ. 353 00:16:42,295 --> 00:16:44,590 Και μπορώ να mkdir foo. 354 00:16:44,590 --> 00:16:46,330 cd σε foo. mkdir μπαρ. 355 00:16:46,330 --> 00:16:46,860 cd σε μπαρ. 356 00:16:46,860 --> 00:16:49,400 357 00:16:49,400 --> 00:16:54,300 >> Έτσι βλέπουμε μπορούμε εύκολα να πάρετε σε κάποια αρκετά βαθιά ωοτοκίας. 358 00:16:54,300 --> 00:16:56,385 Τώρα, πώς μπορώ να αφαιρέσω έναν κατάλογο; 359 00:16:56,385 --> 00:16:57,020 360 00:16:57,020 --> 00:16:57,520 rmdir. 361 00:16:57,520 --> 00:16:59,030 362 00:16:59,030 --> 00:17:03,540 Έτσι, αν απλώς ευθεία προσπαθήσω να RM, όπως κάναμε με ένα κανονικό αρχείο, 363 00:17:03,540 --> 00:17:06,420 μπαρ RM πρόκειται να λένε, δεν μπορεί να αφαιρέσει το μπαρ. 364 00:17:06,420 --> 00:17:07,569 Είναι ένα κατάλογο. 365 00:17:07,569 --> 00:17:10,619 Υπάρχει μια ειδική εντολή για αφαίρεση καταλόγους, το είδος της. 366 00:17:10,619 --> 00:17:12,900 Έτσι rmdir μπαρ. 367 00:17:12,900 --> 00:17:13,710 Τώρα μπαρ έχει φύγει. 368 00:17:13,710 --> 00:17:14,980 369 00:17:14,980 --> 00:17:22,680 >> Εντάξει, έτσι rmdir εγώ λίγο πολύ δεν χρησιμοποιούν ποτέ. 370 00:17:22,680 --> 00:17:32,220 Ο λόγος being-- τώρα ας κάνει μια τακτική γραμμή στο αρχείο εδώ. 371 00:17:32,220 --> 00:17:34,780 Έτσι rmdir boo. 372 00:17:34,780 --> 00:17:35,760 rmdir. 373 00:17:35,760 --> 00:17:36,900 Αποτυχία για να αφαιρέσετε το foo. 374 00:17:36,900 --> 00:17:38,420 Κατάλογος όχι άδειο. 375 00:17:38,420 --> 00:17:43,420 Έτσι, δεν μπορείτε να χρησιμοποιήσετε την απομάκρυνση dir σε μια κατάλογο που έχει τα πράγματα σε αυτό. 376 00:17:43,420 --> 00:17:44,830 >> Έτσι, έχετε κάποιες επιλογές. 377 00:17:44,830 --> 00:17:49,780 Μπορείτε να πάτε σε αυτόν τον κατάλογο, αφαιρέστε πάντα με το χέρι, και στη συνέχεια να βγει 378 00:17:49,780 --> 00:17:51,759 και RMDIR τον κατάλογο. 379 00:17:51,759 --> 00:17:53,050 Αυτό προφανώς ακούγεται ενοχλητικό. 380 00:17:53,050 --> 00:17:55,000 Τι και αν υπάρχουν χιλιάδες των αρχείων εκεί μέσα; 381 00:17:55,000 --> 00:17:58,119 Καλά, θα μπορούσατε rm *. 382 00:17:58,119 --> 00:17:59,410 Θα μιλήσουμε για * σε ένα δευτερόλεπτο. 383 00:17:59,410 --> 00:18:00,870 Αυτό σημαίνει ότι ουσιαστικά όλα τα πράγματα. 384 00:18:00,870 --> 00:18:02,030 385 00:18:02,030 --> 00:18:05,470 Αλλά ακόμα καλύτερα, έτσι rm -r. 386 00:18:05,470 --> 00:18:10,220 Έτσι RM -r-- σε πολλά πλαίσια, -r σημαίνει αναδρομικών, 387 00:18:10,220 --> 00:18:13,810 το οποίο θα μιλήσουμε για το τι αναδρομικές μέσα σε αρκετές εβδομάδες. 388 00:18:13,810 --> 00:18:18,630 Αλλά αυτό σημαίνει ουσιαστικά τραβέρσα το σύνολο αυτού του καταλόγου 389 00:18:18,630 --> 00:18:20,190 και αφαιρέστε τα πάντα. 390 00:18:20,190 --> 00:18:24,420 >> Έτσι rm -r foo πρόκειται να πω κατεβαίνουν σε κατάλογο foo; 391 00:18:24,420 --> 00:18:25,210 Ναι. 392 00:18:25,210 --> 00:18:26,800 Αφαιρέστε τακτική κενό αρχείο foo / bar; 393 00:18:26,800 --> 00:18:27,880 394 00:18:27,880 --> 00:18:28,540 Ναι. 395 00:18:28,540 --> 00:18:29,760 Αφαιρέστε τον κατάλογο foo; 396 00:18:29,760 --> 00:18:30,260 Ναι. 397 00:18:30,260 --> 00:18:31,470 398 00:18:31,470 --> 00:18:35,020 Έτσι τώρα foo και τα πάντα στο πλαίσιο αυτό έχει αφαιρεθεί. 399 00:18:35,020 --> 00:18:42,370 >> Τώρα που μπορεί να πάρει ιδιαίτερα ενοχλητικό when-- ας αγγίξει 1, 2 αγγίξει, αγγίξτε 3. 400 00:18:42,370 --> 00:18:44,400 Θα μπορούσε να έχει ένα σωρό αρχεία. 401 00:18:44,400 --> 00:18:49,060 Αν ήθελα, θα μπορούσε να δημιουργήσει χιλιάδες αρχεία εδώ. 402 00:18:49,060 --> 00:18:53,340 Και rm -r foo πρόκειται να είναι αρκετά ενοχλητικό. 403 00:18:53,340 --> 00:18:55,374 Ναι, ναι, ναι, ναι, ναι, ναι. 404 00:18:55,374 --> 00:18:57,540 Με πολλά περισσότερα αρχεία σας δείτε γρήγορα πόσες φορές 405 00:18:57,540 --> 00:18:58,581 Θα πρέπει να πληκτρολογήσετε ναι. 406 00:18:58,581 --> 00:19:02,265 Λοιπόν, μόλις είδαμε πριν από το πώς μπορούμε ξεφορτωθεί χρειάζεται να πληκτρολογούν ναι, -f. 407 00:19:02,265 --> 00:19:03,330 408 00:19:03,330 --> 00:19:07,020 Έτσι mkdir foo cd foo αφής 1 2 3. 409 00:19:07,020 --> 00:19:08,380 410 00:19:08,380 --> 00:19:17,190 Εντάξει, έτσι rm foo -rf πρόκειται να τυφλά αφαίρεση foo εντελώς. 411 00:19:17,190 --> 00:19:17,960 Δεν προτροπή. 412 00:19:17,960 --> 00:19:18,650 Όχι τίποτα. 413 00:19:18,650 --> 00:19:20,040 Foo έχει φύγει. 414 00:19:20,040 --> 00:19:23,830 >> Γι 'αυτό και τείνουν να χρησιμοποιούν αυτό εντολή όλη την ώρα. 415 00:19:23,830 --> 00:19:25,120 416 00:19:25,120 --> 00:19:27,830 Τούτου λεχθέντος, αυτό είναι ένα πολύ επικίνδυνη εντολή, 417 00:19:27,830 --> 00:19:33,240 γιατί αν κάνω κάτι σαν αυτό, δεν θα σας ζητήσει. 418 00:19:33,240 --> 00:19:34,730 Θα πρέπει να φύγει. 419 00:19:34,730 --> 00:19:40,140 Και αυτό συμβαίνει αρκετά συχνά, και ακόμα και στο υψηλότερο επίπεδο CS μαθήματα. 420 00:19:40,140 --> 00:19:42,070 Μερικές φορές θα δούμε κάτι όπου κάποιος 421 00:19:42,070 --> 00:19:48,360 λέει εγώ λάθος μας RM RF-ed σπίτι μου του καταλόγου και όλων των σετ μου Ρ έχει φύγει. 422 00:19:48,360 --> 00:19:52,422 Και αυτό είναι καταστροφικό, αλλά δεν υπάρχει δοχείο απορριμμάτων. 423 00:19:52,422 --> 00:19:54,380 Δεν υπάρχει καμία δεν υπάρχει τίποτα για να μπορείτε να ανακτήσετε. 424 00:19:54,380 --> 00:19:55,330 Είναι μόλις φύγει. 425 00:19:55,330 --> 00:19:56,529 426 00:19:56,529 --> 00:19:58,320 Ακόμα χειρότερα θα ήταν κάτι σαν RM -rf /. 427 00:19:58,320 --> 00:19:59,432 428 00:19:59,432 --> 00:20:01,140 Γι 'αυτό ακριβώς συζητήθηκε ότι το ριζικό κατάλογο. 429 00:20:01,140 --> 00:20:03,095 Κατέχει όλα τα αρχείων στο σύστημά σας. 430 00:20:03,095 --> 00:20:04,120 431 00:20:04,120 --> 00:20:07,380 Τα πράγματα τείνουν να γίνουν αρκετά ακατάστατο όταν έχετε αφαιρέσει τα πράγματα όπως ls, 432 00:20:07,380 --> 00:20:10,280 και CD, και όλα αυτά. 433 00:20:10,280 --> 00:20:15,467 >> ΚΟΙΝΟ: Ποια είναι η διαφορά μεταξύ RM, RF, και RM * 434 00:20:15,467 --> 00:20:16,300 ROB BOWDEN: Έτσι rm * - 435 00:20:16,300 --> 00:20:17,700 436 00:20:17,700 --> 00:20:22,300 >> ALLISON: ερώτηση ήταν ποια είναι η διαφορά μεταξύ rm, RF, και rm *. 437 00:20:22,300 --> 00:20:23,750 438 00:20:23,750 --> 00:20:25,950 >> ROB BOWDEN: Έτσι rm *. 439 00:20:25,950 --> 00:20:31,910 Star σε γενικό μέσο όλων των τα περιεχόμενα αυτού του καταλόγου. 440 00:20:31,910 --> 00:20:33,540 441 00:20:33,540 --> 00:20:35,540 Προσπαθώντας να σκεφτώ άλλα τρόπους να δείξουν αστέρων. 442 00:20:35,540 --> 00:20:38,280 443 00:20:38,280 --> 00:20:44,780 Λοιπόν, το αστέρι πραγματικότητα γενικά σημαίνει ταιριάζουν με οποιοδήποτε σχέδιο. 444 00:20:44,780 --> 00:20:54,930 Έτσι, αν έχω ένα αρχείο που ονομάζεται DOG1, αγγίζετε dog2, αγγίξτε CAT1, αγγίξτε CAT2. 445 00:20:54,930 --> 00:20:56,050 446 00:20:56,050 --> 00:21:02,110 Έτσι ls * 1 πρόκειται να εκτυπώσετε cat1 και DOG1, γιατί αυτό αστέρι μπορεί να γεμίσει 447 00:21:02,110 --> 00:21:06,270 σε with-- η μία πρέπει να είναι εκεί, αλλά το αστέρι μπορεί να είναι είτε γάτα ή σκύλο. 448 00:21:06,270 --> 00:21:07,247 Είναι μια άγρια ​​κάρτα. 449 00:21:07,247 --> 00:21:08,580 Αυτή είναι η λέξη που ψάχνω. 450 00:21:08,580 --> 00:21:09,120 Άγρια κάρτα. 451 00:21:09,120 --> 00:21:10,180 452 00:21:10,180 --> 00:21:13,960 Ή θα μπορούσα να ls σκύλο *, και Είμαι πήρα για να δείτε DOG1, dog2. 453 00:21:13,960 --> 00:21:16,870 Έτσι, εκείνοι που απαριθμεί τα αρχεία ότι ταιριάζει με το συγκεκριμένο μοτίβο. 454 00:21:16,870 --> 00:21:18,150 Μπορείτε να χρησιμοποιήσετε την εντολή ls με αυτόν τον τρόπο. 455 00:21:18,150 --> 00:21:19,350 456 00:21:19,350 --> 00:21:22,020 >> Ls * αστέρων ταιριάζει με τίποτα. 457 00:21:22,020 --> 00:21:25,710 Έτσι, πρόκειται για την εκτύπωση όλων των τα περιεχόμενα αυτού του καταλόγου 458 00:21:25,710 --> 00:21:27,290 δεδομένου ότι όλα αυτά ταιριάζουν. 459 00:21:27,290 --> 00:21:30,130 Δεν πρόκειται να εκτυπώσετε τίποτα σε καταλόγους ανώτερο επίπεδο. 460 00:21:30,130 --> 00:21:38,680 Αν έχω ένα υπο κατάλογο, foo, και αγγίζετε 1 2 3-- έτσι τώρα αν rm * αστέρων, 461 00:21:38,680 --> 00:21:41,450 αφαιρέστε CAT1, ΟΑΤ2, DOG1, dog2. 462 00:21:41,450 --> 00:21:42,340 Δεν είναι δυνατή η αφαίρεση foo. 463 00:21:42,340 --> 00:21:43,090 Είναι ένα κατάλογο. 464 00:21:43,090 --> 00:21:43,920 465 00:21:43,920 --> 00:21:50,340 >> Έτσι αστέρι επεκτείνεται σε όλα τα αρχεία στον κατάλογο. 466 00:21:50,340 --> 00:21:55,210 Έτσι, τεχνικά rm * είναι σαν να λέμε RM CAT1, ΟΑΤ2, DOG1, dog2, foo. 467 00:21:55,210 --> 00:22:03,630 Εκτιμώντας rm -rf, τεχνικά αστέρι θα επιτύχει ό, τι θέλουμε, αλλά RM -rf-- 468 00:22:03,630 --> 00:22:06,090 αν πάω έξω από αυτό κατάλογο, RM -rf θερμοκρασία, 469 00:22:06,090 --> 00:22:08,890 ότι πρόκειται να πάει σε θερμοκρασία και αναδρομικά αφαιρέστε τα πάντα. 470 00:22:08,890 --> 00:22:11,260 471 00:22:11,260 --> 00:22:21,060 >> Έτσι αστέρων είναι ξεχωριστή στο ότι το εν λόγω Εννοείται by-- έτσι αυτό το πράγμα 472 00:22:21,060 --> 00:22:25,090 ότι Τρέχω στο, αυτό το πράγμα που μου ζητά για εντολές 473 00:22:25,090 --> 00:22:28,770 και, στη συνέχεια, την εκτέλεση και να κάνει τους, καλώ αυτό το κέλυφος μου. 474 00:22:28,770 --> 00:22:31,930 Και έτσι αυτό το κέλυφος είναι το ίδιο πρόγραμμα. 475 00:22:31,930 --> 00:22:35,010 Και αν ήθελα, θα μπορούσε να τρέξει στο / bin / bash. 476 00:22:35,010 --> 00:22:36,930 Το κέλυφος ονομάζεται bash. 477 00:22:36,930 --> 00:22:39,340 Και τώρα έχουμε παρατηρήσετε κάτι έχει ελαφρώς αλλάξει, 478 00:22:39,340 --> 00:22:42,200 και αυτό γιατί οι ρυθμίσεις μου για το κέλυφος είναι κάπως διαφορετική. 479 00:22:42,200 --> 00:22:45,415 >> Αλλά τώρα είμαι τεχνικά τρέχει ένα κέλυφος στο αρχικό μου κελύφους, 480 00:22:45,415 --> 00:22:49,570 και μπορώ να βγείτε από αυτό το κέλυφος, και τώρα Είμαι πίσω στην κορυφή κέλυφος επίπεδο μου. 481 00:22:49,570 --> 00:22:55,240 Ο σκοπός της λέγοντας ότι is-- το αστέρι. 482 00:22:55,240 --> 00:22:59,020 Έτσι, το αστέρι είναι κάτι κατανοητή από το bash. 483 00:22:59,020 --> 00:23:04,260 Έτσι RM -rf, -rf σημαία είναι κατανοητό από μόνο RM. 484 00:23:04,260 --> 00:23:06,380 Ξέρει ότι όταν περάσει μια -rf που εσείς 485 00:23:06,380 --> 00:23:09,520 θέλετε να αφαιρέσετε αναδρομικά όλα τα αρχεία χωρίς ειδοποίηση. 486 00:23:09,520 --> 00:23:13,960 Το αστέρι είναι κάτι κατανοητό από bash ότι όταν λέτε rm *, 487 00:23:13,960 --> 00:23:16,890 bash δεν πρόκειται να πει hey rm *, αφαιρέστε αστέρων. 488 00:23:16,890 --> 00:23:21,010 Bash πρόκειται να πω RM * αφαιρέστε CAT1, ΟΑΤ2, DOG1, dog2. 489 00:23:21,010 --> 00:23:24,305 Είναι αυτόματα πρόκειται να επεκταθώ όλα τα αρχεία στον κατάλογο. 490 00:23:24,305 --> 00:23:29,100 491 00:23:29,100 --> 00:23:33,140 >> Και ομοίως περισπωμένη είναι ένα άλλο σύμβολο που bash καταλαβαίνει. 492 00:23:33,140 --> 00:23:37,130 Όταν λέτε cd ~, bash επεκτείνεται ότι στον κατάλογο το σπίτι σας. 493 00:23:37,130 --> 00:23:38,910 494 00:23:38,910 --> 00:23:40,210 Άλλες ερωτήσεις μέχρι στιγμής; 495 00:23:40,210 --> 00:23:42,760 496 00:23:42,760 --> 00:23:46,060 Εντάξει, έτσι θα πάμε για να ξεκινήσει πηγαίνει γρήγορα. 497 00:23:46,060 --> 00:23:47,700 498 00:23:47,700 --> 00:23:48,545 >> Η ολοκλήρωση με Tab. 499 00:23:48,545 --> 00:23:49,670 Απλά να το ρίξει έξω εκεί. 500 00:23:49,670 --> 00:23:51,530 Πολλοί άνθρωποι δεν κάνουν συνειδητοποιήσουμε αυτό υπάρχει. 501 00:23:51,530 --> 00:23:55,060 Έτσι, αν πληκτρολογήσετε cd dow, εγώ θέλω να υπεισέλθω σε λήψεις. 502 00:23:55,060 --> 00:23:56,700 Δεν χρειάζεται να πληκτρολογήσετε nloads. 503 00:23:56,700 --> 00:23:57,960 504 00:23:57,960 --> 00:24:00,770 Μπορώ να χτυπήσει ακριβώς Tab. 505 00:24:00,770 --> 00:24:03,794 Έτσι, αναγνωρίζει ότι Η Dow είναι ένα πρόθεμα που 506 00:24:03,794 --> 00:24:05,710 δεν ταιριάζει με τίποτα άλλο σε αυτόν τον κατάλογο, 507 00:24:05,710 --> 00:24:07,520 οπότε θα ολοκληρώσει αυτό για σας. 508 00:24:07,520 --> 00:24:08,610 Τώρα μπορώ να μπω. 509 00:24:08,610 --> 00:24:10,110 >> Κάνω επίσης ότι κατ 'επανάληψη. 510 00:24:10,110 --> 00:24:11,205 Έτσι mkdir foo. 511 00:24:11,205 --> 00:24:12,480 512 00:24:12,480 --> 00:24:13,300 Ας πάμε σε foo. 513 00:24:13,300 --> 00:24:14,830 mkdir μπαρ. 514 00:24:14,830 --> 00:24:17,345 Έτσι, πηγαίνει πίσω στο σπίτι μου κατάλογο, μπορώ να δω λήψεις. 515 00:24:17,345 --> 00:24:19,040 516 00:24:19,040 --> 00:24:21,860 Τώρα χτυπούν και πάλι την καρτέλα, αυτόματα θα συμπληρώσετε foo. 517 00:24:21,860 --> 00:24:22,880 Είναι η μόνη κατάλογο. 518 00:24:22,880 --> 00:24:25,340 Χτύπημα καρτέλα και πάλι, αυτόματα πρόκειται να γεμίσει το μπαρ. 519 00:24:25,340 --> 00:24:26,798 Έτσι τώρα είμαι στην (~ Downloads / foo / bar). 520 00:24:26,798 --> 00:24:27,310 521 00:24:27,310 --> 00:24:31,692 >> Έτσι, αυτή η ολοκλήρωση καρτέλα, κάθε φορά που πήρα σε ώρες γραφείου, 522 00:24:31,692 --> 00:24:33,400 και στέκομαι πάνω ώμο κάποιου, 523 00:24:33,400 --> 00:24:40,470 και πρόκειται RM D-O-W-Ν-L-O-A-D-S, είμαι πεθαίνουν. 524 00:24:40,470 --> 00:24:41,990 Απλά καρτέλα, καρτέλα, καρτέλα, καρτέλα. 525 00:24:41,990 --> 00:24:44,550 526 00:24:44,550 --> 00:24:45,630 Έτσι χρησιμοποιείται σίγουρα καρτέλα. 527 00:24:45,630 --> 00:24:47,890 528 00:24:47,890 --> 00:24:49,840 Και ομοίως και κάτω, πολλοί άνθρωποι 529 00:24:49,840 --> 00:24:51,930 ακριβώς αυτό που συνέβη με Ποτέ δεν έχω χτυπήσει επάνω και προς τα κάτω. 530 00:24:51,930 --> 00:24:54,870 Θα περάσουν από το προηγούμενο εντολές, οπότε αν απλά έτρεξε κάτι, 531 00:24:54,870 --> 00:24:58,300 και θέλετε να το εκτελέσετε ξανά, απλά κρατήστε μέχρι να σας πάρει σε αυτό. 532 00:24:58,300 --> 00:24:59,870 533 00:24:59,870 --> 00:25:00,370 ΟΚ. 534 00:25:00,370 --> 00:25:01,460 535 00:25:01,460 --> 00:25:03,585 >> Τόσο γρήγορο, κάποια άλλα πράγματα. 536 00:25:03,585 --> 00:25:04,800 537 00:25:04,800 --> 00:25:05,930 Ας πάμε πίσω στο temp. 538 00:25:05,930 --> 00:25:06,976 539 00:25:06,976 --> 00:25:08,125 Ας δημιουργήσουμε κάποια αρχεία. 540 00:25:08,125 --> 00:25:10,480 541 00:25:10,480 --> 00:25:15,215 Μέχρι εδώ, είμαι απλά πρόκειται να απαριθμήσω μερικές λέξεις. 542 00:25:15,215 --> 00:25:18,460 543 00:25:18,460 --> 00:25:21,035 σκύλος, γάτα, νιαούρισμα. 544 00:25:21,035 --> 00:25:23,940 545 00:25:23,940 --> 00:25:26,040 Ας κάνουμε το σκύλο, τα ψάρια. 546 00:25:26,040 --> 00:25:27,500 547 00:25:27,500 --> 00:25:32,320 Έτσι τώρα ύφασμα είναι ένα πολύ χρήσιμες εντολές που 548 00:25:32,320 --> 00:25:37,820 χρησιμοποιούν για να ψάξετε σε όλη την αρχεία για ένα συγκεκριμένο κείμενο, 549 00:25:37,820 --> 00:25:40,910 και τεχνικά πραγματικά μπορείτε να κάνετε σύνθετες εκφράσεις για να ταιριάζουν. 550 00:25:40,910 --> 00:25:44,830 >> Μέχρι εδώ, αν μου grep, και τι μπορώ να θέλετε να αναζητήσετε; 551 00:25:44,830 --> 00:25:49,130 Ας πούμε ότι είμαι ψάχνουν για γάτες, και Θέλω να αναζητήσετε όλα αυτά τα αρχεία. 552 00:25:49,130 --> 00:25:50,650 Λοιπόν, πώς μπορώ να κάνω όλα αυτά τα αρχεία; 553 00:25:50,650 --> 00:25:51,900 Star. 554 00:25:51,900 --> 00:25:54,939 Έτσι, σε ένα αρχείο, έχω γάτα. 555 00:25:54,939 --> 00:25:56,980 Μάλλον θα μπορούσε να έχει ονομάζεται κάτι καλύτερο, 556 00:25:56,980 --> 00:25:59,063 γιατί αυτό μοιάζει αριθμούς γραμμή ή κάτι τέτοιο. 557 00:25:59,063 --> 00:26:01,590 Αλλά σε ένα αρχείο Έχω μια γραμμή με τη γάτα. 558 00:26:01,590 --> 00:26:04,160 Στο αρχείο δύο έχω μια γραμμή με τη γάτα. 559 00:26:04,160 --> 00:26:07,280 Έτσι τώρα μπορώ να κοιτάξουμε στο εσωτερικό ένα αρχείο και δείτε Ω ναι, ότι το αρχείο είχε γάτα. 560 00:26:07,280 --> 00:26:10,210 Ανακοίνωση αρχείο τρεις δεν συνοδεύτηκε επειδή η γάτα δεν είναι εκεί. 561 00:26:10,210 --> 00:26:13,882 Μπορώ να grep για νιαούρισμα. 562 00:26:13,882 --> 00:26:14,840 Μόνο καταθέσει δύο έχει νιαούρισμα. 563 00:26:14,840 --> 00:26:16,120 564 00:26:16,120 --> 00:26:20,640 >> Έτσι, αυτό που μπορείτε να συνδυάσετε, και πάλι, με -r, η οποία 565 00:26:20,640 --> 00:26:23,580 όπως είπα και πριν συχνά σημαίνει αναδρομική. 566 00:26:23,580 --> 00:26:29,800 Και γι 'αυτό μπορεί να έρθει μέχρι εδώ, grep -r για κάθε περίπτωση of-- ας επεξεργαστείτε 567 00:26:29,800 --> 00:26:32,010 αυτό ακριβώς να ρίξει μια γάτα εκεί. 568 00:26:32,010 --> 00:26:38,800 Έτσι grep -r για κάθε περίπτωση γάτα σε όλο αυτόν τον κατάλογο. 569 00:26:38,800 --> 00:26:41,600 Και θα αναδρομικά αναζήτηση σε υποφακέλους. 570 00:26:41,600 --> 00:26:43,940 Έτσι, σε Baz, υπάρχει γάτα. 571 00:26:43,940 --> 00:26:45,570 Σε temp / 2, υπάρχει γάτα. 572 00:26:45,570 --> 00:26:47,960 Και σε temp / 1 υπάρχει γάτα. 573 00:26:47,960 --> 00:26:50,045 Έτσι, αυτό που ψάχνουν μέσα στα αρχεία. 574 00:26:50,045 --> 00:26:51,250 575 00:26:51,250 --> 00:26:55,090 >> Τώρα μπορείτε επίσης να χρησιμοποιήσετε ένα εύρημα. 576 00:26:55,090 --> 00:26:59,640 Και έτσι βρίσκουν είναι ειδικά για ψάχνει για αρχεία με ένα συγκεκριμένο όνομα. 577 00:26:59,640 --> 00:27:02,490 Οπότε ας κάνουμε λίγο περισσότερο. 578 00:27:02,490 --> 00:27:03,660 Ας πάμε σε λήψεις. 579 00:27:03,660 --> 00:27:04,680 580 00:27:04,680 --> 00:27:05,380 Αγγίξτε DOG1. 581 00:27:05,380 --> 00:27:06,840 582 00:27:06,840 --> 00:27:07,770 Αγγίξτε CAT2. 583 00:27:07,770 --> 00:27:09,290 584 00:27:09,290 --> 00:27:10,760 Αγγίξτε cat_dog. 585 00:27:10,760 --> 00:27:14,550 586 00:27:14,550 --> 00:27:15,975 Αγγίξτε γάταγάτα. 587 00:27:15,975 --> 00:27:18,270 588 00:27:18,270 --> 00:27:23,810 >> Θέλω, λοιπόν, να βρείτε όλα αρχεία με σκύλο στο όνομα. 589 00:27:23,810 --> 00:27:28,060 Έτσι βρίσκουν, και για το μεγαλύτερο χρόνος ποτέ δεν θυμόμαστε 590 00:27:28,060 --> 00:27:33,760 πώς να βρει λειτούργησε, μέχρι που τελικά διαβάσετε κάτι που έκανε τόσο σαφή. 591 00:27:33,760 --> 00:27:35,784 Έτσι βρίσκουν, αυτόματα αναδρομικών. 592 00:27:35,784 --> 00:27:36,950 Δεν χρειάζεται να περάσει μια -r. 593 00:27:36,950 --> 00:27:38,090 594 00:27:38,090 --> 00:27:39,110 Έτσι βρείτε τελεία. 595 00:27:39,110 --> 00:27:40,750 Δεν έχουμε μιλήσει για dot ακόμα. 596 00:27:40,750 --> 00:27:44,800 Εκτιμώντας dot dot πάντα σημαίνει ένα κατάλογο επάνω. 597 00:27:44,800 --> 00:27:46,960 Dot σημαίνει πάντα τον τρέχοντα κατάλογο. 598 00:27:46,960 --> 00:27:51,390 Έτσι θα μπορούσα rm -r κουκκίδα στο ίδιο τρόπο μπορώ να rm -rf *. 599 00:27:51,390 --> 00:27:53,140 Τελικά αυτοί επιτύχει το ίδιο πράγμα. 600 00:27:53,140 --> 00:27:56,040 RM -rf τελεία πρόκειται να αφαιρέσετε το σύνολο τρέχοντα κατάλογο. 601 00:27:56,040 --> 00:27:57,440 602 00:27:57,440 --> 00:27:59,680 >> Εντάξει, το οποίο δεν θέλω να κάνουμε εκεί. 603 00:27:59,680 --> 00:28:01,490 604 00:28:01,490 --> 00:28:04,320 Αλλά βρείτε τελεία. 605 00:28:04,320 --> 00:28:07,920 Έτσι αναδρομική αναζήτηση της τρέχουσας κατάλογο, και τώρα τα πάντα 606 00:28:07,920 --> 00:28:14,125 Μετά από αυτό είναι ένα μάτσο σημαίες που εσείς χρησιμοποιήσετε για να αποκλείσει τα πράγματα από την επιστροφή. 607 00:28:14,125 --> 00:28:17,250 Έτσι βρείτε dot επιστρέφει πάντα ότι μπορείτε να βρείτε από τον τρέχοντα κατάλογο. 608 00:28:17,250 --> 00:28:19,700 Αυτά είναι όλα τα αρχεία αναδρομικά την αναζήτηση. 609 00:28:19,700 --> 00:28:21,250 Θα δούμε μερικές από αυτές σε ένα δεύτερο. 610 00:28:21,250 --> 00:28:23,150 611 00:28:23,150 --> 00:28:27,140 >> Αλλά σε περίπτωση που αναρωτιέστε πώς να κάνω ότι, έτσι Εντολή Κ, τουλάχιστον 612 00:28:27,140 --> 00:28:29,660 στο τερματικό μου στο Mac καθαρίζει. 613 00:28:29,660 --> 00:28:34,660 Έλεγχος L καθαρίζει γενικά για οποιοδήποτε είδος τερματικού. 614 00:28:34,660 --> 00:28:36,480 Μπορείτε επίσης να πληκτρολογήσετε σαφές. 615 00:28:36,480 --> 00:28:38,410 Και αν έχετε ποτέ σε ένα παράξενο scenario-- 616 00:28:38,410 --> 00:28:42,790 έχει συμβεί σε μένα ένα ζευγάρι time-- όπου τα χρώματα των προτροπές σας 617 00:28:42,790 --> 00:28:46,590 όλα μπέρδεμα πάνω, ή σας δεν είναι σε θέση να δείτε τίποτα 618 00:28:46,590 --> 00:28:51,232 πληκτρολόγηση όταν πληκτρολογείτε, επειδή Μερικές φορές, όπως το χρώμα του φόντου έχει οριστεί 619 00:28:51,232 --> 00:28:53,940 το ίδιο με το χρώμα προσκηνίου και τώρα δεν μπορείτε να δείτε τις γραμματοσειρές. 620 00:28:53,940 --> 00:28:55,110 621 00:28:55,110 --> 00:28:59,830 Επαναφορά είναι κάτι που επαναφέρει μόνο μπορείτε να το προεπιλεγμένο μαύρο φόντο, 622 00:28:59,830 --> 00:29:01,840 λευκό εμπρός, ή ο, τιδήποτε ορίσετε τους να. 623 00:29:01,840 --> 00:29:03,390 624 00:29:03,390 --> 00:29:04,790 >> Έτσι, πού ήμασταν; 625 00:29:04,790 --> 00:29:05,930 Βρείτε τελεία. 626 00:29:05,930 --> 00:29:09,360 Μέχρι τώρα τα πάντα παρελθόν αυτό σημείο περιορίζει τα αποτελέσματα 627 00:29:09,360 --> 00:29:11,450 σε κάτι που να ταιριάζει με το συγκεκριμένο μοτίβο. 628 00:29:11,450 --> 00:29:16,110 Εδώ, λοιπόν, θέλετε να αναζητήσετε πάντα με τη γάτα όνομα. 629 00:29:16,110 --> 00:29:17,300 Δεν έχω τίποτα. 630 00:29:17,300 --> 00:29:18,390 Γιατί συμβαίνει αυτό; 631 00:29:18,390 --> 00:29:21,230 Λοιπόν, είμαι απλά ψάχνουν για κάτι με αυτό ακριβώς το όνομα της γάτας. 632 00:29:21,230 --> 00:29:25,150 Αν θέλετε να αναζητήσετε κάτι ότι έχει κάποιο σχέδιο, και cat-- 633 00:29:25,150 --> 00:29:28,890 τα εισαγωγικά τεχνικά δεν είναι απαραίτητο, αλλά εγώ τους ρίχνουν εκεί. 634 00:29:28,890 --> 00:29:32,720 Έτσι, τώρα βρίσκει γάταγάτα επειδή αυτό είναι το μόνο πράγμα που 635 00:29:32,720 --> 00:29:36,040 έχει κάποιο αυθαίρετο μοτίβο που ακολουθείται από γάτα. 636 00:29:36,040 --> 00:29:41,950 Μπορώ να βάλω τη γάτα *, και τώρα βρείτε γάταγάτα, cat_dog, CAT2, 637 00:29:41,950 --> 00:29:45,245 γιατί όλα αυτά είναι τα πράγματα με τη γάτα στην αρχή που ακολουθείται από τίποτα. 638 00:29:45,245 --> 00:29:46,120 Μπορείτε να συνδυάσετε αυτό. 639 00:29:46,120 --> 00:29:50,480 Αν θέλετε να αναζητήσετε όλα τα αρχεία C ότι έχετε, μπορείτε να το κάνετε * .c. 640 00:29:50,480 --> 00:29:51,960 Έχουμε blah.c εδώ. 641 00:29:51,960 --> 00:29:53,000 642 00:29:53,000 --> 00:29:55,020 Οπότε αυτό είναι ένα εύρημα έργα. 643 00:29:55,020 --> 00:29:55,770 Μπορείτε να κάνετε αναζήτηση. 644 00:29:55,770 --> 00:29:58,270 Έχει ένα σωρό σημαίες για περαιτέρω περιορισμούς. 645 00:29:58,270 --> 00:30:00,960 Και ένας από αυτούς, ας πούμε -D. 646 00:30:00,960 --> 00:30:02,110 647 00:30:02,110 --> 00:30:04,435 Έτσι, αποδοκιμάζεται. 648 00:30:04,435 --> 00:30:05,425 649 00:30:05,425 --> 00:30:06,550 Ω, αυτό δεν είναι ό, τι θέλω. 650 00:30:06,550 --> 00:30:07,730 Δεν -d. 651 00:30:07,730 --> 00:30:08,860 Πληκτρολογήστε d. 652 00:30:08,860 --> 00:30:13,820 Έτσι βρείτε dot - τύπου δ. 653 00:30:13,820 --> 00:30:17,760 Έτσι τι ακριβώς έκανε είναι ψάχνω για όλα τα αρχεία στον τρέχοντα κατάλογο 654 00:30:17,760 --> 00:30:21,680 με a-- δ σημαίνει directory-- είδος καταλόγου. 655 00:30:21,680 --> 00:30:24,430 Αυτό επιστρέφει όλους τους καταλόγους στον τρέχοντα κατάλογο. 656 00:30:24,430 --> 00:30:27,670 Και τύπου F είναι όλα τακτική αρχεία, όλα τα μη καταλόγους. 657 00:30:27,670 --> 00:30:29,809 Έτσι, αυτό είναι μόνο ένα παράδειγμα των άλλων τρόπων σας 658 00:30:29,809 --> 00:30:32,350 μπορεί να περιορίσει την αναζήτηση άλλων παρά μόνο το όνομα του αρχείου. 659 00:30:32,350 --> 00:30:34,126 660 00:30:34,126 --> 00:30:35,570 >> Έχουν περάσει 30 λεπτά. 661 00:30:35,570 --> 00:30:36,848 Ακόμα πηγαίνει. 662 00:30:36,848 --> 00:30:38,132 >> ALLISON: Θα αεράκι μέσα. 663 00:30:38,132 --> 00:30:39,670 Θα είναι μια χαρά. 664 00:30:39,670 --> 00:30:41,460 >> ROB BOWDEN: Έτσι κάποια άλλα πράγματα. 665 00:30:41,460 --> 00:30:45,700 Τώρα κτύπημα, θαυμαστικό. 666 00:30:45,700 --> 00:30:50,530 Έτσι ώστε γενικά means-- καλά, ας δούμε ένα παράδειγμα. 667 00:30:50,530 --> 00:30:52,230 Έτσι! Στ, τι είναι ότι πρόκειται να κάνει; 668 00:30:52,230 --> 00:30:53,520 669 00:30:53,520 --> 00:30:57,810 Καλά φαίνεται να έχουν επαναλαμβανόμενη εύρημα dot -τύπου f. 670 00:30:57,810 --> 00:30:59,240 Τι γίνεται! G; 671 00:30:59,240 --> 00:31:00,760 Αυτό ακριβώς grep -r γάτα *. 672 00:31:00,760 --> 00:31:02,010 673 00:31:02,010 --> 00:31:05,720 Έτσι κτύπημα μπορείτε να χρησιμοποιήσετε για να επαναλάβετε μια τελειωμένη πρόσφατα εντολή. 674 00:31:05,720 --> 00:31:13,280 Έτσι, αν πληκτρολογήσετε! GRE, πρόκειται να επαναληφθεί οι εντολές που ξεκίνησε με Gre περισσότερα 675 00:31:13,280 --> 00:31:14,060 πρόσφατα. 676 00:31:14,060 --> 00:31:17,090 >> Και μπορείτε να δείτε όλα αυτά εντολές με την ιστορία. 677 00:31:17,090 --> 00:31:17,880 Έτσι η ιστορία. 678 00:31:17,880 --> 00:31:19,630 Όλα αυτά είναι η εντολές που έχω τρέξει σήμερα. 679 00:31:19,630 --> 00:31:21,089 680 00:31:21,089 --> 00:31:23,130 Και καλά, δεν είναι κυριολεκτικά περιορίζεται στο σήμερα, 681 00:31:23,130 --> 00:31:25,180 αλλά έχω χρησιμοποιήσει μόνο αυτό συσκευή από σήμερα. 682 00:31:25,180 --> 00:31:28,730 Είναι σύνολό σας από το Ιστορία του κελύφους bash σας, 683 00:31:28,730 --> 00:31:30,433 εκτός του ότι αποκόπτει σε κάποιο σημείο. 684 00:31:30,433 --> 00:31:33,474 ΚΟΙΝΟ: Τι θα συμβεί αν το κάνετε Ιστορία [δεν ακούγεται] εντολή και ένα λάθος 685 00:31:33,474 --> 00:31:35,430 το αποτέλεσμα θα εξακολουθεί να εκτυπώνει the-- 686 00:31:35,430 --> 00:31:44,110 >> ROB BOWDEN: Ναι, αν υπάρχει σφάλμα σε ένα από αυτά commands-- 687 00:31:44,110 --> 00:31:48,090 οπότε ας πούμε, ότι είναι ένα εντολή σφάλματος δεν βρέθηκε. 688 00:31:48,090 --> 00:31:49,312 689 00:31:49,312 --> 00:31:50,520 Εξακολουθεί να εμφανίζεται στην ιστορία. 690 00:31:50,520 --> 00:31:52,620 691 00:31:52,620 --> 00:31:53,170 Εντάξει. 692 00:31:53,170 --> 00:31:54,750 693 00:31:54,750 --> 00:31:56,040 Άλλες ερωτήσεις σχετικά με τίποτα; 694 00:31:56,040 --> 00:31:58,760 695 00:31:58,760 --> 00:32:00,300 Έτσι, αυτό είναι το κτύπημα. 696 00:32:00,300 --> 00:32:04,230 >> Τώρα, πραγματικά χρήσιμη εντολή, ο άνθρωπος. 697 00:32:04,230 --> 00:32:07,750 Έτσι ώστε να δίνει το οδηγίες για μια δεδομένη εντολή. 698 00:32:07,750 --> 00:32:11,640 Ας πούμε ότι ο άνθρωπος ls, έτσι αυτό μου δείχνει ls. 699 00:32:11,640 --> 00:32:13,400 Απαριθμεί τα περιεχόμενα του καταλόγου. 700 00:32:13,400 --> 00:32:17,150 Και αυτό είναι όπου βλέπω ότι υπάρχει είναι αυτές οι διάφορες σημαίες που υπάρχουν. 701 00:32:17,150 --> 00:32:21,340 Έτσι βλέπουμε ότι ls -l υπάρχει αν ήμασταν για να διαβάσετε αυτό. ls -l 702 00:32:21,340 --> 00:32:26,150 μου δίνει αυτή την πλήρη λίστα των κατάλογο με το ποιος ανήκει το αρχείο, 703 00:32:26,150 --> 00:32:29,750 το μέγεθος του αρχείου, η το τροποποιημένο timestamp. 704 00:32:29,750 --> 00:32:31,130 705 00:32:31,130 --> 00:32:34,980 Έτσι ls -a είναι ένα άλλο που μπορεί να χρησιμοποιούν πραγματικά κάπως συχνά. 706 00:32:34,980 --> 00:32:38,130 είναι -al πιο κοινά μου σημαία Αυτό το παρελθόν ls. 707 00:32:38,130 --> 00:32:42,520 >> Έτσι, -a, παρατηρούμε ότι υπάρχει μια πολύ περισσότερα αρχεία από ό, τι ακριβώς ls. 708 00:32:42,520 --> 00:32:44,170 ls -a. 709 00:32:44,170 --> 00:32:46,170 Τι κοινό με όλα αυτά τα αρχεία; 710 00:32:46,170 --> 00:32:47,790 Αρχίζουν με μια τελεία. 711 00:32:47,790 --> 00:32:54,710 Έτσι, αυτό είναι μια σύμβαση στο Linux ότι τα αρχεία που αρχίζουν με μια τελεία είναι κρυφό. 712 00:32:54,710 --> 00:32:58,330 Έτσι, αυτό σημαίνει απλώς ότι όταν εμείς απλά ευθεία ls, 713 00:32:58,330 --> 00:33:04,170 ή είμαστε η αναζήτηση αυτού του καταλόγου, χρησιμοποιώντας το ισοδύναμο finder, ή των Windows 714 00:33:04,170 --> 00:33:07,250 Ισοδύναμο Explorer, ότι εμείς Δεν θέλω να δω αυτά τα αρχεία τελεία. 715 00:33:07,250 --> 00:33:09,680 Απλώς μολύνουν την άποψη των πραγμάτων. 716 00:33:09,680 --> 00:33:11,790 Έτσι είναι κρυμμένες εκτός αν ρητά 717 00:33:11,790 --> 00:33:14,250 να ζητήσει με κάτι σαν -a. 718 00:33:14,250 --> 00:33:18,920 Έτσι μπορώ cd σε .local, και βλέπω ότι είναι η ίδια ένας κατάλογος με 719 00:33:18,920 --> 00:33:22,220 ένα κοινόχρηστο κατάλογο, και εφαρμογές, και μπλα μπλα μπλα. 720 00:33:22,220 --> 00:33:24,520 Έτσι dot, τα αρχεία είναι ακριβώς κρύβεται. 721 00:33:24,520 --> 00:33:26,250 722 00:33:26,250 --> 00:33:29,355 >> Εντάξει, έτσι ώστε οι άλλοι σημαντικότεροι από αυτούς. 723 00:33:29,355 --> 00:33:30,490 724 00:33:30,490 --> 00:33:32,000 Έχω ένα ζευγάρι που μπορώ να παρακάμψετε. 725 00:33:32,000 --> 00:33:38,160 Ας πραγματική γρήγορη συζήτηση για τα πράγματα και το αρχείο ανακατεύθυνσης. 726 00:33:38,160 --> 00:33:43,020 Έτσι, υπάρχει μια ολόκληρη σειρά πολύπλοκων από τα πράγματα που μπορείτε να κάνετε με αυτά, 727 00:33:43,020 --> 00:33:47,204 αλλά απλά να τους δούμε, ας πούμε, ηχώ. 728 00:33:47,204 --> 00:33:47,870 Μια άλλη εντολή. 729 00:33:47,870 --> 00:33:48,920 Πραγματικά χαζή εντολή. 730 00:33:48,920 --> 00:33:50,710 Το μόνο που κάνει είναι να εκτυπώσετε ό, τι μπορώ να πω για. 731 00:33:50,710 --> 00:33:52,070 Έτσι echo hello. 732 00:33:52,070 --> 00:33:53,850 Απλώς επανέλαβε γεια στην οθόνη. 733 00:33:53,850 --> 00:33:55,170 734 00:33:55,170 --> 00:33:56,390 Γεια σας κόσμο. 735 00:33:56,390 --> 00:33:57,890 Απόηχοι Hello World. 736 00:33:57,890 --> 00:34:02,650 >> Έτσι μια εντολή ή ένα σύμβολο ότι bash καταλαβαίνει 737 00:34:02,650 --> 00:34:07,620 Αυτό είναι μεγαλύτερο από το σύμβολο, και ότι είναι η έξοδος σε ένα σύμβολο αρχείο. 738 00:34:07,620 --> 00:34:10,940 Έτσι, αν έχω έξοδο αυτό να foo, υπάρχει τώρα ένα αρχείο 739 00:34:10,940 --> 00:34:15,100 ονομάζεται foo, στο εσωτερικό της η οποία είναι γειά σου κόσμο. 740 00:34:15,100 --> 00:34:18,489 Έτσι παρατηρούμε ότι, όταν Απηχώ Hello World σωλήνα σε foo, 741 00:34:18,489 --> 00:34:19,980 δεν echo hello κόσμο. 742 00:34:19,980 --> 00:34:22,630 Αντ 'αυτού, τέθηκε στο αρχείο foo. 743 00:34:22,630 --> 00:34:25,340 Και μια άλλη εντολή μόνο να ρίξει σε σας, γάτα. 744 00:34:25,340 --> 00:34:29,191 Αυτός είναι ένας εύκολος τρόπος για να απλά εντελώς δείτε τα περιεχόμενα του αρχείου 745 00:34:29,191 --> 00:34:31,440 έτσι ώστε να μην χρειάζεται να ανοίξετε ένα πρόγραμμα επεξεργασίας κειμένου για να τη δείτε. 746 00:34:31,440 --> 00:34:34,159 Έτσι τα περιεχόμενα του αρχείο foo είναι hello world. 747 00:34:34,159 --> 00:34:38,460 Και θα μπορούσα blah.c γάτα, το περιεχόμενο αυτό. 748 00:34:38,460 --> 00:34:42,123 >> Και πάλι, αυτά είναι εντολές που δεν κάνουν Περιμένω από εσάς έχετε όλα αυτά στη μνήμη. 749 00:34:42,123 --> 00:34:43,860 Η ιδέα είναι τα έχετε δει. 750 00:34:43,860 --> 00:34:45,735 Ίσως εργάζεστε σε κάτι, και είστε 751 00:34:45,735 --> 00:34:47,230 σαν να είμαι άρρωστος από το άνοιγμα αυτού του αρχείου. 752 00:34:47,230 --> 00:34:50,120 Μακάρι να μπορούσα να εξετάσουμε μόνο στα περιεχόμενα πραγματικά γρήγορα. 753 00:34:50,120 --> 00:34:52,320 Θα μπορούσατε να το κάνετε αυτό, στη συνέχεια, να κοιτάξουμε πίσω και να πούμε oh μου 754 00:34:52,320 --> 00:34:55,250 θυμάμαι κάτι σαν ότι υπάρχει, και αυτό είναι γάτα. 755 00:34:55,250 --> 00:35:00,630 >> Έτσι, ότι πρόκειται για ένα αρχείο. 756 00:35:00,630 --> 00:35:06,639 Τώρα δεν υπάρχει πραγματικά κανένα καλό παράδειγμα την ανάγνωση από ένα αρχείο ακόμα. 757 00:35:06,639 --> 00:35:08,930 Τι είναι κάτι που παίρνει κάτι από το πρότυπο; 758 00:35:08,930 --> 00:35:10,010 759 00:35:10,010 --> 00:35:11,544 Οποιαδήποτε απλή εντολή του Linux; 760 00:35:11,544 --> 00:35:13,480 761 00:35:13,480 --> 00:35:16,970 Όταν φτάσουμε εκεί, σε ένα ζευγάρι εβδομάδες όλες οι piece-- καλά, 762 00:35:16,970 --> 00:35:20,470 αυτή την εβδομάδα θα έχουν ένα κομμάτι, όπου μπορείτε αρχίσετε να παίρνετε είσοδο από το χρήστη. 763 00:35:20,470 --> 00:35:23,696 Και έτσι συνήθως πληκτρολογείτε ότι η είσοδος στο πληκτρολόγιο. 764 00:35:23,696 --> 00:35:25,570 Αντί να πληκτρολογείτε ότι είσοδος στο πληκτρολόγιο, 765 00:35:25,570 --> 00:35:30,950 Εναλλακτικά, μπορείτε να σωλήνα από ένα αρχείο έτσι ώστε όταν κάνετε Mario, ./mario, 766 00:35:30,950 --> 00:35:35,200 σωλήνα από οποιοδήποτε δεδομένο αρχείο, και ότι πρόκειται να εκτελέσετε το πρόγραμμα Mario. 767 00:35:35,200 --> 00:35:37,300 Δεν περίμενα εισόδου σε το πληκτρολόγιο, αντί να είναι 768 00:35:37,300 --> 00:35:39,650 ακριβώς πρόκειται να διαβάσετε το γραμμές από το αρχείο foo. 769 00:35:39,650 --> 00:35:45,230 >> Έτσι, μεγαλύτερη από foo που θέτει σε το αρχείο foo, και λιγότερο από το foo 770 00:35:45,230 --> 00:35:50,170 παίρνει πράγματα από το αρχείο foo και ότι χρησιμοποιεί ως είσοδο σε αυτό το πρόγραμμα. 771 00:35:50,170 --> 00:35:51,520 772 00:35:51,520 --> 00:36:00,630 Και ακριβώς για να το δείτε, θα μπορούσαμε επίσης να επαναλάβω foo bar Baz, και στη συνέχεια, αντί του ενός 773 00:36:00,630 --> 00:36:03,850 μεγαλύτερη από ό, τι, ας κάνουμε δύο σε foo. 774 00:36:03,850 --> 00:36:05,610 Τι πάει να κάνει; 775 00:36:05,610 --> 00:36:07,180 Είναι απλά προσαρτά στο αρχείο. 776 00:36:07,180 --> 00:36:15,360 Έτσι, αντί να παρατηρήσετε αν το κάνω echo μπλα σε foo και στη συνέχεια foo γάτα, είναι απλά μπλα. 777 00:36:15,360 --> 00:36:18,285 Έτσι, όταν εξόδου σε ένα αρχείο αυτό, αντικαθιστά εντελώς αυτό το αρχείο. 778 00:36:18,285 --> 00:36:19,330 779 00:36:19,330 --> 00:36:22,740 Αν απλά θέλετε να προσαρτήσετε, διπλά [; γκρέιντερ. ?] 780 00:36:22,740 --> 00:36:24,080 >> Και τελευταίο είναι σωλήνα. 781 00:36:24,080 --> 00:36:29,590 Pipe παίρνει πολύ πιο περίπλοκη, όπου παίρνει την έξοδο μιας εντολής 782 00:36:29,590 --> 00:36:32,320 και τροφοδοτεί την επόμενη εντολή. 783 00:36:32,320 --> 00:36:36,140 Έτσι κάποιες κοινό πράγμα, ιστορία. 784 00:36:36,140 --> 00:36:37,920 Έτσι, ugh, δεν θέλω να εξετάσουμε αυτό το θέμα. 785 00:36:37,920 --> 00:36:40,680 786 00:36:40,680 --> 00:36:44,485 Δείξε μου όλες τις εντολές στην ιστορία μου όπου grep-ΕΔ για κάτι. 787 00:36:44,485 --> 00:36:45,360 Όχι, αυτό είναι συγκεχυμένη. 788 00:36:45,360 --> 00:36:50,360 Δείξε μου όλες τις εντολές όπου βρίσκω. 789 00:36:50,360 --> 00:36:52,360 Όλα βρείτε εντολές ποτέ έτρεξε. 790 00:36:52,360 --> 00:36:55,050 >> Έτσι η ιστορία. 791 00:36:55,050 --> 00:36:59,017 Τώρα εξόδους ιστορία με το οθόνη αυτή τη λίστα των εντολών, 792 00:36:59,017 --> 00:37:00,850 αλλά δεν θέλω να εξόδου στην μεγάλη οθόνη. 793 00:37:00,850 --> 00:37:03,445 Αντ 'αυτού Πάω να το σωλήνα στο grep. 794 00:37:03,445 --> 00:37:04,790 795 00:37:04,790 --> 00:37:07,830 Ας grep για όλες τις περιπτώσεις των εύρημα. 796 00:37:07,830 --> 00:37:09,550 797 00:37:09,550 --> 00:37:17,000 Έτσι τώρα, αντί της grep λήψη η είσοδος, αντί of-- 798 00:37:17,000 --> 00:37:24,360 grep είναι σε θέση να χειριστεί όπως input-- είμαστε χρησιμοποιώντας grep ελαφρώς διαφορετικά εδώ. 799 00:37:24,360 --> 00:37:29,550 Έτσι, αντί να πληκτρολογήσετε τον κατάλογο των τα πράγματα που θέλαμε να αναζητήσετε 800 00:37:29,550 --> 00:37:31,070 και είπε grep λαμβάνει ως είσοδο. 801 00:37:31,070 --> 00:37:34,810 Έτσι, αν το κάνω ακριβώς grep βρείτε, περιμένει για μένα να πληκτρολογήσετε τα πράγματα. 802 00:37:34,810 --> 00:37:37,661 Έτσι γάτα γεια βρείτε. 803 00:37:37,661 --> 00:37:38,160 Γεια σας. 804 00:37:38,160 --> 00:37:40,430 805 00:37:40,430 --> 00:37:40,930 Βρείτε. 806 00:37:40,930 --> 00:37:43,670 Παρατηρήστε κάθε φορά που πληκτρολογείτε βρείτε αναγνωρίζει ότι έχω πληκτρολογήσει εύρημα. 807 00:37:43,670 --> 00:37:44,880 808 00:37:44,880 --> 00:37:49,540 Έτσι, αντί αυτού, θα Αναζητά αρχεία για εύρημα. 809 00:37:49,540 --> 00:37:53,930 >> Έτσι, η ιστορία είναι τώρα πρόκειται να εξαγάγετε μια λίστα με όλες τις εντολές. 810 00:37:53,930 --> 00:37:55,200 811 00:37:55,200 --> 00:37:58,100 Βάζουμε ότι η παραγωγή, και είμαστε σίτιση να grep, 812 00:37:58,100 --> 00:38:00,180 και γι 'αυτό το φτύσιμο Όλες οι περιπτώσεις του ευρήματος. 813 00:38:00,180 --> 00:38:02,170 814 00:38:02,170 --> 00:38:05,570 Ο λόγος που είπα ότι ήθελα να προκαλεί σύγχυση είναι αν I-- είναι ακόμα συγκεχυμένη. 815 00:38:05,570 --> 00:38:07,030 Αν grep για grep. 816 00:38:07,030 --> 00:38:08,755 817 00:38:08,755 --> 00:38:11,130 Σημειώστε ότι είναι λίγο πολύ πάντα δείχνει την εντολή που μόλις 818 00:38:11,130 --> 00:38:15,280 έτρεξε επειδή εκείνη την εντολή η ίδια έχει grep μέσα από αυτό. 819 00:38:15,280 --> 00:38:16,580 820 00:38:16,580 --> 00:38:20,674 >> Εντάξει, έτσι οποιεσδήποτε ερωτήσεις σχετικά με τίποτα; 821 00:38:20,674 --> 00:38:22,340 Και εγώ θα το μεταφέρει πάνω σε αυτό το σημείο. 822 00:38:22,340 --> 00:38:24,690 Ας ελπίσουμε ότι αυτό είναι ένα ωραίο επισκόπηση όλων των εντολών 823 00:38:24,690 --> 00:38:30,100 ότι δεν χρειάζεται να έχουν μνήμη, αλλά αυτά συνθέτουν 824 00:38:30,100 --> 00:38:32,950 ένα στερεό 95% του ό, τι κάνει στη γραμμή εντολών. 825 00:38:32,950 --> 00:38:34,310 826 00:38:34,310 --> 00:38:39,140 Επίσης, να έχετε κατά νου ότι η γραμμή εντολών η ίδια, bash είναι μια γλώσσα προγραμματισμού, 827 00:38:39,140 --> 00:38:43,070 και έτσι όταν πιάσουμε αυτό, σας ίσως να θέλετε να το κάνετε πραγματικά πολύπλοκα πράγματα. 828 00:38:43,070 --> 00:38:47,522 Και γι 'αυτό έχει πράγματα όπως βρόχους, και IFS, και όλα εκείνα 829 00:38:47,522 --> 00:38:50,230 ότι θα πάμε να το συνηθίσετε με γλώσσες προγραμματισμού σας. 830 00:38:50,230 --> 00:38:53,660 Αλλά αυτό είναι πέρα ​​από το πεδίο εφαρμογής του παρόντος τμήματος. 831 00:38:53,660 --> 00:38:55,520 832 00:38:55,520 --> 00:38:56,985 Εντάξει, έτσι δεν υπάρχουν ερωτήσεις; 833 00:38:56,985 --> 00:38:57,940 834 00:38:57,940 --> 00:38:58,523 ALLISON: Κανένας; 835 00:38:58,523 --> 00:38:59,450 GABRIEL: Σκοπεύετε to-- 836 00:38:59,450 --> 00:39:01,158 ALLISON: μπορώ να το κάνω για τη δική μου, αν θέλετε. 837 00:39:01,158 --> 00:39:02,626 Μπορούμε να δούμε τι θα συμβεί. 838 00:39:02,626 --> 00:39:03,750 ROB BOWDEN: Off για Allison. 839 00:39:03,750 --> 00:39:05,090 ALLISON: Woo. 840 00:39:05,090 --> 00:39:07,504 Είσαι μια σκληρή πράξη που θα ακολουθήσει, Rob. 841 00:39:07,504 --> 00:39:08,920 Θέλεις να μεταβείτε με σας; 842 00:39:08,920 --> 00:39:10,246 Ή έχεις, εντάξει. 843 00:39:10,246 --> 00:39:13,590 844 00:39:13,590 --> 00:39:16,990 Πάω να προσπαθήσουμε και να μην αρκετά είναι χρονοβόρες εκεί. 845 00:39:16,990 --> 00:39:20,619 846 00:39:20,619 --> 00:39:22,660 Ας δούμε αν αυτό θα λειτουργεί με τον τρόπο που θέλω να. 847 00:39:22,660 --> 00:39:26,170 848 00:39:26,170 --> 00:39:26,670 Ίσως; 849 00:39:26,670 --> 00:39:27,760 850 00:39:27,760 --> 00:39:28,296 Χαχα! 851 00:39:28,296 --> 00:39:28,796 Ναι. 852 00:39:28,796 --> 00:39:30,460 853 00:39:30,460 --> 00:39:34,066 >> Έτσι, είμαι απλώς πρόκειται να πάει πολύ γρήγορα μέσω μεταβλητών, βρόχους, υποθετικοί, 854 00:39:34,066 --> 00:39:35,440 και λίγο για τον compiler. 855 00:39:35,440 --> 00:39:38,570 Αν έχετε ερωτήσεις οποιαδήποτε στιγμή, παρακαλώ να με σταματήσει. 856 00:39:38,570 --> 00:39:42,750 Αυτά τα παιδιά θα μου θυμίζει να επαναλάβω ερώτησή σας σε περίπτωση που ξεχάσω, 857 00:39:42,750 --> 00:39:44,210 αλλά δεν πρέπει να είναι πάρα πολύ κακό. 858 00:39:44,210 --> 00:39:45,850 >> Έτσι μεταβλητές, ναι. 859 00:39:45,850 --> 00:39:48,060 Δεν έχουμε έναν από σας Scratch κομμάτια εδώ. 860 00:39:48,060 --> 00:39:50,440 Είμαι βέβαιος ότι οι περισσότεροι από εσάς, εάν είχατε κάποιο είδος του παιχνιδιού 861 00:39:50,440 --> 00:39:53,810 που δημιουργήσατε με το Scratch, είχατε να παρακολουθείτε κάτι σαν βαθμολογία, 862 00:39:53,810 --> 00:39:55,870 ή το χρόνο, ή κάτι τέτοιο. 863 00:39:55,870 --> 00:39:58,080 Έτσι, αυτά τα φωτεινά πορτοκαλί κομμάτια που βλέπουμε εκεί 864 00:39:58,080 --> 00:40:02,630 είναι ακριβώς η μορφή του Scratch μεταβλητές, και θα είστε σίγουρα 865 00:40:02,630 --> 00:40:04,640 είναι η χρήση των μεταβλητών όλα τα προγράμματα σας. 866 00:40:04,640 --> 00:40:07,350 Αν δεν είστε, δεν είμαι πραγματικά σίγουροι για το τι κάνετε. 867 00:40:07,350 --> 00:40:09,000 868 00:40:09,000 --> 00:40:12,215 >> Αλλά έτσι κι αλλιώς, μεγάλο πράγμα, ορισμό μεταβλητών. 869 00:40:12,215 --> 00:40:13,630 870 00:40:13,630 --> 00:40:16,970 Με C κάθε μεταβλητή έχει να έχουν ένα είδος δηλωθεί, 871 00:40:16,970 --> 00:40:22,090 Γι 'αυτό σας έδωσε μια πολύ γενικά ένα στην κορυφή. 872 00:40:22,090 --> 00:40:24,045 Έτσι θα έχετε σας Τύπος και, στη συνέχεια, ανεξάρτητα από 873 00:40:24,045 --> 00:40:25,420 αν αποφασίσετε να καλέσετε μεταβλητή σας. 874 00:40:25,420 --> 00:40:27,500 875 00:40:27,500 --> 00:40:29,680 Έτσι, σε αυτή την περίπτωση, ο τύπος στη λίστα μεταβλητών σας. 876 00:40:29,680 --> 00:40:31,400 >> Έχουμε τρία παραδείγματα. 877 00:40:31,400 --> 00:40:34,439 Χαρ κάποιου βαθμού, ενός Α, το οποίο είναι αυτό 878 00:40:34,439 --> 00:40:36,230 Είμαι βέβαιος ότι όλοι θέλετε να έρθετε σε αυτή την κατηγορία. 879 00:40:36,230 --> 00:40:37,380 880 00:40:37,380 --> 00:40:40,670 Μπορείτε να ορίσετε πολλαπλές μεταβλητές σε μια γραμμή 881 00:40:40,670 --> 00:40:43,880 εφ 'όσον είμαστε όλοι το ίδιο είδος, το οποίο είναι το δεύτερο παράδειγμα μας εκεί 882 00:40:43,880 --> 00:40:46,409 όπου έχετε τρεις μεταβλητές, x, y και z. 883 00:40:46,409 --> 00:40:47,200 Είναι όλα τα άρματα. 884 00:40:47,200 --> 00:40:49,160 885 00:40:49,160 --> 00:40:53,250 Και στη συνέχεια, μπορείτε επίσης, σε αυτή την τελευταία παράδειγμα με βαθμολογία int και ο αριθμός 886 00:40:53,250 --> 00:40:56,510 των ομάδων, μπορείτε να η προετοιμασία τους εκεί. 887 00:40:56,510 --> 00:41:01,270 >> Έτσι, στη μέση παράδειγμα όπου έχουμε Απλά πρέπει πλωτήρα του x, y, και z, 888 00:41:01,270 --> 00:41:02,730 εκείνων που δεν έχουν προετοιμαστεί ακόμα. 889 00:41:02,730 --> 00:41:04,140 Δεν έχουν καμία αξία. 890 00:41:04,140 --> 00:41:05,600 Ή έχουν τιμές σκουπίδια. 891 00:41:05,600 --> 00:41:07,370 892 00:41:07,370 --> 00:41:10,790 Και αν προσπαθήσετε και να τα χρησιμοποιούν, ο compiler θα φωνάζω σε σας. 893 00:41:10,790 --> 00:41:14,727 Θα πρέπει να δηλώσουν και οι δύο αρχικοποιήσει τις μεταβλητές σας. 894 00:41:14,727 --> 00:41:16,310 Έτσι, σε αυτό το τελευταίο, κάνουμε και τα δύο. 895 00:41:16,310 --> 00:41:19,320 Είμαστε δηλώνοντας μεταβλητές της βαθμολογίας και τον αριθμό των ομάδων, 896 00:41:19,320 --> 00:41:24,134 και εμείς τους αρχικοποίηση, δίνοντας τους αρχικές τιμές τους 7 και 4 897 00:41:24,134 --> 00:41:24,675 αντίστοιχα. 898 00:41:24,675 --> 00:41:26,310 899 00:41:26,310 --> 00:41:27,190 Cool. 900 00:41:27,190 --> 00:41:28,550 Όλοι καλό; 901 00:41:28,550 --> 00:41:29,470 Awesome. 902 00:41:29,470 --> 00:41:31,690 >> Εντάξει, έτσι μερικοί συμβάσεις. 903 00:41:31,690 --> 00:41:35,965 Αν τα παιδιά έχουν διαβάσει μέσω του στυλ 50, αυτά 904 00:41:35,965 --> 00:41:39,510 είναι απλά πράγματα που θα θέλαμε για μπορείτε να εφαρμόσουν το στυλ σας. 905 00:41:39,510 --> 00:41:41,230 Έτσι νόημα ονόματα. 906 00:41:41,230 --> 00:41:45,700 Αν ξεκινήσετε καλώντας τα πράγματα μόλις x, y και z, ειδικά 907 00:41:45,700 --> 00:41:47,902 όπως μπορείτε να πάρετε σε μακρύτερη προγράμματα, είστε 908 00:41:47,902 --> 00:41:49,610 κατά πάσα πιθανότητα πρόκειται να συγχέουμε τον εαυτό σας και να είναι 909 00:41:49,610 --> 00:41:52,930 όπως τι είναι αυτή η μεταβλητή αναφέρεται. 910 00:41:52,930 --> 00:41:55,880 Δεν έχω καμία ιδέα για το τι σημαίνει αυτό. 911 00:41:55,880 --> 00:41:59,280 >> Έτσι, αν είναι γραφτό να κρατήσει ένα σκορ, το αποκαλούν σκοράρει. 912 00:41:59,280 --> 00:42:05,720 Αν είναι γραφτό να κρατήσει κάποια απάντηση ή ως αποτέλεσμα, να του δώσετε ένα όνομα σαν αυτό. 913 00:42:05,720 --> 00:42:09,920 Για βρόχους, το οποίο θα μπει στην επόμενη διαφάνεια, 914 00:42:09,920 --> 00:42:12,985 μόνο μεταβλητές επιστολή είναι μια χαρά. 915 00:42:12,985 --> 00:42:16,033 916 00:42:16,033 --> 00:42:18,449 ROB BOWDEN: Ι, J, και Κ είναι μόνο συμβάσεις για για βρόχους 917 00:42:18,449 --> 00:42:22,050 ότι ο καθένας αναμένει από αυτές να ονομάζεται i, j και k. 918 00:42:22,050 --> 00:42:26,890 Μπορείτε να καλέσετε them-- βλέπω σειρά στήλη ή γραμμή κλήσης μερικές φορές 919 00:42:26,890 --> 00:42:29,450 για δύο ένθετους βρόχους, και ότι είναι, επίσης, το είδος του προτύπου. 920 00:42:29,450 --> 00:42:31,450 Αλλά i και j είναι πλήρως κατανοητός. 921 00:42:31,450 --> 00:42:33,670 >> ALLISON: Ναι, έχω και ι είστε εντελώς καλά. 922 00:42:33,670 --> 00:42:36,250 Για λόγους σαφήνειας, όπως σε μερικά από τα σύνολα σας Ρ, 923 00:42:36,250 --> 00:42:39,745 θα μπορούσε να έχει νόημα να έχουμε περισσότερα περιγραφικά πράγματα εκεί ακριβώς 924 00:42:39,745 --> 00:42:40,920 να παρακολουθείτε αυτό. 925 00:42:40,920 --> 00:42:45,100 Αλλά νομίζω ότι i, j, και k νομίζω η συντριπτική πλειοψηφία από εμάς το σύνολο της χρήσης. 926 00:42:45,100 --> 00:42:46,890 927 00:42:46,890 --> 00:42:50,340 >> ROB BOWDEN: Με αυτά συμβάσεις, τόσο το ύφος είναι σημαντικό. 928 00:42:50,340 --> 00:42:53,520 Είναι ένας από τους τέσσερις άξονες στην οποία είστε βαθμολογούνται, 929 00:42:53,520 --> 00:42:58,110 και είναι τόσο εύκολο να πήγαινε πάνω P σας που στο τέλος και να βεβαιωθείτε 930 00:42:58,110 --> 00:42:59,770 ότι δεν υπάρχουν στυλιστικές λάθη. 931 00:42:59,770 --> 00:43:01,742 Έτσι, βεβαιωθείτε ότι είστε tabbing σωστά. 932 00:43:01,742 --> 00:43:03,200 Βεβαιωθείτε ότι οι μεταβλητές σας με το όνομα. 933 00:43:03,200 --> 00:43:04,450 Αφήστε μερικά σχόλια. 934 00:43:04,450 --> 00:43:06,677 Είναι πολύ εύκολο να πάρετε τα σημεία. 935 00:43:06,677 --> 00:43:09,510 Δεν χρειάζεται να σκεφτείτε οτιδήποτε προκειμένου να πάρει εκείνα τα σημεία. 936 00:43:09,510 --> 00:43:11,093 Δεν χρειάζεται να καταλάβω τίποτα. 937 00:43:11,093 --> 00:43:12,640 Είναι ακριβώς κάνει το βλέμμα της όμορφη. 938 00:43:12,640 --> 00:43:14,850 >> ALLISON: Στην πραγματικότητα, εμείς έχουν στυλ 50, η οποία 939 00:43:14,850 --> 00:43:17,920 θα σας πω πού είστε μπέρδεμα επάνω εάν είστε μπέρδεμα πάνω στο στυλ 940 00:43:17,920 --> 00:43:21,180 και θα σας πω ακριβώς τι πρέπει να καθορίσει και το πώς θα πρέπει να το διορθώσετε. 941 00:43:21,180 --> 00:43:23,900 Είναι, επίσης, απλά καλό να αναφέρουμε ότι είναι η πολιτική πορεία 942 00:43:23,900 --> 00:43:27,200 ότι αν είστε στο γραφείο ώρες και ο κωδικός σας είναι ένα χάος, 943 00:43:27,200 --> 00:43:30,200 μπορούμε να αρνηθεί να βοηθήσει σας μέχρι να φαίνεται καλύτερο. 944 00:43:30,200 --> 00:43:34,310 Έτσι ξεκινούν σωστά, κρατήσει συνεπές ύφος, 945 00:43:34,310 --> 00:43:37,100 είστε επίσης ακριβώς πρόκειται να κάνει τη ζωή σας πολύ πιο εύκολη όταν 946 00:43:37,100 --> 00:43:38,730 που προσπαθείτε να περάσετε από τον εντοπισμό σφαλμάτων. 947 00:43:38,730 --> 00:43:41,510 Εάν προσπαθείτε να καταλάβω όπου χάνετε μια σγουρά στήριγμα 948 00:43:41,510 --> 00:43:44,890 και βρίσκονται σε όλη τη χώρα, είστε απλά κάνοντας τη δική σας ζωή πιο δύσκολη. 949 00:43:44,890 --> 00:43:47,217 Έτσι, είναι συνεπής με στυλ. 950 00:43:47,217 --> 00:43:48,800 Υπόσχομαι ότι θα κάνουν τη ζωή σας πιο εύκολη. 951 00:43:48,800 --> 00:43:50,330 Θα κάνουν τη ζωή μας ευκολότερη. 952 00:43:50,330 --> 00:43:51,869 Ο καθένας θα είναι πολύ πιο ευτυχισμένοι. 953 00:43:51,869 --> 00:43:52,910 Και αυτό είναι ό, τι θέλετε. 954 00:43:52,910 --> 00:43:54,192 955 00:43:54,192 --> 00:43:55,650 GABRIEL: βαθμός σας θα είναι υψηλότερο. 956 00:43:55,650 --> 00:43:56,858 ALLISON: Ναι, και το βαθμό σας. 957 00:43:56,858 --> 00:43:58,410 958 00:43:58,410 --> 00:44:01,930 Αν TF σας είναι σαν εσάς, τείνει να είναι ευνοϊκή. 959 00:44:01,930 --> 00:44:02,940 960 00:44:02,940 --> 00:44:05,010 Εντάξει, και στη συνέχεια, μόλις το δεύτερο σημείο εδώ. 961 00:44:05,010 --> 00:44:06,300 Συνεπής initializations. 962 00:44:06,300 --> 00:44:09,605 Έτσι, όπως είδαμε, μπορείτε να δηλώσετε και να προετοιμάσει τα πράγματα. 963 00:44:09,605 --> 00:44:10,750 964 00:44:10,750 --> 00:44:13,180 Πολλαπλές μεταβλητές στην ίδια γραμμή. 965 00:44:13,180 --> 00:44:17,930 Ένα πράγμα που θα θέλαμε, δεν να κάνουμε είναι να δηλώσει κάποιες μεταβλητές 966 00:44:17,930 --> 00:44:21,360 και όχι να τους προετοιμάσει για την ίδια γραμμή που είστε αρχικοποίηση άλλους. 967 00:44:21,360 --> 00:44:23,960 >> Έτσι, σε περίπτωση που γίνει δεν βγάζει νόημα, 968 00:44:23,960 --> 00:44:29,050 έχουμε το παράδειγμα εδώ όπου είμαστε δηλώνοντας ints 969 00:44:29,050 --> 00:44:31,180 στις μεταβλητές των τριμήνων δεκάρες και τις πένες, 970 00:44:31,180 --> 00:44:34,214 αλλά τρίμηνα και πένες δεν έχουν αρχική τιμή. 971 00:44:34,214 --> 00:44:36,630 Δεν έχουμε να προετοιμαστεί, αλλά ακριβώς στη μέση εκεί 972 00:44:36,630 --> 00:44:38,600 έχουμε ήδη προετοιμαστεί δεκάρες σε 0. 973 00:44:38,600 --> 00:44:41,650 Έτσι, είτε κάνετε τρίμηνα, δεκάρες, πένες. 974 00:44:41,650 --> 00:44:43,170 Ή μήπως τέταρτα ισούται με 0. 975 00:44:43,170 --> 00:44:43,930 Δεκάρες ισούται με 0. 976 00:44:43,930 --> 00:44:46,810 Πέννες ισούται με 0, ή οτιδήποτε άλλο οι αρχικές τιμές είναι. 977 00:44:46,810 --> 00:44:49,800 >> Μεγάλο πράγμα με στυλ, να είναι συνεπής. 978 00:44:49,800 --> 00:44:51,050 Σε περίπτωση αμφιβολίας, να είναι συνεπής. 979 00:44:51,050 --> 00:44:52,129 980 00:44:52,129 --> 00:44:53,420 Αλλά ακολουθήστε τον οδηγό στυλ μας πάρα πολύ. 981 00:44:53,420 --> 00:44:54,710 982 00:44:54,710 --> 00:44:55,317 Cool. 983 00:44:55,317 --> 00:44:56,150 Όλοι καλά εκεί; 984 00:44:56,150 --> 00:44:57,566 >> ΚΟΙΝΟ: Πού είναι ο οδηγός στυλ; 985 00:44:57,566 --> 00:45:00,800 ALLISON: Ο οδηγός στυλ είναι on-- τι είναι η ιστοσελίδα; 986 00:45:00,800 --> 00:45:03,950 >> GABRIEL: Νομίζω ότι είναι manual.cs50.net/-- 987 00:45:03,950 --> 00:45:04,575 ALLISON: Style; 988 00:45:04,575 --> 00:45:05,610 989 00:45:05,610 --> 00:45:06,390 >> GABRIEL: Στυλ. 990 00:45:06,390 --> 00:45:06,920 Ναι. 991 00:45:06,920 --> 00:45:07,520 >> ALLISON: Ναι. 992 00:45:07,520 --> 00:45:10,150 Έτσι ερώτημα, πού είναι το στυλ 50. 993 00:45:10,150 --> 00:45:12,250 manual.cs50.net/style. 994 00:45:12,250 --> 00:45:13,639 Ναι; 995 00:45:13,639 --> 00:45:16,880 >> ΚΟΙΝΟ: Αν είμαστε ορισμό μεταβλητές, είναι εντάξει 996 00:45:16,880 --> 00:45:28,145 αν βάλουμε σαν [δεν ακούγεται] όπως βαθμολογία int και στη συνέχεια int στόχος. 997 00:45:28,145 --> 00:45:29,873 998 00:45:29,873 --> 00:45:35,100 Έτσι, θα λέγατε ότι τώρα έχουμε πήρε να τους καθορίσουν από κοινού; 999 00:45:35,100 --> 00:45:37,640 >> ALLISON: Έτσι ερώτηση, θα πρέπει να έχετε περιττό κώδικα 1000 00:45:37,640 --> 00:45:40,940 όταν καθορίζετε μεταβλητές, όπως η βαθμολογία int και 1001 00:45:40,940 --> 00:45:43,239 στην επόμενη γραμμή παιχνίδι int; 1002 00:45:43,239 --> 00:45:46,030 ROB BOWDEN: Υπάρχουν σίγουρα περιπτώσεις όπου ο πλεονάζων κώδικα είναι κακό. 1003 00:45:46,030 --> 00:45:47,738 Εγώ δεν θα εξετάσει ότι περιττές κώδικα. 1004 00:45:47,738 --> 00:45:50,970 Εγώ σχεδόν ποτέ δεν δηλώνουν πολλαπλές μεταβλητές στην ίδια γραμμή ποτέ. 1005 00:45:50,970 --> 00:45:53,736 Και αν μη τι άλλο, αυτό συμβαίνει γιατί Συνήθως αφήνω κάποιο σχόλιο 1006 00:45:53,736 --> 00:45:55,235 εξηγώντας ποια είναι η μεταβλητή είναι για. 1007 00:45:55,235 --> 00:45:57,582 Γι 'αυτό θα πω βαθμολογία int κάθετο κάθετο. 1008 00:45:57,582 --> 00:45:59,350 Κρατά οτιδήποτε. 1009 00:45:59,350 --> 00:46:00,710 Συνολικά κάθετο κάθετο. 1010 00:46:00,710 --> 00:46:01,790 1011 00:46:01,790 --> 00:46:06,455 Γι 'αυτό είναι πολύ χονδροειδή με αυτόν τον τρόπο να τα βάζουμε όλα στην ίδια γραμμή. 1012 00:46:06,455 --> 00:46:08,080 Απλώς ποτέ δεν τα βάζουμε στην ίδια γραμμή. 1013 00:46:08,080 --> 00:46:10,580 >> ALLISON: Νιώθω σαν να είναι προσωπική προτίμηση σε αυτό το σημείο. 1014 00:46:10,580 --> 00:46:14,900 >> ΚΟΙΝΟ: Μήπως ότι πάμε για για βρόχους και πράγματα πάρα πολύ; 1015 00:46:14,900 --> 00:46:15,900 ROB BOWDEN: Όπως και στο εσωτερικό; 1016 00:46:15,900 --> 00:46:18,282 Όπως int i ισούται με 0 κόμμα μήκος ισούται με κάτι; 1017 00:46:18,282 --> 00:46:19,490 Ότι δεν έχετε μια επιλογή. 1018 00:46:19,490 --> 00:46:21,850 1019 00:46:21,850 --> 00:46:25,910 Με θηλιές για την προετοιμασία part-- έτσι μπορεί να έχετε δει μόνο 1020 00:46:25,910 --> 00:46:31,520 int i ισούται με 0 ερωτηματικό i λιγότερο από ό, τι ερωτηματικό i συν συν. 1021 00:46:31,520 --> 00:46:33,820 Αυτό int i ισούται με 0, τεχνικά μπορείτε επίσης 1022 00:46:33,820 --> 00:46:35,770 κάνει ό, τι είδαμε πριν με τη σύνταξη κόμμα. 1023 00:46:35,770 --> 00:46:39,790 int i ισούται με 0 κόμμα j ισούται με 3 κόμμα k ισούται με 5. 1024 00:46:39,790 --> 00:46:41,610 1025 00:46:41,610 --> 00:46:44,320 Δεν έχετε την επιλογή να χωρίσει ότι μέχρι και σε πολλαπλές γραμμές, 1026 00:46:44,320 --> 00:46:46,530 και αυτό είναι στάνταρ. 1027 00:46:46,530 --> 00:46:47,780 Βλέποντας ότι δεν υπάρχει πρόστιμο. 1028 00:46:47,780 --> 00:46:49,182 1029 00:46:49,182 --> 00:46:49,890 ALLISON: Awesome. 1030 00:46:49,890 --> 00:46:52,120 Λοιπόν, βολικό segue σε βρόχους. 1031 00:46:52,120 --> 00:46:54,860 1032 00:46:54,860 --> 00:46:58,980 Οπότε ναι, εδώ έχουμε μερικά παραδείγματα των βρόχων ότι εσείς είδε στο Ξυστό. 1033 00:46:58,980 --> 00:47:01,550 Και φυσικά όλα αυτά μπορεί απλά να ανασυνταχθεί σε C. 1034 00:47:01,550 --> 00:47:04,610 Και θα σας επιτρέψει βασικά να επαναλάβω κάποια ενότητα του κώδικα 1035 00:47:04,610 --> 00:47:06,740 μέχρι μια ορισμένη κατάσταση πληρούται, η οποία θα 1036 00:47:06,740 --> 00:47:09,198 μπει αμέσως μετά μιλάμε για βρόχους με υποθετικοί. 1037 00:47:09,198 --> 00:47:11,150 1038 00:47:11,150 --> 00:47:12,570 >> Έτσι έχουμε τρεις βασικούς τύπους. 1039 00:47:12,570 --> 00:47:17,500 Για, ενώ, και κάνουν, ενώ, το οποίο όλοι θα περάσουν από τώρα. 1040 00:47:17,500 --> 00:47:18,860 Έτσι, η πρώτη είναι για βρόχους. 1041 00:47:18,860 --> 00:47:20,490 1042 00:47:20,490 --> 00:47:25,034 Έτσι, για κάποια κατάσταση, εκτελέσει αυτό το μπλοκ του κώδικα. 1043 00:47:25,034 --> 00:47:27,200 Έχουμε αυτό το δροσερό μικρό διάγραμμα εδώ στο κάτω μέρος. 1044 00:47:27,200 --> 00:47:28,230 1045 00:47:28,230 --> 00:47:32,310 Αλλά βασικά έχετε στο για σας, ότι η πρώτη γραμμή, 1046 00:47:32,310 --> 00:47:34,240 θα πάμε να αρχικοποιήσει τις μεταβλητές σας. 1047 00:47:34,240 --> 00:47:38,260 >> Έτσι, όπως μιλήσαμε για, i είναι ίσο με 0 ή Ι είναι ίση με 10. 1048 00:47:38,260 --> 00:47:40,010 Ό, τι χρειάζεστε ότι μεταβλητή να είναι 1049 00:47:40,010 --> 00:47:43,970 πρόκειται να προετοιμαστεί εκεί, δηλώνονται και προετοιμασία για κάποια αξία. 1050 00:47:43,970 --> 00:47:46,760 Μέχρι τότε έχουμε κάποια υπό τον όρο ότι πρόκειται 1051 00:47:46,760 --> 00:47:48,900 να τον έλεγχο μας μεταβλητή ενάντια σε κάτι. 1052 00:47:48,900 --> 00:47:55,220 Έτσι, στην περίπτωση που η τυπική περίπτωση όπου ίσως θέλετε αυτό το τμήμα του κώδικα 1053 00:47:55,220 --> 00:47:56,620 να εκτελέσει πέντε φορές. 1054 00:47:56,620 --> 00:48:02,380 Έτσι θα είχαμε int i ισούται με 0, και θέλω να γίνω όταν είναι μικρότερο από 5. 1055 00:48:02,380 --> 00:48:04,940 Έτσι, η κατάσταση είναι ακριβώς πρόκειται να ελέγξετε ότι κάθε φορά. 1056 00:48:04,940 --> 00:48:07,120 Εάν η εν λόγω κατάσταση είναι αληθής, είναι 1057 00:48:07,120 --> 00:48:11,162 πρόκειται να εκτελέσετε τον κώδικα, το οποίο είναι ακριβώς τι αυτό το μικρό διάγραμμα δείχνει. 1058 00:48:11,162 --> 00:48:12,370 1059 00:48:12,370 --> 00:48:13,639 >> Και γι 'αυτό το εκτελεί. 1060 00:48:13,639 --> 00:48:15,430 Εκσυγχρονίζει μια μεταβλητή, το οποίο είναι αυτό που βλέπουμε 1061 00:48:15,430 --> 00:48:21,020 στο τελευταίο μέρος του για μας προετοιμασίας βρόχου εκεί. 1062 00:48:21,020 --> 00:48:22,370 1063 00:48:22,370 --> 00:48:26,030 Γι 'αυτό θα κρατήσει μόνο να κάνει αυτό έως ότου η εν λόγω προϋπόθεση δεν πληρούται, 1064 00:48:26,030 --> 00:48:28,010 και στη συνέχεια θα εξέλθει ο βρόχος και να συνεχίσει 1065 00:48:28,010 --> 00:48:29,960 κινείται με το υπόλοιπο του προγράμματός σας. 1066 00:48:29,960 --> 00:48:31,320 1067 00:48:31,320 --> 00:48:33,620 Όλοι καλά εκεί; 1068 00:48:33,620 --> 00:48:34,440 Cool. 1069 00:48:34,440 --> 00:48:37,780 >> Έτσι, εδώ είναι ένα παράδειγμα, πολύ παρόμοια σε κάτι που μόλις μίλησα. 1070 00:48:37,780 --> 00:48:42,030 Έτσι, εμείς απλά θέλετε να εκτυπώσετε Αυτό είναι CS50 10 φορές. 1071 00:48:42,030 --> 00:48:44,540 Έτσι, μπορείτε να δείτε εδώ έχουμε για μας, και στη συνέχεια εμείς 1072 00:48:44,540 --> 00:48:47,450 προετοιμάσει τη μεταβλητή i να είναι ίσο με μηδέν. 1073 00:48:47,450 --> 00:48:50,610 Κατάσταση μας έχει τον έλεγχο ότι είναι μικρότερο από 10. 1074 00:48:50,610 --> 00:48:55,210 Έτσι, για να αξιολογήσει αλήθεια, όταν συναντηθήκαμε για πρώτη ξεκινήσει, και στη συνέχεια ενημερώνει μεταβλητή μας 1075 00:48:55,210 --> 00:48:58,985 κάθε φορά που εκτελεί στην πραγματικότητα και εκτυπώνει αυτό είναι CS50. 1076 00:48:58,985 --> 00:49:00,510 1077 00:49:00,510 --> 00:49:02,180 Και θα τερματίσει μετά από 10 φορές. 1078 00:49:02,180 --> 00:49:03,190 1079 00:49:03,190 --> 00:49:04,070 Cool. 1080 00:49:04,070 --> 00:49:07,130 >> Έτσι, ενώ οι βρόχοι είναι δίπλα. 1081 00:49:07,130 --> 00:49:12,400 Και όπως βλέπετε εδώ, έχουμε μόνο μερικά ενώ αυτό condition-- ερώτηση; 1082 00:49:12,400 --> 00:49:15,238 >> ΚΟΙΝΟ: Πώς μπορώ να πηδήσει στην πραγματικότητα απλά δεν έναν αριθμό, 1083 00:49:15,238 --> 00:49:19,030 αλλά δύο αριθμούς [δεν ακούγεται] i συν συν συν; 1084 00:49:19,030 --> 00:49:23,390 >> ALLISON: Έτσι, το ερώτημα ήταν πώς μπορείτε να ενημερώσετε μεταβλητή σας από περισσότερες από μία 1085 00:49:23,390 --> 00:49:24,070 σε μια στιγμή. 1086 00:49:24,070 --> 00:49:26,860 Έτσι θ συν Plus θα ενημέρωση από ένα κάθε φορά. 1087 00:49:26,860 --> 00:49:32,310 Αν ήθελε να το ενημερώσετε με δύο, θα μπορούσατε να κάνετε i συν ισούται με 2. 1088 00:49:32,310 --> 00:49:34,526 >> ROB BOWDEN: Έχετε δει συν ισούται σε διάλεξη ακόμα; 1089 00:49:34,526 --> 00:49:35,442 >> ΚΟΙΝΟ: [δεν ακούγεται]. 1090 00:49:35,442 --> 00:49:37,440 1091 00:49:37,440 --> 00:49:42,110 >> ALLISON: Είναι αποτελεσματικά το ίδιο πράγμα όπως i ισούται με i συν 2. 1092 00:49:42,110 --> 00:49:46,130 Έτσι πρόκειται να το πάρει και τον ενημερώνει με δύο κάθε φορά. 1093 00:49:46,130 --> 00:49:49,432 Πλέον ισούται είναι απλά κάτι καλούμε συντακτική ζάχαρη. 1094 00:49:49,432 --> 00:49:52,390 ROB BOWDEN: Ναι, υπάρχουν εκείνοι για λίγο πολύ όλοι οι αριθμητικοί τελεστές. 1095 00:49:52,390 --> 00:49:55,830 Έτσι θ φορές ίσο με θα διπλασιάσει τον αριθμό. 1096 00:49:55,830 --> 00:50:02,590 ι χάσμα ισούται με 3 είναι η ίδια ως j ισούται με j διαιρείται με το 3. 1097 00:50:02,590 --> 00:50:07,399 >> ALLISON: Ή μείον ισούται με 2 θα μειώσετε το i κατά δύο κάθε φορά. 1098 00:50:07,399 --> 00:50:08,565 ROB BOWDEN: Ακόμα και mod ίσων. 1099 00:50:08,565 --> 00:50:09,690 1100 00:50:09,690 --> 00:50:13,270 Δεν έχετε δει τους δυαδικούς τελεστές, αλλά καρέ ισούται και εμπορικό και ισούται με, 1101 00:50:13,270 --> 00:50:14,560 όλα αυτά υπάρχουν. 1102 00:50:14,560 --> 00:50:19,480 >> ALLISON: Έτσι, πολλές φορές, ειδικά με την πρώτη σας ζευγάρι της Ρ σύνολα, 1103 00:50:19,480 --> 00:50:22,527 θα είναι κατά πάσα πιθανότητα προσαύξηση κατά ένα, γι 'αυτό συν συν, συν συν j 1104 00:50:22,527 --> 00:50:24,610 είναι όλα τα πράγματα που θα πάμε να είναι τυπικά χρήση. 1105 00:50:24,610 --> 00:50:28,240 Αλλά η προϋπόθεση είναι ενημερωμένη πλήρως υπό τον έλεγχό σας. 1106 00:50:28,240 --> 00:50:32,310 Μπορείτε να το ενημερώσετε με οποιοδήποτε προσαυξήσεις ή με όποιο τρόπο και αν αποφασίσετε να. 1107 00:50:32,310 --> 00:50:33,389 1108 00:50:33,389 --> 00:50:35,680 Ίσως ακόμη και να θέλουν να είναι ένας τυχαίος αριθμός μερικές φορές. 1109 00:50:35,680 --> 00:50:37,180 1110 00:50:37,180 --> 00:50:39,580 Αλλά ναι, υπάρχουν πολλά πράγματα που μπορείτε να κάνετε με αυτό. 1111 00:50:39,580 --> 00:50:41,280 Δεν είστε περιορίζεται σε i συν συν. 1112 00:50:41,280 --> 00:50:44,400 >> ROB BOWDEN: Ακριβώς έτσι γνωρίζουν ότι υπάρχει, επίσης 1113 00:50:44,400 --> 00:50:46,960 υπάρχει σε άλλη μορφή, συν συν i. 1114 00:50:46,960 --> 00:50:51,410 Έτσι, εάν είστε ποτέ ψάχνουν on-line και τυχαίνει να δούμε συν συν θ, 1115 00:50:51,410 --> 00:50:52,870 λίγο πολύ σημαίνει το ίδιο πράγμα. 1116 00:50:52,870 --> 00:50:54,377 1117 00:50:54,377 --> 00:50:54,960 ALLISON: Cool. 1118 00:50:54,960 --> 00:50:56,070 1119 00:50:56,070 --> 00:50:56,740 Καλό; 1120 00:50:56,740 --> 00:50:57,240 Awesome. 1121 00:50:57,240 --> 00:50:59,190 1122 00:50:59,190 --> 00:50:59,990 Έτσι, ενώ βρόχους. 1123 00:50:59,990 --> 00:51:01,160 1124 00:51:01,160 --> 00:51:02,570 Πολύ παρόμοια. 1125 00:51:02,570 --> 00:51:03,737 Έχετε κάποια πάθηση. 1126 00:51:03,737 --> 00:51:05,820 Το κύριο πράγμα που πρέπει να προσέξετε εδώ είναι αντί 1127 00:51:05,820 --> 00:51:08,540 τρία διαφορετικά μέρη να συσταθεί, έχουμε ένα. 1128 00:51:08,540 --> 00:51:11,090 Εμείς απλά έχουν κάποια πάθηση ότι είναι υπό έλεγχο. 1129 00:51:11,090 --> 00:51:14,920 Και με τον ίδιο τρόπο, εφ 'όσον ότι η συνθήκη είναι αληθής, 1130 00:51:14,920 --> 00:51:16,840 κωδικό σας πρόκειται να τρέξει. 1131 00:51:16,840 --> 00:51:18,870 Και αν είναι ψευδής, το θα τερματίσει, κίνηση 1132 00:51:18,870 --> 00:51:21,930 πάνω στο επόμενο μέρος του προγράμματος σας. 1133 00:51:21,930 --> 00:51:25,780 Έτσι, αυτό είναι το είδος της like-- τι είναι ένα καλό παράδειγμα του ελέγχου 1134 00:51:25,780 --> 00:51:27,215 για κάποια κανονική κατάσταση; 1135 00:51:27,215 --> 00:51:29,402 1136 00:51:29,402 --> 00:51:30,235 GABRIEL: Ενώ η αλήθεια. 1137 00:51:30,235 --> 00:51:32,110 ALLISON: Θα μπορούσατε να κάνετε, ενώ είναι αλήθεια. 1138 00:51:32,110 --> 00:51:33,510 Λοιπόν, 1 είναι ίσο με 1. 1139 00:51:33,510 --> 00:51:34,970 1140 00:51:34,970 --> 00:51:37,642 >> ROB BOWDEN: Μπορείτε να κάνετε while-- μόνο αντί της χρησιμοποίησης ενός βρόχου for, 1141 00:51:37,642 --> 00:51:39,600 μπορείτε πάντα να κωδικοποιήσει ένα για βρόχο σε ένα βρόχο while, 1142 00:51:39,600 --> 00:51:42,600 γι 'αυτό είναι μεγαλύτερη από 0 ή ενώ λιγότερο από το 10. 1143 00:51:42,600 --> 00:51:45,200 1144 00:51:45,200 --> 00:51:46,010 >> ALLISON: Awesome. 1145 00:51:46,010 --> 00:51:50,640 Και τότε έχουμε κάνει, ενώ βρόχους, το οποίο είναι μεγάλη για την επικύρωση του χρήστη, όπου 1146 00:51:50,640 --> 00:51:55,370 θέλετε να πάρετε κάτι από χρήστη σας, δείτε αν είναι έγκυρη, 1147 00:51:55,370 --> 00:51:57,060 και στη συνέχεια να συνεχίσει από εκεί. 1148 00:51:57,060 --> 00:52:04,000 Έτσι ένα από τα πράγματα που πρέπει να ξέρετε είναι με ένα κάνει, ενώ είναι ότι πρόκειται να εκτελέσει, 1149 00:52:04,000 --> 00:52:08,000 και τότε θα ξανά εκτελέσει αν πληρούται η προϋπόθεση αυτή. 1150 00:52:08,000 --> 00:52:11,240 >> Έτσι, ίσως ο καλύτερος τρόπος για να το κάνετε αυτό Είναι απλά για να δείτε ένα παράδειγμα εδώ. 1151 00:52:11,240 --> 00:52:14,620 Έτσι, όπως μόλις ανέφερα, χρήστη επικύρωση είναι πραγματικά useful-- 1152 00:52:14,620 --> 00:52:17,520 ή να κάνετε whiles είναι πραγματικά χρήσιμα με την επικύρωση του χρήστη. 1153 00:52:17,520 --> 00:52:19,730 Έτσι, αυτό είναι ακριβώς πρόκειται για την εκ νέου προτρέψει κάποιον χρήστη 1154 00:52:19,730 --> 00:52:23,640 μέχρι να εισάγετε ένα θετικό αριθμό, το οποίο μπορεί να είναι χρήσιμο για τη συσκευή σας P 1155 00:52:23,640 --> 00:52:24,190 αυτή την εβδομάδα. 1156 00:52:24,190 --> 00:52:25,850 1157 00:52:25,850 --> 00:52:29,480 Και έτσι σε αυτή την περίπτωση, όταν εμείς αρχικά εκτελέσετε αυτό το πρόγραμμα, 1158 00:52:29,480 --> 00:52:32,260 πρόκειται να εκτυπώσετε πληκτρολογήστε έναν θετικό αριθμό. 1159 00:52:32,260 --> 00:52:34,810 Είναι πρόκειται να πάρει κάποια είσοδο από το χρήστη, 1160 00:52:34,810 --> 00:52:38,320 και στη συνέχεια πρόκειται να ελέγξει ότι η είσοδος κατά την κατάσταση 1161 00:52:38,320 --> 00:52:39,500 που έχετε ορίσει για αυτό. 1162 00:52:39,500 --> 00:52:41,030 >> Έτσι, στην περίπτωση αυτή πρόκειται να ελέγξει. 1163 00:52:41,030 --> 00:52:44,190 Δεν πρόκειται να πω, εντάξει, είναι η είσοδος μας αρνητική, 1164 00:52:44,190 --> 00:52:47,175 ή να είναι 0 ή αρνητική, η οποία θα είναι άκυρη. 1165 00:52:47,175 --> 00:52:48,300 Μέχρι τότε θα ξανά-γραμμή. 1166 00:52:48,300 --> 00:52:50,280 1167 00:52:50,280 --> 00:52:50,780 Ερώτηση; 1168 00:52:50,780 --> 00:52:54,720 >> ΚΟΙΝΟ: Είναι αυτό το ίδιο στη συνέχεια ως ενώ βρόχο αν απλά αντιγραφή του εν λόγω κώδικα 1169 00:52:54,720 --> 00:52:56,680 και το βάζουμε [δεν ακούγεται] ενώ βρόχος; 1170 00:52:56,680 --> 00:52:59,620 1171 00:52:59,620 --> 00:53:05,160 >> ALLISON: Έτσι ερώτηση ήταν θα Αυτή είναι η ίδια όπως ακριβώς μια στιγμή 1172 00:53:05,160 --> 00:53:08,570 βρόχου, αν ήμασταν σε μόλις αντιγράψετε το βρόχο while παραπάνω. 1173 00:53:08,570 --> 00:53:12,440 Έτσι, σε αυτή την περίπτωση, ενώ βρόχος σας είναι πρόκειται να ελέγξει την κατάσταση πρώτα. 1174 00:53:12,440 --> 00:53:15,300 Έτσι, σε αυτή την περίπτωση, αν προσπαθήσαμε να γράψει όπως ακριβώς ένα βρόχο while, 1175 00:53:15,300 --> 00:53:18,010 θα έλεγα, ενώ εισόδου είναι μικρότερη από ένα. 1176 00:53:18,010 --> 00:53:20,801 Αλλά δεν έχουμε μια είσοδο για αυτό. 1177 00:53:20,801 --> 00:53:24,238 >> ΚΟΙΝΟ: Εάν [δεν ακούγεται] ενώ βρόχο συμπεριλαμβανομένου αυτού του κώδικα, 1178 00:53:24,238 --> 00:53:28,166 αλλά τότε αντιμετώπισαν τον κωδικό πάνω από το βρόχο, ενώ επίσης. 1179 00:53:28,166 --> 00:53:31,052 Θα είχε μόλις αυτόν τον κωδικό [Δεν ακούγεται] ενώ βρόχο. 1180 00:53:31,052 --> 00:53:32,760 ALLISON: Θα ήταν το ίδιο πράγμα, ναι. 1181 00:53:32,760 --> 00:53:37,110 Έτσι, θα μπορούσατε απλά write-- αντί να έχουν ένα do-- ναι. 1182 00:53:37,110 --> 00:53:37,976 1183 00:53:37,976 --> 00:53:39,350 GABRIEL: Αλλά αυτό είναι πιο κομψό. 1184 00:53:39,350 --> 00:53:41,020 ALLISON: Ναι, αυτό είναι το πιο κομψό. 1185 00:53:41,020 --> 00:53:44,560 Μπορείτε να μπει στο σχεδιασμό και την εταζέρα, αλλά ναι, μπορείτε να το κάνετε αυτό εντελώς. 1186 00:53:44,560 --> 00:53:45,850 1187 00:53:45,850 --> 00:53:47,072 Οποιεσδήποτε άλλες ερωτήσεις; 1188 00:53:47,072 --> 00:53:49,240 1189 00:53:49,240 --> 00:53:50,250 Εντάξει, δροσερό. 1190 00:53:50,250 --> 00:53:55,540 >> Έτσι έχουμε μιλήσει πολύ για τις συνθήκες με όλους αυτούς τους βρόχους που έχουμε, 1191 00:53:55,540 --> 00:53:58,615 έτσι είμαστε πραγματικά να πάρει σε συνθήκες σε Boolean εκφράσεις. 1192 00:53:58,615 --> 00:53:59,990 1193 00:53:59,990 --> 00:54:03,440 Και πάλι, μπορείτε να χρησιμοποιήσετε αυτά σε C, έτσι ακριβώς το είδος της μετάβασης 1194 00:54:03,440 --> 00:54:06,050 από την πιο γραφική διεπαφή σε πραγματικά κωδικοποίησης. 1195 00:54:06,050 --> 00:54:07,480 1196 00:54:07,480 --> 00:54:09,100 >> Cool, τόσο μεγάλο, αν. 1197 00:54:09,100 --> 00:54:11,130 1198 00:54:11,130 --> 00:54:17,070 Βασικά μας επιτρέπει μόνο να εισαγάγει κάποια λογική στο πρόγραμμα και έλεγχος μας 1199 00:54:17,070 --> 00:54:17,790 sys συνθήκες. 1200 00:54:17,790 --> 00:54:22,150 Έτσι, στην περίπτωση αυτή, ΟΚ, n είναι μεγαλύτερη από 0; 1201 00:54:22,150 --> 00:54:24,070 Ναι είναι, έτσι μπορείτε να εκτελέσετε αυτό. 1202 00:54:24,070 --> 00:54:28,060 Είναι απλά ελέγχοντας κάποια κατάσταση που έχετε 1203 00:54:28,060 --> 00:54:33,565 σύνολο, το οποίο νομίζω ότι είμαστε όλοι άνετα με τις συνθήκες ελέγχου. 1204 00:54:33,565 --> 00:54:35,975 1205 00:54:35,975 --> 00:54:36,475 Cool. 1206 00:54:36,475 --> 00:54:38,760 1207 00:54:38,760 --> 00:54:44,530 Έτσι, αν άλλος είναι άλλος σας, μπορείτε να πούμε, εντάξει, αν αυτό είναι αλήθεια, 1208 00:54:44,530 --> 00:54:46,150 κάνει αυτό το πρώτο πράγμα. 1209 00:54:46,150 --> 00:54:48,720 Διαφορετικά θα θέλετε να προεπιλογή και να κάνουμε κάτι άλλο. 1210 00:54:48,720 --> 00:54:51,977 1211 00:54:51,977 --> 00:54:55,060 Όπως και στην περίπτωση αυτή, θα πρέπει είτε να πάρει ένα θετικό αριθμό ή αρνητικός αριθμός. 1212 00:54:55,060 --> 00:54:56,500 Έχετε μόνο δύο επιλογές. 1213 00:54:56,500 --> 00:54:59,550 Χρειάζεται να εκτελέσει ανεξάρτητα από ό, τι εισάγει ο χρήστης σας. 1214 00:54:59,550 --> 00:55:02,920 Έτσι, μπορείτε να πείτε καλά, είναι μεγαλύτερη από 0; 1215 00:55:02,920 --> 00:55:03,480 Cool. 1216 00:55:03,480 --> 00:55:04,480 Εκτυπώστε ένα θετικό αριθμό. 1217 00:55:04,480 --> 00:55:06,153 Αν δεν είναι, να εκτυπώσετε ένα αρνητικό. 1218 00:55:06,153 --> 00:55:06,960 Όλοι καλό; 1219 00:55:06,960 --> 00:55:14,920 >> Και τότε ένα πράγμα που πρέπει να αναγνωρίσουμε είναι ότι εάν το αν πληρούται η προϋπόθεση αυτή, 1220 00:55:14,920 --> 00:55:16,650 ο άλλος δεν πρόκειται ποτέ να εκτελέσει. 1221 00:55:16,650 --> 00:55:19,210 Μόνο ένα από αυτά θα εκτελούν κάθε φορά. 1222 00:55:19,210 --> 00:55:20,410 Έτσι είναι ένα εμπορικό off. 1223 00:55:20,410 --> 00:55:21,720 Δεν χρειάζεται να πάρετε για να έχουν και τα δύο. 1224 00:55:21,720 --> 00:55:23,566 Μπορείτε είτε να έχει την πρώτη προϋπόθεση. 1225 00:55:23,566 --> 00:55:25,440 Μπορείτε είτε να έχουν το εάν ή το άλλο, όχι και τα δύο. 1226 00:55:25,440 --> 00:55:26,849 1227 00:55:26,849 --> 00:55:28,890 Η οποία στη συνέχεια μπορεί να κάνει τα πράγματα ακόμα πιο περίπλοκη, 1228 00:55:28,890 --> 00:55:31,060 επειδή μπορείτε να κάνετε αν, αλλιώς, και στη συνέχεια αλλού. 1229 00:55:31,060 --> 00:55:32,810 Έτσι, σε αυτή την περίπτωση, έχουμε έχει τρεις προϋποθέσεις. 1230 00:55:32,810 --> 00:55:34,830 1231 00:55:34,830 --> 00:55:38,370 Και πάλι, μόνο ένα από αυτά είναι πρόκειται να καταλήξει να εκτελεστεί. 1232 00:55:38,370 --> 00:55:41,030 Έτσι, ίσως να αναρωτιέστε Λοιπόν, τι αν 1233 00:55:41,030 --> 00:55:45,510 έχουν κάτι που μπορεί να ανταποκριθεί σε δύο από αυτά. 1234 00:55:45,510 --> 00:55:49,520 Ίσως ό, τι είστε εισάγοντας ικανοποιεί τόσο την κατάσταση 1235 00:55:49,520 --> 00:55:51,811 για το εάν και το άλλο αν. 1236 00:55:51,811 --> 00:55:53,060 Μόνο πράγμα που πρόκειται να τρέξει 1237 00:55:53,060 --> 00:55:56,240 >> ALLISON: Μόλις διαπιστώσει κάτι ότι πληροί την προϋπόθεση ότι 1238 00:55:56,240 --> 00:55:59,790 είναι αληθής, αυτό είναι ό, τι πρόκειται να τρέξει και τίποτα άλλο. 1239 00:55:59,790 --> 00:56:04,440 Έτσι, αν είχατε είναι αυτός ο αριθμός μεταξύ 0 και 5 για πρώτη σας, 1240 00:56:04,440 --> 00:56:10,530 ή να είναι αυτός ο αριθμός μεταξύ 3 και 5 για το άλλο μέρος, αν, 1241 00:56:10,530 --> 00:56:15,550 και εισάγετε το number-- Είπα 0 και 5 and-- 4. 1242 00:56:15,550 --> 00:56:18,110 Είναι πρόκειται να χτυπήσει το πρώτο. 1243 00:56:18,110 --> 00:56:20,960 Δεν πρόκειται να πούμε, εντάξει, αυτό αριθμός είναι μεταξύ 0 και 5. 1244 00:56:20,960 --> 00:56:22,480 Εκτελέστε και να φύγει. 1245 00:56:22,480 --> 00:56:25,340 Ποτέ δεν θα χτυπήσει το δεύτερη επιλογή. 1246 00:56:25,340 --> 00:56:26,394 Cool; 1247 00:56:26,394 --> 00:56:27,250 Awesome. 1248 00:56:27,250 --> 00:56:31,300 >> Εντάξει έχουμε επίσης δηλώσεις διακόπτη εάν θέλετε να πάρετε ακόμη και more-- ή συγγνώμη, 1249 00:56:31,300 --> 00:56:31,965 διακόπτης είναι δίπλα. 1250 00:56:31,965 --> 00:56:33,540 1251 00:56:33,540 --> 00:56:34,990 Είμαι πάρει μπροστά από τον εαυτό μου εδώ. 1252 00:56:34,990 --> 00:56:36,370 1253 00:56:36,370 --> 00:56:39,210 Και πάλι, αν πολλαπλών μπλοκ όπου, όπως μόλις είπα 1254 00:56:39,210 --> 00:56:45,600 είναι το συντομότερο μπορείτε να βρείτε μια κατάσταση ότι συναντήθηκαν και αν αλλιώς αν άλλος, 1255 00:56:45,600 --> 00:56:46,630 αφήνει. 1256 00:56:46,630 --> 00:56:49,560 Αν χρειαστεί να ελέγξετε πολλαπλές πράγματα, είστε 1257 00:56:49,560 --> 00:56:53,000 πρόκειται να θέλετε να χρησιμοποιήσετε αυτό το γιατί θα ελέγχει κάθε χρόνο εδώ. 1258 00:56:53,000 --> 00:56:58,060 Έτσι, αυτό θα τρέχει μέσα και αν είναι μεγαλύτερο από ή ίσο με 90, 1259 00:56:58,060 --> 00:56:59,160 πρόκειται να εκτυπώσετε αυτό. 1260 00:56:59,160 --> 00:57:00,530 1261 00:57:00,530 --> 00:57:03,600 Και θα τρέχει μέσα και ελέγχει κάθε ένα από αυτά. 1262 00:57:03,600 --> 00:57:06,444 >> ΚΟΙΝΟ: Έτσι, αυτό θα ήταν περισσότερα λάθη από ό, τι [δεν ακούγεται]. 1263 00:57:06,444 --> 00:57:07,735 Αυτό θα ήταν σαν [δεν ακούγεται]; 1264 00:57:07,735 --> 00:57:10,990 1265 00:57:10,990 --> 00:57:15,740 >> ALLISON: Το ερώτημα αυτό θα ήταν λάθη ή μήπως αυτό κάνει ό, τι θέλετε. 1266 00:57:15,740 --> 00:57:19,830 Είναι πραγματικά εξαρτάται από το τι θέλετε από το πρόγραμμα σας. 1267 00:57:19,830 --> 00:57:22,291 >> ΚΟΙΝΟ: Εννοώ σαν αν βάλετε 90 στο. 1268 00:57:22,291 --> 00:57:23,290 ALLISON: Αν βάλετε 90-- 1269 00:57:23,290 --> 00:57:24,206 ΚΟΙΝΟ: [δεν ακούγεται]. 1270 00:57:24,206 --> 00:57:25,584 1271 00:57:25,584 --> 00:57:27,250 GABRIEL: Θα πάμε για να πάρει δύο πράγματα. 1272 00:57:27,250 --> 00:57:28,916 ALLISON: Θα πάμε για να πάρει δύο πράγματα. 1273 00:57:28,916 --> 00:57:29,420 Ναι, δύο. 1274 00:57:29,420 --> 00:57:32,420 1275 00:57:32,420 --> 00:57:33,920 >> ROB BOWDEN: Δύο; 1276 00:57:33,920 --> 00:57:34,580 >> ALLISON: Όχι. 1277 00:57:34,580 --> 00:57:35,288 >> ROB BOWDEN: Τέσσερα. 1278 00:57:35,288 --> 00:57:37,070 1279 00:57:37,070 --> 00:57:40,070 Αν βάλετε 90, πρόκειται να σας πω πήρε ένα Α, έχεις ένα Β, έχεις ένα C, 1280 00:57:40,070 --> 00:57:40,545 έχεις μια Δ 1281 00:57:40,545 --> 00:57:41,461 >> ΚΟΙΝΟ: [δεν ακούγεται]. 1282 00:57:41,461 --> 00:57:42,196 1283 00:57:42,196 --> 00:57:42,820 ALLISON: Δεξιά. 1284 00:57:42,820 --> 00:57:44,778 Γι 'αυτό εξαρτάται από το τι σας θέλετε από το πρόγραμμα σας. 1285 00:57:44,778 --> 00:57:47,050 Μερικές φορές χρειάζεται να ελέγξτε πολλαπλές πράγματα. 1286 00:57:47,050 --> 00:57:49,970 1287 00:57:49,970 --> 00:57:55,270 Θα πάρετε πολύ πιο βαθιά σε αυτό που ο καλός σχεδιασμός είναι καθώς πηγαίνετε προς τα εμπρός. 1288 00:57:55,270 --> 00:57:57,090 Το σημαντικό πράγμα που πρέπει να συνειδητοποιούν είναι ότι αυτή η 1289 00:57:57,090 --> 00:58:01,090 θα ελέγξει όλες τις τέσσερις προϋποθέσεις εδώ. 1290 00:58:01,090 --> 00:58:05,860 Ότι, εάν αυτό ήταν ένα άλλο, αν και αν άλλος αν αλλιώς, θα χτυπήσει το πρώτο κρούσμα, 1291 00:58:05,860 --> 00:58:07,950 θα εκτυπώσετε έχεις ένα Α και να γίνει. 1292 00:58:07,950 --> 00:58:10,250 >> ROB BOWDEN: Ακόμα και αν εμείς αποφάσισε να αλλάξει αυτό σε περίπτωση που 1293 00:58:10,250 --> 00:58:13,880 και μεγαλύτερη από ή ίση με 90, αν και μεγαλύτερη από ή ίση με 80, 1294 00:58:13,880 --> 00:58:19,710 και μικρότερο από ή ίσο με 89, αν n μεγαλύτερο από ή ίσο με 70, 1295 00:58:19,710 --> 00:58:23,830 και η μικρότερη από ή ίση με 79, έτσι ώστε θα είναι σωστή. 1296 00:58:23,830 --> 00:58:27,190 Αυτό θα κάνουμε ό, τι θέλουμε, αλλά εξακολουθεί να ελέγχει κάθε μονό αυτό. 1297 00:58:27,190 --> 00:58:34,050 >> Έτσι, ενώ κατά το πρώτο σενάριο, αν εμείς εισάγετε 90 με μόνο εάν άλλο εάν άλλος αν, 1298 00:58:34,050 --> 00:58:37,300 και μπαίνουμε 90, τότε πρόκειται να διορθωθεί. 1299 00:58:37,300 --> 00:58:39,615 Θα ελέγξει την πρώτη One, εκτυπώστε έχεις ένα Α, 1300 00:58:39,615 --> 00:58:42,590 παραλείψτε τα πάντα, γιατί ήδη βρει μία που να λειτουργεί. 1301 00:58:42,590 --> 00:58:46,360 Όλες οι περιπτώσεις αλληλοαναιρούνται με βάση εάν αλλιώς αν άλλος αν. 1302 00:58:46,360 --> 00:58:48,630 Έτσι θα εκτελέσει το πρώτη περίπτωση, τότε έχει κάνει. 1303 00:58:48,630 --> 00:58:49,790 Θα πάει μέχρι το τέλος. 1304 00:58:49,790 --> 00:58:52,400 >> Ότι, αν αλλάξουμε Αυτό είναι ό, τι ήμουν 1305 00:58:52,400 --> 00:58:54,204 λέγοντας με λιγότερο από ή ίσο με 89. 1306 00:58:54,204 --> 00:58:55,620 Είναι πρόκειται να ελέγξει την πρώτη. 1307 00:58:55,620 --> 00:58:56,560 Θα εκτυπώσετε. 1308 00:58:56,560 --> 00:58:58,010 Θα ελέγξει το δεύτερο. 1309 00:58:58,010 --> 00:58:59,010 Δεν πρόκειται να εκτυπώσετε. 1310 00:58:59,010 --> 00:58:59,910 Ελέγξτε την τρίτη. 1311 00:58:59,910 --> 00:59:00,620 Δεν πρόκειται να εκτυπώσετε. 1312 00:59:00,620 --> 00:59:01,495 Ελέγξτε το τέταρτο. 1313 00:59:01,495 --> 00:59:02,420 Τώρα πρόκειται να εκτυπώσετε. 1314 00:59:02,420 --> 00:59:05,380 Έτσι, σε αυτή την περίπτωση, ο άλλος αν έκδοση, διότι οι υποθέσεις 1315 00:59:05,380 --> 00:59:09,120 αλληλοαναιρούνται, είναι καλύτερη χρήση εάν αλλιώς αν άλλος αν, 1316 00:59:09,120 --> 00:59:12,970 γιατί αυτό θα έχει λιγότεροι έλεγχοι των συνθηκών 1317 00:59:12,970 --> 00:59:14,750 από αυτή την έκδοση. 1318 00:59:14,750 --> 00:59:17,692 1319 00:59:17,692 --> 00:59:18,400 ALLISON: Awesome. 1320 00:59:18,400 --> 00:59:20,580 Έτσι, ένα άλλο πράγμα που μπορούμε να κάνουμε είναι να δηλώσεις διακόπτη. 1321 00:59:20,580 --> 00:59:23,104 1322 00:59:23,104 --> 00:59:25,270 Βασικά μια δήλωση switch παίρνει σε κάποια μεταβλητή, 1323 00:59:25,270 --> 00:59:28,780 σε αυτή την περίπτωση είναι Ν, και καθορίζει ποια περίπτωση για να εκτελέσει. 1324 00:59:28,780 --> 00:59:33,106 Έτσι, αυτό είναι επίσης ένα όπου οι υποθέσεις σας θα πρέπει να είναι το είδος της αλληλοαποκλείονται. 1325 00:59:33,106 --> 00:59:35,210 1326 00:59:35,210 --> 00:59:37,940 Έτσι, στην περίπτωση αυτή, αν εμείς παίρνουμε ένα ένα, είναι 1327 00:59:37,940 --> 00:59:42,270 πρόκειται να ταιριάζει με ό, τι αυτό variable-- ανεξάρτητα από την τιμή του n 1328 00:59:42,270 --> 00:59:48,700 είναι σε μία από αυτές τις περιπτώσεις, έτσι 1, 2, ή 3, και να εκτυπώσετε την αντίστοιχη γραμμή. 1329 00:59:48,700 --> 00:59:51,870 >> Και στη συνέχεια, αν παρατηρήσετε εδώ, έχουμε επίσης μια προεπιλογή, 1330 00:59:51,870 --> 00:59:54,670 το οποίο μπορείτε να σκεφτείτε να του ό, τι άλλο σας. 1331 00:59:54,670 --> 00:59:58,510 Έτσι, αν επιλέξετε οποιοδήποτε άλλο αριθμό εκτός από 1, 2, και 3 σε αυτή την περίπτωση 1332 00:59:58,510 --> 00:59:59,885 είναι ακριβώς πρόκειται να εκτυπώσετε άκυρη. 1333 00:59:59,885 --> 01:00:03,690 1334 01:00:03,690 --> 01:00:08,390 Αποφασίζει πότε να χρησιμοποιήσετε IFS έναντι αν elses έναντι διακόπτες πρόκειται 1335 01:00:08,390 --> 01:00:12,590 να είναι κάτι που εσείς θα θεωρήσουν το σχεδιασμό σοφός, όπως αρχίσετε να γράφετε 1336 01:00:12,590 --> 01:00:15,270 πιο πολύπλοκα προγράμματα, και δεν υπάρχει κανένας σκληρός και γρήγορος κανόνας 1337 01:00:15,270 --> 01:00:16,330 πότε να τις χρησιμοποιήσουν. 1338 01:00:16,330 --> 01:00:17,890 Εξαρτάται πραγματικά από το πλαίσιο σας. 1339 01:00:17,890 --> 01:00:18,590 >> ROB BOWDEN: Και μόνο να το ρίξει έξω εκεί 1340 01:00:18,590 --> 01:00:20,131 δεδομένου ότι είναι πιο άνετο τομή. 1341 01:00:20,131 --> 01:00:20,920 1342 01:00:20,920 --> 01:00:25,053 Διακόπτες, τείνουν να be-- έτσι είστε περιορίζεται 1343 01:00:25,053 --> 01:00:27,430 στον αριθμό των τρόπων που μπορούν να τους χρησιμοποιήσουν, επειδή IFS, 1344 01:00:27,430 --> 01:00:30,100 η κατάσταση μπορεί να είναι αρκετά ό, τι θέλεις. 1345 01:00:30,100 --> 01:00:33,410 Με διακόπτες οι περιπτώσεις πρέπει να είναι αριθμοί, 1346 01:00:33,410 --> 01:00:37,770 ή τεχνικώς μπορούν να είναι χαρακτήρες, αλλά χαρακτήρες, όπως θα δούμε, είναι απλά αριθμοί. 1347 01:00:37,770 --> 01:00:44,250 Έτσι πρέπει να είναι αριθμοί, αλλά οι διακόπτες είναι πραγματικά πιο αποτελεσματική από ό, τι εάν 1348 01:00:44,250 --> 01:00:50,060 else if else if, γιατί ακόμα λαμβάνοντας το παράδειγμα before-- καλά, 1349 01:00:50,060 --> 01:00:51,486 ο βαθμός παράδειγμα φαίνεται καλό. 1350 01:00:51,486 --> 01:00:52,550 1351 01:00:52,550 --> 01:00:57,080 >> Λοιπόν ας πούμε εδώ, εμείς αντί να κάνουμε αυτό ως εάν αλλιώς αν άλλος, αν το σενάριο. 1352 01:00:57,080 --> 01:01:00,930 Έτσι, αν το η ισούται ισούται με 1, εκτυπώσετε έχετε πάρει ένα χαμηλό αριθμό. 1353 01:01:00,930 --> 01:01:04,490 Εάν άλλο, αν n ισούται ισούται με 2, Σας πήρε ένα μέσο αριθμό. 1354 01:01:04,490 --> 01:01:06,550 Αλλιώς αν ίσων ισούται με 3, υψηλό. 1355 01:01:06,550 --> 01:01:08,060 Αλλιώς άκυρη. 1356 01:01:08,060 --> 01:01:09,820 >> Έτσι, ας πούμε ότι ήταν το σενάριο μας. 1357 01:01:09,820 --> 01:01:14,060 Ας πούμε ότι μπαίνουμε 4, οπότε αναμένουμε άκυρη. 1358 01:01:14,060 --> 01:01:17,410 Ο τρόπος ότι αν άλλο αν άλλος αν η προσέγγιση δεν πρόκειται να λειτουργήσει είναι 1359 01:01:17,410 --> 01:01:18,740 ελέγχει την πρώτη προϋπόθεση. 1360 01:01:18,740 --> 01:01:19,776 Δεν είναι ικανοποιημένος. 1361 01:01:19,776 --> 01:01:21,150 Έτσι ελέγχουμε τη δεύτερη προϋπόθεση. 1362 01:01:21,150 --> 01:01:21,940 Δεν είναι ικανοποιημένος. 1363 01:01:21,940 --> 01:01:23,023 Ελέγξτε την τρίτη προϋπόθεση. 1364 01:01:23,023 --> 01:01:23,640 Δεν είσαι ικανοποιημένος. 1365 01:01:23,640 --> 01:01:26,650 Έτσι πάμε στο άλλο και να εκτυπώσετε άκυρη. 1366 01:01:26,650 --> 01:01:30,169 >> Ο τρόπος που λειτουργεί το διακόπτη είναι ότι συγκεντρώνει κάτω 1367 01:01:30,169 --> 01:01:31,960 σε αυτό που πάμε να καλέσετε έναν πίνακα άλμα. 1368 01:01:31,960 --> 01:01:33,180 1369 01:01:33,180 --> 01:01:37,120 Η κύρια ιδέα ον ότι όταν μπαίνετε 4, 1370 01:01:37,120 --> 01:01:39,090 μπορεί να πάει αμέσως στην προεπιλογή. 1371 01:01:39,090 --> 01:01:41,460 Δεν χρειάζεται να ελέγξετε π.μ. περίπτωση 1; 1372 01:01:41,460 --> 01:01:42,350 Όχι δεν είναι αυτό. 1373 01:01:42,350 --> 01:01:42,850 Περίπτωση 2; 1374 01:01:42,850 --> 01:01:43,240 Όχι. 1375 01:01:43,240 --> 01:01:43,770 Περίπτωση 3; 1376 01:01:43,770 --> 01:01:44,270 Όχι. 1377 01:01:44,270 --> 01:01:45,090 Προεπιλογή. 1378 01:01:45,090 --> 01:01:47,610 Εντάξει, αυτό πρέπει να είναι όπου θέλετε, και στη συνέχεια να εκτελέσει αυτό. 1379 01:01:47,610 --> 01:01:49,590 Όχι, θα πληρωθείτε αμέσως στην προεπιλογή. 1380 01:01:49,590 --> 01:01:51,900 Ή μπαίνω 2, είναι αμέσως πρόκειται να πάει το 2 1381 01:01:51,900 --> 01:01:54,060 χωρίς να χρειάζεται να περάσουν από την περίπτωση 1. 1382 01:01:54,060 --> 01:01:57,820 >> Έτσι, με αυτόν τον τρόπο, ρεαλιστικά στις μέρες μας που είναι 1383 01:01:57,820 --> 01:02:00,250 δεν είναι ότι ένα μεγάλο μέρος της αύξησης της αποτελεσματικότητας. 1384 01:02:00,250 --> 01:02:02,880 Συνήθως οι υπολογιστές είναι αρκετά γρήγορα, και αυτό δεν είναι τόσο μεγάλη. 1385 01:02:02,880 --> 01:02:07,270 Αλλά αυτό είναι η περίπτωση κατά την οποία διακόπτες είναι ταχύτερη. 1386 01:02:07,270 --> 01:02:10,380 Εάν είστε πραγματικά προσπαθεί να βελτιστοποιήσουν, χρησιμοποιήστε ένα διακόπτη. 1387 01:02:10,380 --> 01:02:11,980 1388 01:02:11,980 --> 01:02:12,710 >> ALLISON: Cool. 1389 01:02:12,710 --> 01:02:15,270 Και τότε έχουμε τριαδικό φορέα. 1390 01:02:15,270 --> 01:02:19,470 Έτσι ξέρω ανέφερα νωρίτερα η λέξη συντακτική ζάχαρη. 1391 01:02:19,470 --> 01:02:24,160 Έτσι είναι απλά πράγματα που κάνουν κωδικό σας πολύ πιο συνοπτικό. 1392 01:02:24,160 --> 01:02:25,590 Έτσι, αυτό είναι μια από αυτές τις περιπτώσεις. 1393 01:02:25,590 --> 01:02:31,430 >> Έτσι τριαδικό χειριστής είναι ερωτηματικό του παχέος εντέρου, όπως βλέπουμε στο κορδόνι γραμμή 1394 01:02:31,430 --> 01:02:35,810 s ισούται με n μεγαλύτερο από 100 ερωτηματικό χαμηλή υψηλή παχέος εντέρου. 1395 01:02:35,810 --> 01:02:41,800 Έτσι, βασικά, πώς λειτουργεί αυτό είναι ότι είναι το n μεγαλύτερο από 100 αποτελεί προϋπόθεση. 1396 01:02:41,800 --> 01:02:43,674 Έτσι, νομίζω ότι μπορεί να έχει νόημα. 1397 01:02:43,674 --> 01:02:44,840 Είναι σαν να ζητάμε από μια ερώτηση. 1398 01:02:44,840 --> 01:02:47,320 Είναι λέγοντας ω, είναι η μεγαλύτερο από 100. 1399 01:02:47,320 --> 01:02:48,340 Ποιος ξέρει; 1400 01:02:48,340 --> 01:02:50,750 Και αν αυτό αποτιμάται σε αλήθεια, πρόκειται να σας δώσει 1401 01:02:50,750 --> 01:02:54,270 το πρώτο πράγμα που είναι που αναφέρονται εκεί, το οποίο είναι υψηλό. 1402 01:02:54,270 --> 01:02:55,840 Διαφορετικά πρόκειται να σας δώσει χαμηλή. 1403 01:02:55,840 --> 01:03:01,210 Έτσι, αυτό είναι απλά μια πραγματικά απλή και αποτελεσματικός τρόπος για να το κάνετε σαν αν άλλος. 1404 01:03:01,210 --> 01:03:02,780 Αυτό είναι όλο αυτό είναι. 1405 01:03:02,780 --> 01:03:07,450 >> Και αν ήταν να γράψω αυτό το ως εάν άλλος υπό όρους, 1406 01:03:07,450 --> 01:03:12,480 θα ήταν αν το η είναι μεγαλύτερο από 100, να επιστρέψει σε υψηλά επίπεδα. 1407 01:03:12,480 --> 01:03:14,220 Αλλιώς, επιστρέφει χαμηλή. 1408 01:03:14,220 --> 01:03:17,570 Αυτό είναι απλά ένα πολύ πιο συνοπτικό τρόπο της γραφής του. 1409 01:03:17,570 --> 01:03:27,090 >> ROB BOWDEN: Έτσι, αυτό το συγκεκριμένο παράδειγμα είναι κάθε φορά που κάνεις κάτι 1410 01:03:27,090 --> 01:03:30,190 σαν αυτό, αυτό είναι το μοτίβο όπου μπορώ να χρησιμοποιήσω τριαδικό πολύ συχνά. 1411 01:03:30,190 --> 01:03:31,540 1412 01:03:31,540 --> 01:03:35,460 Έτσι, δεν έχουμε μιλήσει για το πεδίο εφαρμογής ακόμη, αλλά μισώ να δει ερωτηματικό συμβολοσειράς s. 1413 01:03:35,460 --> 01:03:39,150 Εάν n είναι μεγαλύτερη από 100, s ισούται με υψηλό. 1414 01:03:39,150 --> 01:03:40,660 Αλλιώς, s ισούται χαμηλή. 1415 01:03:40,660 --> 01:03:45,070 Έτσι, αυτό το μοτίβο, αυτές οι πέντε γραμμές του κώδικα κυριολεκτικά 100% του χρόνου 1416 01:03:45,070 --> 01:03:49,800 μπορεί να μεταφερθεί σε ό, τι ήταν εκεί με ένα τριαδικό. 1417 01:03:49,800 --> 01:03:52,340 Έτσι, το τριαδικό, μία γραμμή κώδικα. 1418 01:03:52,340 --> 01:03:54,640 Το αν άλλος, πέντε. 1419 01:03:54,640 --> 01:03:56,910 Αυτό είναι ένα παράδειγμα Ι σημείο έξω κάθε φορά. 1420 01:03:56,910 --> 01:03:59,250 Αυτό θα ήταν μεγάλη θέση για ένα τριαδικό φορέα. 1421 01:03:59,250 --> 01:04:00,647 Είναι τόσο καθαρό. 1422 01:04:00,647 --> 01:04:01,980 Αλλά οι άνθρωποι έχουν την τάση να μην το χρησιμοποιούν. 1423 01:04:01,980 --> 01:04:06,140 1424 01:04:06,140 --> 01:04:08,030 >> ALLISON: Πάρτε μακριά Gabe. 1425 01:04:08,030 --> 01:04:11,110 >> GABRIEL: Μέχρι τώρα εσείς όλα έμαθε σε διάλεξη αυτή την εβδομάδα 1426 01:04:11,110 --> 01:04:13,420 ότι τα πάντα σε ένα υπολογιστή είναι δυαδική, σωστά; 1427 01:04:13,420 --> 01:04:14,570 Ακριβώς όπως και οι λάμπες εδώ. 1428 01:04:14,570 --> 01:04:16,492 Μπορείτε είτε να ενεργοποιηθεί και να απενεργοποιηθεί. 1429 01:04:16,492 --> 01:04:18,450 Και από τα πάντα, εννοώ κυριολεκτικά τα πάντα. 1430 01:04:18,450 --> 01:04:24,272 Μερικοί αριθμοί και χαρακτήρες, και έγχορδα, και ακόμη και ο κώδικας που γράφετε, όταν 1431 01:04:24,272 --> 01:04:26,480 παίρνει καταρτίζονται σε μηχανή κώδικα και τέτοια πράγματα, 1432 01:04:26,480 --> 01:04:29,230 έτσι όλα βράζει κάτω σε 0 και 1 ». 1433 01:04:29,230 --> 01:04:34,540 >> Και έτσι, όταν έχουμε να κάνουμε με ακέραιους αριθμούς, που 1434 01:04:34,540 --> 01:04:38,000 Είναι κάτι που είναι τεχνικά πολύ απλό, θα πρέπει να είμαστε σε θέση να κάνουμε πράγματα 1435 01:04:38,000 --> 01:04:40,630 όπως την προσθήκη τους, η οποία είναι ίσως ένα από τα πιο απλά πράγματα 1436 01:04:40,630 --> 01:04:42,300 μπορείτε να κάνετε με δύο ακέραιοι, σωστά; 1437 01:04:42,300 --> 01:04:47,410 Έτσι, πρόσθεση και αφαίρεση λειτουργεί μόνο όπως αυτό λειτουργεί σε δεκαδική μορφή, 1438 01:04:47,410 --> 01:04:50,780 με εξαίρεση εδώ είναι δυαδική, σωστά; 1439 01:04:50,780 --> 01:04:52,090 Έτσι είναι με βάση το δύο. 1440 01:04:52,090 --> 01:04:54,070 Έτσι, προσθέστε 1 συν 1. 1441 01:04:54,070 --> 01:04:57,020 Αυτό δίνει 0 και 1 μεταφέρει. 1442 01:04:57,020 --> 01:05:01,335 Και συνεχίζουμε να κάνουμε ότι, έτσι και τώρα έρχεται η πιο ενδιαφέρουσα ερώτηση. 1443 01:05:01,335 --> 01:05:03,730 1444 01:05:03,730 --> 01:05:07,710 >> Ξέρουμε πώς να εκπροσωπεί όλους θετικών ακεραίων στον υπολογιστή, 1445 01:05:07,710 --> 01:05:09,870 αλλά ας κάνουν αυτό μια άσκηση. 1446 01:05:09,870 --> 01:05:15,240 Προσποιηθείτε ότι εσείς είστε όλοι στο 1960 ή κάτι που προσπαθεί να δημιουργήσει έναν υπολογιστή, 1447 01:05:15,240 --> 01:05:19,950 και θα πρέπει να έρθει μέχρι του ένας τρόπος αποθήκευσης μείον 1, 1448 01:05:19,950 --> 01:05:22,554 για παράδειγμα, ή μείον οποιαδήποτε ακέραιος για το θέμα αυτό. 1449 01:05:22,554 --> 01:05:23,470 Πώς θα το κάνετε αυτό; 1450 01:05:23,470 --> 01:05:27,820 1451 01:05:27,820 --> 01:05:29,220 Οποιεσδήποτε ιδέες; 1452 01:05:29,220 --> 01:05:31,302 Απλά ρίξει τίποτα σε μένα. 1453 01:05:31,302 --> 01:05:32,264 Ναι; 1454 01:05:32,264 --> 01:05:39,480 >> ΚΟΙΝΟ: [δεν ακούγεται] ορίζουν μια ειδική περίπτωση που σας [δεν ακούγεται]. 1455 01:05:39,480 --> 01:05:42,590 >> GABRIEL: Μπορείτε να ορίσετε μια ειδικό bit, η οποία θα είναι 0 ή 1. 1456 01:05:42,590 --> 01:05:45,590 Ας πούμε ένα, αν είναι θετική και 0 αν είναι αρνητικό. 1457 01:05:45,590 --> 01:05:48,171 Και στη συνέχεια το υπόλοιπο του bit είναι απλά να αποθηκεύσετε τον αριθμό. 1458 01:05:48,171 --> 01:05:48,670 Cool. 1459 01:05:48,670 --> 01:05:49,990 Έτσι, αυτό είναι μια πολύ καλή ιδέα. 1460 01:05:49,990 --> 01:05:51,550 Έχουμε, δεν ξέρω, 200. 1461 01:05:51,550 --> 01:05:54,720 Και αν το πρώτο bit είναι ενεργοποιημένη, τότε είναι συν 200. 1462 01:05:54,720 --> 01:05:57,270 Εάν είναι απενεργοποιημένη, θα είναι μείον 200. 1463 01:05:57,270 --> 01:05:58,380 Cool. 1464 01:05:58,380 --> 01:06:01,350 >> Υπάρχει μόνο ένα μικρό πρόβλημα με αυτό, 1465 01:06:01,350 --> 01:06:05,370 η οποία είναι αν προσπαθήσουμε να συνοψίσω τα πράγματα. 1466 01:06:05,370 --> 01:06:18,910 Φανταστείτε λοιπόν έχουμε 11111 εδώ, και είμαστε αθροίζοντας αυτό με 00100 οτιδήποτε. 1467 01:06:18,910 --> 01:06:21,630 Αν αυτά τα δύο είναι θετικά, αυτό είναι εντάξει. 1468 01:06:21,630 --> 01:06:24,470 Αλλά τότε, αν μία από τις αυτά είναι αρνητική, όπως 1469 01:06:24,470 --> 01:06:27,410 ας πούμε ότι αυτό το κομμάτι εδώ είναι αυτός που είναι υπεύθυνος 1470 01:06:27,410 --> 01:06:31,390 for-- Πάω να κάνω μια separate-- έτσι αυτό σημαίνει ότι ο αριθμός αυτός εδώ 1471 01:06:31,390 --> 01:06:31,970 είναι θετική. 1472 01:06:31,970 --> 01:06:34,450 Αυτό σημαίνει ότι αυτό το αριθμός εδώ είναι αρνητική, σωστά; 1473 01:06:34,450 --> 01:06:37,010 >> Αλλά στη συνέχεια, όταν είστε πρόκειται να τα συνοψίσω, σας 1474 01:06:37,010 --> 01:06:40,180 χρειάζεται μια εντολή if λέγοντας ω αν αυτό είναι 0, 1475 01:06:40,180 --> 01:06:43,479 τότε το άθροισμά μου θα είναι κάτι διαφορετικό, σωστά; 1476 01:06:43,479 --> 01:06:45,270 Έτσι, υπάρχει μια ελαφρά πιο έξυπνος τρόπος για να κάνουμε 1477 01:06:45,270 --> 01:06:48,520 ότι, η οποία ονομάζεται συμπλήρωμα του δύο. 1478 01:06:48,520 --> 01:06:52,350 Έτσι, βασικά αυτό που κάνουμε είναι να ορίσουμε μείον 1 1479 01:06:52,350 --> 01:06:57,250 να είναι το πράγμα ότι αν προσθέτουμε έως 1 μας δίνει 0. 1480 01:06:57,250 --> 01:06:59,470 1481 01:06:59,470 --> 01:07:00,860 Επιτρέψτε μου να επαναλάβω ότι. 1482 01:07:00,860 --> 01:07:03,280 Ας πούμε ότι αυτό εδώ είναι 1. 1483 01:07:03,280 --> 01:07:08,110 1484 01:07:08,110 --> 01:07:13,570 Ποιο είναι το πράγμα που φυσικά στο θετικών ακεραίων 1485 01:07:13,570 --> 01:07:15,570 προστίθενται σε αυτό μας δίνει 0; 1486 01:07:15,570 --> 01:07:19,150 1487 01:07:19,150 --> 01:07:21,030 Τι και αν προσπαθούμε να το προσθέσετε σε αυτόν τον αριθμό; 1488 01:07:21,030 --> 01:07:22,830 1489 01:07:22,830 --> 01:07:28,032 Εμείς πάμε για να have-- ΟΚ, οπότε ας προσθέσουμε. 1490 01:07:28,032 --> 01:07:32,820 1491 01:07:32,820 --> 01:07:38,065 Εμείς πάμε για να έχουμε 1 συν 1 είναι 0, και στη συνέχεια μεταφέρει. 1492 01:07:38,065 --> 01:07:40,160 1493 01:07:40,160 --> 01:07:45,490 Και μετά θα πάμε για να πάρει 0 και πάλι. 1494 01:07:45,490 --> 01:07:47,730 1495 01:07:47,730 --> 01:07:48,820 Παίρνω σύγχυση. 1496 01:07:48,820 --> 01:07:51,670 Και θα πάμε για να πάρει το 0 και 0 και 0 και 0 και 0 και 0. 1497 01:07:51,670 --> 01:07:52,450 Πολλά από τα 0. 1498 01:07:52,450 --> 01:07:56,240 >> Στο πολύ τελευταία, δεν είμαστε πρόκειται να είναι σε θέση να μεταφέρει, 1499 01:07:56,240 --> 01:07:59,614 γιατί ας πούμε ότι είμαστε μόνο που ασχολούνται με ένα byte, οπότε μόνο 8 bits. 1500 01:07:59,614 --> 01:08:02,780 Έτσι τι ο υπολογιστής κάνει από προεπιλογή είναι ακριβώς ξεχνά γι 'αυτό [δεν ακούγεται], 1501 01:08:02,780 --> 01:08:03,279 Εντάξει; 1502 01:08:03,279 --> 01:08:04,530 1503 01:08:04,530 --> 01:08:06,880 Έτσι, αυτό είναι αυτό που ονομάζεται συμπλήρωμα του δύο του. 1504 01:08:06,880 --> 01:08:15,180 Εμείς απλά να καθορίσει μείον 1 να είναι η πράγμα εδώ ότι αν προσθέσω ότι σε 1 1505 01:08:15,180 --> 01:08:15,995 θα σας δώσω 0. 1506 01:08:15,995 --> 01:08:17,609 1507 01:08:17,609 --> 01:08:20,180 Και αυτό είναι αρκετά δροσερό γιατί εμείς δεν κάνουμε πραγματικά 1508 01:08:20,180 --> 01:08:24,090 Πρέπει αργά για να εφαρμόσουν ένα διαφορετικό είδος του αθροίσματος 1509 01:08:24,090 --> 01:08:26,590 ανάλογα με το αν αυτό είναι ένα αρνητικός ή ένας θετικός αριθμός. 1510 01:08:26,590 --> 01:08:27,465 Μήπως αυτό έχει νόημα; 1511 01:08:27,465 --> 01:08:28,740 1512 01:08:28,740 --> 01:08:32,370 >> Έτσι, ένα πράγμα που κάνουμε εδώ για να μετατρέψει 1513 01:08:32,370 --> 01:08:38,550 μεταξύ ενός θετικού και ενός αρνητικού ακέραιος τότε εμείς αναστρέψετε τα πάντα, 1514 01:08:38,550 --> 01:08:40,930 και στη συνέχεια προσθέτουμε 1 του εν λόγω αριθμού. 1515 01:08:40,930 --> 01:08:43,140 Αν προσπαθήσετε να το κάνετε μόνοι σας σε ένα κομμάτι χαρτί, 1516 01:08:43,140 --> 01:08:44,681 θα πάμε να δούμε ότι έχει νόημα. 1517 01:08:44,681 --> 01:08:51,000 Αλλά αν πάρω αυτό το νούμερο εδώ, αυτό είναι πέντε. 1518 01:08:51,000 --> 01:08:54,859 Έτσι, αν στρίψω τα πάντα εδώ, έτσι 1, 1, 1, 1, 1. 1519 01:08:54,859 --> 01:08:55,880 1520 01:08:55,880 --> 01:08:57,830 Flip, flip, αναστροφή. 1521 01:08:57,830 --> 01:09:00,130 Και τότε μπορώ να προσθέσω 1 σε αυτό. 1522 01:09:00,130 --> 01:09:02,750 Πάω να έχουν ακριβώς μείον 5. 1523 01:09:02,750 --> 01:09:03,250 Εντάξει; 1524 01:09:03,250 --> 01:09:06,220 >> Αυτό το είδος της νόημα, διότι αν θα προσπαθήσουμε να συνοψίσουμε αυτό με τον αριθμό 1525 01:09:06,220 --> 01:09:10,229 ότι είχαμε πριν, η οποία was-- ας αναστρέψετε αυτό και πάλι. 1526 01:09:10,229 --> 01:09:12,999 Ήταν 101 και πολλά από τα 0. 1527 01:09:12,999 --> 01:09:13,795 1528 01:09:13,795 --> 01:09:15,670 Αν προσπαθήσετε να προσθέσετε αυτά δύο αριθμούς μαζί, 1529 01:09:15,670 --> 01:09:16,961 θα πάμε να έχουν ακριβώς 0. 1530 01:09:16,961 --> 01:09:18,920 1531 01:09:18,920 --> 01:09:19,460 ΟΚ. 1532 01:09:19,460 --> 01:09:19,884 Οποιεσδήποτε ερωτήσεις; 1533 01:09:19,884 --> 01:09:20,759 >> ΚΟΙΝΟ: [δεν ακούγεται] 1534 01:09:20,759 --> 01:09:25,790 1535 01:09:25,790 --> 01:09:27,280 >> GABRIEL: Τι εννοείς; 1536 01:09:27,280 --> 01:09:29,240 >> ΚΟΙΝΟ: Αρνητικό θετική [δεν ακούγεται]. 1537 01:09:29,240 --> 01:09:33,215 >> GABRIEL: Όχι, μπορείτε να αναστρέψετε και προσθέτετε 1 πάντα. 1538 01:09:33,215 --> 01:09:34,081 1539 01:09:34,081 --> 01:09:34,580 Ναι. 1540 01:09:34,580 --> 01:09:36,910 1541 01:09:36,910 --> 01:09:39,680 Εντάξει, έτσι που οι χαρακτήρες κωδικοποιούνται επίσης εκτελέσιμα. 1542 01:09:39,680 --> 01:09:42,649 Έχουμε πίνακα ASCII, όπως σας Επίσης είδα σε διάλεξη, σωστά; 1543 01:09:42,649 --> 01:09:45,040 Έτσι είναι βασικά μια χαρτογράφηση των πραγμάτων. 1544 01:09:45,040 --> 01:09:50,960 Και εδώ δεν μπορώ να τονίσω αρκετά ότι για έναν υπολογιστή, μια και 65 1545 01:09:50,960 --> 01:09:52,770 είναι κυριολεκτικά το ίδιο πράγμα. 1546 01:09:52,770 --> 01:10:03,430 Έτσι, αν έχω γράψει κάτι σαν char c ισούται με ένα, θα μπορούσε ταυτόχρονα 1547 01:10:03,430 --> 01:10:06,890 απλά γράψτε 65 εδώ, και θα είναι ακριβώς το ίδιο, εντάξει; 1548 01:10:06,890 --> 01:10:08,470 Δεν υπάρχει καμία απολύτως διαφορά. 1549 01:10:08,470 --> 01:10:12,420 >> Εμείς συνήθως τείνουν να θέσουν χαρακτήρες στις μεταβλητές του τύπου. 1550 01:10:12,420 --> 01:10:16,770 Char, όχι επειδή είναι κατ 'ουσίαν γίνεται για αυτό, αλλά επειδή 1551 01:10:16,770 --> 01:10:18,050 της ανθρώπινης σύμβαση. 1552 01:10:18,050 --> 01:10:22,410 Αλλά μπορείτε απλά να ασχοληθεί με ακέραιους αριθμούς αντί για μεταβλητές τύπου char, 1553 01:10:22,410 --> 01:10:23,490 και θα είστε μια χαρά. 1554 01:10:23,490 --> 01:10:28,410 Η μόνη πραγματική διαφορά μεταξύ ενός char c και έναν int i 1555 01:10:28,410 --> 01:10:31,960 είναι ότι ένας int έχει τέσσερα bytes στις περισσότερες συστήματα, ενώ ένα char έχει ένα byte. 1556 01:10:31,960 --> 01:10:33,070 1557 01:10:33,070 --> 01:10:35,460 Είναι ουσιαστικά η ίδιο πράγμα από την άποψη των δεδομένων. 1558 01:10:35,460 --> 01:10:36,990 1559 01:10:36,990 --> 01:10:37,990 Λοιπόν, τι θα εκτυπώσετε εδώ; 1560 01:10:37,990 --> 01:10:43,780 Εδώ είμαστε εκτυπώνετε ένα ψηφίο χρησιμοποιώντας printf με συν 1, και ακριβώς όπως ακέραιοι, 1561 01:10:43,780 --> 01:10:46,240 χαρακτήρες μπορεί να συνοψιστεί, έτσι χαρακτήρες μπορούν επίσης να αθροίζονται. 1562 01:10:46,240 --> 01:10:47,890 Έτσι, αυτό είναι ακριβώς 65. 1563 01:10:47,890 --> 01:10:49,950 Έτσι, εκεί πρόκειται να είναι 66, και εδώ έχουμε 1564 01:10:49,950 --> 01:10:56,860 65 συν λίγο ένα μεγάλο μείον Α, η οποία θα είναι, εγώ πραγματικά δεν ξέρω. 1565 01:10:56,860 --> 01:11:00,900 Αλλά θα είναι ακριβώς το κενό ανάμεσα στα κεφαλαία γράμματα 1566 01:11:00,900 --> 01:11:07,800 και και τα μικρότερα γράμματα, έτσι θα πάμε να πάρετε ένα μικρό, σωστά; 1567 01:11:07,800 --> 01:11:08,300 Ναι. 1568 01:11:08,300 --> 01:11:11,740 Έτσι, αυτό πρόκειται να εκτυπώσετε μια χαρακτήρα που είναι ακριβώς αυτό. 1569 01:11:11,740 --> 01:11:12,260 Καλό; 1570 01:11:12,260 --> 01:11:12,860 Οποιεσδήποτε ερωτήσεις; 1571 01:11:12,860 --> 01:11:16,320 1572 01:11:16,320 --> 01:11:19,430 >> Εδώ έχουμε μια δέσμη των διαφορετικών είδη για αριθμητικές μεταβλητές. 1573 01:11:19,430 --> 01:11:20,620 Έχουμε ήδη μιλήσει για int. 1574 01:11:20,620 --> 01:11:21,740 1575 01:11:21,740 --> 01:11:27,760 Float είναι απλά ένας τρόπος to-- αυτό είναι πραγματικά αστείο, γιατί όταν έμαθα για πρώτη φορά 1576 01:11:27,760 --> 01:11:32,320 να προγραμματίσετε πίσω στην ημέρα με Python, το πρώτο πρόγραμμα που έχω ποτέ 1577 01:11:32,320 --> 01:11:37,480 Προσπάθησα να γράψω, είδα ότι υπήρχε μια Τύπος κατάπτωσης και ένας τύπος που ονομάζεται πλωτήρα. 1578 01:11:37,480 --> 01:11:39,800 Και ο πλωτήρας ήταν για όλους τους πραγματικούς αριθμούς. 1579 01:11:39,800 --> 01:11:43,290 Έτσι, μετά ρώτησα γιατί θα πρέπει Έχω χρησιμοποιήσει ποτέ έναν int τότε; 1580 01:11:43,290 --> 01:11:45,590 Διότι, αν μπορώ να χρησιμοποιήσω όλους πραγματικών αριθμών με πλωτήρα, 1581 01:11:45,590 --> 01:11:47,120 Θα σταματήσει μόνο με τη χρήση ints, σωστά; 1582 01:11:47,120 --> 01:11:49,550 Επειδή οι πραγματικοί αριθμοί είναι μοιάζει πολύ πιο γενικό. 1583 01:11:49,550 --> 01:11:51,820 1584 01:11:51,820 --> 01:11:54,060 >> Αποδεικνύεται ότι αυτό είναι δεν συμβαίνει σε υπολογιστές 1585 01:11:54,060 --> 01:11:58,480 επειδή είναι κατ 'ουσίαν διαφορετικά πράγματα. 1586 01:11:58,480 --> 01:12:01,470 Έτσι ακέραιοι και άρματα, η δραστηριότητες που μπορείτε να κάνετε για να τους 1587 01:12:01,470 --> 01:12:04,739 είναι ουσιαστικά διαφορετική, διότι από τον τρόπο που αποθηκεύονται, εντάξει; 1588 01:12:04,739 --> 01:12:07,280 Εμείς πάμε να μιλήσουμε λίγο λίγο περισσότερο για αυτό σε μια δεύτερη. 1589 01:12:07,280 --> 01:12:09,110 >> Έτσι διπλό είναι απλά ένα μεγαλύτερο πλωτήρα. 1590 01:12:09,110 --> 01:12:12,830 Συνήθως στα περισσότερα συστήματα, ένα φλοτέρ είναι τέσσερα bytes, ακριβώς όπως έναν int. 1591 01:12:12,830 --> 01:12:15,440 Και ένα διπλό είναι οκτώ bytes. 1592 01:12:15,440 --> 01:12:21,450 Μια πολύ καιρό είναι στην πραγματικότητα απλώς ένα σύμβολο ότι θα προστεθούν σε ένα τύπο σαν int. 1593 01:12:21,450 --> 01:12:24,040 Λέτε πολύ καιρό int σαν αυτό. 1594 01:12:24,040 --> 01:12:28,550 Μακριά long int x, για να το κάνει πλέον. 1595 01:12:28,550 --> 01:12:32,310 Έτσι, στα περισσότερα συστήματα, που θα δώσει οκτώ bytes αντί της συνήθους τέσσερα. 1596 01:12:32,310 --> 01:12:35,620 Και μπορείτε πραγματικά να πέσει η σε, έτσι ώστε να μπορούμε απλά να λέμε πολύ καιρό, 1597 01:12:35,620 --> 01:12:37,240 και ότι λειτουργεί πάρα πολύ, εντάξει; 1598 01:12:37,240 --> 01:12:42,850 Μπορείτε επίσης να κάνετε άλλα πράγματα, όπως unsigned int, ή πάλι μόνο ανυπόγραφα 1599 01:12:42,850 --> 01:12:43,680 θα λειτουργήσει επίσης. 1600 01:12:43,680 --> 01:12:49,370 Και αυτό θα κάνει x είναι μια μεταβλητή όπως και τα πάντα είναι θετική, 1601 01:12:49,370 --> 01:12:53,231 έτσι δεν μπορείτε πραγματικά να έχει αρνητικές αριθμούς με τον τρόπο που είδαμε μέχρι εδώ. 1602 01:12:53,231 --> 01:12:56,484 1603 01:12:56,484 --> 01:12:58,650 Έτσι, μετά από θαυμάσια σημείο και ακρίβειας κινητής. 1604 01:12:58,650 --> 01:13:01,890 Αυτός είναι ένας από τους λόγους για τους οποίους σας θέλετε να χρησιμοποιήσετε ints αντί για πλωτήρες, 1605 01:13:01,890 --> 01:13:04,370 επειδή ints είναι 100% ακριβή, σωστά; 1606 01:13:04,370 --> 01:13:06,170 Είναι ακριβώς αυτός ο αριθμός. 1607 01:13:06,170 --> 01:13:11,910 Για πλωτά σημεία, αν λένε απάντηση είναι ίση με 1 πάνω από 10-- 1608 01:13:11,910 --> 01:13:14,690 Τυχαίνει να έχουμε αυτό ακριβώς το πρόγραμμα εδώ, float.c. 1609 01:13:14,690 --> 01:13:16,390 1610 01:13:16,390 --> 01:13:19,420 Που εκτυπώνει έως 20 δεκαδικά ψηφία. 1611 01:13:19,420 --> 01:13:23,270 1 διαιρούμενο με 10, και ότι συνήθως είναι 0,1, σωστά; 1612 01:13:23,270 --> 01:13:27,910 Αλλά εδώ, αν κάνουμε επιπλέουν και στη συνέχεια θα το τρέξει, 1613 01:13:27,910 --> 01:13:30,320 βλέπουμε ότι δεν είναι ακριβώς 0.1. 1614 01:13:30,320 --> 01:13:33,570 Είναι 0,149 κάτι. 1615 01:13:33,570 --> 01:13:35,570 >> Και γιατί συμβαίνει αυτό; 1616 01:13:35,570 --> 01:13:40,390 Επειδή δεν μπορείτε να αντιπροσωπεύουν πραγματικά κάθε μόνο δυνατό πραγματικός αριθμός στη μνήμη 1617 01:13:40,390 --> 01:13:42,730 επειδή υπάρχουν uncountably πολλοί από αυτούς. 1618 01:13:42,730 --> 01:13:48,360 Έτσι είμαστε τεχνικά σε θέση μόνο να αντιπροσωπεύουν μια πεπερασμένη ποσότητα από αυτά 1619 01:13:48,360 --> 01:13:50,470 με μια πεπερασμένη ποσότητα των δεδομένων. 1620 01:13:50,470 --> 01:13:52,050 Αλλά είναι πραγματικά ενδιαφέρουσα. 1621 01:13:52,050 --> 01:13:54,920 Τώρα, αυτό εγείρει το ερώτημα για το πώς θα κάνατε 1622 01:13:54,920 --> 01:13:59,299 πάει για εκπροσωπούν αυτό με τα κομμάτια, σωστά; 1623 01:13:59,299 --> 01:14:00,340 Λοιπόν, πώς είναι αποθηκευμένα επιπλέει; 1624 01:14:00,340 --> 01:14:01,970 1625 01:14:01,970 --> 01:14:03,730 Με ακέραιοι ήταν εύκολο. 1626 01:14:03,730 --> 01:14:06,690 Αλλά με πλωτήρες που θέλετε να μεγιστοποιηθεί το εύρος, 1627 01:14:06,690 --> 01:14:10,530 και θέλετε να είναι σε θέση να αντιπροσωπεύουν τεράστιους αριθμούς και πολύ μικρό αριθμό, όπως 1628 01:14:10,530 --> 01:14:14,210 0.000001 ταυτόχρονα. 1629 01:14:14,210 --> 01:14:15,180 Έτσι, και πάλι, το ίδιο το παιχνίδι. 1630 01:14:15,180 --> 01:14:20,470 Έχει κανείς καμία ιδέα για το πώς θα μπορούσαμε να πάει για εκπροσωπούν επιπλέουν στη μνήμη; 1631 01:14:20,470 --> 01:14:26,820 1632 01:14:26,820 --> 01:14:27,970 Απλά ρίξει τίποτα. 1633 01:14:27,970 --> 01:14:29,930 1634 01:14:29,930 --> 01:14:30,856 Ναι, παρακαλώ. 1635 01:14:30,856 --> 01:14:33,552 >> ΚΟΙΝΟ: [δεν ακούγεται] ως αν ήταν δύο ints και ένα 1636 01:14:33,552 --> 01:14:36,890 είναι η [δεν ακούγεται] και ένα ον πάντα μετά την υποδιαστολή. 1637 01:14:36,890 --> 01:14:37,640 GABRIEL: Εντάξει, δροσερό. 1638 01:14:37,640 --> 01:14:40,300 Έτσι, δύο διαφορετικές ακέραιοι. 1639 01:14:40,300 --> 01:14:45,260 Μπορείτε να έχετε 12.45, έτσι ώστε να είναι 12 και 45. 1640 01:14:45,260 --> 01:14:45,890 Νίκαιας. 1641 01:14:45,890 --> 01:14:46,973 Τι ere θα πας να πεις; 1642 01:14:46,973 --> 01:14:48,420 1643 01:14:48,420 --> 01:14:49,430 Το ίδιο πράγμα; 1644 01:14:49,430 --> 01:14:49,930 Ναι; 1645 01:14:49,930 --> 01:14:55,630 >> ΚΟΙΝΟ: [δεν ακούγεται] σημειογραφία όπου μπορείτε να διαχωρίσετε τη βάση. 1646 01:14:55,630 --> 01:14:58,910 >> GABRIEL: Επιστημονική σημειογραφία, ναι αυτό είναι συνήθως ό, τι συμβαίνει. 1647 01:14:58,910 --> 01:15:01,350 Έτσι, αυτό είναι αυτό που ονομάζεται δεκαδικό. 1648 01:15:01,350 --> 01:15:06,490 Αυτό είναι ό, τι είναι στην πραγματικότητα η αριθμό και, στη συνέχεια, ο εκθέτης 1649 01:15:06,490 --> 01:15:08,780 είναι ακριβώς όπου το κόμμα είναι, σωστά; 1650 01:15:08,780 --> 01:15:13,720 Έτσι, αυτό πρόκειται να είναι κάτι της μορφής 1, 2, 3, 4, 5 φορές 10 1651 01:15:13,720 --> 01:15:15,000 στο μείον 4. 1652 01:15:15,000 --> 01:15:17,800 Απλά συνειδητοποίησα that-- ναι, ακριβώς. 1653 01:15:17,800 --> 01:15:23,372 Και τότε αυτό 10 στο μείον 4 είναι πρόκειται να καθορίσει όπου το κόμμα είναι, εντάξει; 1654 01:15:23,372 --> 01:15:24,330 Στη Βραζιλία χρησιμοποιούμε κόμμα. 1655 01:15:24,330 --> 01:15:26,795 Εδώ εσείς χρησιμοποιείτε την κουκίδα. 1656 01:15:26,795 --> 01:15:27,640 Έτσι, μια κουκίδα. 1657 01:15:27,640 --> 01:15:28,860 1658 01:15:28,860 --> 01:15:34,840 >> Και αυτό είναι δροσερό, γιατί τότε μπορείς εστιάσει πολλά κομμάτια σας σε αυτόν τον τύπο 1659 01:15:34,840 --> 01:15:40,863 εδώ, στο δεκαδικό, και, στη συνέχεια, ότι είναι πρόκειται να είναι πραγματική ακρίβεια σας. 1660 01:15:40,863 --> 01:15:41,920 1661 01:15:41,920 --> 01:15:47,175 Και μπορείτε να το κάνετε αυτό, είτε σε δεκαδικό ή στο σύστημα που βασίζεται δυαδικό. 1662 01:15:47,175 --> 01:15:49,781 Υπάρχουν διαφορετικές τρόπους για να εφαρμόσουν αυτό. 1663 01:15:49,781 --> 01:15:50,280 Ερωτήσεις; 1664 01:15:50,280 --> 01:15:55,918 1665 01:15:55,918 --> 01:15:56,418 Ναι; 1666 01:15:56,418 --> 01:15:57,508 1667 01:15:57,508 --> 01:15:59,841 ΚΟΙΝΟ: Πόσες θέσεις μετά την υποδιαστολή [δεν ακούγεται]; 1668 01:15:59,841 --> 01:16:05,240 1669 01:16:05,240 --> 01:16:12,610 >> GABRIEL: Αυτό είναι ένα πολύπλοκο ζήτημα, γιατί δεν είναι ποτέ πραγματικά 100% ακριβή, 1670 01:16:12,610 --> 01:16:15,680 γιατί όπως βλέπετε εδώ, για Μερικοί αριθμοί είναι 100% ακριβής. 1671 01:16:15,680 --> 01:16:20,350 Πιστεύω ότι αν βάλουμε 0,5 εδώ, πρόκειται να είναι 100% ακριβής. 1672 01:16:20,350 --> 01:16:22,220 Είναι πρόκειται να είναι 0,500000. 1673 01:16:22,220 --> 01:16:24,170 Έτσι, στην περίπτωση αυτή, είναι τέλεια. 1674 01:16:24,170 --> 01:16:27,330 Αλλά σε άλλες περιπτώσεις, είναι πολύ λιγότερο τέλεια. 1675 01:16:27,330 --> 01:16:35,010 Στην εμπειρία μου, όπως και μέχρι τέσσερις, πέντε δεκαδικά ψηφία είναι αρκετά ακριβή. 1676 01:16:35,010 --> 01:16:38,300 Εάν χρησιμοποιείτε ένα διπλό, πρόκειται να είναι πολύ πιο ακριβή από ό, τι αυτό, εντάξει; 1677 01:16:38,300 --> 01:16:42,750 >> ROB BOWDEN: Έτσι απλά για να ρίξει λίγο περισσότερο στο πλαίσιο πλωτήρες, 1678 01:16:42,750 --> 01:16:46,320 Ποτέ δεν θυμάμαι 100% πως το spec αρμάτων λειτουργεί πραγματικά, 1679 01:16:46,320 --> 01:16:52,660 αλλά εγώ σας θυμάμαι πάντα που επιπλέει αρχίσετε να πάρει βρώμικο. 1680 01:16:52,660 --> 01:16:55,460 1681 01:16:55,460 --> 01:17:00,930 Έτσι, η ιδέα είναι ότι όταν μπορείτε να πάρετε πραγματικά, πραγματικά μεγάλους αριθμούς ή πραγματικά, πραγματικά 1682 01:17:00,930 --> 01:17:03,470 μικρούς αριθμούς, αρχίζουμε να πάρει χειρότερα και χειρότερα 1683 01:17:03,470 --> 01:17:05,860 στη διαφοροποίηση μεταξύ δύο κοντά πλωτήρες. 1684 01:17:05,860 --> 01:17:09,180 >> Λοιπόν, πώς μου αρέσει να σκέφτομαι είναι με κυμαινόμενο σημείο ανακρίβεια, 1685 01:17:09,180 --> 01:17:11,890 υπάρχουν δύο πλωτήρες ότι Αν προσπαθήσω να τα προσδιορίσει 1686 01:17:11,890 --> 01:17:15,150 σε C, παρά το γεγονός ότι είναι διαφορετικοί αριθμοί, 1687 01:17:15,150 --> 01:17:17,340 από όπου και αν πρόκειται να είναι ερμηνεύεται ως τον ίδιο αριθμό, 1688 01:17:17,340 --> 01:17:19,006 γιατί δεν μπορούμε να τις αποθηκεύσετε με διαφορετικό τρόπο. 1689 01:17:19,006 --> 01:17:20,540 Πρέπει να χρησιμοποιήσετε τα ίδια κομμάτια. 1690 01:17:20,540 --> 01:17:23,220 Και έτσι, όταν έχουμε την ευκαιρία να πραγματικά, πραγματικά μεγάλους αριθμούς, 1691 01:17:23,220 --> 01:17:28,460 μιλάει σαν 10 έως 300 ή κάτι, είναι σε εκείνο το σημείο 1692 01:17:28,460 --> 01:17:33,240 ότι το 10 έως το 300 ή 5 φορές 10 έως το 300 1693 01:17:33,240 --> 01:17:37,020 δεν μπορούν να διαφοροποιηθούν 7 από 10 φορές στο 300. 1694 01:17:37,020 --> 01:17:39,660 Έτσι, αυτό είναι μια αρκετά μεγάλη διαφορά μεταξύ των δύο αριθμών. 1695 01:17:39,660 --> 01:17:43,830 >> Στη συνέχεια, όμως, όταν κατεβαίνετε με τις κανονικές πράγματα εύρος, 1696 01:17:43,830 --> 01:17:45,770 έχετε την τάση να είναι αρκετά καλό σε διαφοροποίηση. 1697 01:17:45,770 --> 01:17:49,020 Και στη συνέχεια, όταν θα πιάσουμε πραγματικά μικρό, είστε, επίσης, να πάρει και πάλι αρκετά κακό. 1698 01:17:49,020 --> 01:17:52,529 Έτσι, όπως και ένα σωρό 0.0000, παίρνει αρκετά κακό. 1699 01:17:52,529 --> 01:17:53,820 GABRIEL: Ναι, έτσι μια γρήγορη σημείωση. 1700 01:17:53,820 --> 01:17:54,670 Ποτέ μην το κάνετε αυτό. 1701 01:17:54,670 --> 01:17:57,590 Ποτέ μην προσπαθήσετε να συγκρίνετε πλωτήρες χρησιμοποιώντας ίσων ισούται με, 1702 01:17:57,590 --> 01:18:02,800 γιατί ακόμα κι αν είναι σχεδόν η ίδιο, σχεδόν το ίδιο δεν είναι το ίδιο. 1703 01:18:02,800 --> 01:18:06,360 Έτσι, αυτό που συνήθως κάνουμε είναι να σας αφαιρέσουμε τους, να λάβει την απόλυτη αξία της ότι, 1704 01:18:06,360 --> 01:18:12,380 και να δούμε αν αυτό είναι μικρότερο από 0,0001 ή κάτι τέτοιο, εντάξει; 1705 01:18:12,380 --> 01:18:12,880 Και δροσερό. 1706 01:18:12,880 --> 01:18:16,630 Ξέρω ότι πολλοί άνθρωποι έχουν Κάποιο υπόβαθρο σε Java, 1707 01:18:16,630 --> 01:18:19,700 ειδικά αυτοί που έκαναν AP επιστήμη των υπολογιστών, σωστά; 1708 01:18:19,700 --> 01:18:23,630 Και Java είναι μια γλώσσα ότι βασίζεται κυρίως σε C, 1709 01:18:23,630 --> 01:18:26,570 Έχει ένα ζευγάρι πολύ μεγάλες διαφορές. 1710 01:18:26,570 --> 01:18:31,430 Αλλά για βρόχους, και IFS, και τέτοια πράγματα ότι, είναι όλοι την ίδια σύνταξη. 1711 01:18:31,430 --> 01:18:35,240 Έχω μερικά προγράμματα εδώ για να το αποδείξει αυτό. 1712 01:18:35,240 --> 01:18:37,050 >> Έτσι, για παράδειγμα, ένα απλό γεια κόσμο. 1713 01:18:37,050 --> 01:18:43,140 1714 01:18:43,140 --> 01:18:46,600 Αυτό είναι Hello World σε C, το οποίο σας οι τύποι είναι σίγουρα εξοικειωμένοι με, 1715 01:18:46,600 --> 01:18:49,100 και αυτό και αυτό το ένα είναι σε Java. 1716 01:18:49,100 --> 01:18:53,100 Έτσι σε Java έχουμε αυτό δημόσια τάξη, γειά σου κόσμο, 1717 01:18:53,100 --> 01:18:57,050 και δημόσια στατική άκυρη args κύρια, και κορδόνι. 1718 01:18:57,050 --> 01:18:59,665 Οι args χορδών θα να εμφανίζονται σε C πολύ σύντομα. 1719 01:18:59,665 --> 01:19:00,740 1720 01:19:00,740 --> 01:19:01,990 Αλλά ας μην πάμε εκεί ακόμα. 1721 01:19:01,990 --> 01:19:06,060 Αυτή τη στιγμή έχουμε κενό εδώ, πράγμα που σημαίνει ότι το κύριο δεν έχει λάβει κανένα επιχείρημα. 1722 01:19:06,060 --> 01:19:09,220 Και τότε έχουμε System.out.println, η και ότι είναι 1723 01:19:09,220 --> 01:19:11,140 το είδος του ισοδύναμου για printf. 1724 01:19:11,140 --> 01:19:17,150 Εδώ δεν χρειαζόμαστε πραγματικά την ανάστροφη κάθετο n επειδή LN εκτύπωση κάνει αυτό για σας. 1725 01:19:17,150 --> 01:19:19,680 Είναι προσαρτά την ανάστροφη κάθετο n στο τέλος της γραμμής. 1726 01:19:19,680 --> 01:19:22,540 1727 01:19:22,540 --> 01:19:30,415 >> Αλλά αν πάτε σε κάτι σαν, μπορείτε 1728 01:19:30,415 --> 01:19:32,590 μπορεί να δει ότι είναι λίγο πολύ το ίδιο πράγμα. 1729 01:19:32,590 --> 01:19:37,390 Έτσι αρχικοποίηση και το κατάσταση, καθώς και η ενημέρωση 1730 01:19:37,390 --> 01:19:42,050 is-- έχασα ένα χώρο here-- ότι είναι λίγο πολύ το ίδιο πράγμα, εκτός από Java 1731 01:19:42,050 --> 01:19:44,430 έχει ως λίγα περισσότερα πράγματα υψηλού επιπέδου. 1732 01:19:44,430 --> 01:19:46,010 1733 01:19:46,010 --> 01:19:49,610 Εδώ μπορούμε να κάνουμε συν Ι και Java θα αυτόματα 1734 01:19:49,610 --> 01:19:52,730 κάνει αυτό εγώ εδώ, η οποία είναι ένας ακέραιος, σε μια σειρά, 1735 01:19:52,730 --> 01:19:55,200 και στη συνέχεια να προσθέσετε το διακόπτη δύο χορδές μαζί. 1736 01:19:55,200 --> 01:19:57,570 Εδώ στο Γ πρέπει να κάνουμε το &% d. 1737 01:19:57,570 --> 01:20:15,310 1738 01:20:15,310 --> 01:20:18,170 Η γραμμή εδώ, για το φαίνεται ακριβώς το ίδιο. 1739 01:20:18,170 --> 01:20:37,760 >> Και αν κοιτάξουμε εάν, για το μηχανισμό σταθερότητας Επίσης, φαίνεται ακριβώς το ίδιο, έτσι δεν είναι; 1740 01:20:37,760 --> 01:20:39,290 1741 01:20:39,290 --> 01:20:44,650 Έτσι, οι πραγματικές μεγάλες διαφορές είναι σε εκείνα τα πράγματα που βλέπετε εδώ. 1742 01:20:44,650 --> 01:20:47,530 Δημόσια στατική, άκυρη, και τότε η δημόσια τάξη, αν. 1743 01:20:47,530 --> 01:20:48,990 1744 01:20:48,990 --> 01:20:52,360 Έτσι η Java έχει ό, τι είναι ονομάζεται εικονική μηχανή. 1745 01:20:52,360 --> 01:20:53,560 1746 01:20:53,560 --> 01:21:00,150 Και αυτό είναι πολύ μεγάλο βαθμό βασίζεται σε ό, τι ονομάζεται αντικειμενοστρεφής προγραμματισμός, 1747 01:21:00,150 --> 01:21:04,120 η οποία είναι μια πολύ, πολύ κοινό πρότυπο για τον προγραμματισμό στις μέρες μας. 1748 01:21:04,120 --> 01:21:10,870 Και αυτή η κατηγορία πράγμα είναι αυτό που βλέπετε, κάτι από τον προσανατολισμό αντικειμένου, 1749 01:21:10,870 --> 01:21:14,214 είναι να δημιουργήσετε μια κατηγορία και στη συνέχεια θα μπορεί να αντλήσει τα αντικείμενα από την εν λόγω κατηγορία. 1750 01:21:14,214 --> 01:21:16,380 Εμείς δεν πρόκειται να μιλήσω πάρα πολύ πολύ γι 'αυτό σε CS50, 1751 01:21:16,380 --> 01:21:18,213 αλλά αυτό είναι σίγουρα κάτι πραγματικά δροσερό, 1752 01:21:18,213 --> 01:21:21,440 ειδικά αν θέλετε να πάτε σε πιο εξελιγμένα ανάπτυξη ιστοσελίδων 1753 01:21:21,440 --> 01:21:24,050 Στο τέλος της πορείας, όπως υποβάλουν την τελική του έργου σας 1754 01:21:24,050 --> 01:21:26,430 και μερικά ωραία πλαισίων και πράγματα. 1755 01:21:26,430 --> 01:21:31,250 >> Έτσι, βασικά η ιδέα είναι ότι μπορείτε Δεν θέλω να υλοποιήστε ξανά κάτι, 1756 01:21:31,250 --> 01:21:36,330 έτσι ώστε να δημιουργήσετε κάτι που είναι πολύ γενικό, όπως το σχήμα, 1757 01:21:36,330 --> 01:21:38,310 και, στη συνέχεια, μπορείτε να δημιουργήσετε διαφορετικά σχήματα από αυτό, 1758 01:21:38,310 --> 01:21:40,240 και έπειτα από κάθε ένα από Αυτά τα σχήματα, μπορείτε να δημιουργήσετε 1759 01:21:40,240 --> 01:21:45,110 κάποιες πιο συγκεκριμένα σχήματα σε τρεις διαστάσεις ή κάτι τέτοιο. 1760 01:21:45,110 --> 01:21:48,799 Και έχουν αυτή την ιεραρχία που κληρονομούν από τις άλλες, έτσι 1761 01:21:48,799 --> 01:21:51,840 Όλες οι λειτουργίες και όλες οι μεταβλητές που το μεγάλο σχήμα εδώ έχει, όλα αυτά 1762 01:21:51,840 --> 01:21:54,110 πρόκειται να έχουν, και όλα αυτά είναι πρόκειται να έχουν, και ούτω καθεξής και ούτω καθεξής. 1763 01:21:54,110 --> 01:21:55,640 Έτσι, αυτή είναι η βασική ιδέα. 1764 01:21:55,640 --> 01:21:59,170 >> C δεν έχει αυτό, αλλά η C ++ δεν έχουν αυτό το είδος του χαρακτηριστικό. 1765 01:21:59,170 --> 01:22:02,710 Και Java επηρεάζεται σε μεγάλο βαθμό με προσανατολισμό αντικειμένου, 1766 01:22:02,710 --> 01:22:05,310 έτσι ώστε να είναι ο λόγος που βλέπετε τάξη εδώ όλη την ώρα. 1767 01:22:05,310 --> 01:22:10,790 Και το άλλο πράγμα είναι Αυτή η εικονική μηχανή Java. 1768 01:22:10,790 --> 01:22:13,790 Έτσι, αυτό, νομίζω, είναι μια πολύ έξυπνη ιδέα. 1769 01:22:13,790 --> 01:22:17,020 Έτσι, αυτό που οι λαοί που εφευρέθηκε java έκανε είναι 1770 01:22:17,020 --> 01:22:19,630 δεν ήθελαν να καταρτίζουν τον κωδικό τους δύο φορές 1771 01:22:19,630 --> 01:22:23,990 αν έπρεπε να τρέξει σε έναν υπολογιστή με Windows, ή ένα Mac ή Linux, οπότε ό, τι κάνουν 1772 01:22:23,990 --> 01:22:26,740 είναι κυριολεκτικά τρέχουν κάτι σαν τη συσκευή, 1773 01:22:26,740 --> 01:22:29,630 αλλά δεν μπορείτε να δείτε πραγματικά συμβαίνει. 1774 01:22:29,630 --> 01:22:32,430 Έτσι εκτελέσετε μια εικονική μηχανή στο εσωτερικό του υπολογιστή σας, το οποίο 1775 01:22:32,430 --> 01:22:34,940 είναι ουσιαστικά σαν ένα μίνι λειτουργικό σύστημα. 1776 01:22:34,940 --> 01:22:37,920 Και ότι τα λειτουργικά Σκοπός του συστήματος στη ζωή 1777 01:22:37,920 --> 01:22:41,430 Είναι ακριβώς για να τρέξει αυτό που ονομάζεται byte κώδικα. 1778 01:22:41,430 --> 01:22:47,411 >> Έτσι, αντί σε C, τον τρόπο που θα καταρτίζουν αυτό είναι να κάνει αν, και στη συνέχεια να εκτελέσετε 1779 01:22:47,411 --> 01:22:47,910 ./if. 1780 01:22:47,910 --> 01:22:53,510 1781 01:22:53,510 --> 01:22:55,290 Ξέχασα την ανάστροφη κάθετο στο. 1782 01:22:55,290 --> 01:23:00,240 Στην Java, θα κάνουμε πρώτα Java C για να το υπολογίσουν, if.c. 1783 01:23:00,240 --> 01:23:06,440 1784 01:23:06,440 --> 01:23:08,252 Δεν είναι C. Πρόκειται για dot java. 1785 01:23:08,252 --> 01:23:09,460 1786 01:23:09,460 --> 01:23:12,140 Και τότε θα πρέπει να μην τρέχει ./. 1787 01:23:12,140 --> 01:23:15,440 Μπορείτε να πάρετε αυτό το νέο αρχείο if.class, αλλά δεν μπορείτε πραγματικά 1788 01:23:15,440 --> 01:23:17,980 τρέχει if.class τώρα μόνο όπως κάναμε πριν. 1789 01:23:17,980 --> 01:23:19,440 Αυτό δεν είναι ένα εκτελέσιμο. 1790 01:23:19,440 --> 01:23:20,630 Θα πρέπει να εκτελέσετε. 1791 01:23:20,630 --> 01:23:23,410 Θα πρέπει να το τροφοδοτήσουν ένα πρόγραμμα που ονομάζεται Java, 1792 01:23:23,410 --> 01:23:28,260 και ότι το πρόγραμμα είναι η εικονική μηχανή, και στη συνέχεια να κάνετε if.class, ή εάν. 1793 01:23:28,260 --> 01:23:28,760 Ναι. 1794 01:23:28,760 --> 01:23:30,890 Και τότε λειτουργεί. 1795 01:23:30,890 --> 01:23:33,740 Εντάξει έτσι αυτό είναι το είδος του εικονική μηχανή που συμβαίνει. 1796 01:23:33,740 --> 01:23:37,700 C δεν έχει αυτή, οπότε αν ήταν να θέσει αυτό το πρόγραμμα σε ένα μηχάνημα με Windows, 1797 01:23:37,700 --> 01:23:40,516 δεν θα μπορούσε να λειτουργήσει σε C. Στη Java το κάνει. 1798 01:23:40,516 --> 01:23:41,015 Ερωτήσεις; 1799 01:23:41,015 --> 01:23:43,430 1800 01:23:43,430 --> 01:23:44,030 Cool. 1801 01:23:44,030 --> 01:23:47,160 Αυτό είναι, αν για σούπερ τμήμα για σήμερα. 1802 01:23:47,160 --> 01:23:49,462