DAVID MALAN: ٹھیک ہے. یہ CS50 ہے، اور یہ ہے نو ہفتہ کے اختتام. اس پر ایک بونڈر رہا ہے گزشتہ چند دنوں کے. آپ کو گھٹنے ہو اور مسئلہ، سات مقرر گہری اس میں، بہت ہے احساس بٹ نئے کہ وہاں میں ہے. لیکن ہم ٹکڑا نہیں کر سکتے ہیں تو ہم دیکھتے ہیں سب کچھ ایک دوسرے کے ساتھ یہاں مختصر طور پر پہلے تو ابھی تک میں veering ایک اور سمت اور دیکھ اور کہاں ہم جا سکتے ہیں. تو اس طرح اب تک، ہم ایچ ٹی ایم ایل کے بارے میں بات کی ہے. ہم سی ایس ایس کے بارے میں بات کی ہے. ہم پی ایچ پی کے بارے میں بات کی ہے. آپ SQL تجربہ کرنے کے لئے شروع کر دیا ہے. آج، ہم تھوڑا سا بات کریں گے جاوا سکرپٹ کے بارے میں. لیکن کس طرح ان اسمان کے تمام زبانوں ساتھ فٹ؟ تو ہم نے کے بارے میں گزشتہ ہفتے کی بات کی ایک سرور ہونے کے تصور. تو صرف اس مستطیل اپنی طرف متوجہ یہاں ایک ویب سرور کے طور پر. اور ایک ویب سرور ضرور فائلوں پر کام کرتا ہے. اور ان فائلوں میں سے کچھ HTML فائلوں ہو سکتا ہے. تو چیزوں میں سے ایک یہ ہے کہ ایک ویب سرور توک کر سکتے ایک فائل ہو سکتا ہے ہم صرف اس طرح اپنی طرف متوجہ کریں گے کچھ HTML مشتمل. تو عام آدمی کی شرائط میں، کیا ایچ ٹی ایم ایل آپ کو کیا کرتا ہے؟ سامعین: صفحہ نظر اچھا. DAVID MALAN: ٹھیک ہے، ایک ایسے صفحے کے اچھا نظر بنانے کے، میں ثابت کر دیا ہے لگتا ہے کہ اگرچہ کہ دوسری صورت میں. تو HTML صفحات باہر پوشیدہ ہے کرتا ہے ساخت کے لحاظ سے، اور یہ آپ کو کرنے کی اجازت دیتا طرح کی جمالیاتی اعتبار سے ایک ایسے صفحے کے موقع پر، جامد مواد کو نشان زد کر کے، تاکہ آپ اس کے بعد ایک ویب براؤزر کے ساتھ دیکھ سکتے ہیں. لیکن یہ اہم ہے. یہ جامد مواد ہے. آپ اسے لکھ، آپ اس کو بچانے کے، اور پھر آپ کو یہ جہاز. اور ویب سرور اس وقت کام کرتا ہے یہ آپ کے زائرین تک. لیکن ہم ایک مختلف استعمال کرتے ہوئے چیزوں stylize مکمل طور پر زبان بدلیں. ہم نے ایک انداز کی خصوصیت کا استعمال کرنا شروع کر دیا بعض ٹیگز. اور سٹائل کے وصف ہمیں دو فونٹ سائز اور رنگ کی طرح چیزوں کو. اور آپ شاید دریافت کرنے کے لئے شروع کر دیا ہے، یا آپ کو جلد ہی فائنل کے لئے کرے گا ممکنہ طور پر منصوبوں، ابھی تک دوسرے آپ سی ایس ایس میں استعمال کر سکتے ہیں خصوصیات. اور اس طرح عام آدمی کی شرائط میں، کیا سچ تو سی ایس ایس کیا کرتا ہے؟ لوگ اس کے صرف مثالیں ہیں. کیا یہ آپ کو کیا کرتا ہے کہ ایچ ٹی ایم ایل اس سے لگتا نہیں ہے ہم ابھی تک دیکھا ہے؟ سامعین: خود کی طرف سے سٹائل کی وضاحت کریں. DAVID MALAN: سٹائل کی وضاحت کریں خود کی طرف سے. تو آپ کے طور پر کلاس کی طرح چیزوں کی وضاحت منفرد کا سامنا کرنا پڑا، یا ہو سکتا ہے ایک دستاویز میں نوڈس کی شناخت تو آپ ان stylize کر سکتے ہیں. لیکن زیادہ خاص طور پر، میں اس کی سی ایس ایس کہونگا واقعی آپ چیزیں لے کی اجازت دیتا ہے آخری میل اور آپ کو زیادہ وضاحت کرنے کی اجازت دیتا ہے زیادہ واضح طور پر جمالیات، سب سے زیادہ حصہ کے لئے HTML کی اجازت دیتا ہے جبکہ آپ اپنے صفحات کی ساخت. اور کچھ ڈیفالٹس ہیں اگرچہ، کی طرح کے لئے ہم ٹیگ دیکھا تقریبا بات ہے جس میں ایک سرخی ٹیگ، چیزوں کو بڑے اور جرات مندانہ بنایا. یہ ایک بہت عام تعریف ہے ٹیگ کے - بڑے اور جرات مندانہ. کیا فونٹ سائز کیا ہے؟ کیا رنگ ہے؟ کہ کس طرح جرات مندانہ ہے؟ اور سی ایس ایس سے زیادہ باریک آپ کی اجازت دیتا ہے اس طرح دھن چیزیں. کے طور پر ترتیب، کچھ کے طور پر آپ کو دیکھا ہے. اور واضح طور سے، سی ایس ایس تھوڑا سا ہے ایک گندا زبان کی. یہ آپ کر سکتے ہیں میں بہت طاقتور ہے آپ کو کیا ہے کہ لفظی کسی بھی ویب سائٹ اس کے ساتھ آج ویب پر دیکھا، لیکن یہ گردن میں درد کی طرح ہے. اور تم میں سے کچھ آپ کے سر پر ٹککر لگی ہے پہلے سے ہی صرف ایسا کرنے کے لئے دیواروں کے خلاف مرکز ایک مینو کی طرح پاگل کچھ آپ کو ملا ہے تو مسئلہ سات مقرر پہلے سے ہی اس نقطہ. لیکن، ان چیزوں کا احساس وقت کے ساتھ آسان. آپ کے پیٹرن محسوس کرنا شروع. اور پھر، گوگل آپ کی دوست ہو جائے گا آپ کر سکتے ہیں جس میں مختلف طریقوں کے لئے مسائل کی ان اقسام کو حل کرنے کے. اور میں نے سی ایس ایس کے ساتھ کہہ ہمت، اور HTML زیادہ عام طور پر، آپ کے مسائل حل کر سکتے ہیں بہت سے طریقوں، جن میں سے سب بہت طاقت اچھی طرح سے آپ کر سکتے ہیں سے، درست ہونا سی طرح کچھ میں، یہاں تک کہ اب پی ایچ پی، یا جاوا سکرپٹ کے. مختلف صرف بہت سے ہیں چیزیں ڈال کرنے کے طریقوں. لیکن اس کے حاصل کرنے کے لئے شروع کر دیا گندا، ہم نے کہا. صرف کی قسم آپ ایچ ٹی ایم ایل commingling اور سٹائل کے وصف کے ساتھ آپ کی سی ایس ایس تھا ایک چھوٹا سا میلا. اور اس طرح ہم اس کی بجائے طرح کی، انہوں نے کہا کہ abstractly بات، آپ کو کرنا چاہئے کہ کم از کم عنصر کے لئے شروع شاید آپ سی ایس ایس سے. نہیں اپنے انداز کی خصوصیات، لیکن کم از کم کیا اندر سٹائل کے ٹیگ کا استعمال ویب کے صفحے کا حصہ؟ سامعین: سر. DAVID MALAN: سر میں. اب تک، ہم صرف عنوان تھا وہاں، لیکن آپ بھی ایک سٹائل شامل کر سکتے ہیں ٹیگ، اور آپ کو تقریبا آپ سی ایس ایس ڈال کر سکتے ہیں صفحے کے اوپر کی طرف بات. لیکن پھر ہم مزید ایک قدم چیزوں کو لے لیا اور ہم زیادہ ہے کہ باہر کی وجوہات ایک علیحدہ فائل میں. اور اس طرح ان دو فائلوں تھے کسی نہ کسی طرح اب سے منسلک. اور یقینا یہ تھا کیا اس ٹیگ. اور جو انتہائی اہم میں سے ایک تھا ہمارے سی ایس ایس باہر فیکٹرنگ کے لئے منشا سب سے زیادہ؟ سامعین: Reusability. DAVID MALAN: Reusability. ٹھیک ہے نا؟ آپ میں دیکھا جا سکتا P-قائم پہلے ہی سات صفحات کی ایک بہت، خرید پیج، فروخت صفحہ، پورٹ فولیو صفحہ، شاید ہیں کسی حد تک اسی طرح کا ڈھانچہ. سب سے اوپر ایک CS50 خزانہ علامت (لوگو) ہے آپ اسے تبدیل کرنے کا فیصلہ کیا ہے جب تک. میں ایک فوٹر ہے صفحات کے سب سے نیچے. اور سی ایس ایس آپ کو تو یہ عنصر کرنے کی اجازت دیتا یہ ایک الگ فائل میں تو ہے کہ اگر آپ عالمی سطح پر کچھ تبدیل کرنا چاہتے آپ پوری سائٹ کے اس پار، آپ کر سکتے ہیں واقعی صرف ایک جگہ میں تبدیل. لیکن آپ کو ممکنہ طور پر ادا کی ایک قیمت ہوتی ہے باہر کی وجوہات کی طرف سے ایک علیحدہ میں اپنے HTML فائل کی طرف سے سی ایس ایس کے ساتھ اس کا حوالہ دائر ہم نے پیر کو دیکھا جس کے ٹیگ،. کمی اس کے بارے میں کیا ہو سکتا ہے؟ ہم جب ایک ہفتہ پہلے واپس سوچ HTTP اور TCP / IP اور کس طرح کے بارے میں بات انٹرنیٹ پر کام کرتا ہے. یہاں کچھ؟ ناظرین: یہ زیادہ وقت لگتا ہے. DAVID MALAN: یہ زیادہ وقت لگتا ہے. کیوں؟ سامعین: [اشراوی]. DAVID MALAN: جی ہاں. تو یہ arguably تھوڑا سا زیادہ وقت لگتا ہے. ایک، سی ایس ایس ظاہر ہے کیونکہ نہیں ایک ہی فائل میں. تو اب تم نے نہیں کرنی ایک، لیکن دو درخواستوں. اور ان کی درخواستوں میں سے ہر ایک ہم میں دیکھا کے طور پر نام نہاد انسپکٹر میں کروم، اور ہم میں سے ہر ایک، نیٹ ورک کے ٹیب کو دیکھا ان فائلوں میں سے ایک HTTP کی ضرورت ہے ہم لیتا ہے دیکھا ہے جس کی درخواست، وقت کی کچھ رقم. اب، شاید یہ ایک بہت کچھ نہیں ہے. شاید یہ صرف 20 milliseconds ہے. شاید یہ 200 milliseconds ہے. لیکن، فیس بک کی طرح ایک ایسے صفحے کے بارے میں سوچنا زیادہ سے زیادہ ہیں جو یا سی این این، یا گوگل، ہم نے مثالوں سے بڑے اس طرح اب تک کی طرف دیکھا. ان صفحات، فائلوں کی درجنوں ہو سکتا ہے جن میں سے ہر ایک کی ضرورت ہو سکتی ہے ایک فائل کے ڈاؤن لوڈ، اتارنا. تو چیزوں کو ممکنہ طور پر کر سکتے ہیں سست کرنے کے لئے شروع. اور خاص طور پر ان دنوں جب ہم سب ہماری جیب میں موبائل فونز ہیں اور سست رفتار انٹرنیٹ کنکشن، کرنے چند ایک مزید چند milliseconds انتظار اضافی کے لئے زیادہ milliseconds فائلوں اصل میں سست ہو سکتا ہے. تاخیر کو بیان کرتا ہے کہ لفظ ہے کس قسم کی ہے کہ آپ کو اس کا انتظار کر رہے ہیں کہ آپ کا انتظار کر جب تجربہ معلومات کے کچھ ٹکڑے. لیکن ایک الٹا ہے. تو یہ ایک کے تمام طرح کی نہیں ہے - یہ اصل میں یہاں ایک seesaw کے تھوڑا سا ہے. اب کمی، لیکن کیا براؤزر کر سکتے ہیں وہ سے بچنے کے لیے ہوشیار ہو تو اسی styles.css درخواست کرنے فائل پھر کیا کیا ہو سکتا ہے؟ یہ کیش. تو کیشنگ - C-A-C-H-E - عام طور پر صرف کو بچانے کے لئے کا مطلب ہے یہاں تم پہلی بار درخواست کی فائل، اور پھر اس کے لئے اپنی کیش کو چیک کریں. ، آپ کی سٹوریج کنٹینر کی طرح ہو چیک کریں اور آپ پہلے سے ہی ایک ہے تو styles.css کی نقل، یہاں تک کہ کسی اور اگر P-سیٹ، یا کسی بھی ویب سائٹ میں صفحہ درخواستوں کو اسے دوبارہ، صرف دینے کے لئے صارف اسی عارضی نقل. یہ درخواست کر پریشان نہ کرو. وہاں کمی، اگرچہ، تم میں سے بعض کے طور پر P-سیٹ میں ختم فسل گیا ہے. آپ سرور پر ایک تبدیلی اور تو آپ براؤزر پر واپس جائیں اور آپ کبھی کبھی براؤزر کرتا ہے، دوبارہ لوڈ آپ کو ایک حق اور فرق نہیں پڑتا آپ styles.css فائل دوبارہ ڈاؤن لوڈ کیونکہ، چلو، مشکلات کیا ہیں کہ فیس بک استعمال کرتا ہے کہ ان شیلیوں گھنٹے گھنٹے تبدیل یا جا رہے ہیں دن پر دن؟ یہ بہت کم ہے. وہ وقت کے ساتھ تبدیل کرنے کے، لیکن نہیں کر سکتے ہیں منٹ کی طرف سے یا گھنٹے کی طرف سے. ویب کر جب ایک چال تو، بس FYI ترقی، اکثر کو دبا کر رکھیں ہے مثال کے طور پر کلیدی منتقل کریں اور پھر کلک کریں اپنے براؤزر میں دوبارہ لوڈ، اور وہ کرے گا عام طور پر براؤزر دوبارہ لوڈ بتانا سب کچھ آپ پہلے سے ہی ہے یہاں تک کہ اگر کیشے میں. تو ایک بار پھر، upsides اور downsides، لیکن ان میں سے تمام بالآخر ڈیزائن فیصلے. تو اب، ہم صرف نہیں کیا یہاں کہانی ختم. اب میں واپس جا کر واپس اور واپس اور تو واپس، ہم نہ صرف متعارف کرانا شروع کر دیا ایچ ٹی ایم ایل، پی ایچ پی کی لیکن. تو عام آدمی کی شرائط میں، کیا پی ایچ پی نے ہمیں کرنے دو کرتا ہے؟ سامعین: [اشراوی]. DAVID MALAN: وہ کیا ہے؟ سامعین: منطق تعارف کوڈ میں. DAVID MALAN: جی ہاں، متعارف کرانے اپنے کوڈ میں منطق. تو یہ ایک سچے پروگرامنگ زبان ہے loops، اور متغیر، اور کے ساتھ کام کرتا ہے، اور حالات، اور سب کے سب ہم واپس طریقے سے استعمال کر رہا ہوں باتیں جب شروع سے لے کر. اور پی ایچ پی کی ہے، ہم نے دیکھا ہے، استعمال کیا جا سکتا یا تو کمانڈ لائن پر - یہ کوئی لینا دینا نہیں ہے ویب کے ساتھ، یہاں تک کہ اگرچہ واقعی میں اس کی اصل اور اس دیتی ہے میں اچھے اور کے لئے موزوں ہونے کے لئے - لیکن آپ کو فطرت کی طرف سے صرف پی ایچ پی کا استعمال کر سکتے یہ ایک پرنٹ () ہے کہ اس حقیقت سے تقریب، اور ایک printf () فنکشن، یا ایک گونج () فنکشن. طریقوں سے bunches نہیں ہے اگر تم پی ایچ پی کے ساتھ متن کو پرنٹ کر سکتے ہیں. لہذا، اگر آپ اس کی پروگرامنگ استعمال کر سکتے ہیں بالکل پیداوار پر زبان ہم پہلے بارے میں بات کر رہے تھے. آپ کو متحرک پیدا کر سکتے ہیں آپ کی ایچ ٹی ایم ایل. ہو سکتا ہے کہ نہیں اس کا سب. جیسا کہ شاید آپ کو مشکل کوڈ چیزیں، ہیڈر اور فوٹر، اور علامت (لوگو)، اور آپ سٹائل شیٹس، اور اس کے تمام. لیکن P-سیٹ سات کی طرح کچھ کے لئے، آپ اسٹاک توڑ اور کر رہے ہیں، جہاں ہے جو صارف کے پورٹ فولیو دکھا آپ کو متحرک طور پر تبدیل کرنے کے لئے کر سکتے ہیں جا یقینا پی ایچ پی اور یہ دیتا ہے منطق کا استعمال کرتے ہیں ایک پروگرامنگ زبان کے طور پر آپ کے لئے پیداوار کو متحرک ذیلی سیٹ صفحے کے. تو کیا تم متحرک ویب سائٹس کے بارے میں بات کرتے ہیں، یا ویب پروگرامنگ، کہ ہے کیا آپ واقعی کے بارے میں کیا بات کر رہے ہیں. ایک پی ایچ پی کی طرح زبان، یا چیزوں کا استعمال کرتے ہوئے نام نہاد ازگر، یا روبی، یا اعلی درجے کا Java، یا ایک ڈیٹا بیس کی کیوری ابھی تک دیگر زبانوں، اکثر، یا کسی دوسرے سرور، اور پھر متحرک طور پر ایچ ٹی ایم ایل توک. اب آخر میں نتیجہ، ایک ایک طرف کے طور پر، ہے کہ سب سے زیادہ ویب سائٹس کی ایچ ٹی ایم ایل، آپ P-سیٹ سات، بشمول شاید ہے ایک بہت بڑا گندگی تو ہونے جا رہا آپ منبع کی طرف دیکھو ایک براؤزر میں کوڈ. یہ ایک بڑا سودا نہیں ہے. اس مرحلے پر، ہم پرواہ جب سٹائل، ہم پرواہ آپ کو لکھنے کہ چیزیں. ہم نے سامان کے بارے میں پرواہ نہیں رکھا جائے کیا آپ کا کوڈ اخراج ہے. تو پوٹ کاری کے بارے میں فکر مت کرو. یہ ہے کہ پی ایچ پی کی ہے یہاں تو اصل میں چیزیں لکھنا. سب کے بعد، براؤزر، پرواہ نہیں رکھا جائے اور ایک انسانی لگ ریکارڈ نہیں رکھا جائے منبع پر ویسے بھی. ہم عملے کو، مثال کے طور پر کریں گے آپ کی پی ایچ پی کی دیکھ جائے. تو مجھے ایک فوری مثال کے طور پر اب دے کیوں کے اس مفید ہو سکتا ہے. تو صاف صاف، میں نے گزشتہ یاد نہیں کر سکتے میں ایک مسئلہ کو حل کرنے کے لئے استعمال کیا جاتا سی وقت حقیقی دنیا. یہ گریجویٹ سکول میں شاید تھا جب میں نے ایک زبان کا استعمال کرنے کی ضرورت ہے کافی کم سطح تھی اور مجھے دیا بہت زیادہ کچھ کرنے کا موقع واقعی طور پر بہت سے سی پی یو کو بچانے کے لئے کارکردگی کا مظاہرہ سائیکل میں کر سکتا ہوں کے طور پر، بڑے حصے میں میں نے بہت بڑی ڈیٹا سیٹ کا استعمال کرتے ہوئے کیا گیا تھا، اور ہر CPU کے سائیکل شمار. اور واضح طور سے، یہاں تک کہ فونز کی طرح چیزوں میں ان دنوں اور دیگر آلات تم بہت زیادہ کے طور پر نہیں ہے جہاں میموری اور آپ کے طور پر کافی نہیں ہے زیادہ سے زیادہ سی پی یو، تیز زبانوں کا استعمال کرتے ہوئے اب بھی اپیل ہے. لیکن حقیقی دنیا میں، جب آپ کو صرف ایک دوسرے کے ساتھ کچھ پروگرام پھینک کرنا چاہتے ہیں کچھ اعداد و شمار کا تجزیہ، یا تم نے جمع کیا ہے کے لیے رجسٹریشن کے پورے گچرچھی کچھ طالب علم گروپ اور آپ کو بہت چاہتے ہیں فوری طور پر ای میلز بھیجنے کو خود کار ان میں سے ہر ایک پر ایک ایک کرکے اندراج، آپ کے لئے تک پہنچنے کے لئے جا رہے ہیں ایک اعلی سطح کی زبان سے سی تو بات کرنے کی. پی ایچ پی یا ازگر، یا روبی کی طرح کچھ، یا موجود ہے کہ ایک نصف درجن دوسروں ان دنوں. لیکن ان تین شاید اب سب سے زیادہ جدید. اور کیا اس کا مطلب آپ کو کھولنے کر سکتے ہیں ایک متن کی gedit طرح ایڈیٹر یا شروع تو کسی اور سے سب سے زیادہ کچھ فکر کرنے کی بغیر کوڈ لکھنے کرنے کے لئے بغیر، تالیف کے بارے میں واقعی یاد داشت مینجمنٹ کے بارے میں فکر، اگرچہ ذہن میں رکھ کر کہ ایک چھوٹی سی sloppiness آخر میں واپس آ جائے گا اعداد و شمار کے سیٹ ہو جاتا ہے تو آپ کو کاٹنے بڑے یا مسئلہ بڑا ہو جاتا ہے. لیکن کیا اس کے لئے کا مطلب ہے ہمیں مندرجہ ذیل ہے. مجھے آگے بڑھو اور ہجے کنندہ چلاتے ہیں کی طرف سے مسئلہ چھ قائم. تو یہ میری trie کی بنیاد پر عمل درآمد ہے میں بڑا پر استعمال کیا جاتا ہے میں نے اتنی اچھی طرح سے نہیں کارکردگی کا مظاہرہ کیا ہے جہاں بورڈ. ہم ایک ہفتے کے وقت میں واپس آ گے اوپر کو ختم کیا وہ لوگ جو نظرثانی ہماری آخری لیکچر میں بگ بورڈ. لیکن اب کے لئے، مجھے آگے اور صرف جانے متن میں اپنے حل کو چلانے کے، اور ہم کریں گے کنگ جیمز بائبل، اور ہم یہاں جانا. لہذا ان قیاس کے ہیں سے باہر غلط ہجے شدہ الفاظ کنگ جیمز بائبل. اور میری عمل درآمد کر لیا کل میں نصف ایک دوسرے. اس پر اتنا بھی برا نہیں خاص طور پر کمپیوٹر. لیکن کتنا کے بارے میں سوچ کوڈ میں لکھنا تھا. آپ کو لکھنے کے لئے تھا کتنا کوڈ سوچو. آپ میں خرچ کتنے گھنٹے سوچو D ہال یا اپنے چھاترالی یا جہاں کہیں بھی اصل میں اس حل کو کوڈنگ. ٹھیک ہے، میں نے اصل میں ایک اعلی سطح ہے تو پی ایچ پی کی طرح زبان، نوٹ لے میں یہاں کیا کر سکتے ہیں. سب سے پہلے، اس کی بجائے ہے کہ لگتا ہے آپ تقسیم کے کوڈ. یہ ہجے کنندہ کے نام سے ایک فائل ہے. یہ آج کے حصہ کے طور پر دستیاب ہے تقسیم کے کوڈ. اور میں سب سے زیادہ میں اپنے ہاتھ لہر جا رہا ہوں تفصیلات، لیکن یہ اصل میں ہے کس طرح کی ایک دلچسپ مثال کے طور پر آپ کو بندرگاہ ایک زبان ہو سکتا پی ایچ پی کے سی کی طرح. میں لفظی دو متن ونڈوز کھول دیا، speller.c میں میری سی ورژن کے ساتھ ایک، اور میں صرف میں اس کا ترجمہ کرنا شروع کر دیا میرے پی ایچ پی کے سربراہ اور استعمال کرتے ہوئے ٹائپ قریب ترین برابر کام کرتا ہے. تو ان چیزوں میں سے کچھ مختلف ہیں. ہم پی ایچ پی کا استعمال نہیں کرتا کہ آخری بار دیکھا بہت اسی طرح میں بھی شامل ہیں. یہ اگرچہ، عام طور پر ضرورت ہے کا استعمال کرتا ہے شامل موجود ہے. وضاحت سے تھوڑا سا مختلف ہے # C میں کی وضاحت، لیکن اس ہم مسلسل بنانے کے کس طرح. $، یہ پی ایچ پی میں موجود ہے باہر کر دیتا ہے جہاں argc تو ہم نے اس سے پہلے دیکھا ہے. یہ صرف متغیر، سب کے ہیں جس میں ڈالر کی نشانیاں کے ساتھ شروع. یہ صرف ایک گروپ ہیں یاد کے پوائنٹس تیرتا. ، آپ کو خوش آمدید تو لمبی کہانی کو مختصر ہیں اس کے ذریعے پلٹائیں شوقین ہیں، یہ ہے تقریبا ایک لائن کے لئے لائن کے تبادلوں پی ایچ پی میں speller.c کے سی ورژن. اور آپ کے لئے ایک بار پھر یہ کر سکتے ہیں نصف درجن دیگر زبانوں. لیکن جو دلچسپ ہے یہ ہے. تو کیا واضح طور disheartening ہے یہ ہے. مجھے آگے جانا ہے اور کے بارے میں ٹائپ کریں میں ہوں dictionary.php، اور دعوی آگے جاؤ اور دوبارہ لاگو کرنے کے لئے جا مسئلہ یہاں چھ قائم. تو اس میں سب سے پہلے تجویز کرتے ہیں میں لاگو کیا جائے گا جس کی فائل، پی ایچ پی، تو مجھے اس طرح سے میری ٹیگز کھولنے. مجھے خود ایک عالمی دے متغیر، $ سائز صفر ہو جاتا ہے. اور میں دینے جا رہا ہوں اپنے آپ کو ایک ہیش کی میز. میں اس بات کے لئے ایک ہیش میز استعمال کریں گے. میں کس طرح پی ایچ پی میں ایک ہیش ٹیبل کا اعلان کرتے ہیں؟ کیا. ٹھیک ہے. تو کھلا بریکٹ بند بریکٹ کی نمائندگی کرتا ہے ہم نے دیکھا کے طور پر پی ایچ پی میں کیا،؟ ایک صف ہے، لیکن ہے کہ کر سکتے ہیں ایک صف ایک ساہچری سرنی ہو. ایک ساہچری سرنی ہے ایک آنکڑا ڈھانچہ ہے اقدار کے ساتھ چابیاں ساتھیوں. اب عددی حساب سے ترتیب آسان میں صف، ان کی چابیاں کیا ہیں؟ صفر، ایک، دو، تین، ٹھیک ہے؟ پرانے اسکول واپس سی سے سامان لیکن یہ کر سکتے ہیں بھی FOO کو، اور بار کی طرح ڈور، یا میکسویل، یا کسی بھی طرح سٹرنگ. تو میں اس کے بیعانہ کر سکتے ہیں صرف ایک لمحے میں. مجھے آگے بڑھیں اور اعلان کی طرح ایک تقریب - کی پہلی لوڈ () کرتے ہیں. تو تقریب لوڈ (). اور پی ایچ پی اس میں تھوڑا مختلف ہے آپ لفظی آپ کی تقریب میں ٹائپ کریں، لیکن ایک واپسی کی قسم نہیں ہے. میں آگے بڑھو اور کہنے جا رہا ہوں کہ لوڈ () فنکشن میں لینا چاہئے دلیل $ لغت، صرف جیسے C ورژن کیا. میں میموری سے کر رہا ہوں. اور میں ہوں کہ تجویز ایسا کرنے کے لئے جا رہا. میں صرف جعلی foreach کرنے جا رہا ہوں. میں کے نام سے ایک تقریب کو فون کرنے جا رہا ہوں اس کے نام میں گزر، فائل () متغیر ہے جس میں، فائل $ لفظ کے طور پر $ ڈکشنری. اور پھر میری یہاں لوپ کے لئے، میں ہوں کے اندر آگے بڑھو اور میں ذخیرہ کرنے جا میرے $ لفظ سچ ہو جاتا ہے $ میز. کیا. اوہ، انتظار. کیا. ٹھیک ہے. یہ بوجھ () فنکشن ہے پی ایچ پی میں کا کہنا ہے کہ. اب، یہی وجہ ہے کہ کام کرتا ہے؟ اور میں یہاں دھوکہ رہا ہوں. تو، ایک، ہم نے دیکھا جعلی foreach مختصر طور پر آخری بار. یہ صرف آپ پر iterate کر سکتے ہیں کا مطلب ہے کہ ساتھ میں پریشان کئے بغیر ایک صف اور (ن) اور اس کے علاوہ کے علاوہ، اور اس کے سب. ڈکشنری، کورس کی فائل کا نام ہے بڑے یا چھوٹے کی طرح کچھ، دو ہم نے آخری بار استعمال کیا جاتا لغات. ٹیکسٹ فائل کو کھولتا ہے کہ ایک تقریب ہے فائل، لائن کی طرف سے لائن میں یہ پڑھتا ہے، اور آپ کو ایک بڑی سرنی دیتا واپس، جن عناصر میں سے ہر ایک ہے اس فائل سے لائن. تو اس نے fopen کا مجموعہ ہے، اور fread، اور لوپ، اور میں fclose جبکہ، اور اس کے سب. لفظ صرف کا مطلب ہے کے طور پر آخر میں، ہے متغیر میں تک رسائی حاصل کرنے کے لئے جا رہا ہوں اس لوپ میں ہر iteration پر. تو مختصر میں، یہاں ایک لائنر کا مطلب جس کا نام میں ہے فائل کو کھولنے کے ڈکشنری، متغیر، پر iterate اس لائن کی طرف سے لائن، اور آپ کو ملتا ہے ہر وقت ایک متغیر کہا جاتا لفظ میں ایک لائن، دکان، اور پھر لفظ کے ساتھ کچھ کرنا. مجھے کیا کرنا چاہتے ہیں؟ میں اپنے ہیش ٹیبل میں لفظ ڈال کرنا چاہتے ہیں. ٹھیک ہے، میں میں کچھ ڈال کر سکتے ہیں میری صرف C میں جیسے میز ہیش مربع بریکٹ کا استعمال کرتے ہوئے. یہ میری ہیش ٹیبل کا نام ہے. مجھے لگتا ہے کہ ہیش میں انڈیکس کرنے جا رہا ہوں اس مقام پر ٹیبل. تو صفر کردے نہیں، ایک کردے نہیں. خط وحدانی اقتباس unquote کچھ، جو کچھ بھی لفظ ہے. اور جیسا کہ آپ میں ہو سکتا ہے آپ ہیش میز کام trie کے، آپ کو صرف کی دکان مؤثر طریقے سے ایک بولین، لپیٹ یا واضح طور پر. کیا. میں قیمت حقیقی ذخیرہ کرنے ہوں. اب ایک دو چیزوں کی ہے میں یہاں پر کونے کونے کاٹنے رہا ہوں. تکنیکی طور پر، ایک جا رہا ہے کے آخر میں پریشان نئی لائن، / N، ان الفاظ میں سے ہر ایک. تو میں نے شاید ایک پی ایچ پی کی تقریب کو فون کرنا چاہئے کہا جاتا ہے جلد ()، جس میں بہت لفظی کہ کاٹ. اور میں واقعی میں کرنے کی ضرورت ہے ایک اور چیز. میں شاید ہر ایک پر سائز اضافہ کرنا چاہئے iteration کے، تو میں ٹریک رکھ رہا ہوں عالمی سطح پر یہ کیا ہے. اور واضح طور سے، اور اس میں سے ایک ہے اگر آپ کو پی ایچ پی کی stupider پہلوؤں، ایک عالمی متغیر کا استعمال کرتے ہوئے، آپ کی ضرورت ہے واضح طور پر آپ کر رہے ہیں کا کہنا ہے کہ. لہذا میں نے عالمی سطح پر میں ٹائپ کرنے کے لئے جا رہا ہوں ڈالر سائز، عالمی $ میز، اور میری تقریب مکمل ہو گیا ہے. تو بہت سے پہلے کے طور پر آسان نہیں ہے، لیکن شاید سی سے بھی کم وقت لیا ورژن، شاید؟ ٹھیک ہے. تو اب معلوم کریں () فنکشن کرتے ہیں. یہ کم از کم لیا چلو دیکھتے ہیں اگر یہ سی تو میں لیا ہے کہ آخر پر گھنٹے مجھے آگے بڑھیں اور اعلان ایک تقریب کے طور جانچ پڑتال. ہے جو، دلیل لفظ میں لیتا ہے ہجے کنندہ کی جانب سے آنے والا. اور میں صرف چیک کرنے کے لئے جا رہا ہوں اگر مندرجہ ذیل متغیر isset، میز لفظ کی بریکٹ strtolower - میری قوسین کے تمام متوازن دو - تو حقیقی واپس. ورنہ - یہ واقعی مشکل تھا اس پروگرام کا حصہ. ورنہ، جھوٹے واپس. کیا. یہ) (چیک. اب، یہ کیوں کام کرتا ہے؟ ٹھیک ہے، ایک میں، ایک لفظ میں منظور جس میں ایک تار ہے. دو، میں ہیش کے اندر کی جانچ پڑتال کر رہا ہوں $ میز کہا جاتا ہے جو میز،. میں نے فون کر کے چھوٹے پر مجبور کر رہا ہوں میں () tolower بالکل اسی طرح ایک تقریب سی، لیکن اس پورے لفظ کرتا ہے، نہیں ایک کردار. اور یہ کہ وہاں دوسرے الفاظ میں، مقرر کیا گیا ہے، اگر ایک کی قیمت دوسرے الفاظ میں، مقرر کیا گیا ہے، یہ سچ ہے، تو جی ہاں، یہ ایک لفظ ہے. میں بوجھ کے ساتھ اسے وہاں ڈال دیا ہے (). اور اگر نہیں تو، مجھے جھوٹے واپس جا رہا ہوں. اب دوسروں کے لئے آسان ہیں. تقریب سائز ()، میں نے یہ کس طرح کروں؟ میں بنیادی طور پر $ سائز کو واپس کرتے ہیں. لیکن میں تکنیکی کرنے کی ضرورت ہے اس پریشان کن بات کرتے ہیں. اور اصل میں سننے کو، میں کاٹنے کیا گیا بہت سے ایک کونے. میں واقعی میں عالمی $ میز کرنے کی ضرورت ہے. لیکن کہا جا رہا،) خالی ہے. خالی () حیرت انگیز ہے. فنکشن اتارنا (). میں کس طرح) (اتارنا لاگو کرنے کے لئے کرنا چاہتے ہیں؟ کیا. ٹھیک ہے. تو ()، یاد داشت مینجمنٹ ہے خالی مکمل طور پر میں آپ کے لئے دیکھ بھال پی ایچ پی اور ایک بہت کی طرح کچھ اعلی سطح کے زبانوں کی. تو یہ حیرت انگیز ہے. جہنم ہم نے ماضی خرچ کیوں کی طرح سی تحریری طور پر آٹھ کے علاوہ ہفتے کے بظاہر واقعی سست، واقعی وقت گھنٹے کی دسیوں کے ساتھ استعمال کے مسائل کے ہمارے بیلٹ کے تحت کام کرتے ہو؟ ٹھیک ہے، ایک بات کے لئے، یہ کام کر سکتے ہیں چھوٹے پروگراموں کے لئے ٹھیک ہے. یہ یقینی طور پر اپ سے گزر میرا ترقی وقت. لیکن دیکھتے ہیں کیا ہوتا حقیقی دنیا میں. مجھے اس ڈائریکٹری میں جانے دو ایک ٹرمنل ونڈو میں. ہجے کنندہ ہے. اور ایک طرف ایک نوٹس، اور آپ شاید مسئلہ سیٹ میں اس کا سامنا ہوا ہے چھ یا مسئلہ سات مقرر. آپ سختی کی ضرورت نہیں ہے . پی ایچ پی کے ساتھ پی ایچ پی فائلوں کو ختم. تم پر کہ سب سے پہلے ایک کی طرح ایک لائن ڈال دیا تو سب سے اوپر، کہ ایک خاص لائن ہے نحو کی ہے کہ بنیادی طور پر تلاش کا مطلب ہے پی ایچ پی سے ملاقات کی اور کے لئے استعمال پروگرام اس فائل کی تشریح. تو اب کوئی بھی واقعی جانتا ہے کہ میں نے پی ایچ پی پروگرام کو چلا رہا ہوں. میں اس کے طور پر اگرچہ صرف اس کو چلا سکتے ہیں کچھ سی میں مرتب کیا گیا لیکن یہاں بات ہے. اصل میں، پھر اس کے کیا. Dropbox/pset6 /. ہجے کنندہ ہے. ٹھیک ہے، 0.44 سیکنڈ. یہ تیزی سے اس وقت مل گیا ہے. اب پی ایچ پی ورژن میں جانے. رابطہ اچھا لگا. لیکن میں کتنا وقت لگتا ہے میں دفتر کے اوقات میں محفوظ. ٹھیک ہے. تو 3.59 پر، جس میں اصل میں یا تو درست نہیں لگتا. لیکن اس کے، لمبی کہانی کو مختصر وجہ ہے آپ کو ایک بہت بڑی رقم چھپائی کر رہے ہیں جب سامان کی سکرین پر، کہ خود چیزیں سست. یہ واقعی میں سی پی یو لیا کیا آلات 3.59 چلیں، میں تھا 0.44 لیا جس سی، کے برعکس چلیں سب سے زیادہ حال ہی میں. یہ واقعی ایک حکم ہے مختلف شدت. تو جہاں اس قیمت سے آ رہا ہے؟ کیوں یہ اتنا سست ہے؟ کیوں پی ایچ پی کی تو غیر تسلی بخش کارکردگی کا مظاہرہ کرتا ہے؟ ڈینیل؟ سامعین: آپ نے سچ میں نہیں ایک ہیش میز کا استعمال کرتے ہیں. DAVID MALAN: میں واقعی میں نے نہیں کیا ایک ہیش میز کا استعمال کرتے ہیں. تو میں قسم کے کیا. تو یہ ایک ساہچری سرنی ہے. سب سے زیادہ امکان پی ایچ پی میں لوگوں ہیں واقعی ہوشیار، وہ نیچے استعمال کیا جاتا ہے لاگو ڈاکو ایک حقیقی ہیش کی میز C یا C + + کی طرح کچھ میں. لیکن. جی ہاں. سامعین: [اشراوی]. DAVID MALAN: جی ہاں. تو اب میں نے لکھا کے افعال میں سے ہر ایک - اصل میں، آپ کہہ سکتے ہیں کہ ایک بار ایک تھوڑا زور؟ سامعین: افعال میں سے ہر ایک ہے آپ کو شامل کیا ہے بہت زیادہ مکمل صلاحیت سے - DAVID MALAN: تو یہ بالکل سچ ہے. ہم ہیں کہ بہت زیادہ اوور ہیڈ ہے واقعی صرف پر توجہ مرکوز کی طرف سے نہیں دیکھ میں نے صرف لکھا تھا جس میں dictionary.php،. کے برعکس، ایک پوری مترجم ہے پس منظر میں جا. بے شک، میں اس پروگرام بھاگ گیا، تو یہ مرتب zeros اور ہیں نہیں چل گیا تھا میری انٹیل CPU کے لئے ڈیزائن کیا. بلکہ، یہ لائن کی طرف سے لائن چل رہا تھا بالکل لگ رہا ہے کہ پی ایچ پی کوڈ جیسے ہم اس ٹائپ. اور اس طرح آپ کو ایک جب بھی استعمال کریں تشریح زبان، آپ اصل میں اس کی قیمت ادا کرتے ہیں. پڑھنے کے لیے کچھ وقت لے جا رہا ہے نیچے آپ کی فائل کے سب سے اوپر، کے لئے چھوڑ دیا حق، اور پھر ہر عمل لائن بار بار. اب حقیقت میں، خاص طور پر ویب پر، آپ اصل میں اس عمل کو تیز کر سکتے ہیں کے نتائج کیشنگ کی طرف سے پی ایچ پی کوڈ کی تشریح کیا جا رہا ہے. اور یہ کہ، ویب پر سمجھ میں آتا ہے کیونکہ آپ کو ایک صارف کی طرح نہیں ہے تو مجھے یہاں، لیکن 1،000 یا 10،000 صارفین، تو فائل ہے شاید پہلی بار حاصل اس کے بعد سست ہے، لیکن یہ بہت تیز ہے. لیکن یہ بھی، پھر، ایک تجارتی بند ہے. اور ایک تحقیق کے اعداد و شمار کی طرح کسی چیز کے لئے قائم، یا اس سے بھی جیسے بڑے کچھ اس، اپنے صارفین کو بالآخر گے کہ سست محسوس کرنے کے لئے شروع. تو مختصر میں، زبانیں ہیں تشریح ، ووگ میں بہت زیادہ بہت مقبول ہے، اور واضح طور سے زبانوں شاید آپ ہیں مسائل کو حل کرنے کے لئے جب تک پہنچنے چاہئے CS50 کے بعد. لیکن واقعی تم کتنا احساس ہڈ کے نیچے حاصل کی جاچکی کے لئے لے جا ہیش میں واقعی ان گزشتہ کئی ہفتوں میزیں، اور درخت اور کوشش کرتا ہے، بالآخر اصل میں استعمال کیا جاتا ہے اوپن بریکٹ کی طرح چیزوں کو لاگو، مربع بریکٹ، جس میں اب ہم کر سکتے ہیں عطا کے لئے آبار لے. تو اب ایک نظر ڈالیں اس ویب تناظر میں. اور میں ہے کہ آخری بار ذکر پی ایچ پی میں superglobals کا ایک گروپ ہے واقعی متعلقہ نہیں ہیں کمانڈ لائن پر. وہ سیاق و سباق میں زیادہ متعلقہ ہیں کی ایک ویب کے تناظر میں پی ایچ پی کا استعمال کرتے ہوئے. تو کے لئے ایک ویب سرور پر پی ایچ پی چل رہا ہے ایچ ٹی ایم ایل کی طرح کی چیزیں پیدا کرنے کے لئے. اور ہم نے $ _GET اور $ _POST میں glanced، اور کہ جہاں خود کار طریقے سے صارفین کی ہے آپ کو ایک جمع کراتے ہیں تو ان پٹ صرف ختم ہو جاتی ہے میں ختم ہونے والے ایک فائل کرنے کے لئے فارم. ایک ویب پر پی ایچ پی آلات کی طرح سرور. لیکن میں مختصر طور پر نظر آتے ہیں $ _COOKIE اور $ _SESSION. عام آدمی کی شرائط میں، ایک کوکی کے طور پر کیا ہے آپ سیاق و سباق میں یہ سمجھ ویب کا استعمال کرتے ہوئے؟ سامعین: کمپیوٹر پر فائل. DAVID MALAN: جی ہاں. یہ صارف کے کمپیوٹر پر ایک فائل ہے جو کچھ بھی ویب سائٹ کی طرف سے لگائے آپ کے لئے ہو. تو تم جب فیس بک، جب تم جاؤ جب bankofamerica.com، پر google.com پر، آپ کو تقریبا کسی بھی جب دنیا میں ویب سائٹ ان دنوں، cs50.net سمیت، ایک کوکی لگایا جاتا ہے آپ کے کمپیوٹر پر، جو میں RAM میں محفوظ ایک کی قیمت یا تو آپ اپنے براؤزر کی میموری، یا میں کمپیوٹر کبھی کبھی واقعی ایک فائل ذخیرہ آپ کی ہارڈ ڈرائیو پر. اور عام طور پر اس فائل میں کیا محفوظ ہے آپ کا صارف کا نام، آپ کی نہیں ہے پاس، عام طور پر کچھ نہیں حساس ویب سائٹ ایسا نہیں ہے جب تک ان کی سلامتی کے ساتھ اچھے، بلکہ یہ ایک بڑا منفرد شناخت کنندہ کے درمیان ہے دوسری چیزوں کے. اس پر نصب ایک بہت بڑی بے ترتیب تعداد میں ہے آپ کمپیوٹر لیکن آپ کے طور پر سوچ سکتے ہیں کی طرف سے طرح طرح کی ایک مجازی ہاتھ ڈاک ٹکٹ ایک کلب یا کسی تفریحی پارک ہے کی اجازت دیتا ہے عملے، اس کے مالکان سروس، آپ کون ہیں یاد کرنے کے لئے. بڑے بے ترتیب تعداد کی طرح ہے اگر ایسا ہے تو 12345678، کہ ظاہر ہے اگرچہ کے طور پر اس کی بھی بے ترتیب نہیں، تھنک ہاتھ سٹیمپ ہے کہ آپ جب facebook.com پہلی بار کے لئے، وہ آپ کے ہاتھ پر اس نمبر پر مہر ثبت. اور پھر آپ کو، HTTP بات ہے کیونکہ ایک براؤزر ہونے، اور اس کی وجہ فیس بک ظاہر ہے ایک ویب طور پر ایک ہی بات کرتا ہے سرور، پروٹوکول HTTP کا کہنا ہے کہ کسی بھی وقت آپ کے بعد کا دورہ facebook.com، چاہے وہ ایک دوسرے بعد میں، ایک گھنٹے کے بعد، یہاں تک کہ اگلے دن، تو جب تک آپ واضح طور پر نہیں ہے کے طور پر باہر کرنا، جس میں مؤثر طریقے سے اپنے ہاتھوں کو دھونے کی طرح ہے. HTTP آپ کو پیش کرنا چاہئے کا کہنا ہے کہ آپ ہاتھ سٹیمپ ہر وقت آپ کو اس ویب سائٹ پر واپس. فیس بک تو وہ کیا ہے کرتا ہے کہ ہاتھ سٹیمپ دیکھو اور وہ 123456789، اوہ، کا کہنا ہے کہ. میں پہلی نظر میں پتہ نہیں ہے کہ اس ڈیوڈ Malan، کیمبرج میں ہے میسا چوسٹس، لیکن وہ چیک کر سکتے ہیں ان کے ڈیٹا بیس اور، کا کہنا ہے کہ اوہ، شخص جن کے کمپیوٹر ہم 123456789 لگائے پر ڈیوڈ Malan، کیمبرج کی طرف سے ہے میسا چوسٹس. کی نے اپنی پروفائل تو اس صارف دکھا دو صفحہ یا اس کی خبریں. لیکن ایک مسئلہ ہے یہاں یہ تو ویب درحقیقت کس طرح کام کرتا ہے. کی ایک فوری مثال کے طور پر ایک نظر لے چلتے ہیں. کی اصل facebook.com کہنا چلتے ہیں. لیکن ہم وہاں جا سکتے ہیں، اس سے پہلے دو مجھ سے آگے بڑھو اور کروم کی کھل یہاں انسپکٹر نیچے. میرے نیٹ ورک کے ٹیب بھی جائزہ لیں. اور اب کی آگے بڑھو اور ٹائپ کرتے ہیں https://facebook.com میں. ہم نہیں دیکھتے تاکہ اور میں وہ کر رہا ہوں ان باز ہدایات اور فضلات کے تمام وقت ان کے ذریعے دیکھ. مجھے انٹر دبائیں ہیں. ٹھیک ہے. ہم درخواستوں کے پورے گچرچھی کو دیکھ کر. فیس بک آمدید آتا ہے. فائلوں کے پورے گچرچھی ہے. اور یہاں، میرا ذکر فی ، کہ تاخیر آخری وقت آ گیا ہے HTTP درخواست کی ایک بہت. لیکن سب سے پہلے ایک ہے شاید سب سے زیادہ دلچسپ. تو یہاں ذیل میں سکرال، اور میں ایک سیکنڈ میں میں زوم کریں گے. اس قسم کی جا رہی ہے ایک میس، لیکن دیکھتے ہیں. فیس بک پر ہمیں بھیج رہا ہے سامان کے پورے گچرچھی. لیکن وہ، دلچسپ. انہوں نے ایک نہیں لگانے، لیکن چار کر رہے ہیں یہاں میرے ہاتھ پر ہاتھ ڈاک ٹکٹ. سیٹ کوکی، کریں Set-کوکی، سیٹ کوکی، سیٹ کوکی. اور یہاں چند ایک خصوصیات موجود ہیں. ان میں سے سب کچھ کا ذکر میعاد ختم ہونے کی طرح. فیس بک کی طرح امید کر رہا ہے اور یہ لگتا ہے 2015 تک مجھے یاد رکھنا. تو ہے کہ شاید جس کے ذریعے وقت ہے میں باہر لاگ ان کرنا ہوگا یا وہ صرف کروں گا خود کار طریقے سے میں مان واپس نہیں آ رہا. تو یہ اصل میں ایک مہذب ہے وقت کی رقم. اور کچھ دوسرے ہیں چیزیں یہاں کیا ہو رہا. یہ کوکی زبردستی یہ ہو سکتا ہے کہہ کر خارج کر دیا کہ یہ 1970 میں ختم ہو گیا کوکیز کے وجود سے پہلے. لہذا براؤزر بس جا رہی ہے ٹھیک ہے فرض کرنا، اس طرح ہے ہاتھوں سٹیمپ دھونے. لیکن اب اپنے براؤزر کرتا ہے جب ایک کے بعد درخواست - مجھ سے آگے بڑھو اور اس کے کرنے دو بار دوبارہ لوڈ کریں. اب میرے پاس واپس سکرال دو سب سے اوپر کی درخواست اور نیچے جانا یہاں، درخواست ہیڈرز. اگر اس نوٹس کے. تو اب میں جواب ہیڈر، کے تحت نہیں ہوں لیکن اس کی درخواست کے ہیڈر کا کہنا ہے توجہ. اور محسوس کریں کہ اپنے براؤزر کے حصے کے طور مار دوبارہ لوڈ کرنے کے بعد اس کی درخواست ہے کم از کم مندرجہ ذیل بھیجا معلومات. نہیں سیٹ کوکی، لیکن کوکی. تو اس لائن ہے، HTTP ہیڈر تو اپنے براؤزر کی طرح ہے، بات کرنے کے لئے میری یہ پیش کی جانے بغیر فیس بک کے معائنہ کے لئے میرے ہاتھ. تو ان کوکیز کو ہو سکتا ہے اس کے لیے تو استعمال کیا جاتا ہے؟ آپ کون ہیں یاد ہے، یا کس طرح یاد رکھنا کئی بار آپ وہاں کیا گیا ہے، یا ہے واقعی کچھ. تو یہاں counter.php ہے. اور مجھے فونٹ پر میں زوم ہیں. اور میں یہ صفحہ دوبارہ لوڈ ہر وقت، توجہ یہ کتنی بار یاد ہے میں وہاں رہا ہوں. ٹھیک ہے، کہ تمام ہے کہ متاثر کن نہیں ہے. چلو بس، اس ٹیب بند اور اب کی پیٹھ کے پاس چلتے ہیں http://localhost/counter.php. اوہ، یہ دلچسپ ہے. یہ بھی، یاد میں ٹیب کو بند کر دیا ہے. اور واضح طور سے، میں براؤزر بند ہو، صحیح طریقے سے عملدرآمد کیا تو میں اب بھی اس رکن کی ہے کہ یاد کر سکتے ہیں وہ یا وہ جو پہلی بار تھا، اور صرف ایک بار میں نے کروم کے مینو میں جانے، جس یہاں یہاں ہے، اور اس کے پاس جاؤ تاریخ، اور واضح براؤزنگ ڈیٹا پر کلک کریں، تم میں سے بعض میں ہو سکتا ہے کے طور پر ماضی میں، صرف اس صورت میں اپنی کوکیز گے اصل میں ویب کے دوران خارج کر دیا جائے ترقی. لہذا، ہم جاتے ہیں تو - کی یہاں gedit تک بند ہیں. اور ہم اس فائل کو اب جانا ہے. مجھے ہمارے میں جانے دو vhosts / localhost / عوامی، اور مجھے کرنے دو counter.php. یہ ایک خوبصورت ہے یہ نوٹس سادہ پروگرام. یہ ایک بہت آسان ویب سائٹ ہے. تو فائل کے سب سے اوپر صرف تبصرے ہے. لیکن یہاں ایک نئی لائن ہے اگر آپ کر سکتے ہیں P-سیٹ سات، میں نے پہلے سے ہی دیکھا ہے session_start (). یہ پی ایچ پی کوڈ کی ایک لائن ہے بنیادی طور پر ویب سرور کو بتاتا ہے، بنانے کے لئے ہاتھوں ٹکٹ اور بنانے کے لئے اس بات کا یقین ہاتھ ڈاک ٹکٹ چیک کرنے کے لئے اس بات کا یقین. کہ تمام ہے کہ لائن کرتا ہے، اور یہ ہمارے لئے اس عمل کے تمام کرتا ہے. اس وقت میں صرف مل گیا ہے کا نوٹس یہاں دو شاخوں. تو اس کے انسداد کی چابی اندر نامی خصوصی عالمی متغیر $ _SESSION مقرر کیا گیا ہے - دوسرے الفاظ میں، وہاں کچھ قیمت ہے تو - کی اسے لے اور یہ ایک مقامی میں جمع کرتے ہیں متغیر انسداد $ ملاقات کی. ورنہ، انسداد $ تفویض چلو 0 ڈیفالٹ قدر. اب یہاں ہے کہ پی ایچ پی میں سے ایک پہلو ہے ایک نعمت اور ایک لعنت دونوں. پی ایچ پی کی ایک چھوٹی سی میلا ہے. لہذا سی جبکہ، کیا کرے گا انسداد کے دائرہ کار دیا گیا ہے یا تو یہاں یا یہاں؟ یہ محدود ہو گئی ہوتی ان گھوبگھرالی منحنی خطوط وحدانی کے لئے. سوچو کیا؟ پی ایچ پی میں، یہ ان لوگوں کا بھی باہر موجود ہے یہاں یہاں گھوبگھرالی منحنی خطوط وحدانی،، اور، اور یہاں اور یہاں، اور بھی نیچے سے نیچے. تو میں نے اس معنی میں ایک نعمت ہے کا کہنا ہے کہ آپ کو سوچنے کی ضرورت نہیں ہے کہ ہم ہفتے قبل کیا تھا کے طور پر مشکل. لیکن یہ بھی ہے کہ میں ایک لعنت کا تھوڑا سا ہے آپ میں ایک متغیر کا استعمال کرتے ہیں جہاں کوئی بات نہیں پی ایچ پی، کم از کم اس طرح کے ایک پروگرام میں، اس کے لئے عالمی سطح پر قابل رسائی ہے بہتر یا بدتر کے لئے. تو کیا تم اب اس بات کو ذہن میں رکھنا ہے آپ متغیر جانچ نہیں ہو سکتا. آپ کو کہیں اور ان کی وضاحت کر سکتے ہیں. لیکن میں بالآخر کیا کرنے جا رہا ہوں؟ میں اس عالمی کے اندر ذخیرہ کرنے کے لئے جا رہا ہوں کی قیمت کے طور پر متغیر انسداد کلید کا نتیجہ کاؤنٹر کے علاوہ 1. کر تو یہ صرف ریاضی ہے ایسا کرتا ہے اس کاؤنٹر کے incrementation. اور میں محفوظ رہا ہوں کہ حقیقت یہ ہے کہ واپس یہاں قدر ذریعہ ہے بنیادی طور پر ڈیٹا بیس کو اپ ڈیٹ کریں صارف 123456789 رہا ہے یاد ہے کہ یہاں دو بار. اور میں اگلی بار پھر سے کرتے ہیں جب میں صفحہ دوبارہ لوڈ کریں، یہ چیک کرنے کے لئے جا رہا ہے میرا ہاتھ مہر اور کہتے ہیں، اوہ، صارف 123456789 اب ہے یہاں تین بار کیا گیا. اور تو کیا پی ایچ پی اور اسی طرح کی زبانوں ہمارے لئے کر رہے ہیں وہ figuring ہے ہیں باہر کس طرح اور کہاں اور کتنی دیر تک اس خاص میں اقدار کو ذخیرہ کرنے کے superglobal. اور یہ اگلی بار superglobal میں صفحہ ملاحظہ طرح کی جادوئی ہے پہلے آبادی، اقدار کے ساتھ بھری ہوئی ہے آپ کو وہاں کا دورہ کیا آخری وقت تھے، کہ، ایک دوسرے کے پہلے ہفتے میں ایک تھا چاہے پہلے، یا 2013 میں اور اب ہم بات کر رہے ہیں کے بارے میں 2015. پی ایچ پی اور ویب سرور دیکھ بھال یہ سب آپ کے لئے. سامعین: [اشراوی]. DAVID MALAN: پی ایچ پی میں متغیر ہیں آپ جب تک بنیادی طور پر ہمیشہ عالمی ایک تقریب کے اندر ان کا اعلان، اور پھر وہ مقامی ہیں صرف تقریب. لیکن میں کسی بھی لکھا نہیں ہے کیونکہ کام کرتا ہے، وہ اب مؤثر طریقے سے کر رہے ہیں یہاں اپنی پوری فائل کے دوران عالمی سطح پر. سامعین: ایک راستہ ہے ان مقامی بنانے کے لئے؟ DAVID MALAN: کوئی ہے ان مقامی بنانے کا طریقہ؟ صرف افعال میں ان ریپنگ کی طرف سے. جس کا تازہ ترین ورژن میں پی ایچ پی، آپ کے ساتھ یہ کر سکتے ہیں ایک گمنام تقریب. لیکن میں اس کے بارے میں مزید جاوا اسکرپٹ کا سیاق و سباق. لیکن مختصر جواب نہیں ہے. ایک طویل جواب ہاں میں ہے. اچھا. اچھا کوئز سوال. ٹھیک ہے. تو آخر میں، صفحہ خود ہے واقعی بہت آسان. نوٹس کی ہے کہ میں نے پی ایچ پی موڈ، یاد سے باہر نکلنے کے ایک بار اسے نیچے اس چیز کے تمام ذیل میں صرف تھوکنے حاصل کرنے کے لئے جا رہا ہے براؤزر خام باہر. میں بھیجنے کے لئے چاہتے ہیں کیونکہ، جو کہ ٹھیک ہے صارف کچھ HTML، لیکن میں کرنا چاہتے ہیں متحرک ہے کہ ایچ ٹی ایم ایل کو اپ ڈیٹ کرنے. اور میں ایسا کر سکتے ہیں کا ایک طریقہ الگ الگ ہے کے بہت تیزی سے پی ایچ پی میں واپس چھوڑ موڈ، استعمال کھولیں بریکٹ سوالیہ نشان برابر علامت، اور اس کے بعد پیداوار کی قیمت انسداد کے. یا یہ، تھوڑا خفیہ لگ رہا ہے اگر برابر علامت صرف کچھ اصل میں ہے اس کے لئے syntactic چینی printf کا ($ انسداد). لیکن سچ کہوں تو، یہ صرف تھوڑا بدسورت ہے اور پریشان کن ایک چھوٹی سی ٹائپ کرنے کے لئے. تو پی ایچ پی کی بہت اچھی طرح اس کو نمایاں کریں فراہم کرتا ہے آپ کو صرف اسے کہہ سکتے ہیں جہاں اور succinctly اسی طرح میں. تو کیا نیچے جا رہا ہے ہڈ؟ کی فوری طور پر نیٹ ورک پر نظر ڈالیں یہاں counter.php کے لئے ٹیب. اور مجھے آگے اور سب سے پہلے جانے آپ کی کوکیز صاف ہیں. چلو واضح براؤزنگ کے اعداد و شمار کے بعد وقت کے آغاز. اب یہاں واپس جانے. اب صفحہ دوبارہ لوڈ کرتے ہیں. اور میں واپس صفر پر ہوں. میرے ہاتھ سٹیمپ دھویا گیا ہے کیونکہ، اب میں ایک نئی کوکی حاصل. میں نیٹ ورک کے ٹیب پر نظر ڈالیں اور بے شک تو جواب ہیڈر، نوٹس میں نظر آتے ہیں آلات مجھے بھیج رہا ہے کہ جس کا نام کسی حد تک ہے ایک کوکی منمانے، لیکن قسم کی معقول، PHPSESSID. اور یہ واقعی مجھے اس بھیج رہا ہے بڑے بے ترتیب تعداد. یہ بہت بڑی تعداد نہیں ہے. یہ بہت شش اعشاری نہیں ہے. یہ اکشرانکیی سٹرنگ کے کچھ قسم کی ہے، لیکن شاید یہ بے ترتیب ہے. اور یہ کہ ہاتھ سٹیمپ ہے تو میں حوالہ دے رہا ہوں کہ بات. دریں اثناء میں اس وقت کو دوبارہ لوڈ کریں پر کلک کریں اور اگر میرا دوسرا کے لئے اس دوسری لائن پر نظر اب کی درخواست، نوٹس کہ میری درخواست ہیڈر PHPSESSID اس کے برابر میں شامل ہیں، -کوکی مقرر کیا، لیکن صرف کوکی نہیں. اور یہ کہ اپنے براؤزر کی ڈیمو ہے میرے ہاتھ سٹیمپ کے. تو اب ایک جھلکی کے طور پر، اور ہم مزید بات کریں گے ایک ہفتے یا اس میں اس، لیکن کے بارے میں کس طرح اس سے آپ کو کرتا ہے کمزور، آپ فیس بک اکاؤنٹ کمزور، اور اس جیسے دیگر کمزور اہمیت ہے؟ سامعین: کوئی آپ کوکی ہے. DAVID MALAN: جی ہاں، اگر کسی آپ کوکی ہے. میں زیادہ آپ میں سے کچھ کی طرح، صحیح معنوں میں مطلب ایک کلب یا ایک طرح سے کوشش کی ہے ہو سکتا ہے تفریحی پارک، تم سے کچھ کی کوشش کریں تو کی طرح اس ہی سہی، سٹیمپ کاپی کرنے کے لئے پیچھے کی طرف کسی دوسرے شخص کے ہاتھ پر، اور پھر وہ یا وہ کے طور پر اس پیش ان کے اپنے، یہ اصل میں لگتی ہے تو جیسی، 123456789، تو ویب کے سرور بظاہر صرف کی جا رہی ہے اس صارف آپ کو یقین ہے کہ. اور یہ واقعی ایک بنیادی ہے خطرے آپ کوکیز کا استعمال کرتے ہیں کسی بھی وقت کیونکہ کسی کو صرف کرنے کے لئے بہت spoofs تو آپ کوکی بات، کیا یہ باہر کے اعدادوشمار واقعی اس کی کاپی کی طرف سے یا تو ہے، آپ کے کمپیوٹر میں دیکھ کر اور ٹھیک ہے، کی طرح کیا جا رہا ہے. ڈیوڈ کی کوکی، وغیرہ JJ3JIK ہے اور اور پھر وہ جانتے ہیں کے لئے کافی ہوشیار ہیں کس طرح طرح کی دستی طور پر بھیجنے کے لئے ہے ایک براؤزر سے یا ایک سے کوکی وہ لکھتے پروگرام، وہ مکمل طور پر کر سکتے ہیں آپ کے طور پر ایک ویب سائٹ میں لاگ ان کریں. یہ دکھاوا کرنے کے لئے مشکل نہیں ہے کسی ہم P-سیٹ دوبارہ جب تک کہ دو، جس میں کیا متعارف کرایا؟ سامعین: خفیہ نگاری. DAVID MALAN: ایک چھوٹا سا خفیہ نگاری کے سا. سادہ خفیہ نگاری، کم از کم میں سٹینڈرڈ ایڈیشن، لیکن crypto کی بہر حال. کم. آپ سب کو خفیہ تو یہ پتہ چلتا ہے کہ تم سے کچھ کا استعمال کرتے ہوئے ان ہیڈر اب، ایس ایس ایل کے طور پر زیادہ familiarly جانتے ہو محفوظ ساکٹ لیئر، یا https:// یو آر ایل، اس کے بعد ان چیزوں کے ہم سب کیا گیا ہے میں glancing اصل ینکرپٹ کئے جاتے ہیں، جس میں یہ آپ کی طرح ہے مطلب یہ ہے کہ ہاتھ ٹکٹ نہیں پڑھ سکتے. صرف facebook.com کر سکتے ہیں، یا google.com، یا اس کیس میں، آلات کر سکتے ہیں کہ ہاتھ سٹیمپ پڑھیں. بدقسمتی سے، اگرچہ، اور پھر، یہ ہے این ایس اے سامان کے ساتھ بھی مناسب دیر سے، یہاں تک کہ SSL ٹوٹ ہے. اور مشکل اصل میں نہیں ہے یہاں تک کہ خفیہ کاری ٹوٹ. تو خفیہ کاری کے خلاف کریک ڈاؤن کی طرف سے زیادہ سے زیادہ، نہیں لیکن tricking کی طرف سے خفیہ کشائی میں براؤزر اعداد و شمار کے وقت سے پہلے ہی. لیکن پھر، ہم آپ چڑھاو گے اس کے ساتھ طویل عرصے سے پہلے. اب کے لیے، صرف ڈر. یہ المناک قسم کے سچ ہے. ٹھیک ہے. تو، جہاں یہ اب ہمیں چھوڑ کر ہے؟ ٹھیک ہے، اس کے کیا. آگے بڑھو اور ایک فوری لے ہم نے ایک وقفے لے چھیڑ سے پہلے. اور میں ہم تھوڑا سا طویل تاخیر گے آج، لیکن ہم میں کودو جا رہے ہیں کچھ بالکل نیا اور شہوانی، شہوت انگیز، جس میں اس سے بھی زیادہ کے لئے آپ کی بھوک whet کرنے. تو یہ چھیڑ ہے. تو ایس کیو ایل، ہم کے بارے میں بات کرنا شروع کر دیا کبھی تو مختصر طور پر آخری بار. آپ واقعی میں آپ کے ہاتھ گندی حاصل کریں گے P-قائم سات میں اس میں سے کچھ کے ساتھ. اور عام آدمی کی شرائط میں، کیا SQL کرتا ہے - S-ق L - آپ کے لئے ہے؟ یہ کیا ہے؟ جی ہاں. سامعین: آپ تک رسائی کے اعداد و شمار ہیں. DAVID MALAN: جی ہاں. یہ آپ کے ڈیٹا تک رسائی حاصل کرتے ہیں ایک ڈیٹا بیس میں. طلب زبان ساخت. اور یہ بنیادی طور پر ہے پروگرامنگ زبان. اس کی خصوصیات ہیں کہ ہم بھی کلاس میں استعمال نہیں کرے گا. لیکن اگر آپ کو مؤثر طریقے سے کر سکتے ہیں افعال کی وضاحت. وہ ذخیرہ کہا جاتا ہے کر رہے ہیں SQL میں طریقہ کار. لیکن ہم کافی سادہ ہے اور صرف یہ جاری رکھیں گے کچھ بنیادی آپریشن کے لئے اس کا استعمال ،، کے اعداد و شمار کو منتخب ڈیٹا داخل کی طرح کے اعداد و شمار کو اپ ڈیٹ، اور اعداد و شمار کو خارج کرنے کی. اور تم واقعی ایک ڈیٹا بیس کے بارے میں سوچ سکتے ہیں، ایک SQL ڈیٹا بیس کی طرح، کے طور پر مائیکروسافٹ ایکسل ہونے. SQL ایک سنبندپرک سے مراد ہے کیونکہ ڈیٹا بیس، جہاں رشتے صرف ٹیبل کا مطلب ہے. قطار اور کالم. تو کچھ بھی آپ کو ایک سپریڈ شیٹ میں ڈال کر سکتے ہیں یہ یا Google Docs کے جیسے، اگر آپ کو ایک SQL ڈیٹا بیس میں ڈال سکتا ایک میز اعلان کی طرف سے. اب، کس طرح آپ کو اصل تک رسائی حاصل کرتے ہیں وہ معلومات؟ ٹھیک ہے، حکم دیتا ہے کے ساتھ یا اس طرح کے سوالات. منتخب کریں، ڈالیں، اپ ڈیٹ، اور ختم. اور سب سے زیادہ حصہ کے لئے، ہیں آپ کی ضرورت ہو گی چار صرف اجزاء بہت طاقتور کچھ کرنا مسئلہ میں سات مقرر. اب واپس دن میں، آپ اصل میں کریں گے ایک میں ایک ڈیٹا بیس کے ساتھ بات چیت میں سیاہ فام اور سفید ٹرمنل ونڈو اس طرح ایک ٹمٹمانے فوری طور. اور ہم پر چلا رہے ہیں، ڈیٹا بیس آلات ہے جو، ایس کیو ایل کہا جاتا ہے مفت اور اوپن سورس ڈیٹا بیس کے انجن. آپ گوگل اور وکی پیڈیا پڑھتے ہیں مضمون، آپ کا نام ہے کہ پتہ چل جائے گا کچھ کے لئے کی منتقلی کے تھوڑا سا لینکس کے ورژن. ماریا ڈیٹا بیس اصل میں ہے ایک ایس کیو ایل کی بات تو فورک. طویل مختصر کہانی، اوریکل ایس کیو ایل خریدا. اوریکل ایک بڑی کمپنی ہے. لوگ اس کے کہ میں فکر مند کر دیا گیا ہے اب کوئی، کافی کے طور پر اوپن سورس رہے تو یہ ہے کہ مائی ایس کیو ایل کی صرف ایک نقل ہے ، اب بھی مفت اب بھی کھلا ماخذ، اور ڈیفالٹ کی طرف سے Fedora کے لینکس میں نصب. لیکن اس میں درد کی طرح ہے ایک کے ساتھ واقف کرنے کی گردن ڈیٹا بیس اس طرح. تو ہم CS50 آلات میں شامل ہیں نامی ایک مفت اوپن سورس کے آلے phpMyAdmin کے. صرف ایک اتفاق ہے کہ یہ پی ایچ پی میں لکھا ہے. کوئی بنیادی ہے یہاں پی ایچ پی کے لئے کی ضرورت. لیکن یہ صرف ایک ویب کی بنیاد پر آلہ ہے کہ ہم میں نصب، مفت کے لئے ڈاؤن لوڈ ہمیں کرنے کی اجازت دیتا ہے کہ آلات، ایک گرافیکل یوزر انٹرفیس ہے جس کے ساتھ P-قائم سات ڈیٹا بیس کے ساتھ کی جس میں نئی ​​ڈیٹا بیس پیدا کرنے کے لئے، آپ کی اپنی حتمی منصوبے کے لئے کہتے ہیں کہ آپ چاہتے ہیں تو کی طرح، اور آخر میں بنانے کے CS50 خزانہ طرح متحرک ویب سائٹس آپ اعداد و شمار سوال کرنے کی اجازت دے اور اس متحرک طور پر اعداد و شمار کو اپ ڈیٹ. آپ کو استعمال کرنے کے لئے نہیں کر رہے ہیں، صرف ایک سادہ ٹیکسٹ فائل یا CSV. تم واقعی میں ایک زبردست ڈیٹا بیس استعمال کر سکتے ہیں آپ کو زیادہ پر عمل کر سکتے ہیں پروگرام ہے تاکہ صرف پڑھنے سے زیادہ بہتر سوالات linearly سب کچھ کے ذریعے. تو مثال کے طور، یہ ہم دے کیا ہے P-قائم سات کے لئے باکس کے باہر. یہ بظاہر کم از کم کے ساتھ ایک میز ہے ہے جن میں سے ایک تین کالم، صارف کا نام، جن میں سے ایک، ہیش ہے اور دوسرے جس کی شناخت ہے. لیکن دلچسپ بات یہ ہے، اور صرف یہاں ایک ہی خیال کو چڑھانے، صارف کا نام حق، شاید پہلے سے ہی منفرد ہے؟ میرا مطلب ہے، سب سے زیادہ کسی بھی ویب سائٹ، تو آپ وہاں، ایک صارف کا نام ہے دو کیسر نہیں ہو سکتا. دو malans نہیں ہو سکتا. دو jharvards نہیں ہو سکتا. اس منفرد. دوسری صورت میں، وہ نہیں جانتے جس jharvard کے یہ اصل میں ہے. تو کیا یہ بھی کے لئے حوصلہ افزائی ہو سکتا ہے بائیں طرف ایک تہائی کالم ہونے کے ایک کی طرح لگتا ہے، جس میں وہاں فون کی شناخت، اسی طرح منفرد ہے اس نمبر؟ یہ ایک چھوٹا سا بے کار محسوس ہوتا ہے پہلی نظر میں میرے لئے. یہ کیوں کرنے کے لئے مجبور ہو سکتا ہے نہ صرف منفرد صارف کا نام، منفرد تعداد بھی لیکن؟ سامعین: وہ کر سکتے ہیں ایک ہی پاس. DAVID MALAN: لوگ ہو سکتا ہے ایک ہی پاس، اس بات کا یقین. یہ بالکل ہو سکتا ہے. لیکن وہ اس منفرد صارف کا نام ہے، میں کہ واقعی نہیں ہے کہ بحث کریں گے بات، کیونکہ وہ میں ٹائپ کریں تو ان کے صارف کا نام، میں نے صرف چیک کرنے کی ضرورت ان پاس، اس کے ان ہیش. کیوں؟ سامعین: تیز تلاش. DAVID MALAN: تیز تلاش. کیوں؟ سامعین: ID سے ایک ہے. DAVID MALAN: ID صرف ایک کردار ہے، یا اس سے زیادہ عین مطابق ہو، یہ ایک بڑی تعداد ہے، تو شاید یہ 32 بٹیں یا اس طرح کچھ. جبکہ اسم رکنیت، بظاہر جیسن Hirschhorn کی اپ کی طرح ہے مضحکہ خیز طویل، اور یہ جا رہا ہے سٹرنگ پر مجھے بہت زیادہ وقت لے شاید ایچ میں آر ایس-C-H-H-O-R ن کا آپس میں موازنہ، اور ترتیب میں اس طرح ایک / 0 یا کچھ اور، مخالفت کے طور پر، جیسن تلاش کرنے کے لئے صرف کہہ میرے صارف کے نمبر دو دے. جو 32 بٹیں ہے. یہ ایک int ہے کہ آپ کا موازنہ کرنے ہے. اور یقینا، یہ ہے بالکل کیوں ڈیٹا بیس منفرد شناخت کی وضاحت کرنے کی کوشش کرتے ہیں ان میں قطار. اب دیگر ڈیٹا کی اقسام کیا ہیں بظاہر int اور اس کے علاوہ اس طرح ڈور؟ ٹھیک ہے، زیادہ مناسب ہو، جیسے SQL ڈیٹا بیس، ایس کیو ایل، چار شعبوں ہے. اور misleadingly ایک چھوٹی سی چار ایک چار نہیں ہے. ایک ایس کیو ایل ڈیٹا بیس میں ایک چار میدان ہے ایک یا ایک سے زیادہ حروف، لیکن یہ ایک ہے حروف کی مقررہ تعداد. تو مثال کے طور پر، میں پر جانے کے اگر آپ نے پہلے ہی ہے، یا ہو سکتا ہے phpMyAdmin کے طور پر جلد ہی ایک مسئلہ سات مقرر، اور میں جانا جائے گا اپنے ڈیٹا بیس کے لئے، اور صرف تفریح ​​کے لئے، کے نام سے ایک نئی ٹیبل تشکیل دیں صرف دو کالم کے ساتھ ٹیسٹ. میں تو چلیں کو کلک کریں گے. اور یہ کافی واقف ہو جائے گا، تم ٹنکر خاص طور پر کے ارد گرد اپنے اپنے طور پر. یہاں میں پیدا کرنے کے لئے کی شناخت کی قسم ہو سکتا ہے قسم int کی ایک نئی میز. لیکن یہاں میں صارف کا نام ٹائپ کر سکتے ہیں کہ پہلے میز کے آرام. اور میں ایک مکمل جھوبڈ ہے نوٹس سے منتخب کرنے کے اقسام میں سے. اور یہ بھی ہے کیوں phpMyAdmin کے قسم کی اچھی ہے. یہ ہے کہ آپ میں خود درس و تدریس کی طرح ہے صرف کی قسم کے نقطہ، اور کلک کریں، کر سکتے ہیں اور ڈراپ ڈاؤن مینو میں نظر آتے ہیں، اور اس سے نتیجہ نکالنا کیا اختیارات SQL آپ کو دیتا ہے. اور یقینا، میں چار کا انتخاب کرتے ہیں، میں تو لمبائی، یا کس طرح کی وضاحت کرنے کے لئے ہے بہت سے اقدار، کس طرح بہت سے حروف. تو بہت عام اقدار کی طرح باتیں ہیں 255، لیکن ہے کہ ایک چھوٹا سا طویل ہے. عام طور پر ایک رکنیت کے لئے آٹھ ہے. لیکن یہ ان دنوں ایک چھوٹا سا چھوٹا ہے. تو یہ ایک ڈیزائن فیصلہ ہے. یہ، 8 حروف زیادہ سے زیادہ ہے 32، 255، 1،000؟ یہ آپ پر منحصر واقعی ہے. لیکن ایک چار فیلڈ ایک مقررہ تعداد میں ہے. تو بھی چند کا انتخاب کریں اور آپ کو اس قسم کی ہیں آپ کو ایک طویل اسم رکنیت چاہتے ہیں تو مصیبت. منتخب کریں بہت زیادہ اور کیا ہے کمی؟ سامعین: [اشراوی]. DAVID MALAN: یہ بیکار ہے. بس سی کی طرح، آپ کو ایک بڑا ہے تو میموری کا حصہ آپ کو ضرورت سے زیادہ، تم ہو صرف وقت برباد کر اور جگہ برباد کر. تو ایک متبادل کے طور پر، وہاں موجود ہے کی طرف سے اس مسئلہ کو حل کرتی ہے جس VARCHAR، ، ایک مقررہ لمبائی کے طور پر کی لمبائی نہیں علاج لیکن ایک زیادہ سے زیادہ لمبائی، اور ایک کا استعمال کرتے ہوئے کے طور پر متغیر حروف کی تعداد، جو اس کے بعد آپ کے طور پر صرف ان حروف کا استعمال کرتے ہیں کے لئے جاتا ہے اصل ضرورت ہے. وہ کامل لگتا ہے. ہم کیوں سے چھٹکارا حاصل نہیں ہے چار کے اعداد و شمار اس کے بعد ٹائپ کریں؟ کیا کمی کی ہو سکتا ہے لگتا ہے VARCHARs، کا استعمال کرتے ہوئے کی طرح یہ ایک اچھا کی جیت ہے؟ جی ہاں؟ سامعین: [اشراوی]. DAVID MALAN: ٹھیک ہے، اچھا. تو آپ کے اعداد و شمار کے تمام ایک ہی ہے لمبائی، تشویش کیا ہے؟ سامعین: آپ کو برباد کر رہے ہیں ان سب کو کہہ کر کے اعداد و شمار. DAVID MALAN: تو آپ کے اعداد و شمار کے تمام ہے ایک ہی لمبائی، اگرچہ، میں بحث کریں گے کہ ایک زیادہ سے زیادہ لمبائی کی وضاحت VARCHAR پر سے مختلف نہیں ہے چار پر ایک مقررہ لمبائی کی وضاحت تو آپ کو پیشگی میں یہ تعداد جانتے ہیں. لیکن وہاں واقعی ہے، اور میں کی طرح ہو جائیں گے اس کا جواب سے حقیقت کو ہٹا دیں ایک زیادہ سے زیادہ وہاں اب بھی ہے، جس کے کر سکتے ہیں خاص طور پر اگر آپ کو، پریشان کن ہو ہے کہ ایک شخص کے نام کا سامنا آپ نے نہیں کیا ہے کہ غیر معمولی لمبی اندازہ. اور یہ بھی تھوڑا کم موثر ہے اصل کے طور پر VARCHARs پر تلاش کرنے کے لئے ، تلاش حروف کی مخالفت خاص طور پر بہت ہے اور یہ کہ طویل میزیں کے لئے کے اعداد و شمار کے بہت سے. تو یہاں بھی، موضوع دوبارہ ہے کوئی واضح انتخاب. تو آپ کو دوسرے کا احساس دینے کے لئے دلچسپی کے ہو سکتا ہے کہ اعداد و شمار اقسام یا تو کے لئے P-قائم سات یا میں مستقبل، INT ہے. BIGINT، ہے جس میں طویل طویل کی طرح ہے. یہ 64 بٹس ہو جاتا ہے. آپ میں دیکھ لیں گے جس کے دشملو، ہے ایک بہت ہے جس میں مسئلہ سیٹ، مسائل کا صاف جواب ہم فلوٹ اور سچل کے ساتھ سامنا کرنا پڑا گئی imprecision کی طرف اشارہ. اور پھر تریخ ویلہ ہے. ہے کہ ایک ڈیٹا کی قسم لفظی ہے ایک سال کی طرح نظر آنا، ایک ماہ، ایک دن، اور ایک گھنٹے، منٹ، اور دوسرے. لیکن SQL ڈیٹا بیس بھی چیزوں کو ہم کے اشاریہ جات کو فون کروں گا. اور ایک انڈیکس ہے کہ آپ کو کچھ ہے میز پر جب پیدا کرنے کی وضاحت تلاش اور دیگر کارروائیوں کے بنانے زیادہ موثر. خاص طور پر، کہا جاتا کچھ ہے آپ کر سکتے ہیں کہ پرائمری انڈیکس مندرجہ ذیل کے طور پر اعلان. ہم ساتھ آپ کے لئے یہ کیا ہے صارفین کی میز ہم آپ کو دے دیں. میں دستی طور پر تخلیق کیا گیا تھا لیکن اگر نوٹس یہاں دے صارفین کی میز یہ صارفین کا ایک نام. میں نے پہلے ہی شناختی مخصوص. میں int میں مخصوص. میں کے ساتھ صارف کا مخصوص زیادہ سے زیادہ 32 حروف. لیکن ہم رہیں تو کافی اس میں طومار کر رہا ہے وسیع ونڈو، نوٹس A ہے میں وضاحت کر سکتے ہیں دوسری چیزوں کے گروپ. ایک، میں صفات وضاحت کر سکتے ہیں کی طرح، آپ کو کیا، یہ جانتے INT اہستاکشرت ہونا چاہئے. میں منفی تعداد نہیں کرنا چاہتے ہیں، تو یہ اہستاکشرت ہیں. شہوت انگیز null یہاں متعلقہ نہیں ہے کیونکہ میں ہر صارف چاہتے ہیں ایک منفرد تعداد ہے. میں یہ نل ہو نہیں کرنا چاہتا. لیکن یہ دلچسپ ہے. میں شناختی یا تو یہ ہے کہ وضاحت کر سکتے ہیں پرائمری اس ڈیٹا بیس کے اہم، یا یہ ہے منفرد، یا اس کے حساب سے ترتیب، یا مکمل متن. تو آج کے مقاصد کے لئے، لمبی کہانی مختصر، بنیادی مطلب یہ ہے کہ یہ کریں گے دونوں تصوراتی اور تکنیکی ہو ہم منفرد کرنے کے لئے استعمال اس میدان صارفین کی شناخت. ہم صارفین کو نظر آئے تو، اس طرح ہے کی طرف سے زیادہ تر ان کو تلاش کرنے کے لئے ایک وعدہ کے کہ منفرد شناخت. اور ڈیٹا بیس کو یقینی بنائے گا کہ اگر آپ ایک صارف کے نمبر 3 ہے، تم نہیں کر سکتے جسمانی طور پر کسی دوسرے صارف داخل اسی نمبر 3 کے ساتھ. ڈیٹا بیس صرف انکار کرے گا اپنی تبدیلیوں کو محفوظ کرنے کے لئے. آپ کر سکتے ہیں کی وجہ سے، ایک اچھی بات کون سی ہے اپنے آپ سے خود کی حفاظت. خود متبادل طور پر، اسم رکنیت کے لئے. تو دوسری صف، یاد، صارف کا میدان ہے. تو یہاں دوسری صف صارف کا نام ہے، ہم ابھی تک وہاں چھوڑ دیا پر کے طور پر کیا. تو اور کیا میں وضاحت کرنا چاہتے ہیں کر سکتے ہیں؟ میں، SQL کے مطابق، کی اجازت نہیں کر رہا ہوں دو بنیادی چابیاں وضاحت کرنے کے لئے. آپ کو جہاں آپ کو ایک مشترکہ اہم وضاحت کر سکتے ہیں دونوں شعبوں میں نظر آتے ہیں، لیکن وہ نہیں کر سکتے ہیں انفرادی طور پر بنیادی چابیاں ہو. تو اس سوال سے باہر ہے. تو میں منتخب کرنے کے لئے چاہتے ہیں جو ہو سکتا ہے؟ ٹھیک ہے، ایک منفرد روح میں اسی طرح ہے آپ اس کی وضاحت کریں جہاں بنیادی کلید میدان منفرد ہو جائے گا، لیکن یہ ہے ایک بننے کے لئے نہیں جا رہا میں ہر وقت استعمال کرتے ہیں. اور ہم سب یہ ایک استعمال کرنے کے لئے نہیں جا رہے ہیں پھر کیا وجہ کے لئے وقت ہے؟ اگر یہ ممکنہ طور پر سست ہے یہ ایک طویل اسم ہے. یہ صرف وقت کی بربادی ہے. انڈیکس، دریں اثنا، یہ ہے کہ کی وضاحت منفرد ہونے جا رہا، لیکن میں چاہوں گا نہیں آپ نیچے اپنے جادو کام کرنے کے لئے یہ تیزی سے میرے لئے بنانے کے لئے ڈاکو اس میدان پر تلاش. تو شاید یہ یہاں متعلقہ نہیں ہے. رکنیت کے لئے، میں کہنا تھا کہ منفرد اچھا جواب ہے. لیکن ہم زیادہ صارفین بنا دیا لگتا ہے کہ صرف صارف سے دلچسپ، hashes، اور ID تعداد. کیا ہم لوگوں کو مکمل نام دیا تو کیا ہوگا؟ ہم ان کے پتے کو کیا دیا تو اور ان کے بارے میں دوسرے اعداد و شمار؟ ٹھیک ہے، تو آپ کی وضاحت ہے کہ ایک میں ایک کالم ڈیٹا بیس حساب سے ترتیب ہے، کا مطلب ہے کہ ایس کیو ایل، یا اوریکل، یا جو کچھ بھی کے ڈیٹا بیس آپ کو اس کے جادو کام کرنا چاہئے، کا استعمال کرتے ہوئے کر رہے ہیں اور پسند کے اعداد و شمار کے کچھ قسم کا استعمال کرتے ہیں ایک درخت، یا ایک trie، یا ایک طرح کی ساخت ہیش کی میز، یا اس بات کی ضمانت کرنے کے لئے کچھ کہ آپ کا استعمال کرتے ہوئے اعداد و شمار کے لئے تلاش جب اس خاص میدان پر منتخب کریں - جیسے مجھے دکھا دو ہر ظاہر ہوتا ہے کہ آکسفورڈ سٹریٹ پر رہتا ہے. اس طرح ایک سوال. آپ کو پیشگی میں بیان کیا ہے کہ آپ کو اس میدان میں ایک انڈیکس چاہتے ہیں، تلاش بہت تیزی سے، زیادہ ہو جائے گا. آپ ایک انڈیکس، بہترین وضاحت نہیں کرتے تو آپ کر سکتے ہیں ایک لکیری تلاش تو ہے اس کے مطابق نہیں ہے. لیکن آپ کو انڈیکس، ہوشیار کی وضاحت تو ڈیٹا بیس بنا دیا ان لوگوں کو جو - اب درخت جانتے ہیں جو تم جیسے لوگوں اور کوشش کرتا ہے اور ہیش میزیں - خود کار طریقے سے اس طرح ایک کے اعداد و شمار کی تعمیر کریں گے اس بات کو یقینی بنانے کے لئے RAM میں ساخت ان کی تلاش میں بہت تیز ہیں. FULLTEXT دریں اثنا، روح میں اسی طرح کی ہے لیکن آپ کو وائلڈ کارڈ کے کرنے کے لئے کی اجازت دیتا ہے تلاش، جیسے مجھے دکھا دو ہر ظاہر ہوتا ہے کہ کے ساتھ شروع ہے کہ گلیوں میں رہتا جو بھی وجہ کے لئے خط اے. آپ وائلڈ کارڈ تلاش کر سکتے ہیں اس طرح. یا، شو کی طرح زیادہ مجبور چیزیں آپ کے وزٹرز کا لفظ ہے جو سب - مجھے جس کا نام شروع ہوتا ہے سب کو دکھانے کے ایک خاص خط کے ساتھ. آپ کو مطلوبہ الفاظ کے لئے تلاش کر سکتے ہیں اس طرح سے. ٹھیک ہے. تو، ڈیزائن مواقع وہاں ممکنہ طور پر. دوسروں کے ہیں کہ میں کروں گا میں اپنے ہاتھ لہر. یہ آپ کر سکتے ہیں پتہ چلا ہے کہ مختلف سٹوریج انجن. اور اس کی ہمیں ضرورت سے زیادہ جادو ہے یقینی طور پر مسئلہ کے لئے سات مقرر. ڈیفالٹ کی طرف سے، آپ لوگ استعمال کر رہے ہیں InnoDB ملاقات کی کچھ. تم میں اس کی کہیں کا ذکر نظر آئے گا phpMyAdmin کے انٹرفیس سب سے زیادہ امکان. لیکن دوسری ڈیزائن جانتے ہیں کہ وہاں صلاحیت کے ہیں فیصلے دلچسپی آخری منصوبوں آتے ہیں آپ ویب کی بنیاد پر کچھ کرنا. لیکن ایسا کرنے دو. آگے بڑھو اور اس ڈال دو ایک کہانی کے لئے ایک جھلکی کے طور پر سکرین آپ شامل، میں ایک روممیٹ، اور دودھ کے ایک گلاس. ایک دو منٹ لے یا تو یہاں توڑ. آپ کے ارد گرد چھڑی کر سکتے ہیں، کی آنے دو واپس، SQL میں تھوڑا سا زیادہ نظر آتے ہیں، اور اس کے بعد کے ساتھ جاوا اسکرپٹ کا تھوڑا سا P-قائم ذہن میں آٹھ. ٹھیک ہے. تو، اگر آپ کو ایک کے بارے میں سوچ حاصل بہت آسانی سے پیدا کر سکتے ہیں اس کونے کیس ایک ڈیٹا بیس کا استعمال کرتے ہوئے، یا کے تناظر میں واضح طور سے، یہاں تک کہ حقیقی دنیا کی چیزوں کا استعمال کرتے ہوئے اے ٹی ایمز کی رقم حاصل کرنے کے لئے طرح. تو یہاں ایک ریفریجریٹر ہے. آپ میں بھی ایک مل گیا ہے لگتا ہے آپ چھاترالی یا اپنے گھر. اور تم ایک روممیٹ، اور دونوں کی ہے تم سچ میں مثال کے طور پر دودھ کی طرح. تو آپ کو ایک دن کلاس سے گھر آتے ہیں. وہ ابھی تک واپس نہیں ہے. آپ فرج یا کھولنے. تم سچ میں دودھ کا ایک بڑا گلاس چاہتے ہیں. کوئی دودھ ہے. تو آپ کیا کرتے ہیں؟ آپ فرج یا بند. آپ کو آپ کی چابیاں اٹھا. آپ مربع کے لئے باہر جانا. اور اگر تم ان میں CVS میں لائن میں حاصل خود چیکآاٹ چیزیں، جو ہمیشہ اب اصل سے لے کیشیر ہونے. پھر بھی. تو پھر، اسی اثناء میں،، ڈاٹ ڈاٹ ڈاٹ آپ روممیٹ گھر آتا ہے اور وہ اسی طرح ایک اتکمٹھا ہے کچھ دودھ کے لئے. تو وہ، فرج یا کھولتا ہے اندر لگ رہا ہے، اور اوہ، لات. کوئی دودھ. تو وہ باہر کے سربراہ، جانے کے لئے ہوتا ہے صرف تھا جس میں دیگر CVS، کرنے کے لئے ایک کسی وجہ سے دور بلاک، اور وہ یا وہ کچھ دودھ خریدنے کے لئے قطار میں ہو جاتا ہے. دریں اثنا، وہ، گھر آ یا وہ گھر آتا ہے، اور کیا کرتے ہیں آپ بالآخر ہے؟ دو مرتبہ کے طور پر زیادہ سے زیادہ دودھ. لیکن اگر آپ کو واقعی پسند نہیں کرتے دودھ اتنا. تو اب آپ کہ اب اتنا دودھ ان میں سے ایک صرف ھٹی جا رہا ہے آخر میں. تو یہ ایک بہت برا مسئلہ ہے. ٹھیک ہے نا؟ تو کیا ہوا ہے؟ تو بنیادی طور پر، اس قسم کی ہے ایک مضحکہ خیز مثال کے طور پر. لیکن ہڈ کے نیچے، کیا ہم نے کیا ہے یہاں ہو تم دونوں کی جانچ پڑتال کی ہے میں سے کچھ ٹکڑے کی حالت میموری، ریفریجریٹر. آپ دونوں ریاست کی جانچ پڑتال کچھ متغیر کی. آپ دونوں کسی نتیجے مبذول کرائی تو آپ پر کیا ہے. لیکن بدقسمتی سے، جبکہ آپ کے روممیٹ سٹور میں تھا، اس کی حالت متغیر تبدیل، وہ واپس آیا اور اب ریاست کے تبدیل کرنے کے لئے چاہتا ہے، لیکن یہ پہلے سے ہی تبدیل کر دیا گیا ہے اس کے یا اس پر. اور ظاہر کی، وہ نہیں کریں گے وہ جانتے تھے کہ اگر دکان پر گئے آپ کو راستے میں پہلے سے ہی تھے. تو حقیقی دنیا میں، آپ کو کس طرح کر سکتے ہیں آپ کے پاس سنبھالنے، اس مسئلے سے بچنے کے ایک فرج یا، اگر آپ کو ایک روممیٹ ہے، اور آپ اصل دودھ پسند ہے؟ سامعین: بات چیت. DAVID MALAN: مواصلت. ٹھیک ہے. لیکن تم کس طرح بات چیت کر سکتے ہیں؟ سامعین: ایک نوٹ چھوڑ دو. DAVID MALAN: صحیح، ایک نوٹ چھوڑ دو؟ ہمیشہ کے لئے، ایک نوٹ چھوڑ دو شو کے پرستار. ٹھیک ہے، تو ہمیشہ ایک نوٹ چھوڑ، یا ایک تالا یا کچھ اور طرح صحیح معنوں میں ڈال دیا آپ رکھتا ہے کہ ریفریجریٹر پر ریاست معائنہ سے روممیٹ کہ متغیر. اب، کیوں اس germane ہو سکتا ہے مسئلہ سیٹ سات، یا اے ٹی ایمز کے لئے. ویسے، ایک اے ٹی ایم جہاں میں اس دنیا کا تصور آپ کو ایک اے ٹی ایم تک جانے کے لئے کے قابل ہو سکتا یہاں مشین، اور یہاں ایک اور اے ٹی ایم. اور یہ اکثر ہوتا ہے. اور، تم دونوں اے ٹی ایم کارڈز تھا لگتا ہے جس کے حاصل کرنے کے لئے ممکن ہے. اور تم دونوں مشینوں میں لاگ ان مؤثر طریقے سے ایک ہی وقت میں، امید ہے کہ کوئی بھی نہیں لگ رہا ہے جبکہ. اور اس وقت تم اپنا پن میں ٹائپ کریں تقریبا ایک ہی وقت میں. اور پھر آپ کو ایک توازن کے سوال کرتے ہیں آپ کے پاس کتنی نقد دیکھنے کے لئے. اور مان لیں کہ آپ 100 ڈالر ہے کا کہنا ہے کہ آپ کے اکاؤنٹ میں چھوڑ دیا. تو بنیادی طور پر ایک ہی وقت میں، آپ کو ایک کا کہنا ہے کہ، صفر، صفر، درج کریں. اور آپ کو امید ہے کہ کچھ رقم واپس لے. لیکن تم واپس کتنی رقم حاصل کر سکتے ہیں؟ دن کے آخر میں اب کمپیوٹروں، وہ بات کر رہے ہیں خاص طور پر اگر سرورز، ضروری باتیں نہ کرو حکم میں ہے کہ امید کی جاتی ہے. تو اس کی وجہ سے، کیا ہوتا ہے فرض وہاں جو کچھ بھی نیٹ ورک کی رفتار کے مسائل ہیں، یا وہاں سی پی یو کے مسائل ہیں، یا اس طرح کچھ بھی، لگتا ہے کہ پہلی اے ٹی ایم اپنے توازن اور چیک کرتا ہے دیکھتا ہے، اوہ، اس شخص 100 ڈالر ہے. لیکن اس وقت مشغول ہو جاتا ہے ہو سکتا ہے کیونکہ ایک بیک اپ ہو رہا ہے اور تو یہ ہے سست. یا شاید، نیٹ ورک کی جانچ پڑتال کرتے ہوئے کنکشن تھوڑا سست ہو گیا ہے کیونکہ یہ صرف ہوتا ہے. وہ جسمانی آلات ہیں. تو اسی اثناء میں، دوسرا اے ٹی ایم ہے ایک ہی سوال پوچھ. ڈیوڈ کتنا پیسہ ہے؟ جواب 100 ڈالر ہے. لیکن سب سے پہلے اے ٹی ایم ابھی تک نہیں ہے کیونکہ پیغام دونوں، 100 ڈالر منہا بھیجا اے ٹی ایمز، بینک کے والٹ کا معائنہ کیا ہے 100 ڈالر وہاں دیکھ کر، اور اب دونوں مشینیں ممکنہ طور پر کر رہے ہیں ایک جواب توک جا. اب، اس کو کچھ احساس میں آپ کے لئے بہت اچھا ہے بینک آخر کار کیا کرتا ہے تو کی طرف سے مائنس 100 کی رقم کو تبدیل کر رہا ہے آپ کے برابر متغیر ترتیب 0 کے برابر بینک اکاؤنٹ، کے طور پر مخالفت کی 100 مائنس کر رہی ہے. اب بینک کے لئے بدترین صورت میں - یا بینک لئے سب سے بہتر میں، دریں اثنا، وہ آپ کو 200 ڈالر دے، اور آپ کے بینک اکاؤنٹ اب منفی سے پتہ چلتا ہے واقعی نہیں کرتا جس میں 100 ڈالر، بالکل آپ کو فائدہ ہو. لیکن بات یہ ہے کہ اس ریس دو کمرے میں رہتے حاصل کرنے کے لئے شرط دودھ، یا دو اے ٹی ایمز کے لئے نقد رقم حاصل کرنے کی کوشش اور ایک والٹ کی حالت میں تبدیلی ایک ہی وقت میں کسی بھی موجود ہے وقت آپ کو ایک ڈیٹا بیس ہے. اب مسئلہ میں، اس معاملے سات مقرر احساس میں پیدا ہوتا ہے کہ آپ کو ایک خرید اگر پھر فیس بک کے اسٹاک کا حصہ ہے، اور کے لئے مثال کے طور پر اگر آپ کے دوسرے حصہ خریدنے فیس بک اسٹاک، آپ کرنے کی ضرورت پروگرامر کے طور پر ایک فیصلہ. اپ ڈیٹ کرنے کا فیصلہ کس طرح کرنے کے لئے ڈیٹا بیس، مشکلات آپ کے لئے جا رہے ہیں اس اسٹاک کے لئے صف، اور یہ ہے اسے لاگو کرنے کے لئے ایک طریقہ ہے. اور تم میں سے ایک حصہ ہے جا رہے ہیں ان کے سٹاک ٹکر کی علامت ہے جو ایف بی، اس صارف نام، یا اس صارف کے لئے ID، منفرد شناخت. لیکن وہی کہانی یہاں ہو سکتا ہے. آپ دیکھیں گے کے طور پر آپ کو ایک، ایس کیو ایل کی منتخب کرتے ہیں تو آپ کو دیکھ کر جب مسئلہ میں، سات مقرر اوہ، ڈیوڈ ایک حصہ ہے فیس بک اسٹاک. اب مجھے دو حصص ہونا یہ تبدیل کرنے وہ ایک خریدنے کے لئے چاہتا ہے کیونکہ دوسرا حصہ. لیکن داؤد اصل میں دو تھے لگتا ہے براؤزر ونڈو کو کھولیں، یا لگتا ہے کہ یہ دونوں میاں بیوی کے ساتھ ایک مشترکہ اکاؤنٹ ہے اور ان دونوں کو انجام دینے کی کوشش کر رہے ہیں اسی آپریشن، وہاں، بھی، ممکنہ ہونے کا فیصلہ کرنے کے لئے موجود ہے گزشتہ کی بنیاد پر بنایا دنیا کی ریاست - اکاؤنٹ ایک حصہ ہے - اور اب دونوں لوگوں کو، یا دونوں سرورز، دو حصص پر یہ اضافہ کا کہنا ہے کہ کرنے کی کوشش کریں. لیکن اس معاملے میں، آپ کو چارج کر سکتے ہیں مجھے دونوں کے حصص کے لئے پیسے، لیکن صرف اس لئے کہ ایک وقت incremented. تو میں مختصر، بنیادی مسئلہ یہاں، ایک چھوڑنے کے بارے میں مذاق کے ساتھ کے طور پر نوٹ، یا اس پر ایک تالا ڈال ہے، اگر دو افراد، یا دو موضوعات - فیرنا پر واپس لگتا ہے کہ - کچھ متغیر کی حالت کا معائنہ کر سکتے ہیں اور پھر، اس کے متغیر کو تبدیل کرنے کی کوشش کریں لیکن ان دو چیزوں میں ایسا نہیں کرتے ایک ہی وقت میں خلل پیدا ہوگیا ہو سکتے ہیں لیکن دوسری چیزوں کی طرف سے ہو رہا ہے، اعداد و شمار کر سکتے ہیں ایک بہت ہی عجیب ریاست میں ملتا ہے. اور تم فائدہ اٹھا سکتے ہیں یا آپ کو برداشت کر سکتے ہیں مثال کے طور پر پیسے کے معنوں میں. تو مسئلہ سیٹ سات میں، ہم آپ کو دے کوڈ کے اس ایک ہی لائن میں، جو طویل عرصے سے کہانی مختصر ہے، اس حل کرتی ہے ایس کیو ایل میں مسئلہ. نہیں کرتا کہ یہ بہت طویل ہدایات یہاں تک کہ ایک لائن پر فٹ یہاں سکرین کو یقینی بناتا ہے کہ آپ آپریشن جوہری کہا جاتا ہے کیا ہے. یہ سب ایک ہی بار میں ہوتا ہے، یا یہ بالکل نہیں ہوتا. یہ بہت طویل جملے نہیں کر سکتے ہیں جزوی طور پر رکاوٹ پیدا ہو جاتے ہیں. اور کیا یہ کرتا ہے لفظی ہے یہ کیا کہتے ہیں. کچھ ٹیبل میں درج ذیل داخل کریں تین شعبوں ان مخصوص اقدار، لیکن مصنوعی چابی پر، ایک داخل نہ کرو. ایک اپ ڈیٹ کرتے ہیں. تو یہ ایک کو منتخب کریں اور ایک کر کی طرح ہے ایک ہی وقت میں بات کرنے کے لئے اتنا ڈالیں. اور شاید ہے کہ اہم کیا ہے یہاں سے مراد کیا جا رہا ہے؟ یہ پتہ چلا ہے، اور آپ اس کو دیکھ لیں گے مسئلہ، سات کی رپورٹ قائم ہم ایک منفرد کلید ہونا اعلان کیا ہے یہ خاص طور پر میز پر اس طرح ہے کہ آپ ایک سے زیادہ قطار نہیں کر سکتے ہیں کے ساتھ ایک ہی صارف کے لئے اسی کوڑی اسٹاک علامت - یہاں اس مثال میں، DVN.V ہے ایک پاگل پینی اسٹاک کہ ہم رپورٹ میں حوالہ دیتے ہیں. ، ہم اس منفرد ہونا قرار دیا ہے، کیونکہ کیا اس کا مطلب یہ ہے کہ اگر آپ ڈوپلیکیٹ صف داخل کرنے کی کوشش کریں، تم ہو بجائے اس کے بغیر اس کو اپ ڈیٹ کرنے کے لئے جا کسی اور تبدیل کرنے کے لئے ایک موقع ہونے کے یا تو دنیا کی حالت. تو مختصر میں، اس بات کو یقینی بناتی چیزوں جوہری ہیں. مزید عام طور پر، اگرچہ، ڈیٹا بیس ایس کیو ایل کی طرح - اور آپ کے لئے اس کو نمایاں کریں کی ضرورت نہیں ہے سات P-مقرر، لیکن اس بات کو ذہن میں رکھنا مستقبل - لین دین کہا جاتا ہے کی حمایت، آپ کہہ سکتے ہیں کہ جہاں لفظی ٹرانزیکشن شروع. اس کے بعد آپ پھانسی کر سکتے ہیں دو SQL بیانات. آپ دیکھیں گے کے طور پر اور ایک SQL بیان، P-قائم سات، ایک چھوٹا سا لگ رہا ہے میں کچھ اس طرح. ایک میز کہا جاتا ہے اکاؤنٹ اپ ڈیٹ. جو کچھ بھی برابر توازن کالم مقرر کریں توازن کالم فی الحال ہے 1،000 مائنس جہاں بڑی تعداد، صارف ID کی طرح اکاؤنٹ نمبر،، 2 برابر، اور پھر اپ ڈیٹ اکاؤنٹ ڈاٹ ڈاٹ ڈاٹ. تو عام آدمی کی شرائط میں، کیا کیا ان دو سوالات میں جا رہا بینکاری کی حقیقی دنیا کا احساس؟ سامعین: بچت میں منتقل. DAVID MALAN: بالکل. ایک سے فنڈز میں منتقل دیگر اکاؤنٹ. اور یہ ایک اور مثال ہے جہاں آپ واقعی یہ دو باتیں ہو کرنا چاہتے ہیں یا نہیں ہو. تم کچھ حاصل کرنے کے لئے نہیں کرنا چاہتا ان میں سے مشرق اور ممکنہ طور پنگا ریاضی، یا گندگی کو کتنی آپ کے پاس پیسہ، یا کتنا پیسہ بینک ہے. تو کیا لین دین کے بارے میں بہت اچھی بات ہے ایس کیو ایل میں ہے، اور عام طور پر ڈیٹا بیس، یہ ہے کہ وہ اور عملدرآمد ہے جو ہوشیار لوگ ان خصوصیات کو کس طرح کے اعداد و شمار ان چیزوں کے دونوں ہو اس بات کا یقین یا بالکل نہیں. اور تم واقعی بنانے کے خواہشمند ہیں تو لوگوں کی طرف سے استعمال کیا جاتا ہے کہ ایک ویب سائٹ کیمپس، حقیقی دنیا میں لوگوں کے، کر ابتدائیہ احساس میں کچھ، ان قسم کے ہیں ڈیزائن کے فیصلوں کہ کبھی تو اہم ہو. دوسری صورت میں، آپ کو کھو، کے اعداد و شمار سے محروم کرنے کے لئے شروع صارفین، یا بدترین صورت میں ہم ممکنہ طور پر، یہاں دیکھا ہے پیسے کھو. تو پھر، اس سے زیادہ اس پر مسئلہ میں قائم سات، کے طور پر بھی شاید کچھ کے لئے آخری منصوبوں میں آپ کو. تو ہم نے اس تصویر کو تبدیل صرف ایک راستہ میں پہلے ایک لمحے. تو میں کر سکتے ہیں تو مجھے اصل میں دیکھتے ہیں - نہیں، کہ چلا گیا ہے. وہاں ہے. ہم نے آخری بار کو چھوڑ دیا ہے جہاں تو یہ ہے. اور یہ کہ ہم ٹاس کرنے جا رہے ہیں باہر کر دیتا ہے یہاں مکس میں ایک اور بات - جاوا سکرپٹ کے نام سے ایک زبان. تو جاوا اسکرپٹ اصل میں فٹ بیٹھتا ہے اس ٹکڑے میں - اور میں کافی کمرے کو چھوڑ نہیں کیا، تاکہ اس پیمانے پر اب نہیں ہے. ٹھیک ہے، یہ واقعی قابل رحم ہے. ٹھیک ہے، تو یہ جاوا سکرپٹ. ٹھیک ہے. میں واقعی میں یہ ایک نقصان کر رہا ہوں. ٹھیک ہے. تو جاوا اسکرپٹ کا ایک اور پروگرامنگ کی ہے زبان، اور ہماری آخری، کہ میں مدد ملتی ہے تو بہت زیادہ نہیں ہے کہ یقین دہانی یہاں آگ hydrants کی. تو جاوا اسکرپٹ کا بھی ایک تشریح ہے آپ ایسا نہیں کرتے جس کا مطلب ہے زبان، zeros اور ہیں میں مرتب. آپ کو صرف اسے چلانے. لیکن کیا کے ساتھ بنیادی طور پر مختلف ہے جاوا سکرپٹ کو عام طور پر آپ کو اس اپنے ویب سرور پر چلانے نہیں ہے. یہ میں چلانے نہ ہو آلات SE فی. بلکہ، یہ ایک صارف کی طرف سے ڈاؤن لوڈ کیا جاتا ہے ان کے براؤزر میں HTTP کے ذریعے - کروم، سفاری، انٹرنیٹ ایکسپلورر، فائر فاکس، جو بھی - اور یہ executes ہے کہ براؤزر کی خاص طور پر پروگرامنگ زبان. تو واضح ہو جائے گا، پی ایچ پی کی اس طرح دور کر دیا گیا ہے میں کمانڈ لائن پر یا تو پھانسی دے دی ایک سرور پر ہمارے سیاہ اور سفید ونڈو، آلات، ایک کمپیوٹر کی طرح آلات کی طرح، یا یہ ہو گیا ہے ایک ویب سرور کی طرف سے پھانسی ایک کمپیوٹر پر چل رہا ہے. لیکن یہاں مرکزی خیال، موضوع اس طرح اب تک کہ پی ایچ پی کی ہے سرور سائیڈ کو پھانسی دے دی، تو کیا گیا ہے صارف اور صارف کے براؤزر پی ایچ پی کوڈ کی ایک لائن دیکھتا ہے کبھی نہیں. اصل میں، آپ کو ہمیشہ کے لئے ایک براؤزر کو کھولنے کے تو آپ کی ویب سائٹ یا دوسرے اور آپ اصل میں آپ کے ونڈو میں پی ایچ پی کوڈ کو دیکھنے کے، کسی مصیبت میں ہے. اس کا مقصد نہیں ہے کیونکہ براہ راست براؤزر کو بھیجا. یہ قتل اور تبدیل کر دیا گیا ہونا چاہیے ایچ ٹی ایم ایل کی طرح کچھ میں. لیکن جاوا سکرپٹ کو بنیادی طور پر ہے اس کے برعکس. یہ عام طور پر کے اندر چلانے کے لئے کا مطلب ہے ایک صارف کی براؤزر ونڈو کے. اور ویب سائٹ کس قسم کا استعمال کرتے ہیں جاوا سکرپٹ کو تو ان دنوں؟ لفظی ہر مقبول ویب سائٹ کی طرح. ہر ویب سائٹ ہے کہ آپ لوگ شاید کے لئے جاوا سکرپٹ کو استعمال روز مرہ استعمال آسان اور یہاں تک کہ سب سے سیکسی خصوصیات. تو فیس بک کی طرح کچھ آپ اس کا استعمال کرتے ہیں اگر چیٹ. کس طرح ہے کہ اصل میں کام کرتا ہے؟ ٹھیک ہے اس طرح اب تک، ساری چیزیں ہم نے ایچ ٹی ایم ایل کے ساتھ کیا کیا اور پی ایچ پی کہ مان لیا گیا ، آپ کو ایک یو آر ایل کو ھیںچو، اور آپ کو درج کریں مارا اور آپ کچھ HTML مواد کو دیکھنے کے. اور تم بدل اس لنک پر کلک کریں یو آر ایل، صفحے تبدیلیوں، اور reloads کچھ نئے مواد. ایک اور یو آر ایل پر کلک کریں یا آپ کو ایک فارم جمع دوسرے صفحے پر whisked کیا اور حاصل آپ کو کچھ نئے مواد کو دیکھنے کے. لیکن فیس بک بات چیت کی طرح کچھ کا استعمال کرتے ہوئے، یا Gchat، یا گوگل نقشہ جات، شاذ و نادر ہی سارے صفحے اس طرح ہے کہ تازہ کاری ہے آپ لمحے بھر کو ایک سفید سکرین دیکھ اور پھر نئے مواد. بلکہ، ویب کے صفحات آج متحرک ہیں پھر اپ ڈیٹ کر اور ہو رہی ہے بار بار تمام قسم کے مناظر کے پیچھے. اور یہ پتہ چلا ہے کہ آپ کے لئے جانا ہو تو فیس بک، یا Gchat طرح کچھ، یا Gmail کے، اور صفحے کے اپ ڈیٹ خود کار طریقے سے دوبارہ لوڈ کے بغیر پوری سکرین، کیا ہوا ہے اپنے براؤزر کی طرح چپکے سے بنا دیا ہے اضافی HTTP درخواست - نہ کہ پورے ویب صفحات کے لئے، لیکن صرف کے لئے کی طرح کے اعداد و شمار کی بہت کم مقدار، فوری پیغام ہے کہ آپ کے دوست صرف آپ، یا حیثیت کو اپ ڈیٹ بھیجا ہے کسی کو صرف آپ کو، یا تشہیر بھیجا کسی کو صرف بھیجا ہے. یہ صرف کے لئے بہت کم درخواستوں کو بنا رہا ہے کے اعداد و شمار، اور پھر جاوا سکرپٹ اس کا استعمال کرتے ہوئے پروگرامنگ زبان، کیا تبدیل کرنے کے لئے ویب کے صفحے کے بغیر کی طرح لگتا ہے سرور کے بغیر، کی مدد کہ ایچ ٹی ایم ایل پیدا. تو مختصر میں، جاوا سکرپٹ کو تو استعمال کیا جا سکتا کی طرف سے نئے اعداد و شمار کی بازیافت کو نہ صرف ایک پوری دوبارہ لوڈ کے بغیر سرور صفحہ یا ایک فارم کو جمع. یہ بھی تبدیلی کے لئے استعمال کیا جا سکتا نام نہاد ڈوم - دستاویز اعتراض ماڈل - جس کے لئے صرف پسند ہیں طریقہ ہے ایچ ٹی ایم ایل کے درخت کہہ ہم نے آخری بار دیکھا. تو اعتماد بحال کرنے، جاوا اسکرپٹ کا ہے syntactically تو C کی طرح اس کے ساتھ ساتھ. کوئی اہم تقریب ہے. آپ کو صرف کوڈ لکھنے شروع اور اسے پھانسی دے دی، یا ہو جائے گا زیادہ مناسب طریقے سے تشریح کی. حالات اس طرح نظر آئے گا. کوئی C سے مختلف یا اس بات کے لئے پی ایچ پی. بولین اظہار یا ایڈ کے ساتھ مل کر اس طرح نظر آئے گا. ایک دوسرے کے ساتھ Anded اس طرح نظر آئے. سوئچز اس طرح نظر آئے گا. loops کے اس طرح نظر آئے گا. loops کے اس طرح نظر آئے گا. loops کے اس طرح نظر آئے گا جبکہ. یہ نئی ہے. تو جاوا سکرپٹ پر ایک جعلی foreach نہیں ہے SE فی کی تعمیر، لیکن اس کی تعمیر کے لئے اس میں متغیر صف میں میں، اور میں کیس ایک انڈیکس قدر ہو جاتا ہے. تو یہ اس سے تھوڑا مختلف ہے جعلی foreach، اگرچہ کے نئے ورژن جاوا سکرپٹ کو ہر وقت باہر آ رہے ہیں، تو بھی ان کے زبان کی خصوصیات تیار کر رہے ہیں. اور ایک طرف ایک، جاوا سکرپٹ کو ان دنوں کے طور پر بھی صرف کی طرح ایک سرور پر استعمال کیا جا سکتا پی ایچ پی کی Node.js. نامی ایک فریم ورک کا استعمال کرتے ہوئے CS50 کی کی TFs، کیون سے ایک، ایک کی قیادت کی ہے پر دستیاب ہے Node.js پر سیمنار cs50.net/seminars. آپ کو جاننا ہو تو اگر جانتے ہو، آپ کو اس سرور سائیڈ کے طور پر اس کا استعمال کر سکتے ہیں ٹھیک ہے، لیکن ہے کہ، ایک منصفانہ حالیہ رجحان ہے لیکن اس میں ایک طاقتور ایک. یہ تھوڑا مختلف ہے. یہ جاوا سکرپٹ میں ایک صف ہے. اور کیا مختلف کے طور پر آپ ہلاک C یا پی ایچ پی کے مقابلے میں؟ چند فوری کہانیاں ہیں ہم یہاں بتا سکتے. کیا پی ایچ پی کے مقابلے میں لاپتہ ہے؟ سامعین: [اشراوی]. DAVID MALAN: جی ہاں؟ معذرت، پھر کہتے ہیں؟ سامعین: اعلان نہیں متغیر کی قسم. DAVID MALAN: ہم اعلان نہیں کر رہے ہیں متغیر کی قسم. تو اصل میں بہت پی ایچ پی کی طرح، ہم نہیں ہیں اس متغیر کی اقسام کی وضاحت. بلکہ، ہم زیادہ generically ہیں متغیر کے لئے کہہ متغیر. ہم پی ایچ پی کی پریشانی نہیں ہے ڈالر کا نشان، جس تکاؤ جبکہ قسم، زیادہ واضح ہے کہ پڑتا ہے کچھ ایک متغیر ہے. جبکہ یہاں، ہم ترتیب کے پیچھے ہیں صرف فون کر کے سی کے نقطہ نظر ایک ہم چاہتے ہیں کے نام سے متغیر تعداد کی طرح، یہ دینے کے لئے. اور بھی پی ایچ پی کی طرح، ہم نے کے لئے مربع بریکٹ اس صف کے اندر اقدار. جاوا سکرپٹ میں تو متغیر بھی اس طرح نظر ہو سکتا ہے. اس کے نام کے سٹرنگ ہے یہاں کا نوٹس لیکن اسی طرح ہم وضاحت نہیں ہے یہ ایک تار ہے. یہاں اگرچہ نہیں ہے کہ ایک خصوصیت ہے پی ایچ پی میں بالکل اسی طرح میں موجود، لیکن تھوڑا سا اسی طرح. یہ جاوا سکرپٹ میں ایک چیز ہے. اور اشیاء کی طرح سوئس آرمی ہیں کہ آپ میں ایک اعداد و شمار کے ڈھانچے کی چھری چیزوں کی کسی بھی تعداد کے لئے ان کا استعمال کر سکتے ہیں. یہاں، مثال کے طور پر، ہم نے اعلان کر رہے ہیں ایک متغیر اقتباس کہا جاتا ہے. اس متغیر کی قسم ایک چیز ہے. آپ کو ایک سی struct کے طور پر اس کے بارے میں سوچ کر سکتے ہیں کہ چابیاں اور اقدار ہیں. سنہرے بالوں والی ایک چابی ہے. ایف بی بظاہر، ایک قیمت ہے ایک اسٹاک علامت. کاما. قیمت ایک اور اہم ہے، اور اس کی قیمت ہے بظاہر چل نقاط، یا ایک عام طور پر میں نمبر $ 49،26 کے جاوا اسکرپٹ،. تو پی ایچ پی نہیں ہے - ہم بہت پی ایچ پی کی اشیاء میں نہیں دیکھا ہے اس طرح، لیکن ہم، ایک ینالاگ دیکھا کیا جس میں تھا؟ سامعین: [اشراوی]. DAVID MALAN: ساہچری arrays. پی ایچ پی ساہچری arrays جبکہ تو جن نحو کبھی تھوڑا سا تو ہے مختلف - ہم مربع بریکٹ دیکھا. ہم عجیب تیر علامات دیکھا. جاوا سکرپٹ کو اشیاء کی ہے، لیکن یہ ہے زیادہ تر ایک semantic فرق اور ایک اب کے لئے مختلف متبادل. تاہم، ایک طرف ایک، پی ایچ پی کی بھی ہے ایک راستہ ہے جس میں اشیاء کہ جاوا اور دیگر زبانوں میں اشیاء آبجیکٹ اورینٹڈ پروگرامنگ. لیکن ہم صرف ان کا استعمال کریں گے اب کے لئے اعداد و شمار اقسام کے لئے. اشیاء اور ساہچری arrays. اس سے یہ بنا سکتا ہے ایک چھوٹا سا زیادہ واضح. کسی چیز مفید ہے یہاں کیوں ہے. اگر آپ ایک طالب علم کا اعلان کرنا چاہتے ہیں تو، کیا Zamyla کی طرح، ہم اصل میں کر سکتے ہیں تو اس کے اندر بات کرنے encapsulate جیسا گھوبگھرالی بریکٹ کا استعمال کرتے ہوئے اعتراض چابیاں کی ایک پوری چڑھانے سے پہلے اور یہاں میں اقدار. ہم ایک کی شناخت، ایک گھر، اور اس کے لئے ایک نام ہے کے طور پر ایک نیم وقفہ کے بعد ZAMYLA، آخر میں ہمیشہ کی طرح. یہاں بھی، یہ تھوڑا سا ہے مختلف، لیکن یہ بھی بہت طاقتور ان دنوں. یہاں ایک صف ہے، اور مجھے معلوم ہے کہ اس کی وجہ ایک مربع بریکٹ وہاں ہے سب سے اوپر اور ایک مربع بریکٹ کے نیچے دیے گئے. اور یہ کیا اعداد و شمار کے ایک صف ہے جاوا سکرپٹ میں بظاہر ٹائپ؟ یہ لگتا ہے کے ایک صف ہے تین اشیاء کی طرح. اور میں یہ صرف ایک چیز ہے گھوبگھرالی منحنی خطوط وحدانی کی وجہ سے. اور، کھلی گھوبگھرالی ہے تسمہ ہے نوٹس کچھ چیزیں، بند گھوبگھرالی منحنی خطوط وحدانی، کوما، اس کے بعد کچھ اور، کوما، اور پھر کچھ اور. تو اس کے تین دلائل ہے دو کوما سے علیحدہ. تو یہ تین اشیاء کی ایک صف ہے. اور ان اشیاء میں سے ہر ایک ظاہر ہوتا ہے کچھ کا ایک طالب علم یا عملے کا رکن ایک ID کے ساتھ ترتیب، ہر ایک، گھر، اور نام. لیکن میں اس سے کچھ کہا جاتا ہے JSON کہا جاتا ہے - جاوا سکرپٹ کے آبجیکٹ سنکیتن. اور یہ ایک ڈیٹا کی شکل ہے کہ اصل میں بہت مقبول اور ہے ووگ ان دنوں یہ ہے کہ آپ کو ایک لکھنے فیس بک استعمال کرتا ہے کی درخواست API کے، ٹویٹر API، واقعی تقریبا وہاں سے باہر کسی بھی API کے ان دنوں، CS50 اپنے میں سے کچھ، سمیت آپ کو واپس حاصل کرنے کے لئے اعداد و شمار میں نہیں ہے پرانے اسکول CSV شکل. یاد کیونکہ اس CSV سپر آسان ہے. یہ صرف کالم الگ کیا جاتا ہے کوما کی طرف سے. JSON کے اعداد و شمار آپ کو زیادہ میٹا ڈیٹا فراہم کرتا ہے. کہ ہر قیمت کے ساتھ ایک اہم ساتھیوں تو وہ صرف فرض نہیں ہے zeroth کالم ایک قدر، کالم ہے ایک کالم دو ایک اور مثال ہے، ایک اور مثال ہے. یہاں ایک JSON اعتراض میں سب کچھ طرح ہے کی خود بیان، کیونکہ ہر اس فائل میں ناموں میں سے ایک لفظی ہے ایک کے طور پر اس کے سامنے میں نام کے حوالے سے کہا سٹرنگ. تو ایک پر ایک نظر ڈالیں یہاں مثال کے طور پر جوڑے. مجھے آلے میں جانے دو. اور مجھے ہمارے پر vhost میں جانے عوام میں ڈائریکٹری. اور مجھ میں جانے جاوا اسکرپٹ ڈائرکٹری. اور آگے بڑھو اور کھول دو ڈوم صرف کا مطلب ہے کہ جہاں ڈوم 0.html، دستاویز آبجیکٹ ماڈل. یہ جو درخت چیزیں میں نے پہلے کہا جاتا ہے. اور میرے مندرجہ ذیل تجویز کرتے ہیں. یہاں جس کی ایک ویب پیج ہے جسم بہت آسان ہے. تو یہاں سے نیچے دیئے گئے، میں ایک فارم ہے محسوس. ہم سے پہلے لوگوں پر دیکھا ہے. یہ ایک ہے جن میں سے ایک دو آدانوں، ہے نام کی شناخت، جن میں سے ایک کی ایک قسم کی ہے جمع، اور سب سے پہلے ایک قسم متن ہے. تو یہ اصل میں بہت آسان لگتا ہے. یہاں چلتے ہیں. یہاں اس صفحہ پر واپس جانے دو. کی مقامی میزبان میں جانے دو، اور میں جانا ہماری جاوا اسکرپٹ ڈائریکٹری، اور کرنے کے لئے جانا یہاں DOM-0، ہم اس فارم ہے. تو وہ بظاہر ہے یہ سب صفحہ کرتا ہے. کے ساتھ یہ ایک نام کے خانے ہے ایک بٹن جمع کرائیں. لیکن میں یہاں پی ایچ پی استعمال کرنے کے لئے نہیں جا رہا ہوں. میں نے سب کچھ کلائنٹ سائڈ کرنے جا رہا ہوں مندرجہ ذیل کے طور پر تو جاوا سکرپٹ میں بات کرنے کے لئے. بے شک میں نام دیا ہے نوٹس ہے کہ اس ان پٹ کے میدان میں ایک منفرد شناخت، جس میں اصل میں ایک لمحے میں مجھے کچھ وقت بچانے کے. اور میں ایک اور ٹیگ کے متعارف کرایا ہے نوٹس میری ویب سائٹ کے صفحے کے سر، میں  ٹیگ. تو یہ جاوا سکرپٹ کی ہے کہ اس معنی میں ہے کلائنٹ سائڈ پروگرامنگ زبان. اس صورت میں، صرف سی ایس ایس کی طرح، میں ڈال دیا ہے یہ براہ راست میرے ایچ ٹی ایم ایل کے اندر. لیکن میں ایک تقریب قرار دیا ہے، نوٹس کہ ایک چھوٹی سی پی ایچ پی کی طرح لگتا ہے syntactically، کیا لیکن یہ اصل میں ہے جاوا سکرپٹ کے، پھر، کیونکہ یہ ہے براؤزر میں کلائنٹ سائڈ. اور یہ کرنے کے لئے کیا جا رہا ہے ایک اندازہ لے کر، اگرچہ نحو میں سے کچھ یہاں نئی ​​ہے. سامعین: جس ہیلو کہو. DAVID MALAN: یہ خوش کہا جا رہا ہے جس کے لیے اس صفحے کا دورہ. تو کس طرح؟ تو یہ جاوا سکرپٹ میں پتہ چلتا ہے، نوٹس ایک انتباہ () فنکشن ہے. یہ ایک بہت کی طرح دکھ کی تقریب ہے واقعی صرف صارفین کو تنگ کرنے کے لئے جاتا. یہ آپ کو سچ میں استعمال کرنا چاہئے ایک نہیں ہے عام طور پر، لیکن یہ ایک فوری اور گندی ہے جس طرح کی طرح کے کچھ پرنٹنگ ایک گرافیکل صارف ایک براؤزر کی طرح انٹرفیس. میں ہے کہ یہاں کا نوٹس A ایک کی قیمت درج میں سٹرنگ. یہ پتہ چلا ہے کہ C، جاوا سکرپٹ کے برعکس اصل میں آپ واحد کے استعمال کر سکتے ہیں کوٹس، اور واضح طور سے یہ صرف کی طرح ہے میں ساہتیک سٹائل کنونشن کے جاوا سکرپٹ کے پروگرامرز ایک کی قیمت درج استعمال کرنے کے لئے. پی ایچ پی، وہ اصل میں تھوڑا سا ہے مختلف معنی. لیکن اب کے لئے، صرف معلوم ہے کہ صرف وجہ ہے. جاوا سکرپٹ میں کنونشن اکثر ہے ایک کی قیمت درج استعمال، لیکن ہم استعمال کر سکتے ہیں ڈبل دونوں مقامات پر کی قیمت درج کرنے کے ساتھ ساتھ. تو یہ دلچسپ ہے. ہم اس تھا کہ آخری وقت یاد ایک درخت متوجہ سکرین پر تصویر آپ کو HTML نوڈ تھا، اور جہاں نوڈ، اور جسم نوڈ کے سربراہ، اور پھر کچھ متن. لیکن ایک خاص نوڈ تھا میں دستاویز کہا جاتا ہے کہ سب سے اوپر. ٹھیک ہے، یہ کسی بھی، جاوا سکرپٹ میں باہر کر دیتا ہے آپ کو جاوا سکرپٹ میں ایک پروگرام کو لکھنے کا وقت ایک براؤزر میں، آپ کو رسائی حاصل ہے ایک خصوصی عالمی متغیر. ، پی ایچ پی کی superglobals روح میں اسی طرح اس میں کہا جاتا ہے تمام چھوٹے دستاویز. یہ ایک struct کی طرح ہے، لیکن اس struct بھی اس کے اندر کام کرتا ہے. تو ایک سی struct کی صرف عام طور پر اعداد و شمار کی ہے. لیکن اس کے طور پر ایک جاوا سکرپٹ کے آبجیکٹ تکنیکی طور پر، کام کرتا ہے بھی ہے دوسری صورت طریقوں کے طور پر جانا جاتا ہے، اس کے اندر. اور آپ کے اندر ایک تقریب کال کر سکتے ہیں یہ اعتراض بہت لفظی اس کے کر نام، ڈاٹ، اور پھر نام تقریب، یا پھر طریقہ کار. یہ واقعی، صرف ایک متبادل ہے. اور یہ تقریب کیا کرتا ہے؟ آپ کی طرح کی اس کے نام سے اندازہ لگا سکتے ہیں. ID کی طرف سے عنصر حاصل کریں. لہذا اس ویب پیج کی جا رہی ہے، کے لئے تلاش، اس درخت کی تلاش ، ارف عنصر، ایک ہے جو کچھ بھی نوڈ اقتباس unquote نام کے منفرد ID. اور پھر جو میں کرنے جا رہا ہوں؟ میں کے اندر قیمت حاصل کرنے کے لئے جا رہا ہوں کہ درخت میں نوڈ، اور میں جا رہا ہوں کسی نہ کسی طرح اس کے نام کرنے کے لئے خوش کا کہنا ہے کہ. تو ہم نہیں ہے، اگرچہ، ایک اندازہ لے ابھی تک اس نے دیکھا، کیا کرنا ہے کے علاوہ علامات یہاں اور یہاں شاید مطلب ہے؟ سامعین: سلسلہ بندی کرنا. DAVID MALAN: سلسلہ بندی کرنا. ٹھیک ہے، اور یہ صرف ترتیب کے فیصلوں کے ڈیزائن لوگوں سال پہلے بنایا. پی ایچ پی میں، آپ کو سلسلہ بندی کرنا نقطے کے ساتھ چیزیں. C میں، آپ کو کئی hoops کے ذریعے کود اور strcopy طرح کام کرتا ہے () یا کال کریں strcat () یا اس طرح کے دوسرے کام کرتا ہے. لیکن جاوا سکرپٹ میں، آپ کے pluses استعمال. تو یہ صرف concatenating ہے تین ڈور - خوش، ایک نام، اور پھر ایک فجائیہ نقطہ. تو کب اور کیوں اس تقریب ہے اگرچہ کہا جاتا ہے؟ ٹھیک ہے، کی طرف سے ایک اندازہ نچلے حصے میں ایچ ٹی ایم ایل. کیوں کہا جاتا ہے () سلام، یا کب ہے؟ ظاہر ہے، سب سے بہتر طور پر میں، بتا سکتے ہیں اس فارم کو پیش کیا جاتا ہے جب، جمع، میں جو کچھ بھی کرنے جا رہا ہوں ان کی قیمت درج کرنے کے اندر. اور خاص طور پر، میں نے فون کرنے کے لئے جا رہا ہوں سلام () اور پھر جھوٹے واپس. ٹھیک ہے، کیا ہے نیٹ دیکھتے ہیں اثر یہاں سب سے پہلے ہے. تو مجھے آگے جانا ہے اور ٹائپ کا کہنا ہے کہ، لورین، جمع کرائیں، میں. لورین خوش. شاید یہ صرف تھا تو چلو دیکھتے ہیں ایک خوش قسمت عمل. نہیں. تو یہ پتہ ٹائپ ہے جو کچھ بھی میں اصل میں وہاں ڈال نام. لیکن بدلتے ہوئے نہیں ہے کیا محسوس. یو آر ایل بھی ڈوم 0.html ہے. کوئی register.php ہے. کوئی دوسری فائل ہے. کوئی کارروائی وصف ہے. تو کیا اس کی واپسی باطل ہے شاید کر رہے ہو؟ کیوں میں نے تو سلام بلا () اور رہا ہوں شاید جھوٹے واپس لوٹنے؟ آپ کو کلک کریں جب کیا، عام طور پر ایسا ہوتا ہے یہاں تک کہ ہم ایک فارم پر جمع کرائیں گزشتہ ہفتے میں دیکھا ہے؟ سامعین: [اشراوی]. DAVID MALAN: یہ، کہیں جاتا ہے؟ یہ کچھ مطلوبہ یو آر ایل کو جاتا ہے. لیکن میں ہے کہ یہاں ایسا نہیں کرنا چاہتے ہیں. میں اپنے ویب صفحہ مکمل طور پر کرنا چاہتے ہیں ایک بار جب آپ ہیں جہاں جی میل، کی طرح متحرک ، تم وہاں رہنا. یو آر ایل کا ایک طریقہ ہے کہ میں تبدیل نہیں ہوتا پورے صفحے کو دوبارہ لوڈ کر رہا ہے کی طرف اشارہ کرتا. بلکہ، میں نے صرف کچھ تبدیل کرنا چاہتے کچھ باہر پرنٹ کی طرح یہاں کی سکرین پر. مجھے اچھی طرح اس کو صاف کرتے ہیں اپ تھوڑا سا. مجھے نہیں ڈوم 0 کھول دو، لیکن مجھے ڈوم 2 کھول. صرف تاکہ آپ یہاں کچھ نحو دیکھا ہے. یہ پتہ چلا ہے کہ کیا ہم صرف خام جاوا اسکرپٹ کا استعمال کرتے ہوئے کیا. تو یہ واقعی زبان ہے جاوا اسکرپٹ کا. آپ میں سے کچھ جانتے ہو jQuery کے نام سے ایک لائبریری. تو jQuery کی ہی نہیں ہے جاوا سکرپٹ کے طور پر بات. یہ ایک بہت ہوشیار صرف ایک لائبریری ہے آدمی لکھا اور مقبول اس طرح کے اب دنیا میں تقریبا سب جاوا سکرپٹ کو استعمال کرتے ہوئے کے لئے jQuery کا استعمال کرتا ہے. اور پہلی نظر میں، ایمانداری سے، یہ تھوڑا زیادہ خفیہ لگ رہا ہے. لیکن آپ کو جانے سے خاص طور پر اگر، تلاش کر لیں گے ویب کے ساتھ آپ کی آخری منصوبے کے لئے ترقی، آپ کو تلاش کر لیں گے کہ یہ چیزوں کو صاف اور آپ کے بہت سے بچاتا ہے کوڈ کی چند لائنوں. تو میں صرف نظر کرتے ہیں کس طرح اس فارم کام کر رہا ہے. میں بظاہر کیا کو دور کیا نوٹس اپنے HTML سے؟ جمع ہینڈلر نمبر نہیں ہے تو بات کرنے کی. کوئی وصف نہیں ہے. آپ کو معلوم ہے، کیا میں واقعی میں پسند نہیں آیا؟ ہم گر رہے تھے جیسے میں نے محسوس کیا وہاں پرانی آدتےن میں. یہ میلا محسوس کرنے کے لئے شروع کیا گیا تھا جیسا دونوں کے ساتھ سی ایس ایس باہمی مرکب کرنے کے لئے ایچ ٹی ایم ایل، آپ کی قسم پھینک رہے ہیں سب سے زیادہ مختلف زبانوں جگہ، اسی طرح اس کے محسوس کرنے کے لئے شروع کیا نیچے جانے کے لئے ایک بری سڑک طرح کہاں میں کے اندر جاوا سکرپٹ کے کوڈ ڈال رہا ہوں میری ایچ ٹی ایم ایل کی بجائے اسے باہر فیکٹرنگ. تو یہ یہاں سبق ہے. ڈوم 2.html میں، میں نے اسے باہر فیکٹرنگ رہا ہوں. اور میں تھوڑا سا باتیں کر رہا ہوں مختلف. اب کے لیے، میں اپنے ہاتھ لہر جا رہا ہوں یہ واقعی کیا کرتا میں ہڈ کے نیچے. لیکن صرف اب کے لئے فرض ہے کہ سب سے پہلے اس لائبریری میں کوڈ کی لائن jQuery کے صرف کا مطلب ہے کہ جب کہا جاتا ہے دستاویز کے مندرجہ ذیل کرتے ہیں، کے لئے تیار ہے. ویب کے صفحات لے سکتے ہیں کیونکہ لوڈ کرنے کے لئے کچھ وقت. آپ کو ایک سست رفتار انٹرنیٹ پر ہو سکتا ہے کنکشن، اور یہ کتائی جا سکتا ہے اور کتائی، اور آخر میں یہ بھری ہوئی ہے. کوڈ کی اس لائن صرف تک انتظار کا کہنا ہے کہ سارے صفحے، دستاویز تیار ہے اس کوڈ پر عمل کرنے سے پہلے، تیار ہے. اور اب محسوس، شاید یہ ہے سب سے پہلے سب سے زیادہ مفید دور jQuery کے سے لے. یہاں یہ لائن روح میں اسی طرح کی ہے یہاں بہت طویل لائن. خام جاوا سکرپٹ کے کوڈ میں، وہاں جبکہ ایک دستاویز عالمی اعتراض موجود ہے ،) (getElementById نامی ایک تقریب ہے لکھا تھا ان لوگوں کو جو jQuery کے صرف کا کہنا ہے کہ آسان ڈالر سائن ان کریں، اور اس کے بعد کے اندر قوسین پھر دو کی قیمت درج کرنے، اور اس کے بعد ایک ہیش کی علامت ڈال دیا تم پر قبضہ کرنا چاہتے منفرد ID. تو اس کے برابر ہے document.getElementById. دریں اثنا،. صرف مطلب پیش تم جو کچھ بھی فارم جمع بائیں طرف کا حوالہ دیتے ہوئے، جانا آگے اور اس کو پھانسی. لیکن یہ بھی اب تجسس ہے. کے بارے میں عجیب بات ہے کیا میں یہاں پر روشنی ڈالی ہے؟ نہ صرف یہ قسم کی syntactically ہے نیا، کچھ کمی بھی ہے. سامعین: یہ صرف تقریب کہا جاتا ہے؟ یہ انتباہ نہیں بلایا ہے؟ DAVID MALAN: جی ہاں. ٹھیک ہے، تو چوکس () نیچے ہے یہاں، منصفانہ ہو. لیکن ایک کا کوئی ذکر نہیں ہے آپ کو پتہ ہے کی طرح، نام، FOO کو یا یہاں کچھ. اور یقینا، یہ خصوصیات میں سے ایک ہے کافی ہے کہ جاوا اسکرپٹ کا طاقتور، بلکہ بہت نئے. اور پی ایچ پی اصل میں کے ساتھ ساتھ اس کی ہے. مجھے آگے جانا ہے اور کرتے ہیں اصلی فوری کچھ. مجھے آگے بڑھیں اور یہاں یہ ڈال دو. مجھے ایسا. فنکشن. ) (اس ہینڈلر کہتے ہیں. ایک ہینڈلر تقریب تو بات کرنے کی. کچھ آپریشن ہینڈل کہ کچھ. مجھے اپنے پوٹ کاری کو صاف کرتے ہیں. اور یہاں یہ ڈال دیا. اور یہ کہ یہاں ڈال دیا. جی ہاں. ٹھیک ہے. تو اب میں نے فون کیا ایک تقریب ہے مجھے سچ میں پتہ نہیں ہے کہ ہینڈلر () یہ ابھی تک کیا کرتا ہے. یہ صرف اب بھی وہ چیزیں ہیں. افوہ. بہت زیادہ لے لیا. ایسا کرتے ہیں. ٹھیک ہے. معاف کیجئے گا. ٹھیک ہے. مجھے یہ کرنے دیں. ٹھیک ہے. اچھا اور براہ راست لگتا ہے کہ مستقبل کے حوالے سے اب. مجھے یہ کرنے دیں. یہ کرتے ہیں. اور OK. تو اب، کی یہاں پر اس ڈال دو. مکھی پر اور کوئی پروگرامنگ. ٹھیک ہے. تو اب، کی پیٹھ کے پاس چلتے ہیں کہانی کا آغاز کیا ہے. ماضی میں، میں نے یہ اس لائن یہاں کہا کہ دستاویز کے لئے تیار ہے، جب جانے کا مطلب ہے کہ آگے اور یہ کرتے ہیں. مجھے کیا کرنا چاہتے ہیں؟ ویسے خاص طور پر، میں جانا چاہتی ہوں آگے اور مندرجہ ذیل ہے. کوڈ کی اس لائن ایگزیکیوٹ، اور پھر کیا میں نے تم سے کرنا چاہتا ہوں یہ فون ہے فارم جمع ہونے کی صورت میں کام کرتے ہیں. اب یہ دلچسپ ہے کیا ہے. یہ ایک تقریب میں بذات خود نہیں ہے. میں قوسین ڈال نہیں کر رہا ہوں نوٹس یہاں معمول کی راہ میں. میں لفظی نامی ایک تقریب گزر رہا ہوں ایک اور تقریب میں ہینڈلر () ایک دلیل کے طور پر) (جمع کرانے سے ملاقات کی یہ ایک متغیر کی طرح ہے ہے. اور اس کی خصوصیات میں سے ایک ہے جاوا سکرپٹ، خود افعال ہے واقعی صرف اشیاء ہیں. اصل میں، وہ واقعی صرف ہو کسی قسم کے متغیر. اور تقریب کا نام ہے تو ہینڈلر ()، میں نہیں کر سکتا کوئی وجہ نہیں ہے یہاں ایک دلیل کے طور پر اس میں منتقل. اور اس کا مطلب ہے جب فارم ڈیمو کی ID ہے کے ساتھ پیش کی، اس تقریب کو فون کریں. لیکن اب میں اس کے تمام کالعدم تو اسی وجہ سے تو میں شاید کیا اس ایک لمحے پہلے؟ ٹھیک ہے، یہ ایک گمنام دالہ ہے. واضح طور سے کیونکہ، میں اسی وجہ سے میں ہوں احساس ہوا ایک اعلان وقت ضائع کرنے کے لئے پریشان کر تقریب صرف فون کرنے ہینڈلر () کہا جاتا ہے ایک اور صرف ایک ہی جگہ میں ہے؟ مجھے نام کی ضرورت نہیں ہے، اور میں ایسا نہیں کرتے تو یہ ایک سے زیادہ جگہ ہے، فون کرنے کی ضرورت ہے چلو صرف تقریب کو نافذ حق جہاں میں اس کی ضرورت ہے. اور اس جاوا سکرپٹ اور پی ایچ پی کی حمایت کیا گمنام افعال کہا جاتا ہے کہ مجھے وہ یہاں بالکل ایسا کرنے کی اجازت دیتے ہیں. لیکن ہم صرف سطح scratching رہے ہیں. چلو صرف ایک جوڑے کے ساتھ تنگ یہاں حتمی مثالیں. میں quote.php میں جانا ہے. یہ اصل میں ایک پی ایچ پی کی ہے کہ نوٹس تقریب میں، میں نے لکھا ہے کہ ایک پی ایچ پی پروگرام، نامی ایک HTTP کے پیرامیٹر کی توقع رکھتا ہے کہ سنہرے بالوں والی، اور میں میں منتقل کر سکتی ہیں ایف بی کی طرح ایک قیمت. اور ہم اصل منبع کی طرف دیکھو تو کوڈ، یہ ایک مفت ویب سائٹ querying ہے صرف P-سیٹ کی طرح، یاہو خزانہ سے ملاقات کی سات، اور یہ میرے لئے واپس آ گیا ہے بظاہر میں کچھ نام سے جانا جاتا فارمیٹ JSON ہے - جاوا سکرپٹ آبجیکٹ سنکیتن. یہ صرف کسی چیز ہے. گھوبگھرالی منحنی خطوط وحدانی، کوٹس، نوٹس بڑی آنت، اور کوما کی علامت. اب دریں اثنا، یہ بہت اچھا ہے. میں شاید ایک پروگرامنگ کا استعمال کرسکتے ہیں کیونکہ یو آر ایل کو پیدا کرنے کے لئے زبان متحرک طور پر اس طرح کہ دیکھو، ٹھیک ہے؟ میں گوگل کرنے کے لئے اس کو تبدیل کرسکتے ہیں اور گوگل کی واپس مل $ 1،017.55 کے اسٹاک کی قیمت. تو کیا اب ہم اس کا استعمال نہیں کر سکتے تو چلو دیکھتے ہیں. مجھے یہاں AJAX-0 کے پاس جانے دو، جو مندرجہ ذیل کی طرح لگتا ہے. یہ صرف ہے کہ ایک ویب سائٹ ہے ایک بٹن کے ساتھ ایک فارم. مجھے یہاں آگے بڑھو اور YHOO میں ٹائپ کرتے ہیں یاہو کی اسٹاک کی علامت کے طور پر، حاصل کریں پر کلک کریں اقتباس، اور اب میں ملتا ہے توجہ 32.86 کے ساتھ ایک انتباہ. مجھے اصل میں ایک fancier ورژن میں جانے دو اس صفحہ کو، ورژن دو، اور چلو میں قسم مائیکروسافٹ، MSFT کا کہنا ہے کہ. اقتباس حاصل کریں. اور اب، کوئی الرٹ محسوس. اس کا کہنا ہے کہ جہاں نوٹس قیمت کا تعین ہے؟ ہے کہ مثال کے طور پر سب سے آسان ہے کیا Gchat میں اشارے، اور فیس بک چیٹ، اور جی میل، اور اس طرح کے دیگر ویب سائٹس اصل کے ذریعے کر رہے ہیں ویب صفحہ کو تبدیل کرنے. اگر اس نوٹس کے. آپ کے وزٹرز کا صفحہ دوبارہ لوڈ کریں دو. آپ کے وزٹرز کا کروم کے انسپکٹر کھول دیں. میرے عناصر کو جانے دو یہاں کے ٹیب کے نیچے. اب توجہ تو میں یہاں نیچے میں زوم اور اس کو کھولنے، یہ میری ہے کہ نوٹس ایچ ٹی ایم ایل ڈوم - میری دستاویز آبجیکٹ ماڈل. یہ میری HTML ہے. چل رہا ہے اگرچہ لیکن اب، نوٹس دونوں میں اسے دیکھ کر تھوڑا سخت ہونا ایک ہی بار میں مقامات، میں ایف بی میں ٹائپ کریں تو یہاں، سب سے نیچے دیکھنا سکرین کے صرف. یہ اصل میں تبدیل کر رہا ہے مکھی پر اپنے ایچ ٹی ایم ایل. اور یہ کافی صرف یہ کر رہی ہے کچھ اس طرح کرنے سے. میں AJAX-2 کو کھولنے، تو لاگو کرنے کے نوٹس کے طور پر کے طور پر سیکسی کچھ یہ بہت بدسورت ہے، اگرچہ، کہ، کہ لیکن کے طور پر جدید ترین فعل کے، یہ کچھ ہے نچلے حصے میں ایچ ٹی ایم ایل. لیکن میں ٹیگ کے لئے استعمال کیا محسوس. ہم سے پہلے اس کا استعمال نہیں کیا ہے، لیکن یہ ہے ایک کی طرح ہے، لیکن یہ مجبور نہیں کرتا ایک نئی لائن پر سب کچھ. یہ صرف ایک آئتاکار خطے کرتا ہے ایک ہی لائن میں بنیادی طور پر. میں نے اس کی قیمت کا ایک شناختی نمبر دے دیا یہ نوٹس. اور یہ ایک ہی کا استعمال کرتے ہوئے کی طرف سے باہر کر دیتا ہے جاوا سکرپٹ لائبریری، میں ایک تقریب ہے جب بھی کہا جاتا ہے کہ اقتباس () کہا جاتا ہے فارم جمع ہے. اور جو میں کر رہا ہوں یہ ہے. میں جاوا سکرپٹ میں ایک متغیر کا اعلان کر رہا ہوں قیمت کی بچت، یو آر ایل کہا جاتا ہے quote.php؟ علامت =. دوسرے الفاظ میں، میں اپنے آپ کو شروع کر رہا ہوں پھر ایک HTTP درخواست کی تیاری، اور میں نے ایک کے علاوہ کے ساتھ اس پر concatenating رہا ہوں ID کے ساتھ جو کچھ بھی عنصر علامت کے، جس کا نوٹس یہ ہے کہ کیا جاتا ہے یہاں حق کے نیچے متن والے فیلڈ. تو جیسا کہ ہم نے ماضی میں فارم تھا. اور اگر تو یہ، jQuery میں باہر کر دیتا ہے آپ کو ایک ویل کے بلاتا ہے کہ کہتے ہیں. ویل ()، ہو جاتا ہے کہ تقریب، ایک کی قیمت کی تقریب، صارف رکنیت ٹائپ ہے جو کچھ بھی اور پھر نیٹ ورک ٹریفک کے تمام کہ یہ ہے ہوتا ہے. $. getJSON. اور ایک طرف ایک، ڈالر کی نشانی ہے صرف ایک آشلپی سنکیتن. یہ واقعی jQuery.getJSON ہے. اس یو آر ایل سے JSON مجھ سے ہو جاؤ، اور جب پروپوزل کی گذارش واپس آتا ہے، اس کال تقریب اور دلیل کے طور پر میں منتقل جو کچھ بھی واپس سرور کی طرف سے آیا. ، دوسرے الفاظ میں تو میں واپس جاؤ براؤزر، اور میں نے quote.php پر واپس جانا، کیا اپنے براؤزر کر رہا ہے ہو رہی ہے اعداد و شمار کے اس حصہ. اور میں یہاں اس ویب صفحے پر جانے کے جب، ہم بجائے نیٹ ورک کو اگر نوٹس ٹیب اور یہ واضح، اور پھر میں ٹائپ کریں گوگل کے لئے GOOG طرح کچھ اور ہو جاؤ اقتباس، پیج کو تبدیل نہیں کیا محسوس. لیکن ایک HTTP درخواست بنا دیا، اور کیا گیا تھا ہم پر نظر ڈالیں تو یہاں واپس آئے جواب JSON کی ایک پوری چڑھانے ہے ہم آخر میں حاصل کیا ہے یہاں اس سادہ لائن. ڈیٹا ہو کیا گیا ہے سرور سے. قیمت کے نام پر ہے کے بارے میں دیکھ بھال کی چابی. تو data.price مجھے دیتا ہے. اب اس دوران، اور اس آخری مثال ہے. آپ کے صفحے کے ساتھ ابھی تک زیادہ کر سکتے ہیں. ایک اصل میں، دو. ہم واپس لا سکتے ہیں آپ اس یاد ہے، ٹیگ. جاوا سکرپٹ ہے. ہم یہ کر سکتے ہیں. بہت دلچسپ. ہم نے ایک cliffhanger کے طور پر اس کو چھوڑ دیں گے. لیکن excitingly، آپ کر سکتے ہیں اس طرح کی باتیں کرتے ہیں. میں جغرافیائی محل وقوع-1 جاتے ہیں، یہ پتہ چلتا ہے کروم ہم ہیں کہ جانتا ہے عرض بلد طول بلد 42،37. -71،10. تو اس سے بھی زیادہ وہاں ہے آپ کے اختیار میں. لیکن اس کے اگلے ہفتے میں مزید. پیر کو ملاقات.