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