1 00:00:00,000 --> 00:00:02,480 [Powered by Google Translate] [سمینار] [معرفی یک برنامه نویس به رابط های برنامه کاربردی] 2 00:00:02,480 --> 00:00:04,059 [بیلی Janitsch] [دانشگاه هاروارد] [تامی MacWilliam] 3 00:00:04,059 --> 00:00:08,220 [این CS50.] [CS50.TV] 4 00:00:08,220 --> 00:00:12,100 >> سلام، همه، من بیلی، و امروز من قصد دارم به صحبت کردن در مورد رابط های برنامه کاربردی، 5 00:00:12,100 --> 00:00:15,220 و یا رابط های برنامه نویسی برنامه های کاربردی، 6 00:00:15,220 --> 00:00:20,040 به طور خاص در زمینه CS50 پروژه های نهایی و این نوع از چیزی. 7 00:00:20,040 --> 00:00:22,490 به طور کلی API چیست؟ 8 00:00:22,490 --> 00:00:25,530 در شرایط بسیار وسیع، آن را مرتب سازی بر از یک مرد وسط است که اجازه می دهد تا 2 قطعه 9 00:00:25,530 --> 00:00:28,610 نرم افزار برای برقراری ارتباط با یکدیگر است. 10 00:00:28,610 --> 00:00:32,530 این نوع تعریف بسیار گسترده ای است و مربوط به چیزی است که ما به دنبال آن است که نیست. 11 00:00:32,530 --> 00:00:35,450 چیزی که ما واقعا می خواهیم نوعی از وسط زمین مفید است 12 00:00:35,450 --> 00:00:40,570 برای برقراری ارتباط با برخی از مرتب کردن بر اساس پایگاه داده در جایی. 13 00:00:40,570 --> 00:00:43,310 >> در اینجا یک نمودار است، و در واقع ایده این است که 14 00:00:43,310 --> 00:00:46,790 ما یک برنامه، و ما می خواهیم برای دریافت اطلاعات از یک پایگاه داده، 15 00:00:46,790 --> 00:00:49,570 اما ما نمی خواهیم پایگاه داده به پرس و جو به طور مستقیم. 16 00:00:49,570 --> 00:00:52,710 در عوض ما می خواهیم از طریق این نوع از مرد میانه، API. 17 00:00:52,710 --> 00:00:55,440 ایده پشت این اعداد 2 و 3 را در جدول 18 00:00:55,440 --> 00:00:57,750 هر دو می شود بسیار پیچیده و کثیف. 19 00:00:57,750 --> 00:00:59,960 به عبارت دیگر، هنگامی که API پرس و جو از پایگاه داده، 20 00:00:59,960 --> 00:01:03,300 آن را احتمالا با استفاده از جداول SQL و همه از این نوع از مسائل، 21 00:01:03,300 --> 00:01:05,489 و ما کمی در مورد آن در CS50 آموخته، اما به طور کلی، 22 00:01:05,489 --> 00:01:07,590 شما متوجه شده ام که آن را کمی از درد. 23 00:01:07,590 --> 00:01:10,590 این بسیار، بسیار پیچیده و کثیف می شود، به ویژه هنگامی که شما در حال ساخت 24 00:01:10,590 --> 00:01:12,530 پرس و جو های پیچیده و این نوع از چیزی است. 25 00:01:12,530 --> 00:01:15,960 >> چیزی که ما واقعا می خواهیم نوعی از راه مفید و ساده است 26 00:01:15,960 --> 00:01:19,780 که برای دریافت داده ها است، و این ایده در پشت شماره های 1 و 4 در نمودار است. 27 00:01:19,780 --> 00:01:23,600 به عبارت دیگر، ما می خواهیم یک راه واقعا ساده برای گفتن API آنچه برای ما 28 00:01:23,600 --> 00:01:27,760 و یک راه واقعا ساده است که برای دریافت داده ها به عقب. 29 00:01:27,760 --> 00:01:33,020 یکی از راه های اصلی است که که داده ها است که معمولا ارسال و دریافت وجود دارد، 30 00:01:33,020 --> 00:01:36,490 است که JSON یا JavaScript نشانه گذاری شی. 31 00:01:36,490 --> 00:01:40,370 است که می تواند کمی تا آنجا که به شما ارسال درخواست به API های مختلف متفاوت است. 32 00:01:40,370 --> 00:01:43,210 به عبارت دیگر، اگر شما می خواهید برخی از مقدار مشخصی از داده ها، 33 00:01:43,210 --> 00:01:46,670 چگونه به شما بگویم API برای به دست آوردن داده ها می تواند کمی متفاوت باشد. 34 00:01:46,670 --> 00:01:49,210 معمولا آن را شامل برخی از مرتب کردن بر اساس درخواست شبکه. 35 00:01:49,210 --> 00:01:53,130 به عبارت دیگر، دسترسی به نوعی از URL که رفتن برای گفتن API 36 00:01:53,130 --> 00:01:56,190 دقیقا همان چیزی است که شما می خواهید، اما داده است که تقریبا همیشه فرستاده برگشت، 37 00:01:56,190 --> 00:01:59,530 به عبارت دیگر، شماره 4 در JSON. 38 00:01:59,530 --> 00:02:01,030 >> چه JSON دقیقا؟ 39 00:02:01,030 --> 00:02:03,030 همانطور که گفتم، شی جاوا اسکریپت نشانه گذاری. 40 00:02:03,030 --> 00:02:07,090 اساسا استاندارد جهانی برای انتقال و دریافت داده ها است. 41 00:02:07,090 --> 00:02:11,410 ایده این است که شما باید این 3 دسته از همه چیز می باشد. 42 00:02:11,410 --> 00:02:13,540 شما باید آرایه ها، hashmaps، و شکلهای هندسی اولیه. 43 00:02:13,540 --> 00:02:16,580 آرایه ها و hashmaps شما در کمی در CS50 نگاه، 44 00:02:16,580 --> 00:02:19,870 اما تو مرتب کردن بر اساس بدست یک حس بسیار سخت از آنها چه هستند. 45 00:02:19,870 --> 00:02:22,780 به عبارت دیگر، با آرایه شما می دانید که آنها را تایپ محدود، 46 00:02:22,780 --> 00:02:26,560 بنابراین شما فقط یک نوع از نوع می رود که در سراسر آرایه داشته باشد. 47 00:02:26,560 --> 00:02:29,310 JSON خیلی بیشتر ملایم با آن نوع از چیزی است. 48 00:02:29,310 --> 00:02:33,590 در واقع ایده ساخت این شیء، 49 00:02:33,590 --> 00:02:36,270 که می تواند از هر یک از این 3 چیز تشکیل شده است 50 00:02:36,270 --> 00:02:39,470 و می تواند از آنهایی متعدد از آنها تشکیل شده است، و آنها می توانند به صورت تو در تو. 51 00:02:39,470 --> 00:02:42,110 >> مرتب کردن بر اساس در اینجا یک مثال از JSON، 52 00:02:42,110 --> 00:02:47,910 است که این براکت فرفری در اینجا نشان دهنده hashmap خود را، 53 00:02:47,910 --> 00:02:51,400 و hashmap اساسا یک نگاشت از برخی از مرتب کردن بر اساس کلید 54 00:02:51,400 --> 00:02:53,340 به برخی از مرتب کردن بر اساس ارزش. 55 00:02:53,340 --> 00:02:56,440 شما در اینجا خواهید دید که ما کلید خواص، 56 00:02:56,440 --> 00:02:59,600 و این نقشه برداری را بر روی یک آرایه، که این همه چیز است. 57 00:02:59,600 --> 00:03:04,120 ما می بینیم که عنصر دیگری از hashmap، که این isAwesome کلیدی، 58 00:03:04,120 --> 00:03:07,370 که نقشه ها را به یک مقدار اولیه واقعی، به عبارت دیگر، یک مقدار Boolean. 59 00:03:07,370 --> 00:03:09,420 شکلهای هندسی اولیه می تواند رشته. آنها می توانند اعداد صحیح. 60 00:03:09,420 --> 00:03:11,960 آنها می توانند bools، هر چیزی شبیه به آن. 61 00:03:11,960 --> 00:03:18,410 و محتویات این آرایه شما می بینید که خواص نقاط دارای 2 رشته در آن، 62 00:03:18,410 --> 00:03:20,050 خود را مشابه و شگفت انگیز است. 63 00:03:20,050 --> 00:03:27,410 این 2 خواص JSON، و ما می بینیم که JSON عالی است. 64 00:03:27,410 --> 00:03:30,060 به دنبال که در آن کمی نزدیک تر من قصد دارم به ساخت 65 00:03:30,060 --> 00:03:32,870 یک مثال پیچیده تر از JSON در اینجا. 66 00:03:32,870 --> 00:03:37,000 >> بیایید با یک آرایه به عنوان مثال، فقط یک آرایه خالی است. 67 00:03:37,000 --> 00:03:39,180 اما این نوع از خسته کننده است، بنابراین ما در حال رفتن به آن را پر کنید تا کمی، 68 00:03:39,180 --> 00:03:43,420 و همان طور که گفتم، آرایه ها در JSON در نوع محدود، 69 00:03:43,420 --> 00:03:46,400 بنابراین ما نیز می تواند یک رشته را در اینجا است که با سلام، 70 00:03:46,400 --> 00:03:49,330 و این که عنصر دیگری از این آرایه است. 71 00:03:49,330 --> 00:03:53,450 و به همین ترتیب، ما می تواند hashmapping اینجا اضافه کنید، که در حال رفتن به چند نگاشت. 72 00:03:53,450 --> 00:04:00,470 این رفتن به یک نگاشت از نام بیلی رشته. 73 00:04:00,470 --> 00:04:04,590 ما باید یک نگاشت به نام بیلی، و ما باید نقشه برداری 74 00:04:04,590 --> 00:04:10,860 رنگ مورد علاقه آبی. 75 00:04:10,860 --> 00:04:12,700 اساسا یک مثال خوب از JSON. 76 00:04:12,700 --> 00:04:18,160 این نوع می شود به متأسفیم، نیاز به یک کاما از هم وجود دارد، همه از بخش های مختلف آن است. 77 00:04:18,160 --> 00:04:21,140 باز هم، آن را به نوع خاص محدود در همه است، بنابراین شما می توانید هر نوع از انواع 78 00:04:21,140 --> 00:04:24,710 در داخل هر چیزی که شما می خواهید، و این ایده آن است که خود مشابه است. 79 00:04:24,710 --> 00:04:28,830 به عبارت دیگر، این حق در اینجا یک شی JSON است، به عنوان این است که همه چیز، 80 00:04:28,830 --> 00:04:33,200 عنوان شده است فقط این است، بنابراین شما می توانید اولیه یک شی، 81 00:04:33,200 --> 00:04:35,680 یک آرایه یک شیء یا یک hashmap یک شی. 82 00:04:35,680 --> 00:04:40,270 >> JSON است، همانطور که شما می توانید نوع از دیدن، واقعا، واقعا مفید است که در آن به طوری که همه کاره است. 83 00:04:40,270 --> 00:04:45,860 شما می توانید هر گونه اطلاعات ممکن است که شما می توانید تصور در JSON ذخیره شده را داشته باشد. 84 00:04:45,860 --> 00:04:47,900 است که باعث می شود آن را به زبان واقعا به خوبی با استفاده از رابط های برنامه کاربردی 85 00:04:47,900 --> 00:04:50,770 چرا که آن را بسیار بدان معنی است که بدون توجه به آنچه که داده هایی را که شما می خواهید 86 00:04:50,770 --> 00:04:54,270 رفتن به برخی از راه های آن را به عقب بر گردیم در JSON وجود دارد. 87 00:04:54,270 --> 00:04:58,600 خواص چند که باعث JSON به ویژه برای این نوع از چیزی خوب است. 88 00:04:58,600 --> 00:05:02,270 همانطور که می بینید، در مقایسه با بسیاری از چیزهایی که شما در حال کار با در CS50 89 00:05:02,270 --> 00:05:06,040 آن نسبتا بسیار آسان برای خواندن و همچنین بسیار آسان برای نوشتن. 90 00:05:06,040 --> 00:05:09,700 شما می توانید آن دندانه دار کردن اگر شما می خواهید، مانند من در آن به عنوان مثال انجام شد، 91 00:05:09,700 --> 00:05:12,990 که به شما می دهد یک نسخه زیبا و خوب، که شما می توانید ببینید که واقعا خوب است. 92 00:05:12,990 --> 00:05:17,150 اما علاوه بر این، آن را نیز آسان می کند به خواندن و نوشتن برای یک کامپیوتر. 93 00:05:17,150 --> 00:05:19,870 به عبارت دیگر، از آن آسان است برای تجزیه و آسان به رمز، 94 00:05:19,870 --> 00:05:23,820 که بدان معنی است که آن را بسیار سریع به عنوان دور به عنوان خواندن داده ها نگران است، 95 00:05:23,820 --> 00:05:26,460 و JSON را می توان واقعا به سرعت تولید شده است. 96 00:05:26,460 --> 00:05:30,300 >> آن نیز بسیار آسان برای دسترسی به بخش های مختلف از JSON و این نوع از چیزی. 97 00:05:30,300 --> 00:05:33,320 که خوب، و علاوه بر این، این واقعیت است که آن را خود مشابه، 98 00:05:33,320 --> 00:05:36,090 به عبارت دیگر، این واقعیت است که شما می توانید به JSON در داخل JSON در داخل JSON 99 00:05:36,090 --> 00:05:40,040 واقعا زیبا برای ذخیره سازی داده ها است. 100 00:05:40,040 --> 00:05:45,490 بخش دیگری است که به طور کلی واقعا مفید در کار با API های جی کوئری است. 101 00:05:45,490 --> 00:05:49,290 شما آموخته ام کمی از جاوا اسکریپت، که یک راه خوب است 102 00:05:49,290 --> 00:05:53,710 برای دستکاری HTML و CSS در درون یک وب سایت. 103 00:05:53,710 --> 00:05:57,190 اما این می تواند نوع درد به کد ساده جاوا اسکریپت، 104 00:05:57,190 --> 00:05:59,810 عمدتا به دلیل جاوا اسکریپت واقعا زبان دراز است. 105 00:05:59,810 --> 00:06:03,020 شما باید برای یادگیری بسیاری از نحو، و فقط برای انجام کارهای بسیار ساده 106 00:06:03,020 --> 00:06:07,590 تعداد زیادی از کد طول می کشد، بنابراین ذکر کرد که jQuery یک کتابخانه جاوا اسکریپت است. 107 00:06:07,590 --> 00:06:09,800 به عبارت دیگر، آن را به یک فایل جاوا اسکریپت است که شما می توانید بار 108 00:06:09,800 --> 00:06:12,730 و پس از آن از از توابع jQuery برای انجام کارهای خاص استفاده کنید. 109 00:06:12,730 --> 00:06:15,670 و jQuery اساسا باعث می شود زندگی خود را زیادی آسان تر است. 110 00:06:15,670 --> 00:06:20,390 آن را ساده آنچه را که صدها خط در جاوا اسکریپت را به چند خط در jQuery. 111 00:06:20,390 --> 00:06:24,430 >> این خصوص مفید باشد اگر شما با استفاده از API زیرا به طور کلی 112 00:06:24,430 --> 00:06:27,600 چگونه شما می شود دسترسی به رابط های برنامه کاربردی با درخواست های AJAX 113 00:06:27,600 --> 00:06:30,130 و من اعتقاد دارم که دیوید در سخنرانی ذکر شده است که درخواست های AJAX 114 00:06:30,130 --> 00:06:33,120 به طور کلی زمانی که شما در حال ساخت یک درخواست شبکه به نوعی از سرور 115 00:06:33,120 --> 00:06:37,760 و به دست آوردن برخی از مرتب کردن بر اساس داده ها و به روز رسانی این صفحه به آنی. 116 00:06:37,760 --> 00:06:41,840 در حالی که در جاوا اسکریپت ساده است که می تواند تعداد دیوانه از خطوط را 117 00:06:41,840 --> 00:06:44,620 به اعتبار همه از هدر و انجام تمام این نوع از مسائل، 118 00:06:44,620 --> 00:06:46,810 jQuery را واقعا یک تابع ساده به نام AJAX، 119 00:06:46,810 --> 00:06:51,760 و همه شما را مجبور به AJAX انجام است که به پارامترهای که شما می خواهید را به API، 120 00:06:51,760 --> 00:06:56,830 محل سکونت API و هر نوع دیگر از گزینه های را که می خواهید پیکربندی کنید. 121 00:06:56,830 --> 00:07:02,480 این واقعا، واقعا خوب و بسیار مفید برای این نوع از چیزی. 122 00:07:02,480 --> 00:07:06,970 همه ما نیاز به شروع به گرفتن دست ما کثیف در رابط های برنامه کاربردی است. 123 00:07:06,970 --> 00:07:10,220 >> من قصد دارم برای بالا آوردن چند مثال و بررسی خواص مختلف خود را 124 00:07:10,220 --> 00:07:13,150 و به همین دلیل آنها مفید برای انواع مختلف از همه چیز. 125 00:07:13,150 --> 00:07:15,570 اولین چیزی که من در واقع به شما نشان می دهد چیزی است که من کار بر روی 126 00:07:15,570 --> 00:07:18,310 در آزمایشگاه تحقیقات من، که در یک نمایشگر Ngram است، 127 00:07:18,310 --> 00:07:23,270 و اساسا این ایده یک بیننده Ngram است شما می توانید برای نوعی از کلمه جستجو 128 00:07:23,270 --> 00:07:28,840 یا عبارت و ببینید که چگونه اغلب از آن در یک مجموعه خاص از متن در طول زمان ظاهر شد. 129 00:07:28,840 --> 00:07:33,160 در این مثال در اینجا این مجموعه اطلاعات مربوط به نوزادان است 130 00:07:33,160 --> 00:07:36,480 بودند که بین سالهای 1920 و 2000 در نیویورک به دنیا آمد. 131 00:07:36,480 --> 00:07:40,090 ما می توانید، برای مثال، برای جنیفر به نام، 132 00:07:40,090 --> 00:07:44,400 و ما می بینیم که قبل از 1960s واقعا تمام شد که بسیار مورد استفاده، 133 00:07:44,400 --> 00:07:48,900 و پس از آن که ما را به سال های بعد از آن در حال استفاده می شود بیشتر و بیشتر شده است. 134 00:07:48,900 --> 00:07:53,680 ما همچنین می توانیم مقایسه انجام دهید، بنابراین اگر جنیفر را مقایسه می کنیم، به عنوان مثال، توماس، 135 00:07:53,680 --> 00:07:56,520 ما می توانید ببینید که توماس به خیلی شایع در طول تاریخ بوده است، 136 00:07:56,520 --> 00:07:58,780 در حالی که جنیفر نام اخیر است. 137 00:07:58,780 --> 00:08:00,590 ما می توانیم این نوع از چیزی که انجام دهد. 138 00:08:00,590 --> 00:08:02,460 >> چگونه این کار را می کند نرم افزار؟ 139 00:08:02,460 --> 00:08:06,030 در واقع، آن را از طریق یک API کار می کند. 140 00:08:06,030 --> 00:08:08,660 به عبارت دیگر، ما باید پارامترهای خاصی در اینجا. 141 00:08:08,660 --> 00:08:11,360 ما پارامترهای چیزی است که ما در واقع برای جستجو، 142 00:08:11,360 --> 00:08:13,720 که این نام، و پس از آن ما چند خواص دیگر، 143 00:08:13,720 --> 00:08:16,570 مانند محور Y و محور X است. 144 00:08:16,570 --> 00:08:18,440 شما می توانید ببینید که ما داریم چند گزینه مختلف تا آنجا که به 145 00:08:18,440 --> 00:08:20,860 قطعنامه و استفاده از این نوع از چیزی. 146 00:08:20,860 --> 00:08:26,700 ما باید این گزینه ها تا آنجا که به چه اطلاعات ما در واقع از پایگاه داده می خواهم، 147 00:08:26,700 --> 00:08:29,400 و ما می خواهیم که برای دریافت داده ها را در برخی از راه های مفید است. 148 00:08:29,400 --> 00:08:34,020 معمولا، اگر ما پرس و جو از پایگاه داده به طور مستقیم آن را نوعی درد را به انجام 149 00:08:34,020 --> 00:08:38,970 چرا که احتمالا این داده ها در مورد نام نوزاد در برخی از پایگاه داده در جایی زندگی می کند، 150 00:08:38,970 --> 00:08:42,789 و این امر می تواند واقعا پیچیده باید به آن پرس و جو دستی 151 00:08:42,789 --> 00:08:45,830 و تصمیم بگیرید که دقیقا همان چیزی است که داده ها به بازگشت. 152 00:08:45,830 --> 00:08:49,300 به عبارت دیگر، ما فقط در مورد جنیفر و توماس در این مورد مراقبت از خود، 153 00:08:49,300 --> 00:08:53,410 و ما تنها در مورد مراقبت از روی یک محور خاص و همه از این نوع از مسائل. 154 00:08:53,410 --> 00:08:55,720 >> چگونه ما می توانیم در اطراف این دریافت کنم؟ 155 00:08:55,720 --> 00:09:01,200 به این API به حفاری کمی بیشتر من به شما یک مثال دیگر از این پلت فرم را نشان می دهد 156 00:09:01,200 --> 00:09:04,490 که با استفاده از مجموعه داده های کمی متفاوت است. 157 00:09:04,490 --> 00:09:09,950 این مجموعه داده ها، به جای این که نام کودک، است که در واقع فقط کل 158 00:09:09,950 --> 00:09:12,460 چاپ نشریه پایگاه داده کتابخانه باز، 159 00:09:12,460 --> 00:09:18,410 که یک منبع بزرگ از متون منتشر شده در طول 100 یا سال گذشته است. 160 00:09:18,410 --> 00:09:23,540 ایده این است که ما باید این compository از میلیون ها و میلیون ها نفر از متن، 161 00:09:23,540 --> 00:09:27,420 که ما در حال حاضر می توانید برای جستجوی کلمات و عبارات مختلف وارد 162 00:09:27,420 --> 00:09:30,840 در اینجا یک مثال متفاوت است که کمی متفاوت از مثال قبلی 163 00:09:30,840 --> 00:09:33,350 من به شما نشان داد، که این است که ما باید این 3 پرس و جو جستجو. 164 00:09:33,350 --> 00:09:36,290 جنگ، جنگ است، و کلمه فرانسوی جنگ، که guerre. 165 00:09:36,290 --> 00:09:40,380 و ما در 3 بخش مختلف از کل پایگاه داده. 166 00:09:40,380 --> 00:09:45,080 به عبارت دیگر، در این پرس و جو فقط در ایالات متحده آمریکا، 167 00:09:45,080 --> 00:09:51,150 در دوم تنها در UK، و سوم تنها از آثار منتشر شده در فرانسه است. 168 00:09:51,150 --> 00:09:53,120 ما می بینیم برخی از الگوهای جالب پدیدار. 169 00:09:53,120 --> 00:09:58,180 به عنوان مثال، ما می بینیم درست در اینجا است که، 170 00:09:58,180 --> 00:10:02,410 اوه، من messed تا محور کمی، اما شما می توانید در این محدوده اینجا را ببینید 171 00:10:02,410 --> 00:10:05,730 به دور از جنگ های داخلی، افزایش بزرگ در نسخه آمریکایی وجود دارد 172 00:10:05,730 --> 00:10:08,340 اما چنین نیست سنبله بزرگ در دو نفر دیگر، و این بدیهی است به دلیل 173 00:10:08,340 --> 00:10:10,880 جنگ های داخلی آمریکا اتفاق می افتد که در آن نقطه بود. 174 00:10:10,880 --> 00:10:13,890 >> ما می توانیم برخی از چیزهای سرد وجود دارد را ببینید. 175 00:10:13,890 --> 00:10:17,070 اما آنچه که ما واقعا در مورد مراقبت این است که ما چگونه به این اطلاعات. 176 00:10:17,070 --> 00:10:21,320 من شما را در پشت صحنه این برنامه کمی طول می کشد. 177 00:10:21,320 --> 00:10:24,540 یک ترفند شسته و رفته است اگر شما در حال کار با سایت و نوع می خواهند بدانند 178 00:10:24,540 --> 00:10:27,430 چه خبر است در پشت صحنه، شما می توانید باز کردن ابزار توسعه دهنده. 179 00:10:27,430 --> 00:10:30,200 من قصد دارم تا با استفاده از ابزارهای توسعهدهنده کروم، و برای این که به کسانی که 180 00:10:30,200 --> 00:10:35,160 شما می توانید کنترل، تغییر، J، و که شما را به کنسول جاوا اسکریپت را انجام دهد. 181 00:10:35,160 --> 00:10:37,420 چند زبانه در اینجا وجود دارد. 182 00:10:37,420 --> 00:10:39,680 همه آنها می تواند بسیار مفید تحت شرایط مختلف باشد، اما من در مورد مراقبت از شبکه 183 00:10:39,680 --> 00:10:44,150 تب در حال حاضر، و من در واقع باید به تجدید که کار برای به دست آوردن. 184 00:10:44,150 --> 00:10:50,180 اوه، ببخشید. 185 00:10:50,180 --> 00:10:52,320 آن را دوست دارد برای دادن یک نمونه تصادفی است. 186 00:10:52,320 --> 00:10:54,700 خوب، ما به این مثال به جای آن و سپس استفاده کنید. 187 00:10:54,700 --> 00:11:01,330 >> ایده این است که این API در اینجا وجود دارد، 188 00:11:01,330 --> 00:11:05,330 و شما می توانید ببینید که دقیقا همان چیزی است که API بازگشته است. 189 00:11:05,330 --> 00:11:10,220 این همان چیزی است که نرم افزار در حال بازگشت از API ارسال می شود که درخواست شده است. 190 00:11:10,220 --> 00:11:13,680 اجازه دهید من در کمی زوم، 191 00:11:13,680 --> 00:11:18,340 و اصولا می توانیم آن را فقط به یک سری از جفت ارزش کلیدی در JSON را ببینید. 192 00:11:18,340 --> 00:11:23,220 به عبارت دیگر، ما باید این hashmap که نگاشت ارزش است. 193 00:11:23,220 --> 00:11:26,440 به عبارت دیگر، آن را نقشه برداری سال به ارزش. 194 00:11:26,440 --> 00:11:32,600 در سال 1765 هر کلمه ای که ما در ابتدا برای جستجو استفاده شده است 90 بار 195 00:11:32,600 --> 00:11:35,810 از 1 میلیون، بنابراین ما در حال گرفتن این نتیجه است. 196 00:11:35,810 --> 00:11:40,280 دقیقا نمی JSON از آنجایی که ما این نتیجه هدر در اینجا 197 00:11:40,280 --> 00:11:45,630 اما توجه کنید که این شیء در اینجا فقط یک لکه JSON بزرگ. 198 00:11:45,630 --> 00:11:51,070 ما باید یک آرایه که شامل کل این عنصر، 199 00:11:51,070 --> 00:11:55,590 و شما می توانید ببینید که عنصر کل به پایان می رسد، و پس از آن ما باید عنصر دیگری بزرگ 200 00:11:55,590 --> 00:11:59,430 می رود که تمام راه را تا آخر، و این که در اینجا به پایان می رسد. 201 00:11:59,430 --> 00:12:02,200 ما یک آرایه واقعا بزرگ با 2 اشیاء در آن، 202 00:12:02,200 --> 00:12:04,630 و هر یک از آن اشیاء hashmap است. 203 00:12:04,630 --> 00:12:07,340 شما می توانید در هر یک از کسانی که hashmaps ببینید که ما داریم نقشه برداری 204 00:12:07,340 --> 00:12:12,700 از این ارزش شاخص به 0 و ارزش این مقدار را به دیگری hashmap، 205 00:12:12,700 --> 00:12:18,360 که دوباره نگاشت ارزش محور X به ارزش محور Y است. 206 00:12:18,360 --> 00:12:20,970 >> شما می توانید ببینید JSON می شود کمی پیچیده است، اما به طور کلی، 207 00:12:20,970 --> 00:12:24,190 در واقع بسیار مفید است، و آن را بسیار آسان برای دسترسی به مقایسه با 208 00:12:24,190 --> 00:12:27,390 اشکال دیگر متفاوت از نماد. 209 00:12:27,390 --> 00:12:30,550 تا آنجا که به چیزی است که ما در واقع ارسال اطلاعات به API برای به دست آوردن، 210 00:12:30,550 --> 00:12:34,690 من قصد دارم به پایان دادن به عقب بروید کمی در اینجا. 211 00:12:34,690 --> 00:12:39,850 این فایل جاوا اسکریپت بزرگ است که دست زدن به تمام فعل و انفعالات برنامه وب است. 212 00:12:39,850 --> 00:12:44,810 و بنابراین ما در مورد بسیاری از این برام مهم نیست، اما در مورد برخی از آن کار می کنیم. 213 00:12:44,810 --> 00:12:47,410 برای مثال، ما در مورد این تابع buildQuery مراقبت، 214 00:12:47,410 --> 00:12:50,670 و این ایده از این تابع است که اساسا آن را به نگاه کردن به اطراف صفحه، 215 00:12:50,670 --> 00:12:53,750 تا بدانند آنچه را که کاربر می خواهد به پرس و جو، به عبارت دیگر، 216 00:12:53,750 --> 00:12:57,090 چک کردن جعبه جایی که آنها از ورودی واژه مورد جستجوی خود را، 217 00:12:57,090 --> 00:13:01,380 بررسی های مختلف Y و مقادیر X محور است که آنها را انتخاب کرده ایم و همه از این نوع از چیزی، 218 00:13:01,380 --> 00:13:06,650 و آن رفتن به تف از این مقدار پرس و جو، که من پس از آن می توانید به ارسال به API. 219 00:13:06,650 --> 00:13:09,180 >> این پیچیده به نظر می رسد، و آن را بسیار پیچیده 220 00:13:09,180 --> 00:13:18,090 اما آنچه من قصد دارم برای انجام در واقع، من در حال حاضر انجام این کار، که فوق العاده است 221 00:13:18,090 --> 00:13:21,640 این است که من قصد دارم به کنسول برای چاپ کردن که دقیقا مقدار پرس و جو 222 00:13:21,640 --> 00:13:28,110 که آن را ارسال به API. 223 00:13:28,110 --> 00:13:30,870 که در واقع حق در اینجا. با عرض پوزش، این خروجی بسیاری از مسائل است. 224 00:13:30,870 --> 00:13:33,690 اما این چیزی است که ما در مورد مراقبت، این شیء در اینجا ببینید. 225 00:13:33,690 --> 00:13:35,300 این شی پرس و جو است. 226 00:13:35,300 --> 00:13:40,670 به عبارت دیگر، این است که دقیقا همان چیزی است که برنامه تحت وب ارسال به API، 227 00:13:40,670 --> 00:13:45,730 و بنابراین نگاه کردن به درون کمی اجازه دهید، و ما می بینیم ما یک ارزش چند در اینجا. 228 00:13:45,730 --> 00:13:48,710 ما می بینیم که ما در این نوع شمارش است که ظهور در هر یک میلیون کلمه، 229 00:13:48,710 --> 00:13:51,460 است که دقیقا همان چیزی است که ما انجام داده ایم، در محور Y در اینجا انتخاب شده است. 230 00:13:51,460 --> 00:13:53,740 این که در آن است که از. 231 00:13:53,740 --> 00:13:58,010 ما باید ارزش های پایگاه داده، که بدان معنی است که در برخی از پایگاه داده خاصی وجود دارد 232 00:13:58,010 --> 00:14:01,610 که این داده ها زندگی می کنند، و ما می خواهیم برای دسترسی به این داده ها به طور خاص 233 00:14:01,610 --> 00:14:04,950 به عنوان مخالف به نام کودک داده ها، به عنوان مثال. 234 00:14:04,950 --> 00:14:08,320 پس ما می توانیم این مقدار گروه، 235 00:14:08,320 --> 00:14:12,090 که می گوید که ما می خواهیم تا سال جستجو به عنوان مخالف 236 00:14:12,090 --> 00:14:16,030 هر X دیگر ارزش محور است. 237 00:14:16,030 --> 00:14:19,040 سپس ما یک روش که برخی از رابط های برنامه کاربردی را به کارهای متعدد انجام است. 238 00:14:19,040 --> 00:14:22,360 به عبارت دیگر، این API نیز می توانید انواع دیگر داده ها را به شما بر می گردانند، 239 00:14:22,360 --> 00:14:27,740 اما در این مورد، ما می خواهیم که نقشه برداری از مقادیر محور X به ارزش محور Y است. 240 00:14:27,740 --> 00:14:30,730 این همان چیزی است که آن را گفتن برای انجام وجود دارد، 241 00:14:30,730 --> 00:14:35,020 و ما باید این محدودیت جستجو در آرایه، که حاوی 2 ارزش است. 242 00:14:35,020 --> 00:14:40,720 یکی از اولین این همان چیزی است که ما می بینیم، که همه از ارزش ها است 243 00:14:40,720 --> 00:14:43,020 در اولین که جعبه کوچک در بالا موجود است. 244 00:14:43,020 --> 00:14:47,570 >> به عبارت دیگر، ما می خواهیم برای نبرد کلمه نگاه کنید، و ما می خواهیم به آن فیلتر 245 00:14:47,570 --> 00:14:51,920 متون انگلیسی در ادبیات آمریکا است. 246 00:14:51,920 --> 00:14:54,590 در حال حاضر این کشور، است که ایالات متحده آمریکا است. 247 00:14:54,590 --> 00:14:59,130 ما باید یک زبان، که به زبان انگلیسی است، بنابراین ما باید همه از این بخش های مختلف 248 00:14:59,130 --> 00:15:02,690 که همه گفتن API دقیقا همان چیزی است که ما می خواهیم. 249 00:15:02,690 --> 00:15:04,940 ما نمی دانیم که چه داده هایی را که ما به عقب بر گردیم در عین حال، 250 00:15:04,940 --> 00:15:10,970 اما ما می دانیم که داده ها را به یک شکل خاص است. 251 00:15:10,970 --> 00:15:13,650 در این مثال مرتب سازی بر اساس در سمت پیچیده، 252 00:15:13,650 --> 00:15:16,180 و شما لزوما نمی شود با استفاده از API این مجموعه، 253 00:15:16,180 --> 00:15:20,600 اما این است که دامنه و قدرت از چه رابط های برنامه کاربردی می توانید انجام دهید به شما نشان می دهد. 254 00:15:20,600 --> 00:15:24,980 به عبارت دیگر، با استفاده از یک سیستم پرس و جو نسبتا ساده ما اساسا یک جعبه ورودی 255 00:15:24,980 --> 00:15:29,490 با چند انتخابگرهای دیگر در مکان های مختلف است. 256 00:15:29,490 --> 00:15:32,010 >> اجازه دهید من زوم از اینجا. 257 00:15:32,010 --> 00:15:37,720 ما باید یک جعبه ورودی با چند انتخاب مختلف ابرداده، 258 00:15:37,720 --> 00:15:40,610 و ما باید محور Y و انتخاب محور X است. 259 00:15:40,610 --> 00:15:42,830 ما واقعا نمی زمینه که بسیاری از، 260 00:15:42,830 --> 00:15:46,210 و ما به راحتی می توانید ببینید که ما قادر به پرس و جو نوعی از API 261 00:15:46,210 --> 00:15:48,510 و دریافت داده ها به عقب قرار داده و سپس آن را به این نمودار، 262 00:15:48,510 --> 00:15:52,080 است که رفتن به آن را در یک راه مفید نشان دادن است. 263 00:15:52,080 --> 00:15:54,970 به دنبال در یک مثال دیگر است که ممکن است کمی به شما بچه ها بیشتر آشنا 264 00:15:54,970 --> 00:15:56,510 ما قصد داریم به نوبه خود به فیس بوک. 265 00:15:56,510 --> 00:15:59,440 API فیس بوک به نام گراف فیس بوک، 266 00:15:59,440 --> 00:16:04,390 و اساسا این بدان معناست فیس بوک خود را می بیند که این پایگاه داده عظیم 267 00:16:04,390 --> 00:16:08,000 بسیاری از بخش های مختلف است که همه آنها روابط خاص به یکدیگر است. 268 00:16:08,000 --> 00:16:11,070 به عبارت دیگر، من یک کاربر در فیس بوک، بنابراین من باید مشخصات، 269 00:16:11,070 --> 00:16:14,310 و من هم از دوستان خاص، و هر یک از آنها دارای یک پروفایل 270 00:16:14,310 --> 00:16:17,580 و هر یک از دوستان من یک دیوار است که نظرات مختلف در آن، 271 00:16:17,580 --> 00:16:20,800 و هر یک از آن نظر است دوست داشتن و همه از این نوع از چیزی. 272 00:16:20,800 --> 00:16:23,100 >> بسیاری از بخش های مختلف به فیس بوک وجود دارد. 273 00:16:23,100 --> 00:16:26,670 این API بسیار پیچیده است، و تن وجود دارد شما می توانید با آن انجام دهید، 274 00:16:26,670 --> 00:16:28,450 اما در واقع بسیار ساده برای استفاده است. 275 00:16:28,450 --> 00:16:33,680 من قصد دارم برای شروع با رفتن به graph.facebook.com / billyjanitsch، 276 00:16:33,680 --> 00:16:38,430 که نام حساب من منحصر به فرد است، و نام کاربری شما هم خواهد بود 277 00:16:38,430 --> 00:16:43,710 نوعی از کلمه اگر شما از آن انتخاب شده است، و یا آن را فقط ممکن است یک رشته ای از اعداد است. 278 00:16:43,710 --> 00:16:46,360 چیزی که ما به عقب بر گردیم اطلاعات بسیار اساسی است. 279 00:16:46,360 --> 00:16:50,460 ما می بینیم که من آن را به نام، که بیلی، نام خانوادگی، که Janitsch. 280 00:16:50,460 --> 00:16:53,370 یک ID منحصر به فرد فیس بوک وجود دارد که به من. 281 00:16:53,370 --> 00:16:57,920 شما می توانید ببینید که من مرد و من تنظیم زبان من 282 00:16:57,920 --> 00:17:01,290 انگلیسی بریتانیایی. 283 00:17:01,290 --> 00:17:03,490 به عبارت دیگر، ما در حال دیدن اطلاعات بسیار اساسی در اینجا. 284 00:17:03,490 --> 00:17:08,670 این بیش از حد نیست، اما آن را نشانی از ما ایده از آنچه وجود دارد به من بدهید. 285 00:17:08,670 --> 00:17:10,849 >> ما می توانیم همان چیزی که به دیوید مالان انجام دهید، به عنوان مثال. 286 00:17:10,849 --> 00:17:13,599 من فکر می کنم نام خود را dmalan. 287 00:17:13,599 --> 00:17:16,369 ما می بینیم دیوید مالان است ID منحصر به فرد است. 288 00:17:16,369 --> 00:17:19,300 او دارای نام، نام، نام میانی، نام خانوادگی. 289 00:17:19,300 --> 00:17:24,210 ما همچنین به این که او مرد است و مجموعه ای زبان خود را به ایالات متحده انگلیسی را ببینید. 290 00:17:24,210 --> 00:17:26,869 به عبارت دیگر، ما در حال دیدن اطلاعات بسیار اساسی در اینجا. 291 00:17:26,869 --> 00:17:28,860 در حال حاضر، چه اتفاقی می افتد اگر ما سعی می کنیم به چیز دیگری؟ 292 00:17:28,860 --> 00:17:33,060 بیایید می گویند در آنچه دیوید مالان در فیس بوک دوست من علاقه مند هستم. 293 00:17:33,060 --> 00:17:36,860 من می توانم / دوست داشتن را انجام دهد. حالا ما به یک مشکل اجرا شود. 294 00:17:36,860 --> 00:17:39,280 ما باید برخی از مرتب کردن بر اساس خطا است که می گوید: یک نشانه دسترسی 295 00:17:39,280 --> 00:17:41,660 لازم است به درخواست این منابع است. 296 00:17:41,660 --> 00:17:44,730 اما اگر شما در مورد آن فکر می کنم، که در واقع حس می کند زیرا این امر می تواند عجیب و غریب 297 00:17:44,730 --> 00:17:47,830 اگر شما می توانید هر بخشی از پایگاه داده در فیس بوک دسترسی داشته باشید 298 00:17:47,830 --> 00:17:50,170 فقط از نوعی از API های ساده، درست است؟ 299 00:17:50,170 --> 00:17:56,040 به عبارت دیگر، احتمالا اطلاعات شما می تواند توسط هر کسی که آن را می خواهد نمی شود دسترسی پیدا کرد. 300 00:17:56,040 --> 00:17:58,330 >> این خطا دقیقا چیزی است که این بدان معناست که در نظر گرفته شده است. 301 00:17:58,330 --> 00:18:03,630 برخی از رابط های برنامه کاربردی نیاز به مجوز خاصی به منظور دسترسی به داده های خود را. 302 00:18:03,630 --> 00:18:06,940 و حتی پیشرفته تر رابط های برنامه کاربردی مانند فیس بوک، 303 00:18:06,940 --> 00:18:09,840 نیاز به مجوز خاصی برای انجام کارهای خاص. 304 00:18:09,840 --> 00:18:12,650 من می توانم این اطلاعات پایه در مورد دیوید مالان را ببینید. 305 00:18:12,650 --> 00:18:15,950 من می توانم ببینم که او مرد و او در ایالات متحده آمریکا زندگی می کند، 306 00:18:15,950 --> 00:18:19,270 اما من واقعا نمی تواند دیدن هر چیزی در گذشته که. 307 00:18:19,270 --> 00:18:23,050 برای به دست آوردن در اطراف این فیس بوک در حال حاضر، این ابزار خوب 308 00:18:23,050 --> 00:18:27,690 که نمودار API اکسپلورر است و این ایده که شما می توانید مرتب سازی بر اساس 309 00:18:27,690 --> 00:18:31,880 را تشکیل می دهند مجوز برای خودتان بر اساس حساب خود را 310 00:18:31,880 --> 00:18:35,680 و پس از آن چیزهایی است که به طور خاص حساب خود را می توانید مشاهده کنید. 311 00:18:35,680 --> 00:18:45,120 برای مثال، اگر من graph.facebook.com/billyjanitsch/likes- 312 00:18:45,120 --> 00:18:53,510 اوه، من حدس می زنم من به revalidate نشانه من در اینجا. 313 00:18:53,510 --> 00:18:55,950 باشه. 314 00:18:55,950 --> 00:19:01,740 اگر من این کار را دوباره، بزرگ، در حال حاضر من می بینم که من این شی 315 00:19:01,740 --> 00:19:06,300 که می گوید که من می خواهم رشته فرنگی استخر، که در بازی های این رده و اسباب بازی. 316 00:19:06,300 --> 00:19:08,620 من دوست دارم walruses، که در حیوانات رده هستند. 317 00:19:08,620 --> 00:19:10,180 این دوست داشتن واقعی فیس بوک من می باشد. 318 00:19:10,180 --> 00:19:13,280 آنها نوع شرم آور است. 319 00:19:13,280 --> 00:19:16,090 >> اما ما می توانیم این داده ها در JSON بازگردانده شده است. 320 00:19:16,090 --> 00:19:18,160 این خیلی قابل خواندن است. 321 00:19:18,160 --> 00:19:20,970 به عبارت دیگر، ما باید این نقشه برداری از داده ها به نوعی از یک آرایه، 322 00:19:20,970 --> 00:19:25,220 و هر عنصر از این آرایه hashmap که نقشه است 323 00:19:25,220 --> 00:19:28,530 نام مانند و شاخه مانند است. 324 00:19:28,530 --> 00:19:31,240 هر یک مانند یک ID منحصر به فرد است. 325 00:19:31,240 --> 00:19:34,510 تمام انواع چیزهای مختلف از داده هایی را که ما می توانیم وجود دارد، 326 00:19:34,510 --> 00:19:37,980 و اگر شما علاقه مند در استفاده از API فیس بوک برای پروژه نهایی CS50 327 00:19:37,980 --> 00:19:40,720 و یا برای هر چیزی می خواهم که آن را در واقع کاملا شدنی است. 328 00:19:40,720 --> 00:19:44,260 اساسا چگونه شما اطراف چیزی احراز هویت فیس بوک است 329 00:19:44,260 --> 00:19:48,030 با استفاده از یک سیستم به نام OAuth حفظ، یا تأیید اعتبار باز، 330 00:19:48,030 --> 00:19:52,870 و من نمی خواهم به آن را در حال حاضر به دلیل OAuth حفظ و یا از نوع های مختلف 331 00:19:52,870 --> 00:19:56,060 احراز هویت تمایل به بسیاری میان رابط های برنامه کاربردی مختلف متفاوت باشد، 332 00:19:56,060 --> 00:19:58,320 بنابراین من می تواند مدت زمان طولانی را صرف کنند، بیش از هر یک از 333 00:19:58,320 --> 00:20:01,170 اما آنها در واقع بسیار واضح است. 334 00:20:01,170 --> 00:20:04,050 >> اگر شما از فیس بوک API گوگل آن را بسیار قابل خواندن است. 335 00:20:04,050 --> 00:20:06,670 تمام تنظیمات وجود دارد. 336 00:20:06,670 --> 00:20:10,210 به عنوان مثال، این مستندات API فیس بوک است 337 00:20:10,210 --> 00:20:14,170 و شما می توانید ببینید که من در صفحه کاربری، بنابراین من می توانم همه چیز در مورد انواع مختلف چیزهایی یاد بگیرند 338 00:20:14,170 --> 00:20:17,170 که در دسترس هستند برای به دست آوردن داده ها، تا آنجا که 339 00:20:17,170 --> 00:20:21,550 و همچنین مجوزهای مختلف است که نیاز من به آنها دسترسی داشته باشید. 340 00:20:21,550 --> 00:20:25,470 همانطور که ما را دید، اجازه لازم نیست برای دسترسی به نام و یا جنس، 341 00:20:25,470 --> 00:20:29,380 اما فراتر از آنچه که ما نیاز به مجوز برای بسیاری از چیزهایی است. 342 00:20:29,380 --> 00:20:33,040 این صفحه، و یا به جای، این وب سایت نیز به شما چگونه می توانید بگویید 343 00:20:33,040 --> 00:20:35,640 یک نشانه می شود قادر به تأیید اعتبار خودتان. 344 00:20:35,640 --> 00:20:39,290 بسیاری از سیستم های احراز هویت با استفاده از نوعی از نشانه 345 00:20:39,290 --> 00:20:42,880 که در آن شما می توانید این مقدار منحصر به فرد، که واقعا یک رشته طولانی و تصادفی، 346 00:20:42,880 --> 00:20:46,240 و به این ترتیب آنها می توانید درخواست می کند که شما با شما شریک باشد. 347 00:20:46,240 --> 00:20:50,560 به عبارت دیگر، آنها می دانند که شما به چیزی مشکوک با داده های خود را انجام نمی دهد. 348 00:20:50,560 --> 00:20:53,340 آنها می دانند که دقیقا همان چیزی است که شما در حال گرفتن. 349 00:20:53,340 --> 00:20:56,180 آنها همچنین می دانیم که شما اجازه برای مشاهده این اطلاعات است. 350 00:20:56,180 --> 00:20:59,110 >> اگر شما یک برنامه فیس بوک و برنامه خود را تا به کاربران خاص، 351 00:20:59,110 --> 00:21:03,380 و آن دسته از کاربران اجازه داده اند که برنامه برای دسترسی به بخش های خاصی از صفحه مشخصات شان را، 352 00:21:03,380 --> 00:21:07,790 پس از آن هر چه کلید API و یا نشانه است که این برنامه با استفاده از 353 00:21:07,790 --> 00:21:11,090 خواهد بود قادر به دسترسی به داده ها برای آن دسته از کاربران است. 354 00:21:11,090 --> 00:21:13,780 این صدا ممکن است پیچیده است، اما این خیلی بد نیست، 355 00:21:13,780 --> 00:21:16,810 و اگر شما می خواهید به استفاده از فیس بوک من به شدت توصیه می 356 00:21:16,810 --> 00:21:18,990 در نظر بازی در اطراف با API های خود را. 357 00:21:18,990 --> 00:21:21,610 این بسیار سرد است، و شما می توانید بسیاری از چیزهای مختلفی را با آن انجام دهد. 358 00:21:21,610 --> 00:21:24,880 اگر کاربر کمک هزینه به شما این مجوز شما حتی می توانید بازگشت به API 359 00:21:24,880 --> 00:21:28,820 و می گویند من می خواهم به واقع به دیوار به این کاربر ارسال، و یا من می خواهم به آنها ارسال عکس، 360 00:21:28,820 --> 00:21:32,390 و به همین دلیل است که در خبر خود شما گاهی اوقات می خواهید آن چیزهایی مزاحم 361 00:21:32,390 --> 00:21:37,840 گفت: دوست خود را به این فیلم در برخی از مرتب کردن بر اساس سایت عجیب و غریب و یا چیزی شبیه به آن را تماشا می کردند. 362 00:21:37,840 --> 00:21:43,120 این به این دلیل است که برنامه برای دسترسی به پست بر روی دیوار آن شخص صادر شده است. 363 00:21:43,120 --> 00:21:48,350 این ایده به طور کلی، API فیس بوک بسیار پیچیده است اما واقعا مفید است. 364 00:21:48,350 --> 00:21:53,220 قطعا ارزش چک کردن اگر شما هنوز هم برای یک پروژه نهایی. 365 00:21:53,220 --> 00:21:57,930 >> یکی دیگر از مجموعه ای از رابط های برنامه کاربردی است که من قصد دارم به بیش CS50 رابط های برنامه کاربردی می باشد. 366 00:21:57,930 --> 00:22:00,070 اجازه بدهید در اینجا زوم. 367 00:22:00,070 --> 00:22:03,390 CS50 در واقع با هم قرار دادن یک سری کامل از رابط های برنامه کاربردی 368 00:22:03,390 --> 00:22:07,080 که شما می توانید برای یک پروژه نهایی و یا فقط برای هر چیزی که شما در حال استفاده کنید. 369 00:22:07,080 --> 00:22:12,830 و آنها عمدتا مرتبط با هاروارد، و آنها را از منو چارچوب متفاوت، 370 00:22:12,830 --> 00:22:17,780 به عنوان مثال، به این رویدادها API دانشگاه هاروارد، که به شما اجازه دسترسی به یک لیست از شما 371 00:22:17,780 --> 00:22:21,290 رویدادهای مختلف است که در دانشگاه هاروارد در حال رفتن و آن نوع از چیزی است. 372 00:22:21,290 --> 00:22:24,510 و بنابراین ما می توانید با کلیک بر روی هر یک از این و تنظیمات را برای آن دریافت، 373 00:22:24,510 --> 00:22:28,090 که شما قادر خواهید بود برای پیدا کردن برای هر API، و این ایده است 374 00:22:28,090 --> 00:22:33,920 آن را به شما اجازه می دهد که می دانید، A، به طور خاص به درخواست از API و چگونه آن را درخواست. 375 00:22:33,920 --> 00:22:37,370 به عبارت دیگر، اگر من می خواهم تمام رویدادهایی که اتفاق می افتد فردا 376 00:22:37,370 --> 00:22:42,550 پس از آن من به بدیهی است آن است که تاریخ است که من می خواهم در یک فرمت خاص می دهد، 377 00:22:42,550 --> 00:22:46,030 و B، به من دقیقا همان چیزی است که آن اتفاق را به من بگویید. 378 00:22:46,030 --> 00:22:48,590 این خواهد گفت: من قصد دارم به شما این شی JSON بازگشت، 379 00:22:48,590 --> 00:22:50,960 یا شما می توانید ببینید، فرمت های مختلف وجود دارد. 380 00:22:50,960 --> 00:22:54,050 >> شما همچنین می توانید داده ها را به عنوان یک CSV بازگشت، به عنوان مثال. 381 00:22:54,050 --> 00:22:57,620 اما شما می دانید که دقیقا چگونه است که داده از رفتن به نگاه زمانی که شما آن را به عقب بر گردیم 382 00:22:57,620 --> 00:23:00,610 بنابراین شما می توانید انتظار برای انجام کارهای خاص با آن. 383 00:23:00,610 --> 00:23:07,240 ما می توانیم در پایین حرکت کنید و ببینید، برای مثال، اگر ما می خواهیم به پرس و جو از API 384 00:23:07,240 --> 00:23:11,500 برای دریافت تقویم، پس ما می توانیم به این URL خاص استفاده کنید 385 00:23:11,500 --> 00:23:16,480 و به پارامترهای خاصی است که در حال رفتن به داده هایی را که ما می خواهیم دقیقا می دهد. 386 00:23:16,480 --> 00:23:19,540 و به همین ترتیب، اگر ما می خواهیم داده ها را در یک فرمت خاص، 387 00:23:19,540 --> 00:23:23,790 پس از آن ما می توانیم آن را به خروجی داده ها در CSV، 388 00:23:23,790 --> 00:23:27,700 و این که فقط یک پارامتر که ما در حال عبور به API است. 389 00:23:27,700 --> 00:23:29,210 بسیاری از چیزهای سرد برای انجام وجود دارد. 390 00:23:29,210 --> 00:23:32,550 من قطعا چک کردن API های CS50 را توصیه کند. 391 00:23:32,550 --> 00:23:36,000 >> من قصد دارم به در این API غذا هاروارد به ویژه برای کمی است. 392 00:23:36,000 --> 00:23:39,870 یک چیزی که من در واقع طراحی این وب سایت Noms دانشگاه هاروارد است، 393 00:23:39,870 --> 00:23:44,930 که با استفاده از API غذایی CS50 برای بازیابی منو چارچوب برای روز. 394 00:23:44,930 --> 00:23:50,400 و چارچوب برای مردم مدرسه فرمت، سرویس ناهار خوری را در دانشگاه هاروارد است. 395 00:23:50,400 --> 00:23:55,130 آنچه کسب می کنید این صفحه ای که حاوی همه از وعده های غذایی در روز است، به طوری که ما می بینیم ناهار است. 396 00:23:55,130 --> 00:23:58,130 ما چند دسته مختلف. در حال حاضر ایستگاه حبوبات و غلات کامل. 397 00:23:58,130 --> 00:24:00,340 ما ایستگاه برنج قهوه ای است. 398 00:24:00,340 --> 00:24:03,360 ما می توانیم برای صبحانه ببینید که ما داریم این مواد غذایی چند. 399 00:24:03,360 --> 00:24:07,030 اگر ما بر روی آنها کلیک کنید، سپس اطلاعات تغذیه ما دریافت کنید. 400 00:24:07,030 --> 00:24:12,240 همانطور که می بینید این است که اطلاعات تغذیه برای گریپ فروت، در صورتی که شما را شگفت زده شدند. 401 00:24:12,240 --> 00:24:14,870 و دوباره، ما قصد داریم به پایان دادن به عقب همکار در اینجا یک کمی 402 00:24:14,870 --> 00:24:18,530 و آنچه که دقیقا این است که برای به دست آوردن این اطلاعات است. 403 00:24:18,530 --> 00:24:21,710 و معلوم واقع نمی شود بسیار پیچیده است. 404 00:24:21,710 --> 00:24:28,720 این فایل به نظر می رسد کمی کثیف است، اما به خاطر داشته باشید که این مدیریت کل وب سایت، 405 00:24:28,720 --> 00:24:34,130 و اگر من در پایین حرکت این تغییر عملکرد داده ها را ببینید. 406 00:24:34,130 --> 00:24:36,630 >> در حال حاضر، فقط برای روشن شود، این است که در CoffeeScript نوشته شده است، 407 00:24:36,630 --> 00:24:39,570 است که یک زبان است که احتمالا شما را دیده اند، نه قبل از. 408 00:24:39,570 --> 00:24:44,810 اما آن را بسیار قابل خواندن است، به طوری که من راه رفتن را از طریق آن هر چند آن را به عنوان شبه. 409 00:24:44,810 --> 00:24:49,080 تاریخ تغییر یک تابع است که رفتن به در این ارزش تاریخ را، 410 00:24:49,080 --> 00:24:51,740 و آن را نیز در اول را، که ما در مورد مراقبت نه به اندازه. 411 00:24:51,740 --> 00:24:54,110 اما نکته مهم این است که آن را تا این تاریخ، 412 00:24:54,110 --> 00:25:00,080 و این تاریخ روزی که ما می خواهیم به درخواست همه از اقلام مواد غذایی است. 413 00:25:00,080 --> 00:25:04,030 و پس از آن شما ببینید که ما داریم کمی نحو در اینجا، 414 00:25:04,030 --> 00:25:09,000 است که اساسا تجزیه است که تاریخ را به یک فرمت قابل خواندن است. 415 00:25:09,000 --> 00:25:11,920 API به عبارت دیگر، نیاز به تاریخ در یک فرمت خاص است. 416 00:25:11,920 --> 00:25:17,390 شما نمی توانید فقط می گویند نوامبر 16th، یدلایمخیرات 2012 AD. 417 00:25:17,390 --> 00:25:20,320 نمی دانیم چه چیزی را باید با آن انجام دهد. این می خواهد تاریخ در یک فرمت خاص است. 418 00:25:20,320 --> 00:25:23,230 همه ما در حال انجام است که آن را دادن که دقیقا قالب، 419 00:25:23,230 --> 00:25:26,520 که یک مقدار سال و پس از آن یک خط رابط بین کلماتی که نصف ان در سطر بعد واقع شده، ارزش ماه، 420 00:25:26,520 --> 00:25:29,420 یکی دیگر از خط رابط بین کلماتی که نصف ان در سطر بعد واقع شده و ارزش تاریخ است. 421 00:25:29,420 --> 00:25:34,910 و ما نیز می گویند ما می خواهیم اطلاعات را به عنوان خروجی در JSON. 422 00:25:34,910 --> 00:25:37,560 >> در حال حاضر ما در حال ساخت این درخواست AJAX، و همان طور که قبلا ذکر شد، 423 00:25:37,560 --> 00:25:41,680 jQuery را فوق العاده مفید این تابع AJAX است که همه شما باید انجام دهید این است که مشخص 424 00:25:41,680 --> 00:25:45,780 چند پارامتر را در اینجا، و آن را به شما برگشت دقیقا همان چیزی است که شما می خواهید به من بدهید. 425 00:25:45,780 --> 00:25:50,490 ما آن را به گفتن است که URL که ما می خواهیم آن را به رفتن به این API CS50 غذا، 426 00:25:50,490 --> 00:25:52,270 که ما از تنظیمات کردم. 427 00:25:52,270 --> 00:25:56,730 ما می گویند که ما می خواهیم داده ها در JSON و 428 00:25:56,730 --> 00:25:59,490 ما در حال رفتن به آن این اطلاعات است که ما تعریف کرده ایم تا در اینجا به من بدهید. 429 00:25:59,490 --> 00:26:02,670 این روز ما می خواهیم که مواد غذایی است. 430 00:26:02,670 --> 00:26:07,790 و پس از آن همه ما باید انجام دهیم این است تعریف برخی از مرتب کردن بر اساس عملکرد موفقیت، 431 00:26:07,790 --> 00:26:11,980 است که اساسا چه اتفاقی می افتد هنگامی که API است که داده ها را باز می گرداند. 432 00:26:11,980 --> 00:26:15,490 به عبارت دیگر، ما از بسته بندی کردن تمام پارامترهای که ما می خواهیم، 433 00:26:15,490 --> 00:26:20,530 که در این مورد در روز است که ما آن را می خواهم و این واقعیت است که ما آن را می خواهم در JSON، 434 00:26:20,530 --> 00:26:23,840 و ما آن را فرستاده به API، بنابراین در حال حاضر API گفته است، درست است. 435 00:26:23,840 --> 00:26:26,350 در اینجا داده شده است، من آن را کردم برای شما. 436 00:26:26,350 --> 00:26:29,930 ما باید تابع موفقیت، که به معنی داده شده است که از API 437 00:26:29,930 --> 00:26:32,230 برخی از داده ها با موفقیت برمی گرداند، آنچه ما را با آن انجام دهید؟ 438 00:26:32,230 --> 00:26:35,980 >> و معلوم است که همه ما انجام می دهیم این است که این تابع به روز رسانی منو 439 00:26:35,980 --> 00:26:42,680 با هر API بازگشته است، به طوری که ما می توانیم برای این جستجو 440 00:26:42,680 --> 00:26:47,970 و ببینید که همه ما در حال انجام است که با استفاده از یک دسته از تگ های جدید در اینجا 441 00:26:47,970 --> 00:26:52,220 برای به روز رسانی HTML و قرار دادن این اطلاعات جدید است. 442 00:26:52,220 --> 00:26:56,580 این اجازه می دهد این است که ما باید این فلش ها در هر دو طرف است، و ما می توانید کلیک کنید 443 00:26:56,580 --> 00:27:01,060 و در حال حاضر ما در حال نگاه کردن به داده ها را برای روز بعد و دوباره روز بعد، 444 00:27:01,060 --> 00:27:04,820 و هر بار آن را به روز رسانی که مقدار تاریخ و پرس و جو از API، 445 00:27:04,820 --> 00:27:07,510 گرفتن برخی از داده ها و قرار دادن آن در سایت. 446 00:27:07,510 --> 00:27:10,590 باز هم، شما می توانید ببینید، فوق العاده، فوق العاده مفید است. 447 00:27:10,590 --> 00:27:14,410 این برنامه در زمان چند ساعت به من برای هک کردن با هم، 448 00:27:14,410 --> 00:27:20,140 و من تجربه کمی بیشتر است، بدیهی است، اما CS50 پروژه نهایی خود 449 00:27:20,140 --> 00:27:22,870 می توانید چیزی بسیار شبیه به این. 450 00:27:22,870 --> 00:27:29,540 >> API ها فوق العاده قدرتمند برای میزان تلاش است که آنها را. 451 00:27:29,540 --> 00:27:32,800 آخرین چیزی که من قصد دارم به رفتن بیش از چند رابط های برنامه کاربردی گسترده است. 452 00:27:32,800 --> 00:27:35,480 من تا آنجا که نمی خواهد به آنها تا آنجا که به آنچه انجام می دهند به طور خاص، 453 00:27:35,480 --> 00:27:38,740 اما من به شما یک ایده از آنچه در خارج وجود دارد به من بدهید. 454 00:27:38,740 --> 00:27:42,700 2 آنهایی که واقعا مفید است، اگر شما علاقه مند در تجزیه و تحلیل داده ها و یا تجسم 455 00:27:42,700 --> 00:27:45,960 و یا هر چیزی شبیه به آن، Freebase وارد و ویکیپدیا. 456 00:27:45,960 --> 00:27:49,800 ویکیپدیا احتمالا همه شما می دانیم که یک دایره المعارف آنلاین رایگان، 457 00:27:49,800 --> 00:27:53,230 و آن را در واقع یک API، بنابراین اگر شما می خواهید، برای مثال، 458 00:27:53,230 --> 00:27:56,250 گرفتن همه از متون و مقالات برای هشت پا 459 00:27:56,250 --> 00:27:58,030 شما به راحتی می تواند انجام دهد. 460 00:27:58,030 --> 00:28:02,300 فقط بگو هی، ویکیپدیا API، من می خواهم اطلاعات بازگردانده شده به عنوان این می خواهم، 461 00:28:02,300 --> 00:28:07,010 و من می خواهم آن را در این قالب می خواهم، و این مقاله من می خواهم این است هشت پا، 462 00:28:07,010 --> 00:28:09,820 و به سرعت آن را به شما برگشت را که اطلاعات. 463 00:28:09,820 --> 00:28:12,230 است که می تواند واقعا مفید باشد اگر شما می خواهید برای ایجاد برخی از مرتب کردن بر اساس سایت 464 00:28:12,230 --> 00:28:16,200 که بیننده بهتر برای ویکیپدیا و یا چیزی شبیه به آن است. 465 00:28:16,200 --> 00:28:21,350 >> Freebase وارد مرتب کردن بر اساس مشابه است، هر چند آن را کمی سخت تر به عنوان دور به عنوان API. 466 00:28:21,350 --> 00:28:24,390 Freebase وارد است مانند ویکیپدیا که در آن یک دایره المعارف آنلاین 467 00:28:24,390 --> 00:28:29,050 که حاوی مقدار زیادی و تعداد زیادی از داده های مختلف در مورد انواع و اقسام موضوعات مختلف، 468 00:28:29,050 --> 00:28:33,150 اما آن را در یک پایگاه داده رابطه ای است که کمی متفاوت از ویکیپدیا ذخیره می شود. 469 00:28:33,150 --> 00:28:36,410 ویکیپدیا مقالات و مقالات مرتبط به دیگر مقالات، 470 00:28:36,410 --> 00:28:38,860 اما در اکثر موارد، اگر شما می خواهید داده ها را برای هشت پا، 471 00:28:38,860 --> 00:28:41,990 شما را به مقاله هشت پا، که داده است، و شما یک دسته از متن 472 00:28:41,990 --> 00:28:43,830 در مورد اختاپوس، به طوری که بزرگ است. 473 00:28:43,830 --> 00:28:46,870 Freebase وارد به شیوه ای کمی پیچیده تر است که در آن کار می کند 474 00:28:46,870 --> 00:28:48,930 همه چیز به یک دیگر مربوط می شود. 475 00:28:48,930 --> 00:28:52,620 به عبارت دیگر، اگر ما در حال جستجو برای هشت پا 476 00:28:52,620 --> 00:28:54,940 سپس آن را به یک دسته از مقوله های مرتبط با آن است. 477 00:28:54,940 --> 00:28:57,920 >> به عنوان مثال، آن را به یک حیوان، آن را در زیر آب زندگی می کند، 478 00:28:57,920 --> 00:28:59,710 از آن است که دمای بدن خاص است. 479 00:28:59,710 --> 00:29:01,210 نمی دانم. 480 00:29:01,210 --> 00:29:04,230 و همه از این دسته بندی ها را به مکان های دیگر که در آن شما می توانید به 481 00:29:04,230 --> 00:29:06,640 برای دیدن چیزهایی که با گروه های مشابه. 482 00:29:06,640 --> 00:29:13,450 به عبارت دیگر، هشت پا مجموعه داده ها شامل یک لینک به اطلاعات برای تمام حیوانات، 483 00:29:13,450 --> 00:29:16,790 و لازم است که به من اجازه حرکت در سراسر در پایگاه داده واقعا به سرعت. 484 00:29:16,790 --> 00:29:21,740 این می تواند بسیار مفید باشد اگر شما در حال انجام چیزی شبیه به مقایسه. 485 00:29:21,740 --> 00:29:24,490 به عبارت دیگر، با توجه به چیزی خاص، شما می خواهید برای دیدن 486 00:29:24,490 --> 00:29:27,890 چه چیز دیگری آن را مربوط به و ببینید که چه چیز دیگری آن را به مربوط نیست. 487 00:29:27,890 --> 00:29:30,700 آن نوع از چیزی. در تعدادی از راه این می تواند مفید باشد. 488 00:29:30,700 --> 00:29:34,250 اگر شما به دنبال برای بیش از یک چالش و قادر به انجام برخی از کارهای پیچیده تر 489 00:29:34,250 --> 00:29:38,740 من می خواهم در نظر گرفتن یک نگاهی به API Freebase وارد است. 490 00:29:38,740 --> 00:29:44,670 اما تا حد زیادی، ویکی پدیا یک محل بسیار ساده برای رفتن تا آنجا که به دست آوردن اطلاعات است. 491 00:29:44,670 --> 00:29:48,340 یکی دیگر از جایی که من در نگاه Last.fm، و من در واقع برای رفتن به سایت 492 00:29:48,340 --> 00:29:53,800 در مورد برخی از مردم آشنا نیست، اما Last.fm است که اساسا موسیقی 493 00:29:53,800 --> 00:29:57,220 سلیقه و توصیه های وب سایت. 494 00:29:57,220 --> 00:29:59,000 شما می توانید یک حساب کاربری ایجاد کنید. 495 00:29:59,000 --> 00:30:04,250 شما می توانید از آپلود موسیقی از دستگاه پخش موسیقی خود را شروع 496 00:30:04,250 --> 00:30:08,020 به وب سایت، و اساسا آن آغاز خواهد شد به شما توصیه موسیقی 497 00:30:08,020 --> 00:30:10,030 بر اساس آنچه شما را به گوش دادن. 498 00:30:10,030 --> 00:30:14,270 >> به عنوان مثال، اگر شما را به مشخصات خود را به این مال من است 499 00:30:14,270 --> 00:30:18,180 شما می توانید ببینید که شما یک لیست از گوش دادن به آهنگ. 500 00:30:18,180 --> 00:30:22,550 شما می توانید از هنرمندان مورد علاقه به طور کلی، همه از این نوع از چیزی را ببینید، 501 00:30:22,550 --> 00:30:25,280 و دوباره، یک API بزرگ پشت Last.fm وجود دارد، 502 00:30:25,280 --> 00:30:29,360  و شما می توانید آن را به انجام بسیاری و بسیاری از چیزهای واقعا سرد استفاده کنید. 503 00:30:29,360 --> 00:30:38,870 به عنوان مثال، من به صفحه یکی از دوستان که این وب سایت Last.fm ابزارهای بروید. 504 00:30:38,870 --> 00:30:42,380 این است که در واقع یکی دیگر از پلت فرم که در API Last.fm ساخته شده است، 505 00:30:42,380 --> 00:30:45,420 و آن را تعدادی از چیزهای جالب است. 506 00:30:45,420 --> 00:30:50,260 اگر من وارد سیستم شوید با نام کاربری من، به عنوان مثال، 507 00:30:50,260 --> 00:30:53,110 من می توانم آن را به تولید ابر برچسب، برای مثال، 508 00:30:53,110 --> 00:30:56,480 و آنچه که برای انجام این کار این است که به من یک تصویر 509 00:30:56,480 --> 00:30:59,850 تمام ژانرهای مختلف و این نوع از چیزی که من می خواهم برای گوش دادن به. 510 00:30:59,850 --> 00:31:01,410 چگونه انجام این کار؟ 511 00:31:01,410 --> 00:31:05,670 خیلی اساسا آن گفت: به API Last.fm در اینجا این کاربر نقل قول این ارسال در پاسخ است. 512 00:31:05,670 --> 00:31:10,710 من می خواهم به این ژانر از هر آهنگ می دانیم که آنها تا کنون به گوش، 513 00:31:10,710 --> 00:31:15,130 و شما می توانید با ساخت یک تماس خیلی ساده AJAX API Last.fm انجام دهد. 514 00:31:15,130 --> 00:31:18,990 شما یک لیست بزرگ، و پس از آن بدیهی است که برخی از چیزهای دیگر در حال انجام است 515 00:31:18,990 --> 00:31:22,280 آن را تبدیل به ابر کلمه است، اما شما می توانید ببینید به طور کلی 516 00:31:22,280 --> 00:31:25,850 برای دسترسی به آن بسیار آسان است و بسیار آسان برای استفاده. 517 00:31:25,850 --> 00:31:30,750 واقعا خوبی برای تعدادی از چیزهایی است. 518 00:31:30,750 --> 00:31:35,940 >> من فکر می کنم که در مورد تمام من به طور کلی می گویند. 519 00:31:35,940 --> 00:31:39,040 آخرین چیزی که من در مورد API ها به طور کلی به ذکر است که 520 00:31:39,040 --> 00:31:41,840 شما گاهی اوقات می خواهید به چیزی به نام سرعت محدود اجرا شود، 521 00:31:41,840 --> 00:31:44,940 و این ایده از میزان محدود کردن این است که شما نمی خواهید به سوء استفاده از رابط های برنامه کاربردی است. 522 00:31:44,940 --> 00:31:48,130 به عبارت دیگر، آن را واقعا خوب است که بسیاری از این وب سایت ها دارای رابط های برنامه کاربردی 523 00:31:48,130 --> 00:31:51,070 که شما می توانید بروید و به صورت رایگان استفاده کنید. 524 00:31:51,070 --> 00:31:54,460 با این حال، اگر شما در حال ساخت میلیون ها و یا میلیاردها درخواست در هر روز، 525 00:31:54,460 --> 00:31:57,610 به عنوان مثال، اگر شما در یک حلقه بی نهایت که بی نهایت پرس و جو گیر 526 00:31:57,610 --> 00:32:00,680 نوعی از API و گرفتن مقدار زیادی از داده ها، 527 00:32:00,680 --> 00:32:04,570 بدیهی است که خوب نیست، پس چه بسیاری از رابط های برنامه کاربردی انجام دهیم این است که این نرخ محدود کردن ویژگی 528 00:32:04,570 --> 00:32:09,970 که می گوید شما فقط می توانید 1،000 درخواست در هر روز در آدرس IP و یا چیزی شبیه به آن. 529 00:32:09,970 --> 00:32:12,540 و اگر شما در حال انجام بسیاری از تست و آن نوع از چیزی، 530 00:32:12,540 --> 00:32:14,890 شما گاهی اوقات می خواهید به آن اجرا شود، و ناگهان آن را به شما قطع 531 00:32:14,890 --> 00:32:18,280 و می گویند نه، من دادن نیست که شما داده های هر بیشتر. 532 00:32:18,280 --> 00:32:20,000 >> چیزی که شما می خواهید برای انجام این کار این است که با قوانین بازی. 533 00:32:20,000 --> 00:32:22,950 شما می خواهید مطمئن شوید که شما خواندن مشخصات API با دقت. 534 00:32:22,950 --> 00:32:26,330 اگر آن مقررات خاصی که به آن متصل است، مثل شما فقط می توانید نمایش داده شد X در هر روز 535 00:32:26,330 --> 00:32:30,000 یا شما فقط می توانید بخشی از پایگاه داده دسترسی به تعداد خاصی از زمان 536 00:32:30,000 --> 00:32:32,900 یا چیزی شبیه به آن که می خواهید مطمئن شوید که شما به آن می چسبد. 537 00:32:32,900 --> 00:32:38,360 تا زمانی که شما در داخل آن قواعد بازی شما احتمالا به یک زمان واقعا خوبی با استفاده از رابط های برنامه کاربردی داشته باشد. 538 00:32:38,360 --> 00:32:42,030 غذای آماده به طور کلی شما API ها واقعا مفید است. 539 00:32:42,030 --> 00:32:45,610 >> API برای تقریبا هر نوع خدمات وب سایت بزرگ خارج وجود دارد وجود دارد. 540 00:32:45,610 --> 00:32:50,700 تقریبا هر بخشی از مجموعه ابزار گوگل، گوگل نقشه، کره زمین گوگل، 541 00:32:50,700 --> 00:32:54,390 جیمیل، تقویم گوگل، همه از آن چیزهایی است که رابط های برنامه کاربردی. 542 00:32:54,390 --> 00:32:58,280 شما می توانید آنها را به هر دو داده ها را از سرور استفاده و ارسال اطلاعات به سرور است. 543 00:32:58,280 --> 00:33:00,870 به عبارت دیگر، اگر شما می خواهید برای ایجاد یک برنامه تقویم است که می تواند به روز رسانی 544 00:33:00,870 --> 00:33:04,190 تقویم کسی، گوگل، API برای آن وجود دارد. 545 00:33:04,190 --> 00:33:07,810 اگر شما می خواهید به چیزی است که می خواهم به شما بگویم که در آن 546 00:33:07,810 --> 00:33:12,530 محل سکونت از یک آدرس خاص است که شما می توانید از API نقشه گوگل که با استفاده از. 547 00:33:12,530 --> 00:33:15,860 رابط های برنامه کاربردی فوق العاده مفید هستند، و آنها در همه جا. 548 00:33:15,860 --> 00:33:18,700 اگر شما علاقه مند در برخی از مرتب کردن بر اساس ایده، 549 00:33:18,700 --> 00:33:22,170 احتمالا API مربوط است که شما می توانید با استفاده از مقدار زیادی از داده ها برای به دست آوردن وجود دارد 550 00:33:22,170 --> 00:33:25,060 بسیار سریع و خیلی ساده است. 551 00:33:25,060 --> 00:33:28,140 >> اگر شما هنوز هم برای یک پروژه و یا اگر به دنبال شما فقط می خواهم به بازی در اطراف 552 00:33:28,140 --> 00:33:31,820 با چیزی به طور کلی، API ها قطعا ارزش کار است. 553 00:33:31,820 --> 00:33:37,200 با تشکر از شما، و من خوشحالم برای پاسخ به هر گونه سؤال که شما بچه ها ممکن است داشته باشند. 554 00:33:37,200 --> 00:33:44,900 خوب، خیلی متشکرم. 555 00:33:44,900 --> 00:33:48,000 [CS50.TV]