ہننا BLUMBERG: ہیلو سب. ہم شروع کرنے کے لئے جا رہے ہیں منٹ کے صرف ایک جوڑے ابتدائی ہم ایک پوری بہت ہے کے بعد سے مواد کے ذریعے حاصل کرنے کے لئے. میں ہننا ہوں. میں ایک TF ہوں. ماریا میں شامل ہونے جا رہا ہے ہمیں صرف ایک جوڑے منٹ میں. وہ حق سے پہلے سیکشن سکھاتا. میں سیکشن حق سکھانے کے بعد، تو ہم جا رہے ہیں گھنٹہ اور ایک نصف کے لئے رکھنے کے لئے. تم یہاں دیکھ لیں گے تو کے طور پر، ہم کافی ہے چند موضوعات ہم، کے ذریعے حاصل کرنے کی ضرورت ہے تو ہم تیزی سے تھوڑا سا جا رہا ہوں. لیکن کسی بھی موڑ پر اگر ہم کچھ کہنا بھی فوری طور پر یا آپ کو سمجھ میں نہیں آتا، سوالات کے ساتھ رکاوٹ بلا جھجھک. ہم اس کو بنانے کے لئے کے قابل بننا چاہتا ہوں تم میں سے سب کے لئے مفید کے طور پر سیشن کا جائزہ لینے کے ممکن طور پر. بہت اچھا ہے. تو ساتھ میں صحیح کود کچھ موضوعات کہ ہم اصل میں بہت، بہت مختصر کے لئے شامل کوئز 0 جائزہ لینے کے سیشن میں کوئز 0. تو منسلک کی فہرست کے ساتھ شروع. تو آپ کو کچھ ہے بات کو یقینی بنانا منسلک کی فہرست کے بارے میں بنیادی علم اور ایسا کرنے آرام دہ اور پرسکون ہیں بنیادی آپریشن میں سے کچھ. تو، کا جائزہ لینے سے منسلک فہرستوں arrays کے مقابلے میں بہتر ہیں وہ متحرک طور پر ترقی کر سکتا ہے کی وجہ سے. تو ہم نے اس بہت بڑا فائدہ ہے. ہم ان کا استعمال کیا دیکھا ہے ہیش ٹیبل میں جب ہم کس طرح بہت سے نہیں جانتے چیزوں کو ہم کرنا چاہتے ہیں جا رہے ہیں ہمارے اعداد و شمار کے ڈھانچے میں شامل کرنے کے لئے. بدقسمتی سے، ہم کے ٹکڑے ہے تمام میموری سے زیادہ لنک کی فہرست، تو ہم ضروری نہیں ہو گا مسلسل وقت تک رسائی کرنے کے قابل لنک کی فہرست میں کسی بھی عنصر پر. ایک تلاش کرنے کے لئے خاص طور پر عنصر، ہم تمام iterate کرنا ہے شروع سے راستہ. تاکہ ذہن میں رکھنے کی سب سے زیادہ ہے کہ بنیادی آپریشن 1 ومیگا ہیں. تو ڈالیں صرف 1 لے جا رہا ہے. حذف لے (ن) کے بعد جا رہا ہے فہرست سے مل جانا ہے. اور تلاش کے (ن)، سب سے زیادہ، لے سکتا ہے. ہم ایسا کچھ نہیں کر سکتے ہیں ایک لنک کی فہرست پر بائنری تلاش کے بعد سے ہم نہیں کر سکتے ہیں صرف تصادفی وسط میں نہیں کود. ٹھنڈا. بہت اچھا ہے. پوٹ کا ایک تھوڑا سا. یہ، ایک بار پھر، کوئز 0 پر آئے، تم اتنی اس کے ساتھ سپر آرام دہ اور پرسکون ہونا چاہئے. لیکن پوٹ کے لئے، ہم آپ سے پوچھیں ٹرے کی ایک اسٹیک کو یاد کرنے کی. اور اس میں سب سے پہلے ہو رہا ہے، باہر رہے. تو ہم چیزوں کو ڈھیر لگانا اسٹیک میں، اور اس کے بعد ہم کچھ لینے کی کوشش کر رہے ہیں تو ہم off-- بند پوپ آؤٹ کہتے ہیں stack-- ہم سب سے اوپر بند کر آ. اور ہم کچھ ڈال کرنا چاہتے ہیں اسٹیک میں، ہم اسے آگے بڑھانے کہتے ہیں. تو اس کو ہمیشہ بڑھتی ہوئی کیا جا رہا ہے ٹرے کی ایک اسٹیک کی طرح نیچے سے. بہت اچھا ہے. ہم نے دیکھا پوٹ کو لاگو کیا ہے دونوں منسلک کی فہرست اور arrays کے ساتھ. آپ کو لاگو کرنے کر رہے ہیں arrays کے ساتھ، آپ چاہتے ہیں ٹریک رکھنے کے لئے بات کو یقینی بنانا سائز اور صلاحیت دونوں. تو سائز موجودہ ہونے جا رہا ہے آپ کے اسٹیک میں چیزوں کی تعداد، صلاحیت جبکہ کل تعداد ہے چیزوں میں سے آپ کو آپ کے اسٹیک میں محفوظ کر سکتے ہیں. ٹھنڈا. بہت اسی طرح، ہم قطار ہے. اس صورت میں، اس کی بجائے کے بارے میں سوچ کے ٹرے کی ایک اسٹیک، ایک لائن کے بارے میں سوچنا. یہ پہلا، میں سب سے پہلے ہونا باہر جا رہا ہے. آپ کے لئے پرت رہے ہیں تو سٹور میں کچھ، ہمیں امید ہے کہ انسان میں سب سے پہلے کہ لائن سب سے پہلے مدد کی جا رہی ہے. بجائے دھکا کہہ کے اور ہم اسٹیک کے لئے کیا جیسے پاپ، ہم صرف ان enqueue اور dequeue کہنا. اور پھر، اگر آپ ہیں تو ایک سرنی کے ساتھ اس پر عمل درآمد، ہم ٹریک رکھنے کے لئے کی ضرورت ہے نہ صرف سائز صلاحیت، بلکہ سر، اور جس ہمارے قطار کے سامنے ہونے جا رہا ہے. ٹھنڈا. اس کا کسی پر کوئی سوال؟ بہت اچھا ہے. حق کے ساتھ آگے بڑھ رہے ہیں. ٹھیک ہے، ہیش میزیں. یہ کرنے کے لئے شروع ہوتا ہے جہاں یہاں ہے واقعی دلچسپ ملتا ہے. تو ایک ہیش کی میز سے ایک عمل درآمد ہے ایک ساہچری سرنی کے. تو بنیادی طور پر کیا ہوا ہم یہ سب ان پٹ ہے، اور ہم نے ایک ہیش کو دے کا کہنا ہے کہ جس کی تقریب، ٹھیک ہے، اس جہاں میں ہے ہیش ٹیبل اس سے تعلق رکھتا. سادہ ہیش تقریب تو ہم صرف کہہ رہا ہے دیکھا ہے کہ، ٹھیک ہے، ہم ڈال کرنا چاہتے ہیں لگتا ہے ہمارے ہیش ٹیبل میں ڈور. اور ایک بہت آسان خیال ٹھیک ہے، کا کہنا ہے کہ ہو سکتا ہے، صرف سے ترتیب دیں لفظ کے پہلے حرف. آپ یہاں دیکھ سکتے ہیں تو، ہم، کیلے لے ہم، ایک ہیش تقریب کے ذریعے ڈال دیا اور یہ کہ، ارے، کا کہنا ہے کہ انڈیکس 1 میں جانا چاہئے. تو ہم بنیادی طور پر ایک ہیش کے بارے میں سوچ کر سکتے ہیں مختلف بالٹیاں میں سے ایک گروپ کے طور پر میز. اور ان بالٹیاں میں سے ہر ایک کی جا رہی ہے ایک لنک کی فہرست کے سربراہ منعقد کرنے. اور اس سے منسلک فہرست میں جہاں ہم کر سکتے ہیں ہے اصل اعداد و شمار کے مختلف ٹکڑے ٹکڑے کر ڈالا. تو ڈائیونگ تھوڑا سا زیادہ ایک ہیش تقریب میں، یہاں ہے مثال کے طور پر میں نے صرف ہم صرف کا کہنا ہے کہ جہاں بیان، ٹھیک ہے، سب سے پہلے خط لے ہم ہیں اور لفظ کے بالٹیاں میں چھانٹنے کے لئے جا رہے ہیں. تو شاید، 26 بالٹیاں ہو جائے گا، حروف تہجی کے ہر خط کے لئے ایک. کیوں یہ ایک عظیم ہیش تقریب نہیں ہے؟ کیا یہ غیر مثالی بنا دیتا ہے؟ جی ہاں. سامعین: تم جا رہے ہو collisions سے حاصل کرنے. ہننا BLUMBERG: جی ہاں، بالکل. آپ collisions کے لئے جا رہے. تو ہے کہ ایک بات ہے. ہم کس طرح کر سکتے ہیں اور ہم کے بارے میں بات کریں گے صرف ایک سیکنڈ میں collisions سے طے کر لو. اس کے ساتھ ایک اور مسئلہ خاص طور پر ہیش تقریب ہمارے مختلف ہے بالٹیاں جا رہے ہیں کے خوبصورت بڑی تیزی سے مختلف سائز. ہم ایک پوری بہت ہے کہ وہاں جانتے ہیں ایکس کے مقابلے میں ایک ساتھ شروع ہے کہ اس سے زیادہ الفاظ، تو ہم بہت جا رہے ہیں ہمارے ہیش ٹیبل میں اسنتلیت بالٹیاں. ٹھنڈا. تو جی ہاں، میں واپس حاصل کرنے کی اجازت collisions سے نقطہ. ایک تصادم وہاں ہے تو ہم کیا کرتے ہیں؟ ہم نے ایک جوڑے کو مختلف اختیارات ہیں. تو ایک، تو ہم کوشش کر رہے ہیں لگتا ہے ہمارے ہیش ٹیبل میں بیری ڈال کرنے کے لئے. اور ہم اوہ، ہم چاہتے ہیں، دیکھیں انڈیکس 1 میں ڈال کرنے کے لئے، لیکن کیلے پہلے سے ہی موجود رہتا ہے. ہم کیا کرنے جا رہے ہیں؟ ہم نے دو اہم اختیارات ہیں. نمبر ایک ٹھیک ہے، ہم کہہ سکتے ہیں، انڈیکس 1 میں کوئی گنجائش نہیں ہے، لیکن صرف کے ذریعے تلاش رکھ دو ہم ایک کھلی جگہ تلاش کر سکتے ہیں جب تک. تو ہم، ٹھیک ہے، کہیں گے جگہ 3 میں ڈال دو. یہ ایک آپشن ہے. یہ تحقیقات لکیری کہا جاتا ہے. اور ایک دوسرے کے اختیارات، اچھی طرح سے، ٹھیک ہے، کہہ رہا ہے صرف ان بالٹیاں میں سے ہر ایک بنانے منسلک کی فہرست کے سربراہان ہو. اور اس سے زیادہ ہے تو ٹھیک ہے ایک بالٹی میں ایک چیز کے مقابلے میں. ہم صرف کرنے کے لئے جا رہے ہیں سامنے پر یہ شامل. تو یہاں آپ کو ٹھیک ہے، دیکھ سکتے ہیں، ہم بیری داخل جب، ہم صرف کی قسم، کیلے لیا تھوڑا سا زیادہ دھکیل دیا اور وہاں میں ایک بیری پھینک دیا. اور وہ بھی مکمل طور پر ٹھیک ہے. یہ علیحدہ جکڑا جانا؟ کہا جاتا ہے. آپ کے طور پر اس قسم کی طرح اس کے بارے میں سوچ کر سکتے ہیں لنک کی فہرست کرنے کے لئے سر کی ایک سرنی. ہیش پر کوئی سوال میزیں، ہیش افعال؟ بہت اچھا ہے. درخت اور کوشش کرتا ہے. تو ایک درخت کسی بھی قسم کی ہے آنکڑا ڈھانچہ جس میں کسی قسم کا ہے تنظیمی ڈھانچے یا کسی قسم کی کی مختلف اشیاء پر درجہ بندی. اور اس سپر ہو جائے گا واضح ہے کہ ہم ایک مثال دیکھ جب. اور ہم ساتھ، کوشش کرتا ہے دیکھا ہیش میزیں کے ساتھ، pset5-- میں جس میں، پھر، مکمل طور پر منصفانہ کھیل یہ ایک ڈیٹا quiz-- لئے ڈھانچے ہے کہ ہم کر سکتے ہیں مختلف چیزیں ذخیرہ. ڈکشنری کی صورت میں، ہم الفاظ کی ایک گروپ ذخیرہ. تو کچھ درختوں پر ایک نظر ڈالیں. تو یہ ایک درخت کی ایک مثال ہے. یہ، کی ساخت کی ایک قسم ہے پدانکردوست ساخت ہے، آپ دیکھ سکتے ہیں کہ جہاں سب سے اوپر یہ 1 نوڈ ، 2 اور 3 اوپر کی درجہ بندی کی کسی قسم کا ہے جو 4، 5، اور 6 اور 7 کے اوپر، جس میں 8 اور 9 سے اوپر ہیں. کہ تمام ہے تو ہم نے ایک طرف سے مطلب ہے درخت، کر سکتے ہیں تو صرف قسم آپ کے سر میں اس تصویر کو. اب ہم ایک جوڑے کی ہے زیادہ خصوصی درخت. تو ایک مثال کے طور پر ایک بائنری درخت ہے. اور ایک بائنری درخت ہے، ایک بار پھر، صرف ہونے جا رہا کسی قسم کے ساتھ ایک آنکڑا ڈھانچہ تنظیمی ڈھانچے، لیکن مراکز میں سے ہر ایک سب سے زیادہ دو بچوں کو ہو سکتا ہے. لفظ بائنری کہاں سے آتا ہے. تو یہ ایک بائنری درخت کی ایک مثال ہے. تو اس درخت کی ایک چھوٹی قسم کی. اب بھی زیادہ مخصوص ہو جاؤ اور بائنری trees-- بائنری تلاش کے بارے میں بات درختوں، بلکہ. تو یہاں خیال کرتا ہے نہ صرف ہے ہر نوڈ، سب سے زیادہ دو بچوں میں ہے لیکن بچوں کے تمام بائیں چھوٹے ہونے جا رہے ہیں اور بچوں کے تمام صحیح بڑا ہونے جا رہے ہیں. تو میں محسوس ہمارے بائنری درخت، وہاں ہے کی تعداد کے درمیان کوئی تعلق نہیں. لیکن ہمارے بائنری تلاش میں درخت، ہم دیکھتے ہیں، ٹھیک ہے، یہاں 44 ہے. اور 44 کے بائیں ہر تعداد ہے درست کرنے کے لئے چھوٹے اور سب کچھ بڑا ہے. اور یہ کہ ہر موڑ پر کی ڈگری حاصل کی درخت کی سطح. تو یہاں، اس سے چھوٹا ہے 22 اور یہ 22 سے زیادہ بڑی ہے. اور جو بائنری تلاش درخت ہے. ہم کیوں یہ کہا جاتا ہے لگتا ہے ایک بائنری تلاش درخت؟ کیا الگورتھم اس کی یاد دلاتی ہے؟ سامعین: بائنری تلاش. ہننا BLUMBERG: بائنری تلاش. آپ کو ایک کے لئے تلاش کر رہے ہیں کیونکہ اگر اس درخت میں خاص طور پر بڑی تعداد، ہر موڑ پر، آپ کو صرف دستک کر سکتے ہیں بہت اچھا ہے جو درخت، دور نصف. اور تو ہے کہ ہمیں کچھ دینے جا رہا ہے کہ بائنری تلاش کی طرح ایک بہت لگ رہا. کوئی سوال؟ ٹھیک، ٹھنڈا. ٹھیک ہے، کوشش کرتا ہے. سب کی پسندیدہ. تو اس مثال ہے ہم کلاس میں ایک گروپ کو دیکھا ہے. اور پھر، یہ صرف ایک اور مثال ہے ہم ڈیٹا محفوظ کر سکتے ہیں اس طرح. ڈکشنری کی صورت میں، ایک بار پھر، یہ صرف ڈور ہونے جا رہا ہے. تو اصل میں کیا یہ دیکھتے ہیں ایک قدرے کم سطح پر کی طرح لگتا ہے. تو ایک نظر ڈالیں ایک trie میں ایک نوڈ میں. اور ہم ٹھیک ہے، وہاں جا رہا ہے، دیکھیں ایک بولین اور ایک نوڈ ہونا، ایک نوڈ پوائنٹر. اور ہم اس کو دیکھنے کے بولین is_word کہا جاتا ہے. تو بنیادی طور پر، ہے مطابق کی جا رہی ان چھوٹی مثلث جس سے آپ یہاں ملا ہے تو کہتے ہیں، آپ کو ایک مکمل لفظ مل گیا ہے. ہم جانتے ہیں کہ "ٹیورنگ" ختم یہاں ایک مکمل لفظ ہے، جبکہ صرف ٹی یو آر ایک لفظ نہیں ہے ہم اس چھوٹے ڈیلٹا نہیں دیکھ رہا ہوں کیونکہ. اور اس چھوٹی سی ڈیلٹا، ایک بار پھر، اس is_word کے مساوی، یہ بولین is_word. اور پھر ہم بچوں کی ایک صف ہے. آپ کو ہر سطح پر تو ایک خاص نوڈ ہے، اور ایک پر اس نوڈ پوائنٹس پورے حروف تہجی کی ایک سرنی. تو تم پھر، دیکھ سکتے ہیں، اس picture-- میں ہوں واپس کود رکھنے کے لئے جا رہا ہے اور forth-- کہ سب سے اوپر اس صف مختلف کا ایک گروپ ہے اس سے دور آنے نوڈس. اگر آپ چاہتے ہیں یہ 26، یا 27 ہے ایک اضافی کردار شامل کرنے کے لئے. اور یہ ہمارے ایک دیتا ہے ہمارے اعداد و شمار محفوظ کرنے کا طریقہ پر دیکھا جا سکتا ہے کہ ایک طرح سے کہ آپ سپر روزہ کو دیکھ سکتے ہیں. ایک trie کے لئے تلاش وقت ہوا ہے؟ سامعین: [اشراوی]. ہننا BLUMBERG: جی ہاں. اصول میں، یہ مسلسل کا وقت ہے. یہ صرف کا سائز جا رہا ہے آپ کو دیکھنا چاہتا ہوں کہ لفظ. ہم ایک zillion شامل یہاں تک کہ اگر ہمارے trie کے لئے زیادہ الفاظ، یہ ہمیں لینے کے لئے نہیں جا رہا ہے اب اس بات کا تعین کرنے کے لئے ایک دیئے گئے لفظ trie میں ہے. تو ہے کہ بہت اچھی بات ہے. سامعین: صرف آپ نے اس صف کی ابتدا؟ آپ کو ایک نقطہ یا دو یاد. آپ کو صرف کے بارے میں بات کر سکتے ہیں ایک سیکنڈ کے لئے ہے؟ ہننا BLUMBERG: ضرور، بالکل. اچھا سوال. سوال ہم، تھا ہے کہ ایک صف ہے کے طور پر نوڈ سٹار کے لئے جا صحیح، صرف نوڈ کی مخالفت؟ ٹھنڈا. لہذا ہم یہاں کیا کہہ رہی ہو ہمارے صف صرف ہے دیگر arrays کے پر اشارہ جا رہا. تو یہ اس قسم کی essentially-- ہے اس طرح میں ایک لنک کی فہرست کی طرح محسوس ہوتا ہے جہاں ان بچوں میں سے ہر ایک صرف اگلے نوڈ کی طرف اشارہ. اور جس طرح کہ ہم اصل میں ٹھیک ہے، ارے، اس بات کا تعین، ہم ایک پورے کے ذریعے زکر ہے لفظ، لغت میں یہ لفظ ہے، ہم صرف اس is_word چیک کریں. بڑا سوال. جی ہاں. سامعین: ٹھیک ہے. تو trie کے لئے رن ٹائم کیا تھا؟ ہننا BLUMBERG: ضرور. کے لئے ایک trie کے لئے رن ٹائم تو تلاش مسلسل وقت کی جا رہی ہے. تو یہ صرف جا رہا ہے لفظ میں حروف کی تعداد. اس پر انحصار نہیں ہے لغت کے سائز یا ڈیٹا ڈھانچے کے سائز. تو یہاں ایک قدرے آسان مثال ہے. اس صورت میں، آپ دیکھ سکتے ہیں کہ لفظ بیٹ لغت میں ہے اور آپ زوم ہے، لیکن آپ چڑیا گھر کی طرح کچھ نہیں ہے. ہم کس طرح چڑیا گھر بنا دے گا؟ ہم چڑیا گھر میں شامل کیسے ہماری لغت، ہمارے trie کے لئے کس طرح؟ جی ہاں. سامعین: is_word بنائیں سچ [اشراوی] کے لئے. ہننا BLUMBERG: گڈ. تو ہم Z O-اے کہونگا، اور پھر ہم چاہوں اس کے ساتھ ساتھ باکس کی جانچ پڑتال کرنا چاہتے ہیں. عظیم. بہت مختصر طور پر موازنہ کرتے ہیں ہیش میزیں بمقابلہ کوشش کرتا ہے. کی کوشش کرتا ہے واقعی عظیم ہیں کیونکہ، ہم نے کہا، وہ مسلسل وقت تلاش فراہم کرتے ہیں. لیکن بڑی نقصان وہ اعلی پیمانے کے ہوتے ہیں ہے. آپ کو احساس حاصل کر سکتے ہیں، یہاں تک کہ اس کو دیکھ کر، اسے لینے کے لئے جا رہا ہے کہ میموری کی ایک بڑی رقم. تو وہ زیادہ سے زیادہ جا رہے ہیں ہیش میزیں سے بڑا، لیکن وہ دینے کے لئے جا رہے ہیں ہم زیادہ تیزی سے تلاش بار. تو اس کی طرح ہے آپ tradeoff کے، آپ کے بارے میں پرواہ ہے، اس کی رفتار یا میموری ہے کہ آیا. اس کا کسی پر کوئی سوال، سی ڈیٹا ڈھانچے کے تمام. خوبصورت. ٹھیک ہے. ہم نے ایک چھوٹا سا پر منتقل کرنے کے لئے جا رہے ہیں ماریا کے ساتھ ویب کی ترقی کے سا. MARIA ZLATKOVA: پیارا، دلکش. ٹھیک ہے. ہننا BLUMBERG: آپ اپنے لیپ ٹاپ استعمال کر سکتے ہیں. MARIA ZLATKOVA: اچھا. ٹھنڈا، ٹھیک ہے. ہم ویب پر اب میں منتقل کے طور پر ترقی، ہم ایک چھوٹی سی بات تبدیل اجازت کے بارے میں فائلوں اور ڈائریکٹریوں کے تاکہ وہ قابل رسائی ہو سکتا ہے دوسرے صارفین کو، دنیا میں، اور تاکہ ہم کس طرح دیکھ سکتے ہیں بنیادی طور پر ہم ان کی تبلیغ کر سکتے ہیں ہم ویب سائٹ کی طرح چیزوں کو ترقی جب کہ ہم نے زیادہ تر کر رہا ہوں. تو ہم chmod کمانڈ دیکھا، جس میں بنیادی طور، موڈ میں تبدیلی ہے. یہ ایک لینکس کمانڈ ہے اور اس تک رسائی کی اجازت تبدیل فائل سسٹم اشیاء کی. اور ایک فائل سسٹم اعتراض ہے صرف ایک ڈائریکٹری، ایک فائل، کچھ بھی ہے کہ آپ کر سکتے ہیں کی اجازت تبدیل. تو فائل کی اجازت کو دیکھنے کے لئے، ہم کمانڈ کے LS، فہرست، -l ٹائپ. اور ہم اس ٹائپ جب، ہم عام طور پر کچھ اجازتیں دیکھیں اس طرح طرح کی دیکھ بھال ایک ڈائریکٹری کا نام کے سامنے. تو D ڈائریکٹری سے مراد. اور پھر ہم تین ہے تینوں بنیادی طور پر اس یا تو کی اجازت کرنے کے لئے حوالہ دیتے ہیں ایک صارف، ایک گروپ، یا دنیا. اجازت کی اقسام ہے کہ ہم کر سکتے ہیں لوگوں کے ان تین گروپوں کے لئے ہے کے لئے W پڑھنے کے لئے تو R، ہیں لکھنے، اور پھانسی کے لئے X. اور ہم ان لوگوں کو ہو سکتا ہے گروپ اور دنیا کے طور پر اچھی طرح سے. مشکل بات یہ ہے کہ بعض اوقات ہے ہم CHMOD کمانڈ ٹائپ کریں جب، ہم نے کچھ تعداد ٹائپ کریں گے کہ تین بٹس پر مشتمل. تو ہم طرح کر سکتے ہیں 777 اور یہ کہ بنیادی طور پر شامل قیمت پر کہا جاتا ہے ان تینوں میں سے ہر ایک R 4 کی طرف رجوع کرے گا کیونکہ، W گے 2 کا حوالہ دیتے ہیں، اور ایکس 1 سے رجوع کریں گے، لہذا، تعداد میں سے ہر ایک کو شامل ہے جب ایک مجموعی تعداد میں آ جائیں گے 0 اور 7 کے درمیان ایک مجموعی قیمت پر. تو ہم نے بھی 0 ہو سکتا ہے بالکل کوئی اجازت کے لئے. اور یہ کہ بنیادی طور پر ہمیں دے گی تو صارف کے لئے اجازت، گروپ، یا دنیا. اب تک اس پر کوئی سوال؟ سامعین: آپ پڑھ کہا 4 تھا؟ MARIA ZLATKOVA: جی ہاں. سامعین: [اشراوی]. ہننا BLUMBERG: جی ہاں. سامعین: اور پھر ان تمام لوگوں کو شامل کرنے کی طرف سے دوسروں کو آپ کے بڑی تعداد کی نشاندہی کریں گے. MARIA ZLATKOVA: جی ہاں. جی ہاں. یہ عظیم سوالات ہیں. پیارا، دلکش. اگلا، ہم ایچ ٹی ایم ایل اور ایک میں کود ویب کی ترقی کے بارے میں تھوڑا سا زیادہ. تو HTML صرف کا مطلب ہے ہائپر ٹیکسٹ مارک اپ زبان. اور یہ کہ مارک اپ ہے ایک معیاری ہے کہ زبان یہ ویب صفحات بنانے کے لئے استعمال کیا جاتا ہے. یہ ایک مارکاپ زبان کہا جاتا ہے یہ اصل میں مرتب نہیں ہے کیونکہ. یہ کس طرح کچھ کوڈ چاہئے کہنا ہے کہ نہیں پھانسی یا اس طرح کچھ بھی ہو. یہ صرف کا بیان اور کس طرح ایک ویب کی وضاحت صفحے کو مقرر کیا جانا چاہئے اس کے عناصر میں سے ہر ایک کے ساتھ اور وہ صارف کو نظر آنا چاہئے کہ کس طرح. HTML ٹیگ میں سے کچھ ہے کہ ہم گئے مندرجہ ذیل ہیں. ہمارے HTML دستاویزات کی تمام DOCTYPE HTML کے ساتھ شروع کر دیا. پھر ہم نے ہمیشہ HTML ٹیگ ہے. ہم نے ایک سر اور ایک جسم ہے. یہ ایچ ٹی ایم ایل ہے کہ ضروری ہے جالی دار ڈھانچہ اس طرح یہ بہت واضح ہے کیونکہ. اور پھر یہ بہت واضح ہو جاتا ہے جب ہم اصل میں قریبی ٹیگز کھولنے کے لئے کی ضرورت ہے. اور ہم نے ہمیشہ بند کرنے کی ضرورت ہم کھول دیا ہے کہ ٹیگ. اور یہاں ہم اقسام میں سے کچھ ہے ہم کرنا چاہتے ہیں کہ آگے کی چیزوں میں. تو ہم، مثال کے طور پر، CS50 کے عنوان. اور پھر ہم اصل ایک سٹائل شیٹ منسلک کر سکتے ہیں کہ ہم ہماری ویب سائٹ سٹائل کے لئے کس طرح کی وضاحت کرتا ہے. کہ سی ایس ایس ہے. ہم میں اس پر جانے کے لئے جا رہے ہیں اس کے ساتھ ساتھ سلائڈ کے اگلے دو. جسم کے اندر، ہم نے مقرر کچھ کلاسیں اور شناخت. اور ایک یاد دہانی کے طور پر، ایک بار پھر، شناخت منفرد اور کلاسیں ہیں ایک سے زیادہ اشیاء کے لئے مقرر کیا جا سکتا ہے. اور یہ صرف کا مطلب ہے کہ ہم کلاسیں اور شناخت استعمال کر سکتے ہیں تاکہ دوسرے structures-- اندر، کے لئے مثال کے طور پر، سی ایس ایس فائلوں یا سٹائل کے اندر اندر مخصوص عناصر سے رجوع کرنے sheets-- اور بنیادی طور پر ہم سٹائل کرنا چاہتے ہیں کا کہنا ہے کہ یا کسی عنصر ڈیزائن کچھ مخصوص انداز میں. اور ہمیں ان سے رجوع ان کی شناخت اور کلاس. اور ہم بھی رجوع کر سکتے ہیں اس کے ساتھ ساتھ ٹیگ کی طرف سے مختلف چیزیں، لیکن شناخت اور کلاس بس ہمیں کچھ دے استرتا اور خاص طور پر جو ہم سے رجوع کرنا چاہتے ہیں. تو صرف ایک مثال کے طور پر. ہم کے اندر اندر، ایک بار پھر، کر سکتے ہیں ایک سی ایس ایس فائل ہم کہاں کچھ وضاحت کرنا چاہتے ہیں style-- رنگ، فونٹ اب، اور چیزیں ہم کر سکتے ہیں that-- طرح ایک جسم کے لئے سٹائل کی وضاحت. تو ہے کہ اس کی وضاحت کریں گے پورے جسم ٹیگ کے لئے. لیکن اس وقت ہم بھی وضاحت کر سکتے ہیں ایک #title لئے ایک سٹائل. اور پھر، hashtag کے سے مراد ہماری ID اور ڈاٹ ہماری کلاس سے مراد. اور پھر .INFO کے لئے، ہم بھی کچھ صفات مقرر کر سکتے ہیں. ہمیں واپس جانا اور جب ایک بار پھر،، ہم نے ہماری کلاس معلومات اور ہماری شناخت عنوان بلایا. اور ہم حوالہ دیتے ہیں کہ دیکھ سکتے ہیں ان سے #title اور .INFO طرف. سامعین: آپ کو کہیں گے hashtag کے [؟ مجھے اپنانے؟ ؟] MARIA ZLATKOVA: معاف کیجئے گا؟ سامعین: آپ کو کہیں گے hashtag کے [؟ مجھے اپنانے؟ ؟] MARIA ZLATKOVA: hashtag کے ID، تو #title مطلب جو عناصر سے مراد عنوان نامی یہ شناخت ہے. اور پھر ڈاٹ ایک کلاس سے مراد. تو .INFO اس عنصر سے مراد اس کلاس کی معلومات ہے کیونکہ. ہاں. سامعین: کیوں تم کرتے ہو ایچ ٹی ایم ایل میں ممتاز؟ کیوں آپ کو کچھ چیزیں ہیں کہتے ہیں شناخت اور کچھ چیزیں طبقے ہیں؟ MARIA ZLATKOVA کہ you-- صرف منحصر ہے ہننا BLUMBERG سوال دہرائیں. MARIA ZLATKOVA: اوہ، معاف کرنا. ہم کیوں بعض عناصر تمیز کرتے شناخت اور کلاس کے طور پر دیگر عناصر کے طور پر؟ یہ ہے کیونکہ یہ صرف ہے سچ میں اکثر ایک ڈیزائن پسند. یہ تم میں سے ایک بہت فراہم کرتا ہے ہونے میں استرتا میں اس مخصوص شے چاہتے ہیں کرنے کے قابل وہ چاہتے ہیں کی وجہ سے اس کی شناخت حاصل کرنے چیزوں کی ایک بہت کچھ کرنے کی یہ، اور میں اس کے ساتھ صرف ایک سٹائل کی وضاحت کرنا چاہتے ہیں، مخصوص انداز اس شے کے لئے یا رنگ جو. اور ویسے بھی ایسا کرنے کے لئے صرف یہ ایک ID دے رہا ہے. اور پھر اگر میں چاہتا ہوں حاصل کرنے مختلف اشیاء کی ایک جوڑے ہونے، بجائے کہ جا رہا ہے اور their-- ترتیب بجائے کی طرف سے یہ کر کے ٹیگ ٹیگ کریں گے کیونکہ پورے ٹیگ کے لئے سیل قائم ہر وقت کے لئے اس ٹیگ استعمال کیا جاتا ہے، آپ ایک سے زیادہ اشیاء کے لئے ایک کلاس مقرر کر سکتے ہیں. اور پھر صرف اس طبقے تک رسائی حاصل اور کہتے ہیں میں اس کلاس اس طرح سٹائل کرنا چاہتے ہیں. اور پھر، کلاس کر سکتے ہیں ایک سے زیادہ مختلف اشیاء اور ID منفرد ہونا ضروری ہے. بڑے سوالوں. کوئی سوال؟ ٹھیک ہے، بہت اچھا. ایک بار پھر، یہ کس طرح ان سلیکٹرز ہے hashtag کے ساتھ، سی ایس ایس میں محولہ ہیں، نقطہ کے ساتھ، یا کے لئے کچھ بغیر کچھ ٹیگ کے طرز بتائے، جسم کی طرح. اور یہاں ہم عام طور پر ہے یہ کیا جاتا ہے کہ کس طرح کے نحو. کچھ بہترین دہرانے کی ایچ ٹی ایم ایل اور سی ایس ایس کے لئے طریقوں، ہم سے، ایک بار پھر، قریب سب کی ضرورت ہے ہم کھولنے کہ HTML ٹیگ. اور ہم نے آپ کی سفارش کیا آپ کی آخری منصوبوں کے لئے کیا، اس کے ساتھ ساتھ CS50 خزانہ کے طور پر بنانے کے لئے ہے اپنے HTML کے تمام توثیق کرتا ہے کہ اس بات کا یقین. اس W3 جوازدہندہ کے ساتھ کیا ہے. اور ہم نے اس کے بعد کیا اور ہم کیا کر رہے سفارش کیا لہذا، سٹائل الگ ہے ایچ ٹی ایم ایل مارکاپ سے سی ایس ایس. کس طرح سے متعلق ہے کہ تو کچھ آپ کے صفحے ضعف کو دیکھنے کے لئے کی جا رہی ہے اور کس طرح اس پر نظر ثانی کیا جا رہا ہے ایک سی ایس ایس دستاویز میں جانا چاہئے. اور پھر آپ مارکاپ کس طرح باتیں ایک دوسرے کے سلسلے میں ہیں، ایچ ٹی ایم ایل اور اس کے اندر جانا چاہئے اپنے HTML دستاویزات کی. کوئی سوال؟ MHM. سامعین: بالکل کیا جا رہا ہے صفحہ توثیق کے ساتھ ہم کی توثیق کر رہے ہیں جب [اشراوی] پیدا کیا ہے کہ ایچ ٹی ایم ایل؟ MARIA ZLATKOVA: تو آپ کو لگتا ہے what--. تو بالکل وہی جو کی جا رہی ہے صفحہ توثیق کے ساتھ اور کیوں ہم ایسا کرنے کی ضرورت ہے؟ بنیادی طور پر، ہم ایسا کرنے کی ضرورت ہے کیونکہ وقت کی ایک بہت، آپ کے براؤزر، آپ کو ایک ٹیگ کو بند نہیں کرتے ہیں تو یا اس طرح کچھ، اپنے براؤزر اب بھی کی جا رہی ہے ایک صفحہ رینڈر اور اب بھی کام کر سکتے ہیں، لیکن یہ سب سے اچھا عمل ہے کہ بات کو یقینی بنانا ہے آپ، ایک بار پھر، آپ کے تمام ٹیگ بند کر دیا ہے تمام عناصر ہیں کہ وہ ہونا چاہئے اس طرح، اور اس کی طرف سے ہے بنیادی طور پر اس پیش سیٹ ہیں کہ کنونشن. یہ، ایک بار پھر، صرف ایک بات یہ ہے کہ آپ کو کرنا چاہئے کر رہے ہو سیکھ جائے، ہونے کے طور پر مخالفت اس طرح sloppier کوڈ اور چیزیں. جی ہاں. اوہ معاف کیجئے. میں آپ کو آپ کے ہاتھ اٹھانے تھے سوچا. سامعین: نہیں، میں صرف [اشراوی] تھا. MARIA ZLATKOVA: ٹھیک ہے. سامعین: آپ کا شکریہ. MARIA ZLATKOVA: کورس کے، آپ کا شکریہ. تو ایک بار پھر، کہ کس طرح میں چل رہا معلومات منتقل کیا جاتا ہے اور مواصلات ماڈل معلومات کو منتقل کرنے کے لئے. TCP / IP. TCP صرف ٹرانسمیشن کا مطلب ہے کنٹرول پروٹوکول اور IP انٹرنیٹ پروٹوکول سے مراد. اور یہ کہ صرف سے مراد راستہ ڈیٹا ہونے والا ہے. ہم کچھ اعداد و شمار ہیں، تو اس تو you-- کے حوالے کرنے کی ضرورت ہے آپ کو ایک مخصوص سرور کے لئے ایک درخواست کرنے کے. مثال کے طور پر، جب ہم cs50.net تک رسائی حاصل کرنے کی کوشش کریں، ہم نے ایک درخواست کرنے کے لئے بنانے CS50 سرور اور ہم ہم حاصل کرنا چاہتے ہیں کہ دیکھیں معلومات کے اس طرح. اور پھر اس پروٹوکول کی بنیاد پر کر رہے ہیں یہ معلومات فراہم کی ہے کہ کس طرح کے لئے، سرور کی معلومات فراہم کرتا ہے ہمارے پاس واپس، کلائنٹ. اور پھر ہم کو دیکھنے کے لئے کے قابل ہو صفحے کے بارے میں معلومات اور اس کے بعد اس کا استعمال. پس ہایپر ٹیکسٹ ٹرانسفر پروٹوکول صرف ایک پروٹوکول یا سیٹ ہے کنونشن کے کہ کس طرح کی وضاحت کرتا ہے ویب براؤزر اور ویب سرور بات چیت کرنا چاہئے. اور یہ سب ڈال ایک دوسرے کے ساتھ، HTTP، ایک بار پھر، صرف اس ہایپر ٹیکسٹ کی وضاحت کس طرح کی وضاحت ہم یہ کام کر رہا ہے کہ ایچ ٹی ایم ایل کی طرف سے، یہ آپ کے لئے فراہم کی جانی چاہئے کہ کس طرح اور کس طرح آپ کو فراہم کیا جاتا ہے کہ کہ اعداد و شمار آپ کو ملتا ہے. تم لوگوں کو یاد ہے اور یہی وجہ ہے کہ ہے ایک کلاس سے، ہم نے درخواستوں کی ایک بہت تھا اور ہم نحو کے ایک بہت تھا ہم ہیں کہ ان درخواستوں کے لئے اب جانے کے لئے جا. تو ایک بار پھر، ہم جب بھیج ایک سرور سے ایک درخواست، ہم چیزوں کے ایک جوڑے کی وضاحت کرنا ہے. تو ہم قسم کی تلاش کرنے کی ضرورت ہے درخواست کی ہم قائم کر رہے ہیں کہ. اور پھر، ہم، مثال کے طور پر، حاصل کے طریقہ کار کی ایک قسم ہے ہم ہماری درخواست میں ہے کہ. اور پھر HTTP / 1.1 صرف ہے ہم فی الحال استعمال کر رہے ہیں کہ پروٹوکول. وقت کے زیادہ تر، کہ جا رہا ہے ہم استعمال کر رہے ہیں کہ پروٹوکول کے. آپ سے ایک سوال ہے تو آپ کے تمام سوالات پر اس طرح. یہ کنونشن ہے کہ ہم نے اب تک ہے. الٹا سلیش کس طرح سے مراد چیزوں میں سے ہم درخواست کر رہے ہیں. پھر، ہمارے میزبان اس میں، مثال کے طور پر، ہے کیس، ہم google.com پر جانے کی کوشش کر رہے ہیں. تو یہ ایک میزبان کے لئے قیمت ہے. یہ درخواست کی ایک قسم ہے کہ بھیجا جا سکتا ہے. رد عمل کی ایک قسم اور پھر اس سکتا بھیجا، ایک بار پھر، اس پروٹوکول کی بنیاد پر کیا، دوبارہ ہے، HTTP / 1.1. تاکہ HTTP ورژن کو دوبارہ ہے. 200 ٹھیک ہے صرف حیثیت کوڈ ہے. اور یہ کہ ٹھیک صرف ایک جملہ ہے اس کی حیثیت کوڈ کی بنیاد پر. اور پھر مواد کی قسم قسم سے مراد یہی وہ بات ہے آپ کو واپس آ جاتا ہے آپ کو موصول ہونے کہ ویب کے صفحے کے لیے اور اپنے براؤزر ہے کہ اس کے بعد فراہم کر سکتے ہیں. اور اس متن / HTML ہے. سامعین: 1.1 کیا مطلب ہے؟ MARIA ZLATKOVA: صرف اتنا ہے کہ ورژن of-- اوہ، 1.1 کیا مطلب ہے؟ یہ صرف ورژن، HTTP ہے ہم استعمال کر رہے ہیں کہ ایک پروٹوکول کے ورژن. بڑا سوال. دیگر سوال؟ سامعین: آپ کو خلاصہ سکتے ہیں مواد کی قسم اصلی فوری؟ MARIA ZLATKOVA: تاکہ کیا سرور ہے. کیا information-- کی قسم مواد کی قسم کے سوالات تھے. تاکہ کی قسم تھی آپ کو واپس حاصل ہے کہ معلومات سرور، قسم کی طرف سے ڈیٹا براؤزر تو کر سکتے ہیں آپ استعمال کر رہے ہیں کہ رینڈر. سامعین: کیا یہ وہی ہے پروٹوکول کرنا ہے آپ کو کہہ رہا ہے؟ MARIA ZLATKOVA: معاف کیجئے گا؟ سامعین: پروٹوکول کیا کہنا ہے؟ MARIA ZLATKOVA: protocol-- سامعین: --what مواد کی قسم ہے یا what-- MARIA ZLATKOVA پروٹوکول مبنی ہے on-- تم سے کہہ پروٹوکول کیا ہے؟ یہ صرف طریقہ ہے یہ معلومات ہے کہ آپ کو فراہم کیا گیا تھا کی بنیاد پر پروٹوکول کس طرح پر یہ معلومات کیا گیا تھا آپ کو واپس پہنچایا. کے اس کا احساس قسم ہے؟ ہننا BLUMBERG: آپ پروٹوکول کے بارے میں سوچ کر سکتے ہیں a-- کے طور پر میں پروفیسر سوچتے مالن یہ بیان کے طور پر اس قسم کی a-- طرح کلاس میں اس طرح ہے انسانی handshaking کے برابر. کی طرح، ارے، میں نے ایک درخواست ہوں، کا کہنا ہے کہ اور میں ورژن 1.1 کے HTTP کو ہینڈل کرنے میں کس طرح جانتے ہیں. اور پھر سرور، کا کہنا ہے کہ ٹھیک ہے، اوہ، میں ... اور دونوں موجود ہیں. میں بھی HTTP / 1.1 کے ساتھ نمٹنے کے لئے کس طرح جانتے ہیں. اور میں دینے جا رہا ہوں آپ کچھ مواد بیک. اس صورت میں، یہ جا رہا ہے قسم متن / HTML کے ہونے کا. تو اس قسم کے صرف ایک طریقہ ہے ان میں سے communicating-- لئے MARIA ZLATKOVA: یہ صرف ہے تم اس کی تصدیق دونوں ایک ہی مندرجہ ذیل پروٹوکول اور کہ دونوں کلائنٹ اور سرور تو اپنے براؤزر اور سرور قسم کی تم کیا جانتے ہیں کے بارے میں بات اور ہے اعداد و شمار میں گزرنے کے لئے کنونشن. سامعین: تو مواد کی قسم part-- مواد کی قسم متن / ایچ ٹی ایم ایل ہے اسی پیغام کی ایک علیحدہ حصہ؟ یا اس کا، 200 کہتے ہیں کا حصہ ہے؟ 200 ان کہ یا is-- بتاتا ہے MARIA ZLATKOVA: 200 یہ سب ٹھیک چلا گیا ہے. اور پھر مواد کی قسم ایک کی طرح ہے اسی پیغام کے علیحدہ حصہ، اور بات کہہ کہ میں واپس متن / HTML کے اس قسم ہے. یہ صرف مزید معلومات دے رہا ہے. شامل کرنے کے لئے کچھ ہے؟ ٹھیک ہے. اس پر کوئی سوال؟ بہت اچھا ہے. تو کچھ دوسرے HTTP حیثیت کہ ہم، 200 ٹھیک ہے کے علاوہ میں حاصل کر سکتے ہیں ہم شاید دیکھا ہے کہ لوگ ممکنہ طور پر ایک بہت 403 اور 404 ہیں. تو 404، آپ کے لئے کوشش کر رہے تھے تو موجود نہیں ہے تک رسائی کچھ. مثال کے طور پر، میں تو آپ CS50 خزانہ کی psets، آپ quote.html انجام گیا تھا تو اور آپ کو اس فائل کی ضرورت نہیں تھی، بلکہ اس کی بجائے آپ نے اس، کے quote.php تھا ایک 404 کے نتیجے میں نہیں ملا فائل موجود نہیں ہو سکتا ہے کیونکہ. 403 کے لئے کہ، حرام اجازت سے مراد. کسی فائل کی طرف سے نہیں پڑھنے کے قابل ہے تو دنیا، آپ کو ایک 403 واپس ہو سکتا ہے. کچھ دوسروں کے کہ آپ ہو سکتا ہے 301، مستقل طور پر منتقل کر دیا گیا get--؛ 302، پایا؛ 304، ترمیم؛ 400، برا درخواست؛ اور پھر اندرونی سرور کی خرابی 500 اور 503، سروس دستیاب نہیں ہے. جی ہاں. سامعین: کہ ہم کرنے کی توقع ان تمام لوگوں کی حیثیت حفظ؟ MARIA ZLATKOVA: میں ہوگا انہیں اپنے دھوکے باز شیٹ پر. [ہنسی] سامعین: ہم سے توقع کی جاتی ہر ایک حملہ کیا جانتے ہیں؟ MARIA ZLATKOVA وہ ہیں؟ ہننا BLUMBERG: ہم نے کہ لوگوں کے لئے تو سوال into-- چلانے was-- MARIA ZLATKOVA وہ توقع کی جاتی ہے ان کی حیثیت کے بارے میں کیا جانتے ہیں ہر ایک کوڈ کی طرف سے متحرک کیا جا سکتا ہے؟ ہم نے استعمال کیا ہے کہ لوگوں کے لئے تو اور میں بھاگ گیا، میں ہاں، کہیں گے. تو ہم یقینی طور پر 200 دیکھا ہے ٹھیک ہے اور psets میں لیکچر. ہم، 404 403 دیکھا ہے. دیگر لوگوں کے لئے؟ ہننا BLUMBERG: میں کروں گا 500 منصفانہ کھیل لگتا ہے کا کہنا ہے کہ. MARIA ZLATKOVA: 500، جی ہاں. ہننا BLUMBERG: جی ہاں. صرف ایک عام احساس ہے ان کی وجہ سے کیا. اور وہ بھی صرف کی طرف سے ان ناموں، آپ کر سکتے ہیں کی قسم کی طرح ایک تعلیم یافتہ اندازہ کے طور پر بنانے کیا اصل میں ان کی وجہ سے. مثال کے طور پر، شاید، مستقل طور پر منتقل فائل کو مستقل طور پر منتقل کر دیا گیا. سامعین: لیکن ایک پچھلے پر امتحان، ایک تو وہاں تھا کس طرح آپ کو اس کا جواب کرنے کے لئے ہم امید رکھتے ہیں؟ ہننا BLUMBERG کہ صفر پوائنٹس کے قابل تھا. teapot کے پر 418 پر سوال ، تکنیکی طور پر ایک HTTP حیثیت ہے لیکن یہ صفر پوائنٹس کے قابل تھا. ظاہر ہے، تم نہیں ہو ان جاننے کی توقع. سامعین: یہ ایک حقیقی ہے؟ ہننا BLUMBERG: یہ ایک حقیقی ہے ایک، لیکن یہ کوئی مطلب نہیں ہے. یہ صرف ایک مذاق ہے. انٹرنیٹ لوگوں مضحکہ خیز ہیں. MARIA ZLATKOVA: عظیم سوالات، لوگ. کوئی سوال؟ سامعین: اندرونی سرور کی خرابی کیا ہے؟ MARIA ZLATKOVA: اندرونی سرور کی خرابی صرف آپ کیا گیا ہے کا مطلب ہے کہ بات چیت کرنے کے قابل نہیں کسی وجہ کے لئے سرور کے ساتھ. تو یہ ضروری نہیں ہے کیا کرنا ہے کہ کچھ اس طرح کلائنٹ یا کچھ کے ساتھ. میں کسی مخصوص مثال کے طور پر نہیں جانتے ہم وضاحت کرنے کے لئے ختم ہو گیا ہے کہ، لیکن ہاں. ہننا BLUMBERG: ضرور. لہذا مثال کے طور، کی طرح چلو آپ میشپ پر کام کر رہے تھے کا کہنا ہے کہ اور گوگل کے سرور سے کچھ کے لئے نیچے چلا گیا وجہ، ایک بجلی کی بندش، کا کہنا ہے کہ. کہ ایک اندرونی سرور ہو جائے گا غلطی یا کسی قسم آپ کی طرح of-- ایک جواب واپس نہیں ملے گا. MARIA ZLATKOVA: جی ہاں. تم جب یہ صرف ہے بات چیت کرنے کے قابل نہیں کچھ وجہ کے لئے سرور کے ساتھ اس کے نیچے جا رہے ہو یا کسی دوسرے کی وجہ سے. تو پی ایچ پی میں کود. پی ایچ پی، ایچ ٹی ایم ایل کے برعکس، ایک ہے پروگرامنگ زبان. اور ہم اس کی وجہ سے اس کا استعمال شروع کر دیا ویب کی ترقی کے لئے بہت مفید. ہم سب سے پہلے CS50 خزانہ میں اس کا استعمال. اور یہ بنیادی طور پر ہمارے لانے میں مدد ملتی ایک ساتھ مل کر اس مارکاپ، ڈیزائن، اور ہم اصل میں کے بارے میں معلومات کا استعمال کس طرح ایک ویب کے صفحے پر چیزیں ظاہر کرنے کے لئے. پی ایچ پی پی ایچ پی تو خود کا مطلب ہایپر ٹیکسٹ پریپروسیسر، تو یہ خود کی طرف سے ایک پنراورتی backnorym ہے. اور پی ایچ پی کے لئے ٹیگز کھولنے ہم بائیں سوال نمبروں کے ساتھ اور دائیں تیر اور پی ایچ پی. تو ہم نے پہلے ہی اس کا ایک گروپ کو دیکھا ہے. اب، ہم صرف پر جانے کے لئے جا رہے ہیں اس کے بارے میں بنیادی چیزوں میں سے کچھ. پی ایچ پی کے ساتھ، متغیر تو ناموں ڈالر علامت کے ساتھ شروع. ہم، ایک بار پھر، کی وضاحت نہیں کرتے ایک متغیر اب ٹائپ کریں. ہم سی کے ساتھ کیا تھا، ہم ایسا کرنے کی ضرورت نہیں. ہم نے مختلف کا ایک گروپ کر سکتے ہیں متغیر کے ساتھ چیزیں. ہم ایک دوسرے کے ساتھ ڈال کر سکتے ہیں ان concatenating کی طرف سے ڈاٹ سنکیتن، جس ہم ایک بار پھر C میں ایسا نہیں کر سکا. ایک بار پھر، ہم تھوڑا سا زیادہ استرتا ہے متغیر کی شرائط میں پی ایچ پی کے ساتھ. ایک بار پھر، ہم نے ایک اہم تقریب نہیں ہے. اور پی ایچ پی کی تشریح ہے مرتب کی مخالفت کے طور پر، تو ہم C فائلوں کے لئے بنانے کے کیسے، ہم پی ایچ پی کے لئے ایسا کرنے کی ضرورت نہیں ہے. بلکہ، راستہ زبان ہے کہ خود کی طرف سے چلایا جاتا ہے، اس کی تشریح ہے. اور پھر شتل ٹائپ ہم کا مطلب ہے کہ ایک متغیر کی وضاحت کرنے کی ضرورت نہیں ہے قسم اور متغیر اقسام رن ٹائم پر سمجھا جاتا ہے. سامعین: لیکن کیا تم نے ڈاٹ concatenation کی طرف سے مطلب ہے؟ MARIA ZLATKOVA: ضرور. ہم together-- چیزیں ڈال کرنا چاہتے ہیں تو اگر ایسا ہے تو ہم کچھ متغیر تھا کہ 3 کی قدر تھی اور ہم نے ایک تھا سٹرنگ کی قدر تھا کہ متغیر، ہم ایک دوسرے کے ساتھ متغیر ڈال سکتے ان کے درمیان میں ایک نقطہ ڈال کر اور ان concatenating کی. یا پھر ہم ایک پیدا کر سکتا ہے متغیر بلایا نام اور کی طرف سے ایک دوسرے کے ساتھ ڈال دیا دو ڈور concatenating کی. اگر ایسا ہے تو ہم ڈبل میں ایک تار تھا کی قیمت درج کرنے اور ہم اس کے بعد ایک نقطہ ڈال اور پھر ہم اس، ایک تار تھا مکمل طور پر ایک سٹرنگ پیدا ہوں گے. سامعین: ٹھیک ہے. MARIA لیٹویا: کہ واضح تھا؟ سامعین: جی ہاں. MARIA ZLATKOVA: ٹھیک ہے. جی ہاں. سامعین: آپ کا کہنا ہے کہ تشریح بجائے مرتب، آپ کے بارے میں بات کر رہے ہیں نہیں ہے جب کے طور پر مخصوص کرنے کی ضرورت ہے یہ سی بمقابلہ پی ایچ پی کے لئے آتا ہے؟ MARIA ZLATKOVA: ہم کا کہنا ہے کہ مرتب کی مخالفت کے طور پر تشریح، ہم کیا مطلب ہے؟ تو ہے کہ ہم ضرورت نہیں ہے کا مطلب ہے کہ فائلوں پی ایچ پی کو چلانے کے لئے. یہ ہے کے طور پر چلتا ہے کا مطلب ہے کہ. کیا اسکا کوئ مطلب بنتا ہے؟ ایک تھوڑا سا زیادہ. ہننا BLUMBERG: تو کیا تم ایک مترجم کے بارے میں سوچ کر سکتے ہیں ذمہ دار ہے کہ ایک پروگرام کے طور پر پی ایچ پی کے ذریعے لائن کی طرف سے لائن جانے کے لئے مخالفت کے طور پر اور اصل میں، یہ عمل ثنائی کے نیچے یہ سب تالیف کرنے. یہ اصل میں کوئی مطلب نہیں ہے ہم کرنے کی ضرورت ہے کہ کس طرح کے بارے میں مخصوص. ہم اب بھی عین مطابق ہونا کرنے کی ضرورت ہے، اور ایسا نہیں کرتے آپ نیم وقفہ بھول جاؤ، اور بات کو یقینی بنانے آپ اپنے ڈالر کی نشانی ہے اور اس طرح کی چیزیں. اچھا سوال. MARIA ZLATKOVA: جی ہاں. تو اوپر لائن کی طرف سے، کے طور پر سی فائلوں کے ساتھ کی مخالفت، ہم پوری آخری بنانے کے لئے ہے ہم اصل میں اس کو چلانے کے کر سکتے ہیں سے پہلے. یہ اہم فرق ہے. لیکن ایک بار پھر، ہم نہیں کر سکتے واقعی کم مخصوص ہو. تو پی ایچ پی میں arrays نمائندگی اصل میں ایک حکم دیا نقشہ. چابیاں arrays کے ایسوسی ایٹ اقدار تو. دو طریقوں سے ایک اعلان کرنے سرنی، اس نحو کی بنیاد پر، ہم زیادہ سے زیادہ واضح ہو سکتا ہے کہنے میں ہم ایک صف ہے اور ہم نقشے کہ اس key1 ہے value2 نقشے کہ اس value1، key2. یا ہم صرف ایک صف تشکیل دے سکتے ہیں اقدار کہ خود پر مشتمل ہے اور پھر چابیاں ہیں ایک طرح سے سمجھ. اس پر کوئی سوال؟ سامعین: کیا کریں گے چابیاں دوسری مثال میں ہو؟ 0، 1، 2، 3 MARIA ZLATKOVA: مثال کے طور پر، یہ صرف ہے اس میں چابیاں ضروری نہیں ہے ایک فرق. وہ صرف کس طرح آپ کر سکتے ہیں کی وضاحت اس کے اندر اقدار کا استعمال. اگر ایسا ہے تو ہم نے ایک جعلی foreach تھا پی ایچ پی میں لوپ ہوتا ہمارے تمام اقدار کے ذریعے جانے کے لئے کی اجازت دیتے ہیں، ہم تمام اقدار کے ذریعے جا سکتے، یہاں تک کہ اگر ہم نے یا وضاحت نہیں تھا ویب سائٹ کے اندر اندر ایک مخصوص چابی گزشتہ نحو. تو بھی اس طرح کے ساتھ صف کی، ہم اب بھی کر سکتے ہیں ایک foreach لوپ ہے کہ ہر گزرتا صف میں کلید میں اقدار کی. ایک foreach کے نحو تو لوپ، ہم ایک صف کے ساتھ شروع. یہ $ آمد متغیر ہماری اصل صف ہے ہم نے گزشتہ سلائڈ میں وضاحت کی ہے کہ لفظی ہے کہ قیمت کے طور پر اقدار میں سے ہر ایک کے ذریعے، قطع نظر چاہے ہم ایک اہم تھا یا نہیں. اور پھر ہم ساتھ کچھ کر سکتے ہیں جعلی foreach لوپ کے اندر قیمت. تو ایک بار پھر، اگر ہم نے ایک صف تھا یہ یہاں پیدا کے طرح تو ہم FOO اور کی قدر کی چابی ہے بار، باز کی کنجی اور qux-- کی قدر ہم نے ایک جعلی foreach لوپ کر سکتے ہیں کلیدی قدر کے طور پر صف کے ذریعے جاتا ہے اور پھر کچھ کلید اور / یا قیمت کے ساتھ. لیکن ہم ضروری نہیں کہ ہمیشہ ایسا نہیں کرتے ایک foreach کہ loops کے کرنا پڑے قیمت کی کلید نقشہ کے طور پر صف کے ذریعے جاتا ہے. ہم کے ذریعے جا سکتے ہیں قیمت کے طور پر جعلی foreach لوپ سرنی. ہننا BLUMBERG اور مجھے لگتا ہے کہ آپ کے سوال، to-- کیا انترنہیت انڈیکس ہے؟ سامعین: جیسا. MARIA ZLATKOVA: اوہ. ہننا BLUMBERG: جی ہاں، جی ہاں. تو بنیادی طور پر، آپ کی وضاحت نہیں کرتے تو ایک اہم، یہ 01 جا رہا ہے. MARIA ZLATKOVA: جی ہاں. ذرا سی کے ساتھ کی طرح، یہ صفر ہے آپ کو ایک چابی وضاحت نہیں کرتے تو حساب سے ترتیب. سامعین: معذرت. تم بول کوشش کر سکتے ہیں تھوڑا سا زور؟ میں تھوڑا سا چل رہا ہے مصیبت سب کچھ سن کر. MARIA ZLATKOVA: مجھے بہت افسوس ہے. ہاں بلکل. تو تم نے مجھ سے کیا چاہتے ہو ایک بار پھر اس پر جانے کے لئے؟ یا this-- ہے سامعین: گزشتہ slide-- تو پر تو آپ کو صرف ایک سیکنڈ کے لئے واپس جا سکتے ہیں. MARIA ZLATKOVA: کورس، معذرت. سامعین: تو دوسرے یہاں سرنی نہیں ہے کنجی کی قدر ہے لگ رہے ہو، ایک طرح سے [؟ causation میں. ؟] MARIA ZLATKOVA دائیں، دائیں. سامعین: تو کس طرح ہے کہ کام کرتا ہے جب آپ کہتے ہیں یہ تمام یا کوئی نہیں ہے. میرے لئے، اس طرح لگ رہا ہے ایک [؟ FOO کو؟] پہلے ہی. MARIA ZLATKOVA: جی ہاں، جی ہاں. تو ایک بار پھر، یہ ایک ہے اس معنی میں حکم دیا نقشہ وہاں سمجھا جاتا ہے کہ، مثال کے طور پر، اشاریہ جات یہاں 0، 1، 2، 3 کے طور پر سمجھا جا سکتا ہے. ایک بار پھر، کہ ان آ رہا ہے اشاریہ جات ہمارے برابر ہے کی اقدار پر مائچترت چابیاں رکھنے. اگر ایسا ہے تو ہمارے کلیدی 0-- افسوس تھا. ہننا BLUMBERG: کوئی، یہاں چاک ہے. یہ اصل میں بہت اچھی بات ہے. MARIA ZLATKOVA: یہ بہت اچھا ہے. ٹھیک ہے. تو ایک بار پھر، $ آمد 0 ہو جائے گا قیمت 1 کے لئے اہم. 0 قیمت 1 کے لئے اہم ہو جائے گا. سامعین: میں معافی چاہتا ہوں. یہ پوشیدہ ہے. ہننا BLUMBERG: کوئی بات ٹھیک ہے،. چاک ایک برا خیال تھا. میں اسے واپس لے. آپ کی چابیاں کے بارے میں سوچ کر سکتے ہیں قیمت 1 0 نقشے کے طور پر. MARIA ZLATKOVA: جی ہاں. تو یہ 0 ہے، یہ 1، 2، 3. یہ آپ کی چابیاں ہو سکتا. تم ہاں as-- ان میں سوچ کر سکتے ہیں. تو بجائے ہونے کے واضح چابیاں، وہ کر رہے ہیں قسم کی کیا جا رہا ہے کے طور پر سمجھا اشاریہ جات 0 سے شروع. چاک کی مدد نہیں تھا. جی ہاں. سامعین: جعلی foreach لوپ کے لئے، ہم قیمت کے طور پر دیکھنا چاہتا ہے تو، یہ 0 کے لئے صرف خود کار طریقے سے انڈیکس گے؟ MARIA ZLATKOVA: جی ہاں. یہ اقدار میں سے ہر ایک کے ذریعے جائیں گے. سامعین: [اشراوی] کے طور پر 0 یا کہ صرف 0 کریں گے؟ MARIA ZLATKOVA: آپ کو پڑے گا تو ڈالر کی نشانی کے طور پر کا کہنا ہے کہ کچھ متغیر کا نام، قیمت. سامعین: [اشراوی]. MARIA ZLATKOVA: معاف کیجئے گا؟ سامعین: معذرت، میں ہوں صرف یاد کرنے کی کوشش. آپ کو کہ آپ یہ کر سکتے ہیں کریں گے تو کس طرح خود کار طریقے سے تخکرمن صرف 0 ہے؟ MARIA ZLATKOVA: تو تم ایسا کیسے کریں گے آپ کو مخصوص اہم ناموں ضرورت نہیں تھی تو؟ سامعین: جی ہاں. MARIA ZLATKOVA: تم بس define-- گے کچھ نام کے طور پر خود کا کہنا ہے کہ. تو آپ کی psets میں، تم لوگ شاید $ قطار کے طور پر جعلی foreach $ صف یاد، ہم ourself کہہ اس $ صف پیدا ہم $ قطار کے طور پر صف کے ذریعے جانے کے لئے چاہتے ہیں. ہم نے نہیں کیا اگرچہ قطار وضاحت اس واضح $، ہم بس جاؤ اور کر سکتے ہیں ، یہ ہمارے اہم ہو سکتا ہے کا کہنا ہے کہ اور صرف اقدار میں سے ہر ایک کے ذریعے جانا. سامعین: تو قدر ایک نئی متغیر ہے ہم [اشراوی] ذخیرہ کرنے کے لئے پیدا کر رہے ہیں؟ MARIA ZLATKOVA: تو یہ نہیں ہے موروثی طور پر ایک نیا متغیر. اس سے مراد ہے کہ ایک متغیر ہے ان میں سے ہر صف کے اندر. ہننا BLUMBERG: یہ ہے ایک نیا متغیر نام. MARIA ZLATKOVA: جی ہاں، یہ ایک نیا متغیر کا نام ہے، لیکن یہ جی ہاں inherently-- نہیں ہے. یہ صرف ایک نئی متغیر ہے آپ ایسا کر سکتے ہیں. تو ہم کس طرح کیا کرتے $ $ قطار، قطار کے طور پر صف ایک نیا متغیر کا نام تھا کہ ہم ہمارے جعلی foreach لوپ میں پیدا کر سکتا ہے. یہ اس سے پہلے preexist کی ضرورت نہیں ہے. سامعین: آپ کے ذریعے جا سکتے وہاں مثال کا استعمال کرتے ہوئے ہر ایک کے لئے منطق،؟ MARIA ZLATKOVA: MHM. اوہ معاف کیجئے. یہاں مثال کے طور پر. اس بات کا یقین. کے لئے تو ہر تاکہ صف کہ اس صف میں جانے کا مطلب ہے کہ قدر کلید کے طور پر چل رہا ہے اس صف کے ذریعے جانے کے لئے اور سب سے پہلے، جاؤ اور FOO حاصل اہم FOO اور قیمت بار. اور پھر دوسرے پر لوپ کے لئے تکرار، اس کے ذریعے جاؤ اور لے جا رہا ہے اہم باز اور قیمت qux کا. اور پھر آپ کے ساتھ کچھ کر سکتے ہیں ان میں سے ایک یا ان دونوں. سامعین: تو پیچھے خیال قیمت کے لئے ایک اہم نقطہ ہے، آپ تک رسائی حاصل کیا ختم کرتے ہیں؟ MARIA ZLATKOVA خیال کیا کا ایک اہم اشارہ قدر کرنے کے لئے؟ یہ صرف ایک کنونشن، ایک ہے صف کے ذریعے جانے کا راستہ اور قابل ہونے کی وجہ سے یا تو تک رسائی حاصل کرنے کلید یا قیمت یا دونوں اور ان کا استعمال. سامعین: کے لئے کردار کیا ہے جعلی foreach میں چلتا ہے کہ حکم؟ ہم شامل کرنے کے لئے تھے تو سرنی کے عناصر بعد، ان سب سے پہلے ہو جائے گا جعلی foreach صف میں ملاقات کی، یا اس کے بعد ہو گا؟ MARIA ZLATKOVA: تو کیا ہے جعلی foreach کہ حکم لوپ میں ایک صف کے ذریعے جاتا ہے؟ یہ سب سے پہلے سے گزرتا ہے آخری عنصر عنصر، آخری عنصر شامل کرنے کے لئے. آپ کو بعد میں پر عناصر کو شامل تو، وہ کرے گا پہلے عناصر گا accessed-- جائے پہلے کے طور پر حاصل کیا صف کے عناصر، اور اس کے بعد تم میں سے ہر ایک کے ذریعے جانا تھا ایک ordered-- کی طرح کے طور پر عناصر ایک حکم دیا، لیکن راستے نہیں ہے کہ وہ صف میں ڈال دیا گیا ہے. سامعین: تو نئے عناصر بعد میں شامل کر رہے ہیں؟ تو وہ ہو جائے گا added-- رہے [میں آخری ہیں؟ تکرار. ؟] MARIA ZLATKOVA: نئے عناصر can-- بنیادی طور پر، نئے عناصر شامل ہیں جب، وہ صف کے آخر میں شامل کر رہے ہیں؟ سامعین: جی ہاں. MARIA ZLATKOVA: مجھے یقین. جی ہاں. اور پھر آپ جعلی foreach لوپ کے ساتھ، آپ نئے عناصر شامل ہے کے بعد اور آپ ان کے ذریعے جانا، نئے عناصر گے یہ ہے تو، نئے عنصر accessed-- ہو آخری شامل، یہ گزشتہ سے حاصل کیا جائے گا. سامعین: آپ کو صرف ایک مثال دے سکتے ہیں کچھ کے بارے میں ہوتا [اشراوی] قیمت کے ساتھ کچھ کے ساتھ [اشراوی] یا قدر کی طرح، تم ایسا کیسے فارمیٹ تھا پسند ہے؟ MARIA ZLATKOVA: ضرور. میں ایک مثال دے سکتا ہے ہم قیمت کے ساتھ کیا کریں گے؟ تو تم لوگوں کے ساتھ واقف ہو سکتا ہے ہم ایک صف کے ذریعے چلا گیا ہے ہے کہ اور بنیادی طور پر چھپی ہوئی عناصر میں سے ہر، مثال کے طور پر، ایک کے حصے کے طور حکم دیا کی فہرست یا کہ کچھ. اس معنی یا ہم چاہتے ہیں ہے to-- سامعین: ہم نے ان اقدار کو پرنٹ کر سکتے ہیں؟ MARIA ZLATKOVA: جی ہاں، ہم پرنٹ کر سکتے ہیں اور اس کے بعد بنیادی طور پر قیمت $ میں کیونکہ کہ مخصوص قیمت، ہم ہو جائے گا اس کے اندر کی قدر پرنٹنگ. اگر ایسا ہے تو ہم نے اپنے پہلے iteration میں تھے اور اس سے ہم، $ قدر طباعت ہم بار پرنٹنگ جائے گا. سامعین: کے لئے بھی موجود ہیں پی ایچ پی میں loops یا صرف جعلی foreach loops کے؟ MARIA ZLATKOVA: وہاں ہے بھی پی ایچ پی میں loops کے لئے. اور ان کی منطق زیادہ تر ہے آپ استعمال کر رہے ہیں کیا کے طور پر ایک ہی. سامعین: اس کی قیمت شہوت انگیز null ہے تو. MARIA ZLATKOVA: یہ اسی طرح ہے. جی ہاں. سامعین: میں صرف کہنے جا رہا ہوں. تو آپ کو ایک اعلان جب سرنی، آپ کی ضرورت نہیں یہ کرنے کے لئے کیا جا رہا ہے سائز بتانا جس کا مطلب ہے، ہو کہ آپ کو صرف کر سکتے ہیں شامل کریں اور عناصر [اشراوی] دور لے. MARIA ZLATKOVA: جی ہاں. ہاں. بالکل. ہم ایک صف کا اعلان کرتے ہیں، ہم یہ کیا ہے سائز کا کہنا ہے کہ کرنے کی ضرورت نہیں، تو ہم صرف عناصر کو شامل کر سکتے ہیں بعد میں اس کے ساتھ ساتھ اس پر. مزید سوال؟ تو ایک دوسرے کے ساتھ پی ایچ پی اور ایچ ٹی ایم ایل میں لانے، کیا ہم اچھی طرح سے seen-- ہے، مثال کے طور پر، اس مثال میں، ہم نے ایک ان پٹ فیلڈ ہے کہ ایک HTML فارم. اور ان پٹ فیلڈ صرف نام ہے اور پھر یہ ایک جمع کرائیں بٹن ہے. آپ دبائیں اور جب جمع کرائیں بٹن، ہماری hello.php کے فائل میں، فارم کے لئے طریقہ ہے کیونکہ حاصل، ہم نام پر جو کچھ بھی ہے تک رسائی حاصل کر سکتے ہیں اس سے عالمی متغیر حاصل ہے کہ یہ $ _GET ہے نحو is--. اور پھر ہم جو کچھ بھی رسائی حاصل کر سکتے نام کے لئے اس فارم کے اندر صارف کی ان پٹ اس میدان کے نام کی وضاحت کی طرف سے. کسی بھی دوسرے سوال یا کسی بھی اس مخصوص مثال کے طور پر سوال؟ سامعین: پی ایچ پی کی کہاں ہے؟ MARIA ZLATKOVA: یہاں. تو یہ پی ایچ پی کے لئے ہمارے افتتاحی ٹیگ ہے. سامعین: اوہ، ٹھیک. MARIA ZLATKOVA: جی ہاں. ہننا BLUMBERG: = آشلپی ہے اس کے لئے پی ایچ پی اور صرف گونج ہے. سامعین: اوہ. MARIA ZLATKOVA: جی ہاں، معذرت. مجھے لگتا ہے کہ واضح کر دیا ہے چاہئے. ہننا BLUMBERG: پرنٹ. MARIA ZLATKOVA: یہ صرف تقریب ہے کہ ہمیں کچھ پرنٹ کرنے کے لئے کی اجازت دیتا ہے. بڑا سوال. تو جی ہاں going--. سامعین: وہاں بہت کی جا رہی ہے پی ایچ پی اور ایچ ٹی ایم ایل کے ہاتھ کوڈنگ کا تھوڑا سا کوئز 1 پر نہیں ہیں؟ MARIA ZLATKOVA: ایک نہیں ہو سکتا تشریح کے منصفانہ رقم پی ایچ پی اور ایچ ٹی ایم ایل، ضروری نہیں کوڈنگ کی ایک بڑی رقم کی طرح، آپ کو ایک لکھنے کے لئے ہو سکتا ہے، اگرچہ جعلی foreach لوپ، اگرچہ، لوپ کے لئے ایک. loops کی کوئی ہم منصفانہ کھیل یہاں احاطہ کرتا ہے. اور یہ کہ زیادہ تر یہ ہے. ہننا BLUMBERG میں تیار کیا جائے گا. اسی طرح ہے کہ میں ہم آپ کے لئے کہا کوئز 0 سی کے افعال میں سے ایک گروپ، لکھنا، مجھے کیا کرنا ہے کرنے کے لئے تیار ہو جائے گا پی ایچ پی اور جاوا سکرپٹ میں ایک ہی. MARIA ZLATKOVA: جی ہاں. ہننا BLUMBERG: میں کہنا چاہوں گا ہم نہیں ہیں کی طرح ایک چھوٹی سی جانے تم ایک بہت بڑا HTML لکھنے بنانے کے لئے کہ تھوڑا سا ہے صرف اس وجہ صفحے تکاؤ، لیکن آپ کو حصوں ہو سکتا ہے. کہ مکمل طور پر منصفانہ کھیل ہے. چھوٹے HTML پیج کی طرح، مکمل طور پر منصفانہ. سامعین: ٹھیک ہے. کس طرح کے بارے جاوا اسکرپٹ میں اس کے ساتھ ساتھ؟ ہننا BLUMBERG: جی ہاں. کیلیے جاوا اسکرپٹ کا منصفانہ کھیل. MARIA ZLATKOVA: جی ہاں. یہ مکمل طور پر منصفانہ کھیل ہے. ہننا BLUMBERG: ہم حاصل کریں گے کی طرح 10 منٹ میں اس کے لئے. MARIA ZLATKOVA: SQL، ایک بار پھر، ساخت طلب زبان. یہ بنیادی طور پر ہمارے اعداد و شمار کا انتظام کرنے کی اجازت دیتا ہے ایک سنبندپرک ڈیٹا بیس کے انتظام میں نظام. یہ صرف بنیادی طور پر مطلب ہم کہیں ہے کہ ہم کرنا چاہتے ہو سکتا ہے کہ کچھ ڈیٹا ذخیرہ کرنے ایک ویب سائٹ میں یا کسی دوسری شکل میں استعمال کرتے ہیں. اور پھر ہم کو حاصل کرنے کے سوالات ہیں ہمارے ڈیٹا بیس سے معلومات، یا ان کے بارے میں معلومات شامل کرنے کے لئے. عام ones-- اپ ڈیٹ کی ایک بہت، INSERT، منتخب کریں، اور حذف کریں. تو اپ ڈیٹ کے لئے، اس نحو ہے ایک ڈیٹا بیس میں اعداد و شمار کو اپ ڈیٹ کرنے کے لئے. نامی اس میز کو اپ ڈیٹ SET کہہ کر میز، ہم سب کچھ اقدار مقرر کر سکتے ہیں اور برابر کچھ قطار. تو ہم بھی کچھ مخصوص وضاحت کر سکتے ہیں ہم پر نظر ثانی کرنا چاہتے ہیں کہ اندراجات اور کہاں استعمال ہو سکتا ہے. اور ہم صرف چاہتے ہیں کہ وضاحت کر سکتے ہیں کچھ قطاروں میں ترمیم کریں جہاں کے لئے گھر، ہم طالب علموں کی ایک میز تھا تو اور تمام طالب علموں، گھر تھا لہذا ہم صرف کچھ اقدار پر نظر ثانی کریں گے ایک گھر کریئر برابر جہاں، مثال کے طور پر. ڈالیں لئے، ہم داخل کر سکتے ہیں ایک ٹیبل میں کچھ اقدار. تو ٹیبل میں داخل، اور پھر اقدار، اور پھر قوسین میں، ہم وضاحت جس سے آپ کو شامل کرنے کے لئے چاہتے ہیں اقدار. تو ٹیبل، col1 میں داخل اور COL2، قیمت VAL1 اور val2 ہے. تو اس میں بنیادی طور پر ایک نئی صف داخل اقدار 1 اور 2 پر مشتمل ایک میز کالم 1 اور 2 کے تحت. اور پھر ہم پر جانے کے لئے جا رہے ہیں یوں لگتا ہے کہ کس طرح ایک فوری مثال تھوڑا سا ہمارے ڈیٹا بیس میں کی طرح. لیکن یہ آخری سوال کے کہ میں ہم پر جانے کے لئے جا رہے ہیں لگتا، منتخب کریں، یہ صرف کی اجازت دیتا ہے ایک میز سے اعداد و شمار کو منتخب کرنے کے ممکنہ طور پر اس کے بعد اس کا استعمال کرنے. اور ہم ایسا جس طرح ہم ہے صرف کچھ متغیر میں سٹور. اور پھر ہم ممکنہ طور پر دوبارہ استعمال کر سکتے ہیں. تو منتخب سٹار تمام کو منتخب کریں کا مطلب ہے. وہ صرف ایک آشلپی ہے تمام منتخب کرنے کے لئے. میز کہاں سے، ہم تلاش کر رہے ہیں کچھ مخصوص حالات کے لئے، تو کالم برابر جہاں مثال کے طور پر کچھ،. ہم صرف کرنے کے لئے چاہتا تھا، تو میز سے تمام کو منتخب کریں، یہ صرف تمام کالم کا انتخاب اور ایک میز سے تمام قطار. اور پھر میز سے خارج کہاں کرنل کچھ برابر، یہ صرف کچھ کو خارج ہماری میز سے صف جہاں ہم نے کچھ مخصوص شرائط ہیں. اس صورت میں، حالات ہیں کالم کچھ برابر. اس کا تو صرف ایک فوری مثال. ہم یہیں ہیں اور ہم اس کی میز ہے تو ایک ٹیبل میں داخل، ان اقدار، کہ ایک نئی صف داخل کریں گے. ہم آٹو اضافہ اور اگر، اس گے صرف 2 1 0 سے ہماری شناخت اضافہ. ہم طالب علموں کی طرف سے تمام منتخب شدہ ہے، تو یہ صرف تمام شعبوں اور تمام قطار واپس. کہاں سال بڑا ہے 2016 سے زیادہ یا برابر، کہ صرف واپس آ جائیں گے ہننا اور خود. اور پھر ہم صرف منتخب کیا تھا تو طالب علموں کی جانب سے سال ID اور سال وہ گھر جہاں Cabot ہاؤس ہے کہ، ، ایک بار پھر، ہننا اور خود واپس آ جائیں گے. پھر ہم طالب علموں سے خارج کر دیا ہے جہاں کا نام، روب کے برابر ہے کہ پوری قطار کو حذف کریں گے. اور پھر ہم نے مقرر تو نام، اپ ڈیٹ کے طالب علموں SET نام Daven کے برابر گھر کے برابر ہے Cabot ہاؤس، اس کے لئے جانے کے لئے جا رہا ہے ان قطاروں اور پھر نام کو اپ ڈیٹ. اور پھر چند SQL ڈیٹا کی اقسام ہیں چار، varchar کے، INT، اور فلوٹ. یہ منصفانہ کھیل. میں پھر سے جائیں گے اور یقین ہے کہ آپ کو معلوم ہے بنانے اور، اپنے دھوکے باز شیٹ پر ان کے پاس کیا ان حروف میں سے ہر ایک کے لئے استعمال کیا گیا ہے، کیا آپ کو آپ کی psets پر ان کا استعمال کیا اور آپ واقف ہیں اس بات کو یقینی بنانے کے لئے اور منتخب کرنے کے لئے ہونے کے ساتھ آرام دہ اور پرسکون آپ pset میں مختلف اعداد و شمار اقسام کی طرف سے. جی ہاں. سامعین: اس کی میز محفوظ کیا جاتا تھا؟ جی ہاں، جہاں اس کے ٹیبل محفوظ کیا جاتا ہے؟ MARIA ZLATKOVA: ویسے، اب، یہ محفوظ نہیں ہے. ویسے بھی، جہاں اس کے ٹیبل محفوظ کیا جاتا ہے؟ لیکن یہ ایک SQL ڈیٹا بیس میں محفوظ کیا جا سکتا ہے. سامعین: اور جہاں SQL ڈیٹا بیس ہے؟ کمپیوٹر میں، آن لائن کہیں، سرور؟ MARIA ZLATKOVA: یہ ایک ہو سکتا ہے مختلف چیزوں کی تعداد. ہننا BLUMBERG: ہم ساتھ interfaced ہے زیادہ تر phpMyAdmin کے ساتھ ایس کیو ایل ٹیبل. تو ہم نے ایک سرور پوچھ سکتے ہیں ہمارے لئے ان کو ذخیرہ کرنے. ہم اپنے کمپیوٹر پر محفوظ کر سکتے ہیں. MARIA ZLATKOVA: یہ صرف پر منحصر ہے کس طرح آپ کو خود کے لئے یہ کرنا چاہتا ہوں. لیکن ہم ذخیرہ کیا گیا ہے ان، ہننا ذکر کے طور پر، phpMyAdmin کے، جس لائن ہے. اور پھر جس طرح ہم استعمال کرتے ہیں پی ایچ پی اور ایس کیو ایل، ہم اسے ذخیرہ کچھ متغیر میں کیا ہم نے کے لئے پوچھے گئے. ہم سب تاریخ سے منتخب تو USER_ID سیشن ID برابر جہاں، کہ تمام قطار کو منتخب کریں گے مخصوص شخص کے لئے جو تاریخ سے ریکارڈ کیا گیا ہے میز اور قطار میں ان کے حل. جاننے کے لئے ٹھنڈی چیز ہے CS50 کی استفسار تقریب کہ SQL انجکشن ٹیگ خلاف حفاظت کرتا ہے. یہ صرف اس بات کو یقینی بناتا ہے کہ کا مطلب ہے کہ داخل کیا جاتا ہے کہ ان پٹ درست ہے اور اس شخص جو ان پٹ داخل کیا جاتا ہے ان پٹ کے لئے کوشش کر رہا ہے کچھ بدنیتی پر مبنی کوڈ یا تو ہماری ٹیبل چھوڑ کرنے کے لئے یا سب کچھ کو خارج کر دیں ہمارے ڈیٹا بیس کے اندر. کی ایک فوری جائزہ ماڈل دیکھیے کنٹرولر ماڈل، اس کو منظم کرنے کا ایک طریقہ ہے اور کوڈ کے بارے میں سوچ. یہ، ایک بار پھر ایک ڈیزائن پیرا میٹر ہے. کیا اس کا مطلب ہے کہ ہم ہے can-- اور یہ اچھی پریکٹس ہے مختلف حصوں کو الگ کرنے اپنے کوڈ اور کیا وہ ان تین نمونوں میں کنٹرول. لہذا ہمارے نقطہ نظر اکثر ہمارے ٹیمپلیٹس، ہماری ترتیب، راستہ کہ ہم اپنے کوڈ کیسا لگتا ہے مقرر. کہ زیادہ تر ہمارے سی ایس ایس فائلوں اور طریقہ ہے ہم اپنے کوڈ کے ڈیزائن وضاحت کی ہے کہ، بنیادی طور پر. ہمارے کنٹرولر زیادہ تر ہے ہم پی ایچ پی فائلوں کے ساتھ کر رہا ہوں. تو ایک بار پھر، کے ساتھ کام کر رہے ہیں ہم اس کی معلومات اور وضاحت کہ کس طرح معلومات، استعمال کیا جاتا ہے اور پھر اس معلومات گزر یا تو نقطہ نظر یا ماڈل پر. اور ماڈل، ہم نے اس طرح ہے کا استعمال کرتے ہوئے، ہمارے ڈیٹا بیس رہا ہے تاکہ ہماری معلومات کہاں ہے یہ کہیں ہے تو ذخیرہ میں رہتے ہیں اور میں سے کسی کو جس طرح سے متعلق ہے کہ کوڈ ہم اس کی معلومات یا حاصل ہے کہ ہم اس کی معلومات کو اپ ڈیٹ اس طرح. MVC ماڈل میں، HTTP درخواستوں کو ایک ویب سرور پر بھیج دیا جاتا ہے. پھر، کنٹرولر ترجمانی صارف کی طرف سے درخواست اور اس کے بعد صارف کی ان پٹ کی توثیق کرتا ہے. یہ ہم ہے کہ اختیاری ہے کنٹرولر چیت ایک ماڈل کے ساتھ، کچھ تو ہمارے ڈیٹا بیس کی طرح یا کسی دوسرے کی فعالیت اس کی معلومات ری. اور پھر آخر میں، کنٹرولر نقطہ نظر پر معلومات گزر تاکہ یہ ہو سکتا ہے پیش کی گئی اور یہ کر سکتے ہیں کہ کسی بھی شخص کو دکھائی بن ویب صفحے تک رسائی حاصل. کوئی سوال؟ بہت اچھا ہے. تو ایک بار پھر، ماڈل، اس تقریب میں، ایک بار پھر، معلومات کے مستقل سٹوریج، ہے انتظام اور ڈیٹا کو منظم کرنے. اور ہم نے دیکھا ہے دور ایس کیو ایل ڈیٹا بیس ہے اور کسی بھی ڈیٹا فائلوں کو استعمال کر سکتے ہیں کہ. لنک، معلومات پیش کرنے کے لئے صارف، UI، یوزر انٹرفیس یا. اور اس کی مثال HTML ہے. اور پھر ہم کم سے کم پی ایچ پی کی ہو سکتا ہے. تو لوپ کے لئے کہ iterates ہے ڈیٹا کہ باہر پرنٹ کر رہے ہیں نقطہ نظر کے حصے کے طور پر، ہے کنٹرولر کی مخالفت. اور ہمارے پی ایچ پی فائلوں کے اس وقت کے ایک بہت کنٹرولر زمرے میں گر. یہ صرف صارف کی درخواستوں سنبالتی ہے اور ماڈل سے معلومات ملتی ہے. دستاویز میں کود آبجیکٹ ماڈل، یہ صرف راستہ ایچ ٹی ایم ایل سے مراد دستاویزات منعقد کی جاتی ہیں. اور وہ ایک درخت میں منظم کر رہے ہیں ایک درجہ بندی ہے کہ ساخت. ہم تک رسائی حاصل ہے اگر ایسا ہے تو [اشراوی] دستاویز کی نمائندگی، ہم جیسے، دستاویز کے ساتھ کام کر سکتے ہیں ہم بنیادی طور پر اشیاء جوڑتوڑ. اور یہ ایک بنانے کے لئے تھوڑا سا واضح، جب ہم کی ایک بہت ہے ہماری مختلف ٹیگ جواب ہمارے درخت میں مختلف راستوں پر. اور پھر اس مثال کے طور پر، ہم شروع دستاویز نوڈ ہے. ہم، تو، ہمارے HTML نوڈ کہ سر اور جسم میں الگ کرتا ہے. پھر سر عنوان اور ہے عنوان، ہیلو دنیا پر مشتمل ہے. اور ہمارے جسم صرف پر مشتمل ہے ہیلو، دنیا کے طور پر اچھی طرح سے. میں سے کسی پر تو کسی بھی سوالات ہم نے اب تک کا احاطہ کرتا ہے کہ چیزوں؟ اور اگر نہیں، ہننا گا جاوا سکرپٹ کے ساتھ سے زیادہ لے. بہت اچھا ہے. ہننا BLUMBERG: ٹھیک ہے، ٹھنڈا. کچھ پی ایچ پی یا ایچ ٹی ایم ایل کے ساتھ آتا ہے تو، یا ماریا احاطہ چیزیں میں سے کسی، ہم نے ہمیشہ کو روک سکتے ہیں. ہم بہتر کر رہے ہیں وقت پھر سے، تو بہت اچھا. اور صرف واپس جانے کے لئے واقعی بہت تیزی سے اس کے لئے، آپ کو ہر پر نظر ڈالیں تو گزشتہ ایک سال کے امتحان، اس either-- یہاں ہے آتا ہے کچھ HTML، اس تصویر بنانے. یا یہاں اس آریھ ہے، کچھ بنانے ایچ ٹی ایم ایل، تو یقینی طور پر ہے کہ پریکٹس. اور پھر اس ایک بات کی ضمانت ہے آپ کو حق حاصل کر سکتے ہیں اس سوال کا. ٹھنڈا. تو جاوا سکرپٹ کے بارے میں بات کرتے ہیں اور یہ ایک تھوڑا سا ہے کہ کس طرح پی ایچ پی اور کی طرح زبانوں سے مختلف سی، ہم پہلے دیکھا دو زبانوں. تو نمبر ایک، یہ شتل ٹائپ ہے. کہ پی ایچ پی کی طرح ہے، لیکن سی کے برعکس یہ ایک تشریح زبان ہے. ایک بار پھر، اس طرح ہے پی ایچ پی، سی اور اس کے برعکس ہمیں اس use-- کرنے کی اجازت دینے جا رہا ہے ویب صفحات کے ساتھ بہت اچھی طرح سے کام کرتا ہے. یہ ہمارے جوڑتوڑ کرنے کی اجازت دینے جا رہا ہے مواد اور یہ کس طرح لگتا ہے اور یہ کیا کرتا ہے. ہم ایجیکس کا ایک تھوڑا سا کو دیکھنے کے لئے جا رہے ہیں. یہ ہم سے بات چیت کرنے کی اجازت دیتا asynchronously مختلف سرورز کے ساتھ اور معلومات حاصل. یہ بات یہ ہے کہ واقعی ہے پی ایچ پی اور C سے جاوا جدا یہ کلائنٹ سائڈ ہے. دونوں پی ایچ پی اور سی ہیں عام طور پر سرور سائیڈ. سب سے زیادہ حصہ کے لئے اور تقریبا مکمل طور پر کیا ہم کم از کم میں، دیکھا ہے اس کلاس، جاوا جس کا مطلب ہے، کلائنٹ سائڈ پر کام کرتا ہے براؤزر اصل میں ہے کہ یہ چل رہا ہے کے لئے ذمہ دار. اور یہ کہ ہم نہیں ہے کا مطلب سرور کے ساتھ بات چیت کرنے کی ضرورت ہے. تو یہ ایک بہت تیزی سے ہو سکتا ہے کا مطلب ہے کہ یہ اصل میں ہے کیونکہ صرف اس، کروم کے یہ فائر فاکس، ہے، سفاری کے جو کچھ بھی آپ اصل میں استعمال آپ کو جاوا اسکرپٹ کو چلانے کے. سامعین: اتلیکالک کیا مطلب ہے؟ ہننا BLUMBERG: آہ، کیا asynchronously مطلب ہے؟ بڑا سوال. Asynchronously means-- اچھی طرح سے، مواد جس میں ہم یہ ٹھیک ہے کا استعمال کرتے ہیں، ہم ایک ویب کے صفحے پیدا کر رہے ہیں اور ہم نے کچھ معلومات حاصل کرنے کی ضرورت ہے. میشپ کی مثال کے ساتھ تو، ہم چاہتے ہو سکتا ہے کہ کچھ معلومات مضمون کے عنوان ہے. اب، ہم ایک آپشن could-- سینچرونوسلی ایسا کرنے کے لئے ہے اور یہ کہ لشکر طیبہ کا مطلب روکنے، مضمون جاؤ، تو مضمون واپس حاصل، اور رینڈر، لیکن یہ واقعی سست ہو جائے گا. یہ ایک برا صارف کے تجربے کو ہو گا آپ کو صرف بیٹھ جائے گی کیونکہ کچھ جواب دینے کے لئے وہاں انتظار کر رہے. Asynchronously ہم کریں گے کا مطلب ہے کہ ہمارے کاروبار کے بارے میں جا رہیں، صفحہ انجام، اور ہم نے ایک درخواست کو بند کر بھیج دیں گے اس قسم کے لئے جا رہا ہے پس منظر میں ہو. میرے خیال میں ہمیں مثال میں استعمال کرتے ہیں لگتا روب بلا اور کہہ کے لیکچر، ارے، آپ کو اس کو دیکھ سکتے ہیں اور میرے لئے میرے پاس واپس ملے، صرف مجھ سے مخالفت کے طور پر فون پر انتظار کر رہے ہیں. تو asynchronously یہ ہوتا ہے کا مطلب ہے کہ ہم سے دور پس منظر میں متوازی میں. بڑا سوال. اس کے علاوہ کچھ؟ عظیم. ہم میں بہت زیادہ کود جائیں گے ایجیکس کے ساتھ اتلیکالک درخواستوں. سامعین: ہے جہاں جاوا سکرپٹ ہے یہ ماڈل دیکھیں کنٹرولر کے ساتھ گر؟ ہننا BLUMBERG: عظیم سوال. کہاں جاوا گر جاتا ہے ماڈل قول کنٹرولر کے ساتھ؟ HM. میں نے یہ کر سکتے ہیں لگتا fall-- تو ہم عام طور پر نہیں کرتے اس میں اس کے squish کرنا چاہوں نمونہ، لیکن مجھے لگتا ہے کہیں گے، ٹھیک ہے، تو جاوا اصل میں اجازت دینے کے لئے کی جا رہی ہے ہمارے اعداد و شمار جمع کرنے کے لئے اصل میں کرتے ہیں، ڈیٹا کی تشریح ڈیٹا کے ساتھ بامعنی چیز. اس طرح میں، یہ بہت کنٹرول کی طرح ہے. لیکن یہ بھی کے لئے ہمیں اجازت دینے کے لئے جا رہا ہے چیزیں اور پرنٹ چیزوں کو ظاہر. اس طرح میں، یہ بہت نقطہ نظر کی طرح ہے. جی ہاں. تو اس میں پی ایچ پی کی طرح قسم کی ہے اس قسم کی دونوں کہاں ہو سکتا ہے. اچھا سوال. اس کے علاوہ کچھ؟ ٹھیک ہے، بہت اچھا. حق کے ساتھ آگے بڑھ رہے ہیں. تو اس کی ایک مثال کے طور پر دیکھتے ہیں ہم استعمال کر سکتے ہیں کہ کس طرح کی ہماری ویب پروگراموں میں سے ایک میں جاوا سکرپٹ کو. تو میں نے اس پر غور کریں گے ایچ ٹی ایم ایل کے ایک گروپ کے ساتھ index.html. اور بات یہ ہے میں آپ چاہتے ہیں پر توجہ مرکوز اس سکرپٹ ٹیگ ہے. یہ ٹھیک ہے، میں نے کچھ کو چلانے کے لئے چاہتے ہیں، کا کہنا ہے کہ یہ رہتا ہے جہاں یہاں جاوا اسکرپٹ اور ہے. یہ hello.js میں رہتا ہے. بہت سی ایس ایس کی طرح، ہم کر سکتے ہیں ایچ ٹی ایم ایل کے اندر جاوا ڈال. کیوں ہم اس کو باہر علیحدہ کرنے کے لئے چاہتے ہو سکتا ہے؟ جی ہاں. سامعین: دوبارہ سے لکھنا آسان؟ ہننا BLUMBERG: جی ہاں. یہ بھر میں استعمال کے لئے آسان ہے مختلف ویب صفحات. یہ صاف باتیں کرتی رہتی ہے. یہ اچھی پریکٹس ہے. بہت اچھا ہے. اچھا جواب. اتنا اچھا، تو یہ جا رہا ہے اپنے index.html ہونا. اور پھر یہاں نیچے ہماری ہے چھوٹی سی جاوا اسکرپٹ فائل. اور یہ کہتے ہیں کہ تمام، ہیلو دنیا الرٹ ہے. تو کیا ہوتا ہے جب اس صفحے renders-- لہذا آپ کو جو کچھ بھی ویب سائٹ پر جاتے ہیں یہ سب کہ کیا ہونے جا رہا is-- ٹھیک ہے، میں ہوں، یہ جا رہا ہے کا کہنا ہے کہ یہ جاوا سکرپٹ کوڈ کو چلانے کے لئے جا رہا. یہ جاوا سکرپٹ کے کوڈ صرف الرٹ ہیلو، دنیا کہتے ہیں. تو میں نے اس کو حاصل کرنے جا رہا ہوں دوستانہ تھوڑا پاپ اپ. ٹھنڈا؟ کہ بہت ہی پہلی قسم کے ہمارے کی طرح ہے جاوا پروگرام، ہماری ہیلو، دنیا. کے بارے میں تھوڑا سا زیادہ نظر آتے ہیں کیا جاوا اسکرپٹ کا نحو کی طرح لگتا ہے. اور خاص طور پر، کی موازنہ دو ہم نے پہلے دیکھا ہے جس میں سی اور پی ایچ پی،. جاوا اسکرپٹ میں، ہم جا رہے ہیں متغیر، متغیر کے نام، اور پھر اس کی اصل قیمت. اور ہم صرف ایک قسم کی وضاحت نہیں کرتے پی ایچ پی میں، لیکن بہت سی کے برعکس کی طرح ہم چاہتے تھے مثال کے طور پر، تو قیمت 50 ذخیرہ کرنے کے لئے، C میں، ہم کہتے ہیں کرنا پڑے گا، ارے، سی، میں ایک عددی چاہتے ہیں، میں نے اسے فون کرنے جا رہا ہوں میں، اور اس کی قیمت 50 ہے. پی ایچ پی میں، یہ تھوڑا سا آسان ہے. ہم ارے، میں ایک متغیر چاہتے ہیں، کا کہنا ہے کہ میں بلایا اور اس کی قیمت 50 ہے. بہت اسی طرح، جاوا اسکرپٹ میں، ہم ، ارے، میں ایک متغیر میں کہا جاتا چاہتے ہیں اس کی قیمت 50 ہے. میں استعمال کرتے ہیں کہ ہر بعد وقت میں، میں متغیر لکھنے کے لئے کی ضرورت نہیں ہے. یہ صرف میں اس نقطہ نظر سے ہے. سی، جہاں میں اسی طرح میں، ہم میں int کہیں ایک بار، ہم صرف میں استعمال کرتے ہیں. ٹھنڈا؟ بالکل ٹھیک. loops کے پر منتقل، خوش قسمتی سے، ان تقریبا میں وہ کر رہے ہیں لگتا ہے exactly-- نظر کیا کے طور پر بالکل اسی loops میں طرح نظر آتے جا رہے ہیں سی طرح کچھ جہاں آپ لوپ کے لئے تین کی جا رہی ہے ، ایک ابتدا parts-- ایک شرط، اور ایک اپ ڈیٹ. تھوڑی دیر لوپ، یہ عین مطابق ایک ہی لگ رہا. ہم صرف یہ ایک شرط دے. اور کرتے ہیں جبکہ لوپ، ایک بار پھر، وہی. ہم نے اسے ایک شرط. میں نے ختم ہو چکا iterate کرنا چاہتا تھا کا کہنا ہے کہ میں کچھ پانچ گنا کرنا چاہتا تھا. C میں، ہم لکھ سکتا ہے init کے لئے میں 0 کے برابر ہے. میں 5 سے کم ہے، میں + +. فرق صرف اتنا، جاوا اسکرپٹ میں، اس کی بجائے میں 0 برابر INT کہہ کے، ہم متغیر میں 0 کے برابر ہے کا کہنا ہے کہ. خوبصورت. یہ فرق صرف اتنا ہے. اس کا کسی پر کوئی سوال؟ جی ہاں. سامعین: پی ایچ پی میں تو، یہ ایک ہی ہے بات، سوائے لیکن ایک متغیر کی طرح؟ یا ایک متغیر مثال کے طور پر تھا؟ ہننا BLUMBERG: جی ہاں. تو پی ایچ پی میں، یہ جا رہا ہے ایک ڈالر کا نشان ہونا. تو یہ $ میں برابر جا رہا ہے 0، $ میں $ میں + +، کم 5 ہے. بڑا سوال. اب کے بارے میں بات تقریب کا اعلان. C میں، ہم اعلان کر دیا جب ایک تقریب، ہم نے اسے ایک نام دیا اور ہم نے اسے کچھ پیرامیٹرز دی. اور شروع میں، ہم قسم لکھا. جاوا اسکرپٹ میں، ہم سب لکھنا کیا کرنا ہے مطلوبہ الفاظ تقریب اس ، ارے، جاوا سکرپٹ، کا کہنا ہے کہ اگر میں ایک تقریب کی وضاحت کرنے کے بارے میں ہوں. اس صورت میں، اس کا نام رقم ہے. اور یہ دو دلائل، X اور Y لیتا ہے. ہم پرواہ نہیں کرتے کہ نوٹس X اور Y کی اقسام کے بارے میں. اور صرف سی کی طرح، ہم نے اس مطلوبہ الفاظ کی واپسی، تو ہم کچھ کر سکتے ہیں واپسی X اور Y کی طرح. اور اب ایک بار ہم نے اس سے پہلے لکھا ہے تقریب، ہم کہیں رقم استعمال کر سکتے ہیں. اور یہ کہ مکمل طور پر ٹھیک ہے. ایک واقعی ٹھنڈی چیز کے بارے میں C کے برعکس بہت ہے کہ جاوا اسکرپٹ ہے افعال کر سکتے ہیں اقدار کی طرح علاج کیا جائے. تو ہم یہاں کی طرح کچھ کر سکتے ہیں مجھے لگتا ہے میں کہاں اس up-- احاطہ میں متغیر رقم ڈھانک part-- اور ہم صرف کہا تقریب XY واپسی X علاوہ Y برابر. یہ کہا جائے گا کیا ہے ایک گمنام تقریب. یہ ایک نام کے بغیر ایک تقریب ہے. اس تقریب کا کہنا ہے کہ جبکہ رقم، بلاہ، بلاہ، بلاہ، یہ صرف تقریب کا کہنا ہے کہ. لیکن اب میں ہے، اگرچہ اس گمنام تقریب، اس تقریب واقعی صرف ایک قیمت ہے. ہم نے ایک قیمت کی طرح اس کا علاج کر سکتے ہیں. تو ہم نے ایک متغیر اسی میں محفوظ کر سکتے ہیں جس طرح ہم ایک متغیر میں محفوظ کر سکتے ہیں 50. تو ہم ٹھیک ہے، میں نے ایک چاہتے ہیں، کا کہنا ہے کہ کر سکتے ہیں متغیر، یہ رقم کہا جاتا ہے اور اس تقریب ہے. تو ان دو چیزوں اصل میں ہیں عین مطابق ایک ہی بات کرنے جا، لیکن نحو تھوڑا سا ہے مختلف اور ایک مذاق نوٹ کی قسم. جی ہاں. سامعین: آپ کہہ سکتے ہیں تو ایک کہہ کر گمنام تھا کہ تقریب، رقم بریکٹ 2، 5؟ ہننا BLUMBERG: جی ہاں. آپ کو اس گمنام کال کر سکتے ہیں اسی طرح میں تقریب. آپ رقم کریں گے (2، 5)؛ کہ مکمل طور پر ٹھیک ہو جائے گا. میں متغیر رقم کے برابر ہے ایسا نہیں کیا تو تقریب، میں صرف خارج کر دیا تو this-- میں نے اسے اپنے ہاتھ پر ہے جانتے ہیں، لیکن میں نے تو this-- خارج دکھاوا اس تقریب قسم کی صرف چلا گیا ہے. تم نے پھر اس کی وجہ سے استعمال نہیں کر سکتے ہیں تم اس کے لئے ایک نام نہیں ہے. یہ کچھ کرنے کے لئے رجوع کرنے کے لئے مشکل ہے آپ کیا کہتے ہیں کے لئے نہیں جانتے. اچھا سوال. جی ہاں. سامعین: آپ میں رقم حوالہ کر سکتے ہیں X علاوہ Y کی قدر کے ساتھ دوسری جگہوں پر؟ ہننا BLUMBERG: کر سکتے ہیں آپ دوسری جگہوں پر حوالہ رقم قیمت ایکس علاوہ Y کے ساتھ؟ میں آپ کا کیا مطلب مکمل طور پر یقین نہیں ہوں. سامعین: تو اپنے ماضی نیم گمنام تقریب رقم اس کے برابر ہے گمنام تقریب، تو رقم ہے آپ can-- کہ اب ایک متغیر ہننا BLUMBERG: دائیں. تو رقم متغیر ہے، لیکن یہ واقعی میں ہے اتنی رقم جس کا ایک متغیر ہے قدر دالہ ہے. تو اس قسم کی ہے جس میں ایک تقریب، ہے ایک عجیب بات یہ ہے کہ آپ کے سر کے ارد گرد لپیٹ ہم کے ساتھ کھیل رہا ہے کے بعد سے C اور آپ سی میں ایسا نہیں کر سکتا لیکن اب ہم کہتے ہیں خلاصہ کر سکتے ہیں ہم یہاں رقم کہہ سکتے ہیں اسی طرح. سامعین: ٹھیک ہے. ہننا BLUMBERG: جی ہاں. اچھا سوال. جی ہاں. سامعین: تو ہم استعمال نہیں کرتے پی ایچ پی یا جاوا اسکرپٹ میں prototypes کی؟ ہننا BLUMBERG: نہیں، ہم prototypes کی استعمال کی ضرورت نہیں ہے، خاص طور پر جاوا اسکرپٹ میں. ہوں تاکہ ایک بری پریکٹس بات آپ کو ایسا نہیں کرنا چاہئے کہ کہنے جا رہا آپ متغیر میں = 50 لکھنا ہے نہیں ہے. آپ کو صرف 50 = میں کر شروع کر سکتے ہیں. اور صرف میں نے ایک عالمی متغیر بنا دے گا. یہ بہت برا عمل ہے کبھی explicity متغیر میں، کا کہنا ہے کہ لیکن یہ آپ کر سکتے ہیں کچھ ہے. ترجمان نہیں ہے تم پر چللانا جا رہا. جاوا، خوبصورت کی طرح ہے آپ کیا چاہتے ہیں کر سکتے ہیں. اوہ معاف کیجئے. دو نہیں ہے. سنتری پتلون. آگے بڑھو. سامعین: نہیں، آپ سب سے پہلے جانا. سامعین: نہیں، میں صرف کہہ رہا تھا میں اپنے ہاتھ نہیں تھا. ٹھیک ہے. آپ کو فون کرنے کے لئے تھے تو پہلی بار ہے کہ، اب، خلاصہ ہم اسی طرح کہتے ہیں،، ایکس Y، ہر وقت کی طرح؟ ہننا BLUMBERG: جی ہاں. تو ان دونوں بنیادی طور پر ایک ہی بات کروں. سامعین: اور کیا فائدہ ہے ایک یا دوسرے کا استعمال کرتے ہوئے؟ ہننا BLUMBERG: کوئی فائدہ ایک یا دوسرے کا استعمال کرتے ہوئے. میں صرف تم دونوں دکھانا چاہتا تھا نحو کے مختلف ٹکڑوں. اوقات کی ایک بہت ہیں جہاں گمنام افعال ایک مقصد ہے ہے تو ایک دوسرے سے دلیل تقریب میں ایک تقریب ہونا چاہئے. اور ہم میں اس کو دیکھ لیں گے ایجیکس کے ساتھ صرف ایک سیکنڈ. کہ کسی بھی احساس نہیں کیا تو، آپ کے سر کے پیچھے میں اس سٹور. کہ جہاں ایک گمنام ہے تقریب میں مفید ہو سکتا ہے یہ واقعی قابل نہیں ہے کیونکہ ہم صرف ہیں کے بعد سے یہ ایک نام دینے ایک بار اس کا استعمال کرنے کے لئے جا. جی ہاں. سامعین: تو X اور Y پیج بعد پر، کے ساتھ ساتھ تبدیل خلاصہ کرے گا؟ ہننا BLUMBERG: اگر X اور Y پیج بعد میں، کے ساتھ ساتھ تبدیل خلاصہ کرے گا؟ تو اس میں واقعی ہے ، ہے کہ کچھ لگتا ہے ایک بار پھر، یہ صرف بہت مختلف لگ رہا ہے C. سے یہ ایک کی قیمت نہیں ہے. یہ 5 نہیں ہے. یہ صرف تقریب میں خود ہے. تو جیسے ہی تم اس پیرامیٹرز دے، تو آپ کو اصل میں ایک قیمت کا حساب لیں گے. MARIA ZLATKOVA: اور پھر آپ کی تقریب میں کال کر سکتے ہیں اور کچھ قیمت حاصل کرنے کے لئے استعمال. ہننا BLUMBERG: دائیں. بالکل. جی ہاں. سامعین: آپ تو صرف متغیر میں سٹور، متغیر X کی طرح دو اقدار کی رقم کے برابر ہے ہننا BLUMBERG: جی ہاں. تو آپ کو صرف متغیر رقم کر سکتے ہیں دو اقدار کی رقم کے برابر ہے. جی ہاں. کوئی سوال؟ جی ہاں. سامعین: لیکن کرے گا کہ رقم اور رقم کو الجھانے؟ آپ کو آپ کے متغیر رقم کہتے ہیں کی طرح، آپ کی تقریب میں رقم فون کرے گا؟ ہننا BLUMBERG: MM. ملی میٹر. کیا تم نے کچھ کیا ہے تو کی طرح، رقم رقم 2، 5 برابر ہے؟ سامعین: جی ہاں. ہننا BLUMBERG: مجھے یقین ہے کہ رقم کی قدر ادلیکھت گا. تو ایک اور دلچسپ جاوا کے بارے میں بات ایک متغیر لے جا سکتے ہیں مختلف اقسام کے ایک گروپ پر. بری پریکٹس. تم کچھ نہیں کرنا چاہئے طرح آپ کو صرف کہا کیا. لیکن C میں، میں مقرر کیا گیا ہے تو ایک عددی کے برابر، ہم یہ کبھی نہیں ہے کہ معلوم ہے ایک تار بننے جا رہا. یہ جاوا سکرپٹ میں ایسا نہیں ہے. جی ہاں، اچھا سوال ہے. اس کے علاوہ کچھ؟ بالکل ٹھیک. وقت پر ٹھیک کر. رکھتے ہوئے جا. بالکل ٹھیک. ہم ایک صف میں نظر آتے ہیں جاوا اسکرپٹ میں، یہاں ہے ڈور کی ایک صف کی ایک فوری مثال. اور arrays کو متحرک طور پر ترقی کر سکتا ہے. انہوں نے ایک نہیں ہے اسی طرح مقررہ سائز وہ سی میں ہے کہ ہم تک رسائی حاصل کر سکتے ہیں صرف مربع بریکٹ کے ساتھ عناصر. یہ پی ایچ پی اور ایک بہت کی طرح ایک بہت لگ رہا ہم اس معاملے میں، کا کہنا ہے کہ کر سکتے ہیں جہاں سی، کی طرح، میں نے لفظ جاوا چاہتے تھے تو، میں کروں گا 0، 1، 2 کے ساتھ مربع بریکٹ آمد کرتے. جب ہم اور پھر آپ C میں یاد ہے ایک صف کی لمبائی حاصل کرنے کے لئے کرنا چاہتا تھا، یہ واقعی پریشان کن تھا. لیکن جاوا اسکرپٹ میں، سپر آسان. ہم سب کرتے ہیں، .لمبائی. یہ لمبائی دیتا ہے. یہی ہے. سامعین: اتنا آسان ہے. ہننا BLUMBERG: جی ہاں، ہے آپ کی زندگی بہت آسان. ٹھیک ہے، وہاں نہیں object--. جاوا احساس میں آبجیکٹ C میں structs کی طرح ایک بہت اور پی ایچ پی میں ساہچری arrays. تو ہم نے دیکھا ہے ایک کے بہت JSON، ہے جو جاوا سکرپٹ کے آبجیکٹ سنکیتن کے لئے کھڑا ہے. اور یہ بنیادی طور پر ایک طریقہ ہے کے ہمارے اعداد و شمار structuring کے. تو اس کی ایک مثال کے طور پر دیکھتے ہیں، شاید سب سے آسان. تو یہاں کسی چیز کی ایک مثال ہے کہ CS50، کلاس اسٹورز. مجھے کلاس کہنا ہے کہ جب، میں، کورس کا مطلب نہیں،، جی ہاں CS50 کورس like--. اور تم اس کو دیکھ لیں گے اعتراض میں سب کچھ موجود جا رہا ہے گھوبگھرالی منحنی خطوط وحدانی میں. اور ہم میدان کے نام سے منسلک کرنے کے لئے شروع یا مختلف اقدار کے ساتھ چابیاں. تو آپ کس طرح اس قسم کے دیکھنے کے لئے شروع کر سکتے ہیں پی ایچ پی میں ایک ساہچری سرنی کی طرح محسوس ہوتا ہے. تو ہم میدان منسلک کرنے کے لئے جا رہے ہیں یا اہم نام، کورس، سٹرنگ کے ساتھ، CS50. ہم ایک انسٹرکٹر کے لئے جا رہے. ہم کی TFs لئے جا رہے ہیں. ہم psets کے نمبر کے لئے جا رہے ہیں اور ہم نے ریکارڈ کے لئے جا رہے. اور نوٹ کرنے کے لئے ایک ٹھنڈی چیز کی ہے ان چیزوں کو مختلف اقسام ہیں، اور یہ کہ مکمل طور پر ٹھیک ہے. یہ، حقیقت میں، کسی چیز کے لئے ٹھیک ہے یہ شاید کسی چیز کے لئے توقع کی جاتی ہے ڈور کا ایک مجموعہ ہے کرنے کے لئے اور اعداد Booleans کے اور arrays اور جو کچھ بھی آپ کو ہو سکتا ہے آپ شے کے اندر کرنا چاہتے ہیں. اور یہ ہونے جا رہے ہیں کہ براہ مہربانی نوٹ نام یا چابیاں، اور پھر ہم صرف ایک چھوٹی سی بڑی آنت کے ساتھ اس کے برابر مقرر. سامعین: بالکل JSON کیا مطلب ہے؟ ہننا BLUMBERG کیا بالکل JSON مطلب ہے؟ JSON صرف کے لئے کھڑا ہے جاوا سکرپٹ کے آبجیکٹ سنکیتن. یہ فارمیٹنگ کا ایک طریقہ ہے. جی ہاں. یہ ہمارے اعداد و شمار فارمیٹنگ کا ایک طریقہ ہے. C میں، یہ structs ہے. پی ایچ پی میں، اس ساہچری arrays ہے. جاوا اسکرپٹ میں، ہم اشیاء ہے. سامعین: تو CS50 کسی چیز ہے؟ ہننا BLUMBERG: CS50 ہے اس معاملے میں اعتراض. اب، ہم اصل میں تک رسائی حاصل کرتے ان شعبوں ان شعبوں کو تبدیل یا. مثال کے طور پر، ہم نے فیصلہ کیا ہے کہ فرض آپ ایک کم pset کے اس سمسٹر چاہتا تھا. بجائے نو، ہم ہیں صرف آٹھ کے لئے جا. ہم کس طرح تبدیل کریں گے؟ اوہ، غلط طریقے سے. ہم ایسا کر سکتے ہیں کے دو طریقے ہیں. نمبر ایک نقطہ کے ساتھ ہے سنکیتن اور نمبر دو مربع بریکٹ سنکیتن کے ساتھ ہے. تو، مثال کے طور پر، میں تو تبدیل یا رسائی کرنا چاہتا تھا ہماری CS50 چیز میں psets میدان، میں کیا کروں گا CS50.psets ہے، تاکہ اعتراض ڈاٹ کے نام میدان یا اہم کے نام. بہت اسی طرح، یہ بالکل وہی جو ہے برابر تو CS50 کرتے ہیں، اور کرنے کے لئے مربع منحنی خطوط وحدانی میں، پر psets. ٹھنڈا؟ جی ہاں. سامعین: تو JSON ہے اب بھی تکنیکی طور پر جاوا سکرپٹ، اگرچہ کی psets میں ہم [اشراوی] یہ باہر الگ؟ ہننا BLUMBERG: ضرور. سوال ہے تو، ہیں جاوا اسکرپٹ اور JSON برابر؟ تو بنیادی طور پر JSON سنکیتن، ہے ہم باہر لکھنے کا طریقہ جاوا اسکرپٹ سے کسی چیز. تو وہ بالکل ویسی ہی نہیں ہیں. میں وہاں، جاوا کہیں گے جاوا اسکرپٹ میں اشیاء ہیں. JSON ان اشیاء لیتا ہے اور ان پرنٹ اور ان کے دکھاتا ہے یا ایک اچھا طریقہ میں ان کا ذخیرہ. تو JSON ایک پروگرامنگ نہیں ہے زبان جاوا اسکرپٹ ہے اس طرح. اس کے لئے صرف سنکیتن ہے جاوا اسکرپٹ میں ہماری اشیاء. جی ہاں. سامعین: تو کیا بالکل [اشراوی] مکمل؟ ہننا BLUMBERG: ضرور. تو یہ اصل میں کچھ بھی نہیں ہے. اس تک رسائی حاصل کرنے کے لئے صرف ایک طریقہ ہے. تو ہم کو تبدیل کرنا چاہتے تھے کا کہنا ہے کہ مسئلہ سیٹ کی تعداد آٹھ نو سے. ہم کیا کرتے ہیں کچھ کرنا ہے CS50.psets = 8؛ طرح جی ہاں، بہت بڑا سوال. یہ صرف آپ کو دکھانے کے لئے ہے نحو. اصل میں مفید کچھ بھی نہیں ہے. کوئی سوال؟ حق کے ساتھ آگے بڑھ رہے ہیں. تو کس طرح ایک فوری مثال کے طور پر نظر آتے ہیں میں تم سے اس سے کہا، کیونکہ جاوا اسکرپٹ کام کرتا ہے ان تمام ٹھنڈی چیزیں اور ہمارے ویب صفحات پر نظر ثانی کرنے کی اجازت دیتا ہے. اصل میں کارروائی میں یہ دیکھتے ہیں. تو، مثال کے طور پر، یہ HTML فائل لے. اور میں آپ پر توجہ مرکوز کرنا چاہتے ہیں بات یہ ہے ایک بٹن ہے جس میں یہ خاص طور پر ٹیگ،، ID search_button ساتھ. یہ صرف کے صفحے پر. تو اب چلو دیکھتے ہم اصل میں کر سکتے ہیں. ویسے، جب فرض آپ اس بٹن پر کلک کریں، ہم ایک alert-- بنانا چاہتے ہیں آپ کے بٹن پر کلک. ہم یہ کر سکتے ہیں کس طرح دیکھتے ہیں. تو یہ کچھ نہیں ہے window.onload-- کہ تم اس وجہ سے، کلاس میں دیکھا ہے کوئز کے لئے یہ معلوم کرنے کی ضرورت نہیں کرے گا. لیکن یہ بنیادی طور پر ٹھیک ہے، کال، کا کہنا ہے کہ اس تقریب میں جب ونڈو بوجھ. تو یہ صرف قسم کے سیٹ اپ کے کوڈ کا ہے. اس کے بارے میں اتنا فکر مت کرو. کیا میں آپ پر توجہ مرکوز کرنا چاہتے ہیں یہاں میں ہے. ہم متغیر searchButton برابر کہتے ہیں ہیں document.getElementByID search_button. آپ اندازہ لگا سکتا تو کے طور پر، اس کا کیا ہے، یہ کہنا ہے کہ ٹھیک ہے، عنصر مل جانا ID search_button ساتھ. اور اب ہم ہے کہ اور میں ہوں اصل عنصر ایک میں جمع کی جا رہی متغیر searchButton. اور اب ہم اصل میں اس عنصر کا استعمال کر سکتے ہیں اور اسے تبدیل، یا اپنی اقدار تک رسائی حاصل، اس طرح کی چیزیں. ہم اصل میں کرنے کے لئے شروع کر سکتے ہیں ویب کے صفحے کے ساتھ مشغول. تو یہاں میں اب میں ہے کہ، ٹھیک ہے، کا کہنا ہے کہ اس پر کلک کیا جاتا ہے جب کہ بٹن،، اس گمنام تقریب کہتے ہیں. تو اس جہاں گمنام ہے افعال مفید ہو. اور تقریب کیا کرتا ہے؟ ٹھیک ہے، یہ صرف اس کا مطالبہ الرٹ تقریب اور اس کا کہنا ہے کہ آپ تلاش کے بٹن پر کلک. میں جہاں بھی جانا تو کیا ہو گا یہ HTML رہتا ہے اور میں بٹن پر کلک کریں، میں ایک فینسی چھوٹی الرٹ ملے گا کہ آپ کو بٹن پر کلک کہتے ہیں. تو چیزوں پر توجہ مرکوز کرنے کے لئے یہاں ہیں document.getElementByID ایک خاص طور پر ایچ ٹی ایم ایل ہے دی ID کے ساتھ عنصر. اور اب ہم مقرر کر سکتے ہیں جب کیا ہونا چاہئے اس مخصوص عنصر کلک کیا جاتا ہے. سامعین: ہم نے اس کے تمام ڈال کرنے کے لئے ہے؟ ہننا BLUMBERG: معاف کیجئے گا؟ سامعین: ہم کرنے کی ضرورت ہے جسمانی طور پر اس کے تمام کوڈ کو؟ ہننا BLUMBERG: ہم کرنے کی ضرورت ہے جسمانی طور پر اس کے تمام کوڈ کو؟ جی ہاں. پریشان اس قسم کی نہیں ہے؟ اس کوڈ کی ایک بہت ہے. سامعین: تم نے کچھ درآمد کر سکتے ہیں. ہننا BLUMBERG: دائیں. ہمیں کچھ استعمال کر سکتے ہیں. اور particular-- اوہ، یہ ہے مجھ سے کہہ رہی میں سیکشن سکھانا پڑے. خاص طور پر، چلو jQuery لائبریری کا استعمال، کہ واقعی تھا کیونکہ طویل اور واقعی پریشان اور میں اس کو آسان بنانے کے کرنے کے قابل بننا چاہتا ہوں اور یہ چھوٹا اور لکھنے کے لئے آسان بنانے کے. تو jQuery ایک جاوا سکرپٹ لائبریری ہے. تو جاوا اسکرپٹ پروگرامنگ ہے زبان؛ jQuery ایک لائبریری ہے. اور یہ آسان چیزوں کی ایک گروپ ہے. اس کو تبدیل کرنے اور اس پار جا رہا ہوتا ہے ایک HTML دستاویز بہت آسان. یہ ہینڈلنگ واقعات آسان بنا دیتا ہے. یہ آسان حرکت پذیری ہے اور یہ آسان ایجیکس ہے. تو کے دو حصوں میں کود اب ان چیزوں کو. معاف کیجئے گا. ہم ایسا کرنے سے پہلے، کچھ بنیادی نحو. یہ سب سے زیادہ کرنے کے لئے بلاتا ہے jQuery لائبریری کی طرح نظر آتے. ہم اس ڈالر استعمال sign-- پی ایچ پی سے کوئی تعلق نہیں نشانی، صرف ایک کے نام inconvenient-- سلیکٹر، ڈاٹ، اور پھر ایک کارروائی. تو کچھ دیکھتے ہیں اس کی ٹھوس مثالیں. تو یہ اصل میں ایک ہی ہے واقعہ سلائڈ سے کوڈ. تو اس طویل، بدسورت بات بن جاتی ہے یہ بہت اچھے، چھوٹے چیز. تو اس کو توڑنے کے لئے کی کوشش کریں. یہ ٹھیک ہے، اس jQuery-- ڈالر، کا کہنا ہے کہ ، jQuery کے sign-- مجھے کھڑکی مل جائے. تو اس سلیکٹر ہے. یہ بوجھ جب، اس تقریب کو فون. تو ہے کہ ہر چیز کے اندر. ٹھیک ہے. اب تک، اتنا اچھا؟ بالکل ٹھیک. اب، jQuery کی، مجھے تلاش ID search_button کے ساتھ بات. اور یہ کیا کلک کیا جاتا ہے، اس تقریب کو فون. اور پھر اس تقریب کی بالکل یہی. بس الرٹ کا ایک تھوڑا سا ہے، آپ تلاش کے بٹن پر کلک. تو یہ بہت اچھی بات ہے. یہ واقعی condenses اور اپنے کوڈ کو آسان بنا دیتا. مجھے کیا پتہ تھا کہ کس طرح یہ آئی ڈی search_button ہے اور کلاس search_button پسند نہیں؟ سامعین: hashtag کے؟ ہننا BLUMBERG: جی ہاں. یہ ہیش کی علامت، یہ صرف سی ایس ایس کی طرح ہے. ، جب ہم تو سی ایس ایس کے ساتھ، یاد ID کی طرف سے کچھ منتخب کرنے کے لئے کرنا چاہتا تھا، ہم پونڈ علامت کا استعمال کیا. اور ہم منتخب کرنے کے لئے کرنا چاہتا تھا جب طبقے کی طرف سے کچھ، ہم نقطہ کا استعمال. عظیم. کوئی مطلب ہے؟ تو jQuery کرنے کے لئے سمجھا جاتا ہے صرف ہماری زندگی کو آسان بنانے. جی ہاں. سامعین: تو میں نے کے طور پر ایک چھوٹی سی الجھن میں ہوں گمنام تقریب کیسے کام کرتا ہے کرنے کے لئے. آپ کو اس anonymouse نام کرتے ہیں تقریب، کام؟ یہ کس طرح کہا جاتا ہے؟ ہننا BLUMBERG: ضرور. تو تقریب صرف ایک مطلوبہ الفاظ کی ہے کہ اگر میں ایک تقریب کی وضاحت کرنے کے بارے میں ہوں، کا کہنا ہے کہ. سامعین: ٹھیک ہے، اوہ. ہننا BLUMBERG: ٹھیک ہے؟ اور پھر ہم ایک کے طور پر اس کے پاس دلیل کے لے to-- کلک کریں تقریب میں اس اندرونی one--. تو جی ہاں، اس تقریب تو، اس گمنام تقریب، ایک حقیقی دلیل بن جاتا ہے. تو، جاوا اسکرپٹ میں یاد ہم اقدار کے طور پر کام کرتا ہے علاج کر سکتے ہیں. سامعین: ٹھیک ہے، اوہ. ہننا BLUMBERG: جی ہاں. مجھے پسند ہے کہ "اوہ." اچھا. دیگر سوال؟ وقت؟ MARIA ZLATKOVA: گڈ. اچھا. ہننا BLUMBERG: بہت اچھے. کچھ فوری مفید jQuery. میں جانے کے لئے نہیں جا رہا ہوں ان میں سے سب کے ذریعے. یہ سلائڈ ہو جائے گا آن لائن تھوڑا سا بعد میں، تو آپ کو چیک نہیں کر سکتے ہیں تھوڑا سا کے بعد اسے باہر. لیکن بنیادی طور پر، عام طور پر ہم کہتے ہیں کہ جہاں پیٹرن، کی ڈگری حاصل کی ارے، ٹھیک ہے، jQuery کی، یہاں میری تو یہاں سلیکٹر اور ایک کارروائی کی ہے. اور آپ تک رسائی حاصل کی طرح باتیں کر سکتے ہیں ایک فارم کی قیمت،، کچھ HTML رسائی جب صارف کیا ہوتا ہے کنٹرول ایک شکل، اس طرح کی چیزیں پیش. جی ہاں. سامعین: میں تو امتحان، ہم ضرورت کے لئے جا رہے ہیں سے بہت بہت پتہ jQuery کی دستاویزات. تو ہم jQuery کی کاپی / پیسٹ کہ دی ہمارے دھوکے باز شیٹ پر دستاویزات، جہاں لائن تیار ہے؟ کس طرح بہت سے ہم جانتے ہیں کی ضرورت ہے؟ ہننا BLUMBERG: عظیم سوال. سوال یہ ہے بنیادی طور پر آپ کہ دی jQuery کے دستاویزات تک رسائی حاصل نہیں کر سکتے ہیں ٹیسٹ کے دوران، کتنا آپ کو کرنا چاہئے پتہ ہے؟ ہم آپ کے آنے کی توقع نہیں کریں گے کچھ بے ترتیب تقریب کے ساتھ ہم گوگل آپ کو توقع کریں گے کہ. منصفانہ کھیل ہے کہ چیزوں میں کروں گا ہیں ، جنرل نحو کی صرف ایک قسم کا کہنا ہے کہ ID کی طرف سے منتخب کرنے کے قابل ہونے کی وجہ سے اور تو صرف سی ایس ایس کی طرح class-- طرف. اور پھر اصل افعال اپنے آپ، ہم امکان آپ کو بتا دونگا. جی ہاں. سامعین: تو آپ کو منتخب کریں جب طبقے کی طرف سے نقطہ کا مطلب ہو گا. ہننا BLUMBERG: جی ہاں، بالکل. اچھا. آپ طبقے کی طرف سے منتخب کرتے ہیں تو، یہ جا رہا ہے بجائے پونڈ نشانی ڈاٹ جائے گا. جی ہاں. سامعین: تم کروگے فرق ختم ہو جانا ID کی طرف سے اور کلاس کی طرف سے منتخب کرنے کے درمیان؟ ہننا BLUMBERG: ضرور. منتخب کے درمیان فرق طبقے کی طرف سے کی شناخت اور منتخب. ماریا نے کہا کہ تو ایک تھوڑا سا پہلے، وہاں صرف ایک HTML عنصر ہو سکتا ہے ایک دیئے گئے ID کے ساتھ، کلاس جبکہ، یہ گروپ ایک گروپ کے لئے کی اجازت دیتا ہے ایک دوسرے کے ساتھ مختلف عناصر، لہذا متعلق ہیں کہ چیزیں، لیکن بالکل اسی. اس سوال کا جواب ہے؟ بہت اچھا ہے. جی ہاں. سامعین: آپ ایک سے زیادہ ہے اگر ایک ہی کلاس میں ہے کہ چیزوں؟ ہننا BLUMBERG: کیا ہوتا ہے آپ ایک سے زیادہ چیزیں ہیں کہ اگر ایک ہی کلاس ہے؟ تو، مثال کے طور پر، ہم ہیں تو صرف، خالص جاوا اسکرپٹ کا استعمال کرتے ہوئے ہم طرح کچھ کرنا ہوگا document.getElementsByClass. اور یہ کہ اصل میں کرتا ہے پھر کیا واپسی عناصر کے ایک صف ہے. اور میں آپ iterate کرنے کے لئے ہے انہیں آپ چاہتے ہیں جس میں ایک تلاش کر سکتے یا. دینے کے لئے نہیں جا رہا ہے آپ کو ایک عنصر. یہ آپ کو دینے جا رہا ہے عناصر کا ایک صف. بڑا سوال. اس کے علاوہ کچھ؟ بہت اچھا ہے. تو میں آپ کے ساتھ واقف ہیں تو لگتا ہے کسی بھی jQuery آپ pset میں دیکھا آپ کو جانے کے لئے اچھا ہونا چاہیئے. سوال؟ ارے نہیں. مجھے سچ میں سکھانے کے لئے ہے. آرام. یہ ٹھیک ہو جائے گا. میں وہاں مل جائے گا. کی AJAX بارے میں بات کرتے ہیں. تو ایجیکس a-- اچھی ہونے جا رہا ہے، کی اس کے لئے کھڑا کیا ہے کے ساتھ شروع کر دیں. یہ مخفف ہے. یہ اتلیکالک کے لئے کھڑا ہے جاوا اسکرپٹ اور XML. اور XML بنیادی طور پر ہونے جا رہا ہے [اشراوی] ہمارے اعداد و شمار کی ایک قسم کے ساتھ. لیکن ہم اصل XML استعمال نہیں کیا ہے. اس کے بجائے، ہم صرف JSON استعمال. تو بنیادی طور پر، یہ کچھ data-- ہے اتلیکالک، جاوا، اور اعداد و شمار، اس صورت میں، JSON میں. اور ہمارا مقصد ہم نے ذکر کیا، کے طور پر پہلے تھوڑا سا، ایک بنانے کے لئے کے قابل ہو جائے کرنے کے لئے ہے درخواست، اس کی درخواست کرتے ہیں میں اس کی بات پس منظر، لیکن جاری ہم کیا کرنے کا ارادہ کر رہے تھے جو کچھ بھی. اور یہ کہ معلومات ہے پھر جب تیار، تو ہم اسے شامل کر لیں گے. تو کیا یہ دیکھتے ہیں اصل کی طرح لگتا ہے. اور یہ آپ کو ہونا چاہئے واقف تھوڑا سا pset8 سے، آپ کو صرف میں تبدیل کر دیا. تو یہاں ایک درست jQuery کی تقریب ہے کہ ہم شاید اس ڈالر کا نشان about-- جاننا چاہتا ہوں. تو یہ jQuery تقریب، .getJson کا کہنا ہے کہ. اور اس تقریب ہے یہ ہے ایک یو آر ایل اور کچھ parameters-- لیتا تو میں نے اس معاملے میں لگتا ہے pset8، یہ، کی طرح تھا یو آر ایل articles.php تھا اور پیرامیٹرز = کچھ پوسٹل کوڈ جانا تھا. اور یہ ٹھیک، کے لئے ایک درخواست بنانے، کا کہنا ہے کہ دی پیرامیٹرز کے ساتھ اس یو آر ایل. اور یہ صرف ہوتا ہے. جب وہ فارغ، یہ یا تو کامیابی سے مکمل کرنے کے لئے جا یا یہ ناکام رہا ہے. تو اس کال کے برابر ہے روب اور کچھ کرنا اس سے پوچھو. وہ واپس بلاتا ہے اور پھر جب، وہ یا تو میں کیا کر رہا ہوں یا میں ناکام کہنے جا رہا. تم جہاں صورت میں کیا، تم ٹھیک، میں نے کیا ہوں، کا کہنا ہے کہ. اور پھر آپ کو اس تقریب کو فون. اس صورت میں، یہ ایک ہونے جا رہا ہے کچھ معلومات لیتا ہے کہ تقریب. ہم عام طور پر کے بارے میں پرواہ ایک، اعداد و شمار ہے ہم اصل میں واپس آ رہے تھے کہ اعداد و شمار .getJSON بلا کے نتیجے کے طور پر. اور آپ اس سے کچھ کر سکتے ہیں. pset8 کی صورت میں، ہم ایک فہرست کے طور پر ظاہر کیا. ناکام ایک تقریب ہونے جا رہا ہے درخواست ناکام ہو جاتا ہے کہ کہا جاتا ہے کسی بھی وجہ سے. اور pset8 کی صورت میں، ہم صرف اس console.log کے. اس پر کوئی سوال؟ جی ہاں. سامعین: ہم صرف تقریب تھیٹا استعمال کر سکتے ہیں بجائے تقریب کی، textStatus، jqHXR. ہننا BLUMBERG: ضرور. تو جی ہاں، میں pset میں لگتا ہے، ہم صرف تقریب ڈیٹا دیکھا. تو یہ صرف ٹھیک ہے، جی ہاں the-- ہے. یہی ہے جو ہم pset میں دیکھا ہے. کہ مکمل طور پر ٹھیک ہے. اگر تم چاہتے تھے یہ صرف ہیں مزید معلومات حاصل کرنے کے لئے ھیںچو، ان چیزوں سے ہیں کہ آپ .getJSON سے حاصل کر سکتے ہیں. اچھا سوال. اس کے علاوہ کچھ؟ جی ہاں. سامعین: تو .getJSON ایجیکس ہے؟ ہننا BLUMBERG: ٹھیک ہے. تو یہ مشکل حصہ کی طرح ہے. اس کی اجازت دیتا ہے کہ ایک jQuery تقریب ہے آپ اتلیکالک کالز کرنا. اور وہ اتلیکالک کالز، کہ کیا ہم ایجیکس کے طور پر کی طرف اشارہ کیا گیا ہے. جی ہاں. اس سے مجھے ایک بہت طویل وقت لے لیا میں ایک طالب علم تھا جب کے علاوہ ھیںچو. سامعین: آپ کو پھر سے کہہ سکتے ہیں؟ ہننا BLUMBERG: جی ہاں. میں نے پھر سے کہنا ہے کہ کر سکتے ہیں؟ یہ .getJSON تقریب، یہ ایک jQuery تقریب ہے. اور اسے بنانے کے لئے جا رہا ہے ایک اتلیکالک کال. یہ اتلیکالک کالز، ہم نے ایجیکس کے طور پر ان کا حوالہ دیتے ہوئے کیا گیا. کوئی سوال؟ ہم نے چھوڑ دیا صرف ایک جوڑے منٹ ہیں. اور ماریہ کے لئے جا رہا سیکورٹی کے ساتھ لپیٹ اور پھر ہم جا رہے ہیں بس کے بارے میں کیا کرنا. MARIA ZLATKOVA: بہت اچھے، ٹھیک ہے. تو یہ صرف ایک جوڑے لے is-- سیکنڈ کے اس سے زیادہ دیکھنے کے لئے. اور یہ واقعی بہت اچھا کچھ نہیں ہے. اور یہی وجہ ہے کسی نے مجھے بتا سکتے ہیں؟ کیا FOO میں چل رہا ہے اور مئی سکتا ہے ممکنہ طور پر کچھ برا کے نتیجے میں، اور یہ کہ کیا کہا جاتا ہے؟ جی ہاں. سامعین: تو ہے کہ دلیل 12 حروف سے زیادہ ہے میں منظور، یہ اتپرواہ سکتا. MARIA ZLATKOVA: دائیں. کامل. یہ کیا کہا جاتا ہے؟ آپ کو صرف اس کا ذکر کیا. سامعین: بفر اتپرواہ. MARIA ZLATKOVA: جی ہاں، اتپرواہ بفر. تو یہ کچھ ہے کہ ہم بفر اتپرواہ کے طور پر حوالہ دیتے ہیں. اور ہم، FOO کی کہ اندر دیکھیں ہم اپنے بفر، سی وضاحت کی گئی ہے 12 کے سائز کے ساتھ. تاہم، اہم، ہم ایسا نہیں کرتے بالکل کسی بھی طرح میں کی جانچ پڑتال چاہے تاکہ argv1-- دوسری دلیل تھا. ہم چاہے جانچ پڑتال نہیں کرتے اس کے سائز مناسب ہے. اگر ایسا ہے تو ہم نے ایک تھا خاص طور پر بدنیتی پر مبنی صارف تھا کہ کچھ بحث میں لگانے والے 12 سے زیادہ، اور اس کے بعد ممکنہ طور پر اس کی حد سے باہر دلیل، کچھ کارکردگی کوڈ تھا وہ کچھ برا کرنے کی کوشش کر رہا تھا کہ اس کے ساتھ؛ تو یہ،، کیا ہوگا واپسی کی جگہ لے لے گا FOO تقریب کا پتہ، جب تقریب جس کے نتیجے میں اس کوڈ کو پھانسی پر آرہے ہیں. اور پھر بری چیزیں ہو سکتا ہے. یہ سب سمجھ میں آتا ہے؟ اور ہم اس کے خلاف کس طرح کی حفاظت کر سکتے ہیں؟ کوئی تجاویز؟ بنیادی طور پر، کے اندر ممکنہ طور پر FOO کو، کس طرح ہمیں یقین ہے کہ بنانے کے لئے چیک کر سکتے ہیں کہ نہیں ہو سکتا؟ سامعین: سائز 12 سے تجاوز کر گئی ہے تو، آپ کو اضافی میموری مختص کریں گے؟ MARIA ZLATKOVA: تجویز ہے، مختص سائز کے اضافی میموری سے تجاوز کر گئی. اصل میں، ہم کچھ کر سکتے ہیں اس کے ساتھ ساتھ مقابلے میں آسان بہت. ہم صرف سٹرنگ کی لمبائی حاصل کر سکتے ہیں داخل کیا جاتا ہے اس دلیل کی، کہ کم ہے تو چیک کریں زیادہ یا 12-- کے برابر ہم یہ چاہتے ہیں کیا ہے جس میں ہم نہیں چاہتے کیونکہ ہونا یہ ہمارے بفر کی حد سے تجاوز کرنے کی. اور اگر یہ نہیں تو تو ہم دلیل کے ساتھ کام کر سکتے ہیں. یہ کرتا ہے تو، ہم واقعی چاہتے ہیں صارف ممکنہ Yello میں سے. لیکن یہ ہم ایسا کریں گے کہ کس طرح ہے. جی ہاں. سامعین: کیا تم memcpy اصلی فوری وضاحت؟ MARIA ZLATKOVA: اوہ، معاف کرنا. جی ہاں. Memcpy ٹھیک ہے، جو کچھ بھی is-- معذرت لیتا ہے. Memcpy جو کچھ بھی لیتا ہے بار میں، جو کچھ گزر چکا ہے کمانڈ لائن کی دلیل کے طور پر FOO کو پر. تو یہ argv1 لے جا رہا ہے. Argv1 یہاں بار کہا جاتا ہے. تو اس بار لینے کے لئے جا رہا ہے اور یہ سی میں اس کی کاپی کرنے جا رہا ہے. سامعین: ٹھیک ہے. MARIA ZLATKOVA: اور یہ جا رہا ہے تیسری دلیل صرف مراد copy-- کتنا یہ سی میں کاپی کرنے کے لئے جا رہا ہے. سامعین: آہ. تو یہ ایک کی کاپی تو اس کے تمام. MARIA ZLATKOVA: جی ہاں، یہ اس کے تمام کاپی ہے. جی ہاں. سب سے پہلے، ہم بار نہیں ہے بات کو یقینی بنانا یہ ایک پوائنٹر ہے کیونکہ برابر شہوت انگیز null. پھر ہم بار کی سٹرنگ کی لمبائی حاصل. ہم یہ یقینی بنائیں کہ سے کم یا 12 کے برابر. اور پھر ہم نے کی وجہ سے بات کو یقینی بنایا، ہم اصل میں کر سکتے ہیں memcpy اور یہ کہ ٹھیک ہے کہ اس بات کا یقین. کوئی سوال؟ عظیم. میں نے دو صحیح یا غلط سوال ہے. کسی کو بھی فورا مجھے بتا سکتے ہیں ان صحیح یا غلط ہیں؟ جی ہاں، یہ جھوٹ ہے. بالکل. دونوں جھوٹے ہیں. ایک پاس ورڈ کا استعمال کرتے ہوئے واقعی کبھی نہیں اچھا خیال ہے کوئی جانتا ہے کیونکہ اگر آپ اپنا پاس ورڈ، وہ صرف کر سکتے ہیں اپنی باقی تمام اکاؤنٹس تک رسائی حاصل. اور پھر شبیہیں کچھ نہیں سلامتی کو یقینی بنانے. ہم عام طور پر HTTPS کے لئے نظر آنا چاہئے بجائے HTTP اور یو آر ایل کا. اور کچھ دیگر اقسام ہم نے ذکر کیا ہے کہ حملے، ڈیوڈ میں ذکر کیا ہے کہ ، SQL انجکشن حملوں لیکچر. ہم نے پہلے ہی دیکھا ہے کہ ہم don't-- تو CS50 استفسار تقریب اس بات کو یقینی بناتا ہے SQL انجکشن حملوں پائے جاتے ہیں نہیں کر سکتے ہیں. لیکن ہم CS50 کا استعمال نہیں کر رہے تھے تو، اقتباس، unquote جو "سوال میں،" ہم بات کو یقینی بنانا ہوگا کہ صارف کی ان پٹ اصل میں کچھ SQL نہیں ہے تمام سبب بن جائے گا کہ سوال ہمارے میزیں گرا دیا جائے کرنے کے لئے یا کچھ برا ہمارے ڈیٹا بیس کے ساتھ ہو. سیشن اغوا ہے حملے کے ایک اور قسم کہ جب کچھ برا ہوتا ہے بعض مقتول کے سیشن کا استعمال کرتا ID لاگ ان معلومات تک رسائی حاصل کرنے. تو اس کی ایک بہت چھوٹی سی مثال ہے کی طرح ہم نے ایک عوامی کمپیوٹر ہے تو، پھر برا آدمی اور پھر نوشتہ وہ بچ گئے ہیں کہ کوکیز. اور کوکیز سیشن کے لئے تبدیل نہیں کرتے. پھر ہم شکار میں جانا ہے اور اس کے بعد ویب سائٹ میں لاگ ان کریں. کوکیز تبدیل نہیں کرتے ایک خاص سیشن کے لئے. اور پھر شکار میں لاگ تو ویب سائٹ اور چھوڑ دیتا ہے. اور پھر شخص واپس چلا جاتا ہے تو اب بھی ان سیشن ID استعمال کر سکتے ہیں ان کی معلومات تک رسائی حاصل کرنے. تو اس کی ایک مثال ہے کہ ہو سکتا ہے کہ کس طرح. اور پھر میں بہت زیادہ فکر نہیں کرے گا مخصوص کوڈ یا چیز کے بارے میں اس کا سبب بن سکتا ہے کہ اس طرح، لیکن خیال کسی قسم کا تعلق کیا اس میں شامل متغیر ہیں. اور پھر ہیڈر توڑ ڈیٹا حملے کی ایک قسم ہے داؤد کے بارے میں بات کی ہے ہے. اور یہ صرف سے مراد جب کیا ہو سکتا ہے جواب، HTTP ہمارے ہیڈر کے اندر جواب مناسب طریقے سے جراثیم سے پاک نہیں ہے. اور مثال کے طور پر fields-- کے کسی بھی، کسی ہیڈر میں سے ایک overwrites ہے تو اقدار کے مقابلے میں زیادہ کچھ پر مشتمل کیا وہ contain-- چاہئے اور اصل ، ایک 200 مثال کے طور پر، پر مشتمل ہے ٹھیک حیثیت کوڈ، وہ تو ممکنہ طور پر بدنیتی پر مبنی کر سکتے ہیں چیزیں وہ کرنے کی توقع نہیں کر رہے ہیں جب. لیکن میں بھی فکر نہیں کرے گا مخصوص کوڈ کے بارے میں زیادہ سے زیادہ کہ، اس کا سبب بن سکتا مفاہمت کی صرف ترتیب اس طرح اعلی سطحی چیزوں. میں نے یہ سب ہے ہم نے کا احاطہ کرنے کے لئے ہے. حیرت انگیز. کسی کسی پر کوئی سوال ہے ہم احاطہ کرتا ہے کہ چیزوں میں سے؟ جی ہاں. سامعین: تو ایک قسم کی زیادہ رسد سوال. مواد بنیادی طور پر مرکوز ہے کوئز 1 کے بعد چیزوں پر؟ MARIA ZLATKOVA تو سوال یہ ہے کہ مواد ہے کوئز 1 کے بعد چیزوں پر بنیادی طور پر توجہ مرکوز؟ تو توجہ کے بعد ہے رعایت کے ساتھ کوئز 1، ہم چیزوں پر توجہ مرکوز کرنے کی ضرورت ہے pset5 اور اعداد و شمار کے ڈھانچے کی ایک بہت ہم احاطہ کرتا ہے. اور ہم نہیں کہہ سکتے کہ ہم پہلے کسی چیز کو نظر انداز کر سکتے ہیں اس کے ساتھ ساتھ اس پر بناتا ہے اس کی وجہ سے. تو اس پر توجہ مرکوز، کے علاوہ pset5 مواد منسلک کی فہرست، پوٹ سمیت طرح، قطار، اور سب کچھ ہننا گئے کہ. ہننا BLUMBERG: دائیں. جی ہاں، ہم C کے تمام چیزیں گئے میں بہت بہت تیزی سے شروع. لیکن اس کا جائزہ لینے کے لئے یقینی بنائیں. واپس جاؤ اور کوئز 0 جائزہ دیکھتے ہیں. ایک جوڑے زیادہ رسد نوٹ، صرف جبکہ ہم آپ کی توجہ ہے. ہم دفتر کے اوقات کے لئے جا رہے ہیں دونوں پیر اور منگل کی رات پر. انہوں نے ایم ڈی 119 میں ہونے جا رہے ہیں. یہ اتنا، تمام ویب سائٹ پر ہے آپ اسے، کوئی تشویش نہیں سنتے تو. MARIA ZLATKOVA: 11:00 8:30. ہننا BLUMBERG: جی ہاں، 11:00 8:30. ہم وہاں ہو جائے گا. ہم سوالات کے جواب دینے سے ہو جائے گا. یہ بہت سرد اور مزہ ہے. تم لوگوں کو کسی بھی سوال پوچھ سکتے ہیں آپ کوئز 1 پر ہے کہ. اور کوئز 1 پر ہے بدھ، تو اچھی قسمت. آپ کو شاید، کوئی سوال ہے تو یہاں ایک پر ایک ہم سے بات آئے. ٹھنڈا. بہت شکریہ. MARIA ZLATKOVA: شکریہ اتنا، لوگوں. سامعین: موسم گرما. [تالیاں]