1 00:00:00,000 --> 00:00:02,916 2 00:00:02,916 --> 00:00:04,860 >> [موسیقی بجانے] 3 00:00:04,860 --> 00:00:10,210 4 00:00:10,210 --> 00:00:13,350 >> DAVID MALAN: یہ CS50 ہے، اور اس ہفتے آٹھ کا آغاز ہے. 5 00:00:13,350 --> 00:00:17,510 اور ہم نے استقبال کے لئے بہت حوصلہ افزائی کر رہے ہیں واپس، بڑا تعجب، CS50 اپنے Ramon کے 6 00:00:17,510 --> 00:00:22,160 GALVAN، کیا گیا ہے جو میں اضافے کا سینئر گزشتہ کئی ماہ کے خرچ 7 00:00:22,160 --> 00:00:26,190 LA میں جولائی کے بعد، ہالی وڈ میں، لفظی ایک نئے برانڈ ٹی وی پر کام کر رہے ہیں 8 00:00:26,190 --> 00:00:31,930 کالونی نامی شو، جس میں خالق اصل میں ایک ہارورڈ فٹکری خود ہے. 9 00:00:31,930 --> 00:00:36,610 اور ہم اس کو دیکھنے کے لئے بہت حوصلہ افزائی کر رہے امریکہ نیٹ ورک کے اس جنوری پہلی. 10 00:00:36,610 --> 00:00:40,370 تو اس کے لئے دیکھتے رہنا، اور ہفتے کے لئے زیادہ Ramon کے آنے. 11 00:00:40,370 --> 00:00:42,550 >> اختتام کے قریب ہے کہ اب مجھے پتہ ہے. 12 00:00:42,550 --> 00:00:47,400 اور کیا اس کا مطلب یہ نہیں ہے کہ تمام اتنا کہنا اداس، CS50 کے بائیں. 13 00:00:47,400 --> 00:00:49,400 ہم صرف تین مسئلہ ہے سیٹ ہے left-- 14 00:00:49,400 --> 00:00:52,510 مسئلہ میں ہے جس six-- مقرر اپنے ہاتھوں کو اب یا جلد ہی ہو جائے گا، 15 00:00:52,510 --> 00:00:56,080 بعد مراد ہے week-- اس پل کی وجہ سے کمانڈ لائن، جہاں ہماری دنیاؤں 16 00:00:56,080 --> 00:00:59,450 ہم استعمال کر ہمارے وقت کی سب سے زیادہ خرچ کیا ہے C، اور ویب پروگرامنگ کی دنیا. 17 00:00:59,450 --> 00:01:02,350 ٹھیک ہے، آپ کے خیالات کی ایک بہت کچھ دیکھیں گے کمانڈ لائن کام سے ادھار لیا، 18 00:01:02,350 --> 00:01:04,560 لیکن نئے کی بھی ایک بہت اور دلچسپ خیالات 19 00:01:04,560 --> 00:01:07,929 بھی متعلق ہونے جا رہے ہیں کہ موبائل کی ایپلی کیشنز اور ٹیکنالوجی، 20 00:01:07,929 --> 00:01:10,470 زیادہ عام طور پر، جس کے ساتھ آپ لوگ آج کل تمام واقف ہیں 21 00:01:10,470 --> 00:01:12,090 لیپ ٹاپ اور فونز اور طرح. 22 00:01:12,090 --> 00:01:15,220 >> تو کیا تم نہیں عمل درآمد کریں گے ایک ویب کے صفحے، یا ایک ویب سائٹ 23 00:01:15,220 --> 00:01:17,620 SE فی، لیکن ایک حقیقی ویب سرور. 24 00:01:17,620 --> 00:01:21,590 آپ کو ایک ویب سرور کے باقی لکھیں گے جس کا مقصد زندگی میں C، میں لکھا 25 00:01:21,590 --> 00:01:25,410 HTTP درخواست، ان حاصل کرنے کے لئے ہے ہم بات کر رکھنے مجازی لفافے 26 00:01:25,410 --> 00:01:29,780 کے بارے میں، اور اصل کے ساتھ یا تو کوئی جواب ایک نقطہ ایچ ٹی ایم ایل کی طرح کچھ جامد content-- 27 00:01:29,780 --> 00:01:32,310 فائل، یا ایک نقطہ JPEG یا فائلوں کے کسی بھی دوسرے نمبر، 28 00:01:32,310 --> 00:01:37,070 یا اس سے بھی ایک پی ایچ پی فائل ہے جس کے تحت آپ کی ویب سرور کہ پی ایچ پی کی تشریح کی جا رہی ہے 29 00:01:37,070 --> 00:01:38,332 کوڈ اور نتائج تھوکنے. 30 00:01:38,332 --> 00:01:40,540 اب، ہم کے ساتھ آپ کی فراہم کردہ فریم ورک کے بہت تھوڑا سا 31 00:01:40,540 --> 00:01:43,100 یقینا اندازہ لگانے کے لئے مسئلہ کے لئے تقسیم کے کوڈ 32 00:01:43,100 --> 00:01:47,496 چھ 1،000 سے زائد لائنیں طویل ہے سیٹ، ایک جن میں سے بہت تبصرے، fair-- ہونا ہے 33 00:01:47,496 --> 00:01:49,370 لیکن یہ واقعی کیا مراد ہے ایک موقع ہو جائے کرنے کے لئے 34 00:01:49,370 --> 00:01:52,570 گندی ڈائیونگ اپنے ہاتھوں کو حاصل کرنے کے لئے ایک کافی بڑی منصوبے میں 35 00:01:52,570 --> 00:01:55,570 ہم بہت خاص طور پر ہے کہ آپ کے لئے سے باہر کھدی ٹکڑے ٹکڑے، 36 00:01:55,570 --> 00:01:59,046 تاکہ واقعی آپ CS50 سے باہر نکلنے اور جب پروگرامنگ کی حقیقی دنیا میں داخل 37 00:01:59,046 --> 00:02:00,920 اور میں بگونا کرنا چاہتے ہیں منصوبوں کی کسی بھی تعداد، 38 00:02:00,920 --> 00:02:03,253 آپ کو بہت زیادہ پڑے گا سکون کچھ ذریعہ ڈاؤن لوڈ 39 00:02:03,253 --> 00:02:05,020 کوڈ، کچھ اوپن سورس ویب پر اس منصوبے، 40 00:02:05,020 --> 00:02:08,174 اور میں ڈائیونگ اور بنانے آپ فٹ دیکھتے ہیں کہ تبدیلیاں. 41 00:02:08,174 --> 00:02:11,340 مسئلہ سات کے بارے میں ہونے جا رہا ہے قائم آپ کی اپنی ویب کی بنیاد پر درخواست بنانے 42 00:02:11,340 --> 00:02:14,140 کہ متحرک ان پٹ لیتا ہے اور شکل میں متحرک پیداوار پیدا 43 00:02:14,140 --> 00:02:16,920 ایک etrade.com کی طرح ویب سائٹ کے. 44 00:02:16,920 --> 00:02:20,800 اور مسئلہ آٹھ ابھی تک توجہ دی جائے گی مقرر جاوا سکرپٹ کے طور پر جانا جاتا ہے دوسری زبان. 45 00:02:20,800 --> 00:02:24,170 >> دریں اثنا، آخری منصوبے افق پر ہے. 46 00:02:24,170 --> 00:02:26,800 نام نہاد پری تجویز آج سے ایک ہفتے کی وجہ سے ہے. 47 00:02:26,800 --> 00:02:29,930 تفصیلات کے مطابق پری proposal--، CS50 کی website-- پر جو 48 00:02:29,930 --> 00:02:33,260 ایک خوبصورت آرام دہ اور پرسکون مواقع کے لئے ہے آپ کو ایک خوبصورت succinct کے ای میل بھیجنے کے 49 00:02:33,260 --> 00:02:35,170 آپ کی تعلیم فیلو سے صرف اس سے آگاہ کرنے کے لئے 50 00:02:35,170 --> 00:02:38,250 یا آپ کیا سوچ رہے ہیں، کرنے کے لئے اس ایک آواز بورڈ کے طور پر اس کا یا اس کا استعمال کرتے ہیں. 51 00:02:38,250 --> 00:02:40,980 اور وویک ہے check-- آپ کیا سوچ رہے ہیں 52 00:02:40,980 --> 00:02:43,210 بھی بند کاٹ کے بارے میں بہت کم زیادہ سے زیادہ یا شاید، 53 00:02:43,210 --> 00:02:46,480 یا شاید آپ کو کوئی اندازہ نہیں ہے اور ایک بات چیت میں مشغول کرنا چاہتے ہیں. 54 00:02:46,480 --> 00:02:48,480 >> اس کے بعد ایک تجویز ہے اور حیثیت کی رپورٹ، 55 00:02:48,480 --> 00:02:51,860 یہاں میں نام نہاد ہے CS50 Hackathon ہارورڈ اور ییل طالب علموں کے لئے کیمبرج 56 00:02:51,860 --> 00:02:52,362 آپس میں ایک جیسے. 57 00:02:52,362 --> 00:02:54,320 حتمی منصوبے کے نفاذ کے بعد کی وجہ سے ہے. 58 00:02:54,320 --> 00:02:59,290 اور پھر یہاں ایک CS50 منصفانہ، کیمبرج میں، اس کے ساتھ ساتھ نیو ہیون میں ایک کے طور پر. 59 00:02:59,290 --> 00:03:02,500 تجویز تو، پر ایک نظر ڈالیں ان تفصیلات کے لئے ویب سائٹ. 60 00:03:02,500 --> 00:03:06,530 >> لیکن excitingly، بھی، ایک موقع آپ کے ہاتھ گندی حاصل کرنے کے لئے، 61 00:03:06,530 --> 00:03:09,350 اور مجموعی کے لئے کھلا اپنے ذہنوں موضوعات اور آلات کی گروپ 62 00:03:09,350 --> 00:03:12,920 اور اس کی تکنیک ذیلی ہیں کورس کا بنیادی نصاب کے، 63 00:03:12,920 --> 00:03:14,810 لیکن بہر حال سے متعلق. 64 00:03:14,810 --> 00:03:18,400 اور بھی بہت اچھا قدم رکھ پتھر حقیقی معنی میں ٹھنڈے آخری منصوبوں کر رہا ہے کہ 65 00:03:18,400 --> 00:03:22,020 اچھی طرح سے مواد سے باہر ہم احاطہ کرتا ہے جانا باضابطہ طور پر مسئلہ میں سیٹ یا لیکچر میں. 66 00:03:22,020 --> 00:03:24,446 تو اس کے لئے CS50 کی ویب سائٹ پر جائیں سیمینار کے پورے روسٹر. 67 00:03:24,446 --> 00:03:26,070 اگر آپ نے ابھی رجسٹر نہیں کرتے ہیں تو، یہ ٹھیک ہے. 68 00:03:26,070 --> 00:03:29,860 آگے بڑھو اور اب سائن اپ کریں اور ہم ایک لائیو اسٹریمنگ کی لنک کے ساتھ اپ کی پیروی، 69 00:03:29,860 --> 00:03:31,844 دن اور وقت ویب سائٹ پر ہے. 70 00:03:31,844 --> 00:03:33,760 اور سب کچھ ہو جائے گا ریکارڈ اور آن لائن ڈال دیا 71 00:03:33,760 --> 00:03:35,800 آپ کو بنانے کے نہیں کر سکتے ہیں خاص طور پر دن اور اوقات. 72 00:03:35,800 --> 00:03:39,380 >> thereafter-- اچھی طرح سے آگے واقع ہے کے طور پر، کورس کے، ہے CS50 Hackathon ہے. 73 00:03:39,380 --> 00:03:43,560 لیا ہفتے صفر سے یہ تصویر، یاد، گزشتہ سالوں میں شام سے ایک ہوں 4 کے ارد گرد. 74 00:03:43,560 --> 00:03:46,900 CS50 میلے، جو ایک بار پھر دونوں شہروں میں جگہ لے جائے گا. 75 00:03:46,900 --> 00:03:49,760 اور پھر، صرف پلانٹ بیج، یہاں تک کہ اب بھی ہم اگرچہ 76 00:03:49,760 --> 00:03:54,080 ایک ماہ ہے کے علاوہ اگر، سمسٹر کے بائیں آپ CS50 کی اپنی تعلیم میں شامل کرنا چاہوں گا 77 00:03:54,080 --> 00:03:56,770 عملے، اور آپ کو شروع کرنا چاہتے ہیں CA بننے کے بارے میں سوچ، 78 00:03:56,770 --> 00:03:59,550 یا تعلیم فیلو، جانتے ہیں کہ ہم اس بارے میں مزید گفتگو شروع کریں گے 79 00:03:59,550 --> 00:04:00,630 بعد میں اس سمسٹر. 80 00:04:00,630 --> 00:04:03,470 لیکن یہاں تصویر اس سال کی ٹیم کے سب سے زیادہ. 81 00:04:03,470 --> 00:04:06,950 >> اور اس طرح، PHP-- اور مجھے بہت دکھ کی بات تھی گزشتہ ہفتے [ہے؟ Allyse؟] حسن معاشرت اور اچھا 82 00:04:06,950 --> 00:04:09,370 حاصل کرنے کی کوشش کرنے کے لئے چلا گیا ہمیں ان شاندار جاتا 83 00:04:09,370 --> 00:04:11,720 میں استعمال کرتے ہوئے ختم نہیں کیا تھا کہ، یہ اتنا واقعی صرف پاگل کی طرح لگ رہا تھا 84 00:04:11,720 --> 00:04:15,160 ہم سب یہاں بیٹھ کر ایک بیلچہ تھا کہ دن گزشتہ بدھ، اور ایک چھوٹا سا چمچ. 85 00:04:15,160 --> 00:04:17,709 لیکن یہ میری metaphoric تھا پینٹ کرنے کی کوشش کی راہ 86 00:04:17,709 --> 00:04:21,600 ہم کیوں تبدیل کر رہے ہیں کی تصویر C کی طرف سے پی ایچ پی کی طرح ایک زبان میں. 87 00:04:21,600 --> 00:04:25,480 اور اسی کسی کے بارے میں کہا جا سکتا ہے زبانوں میں جاوا، ازگر، روبی کی تعداد 88 00:04:25,480 --> 00:04:31,270 others-- لیکن میں جبکہ یا گچھے سی، مثال کے طور پر، C میں ایک پروگرام لکھنے 89 00:04:31,270 --> 00:04:34,050 عام طور پر کی طرح ہو سکتا ہے اس طرح ایک چمچ لے 90 00:04:34,050 --> 00:04:36,770 میں ایک سوراخ کھدائی زمین، ریت یا مٹی میں. 91 00:04:36,770 --> 00:04:39,770 پی ایچ پی کی آپ کو بہت لینے کے لئے کی اجازت دیتا ہے مسئلہ سے باہر بڑا کاٹنے، 92 00:04:39,770 --> 00:04:42,842 کہیں کم کوڈ لکھنے کہیں چھوٹے آلے کا استعمال کرتے، 93 00:04:42,842 --> 00:04:45,050 اتنا زیادہ ہے کیونکہ فعالیت میں pieced کیا. 94 00:04:45,050 --> 00:04:47,633 >> اب، ہم واقعی ڈرامائی تھے تو، ہم بیلچہ کرنے کے لئے کچھ پڑے گا 95 00:04:47,633 --> 00:04:48,760 یہاں، لیکن تو یہ ہو جائے. 96 00:04:48,760 --> 00:04:51,370 دریں اثنا، دیگر استعارہ ہم کے ساتھ آئے 97 00:04:51,370 --> 00:04:53,770 کورس کے، آپ کر سکتے تھے، ہے ایک رنچ کی طرح کچھ کا استعمال کرتے ہیں 98 00:04:53,770 --> 00:04:56,610 ایک کیل کی طرح کچھ میں ہتھوڑا. 99 00:04:56,610 --> 00:04:58,980 لیکن کورس کے، حق استعمال کرنے کے لئے کے آلے رہا ہے 100 00:04:58,980 --> 00:05:01,360 اتنا نہیں ہونا زبان کہا جاتا C-- 101 00:05:01,360 --> 00:05:03,590 اور اب میں صرف ناراض [؟ سینڈرز،؟] شاید، 102 00:05:03,590 --> 00:05:07,890 ہم تو اس later-- ٹھیک کر دونگا حق کے آلے اکثر استعمال کرنے کے لئے 103 00:05:07,890 --> 00:05:09,640 ہو نہیں جا رہا ہے اس کی سب سے کم سطح کے آلے. 104 00:05:09,640 --> 00:05:13,720 اور بے شک، C ایک زبان نہیں ہے تم میں سے سب سے زیادہ کبھی، استعمال کرنے کے لئے جا رہے ہیں 105 00:05:13,720 --> 00:05:15,590 یا ضروری ایک بار پھر استعمال کرنا چاہئے. 106 00:05:15,590 --> 00:05:18,350 >> اور حقیقت میں، ایک چھوٹا سا صرف وقت راز 107 00:05:18,350 --> 00:05:23,160 میں سی خود کے درمیان بہت زیادہ ہے کا استعمال کرتے ہیں ہر موسم خزاں کے ستمبر اور دسمبر 108 00:05:23,160 --> 00:05:23,870 سمسٹر. 109 00:05:23,870 --> 00:05:25,790 اور اس وجہ سے ہم ایک موقع کے طور پر استعمال 110 00:05:25,790 --> 00:05:27,852 بنیادی اصولوں کو سکھانے کے لئے پروگرامنگ کی، 111 00:05:27,852 --> 00:05:29,810 اور یہ کمپیوٹر کے ساتھ سائنس کے بنیادی اصولوں، کے اعداد و شمار 112 00:05:29,810 --> 00:05:32,435 ڈھانچے، یلگوردمز اور like-- لیکن بہت جلد آپ کو 113 00:05:32,435 --> 00:05:35,010 نحو کہ اب دیکھیں اور خیالات سی بنیادی 114 00:05:35,010 --> 00:05:37,530 اتنی حیرت انگیز ہیں زیادہ جدید کے قابل منتقلی 115 00:05:37,530 --> 00:05:41,130 اعلی درجے کی زبانوں، طرح پی ایچ پی اور ازگر اور پرل اور اعلی درجے کا Java 116 00:05:41,130 --> 00:05:46,750 اور مقصد C--، اتنا نہیں اصل مقصد C-- لیکن سوئفٹ، ان نئے 117 00:05:46,750 --> 00:05:50,010 زبانوں کہ آپ کے بہت سے Will پھر آپ کی آخری منصوبے کے ساتھ بگونا. 118 00:05:50,010 --> 00:05:55,070 >> مزید ado کے بغیر تو، اصل میں چلو کچھ مسائل کو حل کرنے کے لئے پی ایچ پی کا استعمال کرتے ہیں. 119 00:05:55,070 --> 00:06:00,230 آخری، کہ ابتدائی طور پر یاد کرتے ہیں ہفتے، ہم صرف استعمال کیا جاتا ہے CS50 IDE، 120 00:06:00,230 --> 00:06:02,990 ہم ایک چھوٹا سا پروگرام ڈنکی لکھا کہ صرف "ہیلو دنیا."، انہوں نے کہا کہ 121 00:06:02,990 --> 00:06:05,680 اور پھر میں میں محفوظ کر ایک فائل hello.php کے بلایا. 122 00:06:05,680 --> 00:06:07,280 اور پھر میں یہ کمانڈ بھاگ گیا. 123 00:06:07,280 --> 00:06:08,080 >> اور کیوں؟ 124 00:06:08,080 --> 00:06:09,900 انگریزی میں، یہاں کیا چل رہا ہے؟ 125 00:06:09,900 --> 00:06:12,760 میں جب کیا کر رہا تھا میں اس حکم پر بھاگ گیا؟ 126 00:06:12,760 --> 00:06:13,405 >> جی ہاں؟ 127 00:06:13,405 --> 00:06:16,572 >> سامعین: کچھ تقریب پی ایچ پی نہیں ہے کہ in-- سمجھتا ہے کہ کیا لکھا ہے. 128 00:06:16,572 --> 00:06:19,696 DAVID MALAN: اچھا، کچھ تقریب ہے PHP-- اور مجھ سے زیادہ مخصوص ہو، 129 00:06:19,696 --> 00:06:21,810 پی ایچ پی نامی ایک پروگرام a.k.a.، وہاں ہے 130 00:06:21,810 --> 00:06:25,872 سمجھتا ہے کہ ایک مترجم، hello.php کے کے مواد، 131 00:06:25,872 --> 00:06:27,830 اور سب سے اوپر اس کی تعبیر نیچے، بائیں سے دائیں 132 00:06:27,830 --> 00:06:29,590 اور ان لوگوں کو حکم دیتا ہے کا کہنا ہے کہ کرتا ہے. 133 00:06:29,590 --> 00:06:33,320 hello.php میں حکم دیتا ہے، کورس کے، صرف code-- افعال ذریعہ ہے 134 00:06:33,320 --> 00:06:35,750 اور متغیر اور loops اور کی طرح، ہم نے خود کو اس 135 00:06:35,750 --> 00:06:37,460 پی ایچ پی میں تحریری طور پر شروع کر دیا ہے. 136 00:06:37,460 --> 00:06:40,240 >> لیکن C کے برعکس، جس میں ایک مرتب زبان، 137 00:06:40,240 --> 00:06:42,810 پی ایچ پی کی آپ کو صرف یہ لکھنا، اور اسے چلاتے ہیں. 138 00:06:42,810 --> 00:06:46,420 آپ کے اس مرحلے کو چھوڑ بچولیا zeros اور ہیں میں تبدیل، 139 00:06:46,420 --> 00:06:47,790 اور پھر اسے چلانے. 140 00:06:47,790 --> 00:06:50,510 اور اس طرح اس کی ایک الٹا کیا ہے؟ 141 00:06:50,510 --> 00:06:52,690 کیوں ہم قدم اچٹیں ہے؟ 142 00:06:52,690 --> 00:06:55,238 کیوں زیادہ جدید زبانوں کرتے اس مرحلے کو چھوڑ کے لئے ہوتے ہیں؟ 143 00:06:55,238 --> 00:06:58,880 144 00:06:58,880 --> 00:07:01,220 فائدہ کیا ہے؟ 145 00:07:01,220 --> 00:07:02,080 >> یا صرف intuitively؟ 146 00:07:02,080 --> 00:07:04,200 ہم نہیں ہے یہاں تک کہ اگر سے بہت پہلے پی ایچ پی لکھا، 147 00:07:04,200 --> 00:07:07,210 کیا نہیں کے بارے میں فائدہ مند ہے اپنے کوڈ کو مرتب آپ سوچتے ہیں؟ 148 00:07:07,210 --> 00:07:08,520 نہیں؟ 149 00:07:08,520 --> 00:07:09,610 کا ارتکاب نہیں ہے؟ 150 00:07:09,610 --> 00:07:11,350 اپنے سر scratching؟ 151 00:07:11,350 --> 00:07:12,614 جی ہاں. 152 00:07:12,614 --> 00:07:13,600 >> سامعین: زیادہ متحرک. 153 00:07:13,600 --> 00:07:14,683 >> DAVID MALAN: زیادہ متحرک؟ 154 00:07:14,683 --> 00:07:16,032 کیا مطلب؟ 155 00:07:16,032 --> 00:07:17,000 >> سامعین: [اشراوی] 156 00:07:17,000 --> 00:07:20,349 157 00:07:20,349 --> 00:07:22,390 DAVID MALAN: ٹھیک ہے، اچھا، تو ان پٹ پر منحصر ہے، 158 00:07:22,390 --> 00:07:23,470 آپ اسے ہر وقت مرتب کرنے کی ضرورت نہیں. 159 00:07:23,470 --> 00:07:24,990 اور یہ واقعی ہے that-- طور پر آسان کیا 160 00:07:24,990 --> 00:07:26,990 جاری رکھنے کی بات یہ ہے اپنے کوڈ کو مرتب کرنے کے لئے؟ 161 00:07:26,990 --> 00:07:29,480 یہ ہے کہ صرف ایک قدم ہے making-- اس، کی ضرورت ہوتی ہے ہے 162 00:07:29,480 --> 00:07:31,900 گزشتہ کئی کے لئے ہفتے میں دو بار کے طور پر کئی اقدامات 163 00:07:31,900 --> 00:07:33,820 کے طور پر صرف آپ کے پروگرام چل رہا ہے. 164 00:07:33,820 --> 00:07:36,940 یہ آپ کو اس کو دیکھ کر میں مفید ہو گیا ہے ، تو آگے کچھ خرابی کے پیغامات اور دیکھیں 165 00:07:36,940 --> 00:07:38,720 لیکن یہ اب بھی صرف ایک پریشان قدم ہے. 166 00:07:38,720 --> 00:07:41,810 >> اور اس طرح پروگرامرز احساس وقت کے ساتھ ساتھ، ہم کیوں نہیں کرتے 167 00:07:41,810 --> 00:07:45,327 نہیں ہے کہ زبانوں لکھنا شروع ، کہ منصفانہ میکانی قدم کی ضرورت ہے 168 00:07:45,327 --> 00:07:47,160 تو یہ صرف لکھ سکتے ہیں آپ کے کوڈ اور اسے چلاتے ہیں. 169 00:07:47,160 --> 00:07:48,920 لیکن قیمت کیا تھا ہم ادائیگی دیکھا کہ 170 00:07:48,920 --> 00:07:50,910 ایک خاص طور پر مثال کے طور پر، ہفتہ پچھلا؟ 171 00:07:50,910 --> 00:07:51,650 جی ہاں؟ 172 00:07:51,650 --> 00:07:52,370 >> سپیڈ. 173 00:07:52,370 --> 00:07:54,690 تو [؟ ؟] ترجمانوں کیا ہے ایک چھوٹا سا سست، 174 00:07:54,690 --> 00:07:57,330 کہ zeros اور ہیں اچھا اور ایک کمپیوٹر کے لئے تیزی سے 175 00:07:57,330 --> 00:08:00,070 کو سمجھنے کے لئے، کیونکہ انٹیل CPU، یا جو کچھ بھی ہے، 176 00:08:00,070 --> 00:08:03,070 صرف کیا ہو رہا ہے سمجھتا ہے بٹس کی ان نمونوں کے ساتھ. 177 00:08:03,070 --> 00:08:05,370 ایک مترجم جبکہ پروگرام ہے کہ واقعی ہے 178 00:08:05,370 --> 00:08:07,980 ASCII ذریعہ کو پڑھنے کے لئے ہے آپ نے لکھا ہے کہ کوڈ، 179 00:08:07,980 --> 00:08:12,700 اور اس میں تبدیل، تو بات، یا یہ بالآخر بدلتا کس طرح پتہ 180 00:08:12,700 --> 00:08:13,525 zeros اور ہیں کرنے کے لئے. 181 00:08:13,525 --> 00:08:15,650 تو یہ صرف ایک چھوٹی سی لیتا ہے ایک کی کارکردگی ہٹ کے سا. 182 00:08:15,650 --> 00:08:16,858 تو یہ ایک تجارتی آف کے تھوڑا سا ہے. 183 00:08:16,858 --> 00:08:21,570 ہم یہاں ایسا اب اگر، مجھے دو آگے بڑھو اور مندرجہ ذیل کے طور پر ایک مثال. 184 00:08:21,570 --> 00:08:26,610 میں یہاں جاتے ہیں، نئی فائل، میں جا رہا ہوں پھر اس کو بچانے کے لئے hello.php کے ہے. 185 00:08:26,610 --> 00:08:31,450 اور اب میں آگے جانے کے لئے جا رہا ہوں اور "پرنٹ ہیلو دنیا"، کا کہنا ہے کہ - 186 00:08:31,450 --> 00:08:35,130 اور میں پرنٹ استعمال کر سکتے ہیں یاد، میں ایسا نہیں کرتے پرنٹ F کا استعمال کرنا پڑے. اور اب یہاں نیچے، 187 00:08:35,130 --> 00:08:42,039 میں hello.php کے پی ایچ پی کرتے ہیں تو، huh-- میں اس کی تشریح ہے لگ رہے ہو نہیں. 188 00:08:42,039 --> 00:08:43,412 میں نے کیا غلط کیا؟ 189 00:08:43,412 --> 00:08:44,710 >> سامعین: angled ہے کمگن. 190 00:08:44,710 --> 00:08:47,015 >> DAVID MALAN: جی ہاں، آپ کی ضرورت ہے کہ زاویہ بریکٹ اوپر. 191 00:08:47,015 --> 00:08:49,390 تو یہ پریشان کن کی قسم، ہے لیکن آپ کو تیزی سے اس کی عادت ہو. 192 00:08:49,390 --> 00:08:53,500 میں پی ایچ پی کوڈ لکھنے کے لئے ہے تو، میں عام طور پر پروگرام بتانے کی ضرورت ہے، 193 00:08:53,500 --> 00:08:56,950 یا ارے، ترجمان بتانے پی ایچ پی، یہاں کچھ پی ایچ پی کوڈ آتا ہے. 194 00:08:56,950 --> 00:09:00,440 اور پھر اچھا اقدام کے لئے، میں کروں گا اس کے ساتھ یہ بند، بلکہ 195 00:09:00,440 --> 00:09:03,740 صرف سوالیہ نشان زاویہ کے ساتھ بریکٹ، اب یہاں نیچے تاکہ، 196 00:09:03,740 --> 00:09:06,840 میں ایک بار پھر اس چلاتے ہیں، اب میں مطلوبہ نتائج حاصل. 197 00:09:06,840 --> 00:09:09,820 >> اب ایک معمولی اصلاح کرتے ہیں، صرف تم سے پہلے اسے دیکھا ہے تاکہ. 198 00:09:09,820 --> 00:09:14,040 اس قسم کے پریشان کن ہے مجھے لگتا ہے کہ پی ایچ پی کی جگہ hello.php کے چلانے کے لئے ہے، 199 00:09:14,040 --> 00:09:16,060 کیونکہ ماضی میں صرف ڈاٹ سلیش لکھ سکتے تھے 200 00:09:16,060 --> 00:09:17,560 اچھی قسم کا ہے جس میں پروگرام کا نام،. 201 00:09:17,560 --> 00:09:19,420 یہ ایک بہتر صارف کے تجربے کی طرح ہے. 202 00:09:19,420 --> 00:09:24,160 >> یہ باہر کر دیتا تو آپ ایسا کر سکتے ہیں مندرجہ ذیل میں اس کے ساتھ پی ایچ پی میں 203 00:09:24,160 --> 00:09:28,780 یہ کافی خفیہ استعمال کر سکتے ہیں یہاں سب سے اوپر منتر، 204 00:09:28,780 --> 00:09:31,740 جو عام طور پر ایک shebang کی کہا جاتا ہے، یہ ایک تیز علامت ہے جس کے تحت، 205 00:09:31,740 --> 00:09:34,270 تو بات کرنے کی، یہ ایک دھماکے کی آواز ہے یا ایک فجائیہ نقطہ. 206 00:09:34,270 --> 00:09:38,490 اور اب یہ ایک پروگرام کا راستہ ہے ایک عام لینکس نظام پر 207 00:09:38,490 --> 00:09:41,500 ماحول، یا ENV کہا جاتا ہے. 208 00:09:41,500 --> 00:09:43,920 یہ لمبی کہانی line-- short-- لائن صرف ایک 209 00:09:43,920 --> 00:09:48,710 کمپیوٹر ارے، پی ایچ پی کی تلاش، کا کہنا ہے کہ ماحول میں میرے لئے مترجم، 210 00:09:48,710 --> 00:09:50,610 تو بات کرنے کی، آپ کی یاد میں اسے تلاش. 211 00:09:50,610 --> 00:09:54,130 >> اور، اب اچھا کیا ہے کہ میں یہاں نیچے جاتے ہیں، 212 00:09:54,130 --> 00:09:57,750 میں ڈاٹ سلیش کر سکتے ہیں ہیلو ڈاٹ پی ایچ پی، or-- ہمم. 213 00:09:57,750 --> 00:09:59,000 اجازت نہیں دی گئی. 214 00:09:59,000 --> 00:10:02,350 ویسے، آپ کو اس سے بھی زیادہ نظر آئے گا اگر آپ اس مسئلے سے، سات سیٹ 215 00:10:02,350 --> 00:10:04,060 پہلے سے ہی نہیں، اجازت کے ساتھ ہے. 216 00:10:04,060 --> 00:10:06,510 یہ میں نے کی ضرورت ہے کہ باہر کر دیتا ہے یہ کمانڈ پر عمل کرنے کی 217 00:10:06,510 --> 00:10:10,779 [بلایا؟ chamod؟] تبدیلی کے لئے ایک پلس X hello.php کے mode--. 218 00:10:10,779 --> 00:10:13,820 میں [اشراوی] اضافی یہ ایک ضرورت ہے میرے کمپیوٹر کہہ رہا ہے جس کے قدم، 219 00:10:13,820 --> 00:10:16,400 hello.php کے کارکردگی بنانے. 220 00:10:16,400 --> 00:10:21,310 اور اب ڈاٹ کیا ہوتا ہے دیکھتے ہیں hello.php کے سلیش، یہ صرف چلتا ہے. 221 00:10:21,310 --> 00:10:23,310 مجھے وضاحت کرنے کی ضرورت نہیں اب مترجم. 222 00:10:23,310 --> 00:10:26,680 اور میں یہ بھی خوبصورت بنا سکتے ہیں، اب بھی، تو میں اس چیز کا نام تبدیل. 223 00:10:26,680 --> 00:10:30,570 میں صرف hello.php کے منتقل Hello-- تو، سب سے اوپر بائیں میں محسوس 224 00:10:30,570 --> 00:10:32,860 پروگرام کا نام ہے یقینا اب صرف ہیلو. 225 00:10:32,860 --> 00:10:37,300 اب میں ایک سی پروگرام کی طرح نظر کر سکتے ہیں، یہ PHP-- میں لکھا ہے، اگرچہ 226 00:10:37,300 --> 00:10:39,210 یا واضح طور کسی بھی تعداد دیگر زبانوں میں. 227 00:10:39,210 --> 00:10:41,480 >> تو معمولی اضافہ، کوئی فعال فرق. 228 00:10:41,480 --> 00:10:44,460 لیکن یہ صرف ایک چھوٹا سا تجسس ہے اب، آپ کے پروگراموں لکھ سکتے ہیں تاکہ 229 00:10:44,460 --> 00:10:48,989 کسی بھی زبان میں، اور صارف نہیں ہے جانتے ہیں یا وہ لوگ ہیں جو دیکھ بھال کرنا ہے. 230 00:10:48,989 --> 00:10:51,030 ٹھیک ہے، ایک سے زیادہ کو دیکھو مجبور مثال اب 231 00:10:51,030 --> 00:10:52,850 میں پیشگی میں اپ whipped کہ. 232 00:10:52,850 --> 00:10:54,955 اور اس کے quote.php کہا جاتا ہے. 233 00:10:54,955 --> 00:10:56,740 اور یہ آن لائن دستیاب ہے. 234 00:10:56,740 --> 00:11:00,299 اور یہ بہت short-- ہے کہ محسوس کریں لیکن یہ ہے کہ ایک کمانڈ لائن پروگرام ہے 235 00:11:00,299 --> 00:11:02,840 اسٹاک کی قیمتوں کو دیکھنے کے لئے جا میرے لئے، جو اصل میں جا رہا ہے 236 00:11:02,840 --> 00:11:04,230 مسئلہ سات سیٹ کے متعلق ہونا. 237 00:11:04,230 --> 00:11:05,396 >> تو میں کیا کر رہا ہوں دیکھتے ہیں. 238 00:11:05,396 --> 00:11:08,640 سب سے اوپر میں مل گیا ہے اوپن بریکٹ سوالیہ نشان پی ایچ پی. 239 00:11:08,640 --> 00:11:13,372 میں ہوں جس کے تحت اس کے بعد میں، اس لائن مل گیا ہے functions.php-- نامی ایک فائل کی ضرورت ہوتی ہے 240 00:11:13,372 --> 00:11:15,080 ہم کو دیکھنے کے لئے جا رہے ہیں تھوڑا سا میں اس پر مزید، 241 00:11:15,080 --> 00:11:17,340 لیکن یہ سی کی طرح ہے تیز کے ورژن، شامل ہیں 242 00:11:17,340 --> 00:11:19,090 آپ کہاں جانا چاہتے ہیں ایک فائل میں شامل ہیں. 243 00:11:19,090 --> 00:11:23,720 پی ایچ پی کی یہ اگرچہ، اس کی ضرورت کا مطالبہ بھی ایک تقریب میں شامل ہے. 244 00:11:23,720 --> 00:11:26,861 اور یہ function.php کی ہے کہ باہر کر دیتا ہے صرف کچھ میں کلاس سے پہلے لکھا. 245 00:11:26,861 --> 00:11:29,860 میں کیونکہ، ایک ہی ڈائریکٹری میں ڈال میں کچھ کوڈ باہر عنصر کرنا چاہتے تھے 246 00:11:29,860 --> 00:11:31,800 کہ ہم دوسری جگہوں پر استعمال کرنے کے لئے چاہتے ہو سکتا ہے. 247 00:11:31,800 --> 00:11:34,560 >> دریں اثنا، آپ کو شاید کر سکتے ہیں یہاں کیا ہو رہا ہے اندازہ. 248 00:11:34,560 --> 00:11:39,200 یہ C-- لیکن سے تھوڑا سا مختلف ہے کی طرف سے کیا مطلب ہے مناسب استعمال کو یقینی بنانے کے؟ 249 00:11:39,200 --> 00:11:41,180 زیادہ تکنیکی طور پر یہ ترجمہ. 250 00:11:41,180 --> 00:11:45,950 کیا حالات کے تحت ہوں پروگرام چھوڑنے، یا باہر نکلنے؟ 251 00:11:45,950 --> 00:11:47,074 جی ہاں؟ 252 00:11:47,074 --> 00:11:47,990 >> سامعین: آپ کو نہیں ہے جب دو کمانڈ لائن دلائل. 253 00:11:47,990 --> 00:11:49,480 >> DAVID MALAN: مجھے ضرورت نہیں ہے جب لائن کے دلائل کی کمان. 254 00:11:49,480 --> 00:11:52,396 اور ان میں سے ایک یاد دلائل پروگرام کا نام خود ہے. 255 00:11:52,396 --> 00:11:55,340 اور دوسری جا رہا ہے ایک لفظ میں فوری طور پر کے بعد ٹائپ. 256 00:11:55,340 --> 00:11:57,460 تو صرف سی کی طرح، اس جانچ پڑتال کے اپنے طریقہ ہے، 257 00:11:57,460 --> 00:12:00,022 صارف تعاون کیا اور میں نے ارادہ کیا کے طور پر پروگرام کو چلانے کے؟ 258 00:12:00,022 --> 00:12:01,730 اب، وہاں کچھ ہے تھوڑا مختلف 259 00:12:01,730 --> 00:12:04,020 سب سے C-- پہلی کے ساتھ ہم اس ڈالر کا نشان ہے، 260 00:12:04,020 --> 00:12:07,710 اور ایک ڈالر کرتا ہے پی ایچ پی میں مطلع پر دستخط؟ 261 00:12:07,710 --> 00:12:08,440 صرف ایک متغیر. 262 00:12:08,440 --> 00:12:11,731 کہ اس کے بعد all-- صرف ایک متغیر ہے جو کچھ بھی آپ اصل میں اسے فون کرنا چاہتے ہیں. 263 00:12:11,731 --> 00:12:14,000 وہاں کچھ ہے نوٹس اپنے پی ایچ پی پروگرام سے لاپتہ، 264 00:12:14,000 --> 00:12:18,210 صرف یہ گزشتہ یاد کر رہا تھا کی طرح ہفتے، سی بمقابلہ، کیا ہے؟ 265 00:12:18,210 --> 00:12:21,620 >> ایک قسم، بلکہ کچھ اور. 266 00:12:21,620 --> 00:12:26,409 کوئی کچھ نہیں ہے مرکزی تقریب function--. 267 00:12:26,409 --> 00:12:27,450 کوئی اہم تقریب ہے. 268 00:12:27,450 --> 00:12:29,680 آپ کو صرف لکھنا شروع بغیر اپنے کوڈ 269 00:12:29,680 --> 00:12:32,790 ایک منصفانہ صوابدیدی بارے میں فکر کرنے کچھ پہلے سے طے شدہ نام کے کنونشن 270 00:12:32,790 --> 00:12:33,880 تقریب اہم. 271 00:12:33,880 --> 00:12:36,720 تو ARG سی صرف واقعی ہے ایک عالمی متغیر 272 00:12:36,720 --> 00:12:39,049 مترجم کہ مجھے لئے دستیاب کرتا ہے. 273 00:12:39,049 --> 00:12:40,090 اب، یہ دلچسپ ہے. 274 00:12:40,090 --> 00:12:41,140 تو چیزیں نظر. 275 00:12:41,140 --> 00:12:43,370 ڈالر کا نشان اسٹاک پر ہے چھوڑ، کہ میرا متغیر ہے. 276 00:12:43,370 --> 00:12:45,120 دائیں ہاتھ کی طرف پر، بظاہر ہے 277 00:12:45,120 --> 00:12:50,270 پی ایچ پی میں ایک تقریب تلاش کہا جاتا ہے کہ میں نے اپنے گزشتہ کمانڈ لائن گزر رہا ہوں 278 00:12:50,270 --> 00:12:51,902 دلیل جو to-- لفظ ہے. 279 00:12:51,902 --> 00:12:53,610 اور ہم کس طرح یہ دیکھ لیں گے ایک لمحے میں کام کرتا ہے. 280 00:12:53,610 --> 00:12:55,380 >> اور پھر آخر میں قیمت رپورٹنگ کر رہا ہوں. 281 00:12:55,380 --> 00:12:58,650 میں ایک باہر چھپائی رہا ہوں اس طرح اور اس طرح کا حصہ. 282 00:12:58,650 --> 00:13:02,082 اور یہ ہے، یاد میں PHP-- PHP-- میں ایک راستہ 283 00:13:02,082 --> 00:13:04,290 آپ کو ایسا کرنے کی ضرورت نہیں ہے جہاں اب ڈالر کی نشانی ایس. 284 00:13:04,290 --> 00:13:06,782 آپ کو صرف گھوبگھرالی منحنی خطوط وحدانی کا استعمال کر سکتے ہیں اور کچھ متغیر میں پلگ. 285 00:13:06,782 --> 00:13:09,240 آپ کے بارے میں فکر کرنے کی ضرورت نہیں ہے اسی طرح میں printf استعمال. 286 00:13:09,240 --> 00:13:13,530 >> اور ایک ایک طرف، کے طور پر ایک متغیر ڈال دیا جب اس طرح ڈبل قیمت درج کرنے کے اندر، 287 00:13:13,530 --> 00:13:17,370 آپ کو ایک فینسی ٹیکنالوجی استعمال کر رہے ہیں متغیر پرکشیپ کہا جاتا. 288 00:13:17,370 --> 00:13:20,380 یہ صرف یہاں میں متغیر پلگ مطلب. 289 00:13:20,380 --> 00:13:23,760 اور ایک ایک طرف، کچھ آپ کے آنے والے کے طور پر دیگر پروگرامنگ پس منظر سے، 290 00:13:23,760 --> 00:13:26,960 آپ واحد کی قیمت درج کرنے کا استعمال نہیں کر سکتے ہیں کے ارد گرد ڈور ایسا کرنے. 291 00:13:26,960 --> 00:13:30,290 آپ کے لئے ڈبل قیمت درج کرنے کا استعمال کرنا چاہئے متغیر پرکشیپ کام کرنے کے لئے. 292 00:13:30,290 --> 00:13:32,740 دوسری صورت میں آپ لفظی گے ان گھوبگھرالی منحنی خطوط وحدانی دیکھیں. 293 00:13:32,740 --> 00:13:34,500 >> تو آخر میں، آگے بڑھو اور اس کے چلانے دو. 294 00:13:34,500 --> 00:13:36,690 میرے ٹرمینل تھوڑا بڑا بنا دو. 295 00:13:36,690 --> 00:13:41,940 مجھے آگے بڑھو اور چلاتے ہیں میرے اقتباس ڈائریکٹری کے اندر. 296 00:13:41,940 --> 00:13:46,950 [؟ CDsource؟] [؟ ہوں؟] [؟ اقتباس؟] پی ایچ پی اقتباس ڈاٹ پی ایچ پی، 297 00:13:46,950 --> 00:13:50,290 اور میں کچھ تلاش کرنے کے لئے جا رہا ہوں اس ٹکر کی علامت ہے جس میں GOOG، طرح، 298 00:13:50,290 --> 00:13:55,510 اور اس کے نئے نام کے ایک حصہ، 'الف بے' انکا، آج کے طور پر، $ 717 کی لاگت آئے گی. 299 00:13:55,510 --> 00:13:58,680 ٹھیک ہے، ہم کرنا چاہتے ہیں تو اس کو دوبارہ چلائیں، کسی 300 00:13:58,680 --> 00:14:02,600 دوسرے سٹاک ٹکر ہے وہ تلاش کرنے کے لئے چاہتے ہیں؟ 301 00:14:02,600 --> 00:14:06,770 >> مائیکروسافٹ میں ہے یہ ایک، MSFT-- $ 53. 302 00:14:06,770 --> 00:14:09,720 میں یاہو ہو سکتا ہے کہ لگتا ہے کہ. 303 00:14:09,720 --> 00:14:12,130 اور فیس بک ہے. 304 00:14:12,130 --> 00:14:13,740 >> ایسا اس پروگرام کیا ہے؟ 305 00:14:13,740 --> 00:14:16,306 جادو سرایت کیا جا رہا ہے کہ تلاش تقریب میں. 306 00:14:16,306 --> 00:14:17,430 تو ایک فوری نظر ڈالیں. 307 00:14:17,430 --> 00:14:21,815 >> کہ نہیں آیا ہے کہ باہر کر دیتا پی ایچ پی کے ساتھ، یہ functions.php میں ہے. 308 00:14:21,815 --> 00:14:23,690 اور ہم کے ذریعے نہیں جائیں گے بڑی تفصیل سے اس، 309 00:14:23,690 --> 00:14:28,040 لیکن آپریٹو یہاں لفظ ہے محسوس کہ functions.php-- کی لائن چھ پر 310 00:14:28,040 --> 00:14:29,440 میں لفظی تقریب کا کہنا. 311 00:14:29,440 --> 00:14:31,050 میں میری تقریب کے نام کی وضاحت. 312 00:14:31,050 --> 00:14:34,330 میں تو کوئی وضاحت دلائل، یا پیرامیٹرز، 313 00:14:34,330 --> 00:14:36,480 مجھے لگتا ہے کہ فنکشن کوئی اقسام take-- کرنا چاہتے ہیں. 314 00:14:36,480 --> 00:14:37,580 اور پھر میں نے اس پر عملدرآمد. 315 00:14:37,580 --> 00:14:39,240 >> اور میں نے اپنے ہاتھ لہر کریں گے نفاذ میں، 316 00:14:39,240 --> 00:14:42,115 یہ کافی اعلی درجے کی ٹھیک ہے کے بعد سے اب، لیکن ہم اصل میں اسے دوبارہ دیکھ لیں گے 317 00:14:42,115 --> 00:14:44,700 ایک ہفتے میں مسئلہ میں سات سیٹ. 318 00:14:44,700 --> 00:14:47,490 لیکن میں بھی، اس کو صاف کر سکتے ہیں. 319 00:14:47,490 --> 00:14:49,590 میں نے بھی میں شامل آج کے کوڈ ورژن 320 00:14:49,590 --> 00:14:52,340 کوئی ڈاٹ پی ایچ پی فائل ہے جس میں اقتباس، کے. 321 00:14:52,340 --> 00:14:57,270 میں شاید ہے کیونکہ صرف حوالہ نامی پروگرام کے سب؟ 322 00:14:57,270 --> 00:15:00,140 یہ shebang-- نام نہاد کافی خفیہ منتر 323 00:15:00,140 --> 00:15:04,590 کہ اس وقت پی ایچ پی کی تلاش اور کا کہنا ہے کہ یہاں اپنے کوڈ پر چلانے. 324 00:15:04,590 --> 00:15:07,360 >> ٹھیک ہے، تو اس لاتا ہے ہم نے چھوڑ دیا ہمیں جہاں 325 00:15:07,360 --> 00:15:09,560 ساتھ ہی سہی آخری بار کچھ زیادہ اعلی درجے مثالیں. 326 00:15:09,560 --> 00:15:13,980 کوئی سوال اس طرح اب تک کے بارے میں پی ایچ پی یا ہم کیا کر رہے ہیں؟ 327 00:15:13,980 --> 00:15:15,570 No-- ٹھیک. 328 00:15:15,570 --> 00:15:16,180 جی ہاں؟ 329 00:15:16,180 --> 00:15:19,610 >> سامعین: کے اندر HTML فائلوں، you-- کرتے 330 00:15:19,610 --> 00:15:22,226 [؟ کیا آپ ؟] [؟ صرف یہ کہتے ہیں؟] ایک [اشراوی] پی ایچ پی فائل؟ 331 00:15:22,226 --> 00:15:23,350 DAVID MALAN: اچھا سوال ہے. 332 00:15:23,350 --> 00:15:26,070 ہم ہیں جس میں ایک ویب تناظر میں، پر منتقل کرنے کے بارے میں لفظی، 333 00:15:26,070 --> 00:15:28,028 آپ کو نام نہاد کا استعمال نہیں کرتے سب پر shebang، 334 00:15:28,028 --> 00:15:31,980 ویب سرور اکثر وجہ پروگرام اپاچی یا مائیکروسافٹ بلایا 335 00:15:31,980 --> 00:15:37,470 IIS، انٹرنیٹ انفارمیشن سرور، یا دیگر ویب سرور سوفٹ ویئر کی کسی بھی تعداد، 336 00:15:37,470 --> 00:15:40,636 اس کو دیکھتا ہے جب کہ جانتا ہے ایک نقطہ پی ایچ پی فائل، اس 337 00:15:40,636 --> 00:15:42,010 اس پر مترجم چلانا چاہئے. 338 00:15:42,010 --> 00:15:43,468 یہ پہلی سطر میں نظر نہیں آتی ہے. 339 00:15:43,468 --> 00:15:45,580 اس کی پہلی سطر چال تو تم بس جب ہے 340 00:15:45,580 --> 00:15:48,330 تحریری طور پر کمانڈ لائن programs-- ہم سپر اکثر کرتے ہیں نہیں کریں گے جس، 341 00:15:48,330 --> 00:15:52,510 لیکن یہ پل کے ہمارے طریقہ ہے اب ہمارے پی ایچ پی کی مثالیں ہمارے C. 342 00:15:52,510 --> 00:16:00,680 >> تو بے شک اس دنیا کو پاٹنے دو ویب پر کمانڈ لائن دنیا سے 343 00:16:00,680 --> 00:16:02,230 مندرجہ ذیل کرکے. 344 00:16:02,230 --> 00:16:05,090 مجھے آگے جانا ہے اور اپنی طرف متوجہ کرتے ہیں یہاں صرف ایک لمحے کے لئے ختم. 345 00:16:05,090 --> 00:16:09,940 ہم بجائے ایک ویب سرور ہے، یا تو ہم یہاں اپنے لیپ ٹاپ سے زیادہ ہے تو، 346 00:16:09,940 --> 00:16:11,280 جس میں اس طرح اپنی طرف متوجہ کریں گے. 347 00:16:11,280 --> 00:16:14,250 اور ہم یہاں ہے کسی نہ کسی شکل میں انٹرنیٹ. 348 00:16:14,250 --> 00:16:18,210 اور پھر یہاں، ہم نے ایک کو تعمیر میں ایک سرور 349 00:16:18,210 --> 00:16:20,760 یہ کس طرح انٹرنیٹ ہے works-- اور یہاں 350 00:16:20,760 --> 00:16:23,120 شاید کچھ روشنی کے ساتھ ایک سرور ہے. 351 00:16:23,120 --> 00:16:27,530 اصل میں کیا ہو رہا ہے ان دو کنکشن کے درمیان؟ 352 00:16:27,530 --> 00:16:29,240 >> تو اس عمارت میں ایک ویب سرور ہے. 353 00:16:29,240 --> 00:16:31,420 وہ صرف ایک کمپیوٹر ہے کہ کچھ آپریٹنگ چل رہا ہے 354 00:16:31,420 --> 00:16:34,561 system-- شاید مفت سافٹ ویئر کہا جاتا CS50 IDE چل رہا ہے جس میں اپاچی،. 355 00:16:34,561 --> 00:16:36,310 تو آپ کو اصل کر سکتے ہیں اس عمارت کے بارے میں سوچنا 356 00:16:36,310 --> 00:16:38,579 میں عمارت کے طور پر جس CSt0 IDE محفوظ کیا جاتا ہے. 357 00:16:38,579 --> 00:16:40,870 آپ کے تمام ہے جہاں ہے آپ کے اکاؤنٹس، جہاں تمام 358 00:16:40,870 --> 00:16:43,130 آپ کی اپنی ویب سرور ہے ، آپ کے تمام چلانے کے 359 00:16:43,130 --> 00:16:45,730 ، آپ کے اپنے لیے ایک منفرد یو آر ایل ہے ہم کے بارے میں بات کرنا شروع کر دیا کے طور پر، 360 00:16:45,730 --> 00:16:47,280 پی چھ سیٹ میں اور آپ کو زیادہ نظر آئے گا. 361 00:16:47,280 --> 00:16:49,450 >> یہاں اپنے لیپ ٹاپ کہیں ہے انٹرنیٹ پر اور. 362 00:16:49,450 --> 00:16:54,550 میں ایک یو آر ایل کا دورہ کریں جب اور اس طرح اس سے تعلق رکھتا ہے مجھ سے، کہ انٹرنیٹ ٹریفک جا رہا ہے 363 00:16:54,550 --> 00:16:58,360 سرور، سرور کی سے زائد وصول ایک HTTP request-- 364 00:16:58,360 --> 00:17:02,900 ایک طرح سے index.html حاصل ہے اور یہ ہے کہ ویب کے صفحے کے جواب. 365 00:17:02,900 --> 00:17:04,280 تو ہے کہ عام طور پر نمونہ ہے. 366 00:17:04,280 --> 00:17:07,089 سب کچھ جبکہ آج، سب کچھ تک 367 00:17:07,089 --> 00:17:09,660 میں صرف ہو رہا تھا اس عمارت کے confines. 368 00:17:09,660 --> 00:17:12,910 میں اپنے لیپ ٹاپ استعمال کر رہے ہیں، کیا گیا تھا لیکن میں، CS50 IDE سے منسلک کیا گیا تھا 369 00:17:12,910 --> 00:17:17,369 لہذا ان کے تمام پروگراموں میں چل رہا تھا کہ سرور، خود کے اندر تھا. 370 00:17:17,369 --> 00:17:22,660 >> لیکن اب، پی ایچ پی میں reusing شروع کر دیں کچھ اصل پروگراموں کو لکھنے کے لئے ہے کہ 371 00:17:22,660 --> 00:17:24,230 ایک ویب سرور کی طرف سے خدمت کر رہے ہیں. 372 00:17:24,230 --> 00:17:30,320 اور ایسا کرنے کے لئے، میں جا رہا ہوں مثالوں کی ایک پوری چڑھانے میں 373 00:17:30,320 --> 00:17:33,710 کہ یہاں اس خیال کو متعارف کرانے. 374 00:17:33,710 --> 00:17:38,500 تو اس کی پسند ہیں طریقہ کی طرح ہے ایک پروگرامنگ مثال بیان. 375 00:17:38,500 --> 00:17:41,540 >> اور حقیقت میں، کے طور پر آپ CS50 سے باہر نکلیں یا، حتمی منصوبوں پر کام 376 00:17:41,540 --> 00:17:43,520 یا کسی کو فالو لے کلاس پر، آپ کو شروع کریں گے 377 00:17:43,520 --> 00:17:45,740 world-- کو دیکھنے کے لئے خاص طور پر بڑی ہو گئی ہے 378 00:17:45,740 --> 00:17:48,300 سی کی طرح زبانوں کے ساتھ سپر کم level-- ہیں کہ 379 00:17:48,300 --> 00:17:51,290 بہتر ہے کہ احساس تحریری طور پر سافٹ ویئر کے طریقے. 380 00:17:51,290 --> 00:17:53,290 مخصوص ہیں آپ کی پیروی کر سکتے ہیں پیٹرن، 381 00:17:53,290 --> 00:17:57,640 آپ کی فائلوں کو منظم کرنے کے کچھ طریقے اور آپ کے افعال کے نام کے طریقے، 382 00:17:57,640 --> 00:18:00,300 تاکہ لمبی کہانی مختصر، دنیا آیا ہے 383 00:18:00,300 --> 00:18:04,340 مخففات کی ایک پوری چڑھانے کے ساتھ اور پروگرامنگ کی کے طریقوں کے لئے نام. 384 00:18:04,340 --> 00:18:06,260 یہ آپ استعمال کر سکتے ہیں صرف تراکیب ہیں. 385 00:18:06,260 --> 00:18:09,660 >> اور ان میں سے ایک، MVC کہا جاتا ہے ماڈل دیکھیے کنٹرولر کے لئے. 386 00:18:09,660 --> 00:18:12,270 اور اس کے لئے، صرف ہے اب، ایک حد سے زیادہ پیچیدہ 387 00:18:12,270 --> 00:18:18,960 آپ کو باہر بچھانے چاہئے کس طرح کہہ کے راستے ایک پی ایچ پی کی بنیاد پر ویب سائٹ، ہمارے معاملے میں. 388 00:18:18,960 --> 00:18:22,140 آپ کو آپ کی فائلوں کو منظم کیسے، کس طرح آپ کو، آپ کی منطق کو منظم کرتے ہیں 389 00:18:22,140 --> 00:18:26,220 کرنے کے لئے اسے آسان بنا دیتا ہے کہ ایک طرح سے زیادہ پیچیدہ ویب سائٹس لکھ؟ 390 00:18:26,220 --> 00:18:28,550 اور بے شک، ہم فوری طور پر کروں گا سات P- سیٹ کے ساتھ وہاں حاصل کرنے کے. 391 00:18:28,550 --> 00:18:32,020 >> MVC کی دنیا میں، آپ جا رہے ہیں دیکھنے کے لئے کہ ہمارے کوڈ عام طور پر کر سکتے ہیں 392 00:18:32,020 --> 00:18:38,290 تو ماڈل کوڈ کے طور پر خصوصیات کیا جائے، یا کنٹرولر کوڈ، یا نقطہ نظر کوڈ. 393 00:18:38,290 --> 00:18:40,200 اور میں جا رہا ہوں مندرجہ ذیل کے طور پر oversimplify 394 00:18:40,200 --> 00:18:42,074 کنٹرولر ہے آپ کے پروگرام کے دماغ، 395 00:18:42,074 --> 00:18:44,100 اس کا ہے جہاں تمام ہے دلچسپ منطق ہوتا. 396 00:18:44,100 --> 00:18:46,110 تو سب کچھ ہم کیا گیا ہے اس طرح اب تک کلاس میں تحریری طور پر، 397 00:18:46,110 --> 00:18:48,210 قسم کے کنٹرولر کی طرح ہے code-- اس پر قابو پانے ہے 398 00:18:48,210 --> 00:18:50,585 آپ کے پروگرام، آپ loops کے، آپ حالات، اپنے افعال 399 00:18:50,585 --> 00:18:52,100 اور متغیر اور جو. 400 00:18:52,100 --> 00:18:56,160 >> مناظر، اب، ایک چھوٹا سا ہونے جا رہے ہیں ویب کی دنیا میں زیادہ واضح. 401 00:18:56,160 --> 00:18:59,360 ایک نقطہ نظر جمالیات ہے آپ کی ویب سائٹ. 402 00:18:59,360 --> 00:19:04,080 یہ، صارف تصاویر sees-- کیا ہے HTML ٹیبل، HTML ٹیگ، اور تمام 403 00:19:04,080 --> 00:19:08,220 کہ، بندوق جمالیاتی کی سب سے لکھنے کے لئے مشکل نہیں ہے کہ چیزیں، 404 00:19:08,220 --> 00:19:11,380 لیکن آپ پیدا کر رہے ہیں صرف کیا ہے، نام نہاد نقطہ نظر، جمالیات ہے. 405 00:19:11,380 --> 00:19:13,880 اور ماڈل، بالآخر، جا رہا ہے ڈیٹا بیس stuff-- ہونا ہے جس 406 00:19:13,880 --> 00:19:16,510 ہم سب میں ڈائیونگ کا آغاز کریں گے اس بدھ. 407 00:19:16,510 --> 00:19:19,740 تو کنٹرولر منطق ہے، نقطہ نظر، جمالیاتی سامان ہے 408 00:19:19,740 --> 00:19:23,500 اور ماڈل جہاں جا رہا ہے ہم اپنے اصل ڈیٹا ذخیرہ. 409 00:19:23,500 --> 00:19:26,410 >> تو زیادہ ٹھوس اس پر نظر آتے ہیں مندرجہ ذیل مثال کے طور پر. 410 00:19:26,410 --> 00:19:34,700 میں یہاں اپنے ڈائریکٹری میں جانے کے لئے جا رہا ہوں آج کے ذریعہ کی جن میں سے تمام code-- 411 00:19:34,700 --> 00:19:35,770 آن لائن دستیاب ہے. 412 00:19:35,770 --> 00:19:37,800 اور میں ورژن صفر میں جانے کے لئے جا رہا ہوں. 413 00:19:37,800 --> 00:19:41,500 اور یہاں کہتے ہیں is-- CS50 کی ویب سائٹ کے ورژن صفر. 414 00:19:41,500 --> 00:19:43,010 بالکل زیادہ سے زیادہ یہاں نہیں ہے. 415 00:19:43,010 --> 00:19:46,810 یہ ہے کہ ایک بہت سادہ ویب صفحے کے شاید استعمال کیا ایچ ٹی ایم ایل tags-- صرف 416 00:19:46,810 --> 00:19:48,970 گزشتہ مثالوں سے لگتا ہے؟ 417 00:19:48,970 --> 00:19:49,890 >> وہ کیا ہے؟ 418 00:19:49,890 --> 00:19:53,920 شاید اس بڑے جرات مندانہ کے لئے H1-- عنوان، سب سے اوپر ہے کہ علامت (لوگو)، CS50. 419 00:19:53,920 --> 00:19:55,080 اور کیا ڈرامہ ہے؟ 420 00:19:55,080 --> 00:19:55,799 جی ہاں؟ 421 00:19:55,799 --> 00:19:56,840 سامعین: بے ترتیب فہرست. 422 00:19:56,840 --> 00:19:59,990 DAVID MALAN: بے ترتیب list-- تو شیخ الاسلام ٹیگ اور لشکر کرنے کے شاید ایک جوڑے. 423 00:19:59,990 --> 00:20:01,840 اور تم ان کو یاد نہیں کرتے ہیں تو، یہ ایمانداری سے کوئی فرق نہیں پڑتا. 424 00:20:01,840 --> 00:20:04,170 ان میں بندوق طرح ہیں HTML کے عملدرآمد کی تفصیلات 425 00:20:04,170 --> 00:20:06,378 آپ کو تیزی سے نظر آتے ہیں کہ اور آپ کو واپس اپنے راستے پر ہو. 426 00:20:06,378 --> 00:20:10,040 ہم پروگرامنگ پر زیادہ توجہ مرکوز کریں گے juicier ٹکڑے ٹکڑے ہیں کہ خیالات. 427 00:20:10,040 --> 00:20:12,890 >> تو صرف ایک فوری ڈالیں ایچ ٹی ایم ایل میں نظر آتے ہیں اور بے شک 428 00:20:12,890 --> 00:20:16,880 میں جی ہاں، یہاں مآخذ دیکھئے کھول تو، کہ بالکل یہاں کیا ہو رہا ہے. 429 00:20:16,880 --> 00:20:18,440 ایک شیخ الاسلام ٹیگ ہے. 430 00:20:18,440 --> 00:20:20,630 اس کے اندر اندر در اندر لی ٹیگز کرنے کے لئے ہے. 431 00:20:20,630 --> 00:20:24,470 اور پھر میں یو آر ایل ادھار یہاں اصل نصاب کا. 432 00:20:24,470 --> 00:20:27,570 >> اور پھر lectures.php یہ بظاہر ہے 433 00:20:27,570 --> 00:20:31,640 ایک متحرک طور پر پیدا صفحے کہ، کی آہ دیکھتے دو، لئے جا رہا ہے 434 00:20:31,640 --> 00:20:33,170 لیکچر کے پہلے دو ہفتوں. 435 00:20:33,170 --> 00:20:36,600 تو ہفتے صفر اور ایک ہفتے، چلو میں صفحے کا ماخذ دیکھنے تو this-- دیکھو، 436 00:20:36,600 --> 00:20:38,120 بھی سپر آسان. 437 00:20:38,120 --> 00:20:42,430 ان دو صفحات کے نتیجے میں کر رہے ہیں کہا جاتا week0.php، اور week1.php. 438 00:20:42,430 --> 00:20:44,040 تو کیا ہو رہا ہے اب غور. 439 00:20:44,040 --> 00:20:50,630 >> میں week0.php پر کلک کریں جب، اپنے لیپ ٹاپ week0.php کے لئے ایک درخواست کر رہا ہے. 440 00:20:50,630 --> 00:20:53,700 441 00:20:53,700 --> 00:20:58,110 ویب سرور، a.k.a.، CS50 IDE، کہ مجازی لفافے وصول کر رہا ہے. 442 00:20:58,110 --> 00:21:01,040 یہ ایک پیغام کو دیکھ رہا ہے کی طرح، week0.php حاصل. 443 00:21:01,040 --> 00:21:05,060 اس کے بعد فائل کی تشریح ہے، سب سے سب سے نیچے، دائیں کرنے کے لئے چھوڑ دیا فائل 444 00:21:05,060 --> 00:21:07,720 کہا جاتا week0.php-- اور نتائج توکنا. 445 00:21:07,720 --> 00:21:10,510 لہذا اس فائل کے اندر، week0.php، ہونا ضروری ہے 446 00:21:10,510 --> 00:21:15,410 پیدا کر رہا ہے کہ کنٹرولر منطق یہ HTML، اور ہم جلد ہی دیکھیں گے کہ. 447 00:21:15,410 --> 00:21:19,340 >> لیکن اب کے لئے،، مجھے ہفتے صفر پر کلک کریں اور اب ہم، بدھ اور جمعہ کو ہے 448 00:21:19,340 --> 00:21:25,260 اور اب ہم سلائڈ آہستہ آہستہ ہفتے صفر سے. 449 00:21:25,260 --> 00:21:27,400 اور آپ کو یاد کر سکتے ہیں واپس جب اس سے راستے. 450 00:21:27,400 --> 00:21:29,340 تو ہے کہ اس ویب سائٹ کر رہا ہے تمام ہے. 451 00:21:29,340 --> 00:21:31,120 >> تو یہ کر رہا ہے کہ کس طرح غور کریں. 452 00:21:31,120 --> 00:21:34,290 میں میں واپس جانے کے لئے جا رہا ہوں CS50 IDE میں منبع کوڈ،، 453 00:21:34,290 --> 00:21:36,660 اور میں نے index.php کو کھولنے کے لئے جا رہا ہوں. 454 00:21:36,660 --> 00:21:38,910 اس فائل کے سب سے اوپر تبصرے کا ایک گروپ ہے. 455 00:21:38,910 --> 00:21:43,000 اور پھر اس فائل کے وسط میں، اس ، باہر کر دیتا ہے جو کوئی پی ایچ پی کوڈ ہے. 456 00:21:43,000 --> 00:21:47,380 تم میں سے کسی کی ضرورت نہیں ہے کیونکہ اگر اوپن بریکٹ سوالیہ نشان پی ایچ پی ٹیگز، 457 00:21:47,380 --> 00:21:49,180 آپ کو صرف ایچ ٹی ایم ایل میں ڈال کرنے کے لئے آزاد ہیں. 458 00:21:49,180 --> 00:21:51,480 >> کی وجہ سے کیا پی ایچ پی کی مترجم، ایسا کرنے کے لئے سمجھا جاتا ہے 459 00:21:51,480 --> 00:21:53,938 اس فائل پڑھتا ہے جب اوپر سے نیچے، دائیں کرنے کے لئے چھوڑ دیا 460 00:21:53,938 --> 00:21:59,100 یہ صرف اس کے درمیان دیکھتا کوڈ تعبیر ان زاویہ بریکٹ نشان سوال. 461 00:21:59,100 --> 00:22:02,380 اور کچھ یہ نہیں ہے کہ پی ایچ پی کے طور پر تسلیم، یہ صرف باہر spits. 462 00:22:02,380 --> 00:22:05,080 اور HTML چیزیں میں سے ایک ہے یہ صرف باہر توک گا. 463 00:22:05,080 --> 00:22:09,090 >> تو اس فائل کر سکتے ہیں index.html کے بلایا گیا، 464 00:22:09,090 --> 00:22:11,690 لیکن میں سب کچھ نام کر رہا ہوں ایک قدم رکھ پتھر کے طور پر ڈاٹ پی ایچ پی. 465 00:22:11,690 --> 00:22:15,960 اسی طرح Lectures.php-- underwhelming کیا، یہ صرف کچھ HTML ہے. 466 00:22:15,960 --> 00:22:19,840 Week0.php، اسی طرح صرف کچھ HTML. 467 00:22:19,840 --> 00:22:22,300 >> لیکن اب پر ڈال دو لوکک انجینئرنگ ٹوپی، 468 00:22:22,300 --> 00:22:24,400 اور ہم اس کو بہتر بنانے کے کر سکتے ہیں کہ کس طرح کے بارے میں غور. 469 00:22:24,400 --> 00:22:28,541 یہ ایسا کرنے کے لئے مشکل نہیں ہے، لیکن میں اس قسم کی کاپی اور پیسٹ میں منتقل. 470 00:22:28,541 --> 00:22:31,540 اور حقیقت میں، میں نے دو ہفتے بنا دیں تو، آپ میں شاید ایسا کرنے کے لئے جا رہا ہوں کیا جانتے ہیں؟ 471 00:22:31,540 --> 00:22:34,940 میں ہوں، week1.php پر جانے کے لئے جا رہا ہوں ہر چیز کو اجاگر کرنے کے لئے جا. 472 00:22:34,940 --> 00:22:39,110 مجھے اس کی کاپی کرنے جا رہا ہوں، چسپاں week2.php ہے نامی ایک نئی فائل میں، 473 00:22:39,110 --> 00:22:42,440 کچھ یو آر ایل موافقت، اور اپنے راستے پر ہو. 474 00:22:42,440 --> 00:22:45,240 >> تو ہم کیا کی بنیاد پر پہلے سے سی میں دیکھا، 475 00:22:45,240 --> 00:22:46,860 یہ امید ہے کہ، صحیح محسوس نہیں کرتا. 476 00:22:46,860 --> 00:22:49,610 کاپی، پیسٹ شاذ و نادر ہی صحیح حل. 477 00:22:49,610 --> 00:22:51,429 تو ہم شروع کر سکتے ہیں کیا اس کو بہتر بنانے کے لئے کرنا ہے؟ 478 00:22:51,429 --> 00:22:53,345 کہاں مواقع ہیں بہتر ڈیزائن کے لئے؟ 479 00:22:53,345 --> 00:22:56,890 480 00:22:56,890 --> 00:22:58,760 >> میں حاصل کرنے کے لئے وقت ہفتے آٹھ، یہ جا رہا ہے 481 00:22:58,760 --> 00:23:00,910 واقعی پریشان ہونا میں تبدیل کرنا چاہتے ہیں تو 482 00:23:00,910 --> 00:23:03,930 میں سے ہر ایک کے فونٹ میں چاہتا ہوں، یا اگر اپنے صفحات 483 00:23:03,930 --> 00:23:06,522 ترتیب کی ساخت کو تبدیل کرنے کے لئے. 484 00:23:06,522 --> 00:23:08,396 تو جہاں موقع ہے بہتر ڈیزائن کے لئے؟ 485 00:23:08,396 --> 00:23:11,990 486 00:23:11,990 --> 00:23:15,160 ٹھیک ہے، کیا پر غور کریں ان فائلوں کی تمام بھر میں مشترکہ. 487 00:23:15,160 --> 00:23:21,696 >> یہاں ہفتے، ہفتے سے ایک ہے صفر، یہاں lectures.php یہ ہے، 488 00:23:21,696 --> 00:23:25,790 یہاں ایک ہی ہے کیا index.php-- ہے اور مختلف، تقریبا کیا بول رہا ہے، 489 00:23:25,790 --> 00:23:26,760 ان فائلوں میں سے ہر ایک میں؟ 490 00:23:26,760 --> 00:23:30,560 491 00:23:30,560 --> 00:23:32,060 جی ہاں؟ 492 00:23:32,060 --> 00:23:34,560 >> سامعین: [اشراوی] 493 00:23:34,560 --> 00:23:41,244 494 00:23:41,244 --> 00:23:42,160 DAVID MALAN: ٹھیک ہے، اچھا. 495 00:23:42,160 --> 00:23:46,115 تو ایک پیٹرن ضرور، جس کے تحت، وہاں ہے ہر وقت میں، لیکچر میں منتخب 496 00:23:46,115 --> 00:23:48,250 میں پیدا کیا جانا چاہئے بہت ہی اسی طرح آپ ڈھونڈ صفحے. 497 00:23:48,250 --> 00:23:50,375 اور اس طرح شاید میں بیعانہ کر سکتے ہیں حقیقت یہ ہے کہ واقعی اس، 498 00:23:50,375 --> 00:23:53,060 جان بوجھ کر عددی ہم ہمارے lectures-- حساب سے ترتیب 499 00:23:53,060 --> 00:23:55,290 میں اس سے بھی زیادہ ڈال کر سکتے ہیں آپ کا جواب میں الفاظ. 500 00:23:55,290 --> 00:23:59,984 اور، واقعی، صرف ایک ہی چیز ہے اس ہفتے کے درمیان تبدیل کر رہا ہے one-- 501 00:23:59,984 --> 00:24:02,400 اور یہ ہے تو مجھے ذیل میں سکرال تقریبا ایک ہی place-- میں 502 00:24:02,400 --> 00:24:05,480 تو یہاں ہفتے صفر ہے، تقریبا سب سے اوپر. 503 00:24:05,480 --> 00:24:12,370 یہاں ایک ہفتے، ہفتہ ہے صفر، ایک ہفتے، ہفتے صفر. 504 00:24:12,370 --> 00:24:14,370 ٹھیک ہے، لفظی اگر تم جانتے ہو کوئی پروگرام، 505 00:24:14,370 --> 00:24:16,286 یہ صرف ایک کی طرح ہے نمونہ کے ملاپ کھیل. 506 00:24:16,286 --> 00:24:17,200 تو مختلف کیا ہے؟ 507 00:24:17,200 --> 00:24:18,765 جی ہاں؟ 508 00:24:18,765 --> 00:24:19,777 >> سامعین: [اشراوی] 509 00:24:19,777 --> 00:24:22,360 DAVID MALAN: اچھا، تو عنوان کبھی تو تھوڑا سا، تبدیل کر رہا ہے. 510 00:24:22,360 --> 00:24:24,010 زیرو سے ایک، کورس کے، جا رہا ہے. 511 00:24:24,010 --> 00:24:25,570 ایک ہی بات H1 ٹیگ میں کیا ہو رہا. 512 00:24:25,570 --> 00:24:28,790 اور ہم کافی کے طور پر آسانی سے نظر نہیں آتا یو آر ایل تھوڑا سا طویل ہے کیونکہ. 513 00:24:28,790 --> 00:24:30,670 لیکن ان یو آر ایل تھوڑا سا تبدیل کر رہے ہیں. 514 00:24:30,670 --> 00:24:34,490 >> لیکن تبدیل نہیں کیا ہے، میں ہمت ، کا کہنا ہے کہ ایسے صفحے کے مواد کی سب سے زیادہ 515 00:24:34,490 --> 00:24:38,530 HTML ٹیگ ایک ہی ہے، سر ہے اسی، عنوان، تقریبا ایک ہی ہے 516 00:24:38,530 --> 00:24:40,659 جسم ایک ہی ہے، اور اور تقریبا سب کچھ 517 00:24:40,659 --> 00:24:42,450 کے علاوہ ایک ہی ہے ان چھوٹی انداز. 518 00:24:42,450 --> 00:24:45,310 تو ہم کے بارے میں کیسے جا سکتے ہیں اس میں سے کچھ باہر فیکٹرنگ؟ 519 00:24:45,310 --> 00:24:48,740 >> ویسے مجھے بالکل تجویز کرتے ہیں اگلے ورژن میں. 520 00:24:48,740 --> 00:24:53,890 تو یہاں ایک ورژن میں، میں عین مطابق ہے ایک ہی فائلوں، کے علاوہ دوسروں کے ایک جوڑے. 521 00:24:53,890 --> 00:24:59,730 یہاں index.php-- اور یہاں تک کہ اگر تم سے پہلے پی ایچ پی کی کبھی نہیں دیکھا ہے 522 00:24:59,730 --> 00:25:05,511 جو میں نے شاید اس کو حل کرنے کر رہا ہوں آپ کو یہاں دیکھ کیا کی بنیاد پر مسئلے؟ 523 00:25:05,511 --> 00:25:11,300 524 00:25:11,300 --> 00:25:12,760 جی ہاں، ایک معمولی وابستگی ہے؟ 525 00:25:12,760 --> 00:25:13,450 نہیں؟ 526 00:25:13,450 --> 00:25:16,020 جی ہاں، پر جانے. 527 00:25:16,020 --> 00:25:17,380 >> سامعین: [اشراوی] 528 00:25:17,380 --> 00:25:18,380 >> DAVID MALAN: جی ہاں. 529 00:25:18,380 --> 00:25:20,380 >> سامعین: [اشراوی] 530 00:25:20,380 --> 00:25:26,090 531 00:25:26,090 --> 00:25:28,669 >> DAVID MALAN: میں آپ کی ضرورت ہے صرف ایک چھوٹا سا زور سے بولتے ہیں. 532 00:25:28,669 --> 00:25:31,084 >> سامعین: [اشراوی] 533 00:25:31,084 --> 00:25:35,744 534 00:25:35,744 --> 00:25:36,660 DAVID MALAN: ٹھیک ہے، اچھا. 535 00:25:36,660 --> 00:25:38,620 اور میں یہ تھا think-- you-- لیکن میں سننے کے لئے مشکل 536 00:25:38,620 --> 00:25:42,690 تم کیا ہو رہی ہے کہ لگتا ہے کہ اوپر عام تھے کہ ٹیگ، 537 00:25:42,690 --> 00:25:47,710 پر عام تھے اور ٹیگز نیچے، اب، باہر ہم factored گیا ہے 538 00:25:47,710 --> 00:25:51,140 یا فائلوں کو پر relegated؟ 539 00:25:51,140 --> 00:25:53,476 header.php اور footer.php-- اور ہم جا رہے ہیں 540 00:25:53,476 --> 00:25:55,600 کے لئے کچھ انداز بنانے کے لئے تشویش آپ سے خطاب صرف 541 00:25:55,600 --> 00:25:59,370 کے لئے، تعداد کو تبدیل کرنے کے بارے میں اٹھائے مثال کے طور پر، میں صحیح طریقے سے آپ نے سنا تو. 542 00:25:59,370 --> 00:26:02,060 >> لیکن یہ اس کا خلاصہ ہو رہا ہے. 543 00:26:02,060 --> 00:26:04,820 کی ایک بڑی رقم نہیں تھی تو صفحے کے سب سے اوپر فالتوپن، 544 00:26:04,820 --> 00:26:06,736 اور کی ایک بڑی رقم نچلے حصے میں فالتوپن، 545 00:26:06,736 --> 00:26:09,280 کی لفظی صرف کو اجاگر دو اور یہ کہ مواد کاٹ، 546 00:26:09,280 --> 00:26:13,270 ایک علیحدہ فائل جیسا میں ڈال دیا ہم باہر وجوہات جہاں سی ایس ایس، کا خیال 547 00:26:13,270 --> 00:26:16,710 ڈال بہت ہی اسی طرح جمالیات، ایک علیحدہ ڈاٹ پی ایچ پی فائل میں، 548 00:26:16,710 --> 00:26:20,340 mechanism-- ضرورت استعمال کرتے ہیں جس سی تیز include-- کی طرح ہے جس 549 00:26:20,340 --> 00:26:23,570 بنیادی طور پر جانا کہہ طرح ہے ، کیا header.php کے مندرجات پر قبضہ 550 00:26:23,570 --> 00:26:25,370 اور اسکی نقل اتار اور انہیں یہاں چسپاں کر دیں. 551 00:26:25,370 --> 00:26:29,490 >> لیکن کیا اس کا مطلب ہے کہ اب میں ہے index.php کو، میں ان دو لائنوں ہے. 552 00:26:29,490 --> 00:26:32,130 lectures.php یہ، میں نے بھی ان دو لائنوں ہے. 553 00:26:32,130 --> 00:26:35,230 week0.php، میں نے بھی ان دو لائنوں ہے. 554 00:26:35,230 --> 00:26:38,380 >> تو اب، میں تبدیل کرنا چاہتے ہیں تو اپنے صفحات میں سے سب سے عنوان، 555 00:26:38,380 --> 00:26:40,530 یا میں تبدیل کرنا چاہتے ہیں بنیادی ڈھانچہ، 556 00:26:40,530 --> 00:26:44,380 میں، صرف ایک جگہ میں تبدیل کر سکتے ہیں یا دو places-- ہیڈر اور فٹر کے، 557 00:26:44,380 --> 00:26:45,429 بالترتیب. 558 00:26:45,429 --> 00:26:47,970 اب کوڈ کے اغاز کو دیکھنے کے لئے ایک چھوٹا سا خفیہ، ٹھیک ہے؟ 559 00:26:47,970 --> 00:26:53,590 لیکن آپ کے بارے میں سوچتے ہیں تو کیا پیج میں week0.php درخواست ہوں تو doing-- ہے، 560 00:26:53,590 --> 00:26:59,880 صرف ڈرائنگ کی طرح یہاں week0.php درخواست کی ہے جب، 561 00:26:59,880 --> 00:27:00,960 اس کا کیا مطلب ہے؟ 562 00:27:00,960 --> 00:27:04,410 >> لفظی، اس فائل ہے براؤزر کی طرف سے درخواست کی. 563 00:27:04,410 --> 00:27:06,240 ویب سرور a.k.a. 564 00:27:06,240 --> 00:27:09,250 CS50 ID-- اس گرپس فائل، week0.php، اور پڑھتا ہے 565 00:27:09,250 --> 00:27:10,780 یہ اوپر سے نیچے، بائیں سے دائیں. 566 00:27:10,780 --> 00:27:15,400 ایک آن لائن، اسے فوری طور پر مقابلوں اوپن بریکٹ سوالیہ نشان پی ایچ پی، کی ضرورت ہوتی ہے 567 00:27:15,400 --> 00:27:17,872 ہیڈر ڈاٹ پی ایچ پی، اور تو کیا ایچ پی کی ترجمان 568 00:27:17,872 --> 00:27:20,580 ویب میں بنایا گیا ہے does-- سرور، ہم تشکیل کردہ کیونکہ 569 00:27:20,580 --> 00:27:24,580 یہ خود کار طریقے جاتا ہے you-- لئے کیا header.php میں، کاپیاں مواد، 570 00:27:24,580 --> 00:27:25,640 یہاں ان جوڑتا ہے. 571 00:27:25,640 --> 00:27:28,790 >> لیکن اس وقت مترجم مقابلوں سوالیہ نشان بند بریکٹ، 572 00:27:28,790 --> 00:27:30,320 تو یہ سب سوچ کیا ہے. 573 00:27:30,320 --> 00:27:33,400 اب یہ صرف آنکھ بند کر تھوکتا ہے لائنوں سے سات کے ذریعے دو، 574 00:27:33,400 --> 00:27:35,240 یہ صرف خام HTML ہے کیونکہ. 575 00:27:35,240 --> 00:27:38,470 آٹھ لائن پر ہو جاتا، اور کرتا ہے فائل کھولنے again-- اسی جادو، 576 00:27:38,470 --> 00:27:41,460 مواد پکڑ، اور ان کی ضرورت ہوتی یا ان چسپاں 577 00:27:41,460 --> 00:27:42,480 ٹھیک ہے پھر یا وہاں. 578 00:27:42,480 --> 00:27:44,210 >> لیکن میں صرف ایک مسئلے کے لئے alluded. 579 00:27:44,210 --> 00:27:48,610 یہ، پسماندہ ایک جزوی قدم ہے ہم header.php میں نظر آتے ہیں کیونکہ اگر، 580 00:27:48,610 --> 00:27:50,850 میں اس قسم کے ایک کونے کاٹ کر دیا ہے. 581 00:27:50,850 --> 00:27:56,250 میں آرڈر میں ترک کیا خصوصیت اس قابل بحث بہتر ڈیزائن حاصل کرنے کے لئے؟ 582 00:27:56,250 --> 00:27:57,305 جی ہاں؟ 583 00:27:57,305 --> 00:27:58,180 سامعین: [اشراوی] 584 00:27:58,180 --> 00:28:00,570 DAVID MALAN: جی ہاں، میں قسم کے nontrivial نجی کونے کاٹ. 585 00:28:00,570 --> 00:28:04,489 تم نے کیا تبدیل کر رہا تھا کہ اس کی نشاندہی عنوان تھا، عنوان میں تعداد، 586 00:28:04,489 --> 00:28:05,530 اور H1 میں نمبر. 587 00:28:05,530 --> 00:28:08,170 تو میرا حل، ٹھیک ہے، تھا صرف صفحے کا نام تبدیل کرتے ہیں، 588 00:28:08,170 --> 00:28:10,080 اور اس کے ساتھ نمٹنے کے لئے نہیں جو مسئلہ. 589 00:28:10,080 --> 00:28:12,130 تو یہ ایک جزوی ہے اس بات کا یقین کے لئے پیچھے کی طرف قدم. 590 00:28:12,130 --> 00:28:14,300 >> لیکن یہاں ذکر کیا ہے میں نے کیا ہے کہ کیا 591 00:28:14,300 --> 00:28:17,200 دوسری صورت میں factored ہے تمام عام چیزیں باہر. 592 00:28:17,200 --> 00:28:21,520 اور footer.php میں، میں نے وجوہات نوٹس اس کے سب باہر، کم ہی سہی، 593 00:28:21,520 --> 00:28:22,790 عام چیزیں. 594 00:28:22,790 --> 00:28:26,070 تو میں نے کسی نہ کسی طرح اب کے قابل ہو جائے کرنے کی ضرورت ہے ایک اور قدم آگے لے، اور ٹھیک 595 00:28:26,070 --> 00:28:27,160 اس عنوان کے مسائل. 596 00:28:27,160 --> 00:28:28,180 تو یہ کرتے ہیں. 597 00:28:28,180 --> 00:28:35,060 >> میرے دوسرے ورژن میں جانے دو یہاں، جس میں، پھر، ایک ہی فائلوں ہے 598 00:28:35,060 --> 00:28:36,825 ایک نئے اس کے علاوہ کے علاوہ. 599 00:28:36,825 --> 00:28:38,950 اور یہ تھوڑا زیادہ ہے شبدبہل، لیکن دیکھتے ہیں اگر ہم 600 00:28:38,950 --> 00:28:40,550 یہاں کیا ہو رہا ہے کے علاوہ چڑھاو کر سکتے ہیں. 601 00:28:40,550 --> 00:28:45,370 تو بجائے کی ضرورت ہوتی ہے کیا header.php، اور footer.php، 602 00:28:45,370 --> 00:28:50,180 میں صرف ایک کی ضرورت ہوتی ہے کرنے لگتے ہیں فائل helpers.php کی، کورس کے، کہا جاتا ہے. 603 00:28:50,180 --> 00:28:52,560 اور، اب مجھے شرط دو helpers.php کے اندر کیا ہے 604 00:28:52,560 --> 00:28:55,330 کے افعال میں سے ایک گروپ ہے کہ میں نے صرف پہلے کی طرح، لکھا. 605 00:28:55,330 --> 00:28:57,550 لیکن میں اس نے helpers.php بلایا. 606 00:28:57,550 --> 00:29:00,370 >> اب بظاہر، میں لائن تین اور 10، ہوں 607 00:29:00,370 --> 00:29:02,840 دو افعال بلا ہیڈر رینڈر، فوٹر رینڈر. 608 00:29:02,840 --> 00:29:05,040 کے ساتھ نہیں آتے ان پی ایچ پی، میں ان خود لکھا. 609 00:29:05,040 --> 00:29:07,880 اور میں نے helpers.php میں ڈال. 610 00:29:07,880 --> 00:29:11,210 >> اب، ہم صرف اس نحو دیکھا ہے ایک بار، اور اس سپر مختصر تھا. 611 00:29:11,210 --> 00:29:15,330 لیکن یہ بظاہر ایک دلیل ہے ہیڈر، تقریب رینڈر کرنے کے لئے. 612 00:29:15,330 --> 00:29:16,450 میں ایسا کیوں جانتے ہیں؟ 613 00:29:16,450 --> 00:29:18,522 ویسے یہاں ایک قریبی قوس ہے، یہاں ایک کھلی قوس ہے. 614 00:29:18,522 --> 00:29:21,230 اور ظاہر کی، صرف سی کی طرح، ان قوسین کے درمیان کچھ 615 00:29:21,230 --> 00:29:23,350 ایک ان پٹ یا ایک ہے تقریب میں دلیل. 616 00:29:23,350 --> 00:29:26,710 >> اس دلیل کے اعداد و شمار کی قسم کیا ہے، میں روشنی ڈالی ہے کیا کی بنیاد پر؟ 617 00:29:26,710 --> 00:29:30,820 ان مربع بریکٹ کیا گزشتہ ہفتے کی بنیاد پر، اس بات کی نشاندہی؟ 618 00:29:30,820 --> 00:29:33,390 جی ہاں، یہ ایک صف ہے خاص طور پر ایک ساہچری سرنی. 619 00:29:33,390 --> 00:29:35,700 اور یہ نحو کا اقرار ایک چھوٹا سا funky ہے، 620 00:29:35,700 --> 00:29:38,860 لیکن یہ صرف گزر رہا ہے ایک کلیدی قدر جوڑی میں. 621 00:29:38,860 --> 00:29:43,530 اہم اقتباس unquote، ہے عنوان، اور قیمت CS50 ہے. 622 00:29:43,530 --> 00:29:46,220 >> ہم نے کیا کیا تھا، تو اس C میں، اس کی بجائے طاقت 623 00:29:46,220 --> 00:29:49,400 اس طرح نظر آتے ہیں، صرف اقتباس unquote CS50-- 624 00:29:49,400 --> 00:29:52,460 یا اصل میں یہ گھوبگھرالی ہو جائے گا منحنی خطوط وحدانی، یا C میں اس طرح کچھ، 625 00:29:52,460 --> 00:29:55,580 جہاں اہم صفر ہے، اور قیمت CS50 ہے. 626 00:29:55,580 --> 00:29:59,840 لیکن ایک بار پھر، پی ایچ پی میں، اگرچہ نحو،، ایک بار پھر، ایک چھوٹا سا عجیب ہے 627 00:29:59,840 --> 00:30:02,860 یہ آپ میں منتقل کرنے کے لئے کی اجازت دیتا ہے الفاظ کی بجائے کی تعداد 628 00:30:02,860 --> 00:30:05,120 اقدار کے ساتھ چابیاں منسلک کرنے کے لئے. 629 00:30:05,120 --> 00:30:06,390 >> تو یہ سب کا کیا مطلب ہے؟ 630 00:30:06,390 --> 00:30:09,750 میں نے helpers.php میں جاتے ہیں، اس تقریب میں نظر آتے ہیں. 631 00:30:09,750 --> 00:30:13,620 renderHeader.php، بلکہ renderHeader، میری تقریب ہے 632 00:30:13,620 --> 00:30:16,220 اور مجھے دیکھنے کی وجہ سے جانتے ہیں کہ یہاں تقریب مطلوبہ الفاظ. 633 00:30:16,220 --> 00:30:19,450 یہ بظاہر یہ C سے نیا ہے data-- نامی ایک دلیل لیتا ہے 634 00:30:19,450 --> 00:30:22,400 لیکن میں نے اس سے ملاقات کر سکتے ہیں کچھ، لیکن میں، اعداد و شمار اس سے ملاقات کی 635 00:30:22,400 --> 00:30:25,090 صرف ایک چھوٹا سا clean-- ہونا اور صرف خاص طور پر، ایک اندازہ لے 636 00:30:25,090 --> 00:30:28,173 آپ کو کچھ دیگر میں پروگرام ہے تو پہلے اعلی سطح کی زبان، کچھ 637 00:30:28,173 --> 00:30:29,820 C اوپر، تصوراتی. 638 00:30:29,820 --> 00:30:33,820 >> کیا برابر اوپن بریکٹ کرتا ہے شاید مربع بریکٹ کا مطلب؟ 639 00:30:33,820 --> 00:30:35,540 یا اس کا کیا مطلب ہو سکتا ہے؟ 640 00:30:35,540 --> 00:30:39,660 ہم جی ہاں سی میں اس کو نہیں دیکھا ہے؟ 641 00:30:39,660 --> 00:30:40,480 >> ایک خالی صف. 642 00:30:40,480 --> 00:30:45,440 خاص طور پر، اس کا مطلب ہے کہ صارف renderHeader فون نہیں کرتا 643 00:30:45,440 --> 00:30:49,340 ایک دلیل کے ساتھ، میں اب بھی جا رہا ہوں ڈیٹا نامی ایک دلیل ہے، 644 00:30:49,340 --> 00:30:52,327 لیکن اس کے پہلے سے طے شدہ قیمت ہے ایک خالی صف کو ہونے جا رہا. 645 00:30:52,327 --> 00:30:53,660 تو یہ صرف ایک اچھی سہولت ہے. 646 00:30:53,660 --> 00:30:56,493 میں، صارف پر چللاو کی ضرورت نہیں ہے یا آپ کو میری تقریب غلط استعمال کہنا. 647 00:30:56,493 --> 00:30:59,849 میں صرف صارف ڈیفالٹ دے سکتے ہیں قیمت، میں خاص طور پر دیکھ بھال نہیں کرتے ہیں تو. 648 00:30:59,849 --> 00:31:01,890 اب یہ تقریب، ہوں میں اپنے ہاتھ لہر جا رہا. 649 00:31:01,890 --> 00:31:07,620 لیکن یہ نچوڑ تقریب کی اجازت دیتا ہے ہمارے اعداد و شمار میں ان متغیرات میں منتقل کرنے کے لئے 650 00:31:07,620 --> 00:31:10,360 مندرجہ ذیل طریقے سے کیا header.php میں. 651 00:31:10,360 --> 00:31:13,100 اور یہ آخری ٹکڑا ہے، میں Funky کی نحو کے، لگتا ہے. 652 00:31:13,100 --> 00:31:15,860 یہاں میرا نیا ورژن ہے اس کے header.php-- 653 00:31:15,860 --> 00:31:20,140 لفظی، کہتے تھے، کھلی بریکٹ عنوان CS50، اور یہ کہ یہ تھا. 654 00:31:20,140 --> 00:31:21,766 اور H1 لئے ایک ہی بات. 655 00:31:21,766 --> 00:31:24,310 >> اب یہ کہنا ہے کہ بظاہر بہت funky کچھ. 656 00:31:24,310 --> 00:31:28,030 اور مجھے اس کو آسان بنانے ایک لمحے کے لئے کے طور پر مندرجہ ذیل ہے. 657 00:31:28,030 --> 00:31:31,020 یہ میں نے کیا ہے ہونا میری عنوان تبدیل کر دیا گیا. 658 00:31:31,020 --> 00:31:35,140 تاہم، یہ تھوڑا بدسورت ہو رہی ہے پی ایچ پی کے ساتھ مسلسل کھلی بریکٹ کرنے کے لئے، 659 00:31:35,140 --> 00:31:36,610 اور پھر پرنٹ تقریب کا استعمال کرتے ہیں. 660 00:31:36,610 --> 00:31:40,810 یہ پی ایچ پی ایک آشلپی ہے کہ باہر کر دیتا ہے صرف ہے جس میں اس کے لئے سنکیتن، 661 00:31:40,810 --> 00:31:45,050 تکنیکی طور پر ایک ہے جس میں ایک برابر علامت، نام نہاد تقریب، بجائے پرنٹ کی بازگشت 662 00:31:45,050 --> 00:31:46,800 لیکن یہ مؤثر طریقے، ایک ہی بات ہے. 663 00:31:46,800 --> 00:31:48,440 >> یہ صرف بہتر لگ رہا ہے. 664 00:31:48,440 --> 00:31:50,510 یہ صرف ایک نحوی ہے چینی، اگر آپ، 665 00:31:50,510 --> 00:31:52,260 کہ میرا کوڈ تھوڑا بہتر نظر بناتا ہے. 666 00:31:52,260 --> 00:31:54,010 لیکن یہ باہر کر دیتا ہے، اور ہم ایک بار پھر یہ دیکھ لیں گے 667 00:31:54,010 --> 00:31:57,420 طویل عرصے سے پہلے، ہم اس کو فون کرنا پڑے سے annoyingly طویل تقریب میں بلایا 668 00:31:57,420 --> 00:32:00,582 ایچ ٹی ایم ایل کی خصوصی حروف میں پی ایچ پی، یہ باہر کر دیتا ہے کیونکہ 669 00:32:00,582 --> 00:32:02,790 بعض آدانوں ہیں ، صارف ہمیں دے سکتا ہے کہ 670 00:32:02,790 --> 00:32:05,160 یا صارفین ہمیں دے سکتا ہے، کہ ہماری ویب سائٹ کو توڑنے کے لئے جا رہے ہیں. 671 00:32:05,160 --> 00:32:07,035 لیکن ہم اس اگلے دیکھ لیں گے جاوا سکرپٹ کے ساتھ ہفتے. 672 00:32:07,035 --> 00:32:10,740 لیکن اب کے لئے، صرف جانتے ہیں کہ اس فائل، headers.php، صرف 673 00:32:10,740 --> 00:32:13,040 عنوان لیتا ہے میں گزر، اس کے بنانے کے 674 00:32:13,040 --> 00:32:17,380 یہ محفوظ ہے یقین ہے کہ ایک ویب میں لگایا جائے گا صفحے، اور یہ میری عنوان کے طور پر باہر spits 675 00:32:17,380 --> 00:32:18,640 اور میرے H1 کے طور پر. 676 00:32:18,640 --> 00:32:24,440 تو اب میں اس ورژن میں جانا تو، لیکچر اس کے عنوان واپس ہے کہ محسوس، 677 00:32:24,440 --> 00:32:28,630 ہفتے صفر واپس اس عنوان ہے، اور بے شک، ایچ ٹی ایم ایل میں پیدا کر رہا ہوں 678 00:32:28,630 --> 00:32:32,110 کیا میرا پہلا ورژن میں ایک جیسی ہے میرے سفید فاصلہ کے علاوہ was--، 679 00:32:32,110 --> 00:32:35,150 میں فارمیٹنگ شروع کر دیا ہے کیونکہ مختلف میرا کوڈ ایک چھوٹا سا. 680 00:32:35,150 --> 00:32:38,082 لیکن میں پیدا ہے مجھے پرواہ کوڈ. 681 00:32:38,082 --> 00:32:39,790 تو میرے لئے روک دیں صرف ایک لمحے اور دیکھیں 682 00:32:39,790 --> 00:32:42,200 کسی بھی سوال ہے تو یا الجھن میں تشکیل دے دیا ہے. 683 00:32:42,200 --> 00:32:44,970 684 00:32:44,970 --> 00:32:48,150 ٹھیک ہے، تو موڑ دیں تھوڑا مشکل یہاں 685 00:32:48,150 --> 00:32:51,500 وہاں ایک ہے تو دیکھنے کے لئے بہتری کے لئے موقع. 686 00:32:51,500 --> 00:32:56,130 helpers.php کی بھی یہ تھا تقریب، renderFooter بلایا. 687 00:32:56,130 --> 00:32:59,652 اور کے بارے میں قابل ذکر کیا ہے renderHeader، اور renderFooter؟ 688 00:32:59,652 --> 00:33:02,610 اور پھر، آج کے مقاصد کے لئے، جانتے ہیں نچوڑ تقریب صرف یہ ہے کہ 689 00:33:02,610 --> 00:33:08,280 پاسنگ دلائل کے اپنے طریقہ header.php اور footer.php میں. 690 00:33:08,280 --> 00:33:10,900 691 00:33:10,900 --> 00:33:11,780 >> معاف کیجئے گا؟ 692 00:33:11,780 --> 00:33:13,056 >> سامعین: [اشراوی] 693 00:33:13,056 --> 00:33:15,180 DAVID MALAN: جی ہاں، میں نے صرف لائن کی ضرورت تبدیل. 694 00:33:15,180 --> 00:33:19,410 تو لفظی، میں نے گناہ کا ارتکاب کیا ہے کاپی اور چسپاں کے، ایک بار پھر. 695 00:33:19,410 --> 00:33:21,920 یہ ایک بہت بڑی تعداد نہیں ہے لائنوں کی، لیکن on-- آئے 696 00:33:21,920 --> 00:33:25,220 میں کاپی اور چسپاں سب کچھ کر رہا ہوں تو صرف ایک چھوٹا سا لفظ تبدیل کرنے کے لئے، 697 00:33:25,220 --> 00:33:28,610 اور ایک چھوٹا سا لفظ ایلن بتاتے ہیں کہ باہر بمقابلہ، یہاں فوٹر یہاں ہیڈر. 698 00:33:28,610 --> 00:33:30,670 دوسری صورت میں، سب کچھ ہے ایک جیسی، کے علاوہ، 699 00:33:30,670 --> 00:33:32,180 کورس کے، تقریب کے نام. 700 00:33:32,180 --> 00:33:33,690 تو ہم بہتر کیا کر سکتے ہیں؟ 701 00:33:33,690 --> 00:33:39,810 >> ویسے مجھے اس ورژن کو کھول دیں یہاں، جس نے helpers.php میں، 702 00:33:39,810 --> 00:33:42,300 کیوں میں صرف ایک نہیں ملتا اس کے بارے میں ہوشیار کم؟ 703 00:33:42,300 --> 00:33:46,410 تھوڑا سا زیادہ پیچیدہ لکھیں کوڈ، لیکن یہ رینڈر کہتے ہیں؟ 704 00:33:46,410 --> 00:33:48,470 تو میں بنیادی طور پر کیا تبدیل کر دیا گیا ہے؟ 705 00:33:48,470 --> 00:33:51,770 >> یہ ایک دلیل لیتا ہے now-- دو دلائل، اب بھی ڈیٹا. 706 00:33:51,770 --> 00:33:54,444 اور پھر سب سے پہلے کیا ہے شاید کے لئے استعمال کیا جا رہا نام، 707 00:33:54,444 --> 00:33:55,860 آپ یہاں پڑھ رہے ہیں کی بنیاد پر کیا؟ 708 00:33:55,860 --> 00:33:58,452 یہاں تک کہ اگر نحو کے کچھ اب بھی نئی ہے. 709 00:33:58,452 --> 00:33:59,660 ڈالر کا نشان ٹیمپلیٹ کیا ہے؟ 710 00:33:59,660 --> 00:34:02,400 711 00:34:02,400 --> 00:34:03,016 >> معاف کیجئے گا؟ 712 00:34:03,016 --> 00:34:03,710 >> سامعین: ہیڈر یا فوٹر. 713 00:34:03,710 --> 00:34:04,510 >> DAVID MALAN: ہیڈر یا فوٹر. 714 00:34:04,510 --> 00:34:07,134 تو بظاہر، میں نے فیصلہ کیا کہ اگر تبدیل کر رہا ہے کہ صرف ایک ہی چیز 715 00:34:07,134 --> 00:34:10,159 میں چاہتا ہوں ٹیمپلیٹ ہے print-- اور سانچے کی طرف سے 716 00:34:10,159 --> 00:34:13,100 میں اس کے لئے بلیو پرنٹ ہے مطلب میں پیداوار کرنا چاہتے ہیں کہ کوڈ، 717 00:34:13,100 --> 00:34:16,350 لیکن میں کچھ میں پلگ کرنا چاہتے ہیں اقدار اگر ایسا ہے تو یہ صرف ہیڈر 718 00:34:16,350 --> 00:34:20,440 یا فوٹر، کیوں مجھے parameterize نہیں اور دلیل ڈالر کا نشان کال 719 00:34:20,440 --> 00:34:21,409 سانچے؟ 720 00:34:21,409 --> 00:34:26,250 اور پھر اس funky نحو مجھے اجازت دیتا ہے یہاں ایک متغیر میں ایک راستہ بنانے کے لئے. 721 00:34:26,250 --> 00:34:28,030 >> تو ڈالر کا نشان راہ ایک متغیر ہے. 722 00:34:28,030 --> 00:34:31,120 یہ نحو کرتا ہے آپ واقف ہیں تو، کیا ہے؟ 723 00:34:31,120 --> 00:34:32,512 جی ہاں؟ 724 00:34:32,512 --> 00:34:34,065 >> سامعین: [اشراوی] 725 00:34:34,065 --> 00:34:34,940 DAVID MALAN: بالکل. 726 00:34:34,940 --> 00:34:37,600 ٹیمپلیٹ ہے تو، اقتباس unquote، ہیڈر، یا سانچے ہے، 727 00:34:37,600 --> 00:34:41,170 اقتباس unquote، فوٹر، وہاں اس لائن میں پر روشنی ڈالی ہے کہ، لائن آٹھ، 728 00:34:41,170 --> 00:34:46,330 صرف ہیڈر کی طرح، اس کے نام لے جا رہا ہے، اور ڈاٹ پی ایچ پی کے ساتھ اس concatenating کی. 729 00:34:46,330 --> 00:34:49,750 تو ہم نے اس آپریٹر کی ضرورت نہیں تھی سی میں اس نقطہ آپریٹر ہے 730 00:34:49,750 --> 00:34:54,520 تم تو PHP-- میں ایک حیرت انگیز بات یہ ہے جاوا سکرپٹ یا جاوا کے ساتھ واقف، 731 00:34:54,520 --> 00:34:56,949 آپ کے علاوہ استعمال کر سکتے ہیں concatenation ایسا کرنے کے لئے دستخط. 732 00:34:56,949 --> 00:34:59,974 >> C میں، اس neck-- میں درد ہے چھ P- سیٹ اور میں، بہت افسوس ہے، 733 00:34:59,974 --> 00:35:02,390 تمہیں کیا کرنا ہے کرنے کے لئے جا رہے ہیں this-- یہ گردن میں درد ہے 734 00:35:02,390 --> 00:35:03,930 ڈور سلسلہ بندی کرنا. 735 00:35:03,930 --> 00:35:04,670 کیوں؟ 736 00:35:04,670 --> 00:35:06,580 ویسے، آپ کو مل گیا ہے کیونکہ اگر طویل عرصے سے اس ہے کہ ایک سٹرنگ، 737 00:35:06,580 --> 00:35:09,538 اور جب تک یہ ہے کہ ایک سٹرنگ، آپ کو صرف ان کے ساتھ پلگ نہیں کر سکتے. 738 00:35:09,538 --> 00:35:11,070 کیا آپ اس کے بجائے C میں کیا کرنا ہوگا؟ 739 00:35:11,070 --> 00:35:11,680 جی ہاں؟ 740 00:35:11,680 --> 00:35:12,380 >> سامعین: [اشراوی] 741 00:35:12,380 --> 00:35:15,090 >> DAVID MALAN: آپ malloc کرنا پڑے میموری، یا اسٹیک پر ایک صف کا استعمال کرتے ہیں. 742 00:35:15,090 --> 00:35:17,214 اور آپ اصل میں کرنا پڑے کافی اس صف بڑا بنانے 743 00:35:17,214 --> 00:35:20,940 اس کے علاوہ اس فٹ ہونے کے لئے، علاوہ الٹا سلیش صفر. 744 00:35:20,940 --> 00:35:24,994 تو استعمال کے ساتھ مل کر ان کے سلسلہ بندی لوپ کے لئے ایک کے ساتھ بلی یا دستی طور پر ہلچل، 745 00:35:24,994 --> 00:35:26,160 یا تکنیک کی کسی بھی تعداد. 746 00:35:26,160 --> 00:35:27,760 اور ہم آپ کو میں ایک جوڑے کو ظاہر P- سیٹ چھ. 747 00:35:27,760 --> 00:35:29,080 >> یہ گردن میں درد ہے. 748 00:35:29,080 --> 00:35:34,190 اور اس کے بارے میں کیا مطلب ہے واقعی ہے پی ایچ پی بمقابلہ سی کی طرح this-- بمقابلہ اس. 749 00:35:34,190 --> 00:35:36,870 آپ کو صرف اتنا زیادہ حاصل مفت کے لئے فعالیت، 750 00:35:36,870 --> 00:35:39,030 آپ کو توجہ مرکوز کر سکتے ہیں تاکہ، مثالی طور پر، مذاق پر 751 00:35:39,030 --> 00:35:41,190 کوڈنگ کا حصہ، آپ کو حل کرنا چاہتے ہیں اس منصوبے، 752 00:35:41,190 --> 00:35:43,190 بلکہ کم سطح باریکیوں سے. 753 00:35:43,190 --> 00:35:49,840 >> تو یہ صرف پیدا کیا header.php یا میں نے فون جس میں سے ایک کی بنیاد پر کیا footer.php. 754 00:35:49,840 --> 00:35:52,280 اور یقینا میں جاتے ہیں تو index.php کو میں، نوٹس 755 00:35:52,280 --> 00:35:56,230 سب اس کے بجائے changed-- ہے ہیڈر رینڈر یا فوٹر رینڈر بلا، 756 00:35:56,230 --> 00:36:00,230 کی طرف سے پیروی کی، رینڈر بلا رہا ہوں میں کرنا چاہتا ہوں کہ سانچے کا نام. 757 00:36:00,230 --> 00:36:02,370 اور تم بھی، یہ دیکھ لیں گے، مسئلہ میں، سات سیٹ 758 00:36:02,370 --> 00:36:05,530 ہم آپ کو استعمال کرنے کے لئے کی اجازت دیتے ہیں جس کے تحت ایک ہی تقریب bunches بنانے کے لئے 759 00:36:05,530 --> 00:36:07,550 اور مختلف ویب صفحات کے bunches. 760 00:36:07,550 --> 00:36:10,570 >> تو بجائے بھی بسنے سے زیادہ ان تفصیلات کی پر بہت زیادہ 761 00:36:10,570 --> 00:36:13,210 میں ایک بار پھر دیکھ لیں گے جس مسئلہ سیٹ کی دیکھو seven-- 762 00:36:13,210 --> 00:36:16,850 ایک حل اب شروع میں ایک سے زیادہ دلچسپ مسئلہ کے لئے. 763 00:36:16,850 --> 00:36:19,310 اس طرح اب تک، کچھ بھی نہیں ہم نے کیا بچا لیا اعداد و شمار ہے. 764 00:36:19,310 --> 00:36:22,920 اصل میں، صرف وقت ہم نے کبھی محفوظ کر لیا ہے ہم اس کی کلاس میں کیا ہے کچھ 765 00:36:22,920 --> 00:36:31,030 ہم تھوڑی دیر کے ایک بہت سادہ ڈیمو پڑا ہے جب واپس، جس کے تحت ہم C میں فائل IO استعمال 766 00:36:31,030 --> 00:36:34,520 اور مجھے میرے نام میں ٹائپ لگتا ہے، اور ہننا کا نام، اور ماریا کا نام، 767 00:36:34,520 --> 00:36:37,610 یا شاید اینڈی کا نام، اور پھر ہم ایک CSV فائل کو محفوظ کر لیا 768 00:36:37,610 --> 00:36:39,430 کوما اقدار فائل الگ. 769 00:36:39,430 --> 00:36:43,530 >> اور مجھے لگتا ہے کہ ہم fopen-- استعمال مجھے یاد کے طور پر ہم، fprintf استعمال 770 00:36:43,530 --> 00:36:44,910 اور ہم کسی فائل کو محفوظ. 771 00:36:44,910 --> 00:36:46,920 اب، کہ آسان ہے ایک ڈیٹا بیس کی شکل. 772 00:36:46,920 --> 00:36:50,230 آپ کے لئے ایک ویب سائٹ بنانے کے لئے چاہتے ہیں Frosh IMS پروگرام، جس کے تحت freshmen کے 773 00:36:50,230 --> 00:36:53,390 مثالی طور پر، ایک کھیل کے لئے آپ کو رجسٹر کر سکتے ہیں کہ اعداد و شمار کے ساتھ کچھ کرنا چاہتا ہوں. 774 00:36:53,390 --> 00:36:55,370 گزشتہ ہفتے، ہم کچھ نہیں کیا data-- ساتھ ہم صرف اتنا کہا، 775 00:36:55,370 --> 00:36:56,661 آپ سچ میں نہیں، رجسٹرڈ ہیں. 776 00:36:56,661 --> 00:36:58,950 یا شاید میں نے ای میل پراکٹر، اور یہ کہ یہ تھا. 777 00:36:58,950 --> 00:37:02,110 >> میں کر سکتا ہوں لیکن اگر یہ اچھا ہو گا ، کہ پراکٹر ایک CSV فائل دے 778 00:37:02,110 --> 00:37:03,340 ایک ایکسل فائل کی طرح. 779 00:37:03,340 --> 00:37:05,090 یا اس سے بہتر ابھی تک، یہ کرے گا میں کر سکتا ہوں تو اچھا ہو 780 00:37:05,090 --> 00:37:08,830 ان صارفین کے ناموں ڈال دیا اور ناموں چھاترالی اور اس کے سب 781 00:37:08,830 --> 00:37:11,740 ایک ڈیٹا بیس میں ہے کہ صرف، ہمیشہ رہتا ہے 782 00:37:11,740 --> 00:37:13,530 جب تک میں ڈیٹا حذف کرنے کا انتخاب. 783 00:37:13,530 --> 00:37:15,645 کی اجازت دیتا ہے کہ ایک ڈیٹا بیس مجھے معلومات سوال. 784 00:37:15,645 --> 00:37:18,070 اور بے شک، کہ ایک ڈیٹا بیس کیا ہے. 785 00:37:18,070 --> 00:37:20,470 >> آج ہم کو متعارف کرانے، اور اگلے ہفتے، بھی، ایک ٹیکنالوجی 786 00:37:20,470 --> 00:37:25,020 کہا جاتا SQL-- تشکیل استفسار ایک زبان ہے جو زبان،. 787 00:37:25,020 --> 00:37:28,750 یہ بنیادی طور پر ایک پروگرامنگ ہے زبان، لیکن ڈیٹا بیس کے لئے. 788 00:37:28,750 --> 00:37:31,760 اور اب کے لئے ایک ڈیٹا بیس، صرف ایک سپر فینسی ورژن کے طور پر کے بارے میں سوچنا 789 00:37:31,760 --> 00:37:35,710 مائیکروسافٹ ایکسل، یا گوگل کے سپریڈ شیٹ، یا ایپل نمبر. 790 00:37:35,710 --> 00:37:39,950 یہ عام طور پر کی اجازت دیتا ہے کہ ایک پروگرام ہے آپ اعداد و شمار کے پورے گچرچھی ذخیرہ کرنے کے لئے 791 00:37:39,950 --> 00:37:43,960 قطار اور کالم میں، کافی جیسے آپ کو ایکسل میں شاید. 792 00:37:43,960 --> 00:37:47,100 >> لیکن کیا خاص طور پر اگر، اچھا ہے ہم ایکسل کے ساتھ سپر واقف نہیں ہیں 793 00:37:47,100 --> 00:37:52,040 کیا SQL آپ کو ایسا کرنے کی اجازت دیتا ہے کے سوال یہ ہے کوڈ کی لائنیں لکھ کر معلومات 794 00:37:52,040 --> 00:37:55,220 جہاں آپ کر سکتے ہیں، یہاں تک کہ اگر آپ ڈیٹا بیس، اس میں ایک ملین لائنیں 795 00:37:55,220 --> 00:37:57,190 آپ چیزوں کو تلاش کر سکتے ہیں سپر روزہ. 796 00:37:57,190 --> 00:37:59,950 اصل میں، خاص طور پر ایکسل ہے بڑی ڈیٹا سیٹ میں برا. 797 00:37:59,950 --> 00:38:02,460 اور حقیقت میں، چند ایک کے لئے سائن اپ سال پہلے، نکلے 798 00:38:02,460 --> 00:38:08,890 ایکسل صرف آپ کو محفوظ کرنے کے لئے کی اجازت دے گا data-- جن میں اپ کے لئے 65.535 قطار 799 00:38:08,890 --> 00:38:12,020 میں بلکہ، ایک بہت کی طرح لگتا ہے وقت میں، ایک گراڈ طالب علم تھا 800 00:38:12,020 --> 00:38:14,920 اور میں پر tripping یاد اس میں پیدا کیا گیا تھا کی وجہ سے 801 00:38:14,920 --> 00:38:17,900 میری تحقیق اور میں CSV فائلوں انہیں فوری طور پر تجزیہ کرنے کے لئے کرنا چاہتا تھا 802 00:38:17,900 --> 00:38:19,530 صرف ایکسل میں کھولنے کی طرف سے. 803 00:38:19,530 --> 00:38:23,730 کورس کے، میرے کمپیوٹر صرف گر کر تباہ ہوگیا، میں زیادہ سے زیادہ 65،000 قطار تھا کیونکہ. 804 00:38:23,730 --> 00:38:27,210 >> لیکن 65.535 جہاں سے آیا تھا؟ 805 00:38:27,210 --> 00:38:29,670 مائیکروسافٹ کیا کر رہی تھی، شاید؟ 806 00:38:29,670 --> 00:38:32,430 تم دونوں کے اپنے اختیارات کے ساتھ اچھے ہیں؟ 807 00:38:32,430 --> 00:38:37,160 جی ہاں، وہ ایک 16 بٹ کا استعمال کرتے ہوئے قیمت صفیں کی نمائندگی کرنے. 808 00:38:37,160 --> 00:38:41,310 اور 16 کے لئے دو ہے 65،536-- مائنس ایک، کیونکہ اگر آپ 809 00:38:41,310 --> 00:38:45,414 صفر انڈیکس تھا کہ کا مطلب ہے میں کر سکتے ہیں قطاروں کی سب سے زیادہ تعداد. 810 00:38:45,414 --> 00:38:46,830 اور یہ صرف ایک ڈیزائن فیصلہ تھا. 811 00:38:46,830 --> 00:38:52,760 16 بٹس بچانے کی طرف سے، انہوں نے مجھ سے محدود بجائے 4 ارب کے 16،000 قطار، کرنے کے لئے، 812 00:38:52,760 --> 00:38:54,322 جس میں مثالی طور پر تھا ہو سکتا ہے. 813 00:38:54,322 --> 00:38:57,030 لیکن اب کے لئے، ہم جا رہے ہیں ایک ویب تناظر میں اس سے زیادہ متعارف کرانے. 814 00:38:57,030 --> 00:39:00,390 اور کیا ایس کیو ایل کے بارے میں اچھی بات ہے کہ اس سے بھی ہے یہ بہت طاقتور اور خوبصورت ہے، اگرچہ 815 00:39:00,390 --> 00:39:04,050 نفیس، یہ واقعی فوڑے نیچے چار اہم آپریشن، چار 816 00:39:04,050 --> 00:39:08,060 اہم افعال، آپ کے منتخب کردہ will-- تو، ، ڈیٹا کی بازیافت تلاش کرنے کے لئے 817 00:39:08,060 --> 00:39:12,510 ڈیٹا کے لئے؛ حذف یا ڈیٹا کو خارج. ڈیٹا بیس کے لئے لائنیں شامل کرنے کے لئے داخل؛ 818 00:39:12,510 --> 00:39:13,410 اور اپ ڈیٹ. 819 00:39:13,410 --> 00:39:17,010 کیا تم نے کبھی استعمال کیا ہے تو گوگل سپریڈ شیٹ، ایپل نمبر، مائیکروسافٹ 820 00:39:17,010 --> 00:39:19,310 ایکسل، آپ کو پھانسی دے دی ہے، سب سے زیادہ امکان، تمام 821 00:39:19,310 --> 00:39:22,530 ایک انسان کے طور پر ان کی کارروائیوں کی طرف سے صرف اپنے کی بورڈ اور mouse-- استعمال 822 00:39:22,530 --> 00:39:26,050 آپ کی آنکھوں، ڈیٹا ڈالنے کا استعمال کرتے ہوئے منتخب کریں یا ڈیٹا کے لئے تلاش کرنے کے لئے، 823 00:39:26,050 --> 00:39:28,360 یا اپ ڈیٹ ڈیٹا، یا حذف ڈیٹا. 824 00:39:28,360 --> 00:39:29,870 >> تو اس کا کیا مطلب ہے؟ 825 00:39:29,870 --> 00:39:34,300 ویسے، CS50 میں پہلے سے نصب IDE ایس کیو ایل نامی ایک پروگرام ہے. 826 00:39:34,300 --> 00:39:37,050 یہ ایک مفت، اوپن سورس ہے سپر مقبول ہے کہ ڈیٹا بیس. 827 00:39:37,050 --> 00:39:40,590 فیس بک، مثال کے طور پر، اس سے اس کا استعمال کرتا وہ استعمال کرتے ہیں کہ دوسرے آلات کے درمیان دن،. 828 00:39:40,590 --> 00:39:44,300 اور بہت مقبول ویب سائٹس کی ایک بہت استعمال کرتے ہیں اس بڑے حصے میں اس سے روزہ ہے کیونکہ 829 00:39:44,300 --> 00:39:45,230 اور یہ مفت ہے کیونکہ. 830 00:39:45,230 --> 00:39:46,820 یقینی طور پر، اگرچہ متبادل موجود ہیں. 831 00:39:46,820 --> 00:39:49,580 اور تم میں سے بعض کے ساتھ بگونا سکتا آخری منصوبوں کے لئے متبادل. 832 00:39:49,580 --> 00:39:55,330 >> اس کے، اس دوران، ایک اسکرین شاٹ ہے phpMyAdmin کے نامی ایک ویب کی بنیاد پر آلہ. 833 00:39:55,330 --> 00:39:58,260 یہ ایک اتفاق نہیں ہے کہ اس ویب پر مبنی آلے کے بھی ہے 834 00:39:58,260 --> 00:40:01,720 ایک زبان میں لکھا گیا، پی ایچ پی، لیکن یہ ایسا کرنے کا مطلب ہے 835 00:40:01,720 --> 00:40:04,620 ہمیں دے رہا ہے ایک ویب کی بنیاد ایک ڈیٹا بیس انٹرفیس. 836 00:40:04,620 --> 00:40:07,180 ایس کیو ایل عام طور پر ہے کیونکہ کچھ، تاریخی طور پر، آپ 837 00:40:07,180 --> 00:40:08,770 صرف کے ساتھ بات چیت کریں گے ایک کمانڈ لائن کے ساتھ. 838 00:40:08,770 --> 00:40:10,811 اور یہ سپر ہو جائے گا پریشان اور حاصل کرنے میں Arcane 839 00:40:10,811 --> 00:40:14,487 منتخب کرنے کے لئے ٹیکسٹ حکم ٹائپ کرنے اعداد و شمار، ڈیٹا داخل، اور اعداد و شمار کو خارج کر دیں. 840 00:40:14,487 --> 00:40:16,820 انٹرنیٹ پر تو کچھ لوگوں ایک ویب پر مبنی پروگرام لکھا 841 00:40:16,820 --> 00:40:18,900 بس ہمیں منظم کرتے ہیں کہ ہمارے ڈیٹا بیس میں اعداد و شمار. 842 00:40:18,900 --> 00:40:23,040 یہ ایکسل پر ڈبل کلک کی طرح ہے، اور اس ایک ویب کی بنیاد پر ورژن چل رہا ہے. 843 00:40:23,040 --> 00:40:26,370 >> اور آپ کے لئے اس کا استعمال کرنے جا رہے ہیں بالآخر اگلے ہفتے، نہیں میں P- سیٹ چھ، 844 00:40:26,370 --> 00:40:28,680 لیکن کچھ تعمیر کرنے کے لئے ہے CS50 خزانہ، کہا جاتا ہے جس 845 00:40:28,680 --> 00:40:32,630 کا ایک ڈیٹا بیس کی جا رہی ہے صارف کا نام اور پاس ورڈ کے ساتھ صارفین،، 846 00:40:32,630 --> 00:40:34,860 ڈالر کی رقم ہے کہ وہ ان کے بینک اکاؤنٹس میں ہے. 847 00:40:34,860 --> 00:40:37,280 یہ ہونے جا رہا ہے آپ کو محفوظ کرنے کے لئے استعمال کچھ 848 00:40:37,280 --> 00:40:39,910 علامات اور مقدار اسٹاک کی ہے کہ صارفین 849 00:40:39,910 --> 00:40:42,567 مجازی استعمال خریدا ہے تم نے ان سے دے دیں گے کہ ڈالر. 850 00:40:42,567 --> 00:40:44,900 اور صارفین کی اجازت دینے جا رہا ہے آپ کی ویب سائٹ کے لئے رجسٹر کرنے، 851 00:40:44,900 --> 00:40:47,190 یہاں تک کہ اپنے دوستوں کہ اپنی ویب سائٹ پر میں کر سکتے ہیں کی دھن 852 00:40:47,190 --> 00:40:49,360 اور اصل میں رجسٹر، میں لاگ ان کریں، اور ارد گرد کھیلنے کے 853 00:40:49,360 --> 00:40:52,807 اور آپ کے کوڈ میں غلطی تلاش کرنے کی کوشش، اور اپنی ویب سائٹ میں کیڑے تلاش کرنے کی کوشش. 854 00:40:52,807 --> 00:40:55,390 اور وہ صرف رجسٹر ہوں مؤثر طریقے سے، خود انہوں نے مزید کہا، 855 00:40:55,390 --> 00:40:58,120 کوڈ کے ذریعے آپ کو آپ کے ڈیٹا بیس کو لکھیں. 856 00:40:58,120 --> 00:41:02,470 >> مثال کے طور پر، یہ ایک فوری اسکرین شاٹ ہے کیا ہے کی ایک ڈیٹا بیس کی طرح نظر ہو سکتا ہے. 857 00:41:02,470 --> 00:41:05,190 اس میں سے ایک سے تھا گزشتہ سال کے solutions-- 858 00:41:05,190 --> 00:41:07,760 یہ ایک منی ایکسل کی طرح ہے ہمارے ڈیٹا بیس میں محفوظ کیا، فائل، 859 00:41:07,760 --> 00:41:09,950 ایس کیو ایل کہا جاتا ہے اس سافٹ ویئر میں ذخیرہ. 860 00:41:09,950 --> 00:41:13,260 بائیں ہاتھ کی طرف پر، میں بظاہر ہے ہر صارف ایک منفرد نمبر دیا. 861 00:41:13,260 --> 00:41:16,200 دوسرے کالم میں، میں دیا ہے سب کو ایک صارف اپنے نام بتاو 862 00:41:16,200 --> 00:41:16,880 ان کے درمیان. 863 00:41:16,880 --> 00:41:21,430 اور دائیں ہاتھ کی طرف، میں نے انہیں ایک ہیش دیا ہے. 864 00:41:21,430 --> 00:41:26,760 >> اب یہ اصل میں ایک پاس ورڈ ہے، لیکن یہ ایک سادہ متن پاس ورڈ نہیں ہے. 865 00:41:26,760 --> 00:41:30,160 یہ تو، ایک مرموز پاس ورڈ ہے تم کروگے، یا ایک ہیش پاس ورڈ. 866 00:41:30,160 --> 00:41:32,000 جو ہم طویل عرصے سے پہلے واپس آ جائیں گے. 867 00:41:32,000 --> 00:41:34,340 >> لیکن کیا تم نے کبھی پڑھا ہے تو کس طرح کے بارے میں ایک مضمون 868 00:41:34,340 --> 00:41:37,950 کچھ بینک یا کچھ پر آپ کے پاس ورڈ ویب سائٹ، سمجھوتہ کیا گیا ہے ہو سکتا ہے 869 00:41:37,950 --> 00:41:39,630 یہ عام طور پر دو چیزوں میں سے ایک مطلب ہو سکتا ہے. 870 00:41:39,630 --> 00:41:42,780 تو یہ چھ صارفین کی صرف ایک اقتباس ہے. 871 00:41:42,780 --> 00:41:45,460 تم سب اب اندازہ لگا سکتے ہیں ہیکنگ یا کریکنگ کے ذریعے باہر 872 00:41:45,460 --> 00:41:47,690 ہمارے چھ لوگوں کے پاس ورڈ ہیں. 873 00:41:47,690 --> 00:41:49,720 لیکن تم نے کبھی ملا ہے تو ایک انتباہ یا ایک معافی 874 00:41:49,720 --> 00:41:52,803 ایک کمپنی یا ویب سائٹ کہاوت سے، معذرت، ہیکر، ہمارے ڈیٹا بیس میں توڑ دیا 875 00:41:52,803 --> 00:41:56,360 آپ کو شاید آپ کو تبدیل کرنا چاہئے پاس ورڈ، اس کا کیا مطلب ہو سکتا ہے؟ 876 00:41:56,360 --> 00:41:59,670 >> ویسے، ایک، مطلب ہو سکتا ہے کمپنی، زیادہ moronic رہا ہے 877 00:41:59,670 --> 00:42:03,630 اور آپ کے پاس ورڈ کو محفوظ کرنے کے کیا گیا ہے اس طرح ایک کالم میں، غیرخفیہ کردہ. 878 00:42:03,630 --> 00:42:05,840 کون دشمن کا مطلب ہے، جو، ڈیٹا بیس چرا لیا 879 00:42:05,840 --> 00:42:07,440 لفظی آپ جانتا ہے نام اور پاس ورڈ. 880 00:42:07,440 --> 00:42:08,960 یہ ممکن بدترین منظر نامے ہے. 881 00:42:08,960 --> 00:42:11,710 اور آپ P- سیٹ میں دیکھیں گے کے طور پر سات، سے بچنے کے لئے اتنا آسان. 882 00:42:11,710 --> 00:42:15,624 بالکل کوئی عذر اس کے لئے نہیں ہے آج کی انٹرنیٹ میں حماقت کی شکل. 883 00:42:15,624 --> 00:42:18,540 Two-- اور ہم نے کچھ مضامین تلاش کر لیں گے یہ اب بھی حقیقت یہ ہے کہ گواہی دینے کے لئے 884 00:42:18,540 --> 00:42:21,710 nonetheless--، ہوتا دو، شاید مخالف 885 00:42:21,710 --> 00:42:23,840 ڈیٹا بیس کے اس ورژن چرا لیا. 886 00:42:23,840 --> 00:42:27,110 جو، اب بھی قسم کی برا ہے کیونکہ اب انہوں نے چھ صارفین جانتے ہیں کہ، 887 00:42:27,110 --> 00:42:29,270 میں صارف نام جاننا ان چھ گاہکوں کی، 888 00:42:29,270 --> 00:42:32,910 اور میں مرموز جانتے ورژن، یا سے hashed ورژن، 889 00:42:32,910 --> 00:42:34,340 ان چھ صارفین کے پاس ورڈ کی. 890 00:42:34,340 --> 00:42:37,010 تم میں سے کسی لیکن جو شاید کیا ہے [؟ ہیکر 2؟] 891 00:42:37,010 --> 00:42:41,150 آپ کو پاس ورڈ پھٹے، یا لیا جہاں ایک مسئلہ کی اس ورژن کی طرف دیکھو 892 00:42:41,150 --> 00:42:46,280 سیٹ، کیوں اب بھی تھوڑا سا پریشان کن ہے دشمن آپ ہیش جانتا ہے 893 00:42:46,280 --> 00:42:47,435 پاس ورڈ؟ 894 00:42:47,435 --> 00:42:49,732 >> سامعین: وہ کر سکتا ہے کیونکہ پورے لغت میں داخل 895 00:42:49,732 --> 00:42:50,690 ہیش تقریب میں. 896 00:42:50,690 --> 00:42:54,520 اور اپنے پاس ورڈ کو ایک ڈکشنری ہے تو لفظ، [؟ وہ صرف match-- سکتا ہے؟] 897 00:42:54,520 --> 00:42:57,640 >> DAVID MALAN: بالکل، مخالف صرف تم میں سے بعض کی طرح، کوڈ لکھ سکتے ہیں 898 00:42:57,640 --> 00:43:00,526 [کے لیے کیا؟ ہیکر؟] 2، آپ iterate جس 899 00:43:00,526 --> 00:43:03,400 لغت میں الفاظ کی تمام، ایک یا تمام ممکنہ کے مجموعے 900 00:43:03,400 --> 00:43:06,610 Z کے ذریعے اور کے ذریعے ایک nine-- جس میں ایک بہت کی طرح لگتا ہے، اور یہ ہے. 901 00:43:06,610 --> 00:43:08,361 لیکن ایک کمپیوٹر کے لئے، یہ خوبصورت رفو روزہ ہے. 902 00:43:08,361 --> 00:43:10,610 اور حقیقت میں، تھا [کے نقطہ؟ ہیکر 2،؟] تھا 903 00:43:10,610 --> 00:43:12,540 جو چیزیں لینے کے لئے لفظی، اس طرح لگ رہا 904 00:43:12,540 --> 00:43:14,900 اور ریورس انجنیئر کیا یہ اصل میں تھا. 905 00:43:14,900 --> 00:43:17,270 >> ہم کس طرح کر سکتے ہیں تو ہم پر نظر ڈالیں گے زیادہ مؤثر طریقے سے اس سٹور. 906 00:43:17,270 --> 00:43:20,210 ، شکر ہے ایس کیو ایل میں، باہر کر دیتا ہے اعداد و شمار اقسام ہونا وہاں جا رہے ہیں. 907 00:43:20,210 --> 00:43:22,800 اور کے بارے میں مذاق حصوں میں سے ایک ڈیٹا بیس ڈیزائن،، ایماندار ہونا 908 00:43:22,800 --> 00:43:25,810 اصل میں خود کے لئے فیصلہ کیا جاتا ہے کس طرح آپ کو ڈیٹا کی نمائندگی کرنا چاہئے؟ 909 00:43:25,810 --> 00:43:29,630 آپ کے طور پر ایک فون نمبر کی نمائندگی کرنا چاہئے ایک بڑی تعداد، یا ایک طویل طرح ایک int،؟ 910 00:43:29,630 --> 00:43:31,630 یا آپ کو اصل میں یہ کرتے ہیں حروف کی ایک ہی تسلسل کے طور پر؟ 911 00:43:31,630 --> 00:43:33,780 اور بہت سے ہو سکتا ہے اس کی غیر معمولی اثرات. 912 00:43:33,780 --> 00:43:36,714 >> اصل میں، ایک ابتدائی، مزہ متعلق کہانیاں 913 00:43:36,714 --> 00:43:39,880 مارک Zuckerberg تعمیر کیا گیا تھا جب فیس بک، یہ اصل میں لکھا گیا ہے، 914 00:43:39,880 --> 00:43:42,300 اور اب بھی زیادہ تر پی ایچ پی میں لکھا ہے. 915 00:43:42,300 --> 00:43:45,400 اور سب سے بڑے چیلنجوں میں سے ایک وہ ابتدائی پیمائی گیا تھا کا سامنا کرنا پڑا. 916 00:43:45,400 --> 00:43:48,820 وہ بعد اسکول کا اضافہ رہا تو سکول کے بعد، میرے علم میں، 917 00:43:48,820 --> 00:43:51,639 اصل حل میں سے ایک کاپی اور پیسٹ کرنے بنیادی طور پر تھا 918 00:43:51,639 --> 00:43:53,430 ڈیٹا بیس میں سے کچھ اور کوڈ کے کچھ، 919 00:43:53,430 --> 00:43:55,346 ہارورڈ تھا تاکہ اپنے سرور پر چلنے، 920 00:43:55,346 --> 00:43:56,995 اور ایم ائی ٹی کے اپنے سرور پر چل رہا تھا. 921 00:43:56,995 --> 00:43:59,120 یہ تھا کیوں، کے لئے کچھ تم میں سے جو یاد کر سکتے ہیں، 922 00:43:59,120 --> 00:44:01,510 آپ دوستوں نہیں کر سکتے ہیں دوسرے نیٹ ورکس میں. 923 00:44:01,510 --> 00:44:05,050 >> آپ نے شاید میں دوست نہیں ہے 10 یا اس سال پہلے ایم ائی ٹی یا ہارورڈ، 924 00:44:05,050 --> 00:44:07,467 لیکن آپ کے نیٹ ورک اسپین نہیں کر سکتے جزوی طور پر اس کی وجہ سے. 925 00:44:07,467 --> 00:44:10,550 اور اس کے لئے سب سے بڑے چیلنجوں میں سے ایک مارک اور فیس بک جیسی کمپنیوں کے لئے 926 00:44:10,550 --> 00:44:13,460 اصل میں سینکڑوں ہینڈلنگ ہے اور ہزاروں اور لاکھوں 927 00:44:13,460 --> 00:44:14,460 فی سیکنڈ درخواستوں کی. 928 00:44:14,460 --> 00:44:16,501 تو چیزیں ہم شروع کریں گے اس ہفتے کے بارے میں بات 929 00:44:16,501 --> 00:44:19,860 واقعی کے متعلق ہونے جا رہے ہیں اچھا سافٹ ویئر لکھنے، اور مقبول 930 00:44:19,860 --> 00:44:23,040 کامیاب اوزار کہ صارفین کی بہت سی کو سنبھال سکتا ہوں. 931 00:44:23,040 --> 00:44:25,460 >> تو ہم چیزوں کے بارے میں بات کریں گے تخکرمن اور تلاش کی طرح، 932 00:44:25,460 --> 00:44:26,910 لیکن آج کے لئے ہے. 933 00:44:26,910 --> 00:44:28,780 ہم آپ کو بدھ سے زیادہ کے لئے آپ دیکھیں گے. 934 00:44:28,780 --> 00:44:31,780 935 00:44:31,780 --> 00:44:33,902 >> [MUSIC - "Seinfeld کے" تھیم] 936 00:44:33,902 --> 00:44:35,943 DAVID MALAN: آپ کر سکتے ہیں یہ، اور اس سے منہا. 937 00:44:35,943 --> 00:44:38,859 اور آپ کے ساتھ رہنا کی ضرورت نہیں ہے میموری میں سے کچھ پہلے سے مقرر رقم. 938 00:44:38,859 --> 00:44:40,580 ٹھیک ہے، اس بلایا جا رہا ہے؟ 939 00:44:40,580 --> 00:44:42,369 >> اسپیکر 1: ٹھیک ہے، کیا ہو رہا ہے؟ 940 00:44:42,369 --> 00:44:43,535 اسپیکر 2: آپ کو کیا مطلب ہے؟ 941 00:44:43,535 --> 00:44:44,451 انہوں نے کہا کہ ایک لیکچر دے رہا ہے. 942 00:44:44,451 --> 00:44:47,650 DAVID MALAN: اور ہم ایک استعمال کر سکتے ہیں تقریب میموری کو malloc کہا جاتا ہے 943 00:44:47,650 --> 00:44:50,050 >> اسپیکر 1: کیوں اس کی باہوں منتقل نہیں کر رہے ہیں؟ 944 00:44:50,050 --> 00:44:52,450 >> اسپیکر 2: ویسے that's-- آپ کو معلوم ہے، کہ عام ہے. 945 00:44:52,450 --> 00:44:57,162 وہ صرف ہے جیسے یہ صرف ہے بڑا sausages کے وہاں پھانسی. 946 00:44:57,162 --> 00:44:59,040 >> اسپیکر 1: یہ عام ہے؟ 947 00:44:59,040 --> 00:45:03,096 >> اسپیکر 2: جی ہاں، میں ہم سوچتے ہیں صرف اتفاقی طور پر وہ فرض 948 00:45:03,096 --> 00:45:06,840 superglue ہے کے ساتھ ان کی جگہ لے لی deodorant کے. 949 00:45:06,840 --> 00:45:07,608