1 00:00:00,000 --> 00:00:02,500 [Powered by Google Translate] [سمینار] [توسعه وب: از ایده تا اجرا] 2 00:00:02,500 --> 00:00:04,200 [بن کوهن] [بیلی Janitsch] [دانشگاه هاروارد] 3 00:00:04,200 --> 00:00:07,250 [این CS50 است] [CS50.TV] 4 00:00:07,250 --> 00:00:10,840 [بیلی] سلام، من بیلی هستم و این بن است. >> [بن] سلام. 5 00:00:10,840 --> 00:00:12,840 ما قصد داریم تا در مورد توسعه وب صحبت کردن امروز. 6 00:00:12,840 --> 00:00:14,840 [webdev] [بیلی Janitsch و بن کوهن] 7 00:00:14,840 --> 00:00:16,840 کمی در مورد ما برای اولین بار. 8 00:00:16,840 --> 00:00:19,590 بن مرتب کردن بر اساس آن مرد به عقب پایان است. او باعث می شود همه چیز کار می کنند. 9 00:00:19,590 --> 00:00:21,870 و من در رفتن و آنها را زیبا. 10 00:00:21,870 --> 00:00:26,610 من تا حد زیادی با بیش جلویی نوع طراحی طرح از مسائل درگیر هستم، 11 00:00:26,610 --> 00:00:31,260 و بن، از سوی دیگر، می داند آنچه که او انجام این کار او بر روی مسائل به عقب پایان کار می کند. 12 00:00:31,260 --> 00:00:34,050 ما با هم چند چیز ساخته شده است. 13 00:00:34,050 --> 00:00:38,710 به عنوان مثال، سال گذشته ما در Gimblium است که یک استودیو توسعه بازی آنلاین کار کرده است. 14 00:00:38,710 --> 00:00:40,400 این پروژه نهایی ما برای کلاس بود، 15 00:00:40,400 --> 00:00:42,780 و از آن پس ما ساخته شده است کلاس دانشگاه هاروارد 16 00:00:42,780 --> 00:00:47,860 که یک چارچوب آنلاین برای مرور و دوره های خرید در دانشگاه هاروارد است. 17 00:00:47,860 --> 00:00:53,180 >> ما قصد داریم تا با این ایده برای وب سایت ما شروع می شود. 18 00:00:53,180 --> 00:00:57,480 ما در حال رفتن به فیس بوک، اما برای گربه. 19 00:00:57,480 --> 00:00:59,520 قبل از اینکه شما در واقع این وب سایت را، 20 00:00:59,520 --> 00:01:02,520 این وب سایت را ندارد، زیرا این خوب نیست، اما ما آن را به عنوان چارچوب استفاده 21 00:01:02,520 --> 00:01:05,349 و رفتن را از طریق فرایند چگونه ما این ایده را 22 00:01:05,349 --> 00:01:07,450 و تبدیل آن به یک وب سایت واقعی ما می توانید استفاده کنید. 23 00:01:07,450 --> 00:01:11,940 ما با شکستن وب سایت به پایین شروع می شود. 24 00:01:11,940 --> 00:01:13,190 مثل شما بوده ام در CS50 انجام می دهند، 25 00:01:13,190 --> 00:01:17,360 می خواهید در مورد اجزای واقعی است که در این وب سایت به چه فکر می کنم. 26 00:01:17,360 --> 00:01:21,290 به طور کلی این تبدیل از یک ایده است که فقط یک نوع مفهوم انتزاعی 27 00:01:21,290 --> 00:01:23,590 به یک واقعی، چیزی ملموس که شما می توانید. 28 00:01:23,590 --> 00:01:25,910 ما با پرسیدن چند سوال شروع می شود. 29 00:01:25,910 --> 00:01:28,070 این وب سایت چیست؟ چرا آن را ایجاد می کنیم؟ 30 00:01:28,070 --> 00:01:30,670 چه چیزی است که برای رفتن به مورد استفاده قرار گیرد؟ این نوع از چیزی. 31 00:01:30,670 --> 00:01:33,660 در مورد فیس بوک گربه، 32 00:01:33,660 --> 00:01:37,730 ما اساسا می خواهید یک وب سایت است که اجازه می دهد تا گربه شبکه های اجتماعی با یکدیگر. 33 00:01:37,730 --> 00:01:41,260 ایده این است که آنها را می توان در دیواره های یکدیگر را در پست، 34 00:01:41,260 --> 00:01:43,510 آنها می توانند نظرات، که نوع از چیزی را. 35 00:01:43,510 --> 00:01:46,720 و این که در آن ما را به اجزای عملیاتی آمده است. 36 00:01:46,720 --> 00:01:51,270 ما در حال حاضر این نوع از چارچوب - ما پروفایل کاربر، 37 00:01:51,270 --> 00:01:53,990 ما نظرات، و ما می توانیم در پست. 38 00:01:53,990 --> 00:01:57,390 شاید روزی ما را دوست دارد و این نوع هستند که ریز. 39 00:01:57,390 --> 00:02:00,410 و ما به نوعی می خواهند به اولویت بندی این ویژگی ها قصد شوید 40 00:02:00,410 --> 00:02:03,340 ما می خواهم بگویم مانند، خوب، خیلی مهم است که هر کس یک پروفایل 41 00:02:03,340 --> 00:02:06,440 و این که هر کس می تواند در دیوار های یک دیگر ارسال. 42 00:02:06,440 --> 00:02:08,509 ثانویه به آن، نظر خوبی خواهد بود. 43 00:02:08,509 --> 00:02:10,180 شاید بعد از آن ما به دوست داشتن ریز. 44 00:02:10,180 --> 00:02:13,700 بنابراین، شما می خواهید به یک ایده از چه اساسی را به پروژه خود 45 00:02:13,700 --> 00:02:17,260 و چه نوع از ویژگی های کلی تر است که می تواند بعد از اعمال است. 46 00:02:17,260 --> 00:02:20,870 شما می خواهید به نوعی از یک لیست خاص را در ذهن داشته باشد، 47 00:02:20,870 --> 00:02:24,090 اما این پروژه که شما با شروع است برای رفتن به این پروژه است که شما با به پایان برساند. 48 00:02:24,090 --> 00:02:27,100 به عبارت دیگر، همه چیز را تغییر دهید در حالی که شما در حال توسعه سایت، 49 00:02:27,100 --> 00:02:30,090 و شما می خواهید به ترک اتاق را برای آن. 50 00:02:30,090 --> 00:02:34,470 من آن را به بن چه کسی صحبت کنید کمی در مورد ساختار تبدیل شود. 51 00:02:34,470 --> 00:02:39,610 >> [بن] من قصد دارم در مورد تکنیکی تر از توسعه وب صحبت کردن. 52 00:02:39,610 --> 00:02:42,370 اجازه دهید کمی بیش از برخی از اصول اولیه به اول است. 53 00:02:42,370 --> 00:02:45,730 هنگامی که شما در حال انجام یک برنامه وب، 54 00:02:45,730 --> 00:02:50,470 بخش اصلی است که شما به باید است 55 00:02:50,470 --> 00:02:52,700 شما در حال رفتن به برخی از مسائل که در سمت سرویس گیرنده - 56 00:02:52,700 --> 00:02:56,700 است که، کدی که شما مرورگر هستید طول می کشد از سایت 57 00:02:56,700 --> 00:03:01,910 و جاوا اسکریپت، HTML، مسائل CSS. 58 00:03:01,910 --> 00:03:04,490 که همه در سمت سرویس گیرنده است. 59 00:03:04,490 --> 00:03:08,680 شما در حال رفتن به کد دیگر اجرا می شود که در سمت سرور 60 00:03:08,680 --> 00:03:10,770 که نگه می دارد آهنگ از همه داده هایی را که مردم ارسال به شما، 61 00:03:10,770 --> 00:03:15,060 تصمیم می گیرد که به چه چیزی، چه چیزهای مانند آن. 62 00:03:15,060 --> 00:03:20,380 این فقط برخی از اصطلاحات است به طوری که شما بچه ها با آنچه که ما در حال صحبت کردن در مورد آشنا هستیم. 63 00:03:20,380 --> 00:03:28,600 فراتر از آن بخش بهتر است از برنامه وب شما فکر می کنم از نظر 64 00:03:28,600 --> 00:03:32,500 یک زن و شوهر از قطعات مجزا. 65 00:03:32,500 --> 00:03:35,270 وقتی که شما انجام توسعه وب 66 00:03:35,270 --> 00:03:41,710 یکی از چیزهایی که شما همیشه باید سعی شود این است که کاهش پیچیدگی. 67 00:03:41,710 --> 00:03:45,710 پیچیده تر کد شما شانس بیشتری برای این است که اشکالات وجود دارد، 68 00:03:45,710 --> 00:03:47,710 سخت تر از آن است که تغییر بعد. 69 00:03:47,710 --> 00:03:50,140 بنابراین، اگر شما می توانید شکستن برنامه شما را به برخی از زمینه های کاربردی مجزا 70 00:03:50,140 --> 00:03:57,640 که خواهد شد - و شما می توانید مرتب کردن بر اساس میزان ارتباط متقابل منطقه را کاهش می دهد - 71 00:03:57,640 --> 00:04:03,530 که شما زیادی را در دراز مدت در کاهش اشکالات کمک خواهد کرد. 72 00:04:03,530 --> 00:04:07,950 >> برای اینکه بتن، معمولا مردم تقسیم یک برنامه وب را - 73 00:04:07,950 --> 00:04:13,190 این نوع از کلمات وزوز در حال حاضر، اما هنوز هم مفید است. 74 00:04:13,190 --> 00:04:17,940 شما ممکن است شنیده ام مردم در مورد مدل، نمایش و کنترل صحبت کنید. 75 00:04:17,940 --> 00:04:23,210 مدل های داده های واقعی است که برنامه های خود را در حال رفتن به برخورد با می باشد. 76 00:04:23,210 --> 00:04:28,260 به عنوان مثال، در گربه خود را فیس بوک، مدل های شما خواهد بود - 77 00:04:28,260 --> 00:04:35,340 شما می خواهم یک مدل برای پست مانند، و یک مدل برای پروفیل های کاربر، مسائل شبیه به آن داشته باشد. 78 00:04:35,340 --> 00:04:41,090 نظرات شما چگونه شما حاضر است که اطلاعات را به کاربران خود. 79 00:04:41,090 --> 00:04:46,660 شما ممکن است 1 دیدگاه برای به دنبال در یک واحد و همه نظر دارند 80 00:04:46,660 --> 00:04:51,720 و نمایش های مختلف برای دیوار خود را که تا به یک لیست از تمام ارسال ها 81 00:04:51,720 --> 00:04:57,170 چیزهای مانند آن - که به دیدگاه های مختلف برای خوراک خبری خود را به شما به کارگردانی و. 82 00:04:57,170 --> 00:05:00,610 در نهایت، شما باید کنترل که اساسا زمانی که مردم شما ارسال 83 00:05:00,610 --> 00:05:03,310 و شما را به روز رسانی به سیستم به عقب پایان خود را، 84 00:05:03,310 --> 00:05:06,400 شما افزایش یک دسته از شمارنده ها، و هر چیز دیگری. 85 00:05:06,400 --> 00:05:07,860 کسانی که کنترل شما هستند. 86 00:05:07,860 --> 00:05:11,030 >> من قصد دارم در مورد مدل صحبت کردن بیشتر. 87 00:05:11,030 --> 00:05:14,030 نمایش ها از لحاظ فنی نیست که دشوار است و این موضوع با طراحی آنها است 88 00:05:14,030 --> 00:05:22,040 بر حسب نوری در حال رفتن به خاص به هر آنچه که شما در حال طراحی. 89 00:05:22,040 --> 00:05:25,220 اما برخی از تکنیک های بسیار به طور کلی شما می توانید استفاده کنید وجود دارد 90 00:05:25,220 --> 00:05:30,220 به مدل های خود را بهتر و آسان تر برای کار با که من فکر می کنم بسیار مفید است. 91 00:05:30,220 --> 00:05:35,860 این بیشتر به رفتن به در مورد نحوه برخورد با داده های برنامه های وب خود را در راه خوب باشد. 92 00:05:35,860 --> 00:05:40,420 مسائل اصلی را با مدل های 93 00:05:40,420 --> 00:05:44,540 هستند که آنها بر روی سرویس گیرنده و سرور زندگی می کنند و شما باید به شکل از 94 00:05:44,540 --> 00:05:51,170 الف) چگونه به آنها را - همه آنهایی که مربوط - از سرور به مشتری، 95 00:05:51,170 --> 00:05:53,440 و ب) چگونه به نگه داشتن آنها در همگام. 96 00:05:53,440 --> 00:05:58,700 کاربران شما در حال رفتن به می خواهم به برخی از به روز رسانی. 97 00:05:58,700 --> 00:06:00,470 آنها در حال رفتن به خواهید مطمئن دارای ارسال های جدید. 98 00:06:00,470 --> 00:06:04,800 آنها در حال رفتن به می خواهم به دوست چیز و چیزهای اگر شما دوست داشتن. 99 00:06:04,800 --> 00:06:11,490 کسانی که چالش های فنی اصلی خرید و فروش با مدل می باشد. 100 00:06:11,490 --> 00:06:15,680 اولین چیزی که شما به خواهید خود را بخواهید است 101 00:06:15,680 --> 00:06:18,420 چه نوع از اطلاعات می رود در این مدل و نوع نمایش داده شد می خواهیم می خواهیم انجام دهیم - 102 00:06:18,420 --> 00:06:24,290 است که، چگونه می خواهیم به در مدل نگاه می کنید؟ 103 00:06:24,290 --> 00:06:26,940 برای گربه خود را به عنوان مثال فیس بوک، 104 00:06:26,940 --> 00:06:31,520 پست خود را در حال رفتن به یک نویسنده در ارتباط با آن، 105 00:06:31,520 --> 00:06:35,660 متن دیوار نوشته، و دریافت کننده ارسال دیوار. 106 00:06:35,660 --> 00:06:38,470 و سپس شما ممکن است بخواهید به پرس و جو که در یک دسته از راه های مختلف. 107 00:06:38,470 --> 00:06:42,220 شما می خواهید به آن نگاه شده است که که پست نوشت، 108 00:06:42,220 --> 00:06:46,620 توسط که دریافت که در پست، شاید با تاریخ آنها شده بود. 109 00:06:46,620 --> 00:06:50,340 اما اگر شما قصد انجام این کار را بر اساس تاریخ، پس از آن شما باید برای اضافه کردن یکی دیگر از زمینه به پست شما 110 00:06:50,340 --> 00:06:52,490 از زمانی که آن را در واقع ارسال شده است. 111 00:06:52,490 --> 00:07:00,220 این 2 عامل - چه اطلاعات شما می خواهید استفاده کنید و چگونه می خواهید به مشاهده آن - 112 00:07:00,220 --> 00:07:04,200 شما باید به آنها برای اولین بار فکر می کنم چرا که آنها بر یکدیگر بستگی دارد، 113 00:07:04,200 --> 00:07:08,030 و آن را به سخت تر به آنها اضافه کنید بعد. 114 00:07:08,030 --> 00:07:12,750 >> برخی از ملاحظات دیگر وجود دارد. 115 00:07:12,750 --> 00:07:17,540 هنگامی که شما در حال فکر کردن در مورد چگونه شما را با مدل های بر روی سرور برخورد 116 00:07:17,540 --> 00:07:20,540 آنچه شما می خواهید به نگاه است - 117 00:07:20,540 --> 00:07:27,440 شما در واقع می خواهم سرور به عنوان ساده به عنوان امکان پذیر است. 118 00:07:29,440 --> 00:07:35,500 انجام مسائل در سمت سرویس گیرنده است به طور کلی بسیار سریعتر اگر شما می توانید آن را صرفا انجام بر روی سرویس گیرنده 119 00:07:35,500 --> 00:07:38,230 بدون انجام هر گونه درخواست شبکه. 120 00:07:38,230 --> 00:07:47,860 ایده این است که کار را به عنوان بسیاری از نمایش داده شد که شما می توانید بر روی سرویس گیرنده. 121 00:07:47,860 --> 00:07:51,560 تنها مشکل این است که با 122 00:07:51,560 --> 00:07:54,160 این است که اگر شما درخواست تمام اطلاعات خود را در آغاز 123 00:07:54,160 --> 00:07:57,160 پس از آن که رفتن را به مدت طولانی برای بارگذاری. 124 00:07:57,160 --> 00:08:02,290 بنابراین، ایده این است که برای حمله به یک رسانه شاد بین داشتن اطلاعات کافی در مشتری 125 00:08:02,290 --> 00:08:07,640 که شما می توانید بسیاری از کار خود را در آنجا انجام دهید، اما نه فقط آوردن همه چیز را در یک بار 126 00:08:07,640 --> 00:08:09,710 به طوری که شما بار بار خیلی آهسته در آغاز. 127 00:08:09,710 --> 00:08:12,610 به عنوان مثال، برای داده های گربه 128 00:08:12,610 --> 00:08:20,340 شما احتمالا می خواهید به بهانه یک دسته از پست وال اخیر. 129 00:08:20,340 --> 00:08:23,790 شما نمی توانید به بهانه همه آنها را به خاطر است که می تواند به عقب برگردد چند سال. 130 00:08:23,790 --> 00:08:25,470 اما شما نمی خواهید آنها را واکشی در یک زمان 131 00:08:25,470 --> 00:08:28,740 چرا که بسیاری از سربار شبکه را معرفی کند. 132 00:08:28,740 --> 00:08:33,620 >> این اغلب بسیار سخت است - هنگامی که شما یک پایگاه داده در حال اجرا - 133 00:08:33,620 --> 00:08:37,210 در آن اغلب بسیار سخت به تغییر داده های شما در آن را داشته باشد - 134 00:08:37,210 --> 00:08:40,510 که شده است، اضافه کردن یک ستون پایگاه داده جدید و یا چیزی - 135 00:08:40,510 --> 00:08:43,510 بنابراین یک استراتژی خوب است که در واقع فقط برای حفظ بسیاری از داده های خود را در یک لکه متن - 136 00:08:43,510 --> 00:08:53,880 قطره های JSON - JSON بودن جاوا اسکریپت نشانه گذاری شی - 137 00:08:53,880 --> 00:08:58,330 به این دلیل که مفید است چرا که پس از آن شما می توانید خواص جدید اضافه کنید 138 00:08:58,330 --> 00:09:01,920 به تمام این حباب JSON بدون تغییر بانک اطلاعاتی شما. 139 00:09:01,920 --> 00:09:06,860 حرکت نزولی، تنها به آن است که اگر شما یک دسته از رشته های 140 00:09:06,860 --> 00:09:09,890 که شما بعد اضافه شده است - مانند پنهان در آن لکه JSON - 141 00:09:09,890 --> 00:09:12,850 سپس آن را سخت تر آنها را پرس و جو در داخل پایگاه داده. 142 00:09:12,850 --> 00:09:17,690 به عنوان مثال، اگر شما بعد - اگر شما مدل پست شما بود که ما قبلا مورد بحث 143 00:09:17,690 --> 00:09:25,380 تنها با نویسنده، گیرنده و متن - 144 00:09:25,380 --> 00:09:29,000 شما همچنین می تواند قطره های JSON را داشته و پس از آن اگر شما بعد خواستم برای اضافه کردن یک فیلد تاریخ 145 00:09:29,000 --> 00:09:31,000 شما نمی خواهد که به تغییر بانک اطلاعاتی شما. 146 00:09:31,000 --> 00:09:36,140 شما فقط می تواند به تمام قسمت های متنی اضافه کردن تاریخ. 147 00:09:36,140 --> 00:09:39,640 و پس از آن شما قادر خواهد بود تا در آن در سمت سرویس گیرنده نگاه کنید، 148 00:09:39,640 --> 00:09:42,430 اما شما نمی قادر خواهد بود تا آنها را پرس و جو در سمت سرور 149 00:09:42,430 --> 00:09:44,430 چرا که در داخل آن متن پنهان است. 150 00:09:44,430 --> 00:09:49,920 >> مسئله دیگر این است که شما می خواهید در مورد فکر می کنم 151 00:09:49,920 --> 00:09:52,400 این است که چگونه مشتری شما و سرور های خود را در حال رفتن به ارتباط برقرار. 152 00:09:52,400 --> 00:09:56,040 شما معمولا می خواهند برای حفظ این عنوان ساده به عنوان امکان پذیر است. 153 00:09:56,040 --> 00:10:02,230 شما فقط می توانید مانند گرفتن، من، این درخواست داده اند، 154 00:10:02,230 --> 00:10:09,140 ایجاد یک جدید شی چیزی، و یک درخواست به روز رسانی-ساله شی. 155 00:10:09,140 --> 00:10:12,930 و این که همه آدرس ها مختلف در سرور است که شما - 156 00:10:12,930 --> 00:10:20,030 که مرورگر خواهد بود - شما می توانید درخواست های AJAX برای همه از این استفاده 157 00:10:20,030 --> 00:10:24,000 و یا دریافت و یا ارسال داده ها. 158 00:10:24,000 --> 00:10:26,600 باز هم، برای گربه ما به عنوان مثال فیس بوک، 159 00:10:26,600 --> 00:10:32,350 شما می توانید که URL باید برای گرفتن یک پست منحصر به فرد، 160 00:10:32,350 --> 00:10:39,750 و شما می خواهم یک URL برای ایجاد یک پست دیواری جدید 161 00:10:39,750 --> 00:10:45,670 و شاید یک URL برای آپلود عکس پروفایل، مسائل خود را مانند آن. 162 00:10:45,670 --> 00:10:51,730 اما باز هم، که به بسیاری از اطلاعات خود را قبل از فراخوانی به طوری که شما لازم نیست که برای حفظ 163 00:10:51,730 --> 00:10:53,360 ساخت درخواست های شبکه می باشد. 164 00:10:53,360 --> 00:10:59,030 به همین دلیل، شما ممکن است بخواهید که این درخواست GET فرد برای پست تنها، 165 00:10:59,030 --> 00:11:03,210 و به جای آن شما فقط می خواهید 1 درخواست GET را برای تمام دیوار. 166 00:11:03,210 --> 00:11:06,110 و پس از آن اگر شما در حال تلاش برای حمله به یک توازن دلیل - 167 00:11:06,110 --> 00:11:10,970 این نیز به رفتن به در مورد درخواست شما بستگی دارد. 168 00:11:10,970 --> 00:11:13,430 از آنجا که اگر شما در حال انتظار است که مردم تنها 10 یا 20 پست دیوار 169 00:11:13,430 --> 00:11:15,430 که خوب خواهد شد. 170 00:11:15,430 --> 00:11:17,390 اما اگر شما انتظار آنها هزاران باید پس از آن که درخواست می کنم بیش از حد طولانی، 171 00:11:17,390 --> 00:11:23,580 و بنابراین شما ممکن است بخواهید برای اضافه کردن یک پارامتر دریافت همه پست ها از سال. 172 00:11:23,580 --> 00:11:26,580 >> برای همه این که شما احتمالا می خواهید همگام داده های خود را در JSON - 173 00:11:26,580 --> 00:11:29,260 جاوا اسکریپت نشانه گذاری شی. 174 00:11:29,260 --> 00:11:34,600 تقریبا هر زبان با JSON به خوبی می پردازد. 175 00:11:34,600 --> 00:11:40,880 JQuery و دارای این تابع getJSON خوب است که همه از کار سخت را برای شما انجام دهد. 176 00:11:40,880 --> 00:11:47,390 و در PHP نیز توابع ارتباط JSON بسیار زیبا وجود دارد. 177 00:11:47,390 --> 00:11:52,660 بنابراین، که بهترین فرمت برای ارسال مدل های خود را به جلو و عقب احتمالا. 178 00:11:52,660 --> 00:11:56,570 >> به عنوان مثال از آنچه که ما در مورد تا کنون صحبت کرده ام، 179 00:11:56,570 --> 00:12:00,520 در اینجا جریان به عنوان مثال برای کاربرد فیس بوک گربه شما. 180 00:12:00,520 --> 00:12:07,760 این شروع می شود بازی با مرورگر خود درخواست URL وب سایت پایه. 181 00:12:07,760 --> 00:12:15,470 سرور احتمالا بیش از HTML استاتیک و برخی از جاوا اسکریپت و CSS ارسال کنید. 182 00:12:15,470 --> 00:12:19,170 معمولا بهتر است برای انجام هر گونه ارائه بر روی سرور نیست. 183 00:12:19,170 --> 00:12:23,370 شما احتمالا نمی خواهید - 184 00:12:23,370 --> 00:12:28,360 آنچه که سرور در حال انجام وجود دارد این است که با رفتن به پایین لیستی از پست وال 185 00:12:28,360 --> 00:12:31,120 و تولید برخی از HTML برای هر یک و ارسال است که بیش از. 186 00:12:31,120 --> 00:12:34,960 معمولا بهتر است برای انجام این کار در سمت سرویس گیرنده، زیرا در غیر این صورت 187 00:12:34,960 --> 00:12:38,580 هر زمان که شما می خواهید به دوباره کشیدن چیزی، شما را به یک درخواست سرور. 188 00:12:38,580 --> 00:12:42,450 و این به سرعت به شما می دهد مقدار زیادی از بالای سر. 189 00:12:42,450 --> 00:12:47,430 معمولا بهترین آن را فقط به کشتی می فرستد پایین شخص HTML 190 00:12:47,430 --> 00:12:50,660 و سپس جاوا اسکریپت و CSS است که رندر در سمت سرویس گیرنده انجام دهد. 191 00:12:50,660 --> 00:12:56,750 به محض این که مسائل می آید در، 192 00:12:56,750 --> 00:13:03,500 پس از آن شما می توانید - در جاوا اسکریپت - شما می توانید درخواست ها برای داده های دیوار انجام 193 00:13:03,500 --> 00:13:08,740 و چیزهای مانند آن، و پس از آن سرور است که اساسا فقط انجام نمایش داده شد پایگاه داده 194 00:13:08,740 --> 00:13:10,740 و چک کردن مجوز. 195 00:13:10,740 --> 00:13:16,690 تنها چیزی که مهم است که آن را می توانید برخی از کاربران دیگر پست وال ندارد ارسال بیش از 196 00:13:16,690 --> 00:13:19,220 که شما مجاز به دیدن. 197 00:13:19,220 --> 00:13:28,050 این اساسا می توانید یک لایه دسترسی بسیار نازک به پایگاه داده خود را داشته باشد، 198 00:13:28,050 --> 00:13:32,820 و سپس همه را نشان داده - همه دیدگاه ها و مسائل - 199 00:13:32,820 --> 00:13:37,280 آن می تواند در مرورگر شما رخ می دهد، و سپس وقتی که شما می خواهید را به یک پست یا چیزی 200 00:13:37,280 --> 00:13:40,000 شما فقط درخواست دیگر ارسال کند. 201 00:13:40,000 --> 00:13:45,350 >> همچنین برخی چیزهای فانتزی شما می توانید در بالای این کار وجود دارد. 202 00:13:45,350 --> 00:13:49,550 از لحاظ اطلاعات فنی خاص تر، 203 00:13:49,550 --> 00:13:53,360 در حال توسعه در ساده جاوا اسکریپت می تواند یک کمی دردناک است، 204 00:13:53,360 --> 00:13:56,220 بنابراین برخی از کتابخانه ها و ابزار است که به شما مقدار زیادی با آن کمک کند وجود دارد. 205 00:13:56,220 --> 00:14:03,690 من فکر می کنم شما تمام احتمالا در مورد jQuery را شنیده که باعث می شود انجام رندر HTML 206 00:14:03,690 --> 00:14:08,890 و دستکاری خیلی آسان تر - دارای تعداد زیادی از توابع فانتزی برای محو شدن در داخل و خارج، 207 00:14:08,890 --> 00:14:12,020 و انجام انیمیشن های پر از وزوز. 208 00:14:12,020 --> 00:14:13,720 همچنین این کتابخانه به نام Underscore.js وجود دارد. 209 00:14:13,720 --> 00:14:20,760 از آن است که بسیاری از توابع ابزار مفید، مطالبی که شما انتظار می رود جاوا اسکریپت به 210 00:14:20,760 --> 00:14:24,740 که آن را واقعا ندیده - چیزهایی مانند زدن یک آرایه، 211 00:14:24,740 --> 00:14:28,900 حذف موارد تکراری از یک لیست و یا پهن کردن یک لیست از لیست. 212 00:14:28,900 --> 00:14:30,900 این فقط یک نمونه کد کوچک است. 213 00:14:30,900 --> 00:14:36,520 تاکید یک تن از این توابع خوب است که شما می خواهید شما را در همه زمان ها است. 214 00:14:36,520 --> 00:14:38,840 >> و پس از آن 1 کتابخانه بیشتر است که من می خواهم به صرف کمی زمان بر وجود دارد 215 00:14:38,840 --> 00:14:44,800 نام Backbone.js چون ستون فقرات واقعا به شما کمک میکند با مدل های در سمت سرویس گیرنده مقابله 216 00:14:44,800 --> 00:14:47,210 و بسیاری از سردرگمی که می تواند ایجاد کند. 217 00:14:47,210 --> 00:14:53,550 ستون فقرات به شما می دهد این مفهوم از مدل ها و مجموعه ها 218 00:14:53,550 --> 00:14:58,300 در جاوا اسکریپت که در واقع دقیقا مانند اشیاء جاوا اسکریپت 219 00:14:58,300 --> 00:15:04,900 در آرایه های جاوا اسکریپت اما آنها رویدادی زمانی که شما در خواص آنها تغییر دهید. 220 00:15:04,900 --> 00:15:09,090 درست مانند جاوا اسکریپت، شما می توانید یک رویداد هنگامی که یک دکمه کلیک می شود و یا چیزی 221 00:15:09,090 --> 00:15:14,800 این مدل ستون فقرات و مجموعه ستون فقرات خواهد چیزهایی مانند پخش 222 00:15:14,800 --> 00:15:17,510 که زمانی که آنها را تغییر دهید. 223 00:15:17,510 --> 00:15:22,270 این بدان معنی است که شما فقط می توانید چیزی شبیه به این قطعه از کد ارسال در اینجا - 224 00:15:22,270 --> 00:15:27,530 این می گوید، هر زمان که شما هر چیزی اضافه کردن به آرایه پست شما به کل دیوار از نو ترسیم. 225 00:15:27,530 --> 00:15:34,270 و این می گویند هر زمان که تعداد پست از دوست داشتن تغییر، 226 00:15:34,270 --> 00:15:38,970 شما کاربر که کسی پست های خود را دوست داشت خبر می سازیم. 227 00:15:38,970 --> 00:15:45,210 و یا هر زمان که هر خاصیت یک نوشته را تغییر شما پس از نو ترسیم. 228 00:15:45,210 --> 00:15:51,050 چیزهای مانند است که شما تن از پیچیدگی چرا که در غیر این صورت ذخیره کنید 229 00:15:51,050 --> 00:15:55,440 اگر شما در انجام این چارچوب شبیه به این در هر زمان در کد خود را که تغییر شما ندارد 230 00:15:55,440 --> 00:16:04,280 هر چیزی در مورد پست، شما می خواهم که به خودتان یاد داشته باشید به تماس تمام توابع ارائه 231 00:16:04,280 --> 00:16:07,680 و چیزهای مانند آن، و اگر شما می خواهید برای اضافه کردن چیزی جدید است که اتفاق افتاده است 232 00:16:07,680 --> 00:16:10,680 هر بار که شما یک نوشته را تغییر شما می خواهم که از طریق هر محل در خود را به 233 00:16:10,680 --> 00:16:14,610 کدی که شما یک پست تغییر و اضافه کردن که چیز جدید است. 234 00:16:14,610 --> 00:16:21,450 چارچوب شبیه به این خواهد شد بسیاری از است که ارتباط بین لایه حذف 235 00:16:21,450 --> 00:16:28,280 که باعث می شود کد شما پیچیده و سخت برای حفظ. 236 00:16:28,280 --> 00:16:31,170 >> کمی در مورد نمایش نیز وجود دارد. 237 00:16:31,170 --> 00:16:35,960 من قصد دارم به ترک بیشتر از این به بیلی چرا که آنها از لحاظ فنی است بسیار دشوار است. 238 00:16:35,960 --> 00:16:43,540 استفاده از jQuery برای نمایش خود را. این عملا مانند یک ضرورت در این نقطه است. 239 00:16:43,540 --> 00:16:46,290 این فقط باعث می شود همه چیز را بسیار ساده تر. 240 00:16:46,290 --> 00:16:48,290 هستند بسیاری از کتابخانه ها وجود دارد. 241 00:16:48,290 --> 00:16:49,970 اگر عناصر رابط کاربر پیچیده تر کرده است، 242 00:16:49,970 --> 00:16:57,250 اگر شما می خواهید چیزی اتوماتیک کامل و یا دوست یکی از کسانی که علاقه داشتن چند انتخاب - 243 00:16:57,250 --> 00:17:04,790 اگر شما می خواهید هر چیزی مانند آن، شما احتمالا باید فقط به جستجو در اطراف 244 00:17:04,790 --> 00:17:08,130 و شما می توانید یک کتابخانه خوب است که انجام خواهد داد آنچه شما می خواهید پیدا کنید. 245 00:17:08,130 --> 00:17:11,579 بیلی خواهد بیشتر در مورد قطعات در واقع مشکل از نمایش را توضیح دهد. 246 00:17:11,579 --> 00:17:17,530 همچنین، به عنوان یک نکته ی جانبی، ستون فقرات تا به برخی از قابلیت های برای ساخت نمایش ارتباط برقرار 247 00:17:17,530 --> 00:17:22,800 به خوبی با مدل - نگاهی به اسناد و مدارک برای همه از این کتابخانه، در واقع. 248 00:17:22,800 --> 00:17:28,270 فقط به اسناد نگاه کنید. آنها به خوبی نوشته شده است و آسان است. 249 00:17:28,270 --> 00:17:33,890 به طور کلی، شما می توانید تقریبا فقط گوگل اگر شما مشکلات را داشته باشد. 250 00:17:33,890 --> 00:17:36,370 هستند بسیاری از مردم با استفاده از آنها وجود دارد. 251 00:17:36,370 --> 00:17:42,020 من فکر می کنم این است که به عنوان نکته آخر. 252 00:17:42,020 --> 00:17:48,770 >> همچنین برخی از چیزهایی که پیشرفته تر است که شما می توانید انجام دهید 253 00:17:48,770 --> 00:17:53,400 اگر شما به دنبال به برنامه وب خود را فوق العاده عالی. 254 00:17:53,400 --> 00:17:59,760 شما می توانید انجام دهید - مشخصات جدید HTML5 است بسیاری از مسائل را فانتزی می توانید انجام دهید. 255 00:17:59,760 --> 00:18:05,780 ذخیره سازی محلی - است که شما می توانید داده ها را در مرورگر ذخیره - 256 00:18:05,780 --> 00:18:09,470 به جای اینکه برای رفتن به عقب و مطالعه کردن سرور برای همه چیز، 257 00:18:09,470 --> 00:18:12,470 شما می توانید مقداری از آن را بر روی سرویس گیرنده را نگه دارید و حتی اجازه می دهد مردم - 258 00:18:12,470 --> 00:18:20,850 در برخی موارد حتی می تواند به شما اجازه استفاده از آنلاین صفحه وب. 259 00:18:20,850 --> 00:18:26,980 است این چیزی به نام websockets که یک نوع متفاوت از شبکه های ارتباطی وجود دارد 260 00:18:26,980 --> 00:18:30,930 که در آن به جای فقط شما یک درخواست، شما پاسخ دریافت کنید و شما انجام می شود، 261 00:18:30,930 --> 00:18:35,240 شما در حفظ و باز کردن یک اتصال به سرور و بنابراین شما می توانید چیزهایی مانند انجام 262 00:18:35,240 --> 00:18:37,240 به روز رسانی در زمان واقعی. 263 00:18:37,240 --> 00:18:42,020 بنابراین، اگر شما در تلاش برای ایجاد یک برنامه چت، شما می توانید websockets استفاده 264 00:18:42,020 --> 00:18:43,790 برای برقراری ارتباط به جلو و عقب به طوری که شما نمی خواهد که برای حفظ درخواست، 265 00:18:43,790 --> 00:18:48,410 "اوه، سرور، آیا کسی با من چت ارسال کنم؟" هر 10 ثانیه و یا چیزی. 266 00:18:48,410 --> 00:18:55,620 همچنین یک ویژگی HTML5 جالب که در آن شما می توانید آن را مانند نگاه 267 00:18:55,620 --> 00:18:58,340 URL صفحه در حال تغییر است تا کنون که بدون نیاز به واقع آن را دوباره بارگذاری. 268 00:18:58,340 --> 00:19:03,230 شما می توانید به استفاده و رو به جلو دکمه بدون انجام یک دسته از درخواست شبکه می باشد. 269 00:19:03,230 --> 00:19:14,660 چیزهای مانند است که واقعا در شرایط و آن را سریع مفید است بلکه کار مانند یک برنامه کاربردی وب باید. 270 00:19:14,660 --> 00:19:17,680 >> همچنین این چیزی به نام CoffeeScript وجود دارد. 271 00:19:17,680 --> 00:19:24,450 CoffeeScript یک زبان متفاوت است، در واقع، که کامپایل کردن به جاوا اسکریپت. 272 00:19:24,450 --> 00:19:30,080 شما می توانید تمام کد خود را در CoffeeScript ارسال، و سپس این کامپایلر اجرا می کنید، 273 00:19:30,080 --> 00:19:33,300 و آن را تف کردن یک فایل جاوا اسکریپت که شما می توانید در صفحه وب خود را شامل. 274 00:19:33,300 --> 00:19:38,860 به این دلیل که CoffeeScript خوب است به دلیل آن را می شود از بسیاری از خلاص شدن از شر 275 00:19:38,860 --> 00:19:44,760 مورد عجیب و غریب که جاوا اسکریپت است که در آن برابر برابر، 276 00:19:44,760 --> 00:19:51,130 و برابر با برابر انجام کارهای مختلف، و یا دوست - 277 00:19:51,130 --> 00:19:55,740 آن را تا به نحو بهتری برای برخورد با آرایه ها و توابع. 278 00:19:55,740 --> 00:20:00,460 این قطعه کمی از CoffeeScript است که یک لیست از تمام مربع است 279 00:20:00,460 --> 00:20:04,900 از 10 ^ 2 به 1 ^ 2 در جهت معکوس. 280 00:20:04,900 --> 00:20:08,410 همانطور که می بینید، CoffeeScript اغلب شما اجازه می دهد در 1 خط بیان 281 00:20:08,410 --> 00:20:10,890 چه چیزی 5 خط جاوا اسکریپت را. 282 00:20:10,890 --> 00:20:13,230 این می تواند کارها را بسیار آسان تر. 283 00:20:13,230 --> 00:20:15,390 این یک کمی از نحو جدید برای یادگیری در ابتدا، 284 00:20:15,390 --> 00:20:18,010 اما قطعا شما را در دراز مدت سازنده تر خواهد شد. 285 00:20:18,010 --> 00:20:22,050 >> شما همچنین می توانید زبان های دیگر بر روی سرور از PHP استفاده - 286 00:20:22,050 --> 00:20:27,570 زبان مانند روبی، پایتون، و یا حتی یک پروژه به نام node.js وجود دارد 287 00:20:27,570 --> 00:20:31,450 که به شما اجازه استفاده از جاوا اسکریپت بر روی سرور. 288 00:20:31,450 --> 00:20:34,700 شخصا، من واقعا، واقعا نفرت PHP. 289 00:20:34,700 --> 00:20:38,310 من فقط کار با آن لذت ببرید نیست. 290 00:20:38,310 --> 00:20:43,450 اگر شما هم فکر می کنم که این یک cluge افتضاح از یک زبان است، 291 00:20:43,450 --> 00:20:46,160 پس از آن شما می توانید یکی از این استفاده کنید. 292 00:20:46,160 --> 00:20:54,780 به طور کلی، اگر شما می خواهید برای انجام کاری و شما واقعا نمی دانید که چگونه شما می توانید آن را انجام دهد، 293 00:20:54,780 --> 00:20:56,780 فقط جستجو در اینترنت می باشد. 294 00:20:56,780 --> 00:20:59,990 تن و تن از منابع به خصوص در وجود دارد - 295 00:20:59,990 --> 00:21:03,260 StackOverflow یکی از بزرگ است. 296 00:21:03,260 --> 00:21:06,400 این وب سایت که در آن برنامه نویسان هر سوال دیگری بپرسم. 297 00:21:06,400 --> 00:21:09,690 شما ممکن است به آن را اجرا کنید اگر شما با داشتن مشکلاتی در مجموعه مسائل CS50 شد. 298 00:21:09,690 --> 00:21:16,820 و تن از کتابخانه برای انجام تقریبا هر چیزی که شما می خواهید وجود دارد. 299 00:21:16,820 --> 00:21:21,710 اگر شما می خواهید برای انجام کاری است و شما نمی دانید که چگونه به آن را انجام دهد، 300 00:21:21,710 --> 00:21:23,710 فکر نمی کنیم که این غیر ممکن است. 301 00:21:23,710 --> 00:21:26,160 فقط در اطراف نگاه کنید و شما ممکن است برخی از منابع خوب پیدا کنید. 302 00:21:26,160 --> 00:21:29,280 >> به عنوان یک به طور کلی به نتیجه رسیدن، 303 00:21:29,280 --> 00:21:33,650 takeaways اصلی عبارتند از نگه داشتن چیزهای ساده است. 304 00:21:33,650 --> 00:21:36,010 پیچیده تر کد شما در ابتدا 305 00:21:36,010 --> 00:21:40,370 و بیشتر شما سعی می کنید و انجام مسائل فانتزی، 306 00:21:40,370 --> 00:21:43,300 دیگر آن را به چیزی که در واقع عملکردی 307 00:21:43,300 --> 00:21:46,480 و سخت تر از آن خواهد بود را تغییر دهید بعد. 308 00:21:46,480 --> 00:21:49,580 بنابراین، اولین انجام کارهای گنگ، راه آسان است. 309 00:21:49,580 --> 00:21:51,720 به همراه آن، 310 00:21:51,720 --> 00:21:59,070 نترس از دور انداختن کد قدیمی و یا تمیز کردن آن را تا مقدار زیادی. 311 00:21:59,070 --> 00:22:05,320 به طور کلی، هنگامی که شما در واقع چیزی کار کرده، 312 00:22:05,320 --> 00:22:09,640 آن را بسیار آسان تر در مورد فکر می کنم از زمانی که شما هنوز در مراحل آغاز کنید 313 00:22:09,640 --> 00:22:12,610 چگونه می توانم این را همه با هم. 314 00:22:12,610 --> 00:22:17,500 بهتر است به طراحی احمق ترین ممکن است که کار می کند 315 00:22:17,500 --> 00:22:22,270 و سپس آن را تکرار از تلاش برای بدست آوردن همه چیز را حق اولین بار بهبود بخشد. 316 00:22:22,270 --> 00:22:28,330 از نظر تقسیم بندی سرویس گیرنده و سرور، سعی کنید و نگه داشتن سرور شما بسیار ساده است - 317 00:22:28,330 --> 00:22:33,030 فقط به یک پایگاه داده و برخی از احراز هویت و انجام هر گونه کار سخت را انجام نمی وجود دارد. 318 00:22:33,030 --> 00:22:37,540 آیا همه از مسائل پیچیده خود را در سمت سرویس گیرنده در مرورگر 319 00:22:37,540 --> 00:22:40,650 در جاوا اسکریپت به عنوان آنجا که می توانید. 320 00:22:40,650 --> 00:22:43,420 به اطراف نگاه کنید برای کتابخانه ها است که زندگی خود را بهتر. 321 00:22:43,420 --> 00:22:46,850 همیشه بهتر است برای استفاده از کد که شخص دیگری نوشت 322 00:22:46,850 --> 00:22:49,850 اگر شما - و نه آن را خودتان تولید کنید. 323 00:22:49,850 --> 00:22:57,560 در بسیاری از مسائل در اینترنت وجود دارد. گوگل بهترین دوست شما است. 324 00:22:57,560 --> 00:22:59,560 گوگل بهترین دوست برنامه نویس است. 325 00:22:59,560 --> 00:23:07,620 بله، قطعا نترس به اطراف نگاه برای مسائل. 326 00:23:07,620 --> 00:23:11,860 بسیار خوب. و به بیلی. 327 00:23:11,860 --> 00:23:14,600 >> [بیلی] در واقع، قبل از من با برخی از مسائل طراحی شروع، 328 00:23:14,600 --> 00:23:17,250 آیا هر کسی هر گونه سوال برای بن در مورد هر چیزی که او در مورد صحبت کردیم؟ 329 00:23:17,250 --> 00:23:20,290 خوب، خوب است. 330 00:23:20,290 --> 00:23:22,220 باز هم، به ما اطلاع دهید اگر هر چیزی مشخص نیست 331 00:23:22,220 --> 00:23:25,420 و یا اگر شما می خواهم ما را به بیش از چیزی کمی بیشتر بروید. 332 00:23:25,420 --> 00:23:30,330 من قصد دارم قدم به عقب کمی و بحث در مورد قسمت های اساسی تر از طراحی. 333 00:23:30,330 --> 00:23:34,840 با عرض پوزش، مدل سیستم مشاهده کنترل - بن مدل به نام های ذکر شده 334 00:23:34,840 --> 00:23:38,520 که به نوعی از جنبه های فنی است، بنابراین من قصد دارم در نمایش نگاه کنید به طور خاص، 335 00:23:38,520 --> 00:23:42,930 و من قصد دارم با شما می خواهم طراحی که به نظر می رسد به خوبی شروع می شود. 336 00:23:42,930 --> 00:23:50,540 در اینجا نوع یک قالب بسیار ساده برای گربه ما فیس بوک است. 337 00:23:50,540 --> 00:23:54,190 من فکر می کنم برخی از اصول در طراحی UI مدرن وجود دارد 338 00:23:54,190 --> 00:23:56,190 که ارزش جمع کردن می باشد. 339 00:23:56,190 --> 00:23:58,210 شما می توانید متوجه زیادی از فضای سفید بیش از همه در صفحه وجود دارد، 340 00:23:58,210 --> 00:24:00,790 مقدار زیادی از اتاق را برای همه چیز. 341 00:24:00,790 --> 00:24:02,580 آیا احساس شما را مجبور به کوبیدن و همه چیز را در یک صفحه. 342 00:24:02,580 --> 00:24:06,700 شما می خواهید به ترک مقدار زیادی از اتاق را باز، و اگر شما به هر وب سایت های مدرن بروید 343 00:24:06,700 --> 00:24:08,380 شما خواهید دید که در همه جا سفید وجود دارد. 344 00:24:08,380 --> 00:24:10,380 سفید در مکان شما انتظار می رود وجود دارد. 345 00:24:10,380 --> 00:24:14,570 شما باید این پالت رنگ، و آن را عاقلانه است در آغاز 346 00:24:14,570 --> 00:24:17,880 برای انتخاب یک پالت رنگ است که شما قصد به کار با و توسعه. 347 00:24:17,880 --> 00:24:22,250 شما همچنین می - کمک می کند به انتخاب فونت و متن و به این ترتیب شما در حال مرتب کردن بر اساس کار با 348 00:24:22,250 --> 00:24:24,450 این اصول بتن طراحی. 349 00:24:24,450 --> 00:24:26,910 شما نوع خود را داشته باشد، شما باید رنگ خود را، و پس از آن شما می توانید نوع 350 00:24:26,910 --> 00:24:29,380 مناسب هر چیز دیگری در صورت نیاز. 351 00:24:29,380 --> 00:24:37,710 بنابراین، همانطور که گفتم، با طرح رنگ شما می خواهید به استفاده از رنگ های جسورانه از رنگ خود را 352 00:24:37,710 --> 00:24:40,320 نکنید. عناوین خوب هستند. دکمه ها خوب به واقعا بزرگ، رنگ زرق و برق دار می باشد. 353 00:24:40,320 --> 00:24:43,710 اما به طور کلی، اگر شما یک وب سایت است که رنگ ها در همه جا، 354 00:24:43,710 --> 00:24:47,250 همه شما خیره در صورت، آن را فقط به نظر می رسد به هم ریخته، و آن را خوب. 355 00:24:47,250 --> 00:24:50,430 شما می خواهید به طور کلی استفاده از رنگ های نور است. 356 00:24:50,430 --> 00:24:52,890 سعی کنید، باز هم، انتخاب یک طرح رنگ بسیار منسجم. 357 00:24:52,890 --> 00:24:56,640 شما می توانید این پاشیده کمی از بسیاری از رنگ - 358 00:24:56,640 --> 00:25:00,240 است که می تواند نگاه زیبا خوب است، اما شما می خواهید به استفاده از آنها بسیار صرفهجویی مصرف. 359 00:25:00,240 --> 00:25:04,270 >> همانطور که گفتم، شما می خواهید به حداقل. کمتر است، تقریبا همیشه بیشتر. 360 00:25:04,270 --> 00:25:07,430 اگر شما می توانید چیزی نمایش داده یا نه نشان دادن چیزی، 361 00:25:07,430 --> 00:25:10,230 و شما نوع مطمئن نیستید که آیا باید آن وجود دارد به طور پیش فرض است - 362 00:25:10,230 --> 00:25:13,400 احتمالا شما بهتر است ترک آن را دارید. شما همیشه می توانید آن را در بعد اضافه کنید. 363 00:25:13,400 --> 00:25:16,620 آره، ساده نگه داشتن همه چیز. 364 00:25:16,620 --> 00:25:19,510 اما مهمتر از همه، شما می خواهید در نظر گرفتن طرح های متعدد. 365 00:25:19,510 --> 00:25:23,520 فکر نمی کنم که زمانی که شما یک سایت، شما آن را در سر شما است که شما قصد به 366 00:25:23,520 --> 00:25:26,310 ایجاد سایت در یک روش خاص، و آن را به نگاه دقیقا مانند این. 367 00:25:26,310 --> 00:25:29,830 آن را به هدر آبی در بالا و نوار سمت آبی 368 00:25:29,830 --> 00:25:32,670 و پس از آن زرد چیزی زیر هدر. 369 00:25:32,670 --> 00:25:34,670 شما می خواهید را به قالب های مختلف. 370 00:25:34,670 --> 00:25:37,350 شما می توانید هر دو - اگر شما خوب با عکس فروشگاه، شما می توانید تا باز که و نوع 371 00:25:37,350 --> 00:25:39,600 طراحی یک وب سایت به عنوان دوست دارید آن را به نگاه. 372 00:25:39,600 --> 00:25:41,680 اگر نه، شما فقط می توانید استفاده از قلم و کاغذ، 373 00:25:41,680 --> 00:25:44,000 اما خراش تا طرح های مختلف. 374 00:25:44,000 --> 00:25:47,000 شما می خواهید برای اساسا یک راه اندازی که در آن شما تعداد زیادی از طرح های مختلف، 375 00:25:47,000 --> 00:25:50,810 و اگر به پایان می رسد کار، پس از آن فوق العاده است. 376 00:25:50,810 --> 00:25:53,370 اگر پایان می رسد تا شکست، پس شما همیشه یک دیگر به نوبه خود داشته باشند. 377 00:25:53,370 --> 00:25:57,960 به طور کلی، احساس نمی مانند شما باید محدود 378 00:25:57,960 --> 00:26:00,830 به هر طرح در آغاز شما را در تصمیم گیری. 379 00:26:00,830 --> 00:26:04,420 طراحی بسیار متغیر هستند و بخشی از اهمیت مدل 380 00:26:04,420 --> 00:26:09,480 مشخصات کنترل سیستم این است که شما در داخل و خارج می تواند مبادله دیدگاه های مختلف شما می خواهید. 381 00:26:09,480 --> 00:26:13,510 شما می توانید داده های نوسان یکی از راه، و سپس تصمیم می گیرید، آه، در واقع، این به آن که به خوبی کار نمی کند. 382 00:26:13,510 --> 00:26:19,190 من فکر می کنم این نوع بیش از حد پیچیده و یا یک بخش در اینجا است که واقعا کار نمی کند وجود دارد، 383 00:26:19,190 --> 00:26:22,150 بنابراین من فقط رفتن این دیدگاه و مبادله در یک کاملا جدید به طور کامل رها. 384 00:26:22,150 --> 00:26:24,790 ما هنوز هم می تواند با استفاده از مدل های قدیمی و کنترل های قدیمی. 385 00:26:24,790 --> 00:26:27,490 ما می توانیم همه چیز را بر روی سرور و کلاینت که ما را قبل از انجام. 386 00:26:27,490 --> 00:26:32,850 اما موج واقعی از داده ها به عنوان نمایش داده می شود برای رفتن به کمی متفاوت است. 387 00:26:32,850 --> 00:26:35,840 >> تا آنجا که در واقع پیاده سازی طراحی شما می خواهید، 388 00:26:35,840 --> 00:26:39,330 هنگامی که شما چند طرح بر روی کاغذ و یا در عکس فروشگاه یا هر طرح، 389 00:26:39,330 --> 00:26:42,120 تعدادی از ابزار است که به شما در دسترس ساخته شده است وجود دارد. 390 00:26:42,120 --> 00:26:45,700 اول شما بسیار آشنا که با آن هستید HTML شما، PHP، یا هر چیز دیگری است 391 00:26:45,700 --> 00:26:48,990 زبان شما با استفاده از فقط به کد صفحات استاتیک در وب سایت شما. 392 00:26:48,990 --> 00:26:51,990 شما با HTML که به نوعی به شما می دهد این برچسب ها به مقدار زیادی کار کرده ام 393 00:26:51,990 --> 00:26:57,820 که شما می توانید همه چیز را قرار داده، و اساسا آن را به یک روش سازماندهی مطالب خود را است. 394 00:26:57,820 --> 00:27:00,990 به عنوان مثال، شما باید هدر وجود دارد، بنابراین شما به یک تگ هدر، 395 00:27:00,990 --> 00:27:05,770 و آن را به برخی از متن در داخل از آن است که احتمالا به تگ دیگری باشد. 396 00:27:05,770 --> 00:27:08,380 سپس شما یک نوار کناری شاید با برخی از لینک های مختلف، 397 00:27:08,380 --> 00:27:10,160 و کسانی که در حال رفتن به همه در تگ های جداگانه باشد. 398 00:27:10,160 --> 00:27:13,870 بنابراین، اساسا HTML در قلب آن راه تقسیم کردن صفحه است که چگونه 399 00:27:13,870 --> 00:27:16,980 در نهایت شما می خواهید آن را فرمت کنید. 400 00:27:16,980 --> 00:27:18,980 پس باز هم، شما را دیده ام که قبل از. 401 00:27:18,980 --> 00:27:20,540 شما خیلی راحت با کار کردن با آن در حال حاضر به 402 00:27:20,540 --> 00:27:23,120 با توجه به اینکه شما آخرین pset انجام داده ام امیدوارم، 403 00:27:23,120 --> 00:27:26,150 به طوری که باید بدون مشکل. 404 00:27:26,150 --> 00:27:31,280 >> سپس شما باید CSS که اساسا تمام دسته از طراحی جنبه های استاتیک می باشد. 405 00:27:31,280 --> 00:27:35,320 این همه رنگ، همه از موقعیت عناصر مختلف اداره کند، 406 00:27:35,320 --> 00:27:36,840 جایی که آنها با توجه به یکی دیگر بروید، 407 00:27:36,840 --> 00:27:41,530 چقدر بزرگ هستند، انواع مختلف positionings که شما را مجبور - 408 00:27:41,530 --> 00:27:46,030 به عبارت دیگر، شما می توانید همه چیز ثابت به طوری که زمانی که شما در پایین حرکت آنها باقی بماند، 409 00:27:46,030 --> 00:27:48,700 یا شما می توانید همه چیز نسبت به عناصر دیگر داشته باشد. 410 00:27:48,700 --> 00:27:50,730 همه از این نوع از مسائل در CSS است. 411 00:27:50,730 --> 00:27:54,630 علاوه بر این، شما می توانید دکوراسیون های مختلف کار، شما می توانید رنگ متن داشته باشد، 412 00:27:54,630 --> 00:27:56,630 اثرات متن، همه این نوع از مسائل. 413 00:27:56,630 --> 00:28:00,360 بن به یک سمینار واقعا خوب در این آخر هفته گذشته، 414 00:28:00,360 --> 00:28:04,450 و من قطعا بررسی کنید که اگر شما قصد دارید به انجام برخی از چیزهایی فانتزی با CSS. 415 00:28:04,450 --> 00:28:09,850 CSS3 است که در واقع جدیدترین نسخه از CSS، و می تواند تمام انواع چیزهای واقعا خوب انجام دهد. 416 00:28:09,850 --> 00:28:14,750 این می تواند شیب انجام دهید، شما می توانید زیبا، گوشه های گرد داشته باشند، شما می توانید تمام انواع چیزهای انجام 417 00:28:14,750 --> 00:28:17,940 به وب سایت خود را به نگاه مدرن تر و فانتزی. 418 00:28:17,940 --> 00:28:22,150 >> ابزار بعدی جاوا اسکریپت و jQuery که بن صحبت کردیم کمی در مورد است، 419 00:28:22,150 --> 00:28:24,150 اما من کمی دورتر را دریافت کنید. 420 00:28:24,150 --> 00:28:28,100 جاوا اسکریپت، که شما با آن در سخنرانی کار کرده ام کمی، و یا حداقل دیده آن، 421 00:28:28,100 --> 00:28:31,870 نوع راه به صورت پویا انجام مسائل در HTML. 422 00:28:31,870 --> 00:28:35,950 HTML، همانطور که می دانید، استاتیک می باشد، به طوری که هنگامی که شما HTML شما می توانید آن را تغییر دهید. 423 00:28:35,950 --> 00:28:40,050 اما جاوا اسکریپت، در برخی از راه، راهی که قادر به تغییر HTML است. 424 00:28:40,050 --> 00:28:44,520 بنابراین شما می توانید انجام این کار، و این عالی است، اما جاوا اسکریپت واقعا درد برای کار با. 425 00:28:44,520 --> 00:28:49,050 این خیلی طولانی و مبهم باشد و برای انجام این کار حتی ساده ترین چیز 426 00:28:49,050 --> 00:28:51,630 نیاز به تعداد زیادی از خطوط جاوا اسکریپت. 427 00:28:51,630 --> 00:28:55,410 بنابراین، از jQuery در واقع یک کتابخانه جاوا اسکریپت است که ساده همه از آن. 428 00:28:55,410 --> 00:28:59,880 این گزارش می گوید، خوب، اگر شما می خواهید به یک جعبه مربع از سمت چپ آمده 429 00:28:59,880 --> 00:29:03,980 و محو شدن به صفحه به طوری که آن را در وسط است، در جاوا اسکریپت است که می کنند - 430 00:29:03,980 --> 00:29:06,340 من نمی دانم، صد خط را انجام دهید، و این امر می تواند درد، 431 00:29:06,340 --> 00:29:10,540 و شما از آن نفرت همه چیز در مورد برنامه نویسی تحت وب است. 432 00:29:10,540 --> 00:29:15,380 JQuery و شما اساسا عنصر، نقطه محو شدن در، و یا چیزی شبیه به آن داشته باشد. 433 00:29:15,380 --> 00:29:18,580 توابع بنابراین، بسیار، بسیار ساده است که به شما اجازه انجام انواع انیمیشن های سرد 434 00:29:18,580 --> 00:29:20,580 و این نوع از چیزی. 435 00:29:20,580 --> 00:29:23,300 چیز دیگری که این 2 واقعا خوبی برای این است که فقط انجام کارهایی پویا 436 00:29:23,300 --> 00:29:25,300 با وب سایت. 437 00:29:25,300 --> 00:29:28,370 بنابراین، نه تنها با داشتن صفحه HTML خود را - که نمایش داده، اما نمی کند در واقع 438 00:29:28,370 --> 00:29:32,130 هر چیزی - جاوا اسکریپت و jQuery به شما اجازه می دارند دکمه های که شما می توانید با کلیک بر روی، 439 00:29:32,130 --> 00:29:37,960 و شما می توانید عناصر و دوباره سفارش آنها را بکشید و مرتب کردن آنها را، و عناصر جدید 440 00:29:37,960 --> 00:29:40,500 اضافه و یا حذف شده است. شما می توانید افزودنی حذف، که نوع از چیزی. 441 00:29:40,500 --> 00:29:44,570 بنابراین، جی کوئری می کند تن از چیزهای سرد. 442 00:29:44,570 --> 00:29:48,840 و Vipul است که در واقع به یک سمینار در مورد آن امروز، به اعتقاد من، در 5 ساعت، 443 00:29:48,840 --> 00:29:51,220 بنابراین اگر شما می توانید برای که به مدت طولانی چوب در اطراف، که - 5 و یا 4؟ 444 00:29:51,220 --> 00:29:54,930 چهار. متأسفم. این در واقع درست بعد از این، پس من توصیه می کنم 445 00:29:54,930 --> 00:29:56,680 چسبیده در اطراف برای آن را اگر شما می توانید. 446 00:29:56,680 --> 00:30:00,180 jQuery است فوق العاده، فوق العاده مفید است، و شما قادر خواهید بود به انجام بسیاری از چیزهای واقعا خوب با آن 447 00:30:00,180 --> 00:30:03,460 برای تقریبا هر پروژه توسعه وب است. 448 00:30:03,460 --> 00:30:06,200 >> حالا من قصد دارم به نوع تمایز دریافت کنید. 449 00:30:06,200 --> 00:30:08,210 من شده است با صحبت کردن اساسا در مورد رابط کاربر. 450 00:30:08,210 --> 00:30:11,510 رابط کاربری فقط در طراحی سایت است. 451 00:30:11,510 --> 00:30:13,780 اما نوعی از مفهوم دیگری است که تجربه کاربر وجود دارد. 452 00:30:13,780 --> 00:30:15,900 این دو بسیار متفاوت است. 453 00:30:15,900 --> 00:30:19,440 رابط است که قطعا بخشی از تجربه. 454 00:30:19,440 --> 00:30:21,340 به عبارت دیگر، هنگامی که شما به یک سایت بروید، به شما در رابط کاربری است. 455 00:30:21,340 --> 00:30:22,960 که بخشی از چگونگی تجربه شما از سایت می باشد. 456 00:30:22,960 --> 00:30:24,960 اما تجربه کاربر بیشتر از آن است. 457 00:30:24,960 --> 00:30:29,910 تجربه کاربر است که در مورد آنچه تصور که کاربر می شود از سایت شما است. 458 00:30:29,910 --> 00:30:31,910 بنابراین، بدیهی است، رابط بخشی از آن است. 459 00:30:31,910 --> 00:30:35,340 و این قطعا یک بخش ضروری است، اما کافی نیست. 460 00:30:35,340 --> 00:30:38,790 به عبارت دیگر، اگر شما یک رابط کاربری زیبا، و آن را زیبا و رنگارنگ و همه از آن، 461 00:30:38,790 --> 00:30:43,650 فوق العاده است، اما در صورتی که کاربر می رود به سایت خود، می بیند یک طرح زیبا و آن را توسط اشتباه 462 00:30:43,650 --> 00:30:47,060 همه چیز، هیچ ایده چگونه به انجام هر کاری، پس بدیهی است که شما واقعا ساخته شده است 463 00:30:47,060 --> 00:30:48,930 وب سایت ضعیف است. 464 00:30:48,930 --> 00:30:50,930 آن نوع که در آن تجربه کاربر وارد می آید را 465 00:30:50,930 --> 00:30:54,570 من قصد دارم به بحث کمی در مورد طراحی UX - UX کوتاه برای تجربه کاربر است - 466 00:30:54,570 --> 00:30:58,050 و نوع چگونه می توانید مطمئن شوید که شما یک تجربه کاربر خوب است. 467 00:30:58,050 --> 00:31:04,330 نکته اول این است که شما ممکن است یک طراحی وب سایت که در آن کاربر می تواند هر چیزی که 468 00:31:04,330 --> 00:31:06,820 که کاربر احتمالا می خواهد. 469 00:31:06,820 --> 00:31:08,940 اما در صورتی که کاربر نمی تواند درک چگونگی انجام این کارها را - 470 00:31:08,940 --> 00:31:12,850 به عبارت دیگر، اگر کاربر یک ایده خوب نیست زمانی که آنها به سایت شما از رفتن، 471 00:31:12,850 --> 00:31:17,660 "اوه، اگر من می خواهم برای به روز رسانی مشخصات من، پس من روی این دکمه کلیک کنید، یا اگر می خواهم در 472 00:31:17,660 --> 00:31:20,850 دیوار کسی، پس من به دیوار خود و کلیک بر روی یک جعبه کوچک. " 473 00:31:20,850 --> 00:31:24,410 اگر کاربر نمی داند که، پس از آن شما به طور موثر نیست در واقع 474 00:31:24,410 --> 00:31:27,080 پیاده سازی است که قابلیت به درستی. 475 00:31:27,080 --> 00:31:30,900 بخشی از پیاده سازی یک قابلیت است که کاربران در واقع قادر به استفاده از آن. 476 00:31:30,900 --> 00:31:34,810 و این ممکن است خسته کننده - شما ممکن است یک سایت را، و آن را می توانید تمام انواع از انجام 477 00:31:34,810 --> 00:31:37,810 همه چیز فوق العاده است، اما بعد از آن شما باید مردم آن را تست و می گویند، "این را نمی توان انجام این کار. 478 00:31:37,810 --> 00:31:39,770 چرا که نه می تواند آن را به انجام این کار؟ "و شما به آنها می گویند، 479 00:31:39,770 --> 00:31:44,420 "خوب، می تواند. شما فقط باید برای رفتن به منوی کشویی 7 در این مبهم 480 00:31:44,420 --> 00:31:48,470 صفحه ای که تنها توسط یک لینک در گوشه پایین سمت راست "و یا چیزی یافت می شود. 481 00:31:48,470 --> 00:31:50,430 بدیهی است، شما را نمی خواهیم. 482 00:31:50,430 --> 00:31:53,420 شما می خواهید آن را به کاربران خود را چه قرار است آنها را به انجام روشن، 483 00:31:53,420 --> 00:31:56,240 و آن را باید ساده و بصری برای آنها باشد. 484 00:31:56,240 --> 00:32:01,180 >> یکی دیگر از چیزی است که شما می خواهید امتحان کنید برای انجام این کار است، اگر کسی را به رفتن به رفتن به سایت خود 485 00:32:01,180 --> 00:32:05,520 و 9 نفر از 10 بار انجام عمل A، و 1 از 10 بار انجام عمل B، 486 00:32:05,520 --> 00:32:08,950 شما احتمالا می خواهید به تمرکز تجربه خود را در عمل A. 487 00:32:08,950 --> 00:32:12,240 به عبارت دیگر، شما می خواهید به آن را چگونه بسیار بسیار روشن به انجام A. 488 00:32:12,240 --> 00:32:15,980 باید جلو و مرکز - به سایت، آن را مشاهده کنید، آه، آن را به سمت راست وجود دارد. 489 00:32:15,980 --> 00:32:20,850 در حالی که B بدیهی است که شما می خواهید به پاک کردن است، اما شما می توانید آن را کمی بیشتر ترک 490 00:32:20,850 --> 00:32:22,850 در پس زمینه. 491 00:32:22,850 --> 00:32:24,640 دیوید می دهد یک مثال خوب از این در سخنرانی، 492 00:32:24,640 --> 00:32:26,640 که سیستم بوستون T است. 493 00:32:26,640 --> 00:32:29,440 هنگامی که شما به بوستون T بروید و می خواهید برای خرید یک بلیط، 494 00:32:29,440 --> 00:32:32,700 شما باید به 5 منوها را دریافت کنید قبل از اینکه شما در واقع می تواند خرید یک بلیط 495 00:32:32,700 --> 00:32:37,130 برای یک مقدار $ 2، $ 2.50 است که چه مقدار از آن طول می کشد تا سوار مترو 496 00:32:37,130 --> 00:32:39,130 در یک جهت. 497 00:32:39,130 --> 00:32:41,600 این یک مشکل است به دلیل اینکه اکثر افرادی که در حال سوار مترو 498 00:32:41,600 --> 00:32:44,880 احتمالا فقط می خواهم برای رفتن به یک مکان، خرید بلیط خود را دریافت کنید در حق دور. 499 00:32:44,880 --> 00:32:47,550 این معنی ندارد که آنها باید از طریق تعداد زیادی از منوهای مختلف بروید 500 00:32:47,550 --> 00:32:49,550 برای به دست آوردن وجود دارد. 501 00:32:49,550 --> 00:32:51,760 یک تجربه کاربری بهتر خواهد بود یک دکمه سریع در صفحه اول 502 00:32:51,760 --> 00:32:54,760 که فقط می گوید، "خرید یک بلیط یکسره، و که در قرار دادن تمام استاندارد 503 00:32:54,760 --> 00:32:58,550 مقادیر پیش فرض و پس از آن اگر کسی می خواهد به خرید بلیط های مختلف از آن، 504 00:32:58,550 --> 00:33:01,690 آنها هنوز هم، البته، باید این گزینه را به، اما شما برای بهینه سازی کردید 505 00:33:01,690 --> 00:33:04,080 مورد معمول استفاده است که واقعا مهم است. 506 00:33:04,080 --> 00:33:06,830 شما می توانید نمونه هایی از این در فیس بوک را مشاهده کنید، درست است؟ 507 00:33:06,830 --> 00:33:09,410 اگر شما به فیس بوک بروید و می خواهید برای ارسال یک وضعیت، 508 00:33:09,410 --> 00:33:11,710 آن را سمت راست در بالای همان چیزی که شما اغلب می خواهند به انجام. 509 00:33:11,710 --> 00:33:14,730 به محض این که شما وارد صفحه، شما می توانید چیزهایی که رایج ترین کار را انجام دهید 510 00:33:14,730 --> 00:33:16,730 می خواهید انجام دهید. 511 00:33:16,730 --> 00:33:17,550 اگر می خواهید به انجام کارهای کمی پیچیده تر مانند، 512 00:33:17,550 --> 00:33:21,070 می گویند من می خواهم برای رفتن به دیوار دوست من و یک تصویر بر روی آن - 513 00:33:21,070 --> 00:33:24,810 که من می خواهم به انجام اغلب، اما به عنوان اغلب به عنوان ارسال وضعیت به روز رسانی - 514 00:33:24,810 --> 00:33:28,200 پس در آن صورت، من نام خود را در بالای صفحه در قسمت، با کلیک بر روی پروفایل خود را، 515 00:33:28,200 --> 00:33:31,680 و پس از آن، هنوز هم، آن را به سمت راست در بالای صفحه وجود دارد یک بار من به مشخصات خود را بدست. 516 00:33:31,680 --> 00:33:38,240 باز هم، من در اولویت برای موارد رایج ترین استفاده بهینه کردم. 517 00:33:38,240 --> 00:33:41,800 >> نکته مهم دیگر این است که اغلب مردم به نوعی سعی خواهد کرد تا در اطراف این دریافت 518 00:33:41,800 --> 00:33:44,890 گفت: خیلی خوب، پس من ساخته ام سایت و مردم به پیدا کردن آن را گیج کننده است، 519 00:33:44,890 --> 00:33:46,110 و این یک مشکل است، درست است؟ 520 00:33:46,110 --> 00:33:49,210 بدیهی است، من نمی خواهم که مردم به محتوای سایت من اشتباه گرفته شود. 521 00:33:49,210 --> 00:33:53,210 اما راه حل این است که به چیزی تا موسیقی پاپ گفت: نه، 522 00:33:53,210 --> 00:33:55,290 با سلام، من قصد دارم به تو میآموزد که چگونه به استفاده از این سایت. 523 00:33:55,290 --> 00:33:58,130 مرحله 1 - با کلیک بر روی این دکمه. مرحله 2 - به اینجا بروید. 524 00:33:58,130 --> 00:34:03,080 مطمئنا، که راه در اطراف آن است - آن است که یک راه است که شما می توانید به مردم می گوید چه کار است، اما آن را 525 00:34:03,080 --> 00:34:05,080 واقعا نمی راه مطلوب. 526 00:34:05,080 --> 00:34:07,420 اگر من به یک وب سایت بروید و ناگهان من با این آموزش که به من گفتن بمباران 527 00:34:07,420 --> 00:34:11,739 چه باید بکنید و به کجا بروید و همه از آن، که سرگرم کننده برای من نیست. 528 00:34:11,739 --> 00:34:13,739 این تجربه خوبی برای من نیست. 529 00:34:13,739 --> 00:34:17,130 این نوع درد است. من می خواهم فقط شروع به انجام مسائل. 530 00:34:17,130 --> 00:34:19,449 مردم در حال بستن از کادر محاوره ای خود را، 531 00:34:19,449 --> 00:34:23,580 و یا از آموزش دریافت می کنید، نمی دانید چه باید بکنید، و سپس شکایت به دلیل 532 00:34:23,580 --> 00:34:25,580 شما به آنها گفتم که چه باید بکنید. 533 00:34:25,580 --> 00:34:29,530 راه حل این است با دادن هر نوع آموزش و یا جهت نمی - 534 00:34:29,530 --> 00:34:31,530 هر چیزی مانند آن. 535 00:34:31,530 --> 00:34:33,719 تا آنجا که می توانید از آن اجتناب، شما واقعا می خواهید برای نشان دادن کاربر چه باید بکنید 536 00:34:33,719 --> 00:34:36,429 فقط با طبیعت چگونه وب سایت گذاشته است. 537 00:34:36,429 --> 00:34:39,090 به عبارت دیگر، اگر من به فیس بوک بدون ورود، 538 00:34:39,090 --> 00:34:40,920 اولین چیزی که من در صفحه اصلی را ببینید - 539 00:34:40,920 --> 00:34:44,480 آن را یک جعبه وارد کم است. بنابراین، DUH. من باید وارد شوید. این حق وجود دارد. 540 00:34:44,480 --> 00:34:48,030 در حالی که، اگر من به فیس بوک رفت و من تا به حال با کلیک بر روی یک لینک کوچک در پایین 541 00:34:48,030 --> 00:34:51,920 که گفت: 'ورود به سیستم' و بقیه از صفحه فقط نوعی از تصویر و یا چیزی بود، 542 00:34:51,920 --> 00:34:54,820 من واقعا نمی دانم چه باید بکنید، درست است؟ من اشتباه گرفته شود. 543 00:34:54,820 --> 00:34:58,590 بنابراین، می تواند به من بگویید به پایین وجود دارد و کلیک بر روی دکمه ورود به سیستم، 544 00:34:58,590 --> 00:35:01,080 یا ورود را فشار دهید می تواند در بالای جایی که من قصد دارم آن را به حق. 545 00:35:01,080 --> 00:35:04,780 شما می خواهید برای همیشه می شود کاربر چه باید بکنید، 546 00:35:04,780 --> 00:35:06,750 و است که باید ذاتی در صفحه خود باشد. 547 00:35:06,750 --> 00:35:09,880 >> هنگامی که شما در حال فکر کردن در مورد طرح ها و مسخره کردن راه های مختلف 548 00:35:09,880 --> 00:35:13,810 ابراز سایت خود، شما واقعا می خواهید در مورد آنچه که کاربران می رویم به فکر می کنم 549 00:35:13,810 --> 00:35:19,380 انجام و چگونه می توانید آنها را نشان می دهد چه باید بکنید. 550 00:35:19,380 --> 00:35:23,530 یکی از آخرین چیز است تست واقعا، واقعا مهم است. 551 00:35:23,530 --> 00:35:27,400 این فوق العاده است برای به دست آوردن کسی - یک دوست، کسی شما حتی نمی دانم - 552 00:35:27,400 --> 00:35:30,420 که دیده هرگز سایت قبل از استفاده از سایت را. 553 00:35:30,420 --> 00:35:33,650 از آنجا که شما مشغول به کار در سایت برای ساعت، شما بوده ام به آن خیره، 554 00:35:33,650 --> 00:35:36,670 و شما می دانید که دقیقا چه باید بکنید، بنابراین بدیهی است که شما به آزمایش می شود 555 00:35:36,670 --> 00:35:39,520 چیزهایی که شما مشغول به کار در و که شما می دانید کار. 556 00:35:39,520 --> 00:35:42,680 اما اگر شخص دیگری می آید و با استفاده از سایت که هرگز آن را قبل از استفاده، 557 00:35:42,680 --> 00:35:46,880 که یک تجربه منحصر به فرد این دلیل است که کسی که هیچ دانش قبلی شما 558 00:35:46,880 --> 00:35:51,530 از سایت رفتن به آن است، به طوری که آنها در حال رفتن به طور موثر هیچ ایده چه باید بکنید 559 00:35:51,530 --> 00:35:54,890 و یا چه نوع از موارد استفاده در حال حاضر برای آنها می باشد. 560 00:35:54,890 --> 00:36:00,930 فوق العاده است. این منحصر به فرد است چرا که آنها در اصل هستی یک فرد با یک خالی برای یک ذهن داشته باشند. 561 00:36:00,930 --> 00:36:03,750 آنها می توانند به شما بگویم اگر چیزی گیج کننده و یا نامشخص است. 562 00:36:03,750 --> 00:36:07,580 آنها می توانند به شما ایده دقیقا چیزی است که تجربه کاربر از سایت شما می دهد. 563 00:36:07,580 --> 00:36:10,630 این می تواند بسیار سخت به بگویید که خود را، پس قطعا من شما را تشویق 564 00:36:10,630 --> 00:36:13,640 که شما در حال توسعه پروژه های خود را - اگر شما در حال انجام پروژه های مبتنی بر وب - 565 00:36:13,640 --> 00:36:18,290 به مردم با استفاده از سایت به عنوان اوایل به عنوان شما را به نوعی از نسخه ی نمایشی عملکردی است. 566 00:36:18,290 --> 00:36:25,330 >> حالا من قصد دارم به بحث کمی در مورد نحوه مدیریت یک پروژه توسعه وب است. 567 00:36:25,330 --> 00:36:28,900 ما بر سر اینکه چگونه شما می توانید به سمت عقب پایان فنی انجام رفته است، 568 00:36:28,900 --> 00:36:31,050 چگونه می توانید یک سایت واقعا خوب طراحی، 569 00:36:31,050 --> 00:36:34,150 و این بزرگ اگر شما در حال کار توسط خودتان، اما - 570 00:36:34,150 --> 00:36:37,300 حتی اگر شما در حال کار توسط خودتان و به خصوص اگر شما در حال کار در یک تیم، 571 00:36:37,300 --> 00:36:39,580 مدیریت پروژه یک مسئله بزرگ تبدیل می شود. 572 00:36:39,580 --> 00:36:42,340 شما به نوعی در مورد مدیریت پروژه در اشکال مختلف از شنیده 573 00:36:42,340 --> 00:36:45,410 مدرسه ابتدایی زمانی که شما کار گروه گفته شد. 574 00:36:45,410 --> 00:36:46,820 شما باید برای همکاری، ارتباط، همه از آن. 575 00:36:46,820 --> 00:36:49,620 این همه هنوز هم در اینجا اعمال می شود، اما برخی از شرایط منحصر به فرد با وجود 576 00:36:49,620 --> 00:36:54,910 علم کامپیوتر است که شما می خواهید به آگاهی از، و می خواهید مطمئن شوید که شما را به خوبی اداره کند. 577 00:36:54,910 --> 00:36:58,050 من برای اولین بار در مورد این تیم است که شما وارد می شود بحث کمی 578 00:36:58,050 --> 00:37:03,280 این بسیار مهم است برای انتخاب اندازه مناسب از یک تیم به کار بر روی، 579 00:37:03,280 --> 00:37:05,890 و در پروژه نهایی خود را من فکر می کنم شما باید این گزینه را انتخاب کنید 580 00:37:05,890 --> 00:37:08,610 بین 1 و 4 نفر اگر من درست هستم. 581 00:37:08,610 --> 00:37:12,050 شما می خواهید مطمئن شوید که شما نه تنها انتخاب تعداد زیادی از مردم 582 00:37:12,050 --> 00:37:14,950 که شما می خواهید برای کار با این دلیل که آنها دوستان شما هستند. 583 00:37:14,950 --> 00:37:18,170 شما می خواهید را انتخاب کنید یک تیم است که به یک اندازه خوب است و که کار انجام می شود. 584 00:37:18,170 --> 00:37:22,700 یک خاموش معامله در داشتن بیشتر مردم در مقابل مردم کمتر وجود دارد. 585 00:37:22,700 --> 00:37:25,320 در صورتی که بیشتر مردم، کار به وضوح بیشتر می تواند انجام شود 586 00:37:25,320 --> 00:37:28,450 چرا که شما تعداد زیادی از مردم، تعداد زیادی از کد، مقدار زیادی از ایده ها، 587 00:37:28,450 --> 00:37:29,870 و همه را بزرگ. 588 00:37:29,870 --> 00:37:32,590 اما آن را نیز نیاز به مدیریت خیلی بیشتر و ارتباطات خیلی بیشتر. 589 00:37:32,590 --> 00:37:34,720 به عبارت دیگر، اگر شما 4 نفر کار بر روی پروژه مشابه 590 00:37:34,720 --> 00:37:39,200 و همه آنها در حال ویرایش کد مشابه، بیشتر یا کمتر، آنها همه نوع از نیاز به دانستن 591 00:37:39,200 --> 00:37:40,920 چه خبر است تا آن را به شما نیاز - 592 00:37:40,920 --> 00:37:44,580 اگر شما برخی از عملکرد های جدید اضافه می نوعی دارند به مردم - I'm اضافه کردن این، 593 00:37:44,580 --> 00:37:48,510 من تغییر در این راه - به خصوص اگر شما به چیزهای واقعا عمیق کنید 594 00:37:48,510 --> 00:37:52,730 مانند مدل ها و کنترل است که در واقع رفتن به تاثیر گذاری در چگونگی سایت کار می کند. 595 00:37:52,730 --> 00:37:54,500 تمام تیم باید از آن آگاه است، 596 00:37:54,500 --> 00:37:58,140 بنابراین شما نیاز به مطمئن شوید که شما انتخاب بیش از حد بزرگ یک تیم است که رفتن به سخت نیست 597 00:37:58,140 --> 00:37:59,970 را که ارتباطات. 598 00:37:59,970 --> 00:38:02,930 شما نیز نمی خواهید را انتخاب کنید یک تیم کوچک به اندازه کافی است که شما قصد به نه 599 00:38:02,930 --> 00:38:06,250 قادر به برقراری ارتباط به دلیل آن را فقط به شما. 600 00:38:06,250 --> 00:38:11,270 >> چیز دیگری که به در نظر گرفتن تعادل که در آن مهارت مردم است. 601 00:38:11,270 --> 00:38:14,350 این فوق العاده است اگر شما تمام برنامه نویسان واقعا خوب است. 602 00:38:14,350 --> 00:38:17,050 اما اگر شما همه مردم به عقب پایان، سپس سایت خود را در حال رفتن به نگاه بسیار خوب 603 00:38:17,050 --> 00:38:20,860 دلیل این که شما از این پایگاه داده بزرگ، و آن را نمایش داده شد جستجو فوق العاده سریع - 604 00:38:20,860 --> 00:38:26,130 که فوق العاده است - اما زمانی که شما به آن، آن را مانند یک سایت 1990 با قرمز و آبی 605 00:38:26,130 --> 00:38:30,370 در همه جا، و هیچ خوب یا. 606 00:38:30,370 --> 00:38:34,210 توجه کنید که بن و من به عنوان یک تیم کار بسیار خوب است چون من نوعی تر هستم 607 00:38:34,210 --> 00:38:38,030 در پایان جلو، ما هر دو در وسط پایان تعامل، و بن واقعا خوب با مسائل به عقب پایان، 608 00:38:38,030 --> 00:38:43,550 به طوری که کار واقعا خوب چون ما می توانید هر سایت طراحی سایت و اساسا سوراخ 609 00:38:43,550 --> 00:38:47,580 در این سایت که نیاز به پر شود می تواند توسط هر یک از ما، و یا احتمالا هر دو پر شده است. 610 00:38:47,580 --> 00:38:50,210 شما می خواهید مطمئن شوید که هیچ سوراخ در تیم شما وجود دارد. 611 00:38:50,210 --> 00:38:51,180 بسیار خوب اگر کمی با هم تداخل وجود دارد. 612 00:38:51,180 --> 00:38:53,670 به عبارت دیگر، اگر شما 2 نفر که هر دو خوب با پایان دادن به عقب، 613 00:38:53,670 --> 00:38:57,250 که می تواند خوب باشد و همچنین به این دلیل که آنها می تواند با مشکلات به هم کمک 614 00:38:57,250 --> 00:38:58,820 که آنها داشتن. 615 00:38:58,820 --> 00:39:02,590 این می تواند یک مشکل اگر شما فقط 1 نفر که مسئول یک چیز خاص 616 00:39:02,590 --> 00:39:06,650 و آنها را به یک مشکل اجرا شود، بنابراین شما می خواهم به یک کمی با هم تداخل 617 00:39:06,650 --> 00:39:10,760 اما شما از همه مهمتر می خواهید مطمئن شوید که تمام حفره های ممکن هستند پر شده است. 618 00:39:10,760 --> 00:39:17,550 >> آخرین چیزی - و این باید واضح باشد، اما اغلب نه. 619 00:39:17,550 --> 00:39:19,550 شما واقعا می خواهید به داشتن سرگرم کننده است. 620 00:39:19,550 --> 00:39:23,360 نکته این پروژه نهایی در CS50 و اغلب نقطه توسعه وب به طور کلی 621 00:39:23,360 --> 00:39:26,360 این است که فقط انجام یک کار دلیل آن است که نیاز به انجام این کار نیست. 622 00:39:26,360 --> 00:39:29,140 شما واقعا می خواهید به داشتن سرگرم کننده است، و شما می خواهید به ساخت چیزی 623 00:39:29,140 --> 00:39:31,180 که به شما انگیزه برای کار بر روی آن. 624 00:39:31,180 --> 00:39:33,650 اگر هر آنچه که شما در حال ساخت است درد را به نشستن و کار بر روی، 625 00:39:33,650 --> 00:39:35,650 سپس شما انتخاب درست پروژه ها نیست. 626 00:39:35,650 --> 00:39:37,730 شما می خواهید به چیزی است که شما جالب می یابند را انتخاب کنید، 627 00:39:37,730 --> 00:39:41,150 شما واقعا می خواهید برای دیدن نتیجه، شما هیجان زده هستید زمانی که شما یک ایده جدید در مورد دریافت 628 00:39:41,150 --> 00:39:44,700 چیزی است که شما می توانید انجام دهید - بنابراین انواع پروژه های وجود دارد که من مطمئن هستم 629 00:39:44,700 --> 00:39:47,290 شما می توانید پیدا کردن - هر کس چیزی است که واقعا به آنها فتنه 630 00:39:47,290 --> 00:39:49,290 اگر آنها در حال انجام یک پروژه مبتنی بر وب. 631 00:39:49,290 --> 00:39:52,210 من دوباره آن را در حال حاضر می گویند. 632 00:39:52,210 --> 00:39:54,520 اگر پروژه شما به نظر می رسد مثل یک درد و شما نمی خواهید به کار بر روی آن، 633 00:39:54,520 --> 00:39:57,260 پروژه های دیگر را انتخاب کنید. چیزی که واقعا الهام بخش شما است را انتخاب کنید. 634 00:39:57,260 --> 00:40:00,260 >> بن ذکر شد این مفهوم تکرار کمی، و من می خواهم به بیش از آن کمی. 635 00:40:00,260 --> 00:40:08,250 این واقعا مهم است به کار در جهش که در آن شما چیزی عملکردی به دست آوردن. 636 00:40:08,250 --> 00:40:13,420 این می تواند بزرگ اگر شما این برنامه ریزی برای یک وب سایت است که رفتن به انجام A، B، و C، 637 00:40:13,420 --> 00:40:16,000 و در نهایت آن وجود دارد دریافت کنید. 638 00:40:16,000 --> 00:40:18,600 اما شما در این مرحله که در آن شما در حال کار بر روی آن و کار بر روی آن گیر کرده، 639 00:40:18,600 --> 00:40:23,330 ولی هیچ شدن انجام می شود. شما هیچ چیز را برای دیدن و ملموس، چیزی که عملکردی ندارد. 640 00:40:23,330 --> 00:40:27,940 چه چیزی را واقعا می خواهید انجام دهید تا آنجا که به نظر می رسد نوع از درد گاهی اوقات به 641 00:40:27,940 --> 00:40:32,300 کار بر روی چیزی و سپس نوع آن را به کلاه کردن به طوری که آن را حداقل در یک پایدار، در حال اجرا 642 00:40:32,300 --> 00:40:34,910 نسخه حتی اگر آن را تمام ویژگی های شما می خواهید ندارد. 643 00:40:34,910 --> 00:40:37,690 و شاید برخی از ویژگی های است که شما واقعا می خواهید برای اضافه کردن، اما شما نه تنها می توانید وجود دارد 644 00:40:37,690 --> 00:40:41,830 دلیل این که شما می خواهید برای دریافت این سایت به یک نقطه عملکردی است. 645 00:40:41,830 --> 00:40:44,400 و به این ترتیب شما می خواهید به نوعی از کل فرایند توسعه نگاه مانند آن. 646 00:40:44,400 --> 00:40:47,810 شما می خواهید به جایی شروع کاربردی - و یا اساسا شروع با هیچ چیز - 647 00:40:47,810 --> 00:40:49,890 اما شما می خواهید برای دریافت در جایی بسیار اساسی و کاربردی. 648 00:40:49,890 --> 00:40:54,940 و سپس، یک نوع پرش و گرفتن دوباره در جایی عملکردی است. 649 00:40:54,940 --> 00:40:59,190 شما به آرامی خواهم ساخت، و آن را ممکن است کمی آهسته تر از آن را در غیر این صورت به، 650 00:40:59,190 --> 00:41:03,000 اما در دراز مدت اگر شما به طور مداوم در این مرحله وسط زمین گیر که در آن شما 651 00:41:03,000 --> 00:41:06,380 در واقع هر چیزی کار نمی کند داشته باشد، می توان آن را سرخوردگی واقعا بزرگ 652 00:41:06,380 --> 00:41:09,970 به کار بر روی پروژه خود را دلیل این که شما همیشه به آن را گرفتن کار نزدیک است، 653 00:41:09,970 --> 00:41:12,130 و آن را در واقع هرگز به کار. 654 00:41:12,130 --> 00:41:14,810 شما می خواهید برای کار در این جهش های کاربردی، 655 00:41:14,810 --> 00:41:17,950 و شما همچنین می خواهم به انجام برخی از بازتاب بعد از هر یک. 656 00:41:17,950 --> 00:41:21,260 به عبارت دیگر، هنگامی که شما در یک نقطه که در آن سایت در حال حاضر مشغول به کار هستند - 657 00:41:21,260 --> 00:41:24,790 آن همه چیز شما را دوست ندارد اما آن را برخی از چیزهایی - 658 00:41:24,790 --> 00:41:28,870 شما می خواهید به فکر می کنم، خوب، این سایت انجام هدف که من شروع به انجام شده است؟ 659 00:41:28,870 --> 00:41:33,410 به عبارت دیگر، اگر سایت را به انجام X، همان چیزی است که من در جهت X کار می کند؟ 660 00:41:33,410 --> 00:41:36,450 آیا همه از ویژگی های که من می خواستم وجود دارد؟ 661 00:41:36,450 --> 00:41:39,340 و علاوه بر این، آن را در خدمت هدف کلی است که من می خواهم؟ 662 00:41:39,340 --> 00:41:43,200 اگر شما در حال پیدا کردن که سایت شما شروع به تغییر جهت دادن در جهت های مختلف 663 00:41:43,200 --> 00:41:47,330 و یا شاید به نوعی در حال کار نیست، زمان آن است که به تغییر چرخ دنده های کمی. 664 00:41:47,330 --> 00:41:51,700 به عبارت دیگر، آن را با توجه به ارزش - آن را به ارزش پرتاب کردن ایده ها در صورت لزوم 665 00:41:51,700 --> 00:41:57,950 و با توجه به من واقعا نسبت به آنچه که من می خواهم به کار. 666 00:41:57,950 --> 00:42:00,760 >> من باور دارم که نقطه بعدی من است. نترس به کنار گذاشتن ایده ها. 667 00:42:00,760 --> 00:42:03,750 فقط به خاطر شما ساعتهای زیادی را صرف کار بر روی یکی از ویژگی های 668 00:42:03,750 --> 00:42:07,890 و در نهایت آن را به کار اما واقعا در حال رفتن نه چندان خوب - 669 00:42:07,890 --> 00:42:12,690 مانند آن است که مفید نیست و یا کاربران مشکل با استفاده از آن - که نوع از چیزی که - 670 00:42:12,690 --> 00:42:15,300 نترس به دور انداختن آن. 671 00:42:15,300 --> 00:42:17,650 آن را sucks که شما زمان زیادی را صرف کار بر روی آن، 672 00:42:17,650 --> 00:42:21,870 اما در نهایت شما یک سایت است که در نوع با هم توسط این قطعه را می خواهم نه که 673 00:42:21,870 --> 00:42:25,380 نوع کار اما که به خوبی خدمت کرده است. 674 00:42:25,380 --> 00:42:27,990 همچنین، نترس برای پذیرش ایده های جدید. 675 00:42:27,990 --> 00:42:30,050 اگر کسی پیش می آید و می گوید: هی، این سایت به نظر می رسد واقعا سرد اما 676 00:42:30,050 --> 00:42:32,290 آن را نمی شود حتی بزرگ اگر آن را نیز به این کار؟ 677 00:42:32,290 --> 00:42:36,220 فقط به این خاطر است که چیزی است که شما قصد و چیزی که در نیست شما 678 00:42:36,220 --> 00:42:37,900 مشخصات، چیزی است که شما تعیین کرده اند نشده است به انجام، 679 00:42:37,900 --> 00:42:40,860 نترس به آن را در و سپس کار با آن است. 680 00:42:40,860 --> 00:42:43,680 از آنجا که اغلب ایده هایی که شما با در طول دوره توسعه اجرا 681 00:42:43,680 --> 00:42:47,630 تا پایان بودن ویژگی های واقعا سرد از وب سایت. 682 00:42:47,630 --> 00:42:49,630 >> من پیش از این گفته ام. من دوباره آن را می گویند. 683 00:42:49,630 --> 00:42:51,630 آزمایشکنندگان فوق العاده، فوق العاده مفید است. 684 00:42:51,630 --> 00:42:56,350 سعی کنید افرادی که را دیده اند، هرگز سایت قبل از ورود به سیستم و ببینید چه خبر است 685 00:42:56,350 --> 00:42:59,080 چرا که آنها نه تنها می تواند آزمایش مفید بودن سایت و تجربه کاربر، 686 00:42:59,080 --> 00:43:02,070 اما آنها همچنین می توانید قابلیت تست در راه است که شما می توانید. 687 00:43:02,070 --> 00:43:06,430 اگر شما را به برخی از ویژگی های است که نشانی از یک چیز قطعی 688 00:43:06,430 --> 00:43:11,620 و شما می دانید آن را به انجام این کار همان چیزی که به درستی در هر زمان تنها، فوق العاده است. 689 00:43:11,620 --> 00:43:16,610 اما اغلب می تواند سخت به حساب برای موارد گوشه ای که در آن ممکن است که کاربر می شود 690 00:43:16,610 --> 00:43:19,500 نوع چیزی است که شما انتظار ندارد - دقیقا به این خاطر که شما تعریف 691 00:43:19,500 --> 00:43:21,500 از ویژگی های خود را. 692 00:43:21,500 --> 00:43:23,730 بنابراین، به کسی در که هیچ ایده چگونه به استفاده از سایت می آیند 693 00:43:23,730 --> 00:43:26,840 و فقط آن را در هر روش می توان شکستن واقعا مفید است زیرا شما 694 00:43:26,840 --> 00:43:30,340 گرفتن ایده از یک چشم انداز کاملا متفاوت از آنچه در سایت خود در حال کار 695 00:43:30,340 --> 00:43:33,300 و آنچه نیاز به تعمیر. 696 00:43:33,300 --> 00:43:37,070 >> تاریخ و زمان آخرین، من قصد دارم در مورد برخی از شیوه های خوب به طور کلی صحبت می کنید، 697 00:43:37,070 --> 00:43:42,470 و شما بسیاری از این دیده ام در CS50، اما آنها نیز واقعا، واقعا در یک محیط پروژه اعمال می شود. 698 00:43:42,470 --> 00:43:47,600 یک نظر است. همیشه کد خود را به خصوص اگر شما در حال کار در یک تیم بزرگ نظر. 699 00:43:47,600 --> 00:43:51,230 آن می تواند بسیار آزار دهنده برای فقط باید یک بلوک بزرگ از کد که کسی نوشته شده است را 700 00:43:51,230 --> 00:43:54,230 و شاید آن کار می کند، شاید آن را نمی کند، اما شما هیچ ایده چه چیزی آن را ندارد، 701 00:43:54,230 --> 00:43:58,010 بنابراین شما هیچ نظری ندارم که آیا آن را مفید و یا نه آن است که آیا وجود دارد یا نه باید باشد، 702 00:43:58,010 --> 00:44:00,200 و اگر شما در حال کار بر روی چیز دیگری است که حتی ممکن است که شما در حال کار بر روی 703 00:44:00,200 --> 00:44:06,590 همین، بنابراین فقط بسیار، بسیار مراقب باشید که ملاحظه از همسالان خود است 704 00:44:06,590 --> 00:44:09,710 و نوشتن کد است که به خوبی مستند شده است. 705 00:44:09,710 --> 00:44:13,580 شما لازم نیست برای رفتن تا آنجا که به انجام همه چیز را که در آن می خواهم اگر شما افزایش 706 00:44:13,580 --> 00:44:16,620 یک شمارنده یک نظر که می گوید، من اضافه کردن 1 به این شمارنده. 707 00:44:16,620 --> 00:44:20,450 لازم نیست به این باشد که دقیق، بلکه برای هر تابع که شما تا به حال نوشتن 708 00:44:20,450 --> 00:44:23,160 شما باید برخی از اسناد را از آنچه که تابع دقیقا دارای، 709 00:44:23,160 --> 00:44:25,140 چه ورودی آن می باشد، و آنچه در آن باید گشت. 710 00:44:25,140 --> 00:44:27,800 به این ترتیب شما می توانید اجزای دیگر مردم از سایت استفاده کنید 711 00:44:27,800 --> 00:44:31,990 و شما می توانید به سمت ساختمان چیزی بزرگ کار می کنند. 712 00:44:31,990 --> 00:44:34,100 >> نکته مهم دیگر این است که شما می خواهید برای انجام این کار به طور منظم تمیز یو پی اس. 713 00:44:34,100 --> 00:44:40,490 کد کثیف می شود. آیا احساس بد نیست اگر کد شما فقط کاملا خواندن و ظروف سرباز یا مسافر غول پیکر بود. 714 00:44:40,490 --> 00:44:42,770 که اتفاق می افتد در توسعه وب همیشه. 715 00:44:42,770 --> 00:44:46,530 شما با اضافه کردن ویژگی های جدید، از بین بردن آنهایی که قدیمی. مسائل در جریان است وجود داشته باشد که باید باشد. 716 00:44:46,530 --> 00:44:49,330 این خوب است، اما می خواهید مطمئن شوید که برای مقابله با آن به طور منظم. 717 00:44:49,330 --> 00:44:53,430 شما نمی خواهید اجازه دهید آن را ساخت تا به نقطه ای که شما فقط می توانید هر چیزی پیدا نیست 718 00:44:53,430 --> 00:44:56,430 در کد خود را، و شما هیچ ایده چه چیزی هر چیزی می کند. 719 00:44:56,430 --> 00:44:58,430 که در مورد HTML است. 720 00:44:58,430 --> 00:44:59,490 گاهی اوقات شما در نهایت با اشیاء است که هیچ چیز نیست، 721 00:44:59,490 --> 00:45:01,320 و شما می خواهید از شر آن خلاص شوید. 722 00:45:01,320 --> 00:45:04,610 در CSS، شما می توانید با مراجعه به عناصری که وجود دارد دیگر نیست، 723 00:45:04,610 --> 00:45:06,340 بنابراین شما می خواهید می توانید از آن کد خلاص شوید. 724 00:45:06,340 --> 00:45:09,900 در جاوا اسکریپت، شما ممکن است چیزی از HTML حذف شده است. 725 00:45:09,900 --> 00:45:13,150 بنابراین، شما می خواهید مطمئن شوید که شما همیشه تمیز کردن، ساختن چیزهای زیبا 726 00:45:13,150 --> 00:45:17,450 به عنوان آنجا که می توانید به طور منظم. 727 00:45:17,450 --> 00:45:21,060 >> یکی دیگر از چیزی که واقعا مفید است که من فکر نمی کنم خیلی در CS50 مشخص 728 00:45:21,060 --> 00:45:23,430 اما ارزش آن را از وارد شدن به نسخه است کنترل. 729 00:45:23,430 --> 00:45:27,180 ایده کنترل نسخه است که شما در واقع نگهداری و ردیابی تمامی پیشرفت 730 00:45:27,180 --> 00:45:30,820 شما نسبت به سایت خود را ساخته ام و اگر در هر نقطه ای که شما متوجه، آه، این کار 731 00:45:30,820 --> 00:45:35,220 در حالی که پیش اما آن کار می کند نمی شود، شما می توانید به نسخه های قبلی به 732 00:45:35,220 --> 00:45:37,720 و ببینید چه چیزی است پس از آن و آن نوع از چیزی که تغییر کرده است. 733 00:45:37,720 --> 00:45:41,670 راه اصلی برای انجام این کار با دستگاه گوارش و دستگاه گوارش این نوع کل سیستم است که 734 00:45:41,670 --> 00:45:46,390 به اعتقاد من تامی MacWilliam یک سمینار در مورد سال گذشته است. 735 00:45:46,390 --> 00:45:51,520 اگر شما را به سمینارها CS50 برای 2011، شما می توانید سمینار خود را در آن ببینید. 736 00:45:51,520 --> 00:45:57,070 این ایده از دستگاه گوارش است که اساسا در فواصل منظم شما در حال ساخت این تعهدات 737 00:45:57,070 --> 00:46:01,430 که راه گفت: سایت به یک نسخه بسیار پایدار است در حال حاضر تا 738 00:46:01,430 --> 00:46:05,910 من آن را بسته بندی و ارسال آن به سرور، و سپس شما می توانید به آن سرور به 739 00:46:05,910 --> 00:46:07,910 و در تمام نسخه های قبلی از کد خود را نگاه کنید و ببینید که چگونه آن را پیشرفت 740 00:46:07,910 --> 00:46:12,210 و آنچه را که نوعی از چیزهای خوب است. 741 00:46:12,210 --> 00:46:14,210 بنابراین، در واقع. 742 00:46:14,210 --> 00:46:17,870 تا آنجا که به توسعه وب، ما خوشحال به چوب در اطراف و پاسخ به هر گونه هستیم 743 00:46:17,870 --> 00:46:20,570 سوالات تا آنجا که ارائه است. 744 00:46:20,570 --> 00:46:22,900 همین. تشکر. >> [بن] تشکر. 745 00:46:22,900 --> 00:46:28,480 [تشویق حضار] 746 00:46:28,480 --> 00:46:30,950 >> [بیلی] کارکنان، هر کسی هر گونه سوال در مورد چیزهایی که ما تحت پوشش 747 00:46:30,950 --> 00:46:33,950 و یا آنچه که ما تحت پوشش نیست که آنها امیدوار بودند که ما می خواهم پوشش می دهد؟ 748 00:46:33,950 --> 00:46:35,950 ما خوشحال به پاسخ آن می شود. هر کسی؟ 749 00:46:35,950 --> 00:46:50,360 [حضار] جوانب مثبت و منفی استفاده از روبی و یا با استفاده از پایتون چیست؟ 750 00:46:50,360 --> 00:46:58,660 [بن] سوال این بود، جوانب مثبت و منفی استفاده از روبی و پایتون چیست 751 00:46:58,660 --> 00:46:59,900 به جای مانند PHP. 752 00:46:59,900 --> 00:47:11,340 جوانب مثبت این است که روبی و پایتون زبان بسیار بهتر از PHP می باشد. 753 00:47:11,340 --> 00:47:14,920 حداقل به نظر من، و من در بسیاری از نظرات افراد دیگر و همچنین فکر می کنم. 754 00:47:14,920 --> 00:47:20,990 آنها بیشتر برای انجام مسائل پیچیده طراحی شده بودند، 755 00:47:20,990 --> 00:47:25,380 و کمتر برای خیلی بزرگ با هم صفحات وب را واقعا به سرعت با 756 00:47:25,380 --> 00:47:28,400 کمی از محتوای پویا. 757 00:47:28,400 --> 00:47:35,180 منفی می باشد که کمی از وجود دارد - بیشتر از یک منحنی یادگیری وجود دارد 758 00:47:35,180 --> 00:47:37,220 به آنها گذاشته. 759 00:47:37,220 --> 00:47:41,010 این است که، مانند PHP، شما فقط می توانید یک فایل HTML و برای شما کمتر از، 760 00:47:41,010 --> 00:47:43,060 علامت سوال، و سپس شما ارسال برخی از کد، و سپس شما ارسال علامت سوال، 761 00:47:43,060 --> 00:47:45,700 بزرگتر، و سپس شما انجام می شود. 762 00:47:45,700 --> 00:47:50,300 در زبان های دیگر مانند روبی و پایتون، 763 00:47:50,300 --> 00:47:56,810 شما باید از طریق کار کمی بیشتر به دریافت سایت های اولیه در حال اجرا. 764 00:47:56,810 --> 00:48:02,730 نیز وجود دارد - حداقل آن استفاده می شود مورد - که مدارک بیشتری وجود دارد 765 00:48:02,730 --> 00:48:05,480 موجود برای PHP فقط به خاطر اینکه تعداد بیشتری از مردم به استفاده از آن وجود دارد. 766 00:48:05,480 --> 00:48:09,370 من فکر می کنم که دیگر نه به عنوان حد از یک موضوع. 767 00:48:09,370 --> 00:48:12,520 قطعا اسناد و مدارک بسیار خوبی برای چیزهای مانند روبی در آهن وجود دارد 768 00:48:12,520 --> 00:48:16,080 و یا جنگو برای پایتون معادل است. 769 00:48:16,080 --> 00:48:25,910 PHP است که همه را با استفاده از سال ها است، و شما می دانید که چگونه کار می کند. 770 00:48:25,910 --> 00:48:28,460 روبی و پایتون را کمی کمتر بالغ می باشد. 771 00:48:28,460 --> 00:48:33,130 >> [حضار] اگر شما به بین یکی از آنها را انتخاب کنید برای یادگیری و یا بلند کردن، 772 00:48:33,130 --> 00:48:36,130 که شما ترجیح می دهید؟ 773 00:48:36,130 --> 00:48:38,870 راستش، من فکر می کنم که بستگی به فرد. 774 00:48:38,870 --> 00:48:45,450 من متاسفم. سوال این بود که شما انتخاب کنید برای کسی را یاد بگیرند؟ 775 00:48:45,450 --> 00:48:50,230 پایتون بهترین شخصا پیدا کنم. 776 00:48:50,230 --> 00:48:55,360 هستند بسیاری از افرادی که وجود دارد - من اولین پروژه توسعه تمدن وب من در پایتون و جنگو بود. 777 00:48:55,360 --> 00:49:00,300 هستند بسیاری از افرادی که دوست روبی در آهن نیز وجود دارد. 778 00:49:00,300 --> 00:49:02,650 مردم احتمالا بیشتر که روبی می دانم که در آهن. 779 00:49:02,650 --> 00:49:05,270 راستش، من فقط می خواهم با هر آنچه که مردم در اطراف شما می دانید بروید 780 00:49:05,270 --> 00:49:09,680 به طوری که شما مردم باید سوال بپرسید. 781 00:49:19,640 --> 00:49:24,170 >> سوال این بود - بر روی سرور به اشتراک گذاشته شده است نوع سخت به کار در پایتون؟ 782 00:49:24,170 --> 00:49:26,170 این بستگی دارد که میزبانی خود را. 783 00:49:26,170 --> 00:49:29,400 تعدادی از میزبان وب را که چیزهای پایتون ارسال وجود دارد. 784 00:49:29,400 --> 00:49:31,400 WebFaction می کند که، درست است؟ 785 00:49:31,400 --> 00:49:34,400 WebFaction که بیلی و من برای برخی از پروژه ها مورد استفاده قرار گرفته است. 786 00:49:34,400 --> 00:49:37,750 آنها واقعا بزرگ هستند. آنها اغلب زبان پشتیبانی کند. 787 00:49:37,750 --> 00:49:40,020 اما این درست است که PHP است که بسیار به طور گسترده ای پشتیبانی می کند. 788 00:49:40,020 --> 00:49:45,210 بنابراین، اگر شما به یک میزبان وب است که تنها به PHP گیر، که دلیل خوبی برای استفاده از PHP است. 789 00:49:45,210 --> 00:49:56,010 >> [حضار] من فقط به آموزش نحوه به پرس و جو برخی از پایگاه های داده کردم، 790 00:49:56,010 --> 00:50:00,680 و من می دانم SQL من است همه جا، اما من به تازگی به معرض شدم - 791 00:50:00,680 --> 00:50:04,470 و شما آن را اشاره کرد. شما JSON و پایگاه داده ها ارتقا را ببینید. 792 00:50:04,470 --> 00:50:14,580 SQL من هنوز هم همه جا. چگونه است که اتفاق می افتد را مشاهده می کنید؟ 793 00:50:14,580 --> 00:50:21,330 آیا برای رفتن به یک تمایل رو به رشد برای ارتقا تر (نامفهوم)؟ 794 00:50:21,330 --> 00:50:30,100 سوال این بود - من فکر می کنم برای رفتن به سمت پایگاه های داده غیر SQL وجود دارد. 795 00:50:30,100 --> 00:50:33,850 به عنوان مثال، مانند MongoDB. من فکر می کنم که قطعا درست است. 796 00:50:33,850 --> 00:50:38,730 توصیه من بیشتر در اینجا خروجی زیر مربوط فقط به این دلیل خروجی زیر است 797 00:50:38,730 --> 00:50:40,950 استاندارد صنعت. 798 00:50:40,950 --> 00:50:45,950 من شخصا ترجیح میدهم از پایگاه داده که schemos مانند MongoDB ندارد 799 00:50:45,950 --> 00:50:49,520 که در آن شما را به موضوع ندارد، اوه، من نیاز به اضافه کردن ستون دیگر. 800 00:50:49,520 --> 00:50:51,600 وای بر من، مانند هر چیز دیگری می توانم بکنم؟ 801 00:50:51,600 --> 00:50:55,840 خیلی سخت است برای انجام این کار در خروجی، اما هنگامی که شما به چیزی شبیه به Mongo ها 802 00:50:55,840 --> 00:50:57,840 آن را به مراتب بهتر است. 803 00:50:57,840 --> 00:51:03,780 چیز خوب دیگر در مورد Mongo ها این است که مدارک خود را در واقع اشیاء جاوا اسکریپت. 804 00:51:03,780 --> 00:51:10,110 هیچ نوع مرحله تبدیل که در آن شما نیاز به این ردیف های پایگاه داده وجود دارد 805 00:51:10,110 --> 00:51:13,140 و آنها را تبدیل به یک شی جاوا اسکریپت و سپس ارسال آنها بیش از سیم. 806 00:51:13,140 --> 00:51:20,290 من فکر می کنم چیزهای مانند آن است که رفتن به بسیار، بسیار مفید برای توسعه وب سریعتر در آینده است. 807 00:51:20,290 --> 00:51:23,060 >> [بیلی] چیزی باید اضافه کنم که فقط یک نکته کلی این است که 808 00:51:23,060 --> 00:51:26,580 احساس نمی مانند شما باید همه زبان های که بحث آموخته 809 00:51:26,580 --> 00:51:28,580 از سمینار ما. 810 00:51:28,580 --> 00:51:30,560 بدیهی است که نکته این است که شما یک ایده از آنچه در خارج وجود دارد را، 811 00:51:30,560 --> 00:51:33,450 و اگر شما با هر یک از چیزهایی که ما ذکر کرده ام مجذوب شما می توانید آنها را گوگل 812 00:51:33,450 --> 00:51:35,830 و بخوانید تا در مورد آنها. 813 00:51:35,830 --> 00:51:38,750 و به عنوان اشاره کردم، در چند سمینار که با دقیقا این چیزها برخورد وجود دارد. 814 00:51:38,750 --> 00:51:41,660 می سمینارها و حتی بیشتر که من آن ذکر نشده است که احتمالا به گرفتن وجود دارد 815 00:51:41,660 --> 00:51:43,660 این مسائل نیز هست. 816 00:51:43,660 --> 00:51:46,610 ایده این است که اگر شما می خواهید برای کار بر روی چیزی، در اینجا ابزار در اختیار شما می باشد. 817 00:51:46,610 --> 00:51:51,630 آیا احساس ضعف اگر شما واقعا مطمئن شوید که این ابزار انجام دقیقا همان نیست، 818 00:51:51,630 --> 00:51:54,830 اما می دانم که آنها در خارج وجود دارد و که شما می توانید استفاده گسترده از آنها را می 819 00:51:54,830 --> 00:51:56,830 توسط گوگل. 820 00:51:56,830 --> 00:51:59,960 >> [حضار] چه نوع چیزهایی را که باید انجام دهید تا مطمئن شوید که وب سایت شما 821 00:51:59,960 --> 00:52:02,530 به نظر می رسد خوب بر روی دستگاه های تلفن همراه؟ 822 00:52:02,530 --> 00:52:05,590 [بیلی] دستگاه های تلفن همراه می باشد کمی سخت است. 823 00:52:05,590 --> 00:52:07,590 2 روش شما می توانید آن را نزدیک وجود دارد. 824 00:52:07,590 --> 00:52:11,500 راه اول این است که شما در واقع یک وب سایت تلفن همراه. 825 00:52:11,500 --> 00:52:14,660 به عبارت دیگر، شما انجام نوعی از تشخیص در ابتدا 826 00:52:14,660 --> 00:52:18,830 هنگامی که مرورگر در حال انجام درخواست خود را به وب سایت خود را که یا می گوید: 827 00:52:18,830 --> 00:52:25,240 بازگشت این دیدگاه - که خواهد شد نمایش برای مرورگرهای رومیزی و یا لپ تاپ - 828 00:52:25,240 --> 00:52:27,710 و این دیدگاه دیگر برای دستگاه های تلفن همراه. 829 00:52:27,710 --> 00:52:33,090 این محل که در آن نمایش در که واقعا خوب هستند شما می توانید مبادله بسیار است 830 00:52:33,090 --> 00:52:37,580 دو نفر و یک رابط کاربری است که با این نسخهها کار واقعا خوبی در دستگاه های تلفن همراه 831 00:52:37,580 --> 00:52:40,770 و یک کاملا متفاوت است که کار می کند به سادگی بر روی دستگاه های مرورگر. 832 00:52:40,770 --> 00:52:43,770 مشکل با آن شده است آن را به زمان طولانی این یعنی برنامه نویسی 833 00:52:43,770 --> 00:52:47,060 رابط کاربری کاملا متفاوت است. 834 00:52:47,060 --> 00:52:49,720 راه دیگر که شما می توانید آن را انجام دهید این است - 835 00:52:49,720 --> 00:52:55,250 بسیاری از گوشی های مدرن وب سایت نمایش داده و سعی کنید که آنها را به عنوان مرورگر وب، 836 00:52:55,250 --> 00:52:57,680 و آنها بهترین کار خود را. 837 00:52:57,680 --> 00:53:04,340 شما می توانید نوع امتحان کنید به ماندن نور را در مقدار از jQuery جاوا اسکریپت شما با استفاده از 838 00:53:04,340 --> 00:53:07,360 که گرایش به جایی که اشتباه می تواند به کمی. 839 00:53:07,360 --> 00:53:13,430 این نوع راه است که شما باید استفاده کنید اگر شما آن زمان خیلی زیادی نمی باشد. 840 00:53:13,430 --> 00:53:18,540 اگر شما هم برای کار بر روی رابط کاربری تلفن همراه، که بدیهی است بهترین گزینه است. 841 00:53:18,540 --> 00:53:23,320 >> من فکر می کنم به طور کلی برای پروژه های CS50، شما به خواهید را انتخاب کنید یکی یا دیگری. 842 00:53:23,320 --> 00:53:27,990 به عبارت دیگر، شما می خواهید برای ایجاد یک برنامه تلفن همراه و یا می خواهید یک وب سایت روی کامپیوتر. 843 00:53:27,990 --> 00:53:32,200 و این نوع تعیین که در آن شما را با آن بروید. 844 00:53:32,200 --> 00:53:35,360 اما اگر شما می خواهید به آن گسترش از بعد، احتمالا بهترین شرط بندی شما است 845 00:53:35,360 --> 00:53:37,360 به رابط دیگری برای دیگر. 846 00:53:51,650 --> 00:53:56,340 من یک کمی از تجربه در حال توسعه سایت های مبتنی بر وردپرس. 847 00:53:56,340 --> 00:53:58,670 من برای مدتی میزبان یک وب سایت شخصی در وردپرس. 848 00:53:58,670 --> 00:54:02,310 این نوع از چارچوب می تواند به خوبی همه چیز را فقط به عنوان بسیار اساسی. 849 00:54:02,310 --> 00:54:07,050 اغلب اوقات شما فقط باید به بسیاری از مسائل customizability اجرا هر چند. 850 00:54:07,050 --> 00:54:10,940 شما می خواهید به چیزی نگاه یک راه خاص و یا یک راه خاص 851 00:54:10,940 --> 00:54:14,510 و شما نمی توانید فقط به خاطر آن سخت سیمی به سیستم که 852 00:54:14,510 --> 00:54:17,480 این است که چگونه شما را مجبور به انجام کارهای است که می تواند یک بیت از یک مشکل است. 853 00:54:17,480 --> 00:54:22,020 از آن پس من به نوعی بیشتر تمایل به کار با سایت های از زمین تا شده است. 854 00:54:22,020 --> 00:54:26,840 برای چیزهایی مانند پایگاه داده های وبلاگ و این نوع هستند که این واقعا سخت است نه به ایجاد یک چارچوب. 855 00:54:26,840 --> 00:54:29,970 اگر شما واقعا برای هم کشیده، شما البته می تواند چیزی شبیه به وردپرس استفاده 856 00:54:29,970 --> 00:54:33,120 یا آن نوع از چیزی که برای یک وبلاگ. 857 00:54:33,120 --> 00:54:38,790 انواع چیزهایی است که وبلاگ ها فروشگاه و انجام است واقعا سخت است به اندازه کافی نیست که 858 00:54:38,790 --> 00:54:41,500 اگر شما در حال اجرا را به هر یک از این نوع چیز، شما احتمالا بهترین فقط به 859 00:54:41,500 --> 00:54:43,500 یک نسخه در خانه. 860 00:54:43,500 --> 00:54:48,350 >> من فکر می کنم که در مورد آن، تا به لطف دوباره برای آینده. 861 00:54:48,350 --> 00:54:51,960 ما واقعا لذت بردم صحبت کردن به شما بچه ها و امیدوارم که برخی از چیزهای را که آموخته است. 862 00:54:51,960 --> 00:54:55,350 [بن] ما خوشحال گفتگو هستیم - ما باید برای رفتن، اما ما خوشحال به صحبت در خارج از تر هستید 863 00:54:55,350 --> 00:55:01,650 اگر شما یک سؤال دیگر. با تشکر دوباره. [تشویق حضار] 864 00:55:03,750 --> 00:55:06,000 [CS50.TV]