R.J. اکینو: صرف شروع ہو جاتے ہیں. تو اس کوئز 1 ہے. یہاں کچھ اعلی سطح کے بارے میں معلومات ہے. کوئز کے بارے میں یہ ہے یو آر ایل، اب کوئی CS50.net، اگرچہ کہ اب بھی کام کریں گے. یہ CS50.harvard.edu/quizzes/2013/1 ہے. یہ آپ کو بتا، صفحہ کے بارے میں بڑا ہے کب اور کہاں، یعنی اگلے بدھ کمرے کے ایک گروپ میں. اور اگلے بدھ کے روز کی طرف سے، میں اب سے دو دن کا مطلب ہے. یہ سب معلومات ہے. لیکن یہ مجموعی ہے. کی پہلی ششماہی سے تو سب کچھ سال کے، گئے تمام سوالات پر ممکنہ طور پر ہے آپ واقعی اعلی درجے نہیں کر سکتے کیونکہ سی چیزوں کے بغیر حالات اور اگر loops اور طرح کے. لیکن پر زور ہو جائے گا کوئز 0 کے بعد سے احاطہ کرتا مواد، structs اور فائل کے ساتھ شروع I / O. یہ عام طور پر زیادہ ہے کوئز 0 سے چیلنج. اوسط اسکور عام طور پر کم ہے. مشکل کا مطالعہ. آپ پڑھ رہے ہیں، استعمال کرنے کے لئے اس بات کا یقین CS50/discuss آپ کے سوالات پوسٹ کرنے کے لیے اور دوسرے لوگوں کے سوالات پڑھیں. تو آپ کا کوئی سوال نہیں ہے تو، میں لاگ ان کریں اور پڑھیں اپنے دوستوں کے سوالات. وہ شاید اچھے سوالات ہیں. اور مشق ہے quizzes لے. ہم quizzes کی دے دیا گیا ہے اب سات یا آٹھ سال. انہوں نے آن لائن سب ہیں. مستقبل کے سوالات کی طرح ہیں پرانے سوالات کے. کہ ہم ان کے بنانے کا طریقہ یہ ہے. کوئز ابھی تک موجود نہیں ہے. ہم میں سے کوئی اسے دیکھا ہے. لیکن اس طرح نظر آئے گا گزشتہ quizzes ہے. اس کا جائزہ لینے کے سیشن کے لئے، یہ نہیں ہے موضوعات کی ایک جامع فہرست. تم صرف اس کے بعد اس میں شرکت نہیں کر سکتے ہیں کوئز کے لئے بالکل تیار ہو جائے. دوسری صورت میں، یہ نہیں ہو گا ایک کوئز کی ہے کہ زیادہ سے زیادہ. اور یہ ضروری نہیں کہ میں بھی ہے آپ کسی کے بارے میں جاننے کی ضرورت ہے سب کچھ موضوع دیا. یہ چیزیں آپ کو بے نقاب کرنے کے لئے مراد ہے ہم احاطہ کرتا ہے، آپ کو یاد دلانے کیا ہم احاطہ کرتا ہے، اور راستے میں جس میں ہم نے اس کا احاطہ کرتا ہے. لیکن اگر آپ کو آگے جانے کے لئے ہے اور کرے گا گہری آپ کو دوبارہ چیک کرنے کے لئے مطالعہ جب آپ کسی بھی بارے میں سب کچھ جانتے ہیں کہ آپ میں بھر دیا ہے موضوع اور یہ کہ تھے کہ تمام کونوں لیکچر میں شامل کیا. کوئز نوٹ پر جانے کے لئے آپ کو بتا نمائندے نوٹ، واچ لیکچر کے ویڈیو. یقین ہے کہ آپ نے بنانے کے لئے ایک اچھا طریقہ ہے آپ کے تمام اڈوں کا احاطہ کرتا ہے. میں یہ کر دیا تو، شروع ہو رہی ہے سلائڈ، میں پایا جہاں ڈال کرنے کی کوشش کے بارے میں معلومات. تو فائل کے لئے میں / O، مثال کے طور پر، ہفتہ 7، پیر کے لیکچر، اور پوسٹ دفعہ 6 اور مسئلہ مقرر ہے فائل کے بارے میں معلومات میں / او میں نے کیا ہے ہر موضوع کے لئے. لہذا ان کے عنوان سلائڈ کر سکتے ہیں آپ کے لئے مددگار ثابت ہو. تو یہاں ہم فائل میں / او ہے میں یاد رکھیں، مسئلہ 5 سیٹ، ہم، میں fclose، fopen کی استعمال کیا جاتا ہے fwrite، fread، اور fseek. 30ish JPEGs کے برآمد اور بعد کے ساتھ تبدیل اور گڑبڑ ہے bitmaps کے، آپ کو بہت واقف ہونا چاہئے ان کے افعال کے ساتھ اور کس طرح وہ کام کرتے ہیں. اب آپ واقف ہیں، تو یقینی طور پر ان کا جائزہ لینے کے. اور آپ کو سمجھانے کی کیا مختلف دلائل ہیں، وہ استعمال کر رہے ہیں جب. لیکن عام فائل سے متعلق کیڑے آپ کے بارے میں کہا جا سکتا ہے - ٹھیک ہے، تم بھول گئے ہے تو چیک کرنے کے لیے اگر آپ کو جانے سے پہلے fopen کی اصل کام ایک فائل پر نظر ثانی. یہ برا ہو سکتا ہے. آپ کو ایک فائل میں fclose بھول ہے تو آپ fopened ہے، اس کی طرح ہے ایک میموری لیک. یہ بہت برا ہے. اور آپ کو کیا ہے تو چیک کرنے کے لیے بھول تم سے پہلے فائل کے آخر تک پہنچ گئی اس پر لکھنا شروع. آپ کا کہنا ہے اگر ایسا ہے تو، ارے، میں میں ہوں فائل کے آخر میں. مجھے 5 مزید بائٹس دے. ٹھیک ہے، یہ شاید نہیں ہے آپ کی توقع کے راستے باہر کام. یہی وجہ ہے کہ، فائل میں / O کے لئے بہت ہے ہم اس کے بہت کچھ کیا ہے کیونکہ مسئلہ سیٹ کے ساتھ. آپ سمجھ تو کیا جا رہا تھا مسئلہ سیٹ 5، bitmats یاد اور JPEGs کے، تو آپ شاید تمام ہو I / O. فائل کے لئے مقرر کہ تھوڑا سا ہے تو فجی، یقینی طور پر اس مسئلہ کا جائزہ لینے کے مقرر اور متعلقہ مواد. Structs پر تھے کہ موضوع تھے کوئز 0 اور 1 کوئز کے درمیان لائن. بہت کوئز 0 کٹ نہیں کیا. تو وہ یقینی طور پر ہو جائے گا 1 کوئز، ہفتہ 7، پیر. ایک struct کیا ہے؟ یہاں ہم ایک struct ظاہر. یہ ایک نئی قسم کی طرح ہے. یہ ایک کنٹینر کی طرح ہے ایک سے زیادہ شعبوں کے لئے. اس صورت میں، ہم نے ایک struct اعلان کیا ہے دو شعبوں ہے کہ طالب علم - ہم بلا رہے ہیں کہ ایک تار کا نام اور ہم عمر بلا رہے ہیں کہ ایک int. تو میں نے طالب علموں کے ارد گرد منتقل یا میں جب طالب علموں پر نظر ثانی، میں کرنے کے قابل ہو جائے گا ان کے نام اور ان کی عمر تک رسائی حاصل. کی اس کے لئے کچھ کوڈ دیکھو. یہاں ہم نے اعلان کیا ہے کہ کو دیکھنے کے ایک طالب علم کی، طرح میں کسی بھی متغیر کا اعلان - INT ایکس، INT Y، وغیرہ. یہاں طالب علم کی ہے. انہوں نے ان شعبوں میں کچھ نہیں کے ساتھ شروع ہوتا ہے. تو ان کے قائم کرتے ہیں. آپ نقطہ کے ساتھ ایک struct کے شعبوں مقرر. تو میں یہاں کہ s.name = آرجی کہا ہے. اور = 21 s.age. تم نے بھی شعبوں کو اپ ڈیٹ کر سکتے ہیں، آپ کو اپ ڈیٹ کروں گا اسی طرح ایک متغیر کی قدر. تو میں نے ساتھ آرجی سے نام تبدیل کرنا چاہتے ہیں R.J. کرنے کے لئے کوئی ادوار ہجے صحیح طریقہ. یہ = آرجی، اسی s.name جائے گا ہم اصل میں اس نے کہا کہ کے طور پر. اور پھر آپ ان تک رسائی حاصل کر سکتے ہیں. تو ہم نے ان پر مقرر کیا ہے. ہم نے ان کو اپ ڈیٹ کیا ہے. تم نے بھی ان تک رسائی حاصل کر سکتے ہیں اسی طرح میں. تو یہاں، میں باہر چھپائی رہا ہوں R.J. 21 سال پرانی ہے. اور میں ان اقدار تک رسائی حاصل کر رہا ہوں s.name اور s.age کے ساتھ. تو وہ structs تک رسائی حاصل ہے ڈاٹ سنکیتن کے ساتھ. جی ہاں، سوال ہے؟ سامعین: پر ایک وجہ ہے آپ کو پیش نہیں کیا کہ گزشتہ سلائڈ typedef طرح سب سے اوپر لائن، طالب علم تو struct کے طالب علم اور آخر میں طالب علم؟ R.J. اکینو: تو سوال پر، تھا اس سلائڈ، ہم عام طور پر دیکھا ہے تو struct نوڈ typedef اور struct کے کھیتوں اور پھر لفظ نوڈ. اور یہاں آئے کس طرح میں، typedef نہیں کہا تو struct کے طالب علم اور struct کی اور اس کے بعد طالب علم کے شعبوں؟ وجہ سے میں کرنے کی ضرورت نہیں ہے struct کے اندر تک رسائی حاصل. تو یہ ایک نام کے بغیر اسے چھوڑنے کے لئے ٹھیک ہے. میں نے صرف کے طور پر اسے چھوڑ کر سکتے ہیں ایک گمنام struct. ہم منسلک کی فہرست کے لئے کرتے ہیں اور وجہ اندر آپ کی ضرورت کی وجہ سے چیزوں پر ہے ایک struct نوڈ سٹار حوالہ. تو struct ایک نام کرنے کی ضرورت ہے، تو آپ کے بعد اس تک رسائی حاصل کر سکتے ہیں. یہ ایک چھوٹی سی تفصیل ہے. لیکن اگر آپ عام طور پر typedef struct کے دیکھیں گے گھوبگھرالی منحنی خطوط وحدانی کی آپ کو ضرورت نہیں ہے تو نام اور typedef struct کے کچھ نام گھوبگھرالی منحنی خطوط وحدانی کے بعد اگر آپ نام کی ضرورت ہے. تو یہ ایک اچھا سوال ہے. اور اس نقطہ پر، ہم نظر ثانی کرنے کے لئے ہوتے ہیں structs اور کی طرف سے structs کے ارد گرد منتقل نہ قیمت کی طرف سے، حوالہ. تو ہم صرف اشارہ کے ارد گرد گزر جائیں گے structs کے بجائے ارد گرد گزر خود structs. تو آپ کو بہت کثرت سے جا رہے ہیں کا استعمال کرتے ہوئے، اس معاملے میں، طالب علم * یا struct نوڈ * یا نوڈ * بجائے طالب علموں یا نوڈس باہر. تو یہاں، میں نے کہا ہے، ٹھیک ہے، متغیر PTR ے کا پتہ ہونے جا رہا ہے. یہ پوائنٹر ہونے جا رہا ہے طالب علم R.J. پر تو ہم نے ان شعبوں میں حاصل کر سکتے ہیں ہم کچھ حاصل کرنے کے طور پر ایک ہی. سب سے پہلے، شناختی پوائنٹر حوالہ struct کے حاصل کرنے کے لئے. یہ تو * PTR ہے اور ایک نقطہ اور پھر عمر. تو میدان تک رسائی حاصل کرنے، اور میں اپ ڈیٹ کیا ہے اب یہ 22، کیونکہ، چلو کا کہنا ہے کہ، یہ میری سالگرہ تھی. ایک شارٹ کٹ نحو ہے یہاں تیر کا استعمال کرتے ہوئے. تو PTR تیر عمر صرف ہے * ptr.age طور پر ایک ہی. اب، کہ آپ کو پڑے گا کچھ ہے حفظ اور یاد کرنے کے لئے. آپ اس pset6 میں ایک بہت استعمال کیا جاتا ہے ہجے کنندہ pset کے. لیکن یہ کیا ہو رہا ہے اصل میں ہے ہڈ کے نیچے. یہ پوائنٹر محولہ لقب ضبطی ہے اور پھر اس تک رسائی حاصل. سوال؟ سامعین: [اشراوی]. R.J. اکینو: تو ہم کیوں استعمال کر رہے ہیں بجائے structs کے طور پر اشارہ خود structs؟ آپ گزر رہے ہیں کی وجہ سے ہو جائے گا ایک تقریب میں ایک struct، آپ شاید صرف 4 یا اس کے ارد گرد منتقل کرنے کے لئے چاہتے ہیں، پوائنٹر کی نمائندگی کرتے ہیں بائٹس، کے طور پر ممکنہ طور پر 30 یا اس کی مخالفت struct کی ہیں کہ 40 بائٹس. تو ایک تقریب کے لئے کچھ گزر آسان ہے جب بات مختصر میں چھوٹا ہے. سوال؟ سامعین: آپ کو اس کا ذکر کیا ہے ہو سکتا ہے شروع میں، لیکن وہاں ہیں [اشراوی] پر دیگر سلائڈ ہے؟ R.J. اکینو: یہ سلائڈ ہو جائے گا جائزہ لینے کے سیشن کے بعد. ہم ویب سائٹ پر ان پوسٹ کریں گے. تو پر منتقل اور تھوڑا سا پر منتقل تیزی سے، ہم اعداد و شمار کے بارے میں بات کرنے جا رہے ہیں ڈھانچے. ایک بہت ہیں. ہم نے ان میں سے ایک گروپ کا احاطہ کرتا ہے. یہاں آپ کو سمجھنا چاہئے کیا ہے اعداد و شمار کے ڈھانچے کے بارے میں. تم نے واقعی ایک اعلی میں سمجھنا چاہئے ہر ایک ساخت ہے کس سطح. آپ کو انگریزی میں وضاحت کر سکتے ہیں آپ CS50 نہیں لیا ہے اس دوست کے لئے کس طرح ہم ہمارے اعداد و شمار کو منظم کر رہے ہیں اور کیوں کہ ہم اس طرح میں کچھ کا استعمال کرتے ہوئے؟ بات یہ ہے کہ ایک ہے. بات دو، سمجھ عمل. تو ان چیزوں کو استعمال کرنے کے لئے کس طرح سمجھ سی میں اور ہم اس پر جا رہا ہوں. اور پھر بات یہ ہے کہ تین معلوم ہے کیا جائے گا چلانے کے اوقات اور کی حدود آپ استعمال کر رہے ہیں مختلف ڈھانچے. آپ استعمال کرتے ہیں کیوں تو سمجھ ایک اس کی بجائے ایک صف کی میز ہیش. سمجھیں کتنی تیزی سے، عام طور پر، ایک ہیش میز تک رسائی حاصل ہے. آپریشن تیزی سے پر ہیں، سمجھ لنک کی فہرست لیکن arrays کے پر سست اور اس کے برعکس. تو اس کو سمجھنے کے لئے، آپ کو کرنا پڑے گا صرف جاننا بگ O-سنکیتن سمجھ ان کے بارے میں بات کرنے کے لئے کس طرح چیزوں کی قسم. اور ہم نے اس کے بارے میں بات کریں گے. تو پہلی بات یہ ہے، فہرست منسلک. یہاں ایک اعلی سطحی تصویر ہے ایک لنک کی فہرست کی. ہم کلاس میں اس کو ظاہر. ہم عام طور پر 10 لوگوں کو ہے اسٹیج پر کھڑے. لیکن ہم مراکز کی ایک سیریز ہے جہاں ہر نوڈ کچھ قدر اور ایک پوائنٹر ہے اس کے اگلے قیمت پر. تو آپ کو، اگلے کرنے کے لئے ایک نوڈ سے حاصل کرنے کے لئے صرف میرے اگلے نوڈ دے، کا کہنا ہے کہ. آپ اس نوڈ. مجھے اگلے نوڈ دے. آپ اس نوڈ. تو میرے اگلے نوڈ دے دو اور کوئی نوڈ بائیں ہے جب تک. تو کے بارے میں بات کرنے کے لئے جاری ایک اعلی سطح پر. یہ چیزیں شامل کرنے کے لئے بہت آسان ہے ایک لنک کی فہرست میں. آپ کے حکم کی پرواہ نہیں کرتے ہیں تو، آپ کو صرف یہ چھوڑ کر سکتے ہیں حق شروع میں. یہ مسلسل وقت ہے. لیکن یہ ایک قیمت تلاش کرنے کے لئے مشکل ہے. تم سے پوچھنا کرنے کی کوشش کر رہے ہیں، میری فہرست میں سات ہے؟ آپ کے ذریعے جانا ہے ہر ایک کی قیمت. اس سات ہے؟ اس سات ہے؟ اس سات ہے؟ اس سات ہے؟ سے زیادہ بار بار. اور یہ کہ اے (ن) ہے. تو کوئز کے لئے تعلیم حاصل کرتے ہیں، arrays کے ساتھ اس کا موازنہ. یہ ٹھیک ہے؟ روشنی دھیما گئے. ٹھیک ہے. جب ایک لنک کی فہرست بہتر ہے؟ جب ایک صف بہتر ہے؟ تو کچھ کوڈ کو دیکھو. یہاں ایک ممکنہ نوڈ ہے. یہ ایک struct ہے. یہ، ایک int ن ہے جس ہماری قیمت ہو جائے گا. اور یہ اگلے ایک struct نوڈ * ہے جو اگلے نوڈ ہماری پوائنٹر ہے. تو یہاں، ہم نے جو کچھ بھی ہوا دیکھ سکتے ہیں ہمارے نوڈ میں ایک int ڈال دیا ہے. لیکن یہ چار کی ایک لنک کی فہرست اگر ستاروں یا floats کی ایک لنک کی فہرست، ہم مکمل طور پر بھی کر سکتے ہیں. pset6 میں یاد رکھیں، آپ کو شاید ایک تھا صرف چار ستارے یا لنک کی فہرست مستحکم چار arrays کے. کی ایک کارروائی میں یہاں دیکھو. تو ہم ایک نئی داخل کرنا چاہتے ہیں ن ہمارے منسلک فہرست میں. ہم ہے کہ ایک سر پوائنٹر کے ساتھ باہر شروع ہے کہ اس نوڈ پوائنٹر (ن) کی قدر اور ایک پوائنٹر کے اگلے ہے اس نوڈ پوائنٹس کی ایک قیمت ہے ن اور شہوت انگیز null کا اگلا، کیونکہ یہ آخری نوڈ ہے. تو وقت کے مفاد میں، میں کروں گا سکرین پر تمام کوڈ ڈال دیا. اور ہم نے اس کے ذریعے چل گے ایک وقت میں ایک چند لائنوں. تو یہاں کوڈ ہے. میں نے اس کے پڑھنے کے قابل ہے امید ہے. ہم ایسا کرتے ہیں سب سے پہلی چیز ہے ہم ایک نیا نوڈ malloc کی. تو یہ ایک نیا نوڈ پوائنٹر کرتا ہے بہت کچھ مقرر نہیں ہے ابھی تک اس میں. ہم اس بات کو یقینی بنانے کے لئے چیک کریں نیا نوڈ، شہوت انگیز null نہیں ہے. دوسری صورت میں، ہم دینے کے لئے ہے. تو اس کی جانچ پڑتال کی ہے، اب ہم نوڈ میں اقدار قائم. تو ہم اپنے ن میدان میں نئے ن ڈال دیا. اور ہم نے کی طرف اشارہ کرنے کے لئے اگلے پوائنٹر مقرر اصل سر، ہم کر سکتے ہیں تاکہ اب اس ڈالا ہے ہماری فہرست میں نوڈ. آخر میں، ہم عالمی سربراہ نقطہ ہے ہمارے نئے نوڈ، تاکہ ہم تھے سر میں شروع، ہم اس میں ہو گا نیا پہلے نوڈ کے بجائے پرانے پہلے نوڈ. اور اس تقریب کے راستے جب، متغیر نیا نوڈ اب نہیں، موجود ہے اس تقریب میں مقامی ہونے کی وجہ سے. تو اس دنیا کی ریاست ہے. ہمارے عالمی سربراہ ہمارے نئے پوائنٹس پوائنٹس جو پہلے نوڈ، ہمارے اصل پہلے نوڈ، جس کے پوائنٹس اس کے بعد نوڈ. اس اندراج تھا. میں نے اس کے نسبتا تھا امید پیروی کرنے کے لئے براہ راست. شک میں، ایک تصویر کو اپنی طرف متوجہ ہے. تو میں نے کے بارے میں بات ہے کہ تلاش منسلک کی فہرست اور میں تلاش کوڈ کو بہت مددگار نہیں ہے. ایک لنک کی تصویر میں دیکھ جبکہ فہرست اوہ، مجھے سوچنے کے لئے کی اجازت دیتا ہے، تو میں یہاں اس نوڈ ہے. لیکن میں اس پوائنٹر کو اپ ڈیٹ اگر، یہ منقطع ختم ہو جاتی ہے. اور میں بھول گیا ہوں جہاں نوڈ جاتا ہے. اور کوڈ راستے. اور آپ ایک سے زیادہ نوڈس ہے کہ رابطہ منقطع ہوگیا ہے. اور آپ کے ساتھ ختم نہیں کرتے آپ چاہتے ہیں کی فہرست. تو آپ تصویر کو اپنی طرف متوجہ ہے اور یہ کرتے ہیں قدم بہ قدم، امید ہے کہ، آپ کو نظر آئے گا کی شرائط میں چیزوں کی صحیح ترتیب اس بات کا یقین کرنے کے لئے اشارہ اپ ڈیٹ فہرست ایک دوسرے کے ساتھ آتا ہے. داخل نسبتا براہ راست ہے. ایک زیادہ پیچیدہ ایک ہو گا ایک کے مطابق کی فہرست میں اندراج. ایک زیادہ پیچیدہ تقریب خارج ہے اور، لہذا کے لئے ایک فہرست کے ذریعے تلاش وہاں کچھ ہے تو دیکھ. شاید آپ pset6 میں نے یہ کیا جب آپ آپ ہیش ٹیبل میں ہے اور تم نے کہا، ٹھیک ہے، لفظ سیب ہے میری منسلک فہرست میں؟ تو آپ نے پہلے ہی یہ کیا ہے ہو سکتا ہے. لیکن یقینی طور پر، آپ کی میموری کو ریفریش اور تلاش reimplement کرنے کی کوشش کریں اور ایک لنک کی فہرست کے لئے خارج reimplement. تفریح ​​طرف نوٹ، بھی دوگنا سے منسلک آپ کو جہاں کی فہرست، دونوں آگے اور اشارہ ہے کہ اشارہ آپ کے لئے جا سکتے ہیں، تاکہ پسماندہ اگلے نوڈ اور گزشتہ نوڈ. اور گزشتہ سال کے ایک سوال تھا اس قسم کے کوئز، بات کر کے بارے میں فہرستوں دوگنا سے منسلک. اب، کہ آپ ہیں کہ ایک ڈھانچہ ہے نسبتا واقف کے ساتھ، کیونکہ سب سے زیادہ تم میں سے شاید pset6 پر ان کا استعمال کیا. یہاں تھوڑا سا کم واقف ہے کہ ایک ہے. ایک طرف نوٹ کے طور پر، میں 1 کوئز لگتا ہے کہ بنیادی طور پر کوئز 0 سے مشکل، کیونکہ آپ، کر رہے ہیں چیزیں کے طور پر زیادہ نہیں کیا ہے. کہ ایک اور طریقہ ڈال کرنے کے لئے، کوئز 0، آپ سی کی ایک بہت کچھ لکھا گیا ہے اور تھا ہم سی کے بارے میں آپ سے پوچھا کوئز کے لئے 1، کے بارے میں ہم آپ سے پوچھنا جا رہے ہیں پی ایچ پی اور جاوا سکرپٹ، جس سے آپ کی زیادہ سے زیادہ کے طور پر لکھا نہیں ہے. ہم سی کوڈ کے بارے میں تم سے پوچھنا جا رہے ہیں آپ کو، کے طور پر بہت کچھ لکھا نہیں ہے اس اعلی درجے کی سی چیزیں. تو یقینی طور پر، چیزیں ہم عمل درس میں کے بارے میں بات ہے کہ آپ ضروری نہیں کیا مسئلہ سیٹ. جس کے خطاب کرتے ہوئے، آپ کو نہیں لکھا ہے ایک مسئلہ پر ایک اسٹیک مقرر. لیکن یہ لیکچر میں تھا. یہاں کے اعلی سطح کے تصویر ہے ہم ہر سال ظاہر ہے کہ پوٹ. اس میں ٹرے کے اسٹیک ہے Mather ڈائننگ ہال. ایک اعلی سطح پر، پوٹ آخری ہیں سب سے پہلے باہر کے اعداد و شمار کے ڈھانچے، میں. یہ ہے کہ آپ جا رہے ہیں کا مطلب ہے کہ میں چیزیں ڈال کرنے کے لئے - 1، 3، 7، 12، 14، منفی 0. میں نہیں کر سکتے ایک بات نے کہا کہ - 3، 0 منفی. اپ لاگ ان تمام چیزوں کو ڈال اور تم میں ڈال دیا گزشتہ ایک سب سے پہلے ہے باہر آ جا رہا ہے کہ ایک. تو آپ کو دو آپریشن ہے - دھکا اور پاپ. میں تھا کہ میں ڈال کے تمام اس طرح اشارہ دھکا ہیں. اور پھر میں نے قبضہ کرنے میں تک پہنچنے کے جب کچھ نہ کچھ پر قبضہ کرنے کے سب سے اوپر پر تک پہنچنے کچھ، کہ پاپ. تو ہم stacks کے لاگو کرنے کے لئے جا رہے ہیں. اور ہم درس میں ان سے ظاہر ہوتا ہے arrays کے کا استعمال کرتے ہوئے. لیکن اگر آپ ان سے کیا کر سکتے ہیں منسلک کی فہرست کا استعمال کرتے ہوئے. ایک اسٹیک ایک تصوراتی ڈیٹا ہے ساخت، ایک کو پسند نہیں عمل درآمد کے مخصوص ایک. تو کیا اس طرح نظر آئے گا؟ یہ قسم کی اس طرح نظر آئے گا. آپ کو ایک عددی سائز پڑے گا. اور تم اقدار کی ایک صف ہے تھا کہ ہے کیونکہ ہم، ٹرے بلا رہے ہیں تصویر کے لئے کیا تھا ہم - ٹرے int میں - اور پھر کچھ زیادہ سے زیادہ صلاحیت. تو کس طرح کے کو دھکا گے؟ ہم ایک اسٹیک کے ہے تو ٹھیک ہے،، اس کے بعد دھکا ے پر کچھ، ہم ملے گا ے کے سائز. اور یہ کہ اگلے ہو جائے گا ہمارے صف کے کھلی جگہ. تو ہم اپنے اسٹیک میں تین چیزوں ہے تو، پھر ٹرے 3 اگلا ہو گا کھلی جگہ، کیونکہ 0، 1، اور 2 پہلے ہی بھر رہے ہیں. تو ہم میں قیمت ڈال s.trays [اگر s.size]، تیسرے مقام پر. اور پھر ہم، اگر s.size کہنا اضافہ ارے، ہم نے پہلے تین چیزیں تھی. اب، ہم نے چار ہے. تو آپ کو دھکا اگلی بار، تم ہو 4 میں کچھ ڈال دیا جا رہا. یا اگر آپ POP اگلی بار، آپ جا رہے ہیں 3 کے بجائے 4 یا جو کچھ بھی دیکھنے کے لئے. اور پھر ہم سچ واپس آ جائیں گے کا کہنا ہے کہ، ارے، ہم کامیاب. یہ کام کیا. انگوٹھے کی ایک اصول کے طور پر، اگر ایک تقریب ہے کہ سچ واپس یا کرنے کی توقع باطل ہمیشہ آپ کر سکتے ہیں، صحیح واپس کچھ غلط کیا ہے. تو اس کا کام کرتا ہے؟ ٹھیک ہے، یہ 1 کے لئے ٹھیک کام کرتا ہے، اور 2، اور 3، اور 4، اور پانچ. لیکن میں اپنی صلاحیت تک پہنچنے کا کہنا ہے کہ. پھر میں نے ایک مسئلہ میں چلاتے ہیں، کیونکہ ہے سائز کی صلاحیت کے طور پر ایک ہی ہے، میں ہوں اب ایک میں کچھ ڈالنے کی کوشش کر میں جگہ نہیں ہے جہاں صف. تو ایک مختصر چیک اس کو ٹھیک کرنے کے لئے. اگر s.size == صلاحیت تو، جھوٹے واپس. دوسری صورت میں، جاؤ اور ہم نے کیا کرنا ہے. تو ہم اور کیا پوچھ سکتے ہیں stacks کے لئے کے بارے میں؟ آپ اور کیا مطالعہ کرنا چاہئے؟ آپ اور کیا عمل کرنا چاہئے؟ ٹھیک ہے، پوپ کو لاگو. ہم نے پہلے ہی دھکا کیوں دیا. میں اسے ٹھیک کر دیں گے. ایک غیر سرنی پر عمل درآمد، جہاں آپ شاید، ایک لنک کی فہرست کا استعمال کرتے ہیں. ایک غیر INT عمل. ہم یہاں ints کے کیا. لیکن یہ floats ہو سکتا ہے. میں نے ڈور ہو سکتا ہے. یہ چار ستارے ہو سکتا ہے. قسم کے لئے ماضی quizzes ہے دیکھو ہم stacks کے بارے میں پوچھا ہے سوال. میں ہم کے ارد گرد پوٹ احاطہ کرتا ہے کہیں گے ہم میں ان کے احاطہ کرتا ہے کے طور پر اسی گزشتہ سال. تو کوئز سوال کرنا چاہئے ایک اچھا اشارہ ہو. بھی تیز آگے بڑھنے، قطار. وہ پوٹ کی طرح ہو. لیکن وہ سب سے پہلے باہر، میں سب سے پہلے ہیں. آپ کو برطانوی ہیں، لفظ قطار شاید آپ کو احساس کی ایک بہت بنا دیا. دوسری صورت میں، آپ کر سکتے ہیں ایک لائن کے طور پر اس کے بارے میں سنا. وہ لائن کی طرح کام ایپل سٹور پر. 3:00 میں ظاہر کرنے کے لئے سب سے پہلے شخص صبح میں سب سے پہلے ہے اس کے رکن کو خریدنے کے لئے شخص. تو ہم دو آپریشن ہے - enqueue اور dequeue. Enqueue لائن میں کسی رکھتا ہے. Dequeue پہلے ھیںچتی آف لائن شخص. ایک بار پھر، ہم عملدرآمد کر سکتے ہیں ایک صف کے ساتھ اس. تو struct ہم کیا ہے لیکچر میں ظاہر ہوتا ہے؟ اس میں سے ایک تھا. ایک بار پھر، کی تعداد. ایک بار پھر، سائز اور اس نئی بات سامنے. کیوں سامنے کہا جاتا کچھ ہے؟ یہ اگلا انڈیکس ہے dequeue کرنا عنصر. یہ صرف اندرونی ٹریک کے رکھنے کے ہے ظاہر کرنے کے لئے سب سے پہلے آدمی کو، تو ہے کہ ہم ہم کرنے کی ضرورت ہے جب اسے باہر ھیںچو کر سکتے ہیں. یقینی طور پر لیکچر نوٹ پر نظر ڈالیں اور کرنے کی کوشش کریں enqueue اور dequeue لاگو کرنے کے لئے کوئز کے لئے مطالعہ. کے بارے میں سوچنا اہم باتیں. کے ارد گرد ریپنگ تو سامنے کے علاوہ سائز کی صلاحیت سے بھی بڑا ختم ہو جاتی ہے. ایک بار پھر، آپ کا ڈھانچہ مکمل ہے، آپ کو کوئی مسئلہ ہے کرنے کے لئے جا رہے ہیں. تم سے پہلے دیکھا ہے میزیں ہیش. تم میں سے سب سے زیادہ شاید لاگو ان pset6 پر. یہ اے کے لئے مقصد ہے کہ ایک ساخت ہے (1) مسلسل وقت اندراج اور اے (1) مسلسل وقت تلاش. CS50 میں، ہم کے طور پر اس پر عمل درآمد لنک کی فہرست کے ایک صف. ایک ہیش میز پر اہم جزو ہیش فنکشن ہے. تو یہ، کا کہنا ہے کہ، آپ ان پٹ بدلتا ہے ایک بڑی تعداد میں ایک ڈکشنری لفظ،، ہماری انڈیکس جا رہا ہے جس میں. اور ہم اس انڈیکس کا استعمال کریں گے اپنے صف میں. تو یہاں ایک پیاری سی تصویر ہے study.50.net سے. ہم تمام الفاظ میں پھینک ہماری ہیش تقریب. اور ہیش تقریب ہمیں بتاتا ہے جہاں ان الفاظ ڈال. اس ملک میں تمام عظیم ہے جہاں ہر عہدے کے لئے صرف ایک ہی لفظ ہے. لیکن آپ pset6 سے یاد کے طور پر، وہاں سلاٹ سے زیادہ الفاظ ہیں. جب آپ تو کیا ہوتا ہے ایک تصادم حاصل؟ اس کی بجائے میں ایک قدر ذخیرہ کرنے کی، آپ،، ہیش میز 3 کہتے ہیں ایک لنک کی فہرست سٹور. اور اس کے بجائے cantaloupe ہونے کے یہاں، آپ کو ایک لنک کی فہرست ہوگا، پہلے نوڈ cantaloupe ہے جہاں. اور اگلے نوڈ بلی ہے. اور تیسرے نوڈ چلو، تصادم ہے ان سب باتوں شروع کرنے کی وجہ، کا کہنا ہے کہ سی کے ساتھ تو آپ کے سب سے زیادہ pset6 کے لئے اس نے. آپ pset6 پر ایک ہیش میز ایسا نہیں کیا تو اور آپ کی طرح کچھ کرنے کی کوشش کی ایک trie، یقینی طور پر ہیش میزیں کا جائزہ لینے کے. آپ کو یقینی طور، pset6 پر ایسا کیا تو ہیش میزیں کا جائزہ لینے کے. اور تم pset6 پر کیا تھا اور اس نے نہیں کیا تو بالکل ٹھیک ہیں اور آپ کو باہر کام یقینی طور پر، اس کے ساتھ مصیبت کی ایک بہت تھا ہیش میزیں کا جائزہ لینے کے. تو سبق واقعی ضرور ہے ہیش میزیں کا جائزہ لینے کے. کی کوشش کی آپ کی وسیع اقلیت باہر pset6 پر کی کوشش کرتا ہے. اعلی درجے کی تصویر. یہ کچھ اس طرح ہے، جہاں ہر نوڈ کے بچوں کی ایک سیٹ ہے، جہاں ہر بچے کو ایک خط کے مساوی ہے. اور ہر نوڈ بھی، کا کہنا ہے کہ ارے، میں نے ایک لفظ ہوں. تو اس مثال میں، لفظ میکسویل، آپ کو ایک مرد عمل تو ایکس ڈبلیو ای ایل ایل ہے اور یہ ایک اور کی پیروی. اور تم یہ علامت، ڈیلٹا، حاصل، جس ہم اس ایک لفظ ہے مطلب کی نشاندہی. تو میکسویل ایک لفظ ہے. یہ ڈیلٹا اشارہ بھر چیزوں الفاظ اور جس کے ہیں جو چیزیں نہیں ہیں. تو pset6 میں، کے اعداد و شمار ہم محفوظ کیا ہمارے مراکز کی کسی بھی تھا، کے ساتھ ساتھ "میں ہوں لفظ. "اور کوشش کرتا ہے کے بارے میں ٹھنڈی چیز وہ اندراج کا مظاہرہ ہے اے (ایک لفظ کی لمبائی) میں تلاش. تو میکسویل کے ذریعے حاصل کرنے کے لئے، یہ ہے M-A-X-W-E-L ایل. تو سات یا آٹھ - میں شمار نہیں کر سکتے ہیں - آخر میں حاصل کرنے کے لئے اقدامات اور چیزوں کو چیک. یہاں تو فوری عمل. روب ایک لنک کے ذریعے چلا گیا اس کے پوسٹ مارٹم میں فہرست. تو وہ باہر کی جانچ پڑتال. معذرت. اس کے پوسٹ مارٹم میں ایک trie کے ذریعے چلا گیا. تو وہ باہر کی جانچ پڑتال. لیکن اگر آپ بنیادی طور پر ہر نوڈ 27 ہے ہے اگلا نوڈس اور ایک اشارہ میں نے ایک لفظ ہوں بولین. کس طرح روب کی پوسٹ مارٹم چیک کریں یہ اصل میں لاگو کیا جاتا ہے. ہمارے حتمی ساخت، ہمارے درخت اور بائنری تلاش درخت. تو ان کو دیکھ کر، ان کے احاطہ کرتا ہے سب سے زیادہ حال ہی میں ہفتہ 8، پیر. ایک درخت آپ کے علاوہ، ایک trie کی طرح ہے ضروری 27 نوڈس میں نہیں ہے ہر نقطہ. اور آپ کو ہر اس کے اعداد و شمار نہیں ہے - ابیوینجک ہے کہ چاہے قدم راستہ کوئی فرق نہیں پڑتا. ایک trie، راستہ سب سے اوپر سے جبکہ نیچے، میکسویل، ہمارے لئے اہم تھا. لیکن ہر نوڈ ایک سے زیادہ ہے بچوں، شاید. ہم کچھ اور الفاظ ہے. درخت کی جڑ بہت سب سے اوپر ہے. اور ہم ہے کہ بہت bottommost کہنا کوئی ہے کہ نوڈس بچوں کے پتے ہیں. تو ایک trie کی طرح، ایک درخت ہے مراکز کی ایک ڈھانچہ. ہم جا رہے ہیں کہ درخت کی ایک عام قسم کے بارے میں بات کرنے کے لئے ایک بائنری درخت، کہاں ہے ہر نوڈ کے کوئی اولاد یا ہے ایک بچے یا دو بچوں. تو یہاں اس تصویر نہیں ہے ایک بائنری درخت، کیونکہ نوڈ 3 تین بچے ہیں. لیکن ہم ان لوگوں کو، اور باقی کو نظر انداز کر رہے تھے اس کا ایک بائنری درخت ہے اس کی وجہ جائیداد ہے کہ ہر نوڈ کا ثبوت صفر، ایک، دو یا دو بچے ہیں. تو ہم کس طرح کے کوڈ میں اس کا اظہار کر سکتا ہے؟ ہم ہر نوڈ ہے جہاں ایک نوڈ کر سکتے ہیں ایک اس کے اندر عددی، کے ساتھ ساتھ بائیں طرف کے درخت پر ایک پوائنٹر کے طور پر اور درخت پر ایک پوائنٹر حق، دو بچے تو. کس طرح اس مفید ہے؟ ٹھیک ہے، ہم کے بارے میں قوانین بنانے کے تو ہم کہاں نوڈس ڈال دیا، ہم تلاش تیزی سے کر سکتے ہیں. تو ایک بائنری تلاش کا تصور ہے درخت، جہاں تمام نوڈس بائیں subtree ایک چھوٹی قیمت ہے نوڈ سے ہم دیکھ رہے ہیں. اور صحیح subtree پر تمام نوڈس زیادہ سے زیادہ قیمت ہے جڑ نوڈ سے. اب، کہ الفاظ کی ایک بہت کی طرح لگتا ہے. میں ڈبل کے اندر ڈال دیا جا رہا ہوں کی قیمت درج کرنے اور آپ کو ایک تصویر دکھائیں. تو یہاں کی ایک مثال ہے ایک بائنری تلاش درخت. ہم 10 کے ساتھ شروع ہے کہ دیکھو. بائیں طرف کے لئے سب کچھ 10 اس سے چھوٹا ہے. اور سب کچھ درست کرنے اس سے بھی بڑا ہے. لیکن زیادہ تو اس سے، میں ہر نوڈ درخت اس کی خاصیت کا اظہار ہے. تو نوڈ 7 3 ہے بائیں سے دائیں اور 9. لہذا ان کے تمام 10 سے چھوٹے ہیں. لیکن صرف ان لوگوں کو دیکھ کر، 7 ہے 3 اس کے حق کو اس کے بائیں اور 9. اور اسی طرح حق پر، 15 14 ہے اس کے حق کو اس کے بائیں اور 50. تو وہاں پر تین مراکز، 15، 14، اور 50، میں بھی ایک درست بائنری درخت ہیں یا ایک درست بائنری تلاش درخت. اور وہ تمام 10 سے بھی بڑا ہو. تو وہ ہو جائے کرنے کی اجازت ہے وہاں حق پر. ایک سوال ہے؟ سامعین: آپ کس طرح نمٹنے کے لئے ہے جب آپ کو دو sevens ہے؟ R.J. اکینو: جی ہاں. تم کس طرح دو اقدار کے ساتھ نمٹنے ہے کہ ایک ہی ہیں؟ کچھ بائنری تلاش درخت کا کہنا ہے کہ آپ کو اس مقصد ہے، کیونکہ نقول کو نظر انداز صرف کا کہنا ہے کہ، میں نے دیکھا ہے اب تک ان چیزوں کو. آپ کہہ سکتے ہیں میں سے کچھ بائنری تلاش درخت نوڈ کے اندر ایک شمار ہے. دوسروں کا کہنا ہے کہ ہو سکتا ہے کے لئے سب کچھ بائیں سے کم یا برابر ہے. اور سب کچھ درست کرنے سے زیادہ ہے. یہ صرف پر منحصر ہے کیا مسئلہ کو حل کرنے کے کر رہے ہیں. آپ، مثال کے طور پر، ایک ڈکشنری میں تو نقول کے بارے میں پرواہ نہیں کرے گا. آپ انہیں باہر پھینک دیں گے. لیکن بعض دوسرے مسئلہ آپ کی دیکھ بھال کر سکتے ہیں. سامعین: یہ ممکن ہے 15 کے بائیں، کرنے کے لئے ایک 1 جس 10 سے بھی کم ہے؟ R.J. اکینو: نمبر یہاں 14 1 تھے، یہ کریں گے ایک درست بائنری تلاش درخت نہیں، کیونکہ حق کے لئے سب کچھ 10 اس سے بڑا ہونا ہے. اور ہم کیوں نظر آئے گا. تلاش کی زمین میں میرا مقصد ہے 14 تلاش کرنے کے لئے، میں جڑ شروع. تو میں نظر آتے ہیں. ٹھیک ہے. ہم جڑ میں شروع کرنے جا رہے ہیں. 10 دیکھو. ٹھیک ہے، 14، ہمارا ہدف، 10 سے بڑا ہے. تو اس کا حق پر ہونا ضروری ہے. یہ پوری فون کی طرح ہے کتاب بات ہے کہ ہم، ثنائی کیا وہاں تلاش. لیکن اس کے بجائے بائنری تلاش کے ایک صف میں، ہم بائنری ہیں اس درخت میں تلاش. تو ہم اب بھی 14 کے لئے تلاش کر رہے ہیں. ٹھیک ہے، 14 15 سے چھوٹا ہے. یہ ہمارے درخت میں اگر ایسا ہے تو، یہ ضروری ہے یہاں اس علاقے میں ہو. یہ حق کے لئے ہونا ضروری ہے 10 اور 15 کے بائیں. اور اس طرح ہم اس نوڈ کی جانچ پڑتال. اور گرمیوں میں، ہم 14 مل گیا ہے. میں نے اس کے ذریعے چلنے کے لئے نہیں جا رہا ہوں. لیکن یہاں کے کوڈ ہے. یہ نسبتا اصل میں ہے براہ راست، اس پنراورتی ہے کیونکہ. ہم آپ کو ایک گئے تمام سوالات پر کیا پوچھ سکتے ہیں؟ ہم اس کوڈ کو لکھنے کے لئے آپ پوچھ سکتے ہیں. ہم اس کوڈ کو دیکھنے کے لئے آپ پوچھ سکتے ہیں اور اس کوڈ کو نظر ثانی کرنے اور وضاحت کیا یہ کر رہی ہے. جی ہاں. سوال؟ سامعین: یہ سلائڈ جا رہے ہیں وہ آخری وقت تھے کے طور پر دستیاب بنایا؟ R.J. اکینو: جی ہاں. تو یہ سلائڈ ضرور کروں گا پوسٹ کیا جائے. سامعین: وہ اصل میں پوسٹ کر رہے ہیں اب ویب سائٹ پر. ڈیوڈ صرف یہ ہے کہ. R.J. اکینو: سلائیڈیں ہیں اب ویب سائٹ پر. میں شاید ایک جوڑے کے رفو کریں گے typos کے میں نے نوٹ کیا ہے اور ان کو حل کرنے کے. لیکن ایک موجودہ ہے ویب سائٹ پر ورژن. دیگر ہم آپ پوچھ سکتے چیزیں - ڈالیں لکھنا. ایک تکراری ورژن لکھیں پنراورتی تقریب ہم صرف آپ سے ظاہر ہوتا ہے یا کی طرح، ان چیزوں کے بارے میں بات پیرا، الفاظ میں، جملوں میں. رن اوقات کا موازنہ اور وضاحت آپ کو ایک بائنری استعمال کرنا چاہتے ہیں کریں گے اس کی بجائے ایک کے لئے تلاش کے درخت مثال کے طور پر، میز ہیش. تو ان ڈھانچے کو سمجھنے ایک بہت گہری سطح پر. ان کے لکھنے کے لئے کس طرح سمجھنے، کس طرح کرنے کے لئے ان کے بارے میں بات کرنے کے لئے کس طرح، ان کا استعمال. اور آپ سب سیٹ ہو جائے گا. سوال؟ سامعین: آپ لکھ رہے ہیں جب بائنری تلاش درخت، کس طرح تم کرتے ہو کیا قیمت کا تعین جڑ کے طور پر بنانے کے؟ R.J. اکینو: تو سوال، کیا تھا قیمت آپ کو جڑ کے طور پر کر سکتا ہوں؟ آپ کو، آپ کے کوڈ پر منحصر ہے ایک عالمی جڑ کر سکتے ہیں. تو آپ کا امکان میں تھا ہو سکتا ہے pset6 ایک عالمی ہیش کی میز. یا اگر آپ کو جڑ کے پاس ہو سکتا ایک دلیل کے طور پر میں. یہاں تو یہ تلاش تقریب ایک دلیل ایک نوڈ * لیتا ہے. اور اس لئے تم ہو جو کچھ بھی نوڈ میں تلاش آپ کا علاج کر رہے ہیں میں سے ایک ہے آپ روٹ کے طور پر آپ کو اس کے اندر سے گزر جب اور میں تیار ہوں. وہ میری سلائڈ ہیں. اگلے شخص تبدیل ھو نے والے آ سکتے ہیں ایک لیپ ٹاپ اور مائک میں. روب Bowden: میں ہو سکتا ہے مختلف اس سوال کی تشریح. اگر آپ لیکن میں، کے طور پر اس کی تشریح ہم ایسا کس طرح کی تعداد 1، 2، اور 3، 2 جڑ کرنے کے لئے جانتے ہیں 1 یا 3 کی مخالفت؟ ہم جڑ 2 بنانے کے، تو یہ اچھی طرح سے ہے 1 اور 3 بائیں اور دائیں کرنے کے لئے. 1 جڑ ہے تو پھر اس پر 1 ہے سب سے اوپر، دائیں 2 حق، 3. تو ڈیفالٹ کی طرف سے، تم نہیں جانتے کیا جڑ کرنے کے لئے. اور کسی بھی الگورتھم کے لئے ہم توقع کر رہے ہیں ، صرف سب سے پہلی چیز آپ کو دے ڈالیں جڑ جائے گا. یا ہم آپ کے ایک بائنری درخت دے تھا کہ پہلے سے ہی ایک جڑ ہے کہ موجود ہے. لیکن دوسرے الگورتھم کہ اس طرح موجود ہے تاکہ جڑ، اپ ڈیٹ کرے گا اگر آپ کو یہ 1، 2 ہے جہاں صورت حال میں ختم، 3، یہ ​​خود کار طریقے کو اپ ڈیٹ کرے گا تاکہ، نئے جڑ بنائیں 2 یہ اب بھی اچھی طرح سے متوازن ہے. ANGELA LI: ڈاؤن لوڈ، اتارنا. ارے، لوگ. میں انجیلا ہوں. اور میں ہمارے C ختم کرنے جا رہا ہوں اور پھر ہماری ویب میں سے کچھ میں جاؤ ٹیکنالوجیز - HTTP، ایچ ٹی ایم ایل، سی ایس ایس اور. تو پہلی بات یہ بفر ہے اتپرواہ حملے. تو اس کوڈ میں ایک نظر ڈالیں. یہ بہت آسان ہے. ایک تقریب FOO ہے. اور یہ کچھ واپس نہیں کرتا ہے. لیکن یہ ایک پوائنٹر میں لیتا ہے ملاقات کی بار ایک تار. اور یہ اعلان کرنے کے لئے جا رہا ہے ایک کردار ہے جو بفر، 12 سلاٹ ہے اس صف. اور یہ صرف ایک ہے جو، memcpy کا استعمال کرتا ہے تقریب کہ ایک ایڈریس سے کاپیاں دوسرے میں. تو اس میں کاپی کرنے کے لئے کوشش کر رہی ہے جو کچھ بھی سے ہمارے بفر بار اشارہ کر رہا ہے. تو کسی بھی خیال کیا غلط ہے اس کوڈ سے؟ سامعین: بار سے زیادہ ہے تو سی، وہ ادلیکھت ہو جائے گا. ANGELA LI: جی ہاں، بالکل. ہم کوئی ضمانت نہیں ہے کہ بار 12 سے بھی کم کی جا رہی ہے. ہم صرف کچھ صوابدیدی تعداد 12 کر دیا. اور ہم امید کرتے ہیں، کی طرح تھے ہمارے صارف کی ان پٹ سے کم ہے 12 حروف طویل. تو ایک مثالی دنیا میں، تو ہمارے ان پٹ ہے امید کی جاتی ہے، ہمیشہ کی طرح، تو پھر ہم مل جائے گا ہیلو، کی طرح کچھ. یہ 12 حروف سے کم ہے. یہ چار C میں پڑھا جاتا ہے. اور پھر ہم اس کے ساتھ کچھ کرنا. یہ واقعی کوئی فرق نہیں پڑتا. لیکن ایک درنساوناپورن شخص کر سکتا ہے اس طرح کچھ، وہ کہاں ، بار اشارہ کر رہا ہے جو کچھ بھی ہمیں دے یہ بڑی سرنی کی طرف اشارہ کرنے جا رہا ہے صرف ایک کی. اور یہ 12 سے راستہ رہ گیا ہے. تو یہ تمام راستے جانے کے لئے جا رہا ہے یہاں نیچے جہاں واپسی ایڈریس کرنے کے لئے استعمال. تو اس تقریب کہتے ہیں FOO کو کہا جاتا ہے. شاید FOO کو کسی دوسرے کی طرف سے بلایا گیا تھا مرکزی کی طرف سے بلایا گیا تھا جس کی تقریب،. FOO کو چل رہا ہے تو جب اس کی ضرورت جہاں پر واپس کرنے کے لئے جاننا. FOO کو نامزد کیا کچھ تقریب کی طرف سے بلایا گیا تھا تو باز، یہ ہے کہ پتہ ہے واپس باز کرنے کے لئے جانا ہے. اور یہ کہ کیا اس کی واپسی کا پتہ ہے یہاں نیچے ہم سے کہہ رہا ہے. لیکن ہم نے کچھ دوسرے کے ساتھ ادلیکھت تو ایڈریس، اس معاملے میں، یہ ایک ہے میں ایڈریس کی نمائندگی بہت تو، اس بفر کا آغاز کیا اصل میں کیا ہونے جا رہا ہے بجائے واپس باز واپس لوٹنے کے، ہماری تقریب کہا جاتا ہے، جس میں یہ صرف ہے اس کوڈ کے سامنے جا. اور یہ نہیں تھا کیونکہ اگر ایک درنساوناپورن ہیکر دوست آئے اور اس انجکشن، تو شاید اس رقم کی ایک اصل میں ایک نہیں ہے. اور یہ اصل میں صرف کوڈ ہے کہ ٹوٹ جاتا ہے آپ کے کمپیوٹر یا کچھ اور. تو اس طرح کے متعلق دفاعی ہونا بات یہ ہے کہ، آپ کو اس فرض کبھی نہیں کرنے کے لئے ہے صارف کی ان پٹ کی ایک بات کا یقین ہے حروف کی رقم. مثال کے طور پر، جب آپ کیا کر رہے تھے ہجے کنندہ، آپ کے الفاظ تھے کہ کہا گیا تھا صرف 40 حروف ہو جا طویل زیادہ سے زیادہ. اور وہ اچھا تھا. لیکن اگر نہیں، تو آپ کو کرنا پڑے گا اس بات کا یقین صرف 45 میں پڑھنے کے لئے بنا ایک وقت میں حروف. دوسری صورت میں، آپ کو ادلیکھت ہو سکتا ہے آپ بفر. اس پر کوئی سوال. جی ہاں. سامعین: آپ صرف بات کر سکتے ہیں ان کے بارے میں ایک چھوٹا سا زیادہ؟ ANGELA LI: معذرت. جی ہاں. سامعین: مائک صرف ویڈیو کے لئے ہے. میں کوشش اور منصوبے گا. ہیلو، لڑکوں. سڑکنا؟ تو میں تھوڑے میں جانے آپ کو استعمال کرتے ہوئے کیا گیا ہے جس میں CS50 لائبریری، تمام سمسٹر، زیادہ تر صارف کی ان پٹ حاصل کرنے کے لئے. جیسا کہ آپ جانتے، آپ CS50 میں شامل ہیں صرف cs50.h، میں، کر لائبریری جس میں کے تمام prototypes کی پر مشتمل ہے جیسے آپ استعمال کر سکتے ہیں کہ کام کرتا ہے، GetString اور GetInt، اور GetFloat کو، وغیرہ. اور یہ ایک ہی لائن میں CS50 میں ہے ایک تار کی وضاحت کرتا ہے جس کے لائبریری، جس تم لوگ اب تک پتہ * صرف ایک چار ہے. لیکن میں ایک جھانکنا لے GetString کے کس طرح کام کرتا. یہ ایک بہت مختصر ورژن ہے. آپ کو CS50 لائبریری فائلوں ھیںچو کر سکتے ہیں manuals.CS50.net، مجھے لگتا ہے، کی طرف سے. اور آپ کے ذریعے پڑھ سکتے ہیں اصل تقریب. لیکن اس میں سے کچھ کا احاطہ کرتا ہے اہم حصوں. تو ہم کچھ بفر پیدا کیا ہے کچھ صلاحیت کے ساتھ. اور ہم کیا کرتے ہم ایک کردار حاصل ہے معیاری ن سے ایک وقت میں. کہ جہاں صارف آدانوں ہے کنسول میں متن. اور اس طرح ہم ایک میں پڑھنے کے لئے جا رہے ہیں یہ ایک نیا نہیں ہے جب تک کردار لائن اور یہ فائل کے آخر میں نہیں ہے جس معیاری ان پٹ کے آخر ہے. اور ہم میں پڑھا ہے کہ ہر کردار کے لئے، اس کردار کو انہوں نے مزید کہا ختم ہو جاتی ہے تو حروف کی تعداد کے لئے ہم نے پڑھا ہے ، میں اور یہ کہ ہماری صلاحیت سے زیادہ ہے پھر ہم کیا کریں ہم صرف سائز تبدیل کریں ہمارے بفر یہ دو مرتبہ جب تک ہے تاکہ. تو پھر، اس بفر کے خلاف کی حفاظت اتپرواہ حملوں، آپ کو میں پڑھا کیونکہ ایک وقت میں ایک کردار. اور کسی بھی موڑ پر تم بھی میں پڑھا تو بہت سے، آپ کو صرف آپ بفر توسیع. آپ کے پاس دو سے گنا. اور پھر آپ کو زیادہ کمرے. دوسری صورت میں، آپ کو صرف شامل بفر ایک کردار. اور آپ سب میں پڑھا ہے کے بعد حروف، اس بفر سکڑ جائے گا واپس عام سائز کے نیچے، ایک کو شامل شہوت انگیز null مختتم، اور پھر واپس. اب، میں GetInt کو دیکھو. تم لوگوں کو یہ پڑھ سکتے ہیں؟ میں نے تھوڑا سا میں زوم کر سکتے ہیں. میں کمپیوٹر پر کام کس طرح نہیں جانتے. کوئی بات نہیں. میں نے مناسب طریقے سے میں زوم نہیں کر سکتے ہیں. یہ واقعی بہت مشکل ہے. میں معافی چاہتا ہوں. چلو صرف اس کو دیکھو. تو کیا میں GetInt کرتا ہے یہ سب سے پہلے پڑھتا ہے GetString کے، کی طرف سے ایک تار میں جس ہم سے پہلے لاگو کیا ہے. اور اہم حصہ یہاں نوٹ کرنے کے لئے ہے تو یہ ختم ہو جاتی ہے کہ اس اشتراک پڑھنے نہیں اصل میں ایک تار کی طرح ہے، تو ہم صرف INT_MAX واپس ناکامی کی نمائندگی. ہم کیوں اس کی بجائے INT_MAX واپس کرتے ہیں منفی 1 یا 1 ہے؟ کوئی خیال ہے؟ سامعین: [اشراوی] منفی ایک پر 1. ANGELA LI: جی ہاں، بالکل. تو کیا تم صرف کرنا چاہتے ہیں طریقہ زیادہ ہونے کا امکان ہو 1 ان پٹ یا منفی 1 کرنے کے لئے کہا، جب ایک nth اور nth جو کچھ بھی maxes کے لئے. یہ بہت بڑا ہے. آپ کو شاید یہ استعمال کرنے کے لئے نہیں کر رہے ہیں. تو اس کے لئے ایک ڈیزائن کے فیصلے کی طرح ہے یقین ہے کہ آپ ایسا نہیں اتفاقی طور پر بنانے ایک غلطی واپس یا آپ کو واپس نہیں کرتے 1، جس میں تجزیہ کیا جا سکتا ہے ایک درست جواب کے طور پر. ایک لائن موجود نہیں ہے اگر ایسا ہے تو، ہم int-MAX واپس. دوسری صورت میں، ہم، sscanf کی استعمال جس scanf کی طرح ہے. لیکن یہ ایک تار سے پڑھتا ہے. اور ہم نے اس فارمیٹ کیا ٪ میں٪ C ہے جو سٹرنگ،. اور ہم کوشش کریں اور کے ساتھ اس سے ملنے کے صارف نے ہمیں دیا ہے جو کچھ بھی. ہم مماثل چیزوں کی تعداد چاہتے ہیں 1 ہو، جس کا مطلب ہے کہ ہم صرف واقعی ایک عدد صحیح سے ملنے کے لئے چاہتے ہیں، شاید سفید طرف سے گھیر لیا خلائی، شاید نہیں. اس صورت میں، آپ کو کچھ میں ڈال دیا تو بار کی طرح، بار، میں سب سے مماثل نہیں ہے ہونے کی ضرورت ہے کیونکہ آغاز میں ایک عددی. 0 دیا کبھی نہیں sscan. تو آپ کو اس کے واپس نہیں ہے. متبادل طور پر، آپ کو کچھ میں ڈال دیا تو جیسے 1، 2، 3، A، B، C، کہ میچ عددی بلکہ دونوں اس کے بعد کردار. تو sscanf کی، 2 واپس آ جائیں گے جس میں مثالی نہیں ہے. تجھے نہیں چاہتا 1، 2، 3، ایک، B، C، ایک درست INT ہو. تو یہ بھی کام نہیں کرتا. لیکن اگر آپ 50 کی طرح کچھ میں ڈال دیا ہے. جس کا مطلب ہے، مجھے سے مطابقت کرے گا یہ (ن) میں پڑھنے کو مل جائے گا. اور اب، ن 50 نمبر پر مشتمل ہوگا. اور پھر آپ اس کو واپس کر سکتے ہیں. دوسری صورت میں، آپ کو دوبارہ کوشش کریں مارا. اور پھر یہ صرف یہاں تک کہ ایک بار پھر چلا جاتا ہے آپ صارف کی طرف سے ایک مناسب ان پٹ حاصل. اس پر کوئی سوال؟ سامعین: تو اگر تم تھے باہر پرنٹ کرنے کے لئے [اشراوی] پر GetInt کی قیمت یہ صرف عددی اور زیادہ سے زیادہ ہو جائے گا؟ ANGELA LI: جی ہاں. آپ GetInt استعمال کرتے ہیں تو، آپ کو یہ فرض کرنا چاہئے آپ کو nth زیادہ سے زیادہ کرنا چاہتے ہیں نہیں ہے آپ جا رہے ہیں، ایک درست ان پٹ ہو وہ بری تھی کہ فرض. سامعین: کیا ہم چار C ہے اور نہیں کیا تو 1، 2، 3، سیم میں ڈال دیا کسی کو، یہ کریں گے اب بھی 1، 2، 3 کے لئے کام؟ ANGELA LI: میں نے یہ کام کریں گے لگتا ہے. لیکن آپ کو 123Sam نہیں چاہتے ایک صارف کی طرف سے ایک درست ان پٹ ہو. یہ واقعی ایک int نہیں ہے. تو یہ مناسب نہیں لگتا ایک int کے طور پر اس کا تجزیہ کرنے کے. ٹھیک ہے. اس صورت میں، چلو انٹرنیٹ پر. تو HTTP ایک زبان نہیں ہے. HTTP کے لئے معیارات کے صرف سیٹ ہے تم کس طرح گاہکوں سے چیزیں بھیجنے، کہ سرورز کے لئے، آپ ہے. ویب پر دوسرے لوگوں کی. تو HTTP ہایپر ٹیکسٹ کے لئے کھڑا ہے پروٹوکول کی منتقلی. یہ دل اور روح ہے پورے ویب کی. ہایپر ٹیکسٹ حصہ صرف ایچ ٹی ایم ایل سے مراد ہے. کی منتقلی کی طرح کلائنٹس ہے آپ کی درخواستوں کو بھیج دیں گے جوابات دے جو سرورز،. اور پروٹوکول کس طرح، صرف ہے اگر آپ کو ایک سرور برتاؤ کرنے کی توقع ہے؟ اور تم کس طرح برتاؤ کرنے کے لئے توقع کی جاتی ہے آپ اس کو کارگر بنانے کے کر سکتے ہیں ہے کہ اس طرح مواصلات کے عمل؟ تو HTTP درخواست اس طرح ایک بہت لگ رہی ہو. حاصل کریں درخواست کی قسم ہے. تم لوگوں کو حاصل درخواستوں دیکھا ہے اور درخواستوں کو پوسٹ. ہے کہ دوسری بات یہ ہے، / ME، ہے صرف URI یا جہاں آپ کا یو آر ایل میزبان کے اندر جانا چاہتے ہیں. تو اس کی درخواست کے لئے پوچھ رہا ہے www.facebook.com / میرے جیسے صفحہ،. اور یہ ایک حاصل کی درخواست ہے. اور پھر اس HTTP/1.1، یہ صرف ہے آپ استعمال کر رہے HTTP کے ورژن. یہ تقریبا ہمیشہ 1.1 ہے. اور پھر ایک گروپ ہے بھی دیگر چیزیں. اگر آپ اصل میں یہ دیکھ سکتے ہیں تم جب آپ کنسول کو کھولنے ویب براؤزنگ. جوابات کے کچھ نظر اس طرح. سب سے اوپر حصہ، پھر، ہے HTTP کی قسم آپ استعمال کر رہے ہیں ایک حیثیت کوڈ کی طرف سے کے بعد. تو 200 ٹھیک ہے سب کچھ باہر کام کیا ہے. یہاں آپ کے مواد ہے. آپ کے مواد کی پیروی کی جا رہی ہے. اور پھر یہ آپ کو بتائے گا کس طرح بھی مواد اور دیگر سامان کی. حیثیت کوڈ، چند ایک ہیں آپ کو معلوم ہونا چاہئے کہ اہم ہیں. 200 ٹھیک ہے سب کچھ سنہری طرح ہے. سب کچھ کام کرتا. 403 حرام. تم بھول گئے، تو آپ شاید دیکھا ہے یہ مناسب طریقے سے کچھ CHMOD پر. یہ آپ کی ضرورت نہیں ہے کا مطلب ہے کہ حق کی اجازت ہو سرور پر تک رسائی. اس کی طرح ہے، نہیں، آپ اسے دیکھ نہیں سکتے. 404 اس چیز موجود نہیں ہے کا مطلب ہے. نہیں ملا. تم شاید ایک بہت دیکھا ہے. 500 اندرونی سرور کی خرابی عام طور پر ہے کچھ کی طرف سے غلط ہو گیا جیسے سرور کی. تو آپ pset7 پر عمل درآمد کیا گیا تھا جب، آپ پی ایچ پی کی غلطیوں تھا، تو آپ کر سکتے ہیں اصل صفحے پر جائیں اور ایک دیکھ کر پی ایچ پی کی خرابی کی چیزیں پوری چڑھانے. لیکن یہ عام طور پر نہیں ہوتا، ویب سائٹس واقعی نہیں کرنا چاہتے کیونکہ ان کی سائٹ پر ٹوٹ جاتا ہے کیوں آپ کو بتا. وہ شاید صرف واپس آ جائیں گے ایک 500 اندرونی سرور کی خرابی. اور پھر میں نے ایک teapot کے ہوں 418 ہے. کے بارے میں ایک پوری کہانی ہے یہی وجہ ہے کہ ایک بات ہے. لیکن آپ کو اس کے بارے میں پڑھ سکتے ہیں اپنے اپنے وقت پر. ایک پوری چڑھانے کی ہے دوسرے کی حیثیت کوڈ. لیکن یہ ہیں آپ کو پتہ ہونا چاہئے. تو ایچ ٹی ایم ایل کے بارے میں بات. ایچ ٹی ایم ایل، یاد، ایک نہیں ہے پروگرامنگ زبان. یہ ایک مارکاپ زبان ہے. یہ مواد کی وضاحت کا مطلب ہے. یہ ایک HTML دستاویز لگتا ہے آپ کو بتاتا ہے اس طرح لگتا ہے کی طرح ہے یا نہیں لیکن یہ کس طرح کا ڈھانچہ ہے. تو یہ ایک ساخت کی وضاحت کرتا ہے اور ویب صفحات کے semantics کے. یہ ایک پیراگراف ہے، کی طرح ہے. یہ ایک حکم دیا فہرست ہے. یہ میری صفحے کے ایک حصے کی طرح ہے. یہاں عنوان ہے. یہ اس طرح کی چیزیں کرتا ہے. یہ، اس کے کسی بھی سٹائل نہیں ہے کہ اگر آپ سی ایس ایس میں کیا ہے. اور یہ ایک سیریز کی طرح لگتا ہے کے اندر در اندر ٹیگز. تو ایک بہت بنیادی کی ایک مثال کے استعمال کرنے کے لئے HTML پیج، آپ DOCTYPE ہے وہاں اعلان. یہ DOCTYPE اعلان ہے ہم HTML5 استعمال کر رہے ہیں، کہہ رہے ہیں. تو پھر تم بڑے HTML ٹیگ ہے. یہ ایک سر اور ایک جسم پر مشتمل ہے. سر کے اندر، آپ کو عنوان ہے. اس عنوان میں جاتا ہے کیا ہے اپنے براؤزر کے بار. ہم کہ لنکس ایک لنک ٹیگ ایک بیرونی سٹائل شیٹ میں. اور پھر ہم ھیںچتی ایک سکرپٹ ہے ایک بیرونی جاوا اسکرپٹ سے بھی. اور پھر ہمارے جسم کے اندر اصل میں ہے صفحے پر دکھایا جاتا ہے کیا. ہم نے ایک پیراگراف ہے اور پھر ایک ہے اس پیراگراف کے اندر کی تصویر. یہ ایک بلی کے بچوں کی ایک تصویر ہے. نوٹس کی اس تصویر ٹیگ خود کو بند کر دیتا ہے. تو بجائے ایک تصویر کے ساتھ کھولنے کے اور پھر آپ کو ایک اور / تصویری کر صرف اس چھوٹے سے سلیش ہے یہاں، جس سے یہ بند کر دیتا ہے. اور تصویر کے ٹیگ بھی اس چابی ہے قیمت وصف ALT کہا جاتا ہے. یہ متبادل متن ہے آپ کو اس پر ہوور جب ہوتا ہے. زیادہ تر HTML عناصر کچھ اہم قیمت آپ کو مختلف، دے سکتے ہیں کہ چیزیں حسب ضرورت. جی ہاں. سامعین: [اشراوی]. ANGELA LI: ٹھیک ہے، تو یہ ایک ہے ٹیگ کے وصف. آپ کے jQuery استعمال کر رہے ہیں اگر ایسا ہے تو، آپ کر سکتے منتخب image.getAttribute کرتے ہیں. اور پھر آپ کے لئے تلاش کر سکتے ہیں ALT وصف حاصل. اور یہ آپ کو بلی کے بچے کو دے گا. آپ کو HTML، ان پٹ میں فارم یاد ہے عناصر نام صفات پڑے گا. اور یہ کہ پی ایچ پی کو بھیجنے کے لئے استعمال کرتا ہے ایک شکل پیش کیا جاتا ہے جب درخواستوں. سامعین: تم سے کچھ کا ذکر کیا آپ kittens.jpg استعمال کرتے ہیں یا کس طرح کے بارے میں لاپتہ ہے کہ کچھ فولڈرز یا دیگر فائلوں فائل؟ ANGELA LI: جی ہاں. تو یہ ایک رشتہ دار کہا جاتا ہے راہ، میں نہیں دے رہا ہوں کیونکہ آپ کو مکمل راستہ. آپ نے fopen کرتے ہیں تو یہ جب C میں کی طرح ہے کچھ فائل، آپ fopen کی hi.txt، کہ اگر hi.txt اسی میں ہونے کی امید ہے ڈائریکٹری، آپ کو اس کے ایک سے زیادہ دے، جب تک پیچیدہ راستہ. سامعین: تو آپ کی وضاحت کر سکتے ہیں جس فولڈر [اشراوی]؟ ANGELA LI: جی ہاں. اور آپ کو ایسا کرنے کے لئے کس طرح دیکھ سکتے ہیں. لیکن میں kittens.jpg حاصل کرنے کے لئے کرنا چاہتا تھا والدین ڈائریکٹری کے، مجھے کیا کرنا .. / kittens.jpg. جی ہاں. معذرت. جی ہاں. آدمی اوہ، میں نے سوال بھول گیا. سوال کیا تھا؟ اوہ، سوال یہ ہے کہ، kittens.jpg تھا ایک ہی ڈائریکٹری میں ہونے کی توقع؟ اور اس معاملے میں، یہ ہے. لیکن آپ یہ بھی ایک مخصوص راستہ دے سکتے ہیں یہ ہو نہیں ہے کہ اس طرح. اچھا؟ سی ایس ایس. لہذا سی ایس ایس، ایچ ٹی ایم ایل کی طرح نہیں ہے، ایک پروگرامنگ زبان. سی ایس ایس اسٹائل صرف قوانین کا ایک سلسلہ ہے. یہ جھرن کاری سٹائل شیٹس کے لئے کھڑا ہے. اور تم مل کر میں اس کا استعمال سٹائل کے صفحات پر HTML کے ساتھ. تو تین طریقے ہیں آپ کو اس کے شامل کر سکتے ہیں. آپ یہ کر سکتے ایک طریقہ سر میں ہے آپ ایچ ٹی ایم ایل کا حصہ، آپ کو صرف کر سکتے ہیں ایک سٹائل کے ٹیگ کو کھولنے اور پھر چھڑی کچھ سی ایس ایس وہاں میں قوانین. یہ بہت ٹھیک ہے. جی ہاں. سامعین: آپ ان لوگوں کو ڈال سکتے ہیں چلو، درمیان میں سٹائل ٹیگز کا کہنا ہے کہ، جسم اور / جسم. اور پھر آپ کے اسٹائل ہو گا صرف جسم میں. ANGELA LI: آپ کر سکتے ہیں. یہ کام کرے گا. اسٹائل ہے کیونکہ لیکن آپ، نہیں ہونا چاہئے میں جانا چاہئے میٹا ڈیٹا کی قسم آپ کی دستاویز کے سربراہ. جسمانی واقعی صرف پر مشتمل ہونا چاہیے کیا اصل میں جا رہا ہے آپ کے صفحے پر ظاہر. سامعین: تو آپ کو سٹائل ڈال دیا تھا سٹائل کے لئے آپ کے سر میں پورے ویب صفحہ، صحیح ہے؟ ANGELA LI: جی ہاں. تو ان کی سی ایس ایس کے قوانین، یہاں سٹائل ڈال کی بنیاد پر پورے صفحہ پر لاگو ہوں گی ان کے سلیکٹرز. تو ایسا کرنے کا بہتر طریقہ بجائے ہے کے آپ کے سر میں ایک سٹائل ٹیگ ہونے، آپ کو ایک بیرونی انداز کرنے کے لئے اس لنک ہے میں آپ سے ظاہر ہوتا ہے شیٹ کی طرح گزشتہ مثال. اس کا کیا ہے اس کی کوشش کرتا ہے اور پائے ہے style.css فائل اور پھر اسے ھیںچتی میں اور استعمال کرتا ہے کے طور پر صفحہ لئے شیلیوں. اور آپ style.css گے صرف اس طرح نظر آئے. یہ صرف سی ایس ایس کے ایک گروپ ہو گی. اور آخر میں، ایک اور طریقہ آپ کو ہے سی ایس ایس شامل کر سکتے ہیں، جو آپ کو واقعی کبھی نہیں کرنا چاہئے. فون ان لائن اسٹائل ہے. اور اس طرح کسی بھی HTML عنصر بھی کر سکتے ہیں ایک سٹائل کے وصف لے. اور پھر اس انداز وصف میں، آپ کو اس کی سی ایس ایس کے قواعد دے سکتے ہیں. تو اس معاملے میں، جو کچھ بھی DIV ہوں یہاں وضاحت، یہ جا رہا ہے ایک سیاہ پس منظر ہے اور ایک سفید متن کا رنگ. لیکن آپ کو، یہ نہیں کرنا چاہئے کیونکہ کیا یہ آپ کے اسٹائل رکھتا ہے ہے آپ ایچ ٹی ایم ایل کے اندر. اور میں ہم ایچ ٹی ایم ایل کے بارے میں بات کر رہے ہیں جانتے ہیں ساخت ہے اور سی ایس ایس سٹائل ہے. آپ ایسا ہے، تو اس کے آمیزے ان کے ساتھ. اور یہ بہت صاف نہیں ہے. تو ایسا نہیں کرتے. ہم وہاں، سی ایس ایس کی ایک مثال کا استعمال کرتے ہوئے صرف HTML کے جسم کو منتخب کریں دستاویزی فلم. اور ہم نے سب کچھ، کی طرح ہو مزاحیہ سینز جا رہا. میں نے بھی اس کی سفارش نہیں کرتے. لیکن آپ ایسا کر سکتے ہیں. یہاں دوسرے اصول، یہ جا رہا ہے پر عنصر منتخب کرنے کے لئے ID اہم کے ساتھ پیج. تو جو کچھ بھی HTML عنصر، میں نے ID کہا = اہم، میں ہے کہ ایک دینے جا رہا ہوں 20 پکسل مارجن اور ہر چیز کی سیدھ، مرکز تمام متن،. آخری بات یہ ہے کہ سی ایس ایس کلاس کی طرف سے منتخب. تو میں نے دی ہے اس صفحے پر کسی بھی عنصر ایک حصے کلاس، میں نے اس کے بنانے کے لئے جا رہا ہوں ہلکے نیلے رنگ کے پس منظر کا رنگ. جی ہاں. یہ ہے کہ میں مل گیا ہے. سوال؟ سامعین: کیا کرتا hashtag کے سے پہلے اہم ہے؟ ANGELA LI: سوال کیا کرتا ہے، ہے اہم سے پہلے hashtag کے؟ اس صورت میں، میں ہیش سی ایس ایس کی شناخت کی طرف سے منتخب کا مطلب ہے. میں کچھ HTML عنصر تھا اگر ایسا ہے تو، کی طرح divID = اہم، اس سی ایس ایس حکمرانی منتخب ID اہم چیز. اور اسی طرح، کے سامنے کی مدت سیکشن سی ایس ایس کلاس کی طرف سے منتخب کریں یا ہے ایچ ٹی ایم ایل کلاس کی طرف سے منتخب. سامعین کیوں ایک سے پہلے ہے نہیں ہے پس منظر کا رنگ میں 6؟ ANGELA LI: جی ہاں. تو سوال، وہاں کیوں ہے 6 سے پہلے ایک ہیش؟ یہ ہے کہ ہیش سے مختلف ہے. یہ آپ کو دے رہے ہیں کا مطلب ہے کہ ایک شش اعشاری رنگ. تو ہیکس رنگ، یہ صرف ایک رنگ کی نمائندگی کرتا ہے. اور تم آرجیبی تین گنا اضافہ یاد جب آپ عدالتی pset کے کیا ہے؟ یہ اسی طرح کی ہے. پہلے دو ہندسے کی نمائندگی کرتے ہیں کتنا سرخ رنگ میں ہے. دوسرے دو کی نمائندگی کرتے ہیں کتنی سبز. اور تیسری کی نمائندگی کرتا ہے کتنا نیلے رنگ کے. اور ہیش یہ جا رہا ہے ایک رنگ کی نمائندگی کرنے کے. تو 0، 0، 0، 0، 0، 0 سے کچھ F، F، F، F، F کرنے کے لئے، F درست ہے. یہ کر سکتے ہیں کچھ درست رنگ ہے اپنے براؤزر کی طرف سے ظاہر کیا جائے. سوال؟ سامعین: کیا فرق ہے ID کی طرف سے اور طبقے کی طرف سے استعمال کرتے ہوئے؟ ANGELA LI: سوال کیا ہے کے درمیان فرق ID اور طبقے کی طرف سے استعمال کرتے ہوئے؟ آپ کو صرف ایک میں ایک عنصر ہو سکتا ہے ایک دیا ID ہے کہ HTML دستاویز. اپنے صفحے پر تو صرف ایک بات ID اہم ہے کرنے کی اجازت ہے. تو آپ اس کے لئے اس کا استعمال ہیڈر ہے. یہ نیویگیشن ہے. یہ فوٹر ہے. آپ کر سکتے ہیں کی وجہ سے کلاسیں، مختلف ہیں کے طور پر کئی HTML عناصر کلاس کا اطلاق آپ چاہتے ہیں کے طور پر. تو مثال کے طور پر، میں، کلاس سیکشن کیا ایک سے زیادہ شاید کیونکہ وہاں اپنے صفحے پر سیکشن. آپ کو صرف کئی کے طور پر کی اجازت دی کر رہے ہیں اسی صفحے پر عناصر کلاس لیکن ایک خاص شناخت کے ساتھ صرف ایک. سامعین: تو نقطہ کی نمائندگی کرتا ہے کلاس؟ ANGELA LI: جی ہاں. ایک نقطہ ایک کلاس کی نمائندگی کرتا ہے. ڈاؤن لوڈ، اتارنا. یہ ہے کہ میں مل گیا ہے تمام، لوگوں کو ہے. آپ کا شکریہ. [تعریف] ZAMYLA چان: ہیلو، سب کو. میں کیا Zamyla ہوں. میں نے پی ایچ پی کو ڈھکنے جا رہا ہوں، MVC، اور SQL آج. میں ہو جائے گا کہ مواد کی ایک بہت پردہ بہت زیادہ ہونے جا رہا ہے حق pset7 سے باہر. ٹھیک ہے. تو پی ایچ پی کیا ہے؟ پی ایچ پی پی ایچ پی کی ہایپر ٹیکسٹ کے لئے کھڑا ہے پریپروسیسر. تو یہ، میں ہی، ایک پنراورتی ہے بہت اچھا ہے جس میں، نام. پی ایچ پی کی ایک سرور سائیڈ سکرپٹ کی زبان ہے، اور یہ پسدید فراہم کرتا ہے اور منطقی مضبوطی ہماری ویب سائٹ کے. تو انجیلا ایچ ٹی ایم ایل کے بارے میں بہت بات کی اور سی ایس ایس ساخت کرے گا کہ ویب سائٹ کے. لیکن آپ اس کو تبدیل کرنے کے لئے کیا چاہتے ہیں مواد کو متحرک طور پر یا تو یہ ہوتی ہے صارف یا کی بنیاد پر کچھ شرائط؟ پی ایچ پی کے اندر آتا ہے جہاں ہے اب، عام طور پر، پی ایچ پی کی چند لے سکتا ہے ایک ہی بات پر عمل درآمد کرنے کے لئے کم لائنز پی ایچ پی کی میموری ہینڈل کیونکہ سی میں ہے پروگرامر کے لئے مینجمنٹ، ہم malloc پر ہونے کی مخالفت مفت، اس طرح کی چیزیں. لیکن پی ایچ پی کی ایک توضیحی ہے زبان، عام طور پر، اسے پھانسی کر سکتے ہیں تھوڑا سا زیادہ آہستہ آہستہ سی سے، جس مرتب زبان ہے. ہم پروگرامنگ جا رہے ہیں کیونکہ زبانوں، کے دیکھو کس طرح نحو مختلف ہو جائے گا. نہیں کے لئے بہت ہوشیار ہو اس کے ساتھ الجھن میں ہو. آپ چاہے، پی ایچ پی کی نحو کے ساتھ تو ایک HTML کے اندر آپ پی ایچ پی کی سرایت آپ، خود فائل یا ایک. پی ایچ پی کی فائل کے اندر اندر کھلے میں کوڈ بھیجیں کرنے کی ضرورت ہے پی ایچ پی اور اس طرح بند کر دیا گیا پی ایچ پی ٹیگز سکرین پر کی طرح، مندرجہ ذیل ہے. پی ایچ پی میں متغیر. ہر ایک متغیر کے ساتھ شروع ہو جائے گا نام کے بعد $ سائن ان کریں آپ متغیر. اب، پی ایچ پی میں متغیر شتل ٹائپ کر رہے ہیں، جس سے آپ کی ضرورت نہیں ہے کا مطلب ہے کہ کیا ڈیٹا کی قسم اس بات کی نشاندہی کرنے کے لئے آپ کو یہ اعلان کر رہے ہیں جب. تاہم، اس کا مطلب یہ نہیں ہے کہ وہ بالکل کسی بھی قسم کی ضرورت نہیں ہے. میں ایک متغیر کا اعلان اور صرف قائم اگر ایسا ہے تو اسے 1 کے برابر، اور پھر میں اعلان دوسرے متغیر، "، 1" کے برابر مقرر اور پھر ایک 1.0، اچھی طرح سے، مساوات کی قسم پر منحصر میں موازنہ کرنا چاہتے ہیں تو آپریٹرز میں، کا استعمال کرتے ہیں تمام اقسام کے میں، اس کے بعد وہ برابر ہو جائے گا. لیکن میں اس بات کو یقینی بنانا چاہتے ہیں اقسام برابر ہیں، پی ایچ پی کی اب بھی کر سکتے ہیں ہم اس بات کی نشاندہی نہیں ہے، اگرچہ، کہ جب ہم نے یہ کیا ہے قسم پہلی فائل بنانے کے. اب، پی ایچ پی میں، اگرچہ ہم ہیں پروگرامنگ سے سوئچنگ C سے زبانوں، ہم اب بھی ہے ہماری صرف اس طرح، شرط تو قابل اعتماد. ہم اب بھی صرف، ہماری جبکہ loops ہے اس طرح، آپ میں جہاں ڈال دیا آپ تو حالت اور لوپ کے جسم. اور پھر ہم بھی، لوپ کے لئے ہماری ہے عام طور پر اس طرح لگ رہا ہے. میں تمام iterate کرنا چاہتے تھے تو اگر نو psets میں اور جمع اور ایک کال تقریب submitPset، تو میں ایسا کر سکتے ہیں یہاں، جس میں تم لوگ تمام اس نقطہ کی طرف سے کیا. راہ کی طرف سے مبارک ہو،. کیمرے کے لئے، لوگوں کو انہوں نے کہا کہ، آپ کا شکریہ. اب، آپ کو صرف اس کا استعمال نہیں کرنا چاہتے تھے تو لوپ کے لئے، اس کے بعد پی ایچ پی کی اصل بھی چیزیں جعلی foreach loops کے کہا جاتا ہے. تو میں integers کے ایک صف، 0 تھا 8 کے ذریعے، صف psets میں میں ذخیرہ، اس کے بعد میں نے ایک جعلی foreach لوپ کر سکتے ہیں psets میں میں ہر تعداد پر iterates ہے. اور پھر میں نے ہی کہہ سکتے ہیں آٹھ بار کی تقریب، میں نے پہلے کیا تھا. تو ہر ایک لوپ کے لئے اس، اچھا ہے کیونکہ آپ کی ضرورت نہیں ہے آپ نہیں جانتے تو صف کے عین مطابق کی لمبائی ہے کہ آپ ، اس کے بعد اس جعلی foreach لوپ کا استعمال کرتے ہوئے آپ کے لئے اس کی دیکھ بھال کرے گا. تو میں ایک صف کے طور psets میں بنا دیا. کی کہ دیکھو. پی ایچ پی میں arrays کے عام طور پر کے طور پر ایک ہی ہیں ہم سی، میں پڑا ہے کہ لوگ جہاں آپ کو ایک صف اعلان کر سکتے ہیں. اور یہاں، میں ایک خالی صف کا اعلان کر سکتے ہیں اور اس کے بعد کا استعمال کرتے ہوئے کی طرف سے متحرک کی تعمیر integers کے طور پر سوچکانکوں. 0 انڈیکس تو، میں ذخیرہ کرنے کے لئے جا رہا ہوں ایک عددی 1 کا نام دیا. میری فہرست کے 1 صفحہ میں، میں جا رہا ہوں قیمت 2 ذخیرہ کرنے کے لئے. اور تیسری انڈیکس لیکن کم دوسرے نمبر، میں جا رہا ہوں تعداد 12 ذخیرہ. اب، یہ ہے کہ میں ٹھیک ہے یہ اچھی طرح کام کرتا ہے کام کرتا ہے. لیکن اس سے مجھے فرق پڑتا ہے کا کہنا ہے کہ ہر ایک انڈیکس کی ڈگری حاصل کیا. میرے لئے، انڈیکس 0 کا مطلب ہے کہ کس طرح بہت سے بلیوں میں ہے. اور انڈیکس 1 کا مطلب ہے کہ کس طرح بہت سے اللو میں ہے. اور اگلے ایک کتنے کتوں کا مطلب ہے. ٹھیک ہے، تو یہ اس کے بجائے، جو کہ وضاحت کرنے کے لئے 0 سے متعلق یاد کرنے کی اللو پر بلیوں اور 1، میں استعمال کر سکتے ہیں جس کا مطلب ہے ساہچری arrays، اس کی بجائے میری سوچکانکوں کے طور پر integers کے، میں اصل میں ڈور کے استعمال کر سکتے ہیں. تو یہ بہت مفید ہے. اور تم بنیادی طور پر صرف کی جگہ لے لی ہے ڈور کے ساتھ integers کے. اور وہاں آپ کو ایک ہے ساہچری سرنی. جی ہاں. سامعین: ہے کیوں ایک وجہ ہے دوسرے کے لئے ایک کشید حصہ، میری فہرست سرنی ہے کیونکہ. ZAMYLA چان: سوال تھا، ہے وہاں ایک ہے ایک وجہ میری اور فہرست کے درمیان کشید؟ نمبر کہ میں نام کر رہا ہوں کہ کس طرح ہے میری متغیر. سامعین: پہلے لائن، یہ ایک لفظ ہے. ZAMYLA چان: مجھے معاف. میں اسے ٹھیک کر دیں گے. جی ہاں. وہ ایک ہی متغیر کا نام ہونا چاہئے. اچھا کیچ. ٹھیک ہے. تو سٹرنگ پر منتقل concatenation. میں نے دو ڈور لے جانا چاہتے تھے، تو پھر میں نے ان کو سلسلہ بندی کرنا کر سکتے ہیں ڈاٹ آپریٹر کے ساتھ. تو میں سب سے پہلے نام کے طور پر ملو ہے تو اور پھر ایک آخری نام کے طور پر کیلے، ڈاٹ منتظم، اور ساتھ concatenating پھر درمیان میں ایک جگہ ڈال ملو پر مشتمل ہے کہ ایک تار کر دے گا میں تو بازگشت یا کر سکتے ہیں جس کیلے،، بجائے، باہر پرنٹ. گونج کے خطاب کرتے ہوئے، کی بات کرتے ہیں چند مفید کے بارے میں - افوہ. میں معافی چاہتا ہوں. چند مفید پی ایچ پی کی کام کرتا ہے. تو ہم ہے - تکنیکی مشکلات. ایک سیکنڈ. میں نے اسے بھیجا. پاورپوائنٹ کے مسائل. اور ہم پی ایچ پی کی افعال کے ساتھ واپس آ گئے ہیں. اور ہم پی ایچ پی کی افعال کے ساتھ واپس آ گئے ہیں. تو ہم نے، تقریب کی ضرورت ہوتی ہے جہاں آپ کو ایک فائل میں منتقل، تو یہاں ہے صرف ایک فائل کی ایک مثال یہ ہے کہ میں اندر سے گزر سکتا ہے پھر اس پی ایچ پی کوڈ شامل کیا جائے گا میں اس بات کی نشاندہی ہے کہ اس فائل سے. اور اس کے اندر ہے کا اندازہ کریں گے پھر ہم بھی، گونج ہے جو printf کی ایک متوازی ہے. سے باہر نکلیں کو توڑنے کے لئے ایک متوازی ہے، بلاک کے راستے جس تم اندر ہیں کے کوڈ اور پھر خالی چیک چاہے ایک دیئے گئے متغیر، شہوت انگیز null یا صفر یا کی طرح ہے جو کچھ بھی خالی ہونے کے ساتھ آپس میں موازنہ ہے. جی ہاں. سامعین: سٹرنگ concatenation کے لئے ڈاٹ آپریٹر ایک، پی ایچ پی میں، ہے اس کا استعمال کرتے ہوئے ہے جہاں جاوا اسکرپٹ میں ایک ہی concatenation کے لئے ڈاٹ کے علاوہ مطلب ہے؟ تو مکمل نام کے لئے، آپ کو ڈالر ہو سکتا ہے پہلی + سائن ان کریں اور پھر + آخری؟ ZAMYLA چان: جی ہاں. تو سوال یہ تھا پی ایچ پی میں چاہے ہم ایک ہی سٹرنگ concatenation استعمال کر سکتے ہیں کے pluses کے ساتھ جاوا اسکرپٹ میں کے طور پر. اور یوسف کے بعد اس میں مل جائے گا. میں نے اس پر ایک سلائڈ ہے لگتا ہے. اصل میں، یہ مختلف ہے. تو جاوا سکرپٹ میں، آپ کو استعمال کرنے کی ضرورت ہے ڈور سلسلہ بندی کرنے کے علاوہ. اور پی ایچ پی میں، آپ کے لئے ہے ڈاٹ آپریٹر کا استعمال. تو وہ مختلف ہیں. ٹھیک ہے. تو اب ہم سب کا احاطہ کرتا ہے یہ پی ایچ پی، جہاں یہ کرتا ہے واقعی ہاتھ میں آئے؟ ٹھیک ہے، یہ ہاتھ میں آتا ہے جب ہم ہمارے ایچ ٹی ایم ایل کے ساتھ اس کا جمع کر سکتے ہیں. تو ہمارے پی ایچ پی کے لئے ہمیں طاقت دے گا ایک صفحے کے HTML کے مواد سے پہلے تبدیل اس کے لوڈنگ. تو مختلف حالات کی بنیاد پر، ہے کہ عام طور پر مخصوص صارف میں ریکارڈ، ہم ظاہر کر سکتے ہیں مختلف معلومات. لنڈا، آپ سے ایک سوال ہے؟ سامعین: آپ کا سلسلہ بندی کرنا کر سکتے ہیں بھی ایک عدد صحیح؟ ZAMYLA چان: جی ہاں، آپ کر سکتے ہیں. آپ کر سکتے ہیں اگر ایسا ہے تو سوال یہ تھا integers کے یا دوسرے سلسلہ بندی کرنا اب، ہم، MVC پر منتقل variable.s جس ہم میں استعمال کیا جاتا ہے کہ ایک پیرا میٹر ہے pset7 اور ویب ڈیزائنرز کے ایک بہت کے لئے استعمال فائلوں میں کوڈ کی تنظیم ان کی ویب سائٹ میں. ایم ماڈل کے لئے کھڑا ہے. اور بنیادی طور پر، ماڈل فائلوں نمٹنے گا ڈیٹا بیس کے ساتھ بات چیت کے ساتھ. فائلوں کو دیکھنے، وہ سے متعلق ویب سائٹ کی جمالیات. اور کنٹرولر ہینڈل صارف کی درخواستوں، parses کے اعداد و شمار، دیگر منطق کرتا ہے. pset7 میں، ہم ماڈل مشترکہ اور کنٹرولر. اور ہم صرف کنٹرولرز انہیں بلایا اور عوامی ڈائریکٹری میں ڈال. اور قول فائلوں، ہم ان کا استعمال سانچوں ڈائریکٹری میں کے سانچوں. تو یہاں اس آریھ بھی نمائندگی کرتا ہے کے ساتھ ڈویژن کی ہے کہ اسی طرح ماڈل اور جامنی رنگ میں کنٹرولر یہاں بائیں طرف اور حق پر دیکھیں. تو یہ ایک یوجنابدق ہے کہ تم میں سے بعض دفتر گھنٹے یا میں دیکھا جا سکتا ہے ہم آپ کے طور پر ڈرائنگ گیا ہے کہ diagrams کے آپ کی pset باہر figuring کیا گیا. تو یہاں، ایک دیا کنٹرولر میں، ایک ماڈل کنٹرولر، ہم کام کرتا ہے SQL طلب جاری سے متعلق ڈیٹا بیس، پی ایچ پی کی منطق پر عمل. ہو سکتا ہے کہ آپ کو نظر آئے گا یاہو میں ایک اسٹاک خزانہ. یا شاید، آپ کو صرف کی جانچ پڑتال کرے گا ایک صارف پیش کی تھی یہ دیکھ ایک ہونے سے پہلے پہلے ہی تشکیل آپ کے صفحے کا دورہ کیا. اور پھر آپ کو فراہم کرے گی ایک یہاں کی تشکیل. اس فارم پیش کیا گیا تھا کے بعد صارف کی طرف سے، تھا کہ کارروائی فارم کی ایچ ٹی ایم ایل ٹیگ میں مخصوص صفحہ ظاہر ہوتا ہے کہ یہ کہ اعداد و شمار پر واپس. تو اس کی تمام معلومات ہو جائے گا اپنے کنٹرولر کو واپس بھیجا. تو آپ شاید تھوڑا سا زیادہ کروں گا اس منطق اور شاید کچھ کو پھانسی زیادہ ایس کیو ایل ڈیٹا بیس میں سوالات اور اس کے بعد، آخر میں، ایک اچھی طرح سے کے ساتھ آئے معلومات کے پیک سیٹ ہے کہ آپ کو کرے گا کچھ دوسرے سانچے میں میں منتقل کہ اس کے بارے میں معلومات ظاہر. اب، ہم کس طرح اصل پیکج ہے اس معلومات کو؟ ٹھیک ہے، ہم رینڈر کے نام سے ایک تقریب ہے اس میں functions.php فائل میں تھا pset7، آپ کے نام پر منتقل جہاں ایک فائل، ایک سانچے کے نام. اور پھر آپ کو بھی میں منتقل ایک ساہچری سرنی. اور تو ہے کہ ساہچری سرنی کی نمائندگی کرتا ہے مختلف معلومات تم اندر منتقل کرنے کے لئے چاہتے ہیں کہ اب، کیا میں مسلسل ہونے جا رہا ہے ان مثالوں ہے کہ چابیاں یا، بلکہ، ساہچری کی چابیاں arrays کے، ان ہونے جا رہا ہے ہیں سانچے کی طرف سے مسلسل ہونے کی توقع، یہ اس کی ضرورت جانتا ہے پیغام ملاقات کی کچھ یا نام. اور پھر دائیں پر چیزیں، اصل اقدار، تو اس صورت میں، کون ہے ایک اچھے لڑکے اور ملو، ان کے جا رہے ہیں تبدیل کر رہے ہیں کہ اقدار ہونا کنٹرولر ہر وقت تبدیل ہے یا ایک مخصوص حالت پر مبنی ہے اور اندر گزر جائے گا تو یہاں کے سانچوں میں، ہم دیکھتے ہیں کہ ہم ایچ ٹی ایم ایل خاص حروف استعمال کر رہے ہیں، جس میں صرف بنیادی طور پر ہم چاہتے ہیں کہ اس کا مطلب ہم مرتبہ تار کو حاصل کرنے کے لئے اس صارف اندر ڈال اور ہم متبادل کے لئے چاہتے ہیں وہاں میں پیغام. تو پھر ہم اصل میں دیکھنے کے جب فائل، مخصوص معلومات کے اندر منظور کیا جاتا ہے کس طرح کام فراہم اہم ہے یاد رکھیں کہ کہ ساہچری کی چابیاں arrays کے، ان بن متغیر یہاں کے نام. اور اس طرح میں اس کی چابی کی اقدار ساہچری سرنی پھر ہو جاتا ہے متغیر کی قدر. اب، ایس کیو ایل پر منتقل. یہ تشکیل کے لئے کھڑا ہے زبان استفسار. اور تو یہ صرف ایک پروگرامنگ ہے ڈیزائن زبان ڈیٹا بیس انتظام کے لئے. اور اس میں ہمارے لئے ہاتھ میں آئے ہمارے pset7 خزانہ کی ویب سائٹ. بنیادی طور پر، یہ صرف ایک آسان طریقہ ہے اشیاء اور میزیں ٹریک اور منظم اور انہیں ایک دوسرے سے منسلک. اب، آپ SQL ڈیٹا بیس کے بارے میں سوچ بنیادی طور پر ایک ایکسل فائل کے طور پر، شاید، ایک سے زیادہ tabbed کے چادریں کے ساتھ. تو آپ ایک سے زیادہ میزیں کر سکتے ہیں، شاید، یہ ہے کہ ایک دوسرے سے منسلک ہے. اور ایکسل کی طرح، ہم نے کی ایک بہت ہے ہم چاہتے ہیں کہ فعالیت. مثال کے طور پر، ہم منتخب کر سکتے ہیں کچھ لائنیں. ہم معلومات داخل کر سکتے ہیں. ہم قطار کو اپ ڈیٹ کر سکتے ہیں. اور ہم بھی چیزیں خارج کر سکتے ہیں. SQL قطار کو منتخب کر کے کام کو منتخب کریں یا ایک سے مخصوص کالم کی ایک قطار ایک مخصوص ملنے کے ڈیٹا بیس ہے کہ آپ کو ظاہر ہوتا ہے کہ معیار. یہاں پر میں نے منتخب دیکھ کر * سے تو گھر جہاں = Ravenclaw، تو جادوگر میں ہوں جس کا مطلب ہے، * کو منتخب کر رہا ہوں اس میں ہر ایک کے کالم کا انتخاب جادوگر میز لیکن صرف اس صورت میں سے صف گھر کالم Ravenclaw برابر. اب، یہ خالص یا SQL ہے. میں ہے جس میں phpMyAdmin کے، میں چلا گیا تو اگر ہم کو منظم کرنے کا استعمال کرتے ہیں اس مخصوص طریقہ ہمارے SQL ڈیٹا بیس، پھر میں داخل کر سکتا ہے کہ phpMyAdmin کے ویب سائٹ میں. اور اس پر عمل کریں گے. لیکن ہم اصل میں کیا کرنا چاہتے ہیں کہ پی ایچ پی کی طرف. تو ہم اس کو کس طرح کرتے ہیں؟ ٹھیک ہے، ہم استفسار تقریب، استعمال کرتے ہیں جس بنیادی طور پر یہ ہے کہ SQL سوال executes ہے. کا استعمال کرتے ہوئے؟ ایک پلیس ہولڈر کے طور پر، ہم نے بعض میں منتقل کر سکتی ہیں ہمارے سٹرنگ اقدار کہ ہم تبدیل کرنا چاہتے ہیں. تو شاید میں مختلف ذخیرہ کرنے ہوں curr_house میں اقدار، جس میں موجودہ گھر کی نمائندگی کرتا ہے میں کے ذریعے جا رہا ہوں. تو میں نے ایک پلیس ہولڈر کے طور پر اس میں منتقل کر سکتی ہیں سوالیہ نشان کے ساتھ. اور پھر میں نے بنیادی طور پر پر عمل کریں گے میں سوائے، پہلے ایک ہی بات کے طور پر اب، میں نے پی ایچ پی میں ہوں. اور سوال ایک واپس آ جائیں گے ساہچری سرنی. اور میں نے قطار میں اسے ذخیرہ کرنے کے لئے جا رہا ہوں. اب، استفسار ہمیشہ ناکام کر سکتے ہیں. شاید SQL سوال کے پھانسی نہیں کر سکتے ہیں میز کا وجود نہیں تھا کیونکہ. یا شاید، کالم موجود ہی نہیں تھی. کچھ غلط ہو گیا. ٹھیک ہے، اس صورت میں، آپ کو بنانا چاہتے ہیں کریں گے چاہے آپ کو چیک اس بات کا یقین استفسار جھوٹے واپس. اور یہ کہ ٹرپل کا استعمال کرتے ہوئے کی طرف سے ہے وہاں آپریشن کے برابر ہے. اور پھر میں نے ایک اور ہے جو، معذرت خواہ ہیں ایک پیغام میں گزر CS50 تقریب،. اور تم معذرت خواہ ہیں، سب کو اس میں نظر آتے ہیں واقعی کرتا apology.php فراہم ہے. جی ہاں. سامعین: آپ کیا اس کی وضاحت کر سکتا سٹار منتخب کریں اور کی طرف سے کے درمیان ہے؟ ZAMYLA چان: جی ہاں، بالکل. تو منتخب کریں اور کی طرف سے کے درمیان میں ستارہ میں پوری منتخب کرنے کے لئے چاہتے ہیں کا مطلب ہے کہ میری میز سے پورے قطار. منتخب اشارہ کر سکتا ، سال، گھر کا نام ہے. اور میں صرف ان تین ملے گا میری ٹیبل میں کالم. میں کو منتخب کریں * کا کہنا ہے کہ لیکن اگر، اس کے بعد میں کریں گے اس کالم میں سب کچھ حاصل کرنے کے لئے. پھر میں نے آپ کو جانے کے لئے جا رہا ہوں سب سے پہلے کی پیٹھ میں. سامعین: تو یہ اب بھی ہے SQL میں، ٹھیک ہے؟ یہ سوال ہے یا اس پی ایچ پی کی ہے؟ ZAMYLA چان: ہم نے ایک سوال میں ہیں. تو یہ پی ایچ پی میں ہے. تو پی ایچ پی کی تقریب کے استفسار کا استعمال کرتے ہوئے، ہم ایک SQL سوال کو قتل کر رہے ہیں. سامعین: SQL میں کچھ ہے حساس، کی طرح کا انتخاب کریں یا جادوگر یا گھر؟ ZAMYLA چان: کچھ ہے SQL حساس ہے؟ میں ہاں، تو یقین. مجھے یقین ہے کہ منتخب کریں اور سے اور حساس ہیں جہاں. کوئی؟ روب Bowden: تو، اس کے برعکس ہے. کالم کے نام اور ٹیبل کا مطلب ہے، ان میں سے سب حساس ہیں. لیکن ایس کیو ایل کلیدی الفاظ کے کسی بھی، کی طرح سے، منتخب کریں، اور، ان لوگوں کو کہاں نہیں ہیں حساس. ٹھیک ہے. تو میں نے کہا کہ کے برعکس. تو ایس کیو ایل کے تمام مطلوبہ الفاظ - ان - جہاں، سے، منتخب کریں حساس نہیں ہیں. لیکن سب کچھ ہے. ٹھیک ہے. سامنے. سامعین: میں کی شرائط میں قطار $ ہے تو ایک سے زیادہ قطار، کا مطلب ہے ہے صرف ایک ساہچری سرنی ہو جاتا ہے؟ ZAMYLA چان: تو سوال یہ تھا قطار ، اس میں ایک سے زیادہ قطار ہے ہے یہ ایک ساہچری سرنی بن گیا؟ تو اس ساہچری کے ایک صف ہے پہلے ہی arrays کے. صرف ایک قطار ہے تو بھی اگر واپس آئے، تو آپ کو جانا پڑے گا نتیجہ ہے کہ انڈیکس 0. اور پھر آپ کو اس کی پہلی قطار پڑے گا. جی ہاں، Belinda؟ سامعین: آپ === استعمال کرتے ہیں، یہ صرف مثال کے طور پر ہے؟ یا دوسروں کے ہیں؟ ZAMYLA چان: تو اس صورت میں، === اقسام بھر میں ایک کے مقابلے میں ہے. معذرت. === ایک موازنہ ہے اقسام آپس میں موازنہ. اور پھر == تمام اقسام بھر میں موازنہ. سامعین: آپ کیا وضاحت کر سکتا ہوں قطار اس صورت حال میں ہے؟ یہ اعداد و شمار کی قطار ہے؟ ZAMYLA چان: اگلا سلائڈ میں، میں ہوں کیا ہے قطار وضاحت کرنے کے لئے جا رہا. تو آپ کے انعقاد میں کوئی اعتراض نہیں ہے تو دور اس پر. اور پھر آپ کو واپس میں؟ سامعین: QUERY طرح کے افعال کے لئے، رینڈر اور [اشراوی] معذرت خواہ ہیں؟ ZAMYLA چان: سوال آیا تھا ان کے افعال میں - QUERY،، معذرت خواہ ہیں اور رینڈر - پی ایچ پی میں عام ہیں. ان لوگوں کے ہیں جو CS50 pset7 کے لئے لکھا تھا. اور جے؟ سامعین: آپ کا کہنا ہے کہ کی ضرورت ہے $ _session، صرف شناخت کے لئے ہے؟ یا آپ کہ یہاں کہا جا سکتا ہے؟ ZAMYLA چان: تو سوال یہ تھا، جب ہم اس کو ایک مخصوص تھا، $ _session استعمال ہم استعمال کر رہے ہیں کہ عالمی متغیر. یہاں اس متغیر کی جا رہی ہے ہمارے تقریب مقامی ہو. تو ہم صرف اعلان کر رہے ہیں نیا متغیر. سامعین: میں کس طرح معذرت خواہ ہے لاگو؟ ZAMYLA چان: سوال تھا، کس طرح لاگو معذرت خواہ ہے؟ اور میں یہ اصل میں ایک بہت ہے تم لوگوں کو میں جانے کے لئے کے لئے اچھی پریکٹس functions.php حصے اور پر نظر معذرت خواہ ہیں اور آپ کر سکتے ہیں کس طرح دیکھنے کے یہ اپنے آپ کو کیا. تو میں تم پر چھوڑ لیکن صرف کر سکتے ہیں آپ پر نظر ڈالیں تو معافی مانگنے کا کہنا ہے کہ، تو یہ ہے کہ آپ کو پیغام لیتا ہے یہ تو معذرت خواہ پیش کی، اور اس پیغام دیتا ہے. مزید کوئی سوال؟ میں نے سوال سے محبت کرتا. تو آنے رکھنے کے. سامعین: [اشراوی] بازگشت یا وہاں پرنٹ؟ ZAMYLA چان: سوال تھا، ہم صرف ڈال دیا ہے نہیں کر سکتے ہیں بازگشت یا وہاں پرنٹ. تو یہ کچھ کیا ہوتا تھوڑا سا مختلف. اس کے سوال طباعت ہوتا اس میں ناکام رہے - ٹھیک ہے، اب، ہم اصل میں ہیں ہمارے کنٹرولر میں. تو ہم اصل میں نہیں ہے ایچ ٹی ایم ایل یہاں قائم. apologize.php انجام کی طرف سے معذرت خواہ ہیں اصل apology.php کے لئے آپ کو ری ڈائریکٹس. ٹھیک ہے. تو اب، کے ایڈریس پر جانے کے بارے میں پہلے سے سوال کیا واقعی قطار ہے. ٹھیک ہے، استفسار واپس آ جائیں گے قطار کے ایک صف. اور ہر صف نمائندگی کی ہے ایک ساہچری سرنی کی طرف سے. میں نے کچھ SQL سوال اور پھانسی دے دی ہے اگر ایسا ہے تو میں تو، قطار میں نتیجہ ذخیرہ ہے ایک جعلی foreach لوپ کا استعمال کرتے ہوئے، پھر صف قطار - نام وہاں سب سے پہلے ایک ہے. اور پھر میں نے فون کرنے کے لئے جا رہا ہوں وہاں $ صف میں ہر صف. تو میں نے، اس پر تو کر سکتے ہیں iterating کر دی صف کے نام کے کالم تک رسائی حاصل، سال کالم، اور گھر کالم. میں نے کرنے کے قابل نہیں ہوتا یاد رکھیں کہ کیونکہ قطار انڈیکس، قطار کے ساتھ ایسا نام موجود نہیں ہے. قطاروں کی صرف ایک صف ہے ساہچری arrays. تو تم وہاں دو سطح ہے. آپ لائنوں کی صف ہے ایک بار، آپ کو اس میں حاصل کرنے کے لئے ہے. اور پھر آپ کے کالم تک رسائی حاصل کر سکتے ہیں. کہ یہ واضح کرنا تھا؟ جی ہاں، سامنے؟ سامعین: [اشراوی] کھولنے بریکٹ [اشراوی] کے لئے؟ ZAMYLA چان: معاف کرنا؟ سامعین: کھلی بریکٹ. ZAMYLA چان: یہاں ان؟ یہ میرے شامل کرنے کے لئے کی اجازت دیتا ہے کہ متغیر. جی ہاں. سامعین: آپ کو پرنٹ، تو آپ ہیں ایچ ٹی ایم ایل کوڈ کو پرنٹ؟ ZAMYLA چان: جی ہاں. میں پرنٹ تو، اس کے اندر ہے اپنے سانچے کو اب، تو MVC کے طریقہ کار کی میرے خیال. تو میں نے ایچ ٹی ایم ایل میں چھپائی رہا ہوں. ہم ڈویلپر میں چلا گیا تو اگر سامعین: فورم کے اوزار چلانے کے بعد، ہم کر سکتے اصل کوڈ میں ہے؟ ZAMYLA چان: یہ ایک بہت اچھا ہے سوال، ہاں. آپ ڈویلپر کے اوزار میں چلا گیا تو اگر فائر فاکس Firebug کا استعمال کرتے ہوئے یا کروم، تو جی ہاں، آپ کر سکتے مخصوص HTML دیکھ. تو یہ $ صف ["نام"] ظاہر نہیں کرے گا. یہ جو بھی دکھائے گا نام ہے کہ قطار میں ہے. سامعین: صرف ایک عام مسئلہ، کیا TR رہے ہیں اور ٹیڈی طور پر بیان کیا؟ کیوں ہم [اشراوی]؟ ZAMYLA چان: ٹیبل صف TR، ٹیبل پھر کالم TD. ٹھیک ہے. سامعین: جی ہاں، یہ میز کے اعداد و شمار ہے. ZAMYLA چان: ٹیبل کے اعداد و شمار. جی ہاں. سامعین: یہ ایک قطار ہے جس میں قطار ایک کالم کی طرح سلوک کیا جاتا ہے؟ ZAMYLA چان: معذرت. آپ اس دوبارہ کر سکتے ہیں؟ سامعین: آپ کس طرح کریں گے قطار دیکھ؟ ZAMYLA چان: کس طرح آپ کو دیکھ گے جس طرح سے کس قسم میں قطار؟ آپ کو ان کے بارے میں بات کر رہے ہیں یہاں قطار یا TR قطاروں؟ سامعین: قطار. ZAMYLA چان: یہاں ان قطاروں؟ میں نے اس کو دیکھ گا میں نے اپنے سوال کے پھانسی. اور یہ ٹھیک ہے، میں ن 0 یا تو ہے، کا کہنا ہے کہ معیار سے میل کھاتے ہیں کہ قطار کی رقم آپ استفسار تھا کہ. تو میں قطاروں میں سے کچھ تعداد ہے. قطار تو، $ قطار، دکانوں ہر ایک صف میں ان قطاروں میں سے ایک. تو یہ صرف ان میں سے ایک یہاں تک کہ اگر، یہ ہے اب بھی اس سے مماثل ہے کہ قطاروں کے ایک صف. تو پھر، مثال کے طور پر، یہ ہے آپ دلوایا جب کی طرح صارفین کی طرف سے کیش. اور معیار جہاں تھا ID شناخت سیشن کے برابر ہے. واقعی صرف ایک صف ہے کہ مطابقت کر سکتے ہیں. لیکن پھر بھی قطار کو صرف ایک قطار واپس. تو آپ کو قطار میں جانے کے لئے چاہتے ہیں، 0 انڈیکس، انڈیکس کیشے اصل میں آپ کے کیش کرنے کے لئے حاصل. سامعین: پرنٹ تقریب ہے ایک ہی بات گونج میں؟ ZAMYLA چان: جی ہاں. جی ہاں. اسی کی ایک گونج پرنٹ. سامعین: جعلی foreach لوپ ہے قطار میں انڈیکس کرنے کا واحد طریقہ؟ ZAMYLA چان: ایک جعلی foreach لوپ ہے آپ کر سکتے ہیں کہ صرف ایک ہی طریقہ قطار کے ذریعے iterate؟ نمبر تم نے بھی فراہم کی، لوپ کے لئے استعمال کر سکتے ہیں آپ اس کی لمبائی کو معلوم ہے کہ صف کی صف کی. سامعین: آپ کی اس تک رسائی حاصل کر سکتے ہیں [اشراوی] کے طور پر ایک قطار کا استعمال کرتے ہوئے؟ ZAMYLA چان: تو آپ کو اس تک رسائی حاصل نہیں کر سکتے ہیں آپ کی ضرورت نہیں ہے تو صرف صف کا استعمال کرتے ہوئے جعلی foreach لوپ فراہم کی ہے کہ آپ کو صف کا اعلان نہیں کیا ہے. جی ہاں. جی ہاں، سفید میں. سامعین: TR اور TD تو کیا کروں؟ ZAMYLA چان: تو TR اور TD HTML ٹیگ ہیں. TR آغاز کی طرف اشارہ کرتا ایک میز قطار کے. اور ہر ایک ٹیڈی ایک طرف اشارہ کرتا ہے نئے میز کے اعداد و شمار کے کالم. سامعین: کیا ایک قطار کے ایک بصری کے لئے کی طرح، صرف SQL تصور کیا جاتا ہے، کس طرح وہ ایک قطار ہے. [اشراوی]. ZAMYLA چان: جی ہاں. یہ ایک بہت بڑی بات ہے. تم صرف کے طور پر قطار دیکھ سکتے ہیں کی طرح ایک ایکسل ٹیبل میں، صرف قطار کی فہرست. ٹھیک ہے. ٹھیک ہے. تو اب ہم اگر، منتخب ختم ہو گیا ہے کہ کوئی مزید سوالات ہم کریں گے، وہاں نہیں ہیں ڈالیں پر پر جانا. میں نے کچھ میں داخل کرنا چاہتے تھے تو اگر میز اور بعض کالم داخل اقدار، میں اپنے آپ کو داخل کر سکتا ہے سال 7 Ravenclaw میں. لیکن کبھی کبھی نقل ہو سکتا ہے اقدار، ہم pset7 میں دیکھا کے طور پر جب ہم ہمارے پورٹ فولیو کو اپ ڈیٹ کر رہے تھے. تو اس صورت میں، ہم پر استعمال کرنا چاہتے ہیں ہم ایسا نہیں کرتے، تاکہ اہم اپ ڈیٹ کی نقل اسی کے ساتھ ایک سے زیادہ قطار ذخیرہ قدر بلکہ اس کو اپ ڈیٹ. تو اصل میں ہم اپ ڈیٹ ہے، جس میں داخل نہیں ہے. یہ آپ کو اپ ڈیٹ جہاں صرف ایک اپ ڈیٹ ہے ایک دیا کے ساتھ ایک مخصوص ٹیبل میں معیار اور اس کے بعد، آخر میں، خارج کر دیں، جو کہ ایک بہت کی طرح بات کرتا. سامعین: ممکن ہے کہ آپ مختصر طور پر مصنوعی چابی پر جانا؟ ZAMYLA چان: جی ہاں. بنیادی طور پر یہاں، میں داخل میں ہے gringotts، galleons،، ان اقدار ہے. لیکن ID، شاید، ایک منفرد کلید ہے قیمت مائی ایس کیو ایل ٹیبل میں قائم. تو میں نے پہلے ہی اس کی شناخت قائم کی ہے تو، تو میں ایک نئی صف داخل نہیں کرسکتے ہیں. یہ پہلے سے ہی موجود نہیں ہے اگر ایسا ہے تو، پھر میں نے اس کو اپ ڈیٹ کرنے کے لئے ہے. سفید میں وسط میں. سامعین: تو، حذف،، اپ ڈیٹ داخل اور منتخب کریں، ان تمام دستیاب ہیں مقامی طور پر [اشراوی]؟ ZAMYLA چان: تو داخل، اپ ڈیٹ، کو حذف، اور تمام منتخب SQL سوالات ہیں. تو جب بھی آپ SQL کا استعمال کرتے ہوئے کر رہے ہیں، آپ کو دستیاب لوگ پڑے گا. سامعین: ماضی quizzes کی واپس - کے ساتھ نمٹا ہے کہ ایک سوال کے جواب میں تھا آپ کو ایک میز تھا اور کرنا چاہتا تھا ایک میں ٹیسٹ اسکور داخل کریں اور آپ داخل آپ کا نام آپ کو نہیں ہونے دیں گے یہ تو [اشراوی] آپ کے دوست کا ٹیسٹ اسکور. آپ اس ڈالیں کے ساتھ کس طرح کریں گے؟ ZAMYLA چان: تو سوال کے بارے میں تھا گزشتہ وسط مدتی سوال. میں نے جس سے آگاہ نہیں ہوں ایک اس کا حق ہے. تو شاید اس کے بعد، آپ کو چاہتے ہیں تو میں کر سکتا ہوں، تو آئے اور مجھ پر ظاہر یقینی طور پر آپ کی تجاویز دے. لیکن جیسے، داخل چیزوں کی بات جب آپ کسی کے اسکور لے ، کے بارے میں بات نہیں کرنا چاہئے SQL انجکشن حملوں. تو ایک SQL انجکشن حملے بنیادی طور پر ہے جہاں کسی لیتا ہے کم سیکورٹی کا فائدہ آپ اعداد و شمار میں لے رہے ہیں اس طرح. تو یہاں میں، صرف CS50 خزانہ میں کی طرح، ہم میں ریکارڈ جب، ہم ایک میں درج کر سکتے ہیں لاگ ان کی شکل میں اسم صارف، سب سے پہلے متن باکس، اور پھر ایک پاس ورڈ میں داخل. شاید ہمارے پی ایچ پی کوڈ نظر ہو سکتا ہے کچھ اس طرح، جہاں $ صارف کا نام پوسٹ ڈیٹا صارف کا نام اور پاس پوسٹ اعداد و شمار کے پاس ہے. اور پھر ہم صرف، کا کہنا ہے کہ، ہمارے سوال کے پھانسی ٹھیک ہے، اچھی طرح سے، ہمارے استفسار جا رہا ہے ہمارے صارفین کی طرف سے منتخب کریں، جہاں صارف کا نام ہے وہ پیش ہے کہ ایک. اور پاس پاس ہے، پاس ورڈ میل مطلب یہ ہے کہ. اب، کیا ہوا اگر اس کی بجائے اصل میں کی طرح، ایک حقیقی پاس جمع کرانے کی 12345 اور کا کہنا ہے کہ کاںٹا میں اندازہ پاس ورڈ اور ہیک کرنے کی کوشش ان اکاؤنٹ، کیا اس کی بجائے اگر وہ اس پیش. وہ شاید میں ٹائپ کر سکتے ہیں ایک پاس ورڈ میں ایک اندازہ. اور پھر وہ ختم کریں گے اقتباس تو میں ٹائپ کریں یا = 1 1. یہ SQL میں براہ راست رفتار گے کچھ اس طرح نظر کرنے کے سوال. صارفین کی طرف سے منتخب کریں، جہاں صارف کا نام = prongs اور پاس للی یا 1 = 1 کے برابر ہے. تو پاس یا تو ہے صحیح یا 1 = 1 ہو، ہمیشہ جو سچ ہے. تو اس صورت میں، بنیادی طور پر، ایک صارف کر سکتے ہیں اس کا فائدہ لے لو اور صرف لاگ ان خود میں اور ہیک کسی کے اکاؤنٹ. ہم سے بچنے کے لئے کرنا چاہتے ہیں یہی وجہ ہے کہ ایسا کرنے کے لئے کسی کو. لیکن خوش قسمتی سے، استفسار تقریب کی طرف سے جگہ دار میں گزر لے جائے گا آپ کے لئے اس کی دیکھ بھال. اس کے علاوہ، آپ عام طور پر چاہتے ہیں کبھی نہیں کروں گا اصل پاس ورڈ جمع کرنے کے لئے خود. ہم hashed یا مرموز یہی وجہ ہے کہ CS50 خزانہ میں ان کے. سامعین: ماضی کوئز بات کی کے بارے میں ایس کیو ایل فرار ڈور. ہم اس کے بارے میں فکر کرنے کی ضرورت ہے؟ ZAMYLA چان: یہ ایک اچھا سوال ہے. ایس کیو ایل فرار ڈور ضرور ہے ایک ہمارے سوال میں استعمال کیا گیا تھا اس تقریب. لیکن یقینی طور پر اس میں نظر آتے ہیں. مجھے پتہ ہے کہ منصفانہ کھیل ہے کہونگا آپ اس کو فون کرنے کی ضرورت چاہتے ہیں کہ ایک تار پر کام. جی ہاں، Belinda؟ سامعین: یہ ہے جب آپ کو کیسے پتہ ایک کی قیمت درج یا ڈبل ​​قیمت درج کرنے؟ اور بھی، میں آپ کے درس میں طرح محسوس نہ ہونے کے بارے میں کچھ ذکر کیا ہے [اشراوی] یا کچھ یا آخر میں دوسرا ایک اقتباس. میں نے لیکچر میں نشاندہی لگتا ہے کہ آپ apostrophe کے 1 حاصل کرنے کی توقع کر رہے ہیں اور پھر اپوسٹروفاس نہیں یا کچھ اور. سامعین: [اشراوی]. سامعین: بات آخری ایک ہے کہ دوسری باکس میں وہاں اقتباس وہاں نہیں ہونا چاہئے. [اشراوی] کیونکہ آپ کہ گزشتہ ایک لے جب باہر اقتباس اور مواد کے لئے ان سے ملنے کے آپ اس ہے تو پاس، کہاں ہے استفسار، ایک اقتباس میں ہے پہلے ہی آخر. آپ اس ایک اقتباس استعمال کرنا چاہتے ہیں ایک کا سامنا ہے کہ ایک کے طور پر [اشراوی]. تو کیا ہے کہ متن میں اصل ہے باکس کہ نہیں ہونا چاہئے. ZAMYLA چان: میں نے اس کے تبدیل کر دیں گے. ٹھیک ہے. ذہن میں کوئی سوال نہیں ہیں، تو میں کروں گا بات کرنے کے یوسف کو اس پر منتقل جاوا سکرپٹ کے بارے میں، وغیرہ. [تعریف] جوزف ONG: تو ہم چل رہے ہیں تھوڑا سا پیچھے. آپ کو چھوڑ کرنے کے لئے ہے اگر ایسا ہے تو، یہ ٹھیک ہے. لیکن ہم آپ کو آپ کے سر رکھنے کو کہتے ہیں آپ درمیان میں ہیں، اگر ایسا ہے تو آپ کیمرے بلاک اور آپ استعمال نہیں کرتے آپ کے لئے ہے تو واپس باہر نکلیں. میں راہ کی طرف سے جوزف ہوں. ہیلو. ٹیسٹ، ٹیسٹ. ڈین، کہ اچھا ہے؟ ڈاؤن لوڈ، اتارنا. تو ویڈیو بھی پوسٹ کیا جائے گا ان لوگوں کے لئے آن لائن ہے اب جانا ہوگا. عجیب. ٹھیک ہے. تو کوئز کا جائزہ لیں. یہ ایک بلی ہے. شاید نہیں ہے جو اب، جاوا سکرپٹ، تم لوگوں سے کچھ کے لئے aww کے طور پر. ٹھیک ہے. تو یہ سب سے پہلے ہے، کیا Zamyla سے یاد. پی ایچ پی کی ہے یاد رکھیں کہ سرور پر چلانے کے. اور وقت کی بہت، تم لوگ loops کے لکھا پی ایچ پی میں حق، ایچ ٹی ایم ایل کو پرنٹ کرنے کے لئے؟ اس کوڈ executes ہے تو ایک بار، کہ آپ کو پرنٹ ہے کہ ایچ ٹی ایم ایل کی پیداوار صارف کو بھیجا جاتا ہے. ایسا ہوتا ہے اور ایک بار، کوئی پی ایچ پی کر سکتے ہیں آپ کے صفحے کو دوبارہ لوڈ کریں جب تک کے،، چلایا جائے پی ایچ پی کی reexecutes جو کہ کورس کی،. لیکن آپ ہیں کہ ایچ ٹی ایم ایل کو پرنٹ ایک بار، آپ کہیں نہیں جا سکتے. تو ہے کہ ایچ ٹی ایم ایل، صارف پر بھیجا جاتا ہے یہاں، براؤزر ہے جس میں جہاں ملو کمپیوٹر استعمال کر رہا ہے. اور اس کے ساتھ ساتھ، کئی چیزیں ہیں ہم صارف کو ایچ ٹی ایم ایل بھیج ایک بار. کبھی کبھی ہم نے ایسا کچھ کرنا چاہتے ہیں تم سے کچھ پر کلک کریں جب، ہم چاہتے ہیں ، کے ان قسم کے پاپ الرٹ باکس آپ کو دبائیں جب کی طرح بات چیت، اہم، تم پر کچھ پر کلک کریں جب صفحہ، میں ایسا کرنے کے لئے کچھ کرنا چاہتے ہیں. ٹھیک ہے، اگر آپ کو پی ایچ پی کی reexecute نہیں کر سکتے ہیں کہ ایچ ٹی ایم ایل مقرر کیا گیا ہے کے کوڈ میں ایک بار. تو آپ اس کو کس طرح کرتے ہیں؟ ہم نے ایک نئی زبان کو متعارف کرانے براؤزر میں چلتا ہے جو جاوا سکرپٹ، کہ آپ کو کام کرنے کی اجازت دیتا ہے آپ کو حاصل کرنے کے بعد کو HTML سرور سے ان کے. ہم اسے ایک کلائنٹ سائڈ فون کیوں اور یہ ہے پروگرامنگ زبان. یہ آپ کے کمپیوٹر پر کام کرتا ہے - کلائنٹ. اب تک اس کے بارے میں کوئی سوال ہے؟ اس پیرا میٹر کو لوگوں کو احساس ہے؟ ٹھیک ہے. اچھا. ٹھیک ہے. تو پہلی بات یہ نوٹ کرنا جاوا سکرپٹ کو پی ایچ پی کی نہیں ہے. وہ کچھ مختلف نحو ہے، جو ہم میں جائیں گے. اور وہ بہت مختلف استعمال ہے. جاوا سکرپٹ، ایک بار پھر، کے لئے آپ کلائنٹ کے لئے براؤزر،. سرور کسی پر کہیں چلتا ہے معلومات بھیجتا ہے کہ کمپیوٹر آپ کے لئے، درست؟ تو ہم پی ایچ پی کوڈ لکھنے کے لئے تم سے پوچھنا تو ایک امتحان کے سوال پر، لکھ نہیں جاوا اسکرپٹ اور اس کے برعکس. آپ کو صرف پوائنٹس کھو دیں گے، اور یہ درست نہیں ہو گا. تو کچھ میں حاصل کرنے دو نحو اختلافات - بائیں پر جاوا اسکرپٹ اور حق پر پی ایچ پی. آپ کے ساتھ محسوس کریں گے پہلی بات جاوا سکرپٹ کو، ہم سے متغیر کا اعلان متغیر مطلوبہ الفاظ - وی ایک آر. پی ایچ پی کی ڈالر کا نشان استعمال کیا جاتا ہے، کیا Zamyla پہلے بات چیت کے طور پر. آپ کو ایک ساہچری کا اعلان کرنا چاہتے ہیں تو صف، ہم واقف نحو دیکھ پی ایچ پی کے ساتھ دائیں جانب. بائیں جانب، بجائے آپ گھوبگھرالی منحنی خطوط وحدانی کا استعمال کرتے ہیں. اور پھر آپ کی چابیاں بائیں طرف ہیں. اس کے بعد آپ ایک بڑی آنت ہے. اور پھر آپ اقدار ہیں جو آپ چاہتے ہیں. تو یہ آپ کو پی ایچ پی میں یہ کروں گا کہ کس طرح ہے کہ دوسری کے ساتھ دائیں جانب ملو میں شروع ہوتا ہے اس لائن. اور یہ کہ آپ پر کیا کریں گے کس طرح ہے اگر آپ چاہتے ہیں جاوا سکرپٹ میں کی طرف چھوڑ دیا ہم کسی چیز کو کہتے ہیں. اور جاوا سکرپٹ میں اشیاء ہیں صرف ساہچری arrays. تو آپ میں، کھیتوں تک رسائی حاصل کرنا چاہتے ہیں تو پی ایچ پی کی آپ کو اس بریکٹ نحو کا استعمال کرتے ہیں. اور اس طرح، آپ کو reassign کر سکتے ہیں لارین کرنے کے لئے اس کے مالک کے میدان. ٹھیک ہے، جاوا سکرپٹ میں، اگر ایک کے لئے چاہتے ہیں آپ کر سکتے ہیں، ایک کھیت تک رسائی اور اسے تبدیل ڈاٹ نحو کا استعمال کرتے ہیں. تم نے بھی بریکٹ نحو استعمال کر سکتے ہیں. لیکن آپ کو استعمال نہیں کر سکتے پی ایچ پی میں ڈاٹ نحو. یہ کام نہیں کرے گا. یہ صرف پی ایچ پی میں کام کرتا ہے. اور آخر میں، چیزیں پرنٹ کرنے کے لئے کنسول، آپ console.log، استعمال کرتے ہیں جس تم لوگ pset8 میں ایک بہت استعمال کرتے ہیں. آپ اس console.log کر سکتے ہیں. آپ میں ایک صف پرنٹ کرنے کے لئے چاہتے ہیں تو پی ایچ پی، آپ کو پرنٹ R استعمال کرنے کے لئے ہے. اور دائیں جانب پر، آپ میں ہیش دیکھ وہاں سٹرنگ concatenation. کسی نے پہلے سے پوچھا. میں جاوا سکرپٹ میں ایک پلس کا استعمال کرتے ہیں. میں کچھ سلسلہ بندی کرنا چاہتے ہیں تو پی ایچ پی میں، میں نقطہ کا استعمال. یہ مختلف ہیں. آپ پی ایچ پی کوڈ لکھ رہے ہیں، ایک پلس کا استعمال نہیں کرتے. آپ کو جاوا اسکرپٹ لکھ رہے ہیں کوڈ، ایک نقطہ نہیں لکھتے. یہ غلط ہو جائے گا. اور تم اداس ہو جائے گا. تو نحو اختلافات. ، آپ نحو جانتے ہیں کیونکہ آپ کے پاس ہے تو ایک سوال لکھیں اور آپ کو نحو کا استعمال کرتے ہیں غلط زبان سے، یہ کام نہیں کرے گا. اور یہ غلط ہو جائے گا. تو کچھ کنٹرول کے بارے میں بات آپ استعمال کرتے ہیں کہ کس طرح، اختلافات بہاؤ ان میں سے ہر میں loops. ZAMYLA دائیں طرف گئے. دائیں جانب چیزیں واقف ہونا چاہئے. کی بائیں جانب دیکھو. آپ کو جاوا اسکرپٹ میں ن لوپ کے لئے استعمال کرتے ہیں، آپ لوپ متغیر، متغیر وہاں میں، صف کی چابیاں پر لوپ. تو آپ کا نام، گھر، اور کردار کو دیکھنے کے. مجھے console.log تو، حاصل نام، گھر، اور کردار. وہ چابیاں ہیں. جاوا اسکرپٹ میں، ایک جعلی foreach لوپ جاتا ہے اس صف کی اقدار پر. تو آپ وہ میں دونوں ہیں محسوس. لیکن یہاں پی ایچ پی کی طرف سے میں، یہ پرنٹ ملو، CS50، اور شوبنکر باہر. وہ پی ایچ پی میں اقدار ہیں. تو یہ ان دو مختلف ہیں کس طرح ہیں مختلف زبانوں میں. تو آپ کو ایک جعلی foreach کا استعمال کرتے ہوئے کر رہے ہیں لوپ، فرض نہیں ہے کہ یہ آپ کی چابیاں دیتا ہے. آپ ن لوپ کے لئے استعمال کر رہے ہیں اور اگر ایسا نہیں کرتے یہ آپ کو اقدار فراہم کرتا ہے فرض. اس نے اب تک احساس ہے؟ اگلی سلائڈ آپ کو دکھانے کے لئے جا رہا ہے آپ میں مخالف تک رسائی حاصل کر سکتے ہیں کس طرح ان میں سے ہر. ٹھیک ہے، آپ کو جاوا سکرپٹ میں اہم ہے تو اور آپ، قیمت باہر کرنا چاہتے ہیں میں آپ کو صرف انڈیکس اس کے ساتھ صف. تو میں ملو آپ کو ملے گا کیا آپ چاہتے ہیں - اقدار. پی ایچ پی میں یہ مختلف نحو ہے. آپ واقعی یہ جاننا چاہتے ہیں تو، میں نہیں ہم نے ابھی تک آپ کو یہ دکھایا ہے لگتا ہے. آپ دلچسپی رکھتے ہیں تو، آپ کو استعمال کر سکتے ہیں حق پر یہ اضافی نحو اصل میں آپ کو حاصل کرنے دیں گے اس طرف پی ایچ پی میں چابیاں آپ استعمال کر رہے ہیں جب ایک جعلی foreach لوپ. trivia کی تو صرف تھوڑا سا اگر آپ دلچسپی رکھتے ہیں تو. تو یہ صرف مظاہرہ کرنے کے لئے ہے ان دو loops کے درمیان اختلافات. تم جب ان کو ملا نہیں ایک سوال کے جواب پروگرامنگ. اس کے بارے میں کوئی سوال. ڈاؤن لوڈ، اتارنا. ٹھیک ہے. جاوا اسکرپٹ اشیاء. میں ان کے بارے میں بات کی تھی. وہ ساہچری arrays کی طرح ہو. میں آپ کو نوٹ کرنے کے لئے چاہوں گا ایک بات یہاں ہے کہ ایک ساہچری میں ایک قیمت صف جاوا سکرپٹ میں کچھ بھی ہو سکتا. یہ بھی ایک تقریب ہو سکتا ہے، وہاں کی طرح. میں ایک تقریب ہے کہ ایک اہم کی ایک قیمت ہے. اور میں اس تقریب کو فون کرنا چاہتے ہیں، میں صرف چھال تک رسائی حاصل. اور پھر میں قوسین ڈال اس کے بعد. اور یہ کام کرتا ہے. تو کوئی سوال ہے؟ کوئی؟ ٹھیک ہے. اچھا. پی ایچ پی کی طرح جاوا سکرپٹ،، شتل ٹائپ ہے. اس کا کیا مطلب ہے؟ یہ اقسام ہے. لیکن آپ کو ایک جاوا سکرپٹ کے اعلان جب متغیر، آپ متغیر میں کہنا. تم نے اسے نہیں کہتے. یہ بات نہیں ہے. آپ کو صرف یہ ایک متغیر ہے کا کہنا ہے کہ. اور پھر جاوا سکرپٹ کو سنبھال لیں گے آپ کے لئے ہڈ کے تحت اقسام. ہم آزادانہ طور پر کے درمیان تبدیل کر سکتے ہیں اس کی وجہ سے اقسام. تو میں نے ایک بڑی تعداد کے طور پر باہر سے شروع ہوتا ہے اس معاملے میں. اور پھر میں نے ایک تار ہے. اور میں اس کے لئے میں شامل. اور میں میں واپس reassign. ، کہ پہلی لائن پر میں تعداد ہے. دوسری لائن پر، اب میں ایک ہو جاتا ہے میں تبدیلی کرتے اسٹرنگ کے بعد. اور یہاں، میں صرف concatenating رہا ہوں تار پر یہ تعداد. تو آپ دیکھتے ہیں کہ میں ایک تھا اگرچہ پہلے حصہ میں عددی، اس طرح ہے کے تبدیل ہونے کی طرح تار اور پھر شامل کیا جا رہا ہے کہ خوش سٹرنگ پر. اور تو ہے کہ میرا کیا مطلب ہے ڈھیلے ٹائپ کرکے. یہ ہے کہ آپ کے درمیان میں تبدیل ہے بہت آسانی سے اقسام. اور یہ انتباہ پھینک نہیں ہے میں آپ C کی طرح. تو اب میں خوش مشتمل ہے سٹرنگ پر 123. اگلا. ہم نے بھی آزادانہ طور پر آپس میں موازنہ کر سکتے ہیں اقسام کے درمیان. تو کیا تم صرف == استعمال کرتے ہیں تو، آپ کا بہت بہت پی ایچ پی، جاوا سکرپٹ میں کی طرح ایک اسی طرح کی بات کرتا ہے. سٹرنگ 123 نمبر کے طور پر ایک ہی ہے 123 آپ ڈبل برابر استعمال کرتے ہیں. ٹرپل برابر استعمال کیا جاتا ہے، یہ بھی اس بات کو یقینی بنانے کے لئے چاہتا پروپوزل کی گذارش پر ایک ہی ہے. کہ ایک تار ہے اور یہ ہے کہ وجہ وہ دونوں ہو، اگرچہ ایک بڑی تعداد، 123، آپ ٹرپل استعمال کرتے ہیں تو تم جھوٹے حاصل، برابر. ڈبل کیس کے برابر میں، آپ کو، سچ حاصل ڈبل برابر نہیں ہے پروپوزل کی گذارش پرواہ. ٹرپل برابر کی قسم کے بارے میں پرواہ ہے. سوالات؟ ٹھیک ہے. اور جاوا سکرپٹ کے بارے میں ایک اور بات ہے تم جب تک گنجائش عالمی کی قسم ہے ایک تقریب میں. اور یہ ایک ہی کام کرتا ہے اصل میں پی ایچ پی میں راستہ. تو اس مثال کے ذریعے جانا. میں نے 999 میں قائم کی. اور پھر میں لوپ کے لئے اس میں جانا. تو میں نے کے لئے اس میں چھپائی رہا ہوں لوپ، 0، 1، 2، 3، 4 توقع. میں میں = 4 حاصل کرنے کے لئے. یہ 5 اب میں دھیرے کے لئے لوپ کے آخر. اور پھر یہ لوپ سے باہر ٹوٹ جاتا ہے، اس کو پورا نہیں ہے اب حالت. آپ کو کیا لگتا ہے کہ اگلا console.log پرنٹ؟ تو ہے کہ، یہ C میں سی میں کیا کریں گے ہے کیونکہ آپ میں باہر متغیر کی طرح ہے تو اور آپ کو ایک کی طرح، ایک لوپ کے اندر متغیر میں ہے لوپ کے لئے، تو یہ اس طرح ہے کہ کرتا ہے یہ scoped ہے کہ دو میں کی مختلف ہیں. جاوا اسکرپٹ میں، یہ صرف کرے گا اسی میں اس کا علاج. اس قدر تھا کیونکہ میں، 5 حاصل یہ لوپ سے باہر سے باہر کے بعد. لہذا ان میں کی ایک ہی میں ہیں. احساس ہے کہ ہے؟ ٹھیک ہے، اس سے سمجھ میں آتا ہے ایک جاوا سکرپٹ کے نقطہ نظر. لیکن ایک ہی مثال نہیں ہے وہ ہے سی پر لے مختلف scoping قوانین. جی ہاں. سامعین: [اشراوی] [اشراوی] تقریب سے باہر؟ جوزف ONG: تو جس تقریب سے باہر؟ تو میں صرف ایک سیکنڈ میں اس سے ملے گی. تو ہم (میں) FOO کو فون. اس میں FOO میں، دھیرے گزر پھر اس کے بعد، اور یہ نوشتہ. تو یہ 5 تھا. تو یہ 6 ہو جاتا ہے. لیکن میں کیا کے بارے میں بات کر رہا ہوں ہے اس تقریب میں ہے کہ میں. یہ ایک پیرامیٹر ہے، کیونکہ یہ ہے اس تقریب پر scoped. تو ایک بار میں نے اصل میں اس سے باہر حاصل تقریب، اب یہ جانا جا رہا ہے واپس پرانے میں. کہ میں صرف scoped ہے کیونکہ یہ ایک تقریب میں ہے. اور ہم گنجائش اور کام کرتا ہے. لیکن ہم باہر گنجائش نہیں ہے جاوا اسکرپٹ کے افعال میں سے. احساس ہے کہ ہے؟ جی ہاں. سوال. سامعین: [اشراوی] اسی؟ جوزف ONG: تو جی ہاں. پی ایچ پی میں، اس بات کے اسی قسم ہے. اصل میں ایک معمولی سوکشمتا ہے. لیکن اگر آپ کے بارے میں پوچھ سکتے ہیں جائزہ لینے کے بعد کہ. کیا تم واقعی جاننا کی ضرورت نہیں ہے کوئز کے لئے اس سوکشمتا. تمام intents اور مقاصد، جیسے کے لئے متغیر، عالمی اور پی ایچ پی، جب تک کہ وہ، ایک تقریب میں ایک جیسے ہیں جاوا سکرپٹ میں بات. جی ہاں. سامعین کیوں اس میں اجازت ہے جاوا اسکرپٹ اور کہاں نہیں؟ جوزف ONG: تو کیوں اس کی اجازت ہے جاوا سکرپٹ میں نہیں سی؟ یہ صرف کے ساتھ آیا ہے جس نے جاوا اسکرپٹ کا اس میں ٹھیک تھا کہ فیصلہ کیا جاوا اسکرپٹ کا. تو یہ صرف ایک پروگرامنگ زبان کی طرح ہے ہم کا کہنا ہے کہ کے طور پر کنونشن. جی ہاں. سامعین: تو کیوں کیا یہ 6 سے 5 کرنے کے لئے جانا؟ جوزف ONG: تو یہ، 5 6 سے گئے میں FOO میں میں منظور کی، وجہ FOO کی کے اندر اب میں، FOO کو پر scoped ہے دائرہ کار میں کام کرتا ہے میں موجود ہے کیونکہ جاوا اسکرپٹ کا. لیکن ایک بار میں یہاں سے باہر نکلنے کی وجہ سے تقریب scoped گیا تھا، مجھے صرف اندر تھا کہ باقاعدہ میں استعمال کرتے ہوئے بہاؤ کنٹرول کے باقی. احساس ہے؟ میں منتقل کر سکتے ہیں؟ ٹھیک ہے. ڈاؤن لوڈ، اتارنا. اس کی منظوری اشیاء ہے ریفرنس کی طرف سے منظور کر رہے ہیں. آپ کے پاس کس طرح پتہ ہے جب آپ کر سکتے C میں ایک صف اصل میں صف پر نظر ثانی؟ یہ جاوا سکرپٹ میں ایک ہی بات ہے. میں اس معاملے میں، کسی چیز کو پاس کرجاتے ہیں تو، میں اس catify تقریب میں ملو منظور. ملو شروع ہوتا ہے. اس کا نام ملو کیلے ہے. میں ایک تقریب میں اس اعتراض کو منتقل یہ ایک اعتراض، ایک ساہچری ہے کیونکہ جاوا سکرپٹ میں صف. میں ایک آپریشن تو اس تقریب میں، یہ اصل اعتراض کو تبدیل. تو یہ صرف اشیاء کے لئے ہو گا جاوا سکرپٹ میں، صرف یہ ہوتا ہے سی تو ملو کے نام کے اندر arrays کے لئے اصل میں اب بلی بن جائے گا. احساس ہے کہ ہے؟ تو یہ صرف اشیاء کے لئے کام کرتا ہے. اشیاء ریفرنس کی طرف سے منظور کر رہے ہیں. جی ہاں. سامعین: تو آپ کہہ رہے ہیں کہ متغیر میں اس کے برعکس. جوزف ONG: جی ہاں. جو متغیر میں صرف تھا ایک بڑی تعداد، ٹھیک ہے؟ آپ کو ایک کے پاس جب یہ C میں کی طرح ہے ایک عددی، یہ ایک کاپی کرتا ہے. اور تم ایک صف کو منتقل کرتے ہیں، یہ اصل میں میں اصل صف تبدیل سی ہی بات کے ساتھ ہوتا ہے اس صورت میں جاوا سکرپٹ کو. ٹھیک ہے. اور اگلے، ملو دکھ کی بات ہے کیونکہ اب وہ ایک بلی ہے. اس کے بعد اصل میں ملو تھا کاروباری تعلیم اور تربیت کے لئے کچھ سفر. تو ہم کس طرح جاوا سکرپٹ کو استعمال کرتے ہیں ایک ویب کے صفحے میں؟ ہم نے اسے شامل کر سکتے ہیں. یہ پٹی ٹیگ کے ساتھ ایچ ٹی ایم ایل کوڈ ہے. تو میں وہاں پٹی ٹیگز ہے. اور پھر میں نے کچھ جاوا اسکرپٹ ڈال سکرپٹ ٹیگز کے اندر اندر کوڈ. اور پھر اس executes ہے. میں صرف اس طرح کرتے ہیں، یہ ہے ان لائن جاوا اسکرپٹ کا کہا جاتا ہے. یہ، گندا کی طرح ہے، کیونکہ جاوا سکرپٹ کو HTML میں اصل میں ہے. بہت اچھے ایسا کرنے کے لئے ایک بہتر طریقہ،، ایک میں آپ کو جاوا اسکرپٹ لکھنے کے لئے ہے بیرونی فائل اور پھر فراہم کرتے ہیں ایک ذریعہ کے ساتھ سکرپٹ ٹیگ. اور یہ کہ جاوا اسکرپٹ فائل میں جائیں گے سے جاوا سکرپٹ کے کوڈ کو پڑھنے کے کہ بجائے فائل. اور اس طرح، آپ کی ایک بہت نہیں ہے آپ کے شروع میں جاوا سکرپٹ کو کرتا ہے جو HTML فائل، یہ واقعی میں گندا. آپ کو صرف کہیں اور رکھ دیا. اور پھر یہ وہاں سے پڑھا جائے گا. کہ سمجھ میں آتا ہے کیا؟ پلیسمینٹ معاملات. اس خاص معاملے میں، سکرپٹ کے جسم کے سامنے ہے. میں نے اس پر عمل تو نہیں ہے ابھی تک جسم میں کچھ بھی نہیں. شاید یہ تھوڑا سا زیادہ کر دے گا میں اس اگلے حصہ ظاہر ہے جب احساس. اس صورت میں، سکرپٹ DIV کے بعد آتا ہے. تو DIV اصل میں ظاہر ہوتا ہے پہلے صفحے پر. یہاں یہ چھوٹا سا سرخ دائرے میں، آپ کو متن ظاہر ہوتا ہے کو دیکھنے کے. اور پھر الرٹ ظاہر کرتا ہے. پہلی صورت میں، کیونکہ سکرپٹ DIV سے پہلے تھا، پہلا ظاہر کرتا ہے. اور پھر DIV کے بعد پتہ چلتا ہے آپ کو باکس کو برطرف. تو پھانسی فرق پڑتا ہے. تو ہم یہ بات ذہن میں رکھیں گے. یہ اہم ہو جائے گا تھوڑا سا میں. ٹھیک ہے. اتنی اچھی طرح سے، کس طرح آپ کا انتظار ہے پورے صفحے کو تم سے پہلے تو بھری ہوئی ہے کچھ کوڈ کو پھانسی؟ ہم اس کو ایک چھوٹی سی میں مل جائے گا تھوڑا بعد بھی. لیکن صرف اس جگہ کا تعین کرنے کو برقرار رکھنے کے جب ہم نے کے لئے ذہن میں معاملات ایک اور سلائڈ کے لئے آئے. تو اب ہم ڈوم حاصل کرنے کے لئے. اور ڈوم کیا ہے؟ آپ کو HTML کوڈ میں نظر آتے ہیں تو، یہ صرف ہے سکرین پر متن کے ایک گروپ. تو کس طرح جاوا سکرپٹ کو معلوم ہے کہ ہے یہ ایک HTML عنصر ہے؟ تو ہم کچھ میموری ہوگا اس کی نمائندگی کہ ہم ساخت. اور ہم یاد میں یہ ہے جب بھی جاوا اسکرپٹ میں نمائندگی، ہم کہتے ہیں ڈوم ہے. اور یہ لوگوں نے فیصلہ کیا ہے کہ یہ صرف ایک طریقہ ہے ہم اس کی نمائندگی کرتے ہیں کہ کے طور پر ایچ ٹی ایم ایل کی ساخت. اور یہ ڈوم کی طرح لگتی ہے؟ ٹھیک ہے، میموری کی نمائندگی میں، ہم اس متن کو لے. اور ہم میموری میں تبدیل نمائندگی. تو یہ ایچ ٹی ایم ایل ہے. تو ہم نے سب سے پہلے باہر تلاش ہے کہ ہر ڈوم درخت ایک دستاویز ہے. یہ ایک درخت کی طرح لگتا ہے. اور دستاویز ایچ ٹی ایم ایل پر مشتمل ہے ٹیگ، اصل میں سب کچھ اب اس کے اندر. HTML ٹیگ کے دو بچے ہیں. یہ ایک کے سر ہے. سر، آپ پوٹ کاری پر نظر ڈالیں تو وہاں اس کا ڈھانچہ ہے کس طرح بند ٹیگز کے درمیان، سر ایک بچے کی ہے. بچے کا عنوان ہے. بالکل ٹھیک. اب، ہم ایک جسم بچہ ہے. اور پھر اس کے جسم کو ایک ہے بچے کے خاندان سے ملاقات کی. اور اس کے خاندان کے تین بچے ہیں - ، سب سے قدیم مشرق، اور سب سے کم عمر. تو آپ کو ایک تصویر کو اپنی طرف متوجہ کس طرح پتہ ہونا چاہیئے اس طرح ہم کس طرح آپ سے پوچھنا جب ہم دے جب ایک تصویر کو اپنی طرف متوجہ آپ کو بائیں طرف ایچ ٹی ایم ایل. ڈوم درخت پیدا کرنے کے لئے کس طرح جانتے ہیں. اور ان چیزوں کے اندر، صرف وہاں ہے میں نمائندگی کی ہے جس میں کچھ متن، کے طور پر چھوٹی سی کے خانوں. یہ ڈوم درخت کا ڈھانچہ کرتا ہے احساس اور ڈوم کیا ہے؟ تو P کے لئے کیا ہے؟ یہاں پر، P وہاں اس ٹیگ میں نمائندگی کرتا ہے ایک HTML میں پیراگراف ٹیگ. تو آپ اسے دیکھ سکتے ہیں. لیکن یہ صرف اس کے کچھ کا مطلب ہے کچھ متن کے لئے جگہ. اور یہ کچھ پہلے سے طے شدہ سی ایس ایس اسٹائل ہے، یہ ایک پیراگراف ٹیگ ہے کیونکہ. لیکن واقعی کے بارے میں فکر نہ کرو اس حصے میں بہت زیادہ. صرف یہ ایک پلیس ہولڈر ہے کچھ متن کے لئے. جی ہاں. سوال؟ جی ہاں. سامعین: آپ صرف سی ایس ایس کا ذکر کیا. ہیش خاندان اور ہیش یہ سب چیزیں بنیادی طور پر ہے سی ایس ایس میں شناخت کی نمائندگی؟ جوزف ONG: جی ہاں، بالکل. میں ان hashes مل جائے گا ایک دوسرے میں مطلب. انجیلا سی ایس ایس گئے تو وہ سی ایس ایس سلیکٹرز کے بارے میں بات. یہ سی ایس ایس سلیکٹرز ہیں وہ کے بارے میں بات کر رہا تھا. جی ہاں، روب؟ روب Bowden: میں نے بھی تبصرہ کریں گے عنوان ٹیگ کے اندر اس ڈوم بھی ایک متن نوڈ ہے. جوزف ONG: ٹھیک ہے. ، عنوان ٹیگ کے اندر تو میں کچھ متن ڈوم ہے. تو واقعی، اس عنوان کی طرح ہونا چاہئے چھوٹے باکس اس کے ساتھ ساتھ آنے. لیکن یہ واقعی کوئی فرق نہیں پڑتا اس معاملے میں بہت زیادہ. ہم واقعی ٹیکسٹ نوڈس کے بارے میں پرواہ نہیں ہے، ہم بہت زیادہ، ان کے فون کے طور پر. ٹھیک ہے، ہم کرتے ہیں. ظاہر ہے، ہم کرتے ہیں. اور میں نے درست کریں گے کہ جب میں اسے دوبارہ اپ لوڈ کریں. احساس ہے کہ ہے؟ تو ہم کس طرح ڈوم کے ساتھ کام کرتے ہیں؟ آپ میں ڈوم کے ساتھ نمٹنے جب بھی جاوا سکرپٹ، دو اقدامات ہیں. آپ کو ایک ڈوم عنصر کو منتخب کریں. اور پھر آپ کو اس کے لئے کام کرتے ہیں. تو اس صورت میں، abstractly، میں نے درمیانی عنصر منتخب کیا. اور پھر چیزیں کرنے کے ایک مثال اس کے متن کو تبدیل کرنے کی جائے گی. اس باب کرنے کے لئے استعمال. اب، میں نے اس کے ساتھ کیا میں بدل گیا تھا اس معاملے میں ملو باب. تو ہم کس طرح اصل میں یہ کروں؟ ہم منتخب کس طرح کرتے ہیں؟ اور ہم کس طرح چیزیں کر کرتے بات یہ ہے کہ ایک بار ہم نے یہ لے لیا ہے؟ ٹھیک ہے، جس طرح تم لوگ اس کے سیکھا ہے اس کلاس میں ہم کچھ کا استعمال کرتے ہوئے کی طرف سے ہے jQuery کے کہا جاتا ہے. تو jQuery کی کیا ہے؟ jQuery کی ہے کہ ایک لائبریری ہے لکھنے کے لئے آسان جاوا اسکرپٹ کا. تو کسی وقت لیا اور jQuery لکھا. jQuery کے اصل میں لکھا ہے جاوا سکرپٹ میں. اور پھر وہ ہم اب، یہ کیا ہے، کیونکہ افعال میں سے ایک مکمل جھوبڈ ہے کہ ہم نے اس کے بنانے کے لئے استعمال کر سکتے ہیں ہماری بہت آسان رہتا ہے. تو کی کچھ کیا ہیں اس سے فرق پڑتا ہے؟ یہ آسان عناصر کو منتخب کرتا ہے. یہ ایچ ٹی ایم ایل کو تبدیل کرتا ہے، آسان کلاس انہوں نے مزید کہا. یہ ایجیکس آسان بنا دیتا ہے. ہم ایک دوسرے میں اس سے ملے گی. اور یہ سی لائبریریوں کے مطابق ہے. تو آپ کو، string.h شامل آپ strlen ہو. آپ، ان تمام چیزوں کے strcpy حاصل. آپ کے jQuery شامل ہیں تو، آپ کو اچھا ملتا ہے تبدیلی کے عناصر کو منتخب کرنے کے طریقوں چیزیں، وغیرہ. آپ کو اضافی فعالیت حاصل ہے کہ جاوا سکرپٹ کو آپ کو دے نہیں ہے. تو jQuery جاوا سکرپٹ نہیں ہے. jQuery میں لکھا ہے کہ ایک لائبریری ہے جاوا اسکرپٹ کا ہے کہ جاوا اسکرپٹ لکھنے کے لئے آسان. تو jQuery کی ایک پروگرامنگ نہیں ہے زبان. لیکن جاوا اسکرپٹ ہے. بنانے کے. یقینی بنائیں کہ آپ کا حق آپ کی اصطلاح حاصل. کوئی سوال؟ جی ہاں. یہ ایک سوال ہے؟ ٹھیک ہے. تو کس طرح آپ کے jQuery استعمال کرتے ہیں؟ ٹھیک ہے، آپ کو کچھ لکھ رہے ہیں جب آپ کو ایک جاوا سکرپٹ کے کوڈ میں شامل ہیں اور jQuery کے آپ کی فائل کے سب سے اوپر ایک کے طور پر سکرپٹ فائل، آپ کو ڈالر کا نشان استعمال اب jQuery کے تک رسائی حاصل کرنے کے لئے. اور اس سے مختلف ہے پی ایچ پی میں ڈالر سائن ان کریں. یہ ایک ہی علامت تم ہو اپنے کی بورڈ پر ٹائپ کریں. لیکن وہ بہت مختلف چیزیں ہیں مطلب. پی ایچ پی میں ڈالر کی نشانی اس کا مطلب میں ایک متغیر کا اعلان ہے. آپ کو شامل کر دیا ہے جب جاوا اسکرپٹ میں، jQuery کے، یہ jquery کے لئے کھڑا ہے. تاکہ ذہن میں رکھنے کے. تو ہم کس طرح ڈوم عناصر کو منتخب کر سکتے ہیں؟ ٹھیک ہے، جب آپ کو اس بدسورت جاوا اسکرپٹ کرنا جس طرح سے، آپ تک رسائی حاصل عالمی متغیر دستاویز. اور پھر آپ کی شناخت خاندان کی طرف سے عنصر ملتا ہے. یہ واقعی طویل اور wordy ہے اور نہ بہت اچھا. یا آپ کو تمام عناصر کو حاصل کر سکتے ہیں کہ ایک P ٹیگ کے ہیں. جاوا سکرپٹ میں بھی کام کرتا ہے. لیکن ہم سچ میں ظاہر ہوا کبھی نہیں آپ نحو بہت زیادہ. ہم سے ظاہر ہوتا ہے کیا آپ کے jQuery تھا. وہاں تو اس پورے سلیکٹر کہ صرف ہو جاتا ہے، جاوا سکرپٹ میں ظاہر کیا گیا تھا یہ بہت اچھا ڈالر گاڑھا hashtag کے خاندان سائن ان کریں. اور $ P، اس طرح صرف جہاں. آپ سب P ٹیگز منتخب کرنے کے لئے چاہتے ہیں تو ایک خاندان کے اندر، ہم ایک جگہ میں ڈال دیا دونوں کے درمیان. اور اب، ہم سب P حاصل ایک خاندان کے اندر ٹیگز. اور واقف نظر آتے ہیں؟ ٹھیک ہے، انجیلا کے بارے میں بات سی ایس ایس سلیکٹرز. مجھے ایک دوسری دو. اور اس طرح ایک عنصر کو منتخب کرنے کے لئے، آپ کو صرف آپ کے طور پر ایک ہی چیز کا استعمال کرتے ہیں ایک سی ایس ایس سلیکٹر کے ساتھ کیا کریں گے. آپ کے سامنے میں ایک ہیش ڈال اس کے، اس کی شناخت کی طرف سے منتخب. ایک نقطہ کلاس کی طرف سے منتخب. آپ کو صرف بغیر بات ہے تو hashes یا نقطوں کی، یہ ان ٹیگز کا انتخاب. سوال. جی ہاں؟ سامعین: کیا ہم میں نقطہ کا استعمال جب ہماری ایچ ٹی ایم ایل، jQuery کی ہے کہ نہیں ہے؟ جوزف ONG: ہمارے HTML میں ڈاٹ ایک جاوا سکرپٹ کے بات ہے. یہ ایک jQuery کی بات نہیں ہے. لوگ آپ کے ساتھ یہ سیکھا طریقہ jQuery کی. ایچ ٹی ایم ایل کا استعمال کرتے ہیں کے لئے ہے. اور پھر آپ کو یہ منظور ہے جو کچھ بھی ایچ ٹی ایم ایل کی جا رہی ہے. تو میں صرف میں اس سے ملے گی اصل میں ایک دوسرے. تو ہم کس طرح عنصر چیزیں کرتے ہیں ایک بار ہم نے اسے منتخب کیا ہے؟ تو اس کی ایک مثال ہے ایک عنصر کو منتخب. تو اب، ہم اس پر چیزیں کرنا چاہتے ہیں. تو اس صورت میں، مجھے واپس جانے دو گزشتہ سلائڈ پر. اس سے پہلے باب تھا. اور میں اس کو تبدیل کرنا چاہتے ملو ایچ ٹی ایم ایل کے اندر. تو میں نے ایچ ٹی ایم ایل تقریب کو فون عنصر سے. HTML جو تقریب ہے عنصر کا ایک طریقہ. اور پھر میں نے یہ کیا دے کیا میں HTML ہونا چاہتے ہیں. اور یہ صرف کے اندر کیا جگہ لے لیتا ہے میں اس کو دے جو کچھ بھی کے ساتھ اس ٹیگ. جی ہاں. سوال؟ سامعین: hashtag کے استعمال کیا جاتا ہے صرف jquery کے لئے. [اشراوی] ہم اس کا استعمال نہیں کریں گے. جوزف ONG: جی ہاں، بالکل. لیکن بہت زیادہ فکر نہ کرو کے بارے میں خالص جاوا اسکرپٹ کا. میں صرف تم لوگوں پر توجہ مرکوز کرنا چاہتے ہیں آپ کو کس طرح ، jQuery کے ساتھ ایسا کریں گے کیونکہ یہ ضروری جا رہا ہے گئے تمام سوالات پر حصہ. ٹھیک ہے. بالکل ٹھیک. تو تم اس hashtag کے دیکھتے ہیں، تاکہ کے ساتھ عنصر کو منتخب کرنے کے مساوی ہے کیونکہ اس hashtag کے کی ID مشرق. hashtag کے ID کا مطلب ہے. اور یہ عنصر مشرق کی ID ہے. تو ہے کہ ہم منتخب عنصر ہے. سامعین: [اشراوی]. ڈالر کا نشان hashtag کے [اشراوی]؟ جوزف ONG: تو نہیں. سوال آپ استعمال کر سکتے ہیں. قیمت. اور. قیمت صرف عناصر پر کام کرتا ہے آدانوں ہیں. jQuery میں، یہ ہو جائے گا . ویل، نہیں. قیمت. تو میں نے ایک چھوٹی سی مثال کے طور پر مل جائے گا کہ مجموعہ میں یہ سب ثبوت ایک دوسرے میں. لیکن میں یہ ایک چھوٹا سا ٹکڑا کام کرتا ہے لگتا ہے اب تک لوگوں کو سمجھ میں آتا ہے. ایچ ٹی ایم ایل کو تبدیل کرنا چاہتے ہیں، ایچ ٹی ایم ایل کے طریقہ کار کو فون کریں. جی ہاں. سامعین: آپ کی وضاحت کر سکتے ہیں پھر طریقہ؟ جوزف ONG: تو ایک طریقہ ہے صرف ایک اس میں سے ایک سے تعلق رکھتا ہے اس تقریب، کیس، ان ڈوم عناصر میں سے ایک، آپ کو میں دیکھ رہا ہوں کیونکہ پہلا عنصر منتخب کیا. اصل میں، مجھے ماؤس کا استعمال کرتے ہیں. میں سب سے پہلے عنصر منتخب کیا. اور پھر میں نے اس کے ایچ ٹی ایم ایل کہا جاتا ہے یہ تھا اس تقریب. اور اس تقریب سے تعلق رکھتا ہے کیونکہ اس بات کو ہم ایک طریقہ یہ کہتے ہیں. یہ اس کے لئے صرف ایک پسند ہیں نام ہے. پھر سے کہو. تو ہم منتخب، یاد اب عنصر. اور ہم کے اندر ڈال دیا ہے عنصر متغیر. صحیح؟ تو ہم پر HTML تبدیل کرنے کے لئے چاہتے ہیں جب کے اندر، یہ آپ کو، اس سے پہلے باب تھا کیونکہ ملو کہ متن کو تبدیل کرنا چاہتے ہیں. تو ہم ایچ ٹی ایم ایل کو کال کریں. اور ہم نے اسے بتا کیا اندر ایچ ٹی ایم ایل اس عنصر اب ہونا چاہئے. اور اس طرح یہ، ملو کرنے کے لئے اس میں تبدیلی میں نے اسے ملو دیا ہے. سامعین: تو وہ ایک ساتھ کام کر رہے ہیں. [اشراوی] جوزف ONG: جی ہاں، جی ہاں. انہوں نے ایک ساتھ مل کر کام کر رہے ہیں. تو ان میں سے ایک کا انتخاب عنصر سب سے پہلے. اور دوسری کرتا ہے اس کے لئے کچھ. جی ہاں. سامعین: [اشراوی]. اس طریقہ کار کے HTML میں سے مختلف ہے تو اگر آپ اصل برابر طریقہ ہے. جوزف ONG: جی ہاں. کہ ایک مختلف طریقہ ہے. کہ ایک مختلف طریقہ ہے. اور ہم صرف ایک دوسرے میں احاطہ کر سکتے ہیں ہم ایک مثال کے طور پر جب. مجھے یقین ہے کہ ہم کو تیز بنانے کے لئے چاہتے ہیں، ہم وقت سے باہر چلا رہے ہیں کیونکہ. لیکن اب ہم وقت کے جس طرح چلائے گئے. ٹھیک ہے. ڈاؤن لوڈ، اتارنا. آپ کو ایک کلاس شامل کرنا چاہتے ہیں تو، وہاں ہے بھی شامل کلاس طریقہ. یہ کیا صرف ایک مثال ہے آپ jQuery کے ساتھ کیا کر سکتے ہیں. یہ صرف ایک کلاس کا اضافہ کر دیتی. آپ کو اس کے دور کرنے کے لئے چاہتے ہیں، تو، آپ کو دور کہہ سکتے ہیں. یہی وجہ ہے کہ آپ کر سکتے ہیں صرف ایک چیز ہے. آپ کر سکتے ہیں کی چیزوں کی تو مثالیں. تو میں صرف میں ڈال کر سکتے ہیں اس طرح سب سے اوپر؟ سب سے کم عمر کو ہٹا دیں. میں صرف یہ ہے کہ جاوا سکرپٹ کو پھانسی تو میری فائل کے سب سے اوپر، یہ کام کرے گا؟ ٹھیک ہے. مشرق ابھی تک موجود نہیں ہے. تو اس کا کام کرنے کے لئے نہیں جا رہا ہے. پھانسی کے حکم کے. یہ سب سے پہلے سب سے اوپر کو جاتا ہے. کیا ہے؟ سامعین: سب سے کم عمر ابھی تک موجود نہیں ہے؟ جوزف ONG: جی ہاں. سب سے کم عمر ابھی تک موجود نہیں ہے. بالکل ٹھیک. سامعین: آپ کو مشرق کہا. جوزف ONG: معذرت. سب سے کم عمر ابھی تک موجود نہیں ہے. اور دوسری بات میں نہیں ہے jQuery کے شامل سکرپٹ ایسآرسی پوچھیں دائر. تو اس کا کام کرنے کے لئے نہیں جا رہا ہے. اصل میں، میں نے ایسا نہیں کیا ہے جو اگلی سلائڈ، یا تو ٹھیک کرنے کے لئے کی توقع. لیکن ہم اس طرح جاوا اسکرپٹ کا ہے واقعہ پر مبنی ہے. تو کیا ہم کرتے ہیں ہم نے ایک تقریب کا استعمال کرتے ہیں ہے ایسا کرنے کے ہینڈلر. اور اس میں دستاویز منتخب کریں پہلا سیٹ. میں دستاویز ہے، ٹھیک ہے، کا کہنا ہے کہ تیار، مجھے ایک تقریب میں چلانے. تو ہے کہ تمام ہے کہ نحو کا مطلب ہے. میں دستاویز کو منتخب. اب، جب دستاویز ہے تیار، تقریب کو چلانے کے. اور تو یہاں دستاویز ہے جب تمام ایچ ٹی ایم ایل ہے جس کا مطلب ہے، کے لئے تیار بھری ہوئی، تو میں تقریب چلانے کہ اس عنصر کو ہٹا دیتا ہے. اور تو اب، میں اس تقریب کو چلانے کے جب میں تیار میں منظور ہے، میں ہوں ضمانت دی اس پر تمام ایچ ٹی ایم ایل صفحہ پہلے موجود جا رہا ہے. جی ہاں. سوال؟ سامعین: ایونٹ مطلوبہ الفاظ کیا ہے تقریب کے اندر اندر؟ جوزف ONG: تو میں اس واقعہ کے مطلوبہ الفاظ تقریب صرف ایک پیرامیٹر ہے کہ تقریب کے منظور ہو جاتا ہے کسی بھی ایونٹ کے لئے. یہ صرف کچھ ہے آپ مفت کے لئے حاصل کرنے کے لئے. آپ میں اہم سہولت کا استعمال کرتے ہوئے کر رہے ہیں pset8، کہ ایونٹ کے لئے، آپ کو بتا سکتا ہوں مثال کے طور پر، جس کی چابی آپ پر زور دیا. اس صورت میں، ایک تیار ایونٹ کے لئے، یہ اصل میں سپر مفید نہیں ہے. لیکن ایک اہم نیچے ایونٹ کے لئے، یہ زیادہ ہے مفید، آپ کو معلوم کرنے کے لئے حاصل کی وجہ سے ہے جس میں آپ کی چابی تک رسائی حاصل کرنے کی طرف سے دبایا اہم واقعہ ہے کہ اعتراض دور کوڈ. صحیح؟ احساس ہے کہ ہے؟ ٹھیک ہے. جی ہاں. سوال؟ سامعین: تو آپ کو ڈال کر سکتے ہیں نیچے سکرپٹ ٹیگ کم؟ جوزف ONG: تو جی ہاں. آپ سکرپٹ ڈال سکتے ہیں نیچے کم ٹیگ. لیکن پھر یہ صرف سچ میں گندا ہو جاتا ہے. اور ہم سب مرکوز کرنے کے لئے پسند ایک جگہ میں ہماری کوڈ کی. اور اس سے ہمیں ایسا کرنے کی اجازت دے گا. یاد رکھیں اس سے قبل میں نے ایک اچھے نہیں ہے انہوں نے کہا کہ عناصر ہیں اس بات کا یقین کرنے کا طریقہ آپ کوڈ کو پھانسی سے پہلے صفحے پر؟ اور یہ صرف ایک اچھا طریقہ ہے آپ اس کو پورا کریں گے. سامعین: [اشراوی]. جوزف ONG: جی ہاں. آپ کو اب بھی دائیں، ہوگا؟ یاد ہے، آپ شامل صفحے کے سب سے اوپر پر فائل. تو اس سے پہلے پہلے پھانسی جا رہا ہے آپ کے صفحے کے سب سے نیچے حاصل کرنے کے لئے. ٹھیک ہے. تو تم بھی ایک مختلف شامل کر سکتے ہیں ایونٹ ہینڈلر کی قسم. یہ ایک کو صرف کلکس کے عمل. میں نے تو، سب سے کم عمر پر کلک کریں یہ ایک انتباہ کے ساتھ پاپ گا. یہ صرف ایک مختلف ہے ایونٹ کی قسم. تیار ایونٹ کی مخالفت کے طور پر، اب آپ آپ کو موصول ہونے جب کلک تقریب کا استعمال کرتے ہیں ایک عنصر پر کلک. اور تو اس صورت میں،، پر کلک کریں یاد ہینڈلر سب سے کم عمر کے ساتھ منسلک کیا جاتا ہے. تو جب یہ صرف ہوتا ہے میں سب سے کم عمر پر کلک کریں. اور ایک دوسرے کے لئے تیار کی صورت میں دستاویز کے ساتھ منسلک کیا گیا تھا. تو اس دستاویز کے لئے انتظار کر رہی ہے تیار ہو جائے. احساس ہے؟ میں پر منتقل کر سکتے ہیں. جی ہاں. سوال؟ سامعین: [اشراوی]. اس صورت میں آپ کو [اشراوی] استعمال کرتے ہیں. جوزف ONG: اوہ، جی ہاں، کیونکہ اس میں کیس میں سب سے کم عمر کے لئے انتظار کرنے کی ضرورت ہے سب سے پہلے کی سکرین پر ظاہر کرنے کے لئے عنصر میں ایک کلک کے ہینڈلر منسلک کر سکتے ہیں اس سے پہلے کہ یہ، جس میں اندر ڈال دیا کیوں ہے ایک دستاویز تیار کی. ٹھیک ہے. اور اگلے، تو اس کی ایک بڑی مثال ہے آپ کو سب کچھ جمع کرے گا کس طرح. یہ صرف ایک فارم کی توثیق مثال ہے آپ درس میں نے دیکھا ہے. تو اس کے قدم کی طرف سے قدم آپ کو اس کے ذریعے جانا. اور یہ مکمل طور پر ٹھیک ہو جائے گا. بس اوپر سے نیچے تک اس کو پڑھنے کے. میں نیچے دیے گئے ایک شکل ہے. دستاویز تیار ہے، میں نے ایک سے منسلک اس طرح ہے کہ، فارم ہینڈلر پیش میں نے فارم جمع کرتے وقت، میں اقدار حاصل ان معلومات میں سے ہر ایک کے اندر. اسے خالی ہے اور میں چیک. اسے خالی ہے تو، میں، جھوٹے واپس کیونکہ میں نے فارم جمع نہیں کرنا چاہتا، فارم غلط ہے کیونکہ. پاس خالی ہے یا یہ کم ہے آٹھ حروف سے، میں جمع نہیں فارم، یہ بھی غلط ہے کیونکہ. اور بدلے جھوٹے صرف روکتا ہے جمع کرانے سے فارم ایک نئے صفحے پر جا. اور امید ہے کہ یہ سمجھ میں آتا ہے. میں تم لوگوں کے ذریعے چلنا چاہئے اپنے آپ قدم کی طرف سے اس کوڈ کو قدم. اور تم کیا منتخب سمجھ ایک بار عناصر اور اس کی چیزیں اصل میں یہ کر دے گا، ضروری آپ کو احساس کی ایک بہت. جی ہاں؟ سامعین: کیا کرتا نام = صارف کا نام کا مطلب؟ جوزف ONG: تو نام = صارف نام اور نام = پاس صرف کو دیکھو کا مطلب جو کچھ بھی وصف آپ کو منتخب کر رہے ہیں. اور پھر اس سے ملنے کے لئے ہے. تو ہم نے رجسٹریشن میں جاؤ. اور پھر ہم تمام آدانوں پر نظر اور رجسٹریشن. اور پھر ہم ایک ہے جہاں نام منتخب وصف رکنیت کے برابر ہے. تو وہ سب سے پہلے سلیکٹر صرف منتخب صارف کا نام ان پٹ. اور یہ کہ دوسرے سلیکٹر صرف منتخب ان لوگوں نے ایک، کیونکہ پاس ان کے نام کی صفات کے طور پر مقرر کیا وہ ہونا چاہیے کر رہے ہیں. سوال؟ سامعین: جمع کرانے پر، کس طرح کرتا ہے نیچے کا حصہ سب سے اوپر حصہ کو حل؟ جوزف ONG: تو کہ ہے کیونکہ ایونٹ ہینڈلر کی. تو ہم نے ایک پیش ایونٹ کے لئے انتظار کر رہے ہیں اس فارم سے نکال دیا جاتا ہے. اور یہ جمع ہے کہ تمام ہے. کیوں میں نے وہاں جمع کو کال کروں؟ یہ فارم جمع ہے جب، کا کہنا ہے کہ، میں نے جمع ایونٹ حاصل. تو مجھے صرف یہ ہے کہ تقطیع ہیں اور تو بجائے اس کوڈ کو چلانے. جی ہاں؟ سامعین: آپ کیوں ہے تقریب واقعہ ہے؟ کیوں صرف [اشراوی] تم نہیں کر سکتے؟ جوزف ONG: جاوا سکرپٹ میں، آپ کی وجہ سے افعال کا اعلان کرنا ہوگا. یہ کام کرتا ہے کس طرح ہے جاوا سکرپٹ میں. آپ اس جا رہا ہے کیا کہنا ہے ایک تقریب کو چلانے کے لئے. تو تم ہو کہ اس سے کہہ رہے ہو یہاں ایک تقریب کی توقع کی بجائے صرف گھوبگھرالی منحنی خطوط وحدانی. سامعین: اور تقریب مندرجہ ذیل جو کچھ بھی ہے؟ جوزف ONG: جی ہاں. تقریب کے اندر ہے جو کچھ بھی ہے گھوبگھرالی منحنی خطوط وحدانی کے بعد اس تقریب کے مطلوبہ الفاظ. جی ہاں؟ سامعین: [اشراوی]. جوزف ONG: کے لئے جمع کرائیں؟ سامعین: نہیں، تقریب کے لئے واقعہ کے بغیر. جوزف ONG: جی ہاں. ایونٹ کے بغیر، آپ اس کر سکتے ہیں. آپ واقعہ کی ضرورت نہیں ہے، تو آپ کو صرف اس کا ترک کر سکتے ہیں. لیکن اگر آپ ایسا کرتے ہیں، تو آپ وہاں ڈال دیا. جی ہاں. فوری سوال؟ سامعین: [اشراوی]. جوزف ONG: جی ہاں. آپ کیا کرنے کی ضرورت ہے، document.ready صرف تمام کے لئے انتظار کا کہنا ہے کہ صفحے پر ایچ ٹی ایم ایل کے پہلے لوڈ کرنے کے لئے. اور عام طور پر، آپ کو آپ کے عناصر چاہتے ہیں آپ کو کسی بھی کوڈ کو چلانے سے پہلے جگہ میں. ٹھیک ہے. ہم ایجیکس حاصل کرنے کے لئے ہے. ہمارے پاس زیادہ وقت نہیں ہے. تو پیشہ اور cons. جاوا سکرپٹ کو آسان کرنے کی کوشش ہے jQuery کے ساتھ لکھتے ہیں. لیکن jQuery کی قسم کی سست ہے. پی ایچ پی سی سے زیادہ سست ہے جیسے یہ، ہے اس کی تفسیر ہے کیونکہ. اور jQuery سے تھوڑا سا سست ہے جاوا اسکرپٹ کا، اس کی ایک بہت کرتا ہے کیونکہ ہڈ کے تحت چیزیں. آپ کے jQuery استعمال کر رہے ہیں اور اگر ایسا ہے تو، یہ ہے سے صرف تھوڑا سا سست جاوا اسکرپٹ کا، اگرچہ یہ آپ اچھا خوبصورتی دیتا ہے. اور آخر میں، ایجیکس. اب تک ایجیکس کے ساتھ، آپ ایجیکس نہیں دیکھا ہے ابھی pset7 کے معاملے میں، کیونکہ آپ ایسا کرتے ہیں تو، آپ کو پیش اقتباس کے لئے ایک فارم. یہ ایک نئے صفحے بوجھ. تو آپ کو اس بڑے سفید فلیش حاصل صفحہ پر جبکہ دوسرے صفحے بوجھ، صحیح؟ یہ واقعی میں اچھا ہو گا اگر آپ کو یہ فلیش کی ضرورت نہیں تھی. فیس بک کی طرح، اگر آپ کو صرف سکرال نیچے، نئے مواد کا اضافہ کر دیتی پورے صفحہ کی تازہ کاری کے بغیر. تو اس طرح کچھ اچھا ہو گا. یہ جاوا سکرپٹ کے کوڈ ہے بائیں جانب. آپ اس ان پٹ کے اندر ہے کیا. آپ Yahoo! سے اسٹاک معلومات حاصل اور پھر آپ کو ایک بڑا سٹرنگ ہے کہ ٹھیک ہے، اس میں چاہتا پیغام ہے، کا کہنا ہے کہ سکرین پر ظاہر کرنے کے لئے. اور پھر آپ کے اندر اس پیغام ڈال دیا ہو جاتا ہے کہ کچھ HTML عنصر کی سکرین پر ظاہر. تو ہے کہ یہاں کیا ہو رہا ہے کہ تمام ہے. تو بنیادی طور پر، یہ سب ہے کیونکہ جاوا اسکرپٹ اور آپ کو چلانے کے لئے ضرورت نہیں ہے اب پی ایچ پی، اس بات کو یقینی بنانا صفحہ کی تازہ کاری نہیں ہے. تو یہ صرف ایک خلاصہ خیال ہے اب میں یہاں کہہ رہا ہوں کہ. خلاصہ خیال ہے کہ تم نے ایسا کیا تو جاوا اسکرپٹ میں تمام، آپ کی ضرورت نہیں ہے ایک صفحہ کی تازہ کاری. لیکن کس طرح آپ نے واقعی ایسا ہے؟ ٹھیک ہے، اصل میں، کے بارے میں بات اس پہلے کے ساتھ ایک مسئلہ. ایک مسئلہ ہے، جاوا سکرپٹ میں ہے پھانسی تلیکالک ہے. تو آپ کو ایک کے لئے انتظار کرنا پڑے تم سے پہلے ختم کرنے کے لئے لائن اگلی لائن پھانسی. اور کیا میں نے یاہو پر جا رہا ہوں اگر، اور ان کے سرورز واقعی سست ہیں، اور اس پر ان تین سیکنڈ لگتے ہیں کہ اسٹاک معلومات مجھے واپس دے؟ اگر میں، اس کی قیمت لائن مارا اس کی طرف سے ہے کے طور پر پھانسی، تلیکالک ہے پہلے سے طے شدہ، کیا یہ صرف کیا جا رہا ہے ہے اپنے براؤزر کے لئے روکنے کی کوشش کی جا رہی ہے تین سیکنڈ. اور آپ کیا کرنے کے قابل ہو جائے نہیں جا رہے ہیں کچھ بھی ہے کہ اعداد و شمار کے ہو جاتا ہے جبکہ. یہ منجمد کیا جا رہا ہے. اور وہ برا ہے. آپ کو ایک صارف کے لئے نہیں کرنا چاہتا ایک منجمد ویب کے صفحے ہے. صحیح؟ یہ صرف برا ہے. ہر کوئی اتفاق کرتے ہیں؟ آپ فیس بک اور اس کی براؤزنگ کر رہے ہیں جم جاتا ہے اور آپ کو آپ کچھ نہیں کر سکتے واقعی مایوس. تو حل ہم کچھ بنا ہے اتلیکالک بجائے. تو یہ سب اتلیکالک بات کا کہنا ہے کہ ، میں نے اس سے پوچھنا جا رہا ہوں کچھ اعداد و شمار کے لئے یو آر ایل. اور پھر میں جا رکھنے کے لئے جا رہا ہوں. میں صرف عمل کو برقرار رکھنے کے لئے جا رہا ہوں جو کچھ بھی اس کے بعد تھا کہ کوڈ. اور پھر اس کے اعداد و شمار، کے لئے تیار ہے جب بھی تو میں اس پر عملدرآمد کریں گے. یہ کہہ رہا ہے ہے. سامعین: ایجیکس صرف کرتا ہے کوڈ اتلیکالک؟ جوزف ONG: یہ ایک اتلیکالک ہے نکال رہا ہے اعداد و شمار کے طریقہ. تو ایجیکس کے بارے میں سب سے پہلی چیز یہ میرے اعداد و شمار حاصل کرنے کی اجازت دیتا ہے ایک بیرونی کی ویب سائٹ سے. اور دوسری بات یہ ہے کہ بات کو یقینی بناتا ہے میں ہوں جبکہ میری پیج تعطل نہیں ہے کہ اعداد و شمار کی بازیافت. یہ اس کے اتلیکالک حصہ ہے. یہ کہیں اور بند ہو جاتا ہے، کیونکہ میں کہتا ہوں کیونکہ میں جبکہ چل رہا رکھنے کے یہ، کہ اعداد و شمار بازیافت ہے یہ غیر ہم آہنگ ہوتا ہے. میں نے عمل کو برقرار رکھنے کے. تو اس اتلیکالک رکھنے ذہن میں خیال. اور میں تمہیں دکھاتا ہوں کیا فرق ہے. تلیکالک ورژن بائیں جانب ہے. اتلیکالک ورژن دائیں طرف ہے. دیکھنے کے تعداد میں نظر آتے ہیں جو اقدامات کے مطابق کیا ہر سطر میں executes ہے. وہاں، پہلا ظاہر کرتا ہے. کیونکہ یاہو سے اسٹاک معلومات حاصل کرنے کے تین سیکنڈ لگتے ہیں، اس سٹال تین سیکنڈ کے لئے. اور پھر اس کی قیمت تنبیہات سب ان تین سیکنڈ کے بعد. تو اب، کہ الرٹ شو اس وقت اپ - اندر تین سیکنڈ اور پھر یہ اس کے بعد کی طرف سے تنبیہات سب. تو یہ صرف قدم بہ قدم چلا جاتا ہے. کیا تم لوگوں کی طرح ہے ، درست کو قبول کرے گا؟ اتلیکالک عملدرآمد کے ساتھ، سب سے پہلے آپ کو مطلع. اس کے بعد آپ اس یو آر ایل کو جانا. اور تم میں جا رہا ہوں، کا کہنا ہے کہ صرف اعداد و شمار کے لئے دعا گو ہیں. اور پھر میں جا رہا ہوں بعد میں اس پر کارروائی. تو اسے فوری طور پر executes ہے میں نے اس کے بعد اگلی لائن اتلیکالک کی درخواست. تو ایک 0.001 چلیں، آپ کو الرٹ ہیلو دیکھ. اس تقریب، الرٹ الوداع ایگزیکیوٹ. اور میں نے ایک وعدہ کیا وجہ ہے کہ میں ، اس کے بعد کے اعداد و شمار پر عملدرآمد کیا ڈیٹا واپس آتا ہے جب ہوتا ہے تین سیکنڈ کے بعد، تو میں چلانے میں وہاں ہے کہ تقریب. جی ہاں؟ سامعین: آپ کی وضاحت یا کر سکتے ہیں ایجیکس کا کیا مطلب کی وضاحت؟ جوزف ONG: تو ایجیکس کا ایک طریقہ ہے کہ اگر میں نے میں نے ایک ویب سائٹ پر ہوں اور میں جب کے اعداد و شمار کی ضرورت ہے تو، صفحہ کی تازہ کاری کرنے کے لئے نہیں کرنا چاہتا میں ایجیکس نامی اس ٹیکنالوجی کا استعمال. یہ بنیادی طور پر صرف کا مطلب ہے، لانے جانا کسی اور ویب سائٹ سے اعداد و شمار. اور یہ صرف ایک طریقہ میں کیا میری ویب پیج تعطل نہیں ہے. سامعین: تو ہے کہ ایک شامل ہے جاوا اسکرپٹ یا jQuery کا حصہ؟ جوزف ONG: تو کسی کو ایسا کرنے کا ایک طریقہ لکھا تھا یہ ایک طویل وقت پہلے جاوا اسکرپٹ میں. ایک نقطہ پر، یہ موجود ہی نہیں تھی. اور تو کسی کو اس ٹیکنالوجی کا آویشکار لوگوں کو اس کے اعداد و شمار کی درخواست کرنے کی اجازت اس فیشن میں. اور وہ کچھ سامان لکھا آپ کے لئے ایسا کرنے کی. اور jQuery صرف آپ کو یہ فراہم کرتا ہے ایسا کرنے کے لئے بہت اچھا طریقہ اس $ ساتھ. تقریب حاصل. سوال؟ کے بارے میں سوالات کے جواب دے ایجیکس کے بعد بھی. میں یہاں ہو جائے گا. تو یہ ہمارے بغیر ڈیٹا کی بازیافت دو صفحہ کی تازہ کاری. اور یہ ہم میں ایسا کرنے دو ایک اتلیکالک راستہ ہے صفحہ منجمد نہیں کرتا. بہت طویل ہے، نہیں پڑھا کہ اگر وضاحت آپ کے لئے بہت طویل تھا. تو آخر، کراس سائٹ سکرپٹ حملوں. ہم کیا Zamyla کے ساتھ اس کو دیکھا. اپنے ڈیٹا بیس کسی میں اس کا نام ہے تو، اس سکرپٹ ٹیگ، اور میں ہے جو اپنے صفحے پر کچھ کوڈ ہے کہ پرنٹس لوگوں کی ایک قطار میں ناموں، یا میں ہے باہر اضافہ ہے کہ کچھ جاوا سکرپٹ کے کوڈ صفحے میں اس کے نام، کیا ایچ ٹی ایم ایل کی پیداوار ہو جاتا ہے؟ ٹھیک ہے، میں HTML ٹیگ باہر پرنٹ. میں ان تمام ٹیگز باہر پرنٹ. میں پرنٹنگ ہوں جہاں حصہ حاصل کرنے کے لئے اپنے دوستوں کے ساتھ باہر. میں لارین باہر پرنٹ. یہ ملو باہر پرنٹ. اور پھر ڈیٹا بیس میں میرا نام سکرپٹ مراسلہ ہے پر unflattering فیس بک کی حیثیت. میں صفحے میں اس ڈالا کیونکہ یہ جاوا سکرپٹ کے، کی طرح لگتا ہے کیونکہ جب اس صفحہ کو بھیجے ہو جاتا ہے، یہ جاوا سکرپٹ کے طور پر قتل ہو جاتا ہے. اور اس طرح یہ ہم نے ایک کہتے ہیں کراس سائٹ سکرپٹ حملے. کسی میں بدنیتی پر مبنی معلومات رکھتا ہے کے مطابق کر سکتے ہیں کہ آپ کے ڈیٹا بیس کچھ اضافی سٹرنگ یا کچھ جاوا اسکرپٹ کا تار. اور یہ کرنے کے لئے باہر چھپا ہو جاتا ہے جب اس فیشن میں پیج، پھر کیا ہوتا برا کوڈ قتل ہو جاتا ہے یہ ہے کہ میں ارادہ نہیں کیا یہ قتل کرنے کے لئے. اور یہ کہ تمام ایک کراس سائٹ ہے سکرپٹ حملہ ہے. اور آپ کے ارد گرد حاصل کرنے کے طریقہ کیا Zamyla نے کہا ہے کہ یہ ہے. آپ کو صرف میں چیزوں کو لپیٹ ایچ ٹی ایم ایل کی خصوصی حروف. اور یہ ایچ ٹی ایم ایل کی خصوصی حروف ایک پی ایچ پی کی ہے اس طرح کی روک تھام کرے گا اس تقریب آپ کو ہونے سے بات کی آپ کو ایک بدنیتی پر مبنی ہے تو آپ کے ڈیٹا بیس میں سٹرنگ. یہ نہیں کرتا ہے تو یہ صرف، اس میں بچ گئے HTML کے طور پر تشریح کی ہو. یہ تھوڑا بریکٹ کی جگہ لے لیتا ہم اداروں کو فون کیا کے ساتھ. اور ہم نے بھی لیکچر میں اس پر چلا گیا. تو میں نے تم لوگوں کو کرنا چاہئے اس پر ایک اچھی گرفت. سوالات؟ جی ہاں. سامعین: تو کس طرح کریں گے [اشراوی]؟ جوزف ONG: پھر سے کہو. سامعین: میں کس طرح نگرانی کریں گے - جوزف ONG: ٹھیک ہے. تو آپ کا کہنا ہے کہ کچھ ہے، جب میں اپنے نام، قسم رجسٹر کریں. میں صرف اس میدان میں ٹائپ کریں، میرا نام ہے stript پوسٹ پر unflattering فیس بک درجہ بند سکرپٹ ٹیگ. اور یہ صرف میں ڈال دیا جاتا ہے ڈیٹا بیس، میں نہیں کہہ سکتا کیونکہ کسی دنیا میں ایک نام نہیں ہے ایک بائیں اس میں تیر یا اس میں لفظ سکرپٹ. یہ واقعی کوئی مطلب نہیں ہے. تو میں صرف اس بات کو یقینی بنانے کے لئے ہے میں میں نے اس کو پرنٹ کرنے سے پہلے چیزیں جراثیم کشی صفحہ باہر. سامعین: تو ایچ ٹی ایم ایل کی خصوصی کارڈ سکرپٹ ٹیگز روکتا ہے؟ جوزف ONG: جی ہاں. تو یہ سکرپٹ ٹیگز روکنے کے نہیں کرتا. یہ صرف اس بات کو یقینی بناتا ہے سکرپٹ ٹیگز حاصل نہیں ہے HTML یا کے طور پر تشریح - جی ہاں. یہ صرف کے طور پر آتا ہے یہ اصل میں ہے. ٹھیک ہے. تو اس کوئز کا جائزہ لینے تھا. ڈاؤن لوڈ، اتارنا. [تعریف]