[Powered by Google Translate] [रॉक संगीत] [संगीत - "एक साथ खुश" कछुए] डेविड मालन: आज, हम हमारे अन्वेषण शुरू कंप्यूटर विज्ञान और हमारे परिचय की बुनियादी बातों में, अब प्रोग्रामिंग की कला है, जिसमें से वह यह है कि सिर्फ एक उदाहरण है. लेकिन समस्या का हल एक ही नस में पता है, कि CS50 पारंपरिक पहेली दिवस कल है. अगर आप अभी तक इस घटना के लिए नहीं RSVPed है, तो आप जा सकते हैं cs50.net/rsvp. आप दो या तीन या चार टीमों को ला सकता है. आप एक आप देखा तरह की समस्याओं के साथ चुनौती दी जाएगी शुरुआत में वहाँ ऊपर. सभी नई समस्याओं इस साल अगर आप पिछले साल partook, और आप एक मौका तो कुछ शानदार पुरस्कार जीतने के लिए करना होगा. उनमें से, एक Wii और कुछ उपहार प्रमाण पत्र और इस तरह, CS50 छात्रों और सहपाठियों के साथ सभी जबकि बाहर फांसी और पिज्जा और फेसबुक. तो अगर आप चाहते हैं कि कल पर अधिक है. यह तो CS50 आप के उन लोगों के लिए हमें में शामिल होने के लिए, पहली बार. और पता है कि इस पाठ्यक्रम विशेष रूप से प्राप्त करने के लिए निर्धारित किया जाता है अपनी अंतिम अंत करने के लिए इस पाठ्यक्रम के माध्यम से, आप जिस पर आप बिंदु न केवल इन में से एक समझ है कंप्यूटर विज्ञान की बुनियादी बातों में है, लेकिन आप होगा यह बहुत व्यावहारिक कौशल सेट है कि तुम फिर से वापस ले सकते हैं अपने खुद के विभाग, चाहे वह इंजीनियरिंग विज्ञान, लागू गणित, भौतिक विज्ञान, प्राकृतिक विज्ञान, या पसंद है. वास्तव में, क्या कंप्यूटर विज्ञान इन के बारे में इतना रोमांचक है दिन है कि यह सिर्फ इतना करने के लिए लागू होता है क्षेत्रों के सभी प्रकार के. और आज भले ही, हम केवल एक की सतह खरोंच होगा बहुत पारंपरिक प्रोग्रामिंग भाषा सी के रूप में जाना जाता है, हम करेंगे बजाय खरोंच बुलाया कुछ को देखो, के साथ कुछ जो कि कुकी प्रेम कहानी, आपके द्वारा लागू किया गया था पिछले कुछ वर्षों में पूर्ववर्तियों, कहानियों बताओ, खेल बनाने के लिए, इंटरैक्टिव कला बनाने के लिए, और वास्तव में हमारे लपेटो शुरू मौलिक constructs कि कुछ के आसपास मन प्रोग्रामिंग आबाद लेकिन एक संदर्भ में, जैसा कि आप देखेंगे कि बहुत कम डरावना है, कि बहुत कम रहस्यमय है, की तुलना में आप देखेंगे लंबे समय से पहले. और भी एहसास है, आप में से उन लोगों के लिए बस हमें इस में शामिल होने सेमेस्टर, वाक्यांशों जिस पर हम बुधवार व्याख्यान समाप्त हो गया है, यह इतना महत्वपूर्ण नहीं है जहाँ आप अपने को रिश्तेदार अंत इस वर्ग में सहपाठियों, लेकिन जहां आप सेमेस्टर के अंत तक, 11 सप्ताह में अपने आप को सापेक्ष यह बहुत दिन खत्म होता है. तो आगे की हलचल के बिना, यह भी है कि टिप्पण लायक उन कम आरामदायक, बीच में उन कहीं, इस पाठ्यक्रम के डिजाइन द्वारा नहीं, किसी भी नुकसान पर विज़ावी उन अधिक आरामदायक इस वर्ग में आ रहा है. जैसा कि आप सप्ताह से अधिक देखने के लिए आया हूँ, हम अलग है पटरियों असमान वापस पृष्ठभूमि के लिए, उन लोगों के लिए वर्गों कम आराम से, और अधिक आरामदायक, उन कहीं बीच में. जैसा कि आप इस सप्ताह के अंत में और अगले सप्ताह के दो संस्करणों देखेंगे सबसे दोनों मानक और हैकर संस्करण तो समस्या सेट कि तुम सब नीचे पथ आत्म का चयन कर सकते हैं जिसके साथ आप सबसे अधिक आरामदायक हैं. आज तो, हम इस प्रोग्रामिंग में गोता भाषा स्क्रैच बुलाया. यह एक चित्रमय प्रोग्रामिंग भाषा है, और अभी तक यह है उच्च स्तर भाषाओं हम करेंगे के कुछ ही विशेषताएं सेमेस्टर में बाद में उन के बीच में, पता लगाने के सी और जावास्क्रिप्ट और PHP. लेकिन यह हमें distractions के कुछ से बचने के लिए अनुमति देने के लिए जा रहा है जल्दी वाक्यविन्यास के पर, अर्धविरामों, कोष्ठक की तरह बातें, और अन्य रहस्यमय जानकारी है कि, पहली नज़र में ही नहीं हैं सभी बौद्धिक दिलचस्प और में मिल जाते हैं कुछ बुनियादी समझ से रास्ता. अब समर्थन आगे संरचना के मामले में, यह एहसास हुआ उपकरण, CS50 चर्चा है, जो कोर्स पर जोड़ा जाएगा वेबसाइट आज बाद में, ऑनलाइन चर्चा मंच में है जो आप एक दूसरे के बारे में सवाल पूछने के लिए सक्षम हो जाएगा और स्टाफ है, और यह भी एक उपकरण है, के रूप में हम अगले सप्ताह देखेंगे, कि हम काफी integratedly में उपयोग करेंगे कार्यालय के रूप में अच्छी तरह से घंटे. दरअसल, कार्यालय घंटे सोमवार को शुरू हो, और स्पष्ट रूप से, 1 कार्यालय घंटे के सप्ताह काफी कम महत्वपूर्ण है. मुझे नहीं लगता कि आप स्क्रैच दुर्गम है कि सभी मिल जाएगा. यह बल्कि आत्म व्याख्यात्मक है, जैसा कि हम देखेंगे, तो और क्या हम इसे आज के लिए इस्तेमाल करेंगे के कुछ उद्धरण है मौलिक विचार है कि, तो भर में रहेंगे सेमेस्टर के बाकी. लेकिन सोमवार को शुरू, 23:00 के माध्यम से 8:00 पर हो जाएगा Annenberg में मस्तिष्क को तोड़ने पर कार्यालय समय. दो सेक्शनिंग इस शाम को शुरू होगा, तो यह कुछ समय सप्ताहांत, cs50.net/section के लिए जाना है, और आप सवालों का एक नंबर पूछा. उनमें से, कैसे आप अपने का वर्णन होता है आज के रूप में आराम के स्तर? कोई मुश्किल, जो बाल्टी में जो रूप में तेजी से नियम है. यह सिर्फ बात की तरह है कि आप शायद जानते हैं कि अगर आप कम आराम या अन्यथा उन लोगों के बीच हैं. और अब, walkthroughs. इस सप्ताह के लिए समस्या सेट विनिर्देश, दोनों मानक और हैकर संस्करण एक जैसे, cs50.net में अब के रूप में ऑनलाइन है. और आप देखेंगे कि इन संस्करणों के पहले, हम मानक संस्करण प्रत्येक सप्ताह, कुछ के साथ है एक कोड walkthrough कॉल, एक सत्र में से किसी एक का नेतृत्व किया पाठ्यक्रम के शिक्षण साथियों आप गाइड के माध्यम से, प्रदान करते हैं पर, सुझावों और नीचे लाने के लिए एक विशेष मार्ग जब यह आता है इन समस्या सेट शुरू करने के लिए. तो इन समस्या से प्रत्येक के साथ सेट है, अगर आप कभी भी चाहते हैं अपने आप को मैं कहाँ से शुरू करते हैं, आप इन के साथ शुरू walkthroughs. और वास्तव में, मुझे Zamyla चान, इस लागू करने की अनुमति वर्ष शिक्षण साथी जो प्रत्येक और हर प्रमुख होंगे इन walkthroughs के. Zamyla? [वाहवाही] ZAMYLA चान: ओह, हाय, सब लोग. मेरा नाम Zamyla है. मैं Winthrop हाउस में एक जूनियर इंजीनियरिंग का अध्ययन कर रहा हूँ. लेकिन मैं कोशिश करूँगा और मैं के रूप में कई कंप्यूटर विज्ञान पाठ्यक्रम के रूप में फिट है, जो कर सकते हैं यही कारण है कि मैं वास्तव में इस अग्रणी होने के लिए उत्साहित कर रहा हूँ वर्ष walkthroughs Walkthroughs, मेरे लिए, मेरे CS50 का एक अनिवार्य हिस्सा थे अनुभव. Walkthrough के दौरान, हर पी सेट के लिए, हम के माध्यम से जाना होगा समस्या एक साथ सेट, समस्याओं को देखने के लिए, की तरह उन्हें प्रबंधनीय काटने में विभाजित करते हैं. मैं तुम्हें प्राप्त करने के लिए युक्तियाँ, तकनीकों दे देंगे, के माध्यम से और शुरू हो रही है. मैं walkthroughs पर आप सभी को देखने की उम्मीद है. यदि आप यह व्यक्ति में नहीं बना, तो कर सकते हैं कृपया ऑनलाइन में धुन है. डेविड मालन: बहुत बढ़िया. शुक्रिया, Zamyla. तो पता है कि walkthroughs कर रहे हैं, वास्तव में एक शुक्रवार को, दोपहर, लेकिन इस डिजाइन द्वारा जानबूझकर इतना है कि यहां तक ​​कि अगर आप बल्कि एक शुक्रवार को कक्षा में उपस्थित नहीं होता दोपहर, वीडियो सभी को और अधिक जल्दी खत्म हो जाएगा सप्ताहांत. तो पता है कि cs50.net Zamyla के सब ठीक हो जाएगा walkthroughs. और कहा कि आज की तारीख और समय, 3:00 PM है, Harberd हॉल, 104. और शिक्षण साथियों के कुछ भी तैयार किया है अनुपस्थिति में आप के लिए कुछ टिप्पणी के एक बिट दे परिप्रेक्ष्य उनके अनुभव में आ रहा है और क्या करने के रूप में CS50 से बाहर जाने की तरह था. तो अगर हम मंद बस एक पल के लिए रोशनी, मैं कर सकता है आप दे CS50 स्टाफ के कुछ. जैक्सन STEINKAMP: मैं CS50 पिछले वर्ष में एक नए रूप में लिया गिर सकता है, और यह पूरी तरह से मेरे दिमाग उड़ा दिया. मैं किसी भी प्रोग्रामिंग कक्षाएं पहले कभी नहीं लिया था, किसी भी कंप्यूटर विज्ञान के साथ आया था और कभी नहीं में सब पर अनुभव. और बस, मैं इस वर्ग के बारे में चर्चा सुना और यह लेने का फैसला किया है. जूलिया MITELMAN: यह सचमुच मजेदार था, वास्तव में उलझाने. फिर भी मैं इस दिन के लिए, मैं अभी हाल ही में देखा मैं फ्लॉपी डिस्क है कि दाऊद ने हमें दिया है अपने व्याख्यान के पहले दिन पर. मैं यह मेरी दीवार पर लटका दिया था. यह शायद थोड़ी nerdy है, लेकिन मैं अपने में लटका यह कैसे शांत था एक चेतावनी के रूप में कक्षा के दौरान दीवार. TRAVIS चढ़ाव: यह बहुत शर्मनाक है. आप कंप्यूटर विज्ञान के कुछ है: JACKSON STEINKAMP यहां तक ​​कि अगर आप एक के लिए नहीं कर रहे हैं की कोशिश करनी चाहिए परंपरागत विज्ञान. यह अपने आप ही अनुभव है, और CS50 सुनिश्चित करें कि आप कर रहे हैं कर देगा के माध्यम से यह अच्छी तरह से अपने TFS के बेताज सेना के साथ समर्थित है. अली: NAHM मैं इसे एक नए रूप में ले लिया है, और इसलिए मैं एक बहुत कुछ किया है नए दोस्त. मैं भी इस पूरे एकाग्रता और शुरू हो गया इंजीनियरिंग के पूरे स्कूल, और इसलिए मैं अत्यधिक यह सलाह देते हैं और आप हमारे CS50 परिवार के लिए आपका स्वागत है. Yaniv YACOBY: CS50 बस कैसे उपकरणों का उपयोग करने के लिए आपको सिखाता है है कि व्यापक रूप से सुलभ हैं. तुम सिर्फ एक लैपटॉप की जरूरत है, तो आप एक वेब ब्राउज़र की जरूरत है, आप और कुछ कोड लिखने के लिए सीखने की जरूरत है, और तुम सच का निर्माण कर सकते हैं साफ बातें. करेन जिओ: यह सिर्फ इतना शांत करने के लिए कुछ भी बना करने में सक्षम हो और लोग इसका इस्तेमाल करते हैं और लोग इसे देख, और है कि क्या मैं वास्तव में इसके बारे में प्यार. टिम McLaughlin: - समुदाय की भावना इस में मुझे लगता है, मैं इतनी दूर ले लिया है किसी भी अन्य पाठ्यक्रम से अधिक पाठ्यक्रम. तुम सिर्फ एक नहीं ले जा रहे हैं - आप एक और आवश्यकता नहीं भर रहे हैं. तुम सिर्फ व्याख्यान के लिए नहीं जा रहे हैं और अनुभाग के लिए जा रहा है. लेकिन आप चीजों की टन कर रहे हैं कि सभी के बारे में प्रोग्रामिंग और प्रौद्योगिकी के बारे में है, लेकिन यह नहीं वास्तव में एक वर्ग की तरह समय के सबसे अधिक लग रहा है. TRAVIS चढ़ाव: और पहले दिन पर, वे बाहर हाथ केक, और मैं तुरंत बेच दिया गया था. नि: शुल्क कैंडी और पिज्जा: याकूब PRITT. ZAMYLA चान: - आपकी रुचि के स्तर की परवाह किए बिना, मुझे लगता है कि कि CS50, तुम मज़ा है, और आप बौद्धिक हो जाएगा उत्तेजित. मार्क GROZEN स्मिथ: यह हमेशा कक्षा में एक पार्टी है, और यह एक है पार्टी हर रात अपने पी सेट पर काम कर रहा है. हर बार जब आप एक समस्या सेट खत्म,: JACKSON STEINKAMP महसूस होगा जैसे आप एक परियोजना को खत्म कर दिया है. MELISSA NIU: यह नए वर्ष का था, और मैं खरीदारी किया गया था. मैं मेरे चार वर्गों के लिए तैयार था, और मैं Annenberg में था. और मैं एक दोस्त में टक्कर, और वे कहते हैं, अरे, मैं खरीदारी कर रहा हूँ इस वर्ग CS50 कहा जाता है, और आप मेरे साथ आना चाहिए. समाप्त हो गया यह है कि गिरावट ले रही है, और है कि कक्षा के बाद मैं, लगा कि शायद मैं सीएस में नाबालिग के लिए जा रहा हूँ. लेकिन यहाँ मैं, तीन साल बाद कर रहा हूँ, अभी भी कंप्यूटर का अध्ययन विज्ञान और वास्तव में यह एक प्रमुख के रूप में कर रही है, और मैं हर प्यार करता था यह के पल. रोब BOWDEN: मुझे पता नहीं है. अली NAHM: चलो देखते हैं. MELISSA NIU: पागलपन. 1 अध्यक्ष: मुझे लगता है कि मैं बहुत क्लिच होगी. मैं बस का कहना है, करना चाहते हैं, भयानक. Yaniv YACOBY: अभिगम्यता. नि: शुल्क कैंडी और पिज्जा: याकूब PRITT. TRAVIS चढ़ाव: नीचे एक वर्ग नहीं बदल सकते हैं कि केक बाहर हाथ. टिम McLaughlin: ऊर्जावान. VIPUL शेखावत: आवश्यक. रोब BOWDEN: मुझे एक जवाब के बारे में सोच. मुझे लगता है कि मुझे कुछ मिला है. ओह, भगवान. हाँ, मेरा नाम रोब Bowden, और इस CS50 है. [वाहवाही] डेविड मालन: ठीक है, तो हम एक चित्र पेंट करने के लिए शुरू जिस दिशा में हम जाते हैं, कर सकते हैं और चलो परिचय इस अवधारणा यहाँ pseudocode के रूप में जाना जाता है. तो एक pseudocode प्रोग्रामिंग नहीं है ही पर्यत भाषा. यह प्रतिशत से तकनीकी नहीं है, लेकिन यह सिर्फ एक की तरह है अपने आप को काफी ठीक से व्यक्त करने का सामान्य तरीका है, काफी algorithmically काफी procedurally, लेकिन बिना क्या आप भाषा को व्यक्त कर रहे हैं के बारे में चिंता करने की ज़रूरत अपने आप को अंदर यह अंग्रेजी और प्रोग्रामिंग भाषाओं में से कुछ के साथ मॉडल है जो आप परिचित होना होता है, तो हम शुरू कर सकते हैं इस तरह की बात लिखने के रूप में हम जाने. और वास्तव में, यूसुफ, मैं आप उधार ले सकता है मंच पर यहाँ मुंशी? मैं आगे चला गया है यहाँ और अग्रिम में करना भूल आज कुछ मोज़े पर है, और यह हमारे और अधिक के बीच हो जाएगा हास्यास्पद उदाहरण हैं. अब, मैं आप की जरूरत है यहाँ. मैं मोजे हिस्सा करूँगा. तो यहाँ हम एक छोटी सी खरोंच पैड है. यह सचमुच सिर्फ एक मैक में TextEdit. हम वास्तव में एक runnable प्रोग्राम लिखने के लिए नहीं जा रहे हैं, लेकिन हम सिर्फ बाहर sketching pseudocode आधारित शुरू करने जा रहे हैं कुछ वकील तुम मुझे यहाँ प्रदान की पर. तो यहाँ घर पर मेरे मोजे के ढेर है. मैं जब मैं सुबह में जाग पर कोई मोजे है, और अब हम एक प्रोग्राम लिखने की जरूरत है, एक तरह की एक एल्गोरिथ्म, जिसके साथ अपने पैरों पर इन मोजे. और जिस तरह से साथ, चलो देखते हैं अगर हम पर यात्रा, या मुठभेड़, विचार है कि आप जा रहे हैं के कुछ करने के लिए शुरू करने के लिए के बारे में अधिक गंभीरता से सोच जब प्रोग्रामिंग ऐसा न हो कि अपने कार्यक्रमों व्यवहार नहीं काफी के रूप में इरादा है. इसलिए मैं यहाँ बैठ जाओ. मैं मेरे मोजे के ढेर मिल गया है. पहली बात एक उचित मानव होता जा रहा है क्या है जब लक्ष्य मोज़े की एक जोड़ी पर डाल दिया है? किसी ने मुझे एक कदम है, और केवल एक कदम दे. हाँ? दर्शक: नीचे झुको. डेविड मालन: झुकना, ठीक है. दो कदम. दो कदम. श्रोतागण: आपके जुर्राब उठाओ. डेविड मालन: अपने जुर्राब उठाओ. ठीक है, तो यहाँ मामूली अस्पष्टता, और यह पहले से एक है ब्लॉक कि हम जानबूझकर करने वाले हैं ठोकरें खाते हुए चल यहाँ मुठभेड़. यह एक छोटे से अस्पष्ट है, तो अपने जुर्राब लेने. ठीक है, मैं इस एक है, लेकिन एक कंप्यूटर, एक बस में एहसास बिट, मानव वृत्ति का है कि तरह करने के लिए बस नहीं जा रहा है निकटतम एक उठाओ. हम शुरू करने के लिए जा रहे हैं, लंबे समय से पहले व्यक्त अपने आप को और अधिक ठीक. ठीक है, तो दो कदम है अपने जुर्राब उठाओ. हम ले लेंगे. तीन कदम. पीठ में. दर्शक: एक जोड़ी मिलान का पता लगाएं. डेविड मालन: मिलान जोड़ी खोजें. ठीक है, तो यह अच्छा है. मैं इस जुर्राब का चयन करने के लिए किया था. लक्ष्य तो एक मेल जुर्राब है, अब है, लेकिन क्या इसका मतलब? बुधवार को एक उचित बहुत पसंद किया जा रहा है, मानव सिर्फ मैं जब पता था कि कैसे एक फोन की किताब में माइक स्मिथ को खोजने के लिए, बस की तरह अपनी वृत्ति के साथ चला गया. लेकिन यहाँ, यह स्पष्ट रूप से यहाँ इस जुर्राब है, लेकिन एक कंप्यूटर नहीं जा रहा है इतना सहज हो. एक कंप्यूटर के लिए बिट्स की एक संग्रह किया जा रहा है, के रूप में हम बुधवार को चर्चा की, और उन रहे हैं स्मृति में किसी भी तरह का आयोजन किया. लेकिन मुद्दा यह है कि केवल एक कंप्यूटर की क्षमता है चीजें एक एक समय में लग रही है, और वास्तव में, हम भी - मनुष्य भले ही ऐसा लगता है जैसे मैं नीचे नजर है और एक विभाजन 2 बाद में मैं कहाँ बचा है, मेरे दिमाग और मेरी आँखों संभवतः एक त्वरित उन मोजे के स्किम किया था, और तब से latched सवाल में एक है. तो अगर हम सभी को और अधिक जानबूझकर अब एक कंप्यूटर के रूप में हो सकता है, मैं इस जोड़ी मिलान कैसे पता करूँ? खैर, हम पुनरावृति है. हम पर शायद मोजे के इस झंझट में पाश के लिए है मंजिल जिससे मैं प्रत्येक जुर्राब के लिए कुछ ऐसा कहना है, इसे लेने , और फिर अगर एक दूसरे के रूप में एक ही आकार और आकार, डॉट, डॉट, डॉट, हम कहानी जारी रखेंगे. तो प्रत्येक जुर्राब के लिए, इसलिए मैं इस एक उठाओ. मैं जाँच यह है कि यह एक करने के लिए बराबर है. यह नहीं है, इतना मैं अलग पक्ष रखा. तो मैं फिर से पुनरावृति. इस के बराबर है? नहीं, यह है, ऐसा नहीं मैं यह अलग रखा. इस एक है? नहीं. यह एक? नहीं, और बहुत आगे है. और फिर अंत में, उम्मीद है कि, मैं यहाँ इस जुर्राब मुठभेड़ जाएगा. तो अगर यह एक ही आकार, आकार है, इसे ले जाओ. और अब हमारा अगला कदम यहाँ होगा? हाँ? दर्शक: बाएं से दाएं पहचानें. डेविड मालन: ठीक है, सही है और छोड़ दिया तो की पहचान है, सौभाग्य से, यह काम उस तरह. एक छोटी सी सममित, या मैं सिर्फ उन्हें उस तरह पहना है. तो सब ठीक है, मैं सही पहचान की है. और अब, इससे पहले कि हम आगे बढ़ते हैं, मुझे बाहर बिंदु क्या है यूसुफ एक तरह से वाकिफ प्रोग्रामर के प्रकार के रूप में कर रहे हैं. तो फिर, वहाँ ऐसा करने का कोई एक तरीका है, लेकिन से परे है, बस लाइनों क्रमांकन, यूसुफ पहले से ही यह करने के लिए शुरू कर दिया है खरोज की तरह. दरअसल, इस प्रोग्रामिंग में एक बहुत ही आम सम्मेलन है, जब आप कुछ चलने का, शैली पाशन, जिससे हम प्रत्येक के लिए अंग्रेजी "वाक्यांश के साथ संकेत कर रहे हैं जुर्राब, "pseudocode में सम्मेलन और, जैसा कि हम देखेंगे, सामान्य प्रोग्रामिंग भाषाओं, बस इंडेंट है. अंतरिक्ष बार एक बार कुछ मारो, Tab कुंजी या तरह मारा, इतना नीचे है कि नेस्टेड का हिस्सा "प्रत्येक जुर्राब के लिए" सामान है कि आप कि पाश का एक परिणाम के रूप में करने की जरूरत है. तो यह है कि कि शब्दार्थ संदेश है सब है. अब इस बीच, "यदि यह एक ही आकार और आकार" तथ्य यह है कि "यह लो" दांतेदार बना हुआ है और आगे बस का अर्थ है कि केवल एक चीज आप अगर उस हालत में करना चाहिए है, अगर उस शाखा, कि सड़क में कांटा, वास्तव में सच है. तो अब यहाँ, हम चार कदम पर कर रहे हैं, की पहचान सही है और छोड़ दिया. मैं सही पहचान की है. मुझे दे पाँच कदम. और तकनीकी रूप से, हम सच में कह सकते हैं हर बात के लिए - तुम शायद सब अगर लाइनों संख्या चाहिए हम ऐसा करने जा रहे हैं. यूसुफ [अश्राव्य] डेविड मालन: [अश्राव्य?] ठीक है, ठीक है, ठीक है, हम इसे अपने तरीके से करूँगा. ठीक है, तो पांच कदम है, हम सही जुर्राब कैसे करते हो? हम अगले यहाँ कैसे आगे बढ़ना है,? हाँ? दर्शक: ऊपर दाहिना पैर लिफ्ट. डेविड मालन: सही पैर लिफ्ट, ठीक है. छह कदम? जल्दी. हाँ. दर्शक: जुर्राब की एक खुले अंत का पता लगाएं. डेविड मालन: ठीक है, जुर्राब के खुले अंत लगता है. तो अच्छा है. तो यहाँ है, ईमानदारी से, एक बहुत ही आम वृत्ति सिर्फ होगा सही जुर्राब पर डाल दिया है, लेकिन वह भी काफी अस्पष्ट है. जब तक कंप्यूटर या मानव जानता कि वास्तव में क्या मतलब है, यह करने के लिए है कि निष्पादित, तो यहाँ होने वाला नहीं है, मैं स्टॉक के उद्घाटन मिला. सात कदम? दर्शक: अपने पैर की उंगलियों के स्पर्श. डेविड मालन: टच पैर की उंगलियों. ठीक है, तो अब हम जाने - सही सब, मैं कुछ स्वतंत्रता यहाँ ले जा रहा हूँ. धन्यवाद. आठ चरण? जुर्राब पर रखो. ठीक है, तो अब मुझे लगता है कि हम करीब हो ले की तरह पर्याप्त इस घर में एक. ठीक है, तो यह ऊपर जाता है. मैं इसका क्या मतलब है के साथ कुछ स्वतंत्रता ले, वास्तव में. जुर्राब पर डाल दिया. सही, अब नौ कदम? दर्शक: पैर नीचे रखो. डेविड मालन: धन्यवाद. नौ चरण, पैर डाल नीचे, और अब, हम दोहरा सकते हैं. तो शायद, अब हम 10 कदम में जाने के लिए और कर सकते हैं का कहना है की पहचान जुर्राब छोड़ दिया है, लेकिन है कि शायद पहले से ही किया है. तो फिर, मैं इन चरणों का दोहराने की तरह कर सकते हैं. लेकिन इस तरह के सवाल भी जन्म देती है. इससे पहले, पिछली बार जब हम कुछ दोहराने के, हम चाहते थे यह iteratively फिर, और फिर से किया था, के लिए एक प्रत्येक लूप तो बात करो. यह मतलब होगा एक पाश का उपयोग करने के क्रम में दोनों को संभाल बाएँ और दाएँ जुर्राब? क्योंकि ऐसा लगता है जैसे इन आपरेशनों बहुत सुंदर हैं तथ्य यह है कि एक यहाँ शुरू होता है और एक के लिए अलावा समान यहाँ शुरू होता है? हम पाश क्या है, या हम सिर्फ लेखन चरणों का रख 10 और 11 और 12? दर्शक: लूप. डेविड मालन: ठीक है, तो पाश. मैं वास्तव में कहा है बस जा रहा रखने हो सकता है. तो यह क्यों मामला है? खैर, यह वास्तव में हमारे गैर स्पष्ट 1 जो डिजाइन फैसले, और वास्तव में, एक मैट्रिक्स के साथ हम मूल्यांकन शुरू करने के लिए, खुद के लिए और आप के लिए, एक कार्यक्रम की गुणवत्ता है बस कैसे अच्छी तरह से डिजाइन किया है. क्या आप काम के कम से कम राशि के लिए आवश्यक किया सबसे जल्दी पाने के लिए काम किया है, के मामले में या तो या कंप्यूटर का समय चल रहा है के संदर्भ में समय है? कितने आपरेशनों निष्पादित करने के लिए लेता है? तो यकीनन, यह एक पाश क्योंकि के लिए एक अवसर है जैसे ही मैं कॉपी करने और चिपकाने, यूसुफ के रूप में प्रभावी रूप से शुरू एक पल में क्या कर रही शुरू होता है, आप अपने बर्बाद कर की तरह कर रहे हैं समय है, और आप दोगुना अर्थपूर्ण हो जा रहा है. लेकिन एक ही समय में, ये वास्तव में सिर्फ दो विशेष मामलों में, बाएँ और दाएँ. और इससे पहले, जबकि मैं मोजे में 10 या 20 या अधिक हो सकता है एक ढेर है, यह निश्चित रूप से समझ में आता है करने के लिए 50 लाइनें नहीं है इस जुर्राब की जाँच करें, तो अगले एक कोड कह, फिर अगले एक. यहाँ, यह एक छोटे से कम स्पष्ट है, और मैं प्रस्ताव होगा कि हम या तो रास्ता जा सकता है. हम या तो है कि पाश हो सकता है, हालांकि यह केवल loops दो बार, या हम बस कॉपी और पेस्ट सिर्फ एक छोटा सा सकता है यहाँ क्रम में नौकरी पाने के लिए. लेकिन इस कार्यक्रम छोटी गाड़ी है, इतनी बात करने के लिए. यह कुछ गलतियों, त्रुटियों, या कोने मामलों के लिए, तो हो सकता है बात करते हैं, कि हम वास्तव में सोचा भी नहीं था. कुछ भी गलत नहीं इस समय चला गया है, लेकिन क्या गलत हो गया हो सकता है जबकि इस कार्यक्रम को क्रियान्वित करने? दर्शक: आप किसी भी मोज़े नहीं है. डेविड मालन: तो कोई मोजे वहाँ जो भी हो सकता है. तो चलो उस कोने मामले पर विचार करें. तो अगर हम वापस स्क्रॉल करने के लिए एक कदम सकता है, तो कदम एक था झुकना तो, कि बाहर की जाँच है. दो कदम अपने जुर्राब ले, लेकिन तो मिलान जुर्राब मिल, सही की पहचान. हम तरह की मान्यताओं की एक पूरी गुच्छा बनाया, और यह है, स्पष्ट रूप से, इस कार्यक्रम क्यों कभी कभी दुर्घटना. यदि आप, प्रोग्रामर, कुछ मान्यताओं की तरह बना दिया है निश्चित रूप से वहाँ मोजे या निश्चित रूप से वहाँ जा रहा है होने जा रहा है स्मृति कंप्यूटर में छोड़ दिया हो, निश्चित रूप से वहाँ जा रहा है डिस्क अंतरिक्ष हार्ड ड्राइव पर छोड़ दिया हो सकता है - वैसे, अगर आप इन मान्यताओं, और नहीं है कि, वास्तव में, वास्तविकता, जो कभी कभी क्या कंप्यूटर जानता है करने के लिए जा रहा है? और कभी कभी, जब आप कताई समुद्र तट गेंद या मिल जमे हुए विंडोज या जैसे, कि ठीक है क्योंकि कुछ प्रोग्रामर उन तथाकथित कोने मामलों सोचा भी नहीं था. और क्या इस कार्यक्रम में गलत हो गया हो सकता है? हाँ? दर्शक: आप एक सही पैर और एक बाएं पैर नहीं है. डेविड मालन: ठीक है, दोनों एक सही पैर और एक नहीं हो सकता बाएं पैर, और इसलिए इस कार्यक्रम सार्वभौमिक नहीं हो सकता लागू. दूसरों? दर्शक: आप उठाया है एक अनाथ जुर्राब. डेविड मालन: मैं उठाया है हो सकता है तो एक अनाथ जुर्राब, एक गैर मिलान जुर्राब कि अभी कोई भाई बहन है क्योंकि मैं इसे खो दिया है, इसे फाड़ा है, यह अभी भी धोने में है, या पसंद है. ताकि, भी, वास्तव में संभाला नहीं किया गया है. हाँ? दर्शक: आप पहले से ही मोज़े हैं पर हो सकता है. डेविड मालन: मैं पहले से ही मोज़े हैं पर हो सकता है. मैं वास्तव में जाँच नहीं था. यदि आप मोजे पर नहीं है, तो आगे न बढ़ें एक और दो लाइन. और कहा कि हो सकता है. तुम अपने मोजे के साथ सो जाते हैं पर और की तरह तो, वह भी एक बहुत ही उचित कोने मामले. और शायद एक अन्य? दर्शक: जुर्राब अंदर बाहर है. डेविड मालन: तो जुर्राब अंदर बाहर है, इसलिए हम कोई त्रुटि नहीं किया संक्षेप में जाँच. अगर हम दुनिया के राज्य के रूप में हम उम्मीद जाँच नहीं था. अगर हम वास्तव में हम क्या देख रहे हो पाया जाँच नहीं था. और फिर भी इस एक हास्यास्पद उदाहरण की तरह है मोजे शामिल है, दिन के अंत में, यह ठीक है मानसिकता की तरह आप करने के लिए है, जबकि प्रोग्राम लिखने की जरूरत है, भी PHP में जावास्क्रिप्ट में सी, के रूप में अच्छी तरह से खरोंच में, क्योंकि अन्यथा, अपने कार्यक्रमों का प्रदर्शन कि कताई समुद्र तट गेंद के बराबर या सिर्फ उपज गलत परिणाम. हमारे मुंशी यूसुफ को तो यहाँ कई धन्यवाद. [वाहवाही] डेविड मालन: ठीक है, तो क्या है, में तथ्य यह है, एक कंप्यूटर प्रोग्राम है? ठीक है, चलो एक पर एक नज़र रखना एक प्रतिनिधि यहाँ. तो यह एक कार्यक्रम एक सी. सी बुलाया भाषा में लिखा है काफी इन दिनों पुरानी है, लेकिन कई नए भाषाओं का निर्माण कर रहे हैं यह की चोटी पर. दरअसल, PHP, एक वेब केंद्रित भाषाओं हम करेंगे की अवधि के अंत की ओर का उपयोग करने के लिए, खुद को क्या कहा जाता है दुभाषिया, एक प्रोग्राम है कि सी में लिखा है, लेकिन उस पर अधिक अब से कई हफ्तों में. लेकिन इस कार्यक्रम है, और यह है कि क्या यह एक लिखने का मतलब है हालांकि एक बहुत ही सरल एक कार्यक्रम. हम काफी कुछ गुप्त वाक्यविन्यास यहाँ है, लेकिन आप यह कर सकते हैं शायद लगता है, यहां तक ​​कि अगर आप पहले कभी नहीं क्रमादेशित है, क्या इस कार्यक्रम करता है. दरअसल, मैं नहीं जानता कि क्या printf है नहीं है, लेकिन निश्चित रूप से प्रिंट कुछ मुद्रण बाहर के विचार conjures. और तो हाँ, इस कार्यक्रम के अंत में बाहर प्रिंट जा रहा है शब्द "नमस्ते, दुनिया." अब, चाहे आप एक मैक या पीसी या एक Linux कंप्यूटर, बाधाओं कर रहे हैं, कम से कम अगर आप कुछ आज़ादी से डाउनलोड सॉफ्टवेयर उपलब्ध है, तुम पर किया गया सकता प्रोग्राम लिखने कुछ समय के लिए अपने अपने अब लैपटॉप. मैक ओएस पर, उदाहरण के लिए, इस कार्यक्रम बुलाया है टर्मिनल है कि एक मैक है, कि अपने में आम तौर पर है के साथ आता है उपयोगिताएँ फ़ोल्डर है, और यह आम तौर पर एक काले और खोलता सफेद या एक सफेद और काले खिड़की है जिस पर आप एक है जिस पर आप आदेश टाइप कर सकते हैं संकेत. तो यह वास्तव में क्या कंप्यूटर की याद ताजा करती है ग्राफिकल यूजर से पहले इस्तेमाल किया जा इंटरफेस, GUIs, साथ आया था. अब, विंडोज में, आप के रूप में एक समान तंत्र कमांड प्रॉम्प्ट की. लेकिन मैं यहाँ क्या करने जा रहा हूँ क्या खुला है, हम कहते हैं कि, TextEdit इतना ही कार्यक्रम फिर, हम के लिए उपयोग कर रहे थे pseudocode एक पल पहले, और मैं आगे जाने के लिए जा रहा हूँ और मेरा पहला प्रोग्राम लिखने. Stdio.h, जो कि इसका मतलब, मुख्य int शामिल शून्य, जो कि इसका मतलब है, और फिर यहाँ बीच में, printf ("हैलो, दुनिया."). और तब बंद बोली, कोष्ठक, सेमीकोलन को बंद करें. अब मैं आगे और हिट कमान - एस बस जाने के लिए जा रहा हूँ. मैं जा रहा हूँ तो आगे जाना है और इस को बचाने के रूप में hello.c में सम्मेलन सी प्रोग्रामिंग की दुनिया नाम फ़ाइल डॉट ग है. मैं सिर्फ जॉन हार्वर्ड होम निर्देशिका में डाल दिया जा रहा हूँ, यहाँ, सहेजें क्लिक करें, और अब मैं इस के लिए जा रहा हूँ टर्मिनल विंडो, जो फिर से इस काले और सफेद शीघ्र है मैं आज्ञा जहां पर अमल कर सकते हैं. मैं उनके नाम लिखकर कार्यक्रम चलाने के लिए, नहीं कर सकते सामान्य अर्थों में डबल क्लिक प्रतीक. लेकिन बात सी के बारे में है कि सी 1 की तरह एक भाषा इस रूप में आता है, कुछ स्रोत कोड कहा जाता है. कुछ है कि अंग्रेजी की तरह एक छोटे से लग रहा है, लेकिन निश्चित रूप से यूसुफ pseudocode एक से अंग्रेजी की तरह कम पहले क्षण. यह एक छोटे से अधिक रहस्यमय है. यह कुछ पैटर्न या नियमों का पालन करने के लिए लगता है. तथ्य यह है कि मैं घुंघराले ब्रेसिज़, अर्धविराम, कोट्स, कोण ब्रेसिज़, एक कंप्यूटर की तरह लगता है इस के साथ आया भाषा की तरह. लेकिन अगर मैं, अब इस टर्मिनल विंडो जाओ, मैं एक चला सकते हैं आदेश है कि है कि स्रोत कोड बदलने जा रहा है कुछ वस्तु कोड कहा जाता है. वह अंग्रेजी की तरह वाक्यविन्यास शून्य बदलने जा रहा है और लोगों को शून्य के एक ही प्रकार के और हम हैं बुधवार के बारे में बात की. अब, मैं एक आदेश बजना बुलाया चलाने के लिए जा रहा हूँ. सप्ताह में इस पर आने के लिए है, लेकिन यह एक कार्यक्रम के साथ है जो मैं एक पूरी गुच्छा में hello.c परिवर्तित कर सकते हैं शून्य और लोगों की. अब, मैं इस कमांड को चलाने की है. मैं बजना चलाने की है, और फिर मैं ने कहा कि अपने आप को इस फाइल पर चलाने hello.c, जो मैं एक पल पहले बनाया है और कहा जाता है कुछ भी नहीं होने लगता है. लेकिन वास्तव में, अगर मैं अपने घर निर्देशिका आसपास poked, मैं देखना होगा कि इस stupidly नाम कार्यक्रम a.out अब मौजूद है. यह सिर्फ एक कार्यक्रम के लिए डिफ़ॉल्ट नाम है, जब में लेखन सी. हम अंततः इस ओवरराइड, कर सकते हैं, लेकिन a.out है कार्यक्रम का नाम मैं सिर्फ शून्य और लोगों में बदल दिया. और अब जब कि यह शून्य और लोगों, मेरे मैक, इस मामले में, या अपने विंडोज पीसी, उन बिट्स, उन लोगों को समझ सकता हूँ शून्य और लोगों. और इसलिए जब मैं हिट दर्ज करें, मैं "हैलो दुनिया," को देख पाएंगे लेकिन यह एक बिट छोटी गाड़ी है. मैं काफी नहीं कहा था "हैलो, दुनिया: हवा: - jharvard." एयर अपने कंप्यूटर के नाम. Jharvard खाते का नाम है, तो क्या मैं स्पष्ट रूप से किया कार्यक्रम से न आना? रेखा को तोड़ने के कुछ प्रकार की. मैं दर्ज के बराबर या गाड़ी वापस नहीं मारा, और यह है, फिर से, तथ्य यह है कि कंप्यूटर कर सकते हैं आदेश केवल आप क्या बताना है उन्हें करने के लिए. और तथ्य यह है कि मैं कंप्यूटर नहीं बताया था चाल अगली पंक्ति में कर्सर - ठीक है, यह निश्चित रूप से जा रहा है यह बस नहीं दुराशापूर्वक मेरे लिए. तो अगर मैं अपने कार्यक्रम के लिए वापस जाओ, और मैं कहता हूँ \ n - तो, जैसा कि हम जल्द ही देखेंगे \ n का रास्ता है नई लाइन वर्ण, चीजों की तरह अजीब बातें का प्रतिनिधित्व कि अन्यथा के परिणाम होगा Enter कुंजी मार. लेकिन अब के लिए, सिर्फ इतना पता है कि Enter कुंजी मार बस हमारे कोड अजीब देखो तो, दुनिया का फैसला किया है, आप जानते हैं कि क्या, सुंदर बातें, यह एक लाइन पर रखने रखने के लिए है, चलो बस का कहना है \ n एक नई लाइन का प्रतिनिधित्व करता है. मुझे मेरी फ़ाइल resave, टर्मिनल विंडो के लिए वापस जाओ, और दर्ज करें, फिर से चलाने के a.out. अभी भी छोटी गाड़ी है, लेकिन क्यों? दर्शक: [अश्राव्य] डेविड मालन: हाँ, तो मैं इसे recompile की जरूरत है. ऐसा करने के लिए एक कार्यक्रम संकलन बस का अर्थ है यह स्रोत से परिवर्तित वस्तु कोड, शून्य और लोगों के लिए स्रोत कोड के लिए कोड. अब, मात्र तथ्य यह है कि मैं इस TextEdit में सहेजें मारा नहीं है क्योंकि मैं पहली बार करने की जरूरत है उन शून्य और लोगों पर असर बजना बताओ हे, मैं कोड की उन लाइनों को बदल दिया है, स्रोत कोड. आप a.out को पुनर्जीवित करने की जरूरत है. कुछ भी नहीं हुआ है प्रकट होता है, लेकिन एक कंप्यूटर में, एक कमांड लाइन में है, तो बात करने के लिए जब कुछ नहीं होता,, इसका मतलब है कि आम तौर पर सब कुछ ठीक है. जब कुछ होता है, इसका मतलब है आप आम तौर पर गड़बड़,. तो चलो अब a.out के लिए जाना है, और वास्तव में अब मैं "हैलो, दुनिया ". और अब, इन शून्य और लोगों के बारे में क्या? कहाँ है, वास्तव में, उन लोगों के हैं? खैर, मैं वास्तव में बहुत बस के आसपास प्रहार की तरह नहीं कर सकते प्रभावी ढंग से. मुझे TextEdit खोलने के. यहाँ a.out है. मुझे आगे जाना है और इस खोलने, और यह जाहिरा तौर पर है क्या मेरी कार्यक्रम की तरह लग रहा है. तो मैं खोला है, hello.c नहीं है, लेकिन a.out. लेकिन यह वास्तव में मेरे कार्यक्रम वास्तव में क्या है नहीं है. जाहिर है, इस वर्णमाला वर्ण के कुछ प्रकार है. मैं कोई शून्य और लोगों को देखते हैं, लेकिन यह है क्योंकि a.out एक कार्यक्रम है. शून्य और लोगों - TextEdit लेकिन, जैसा कि नाम से पता चलता है, यह है सिर्फ विंडोज पर, नोटपैड की तरह सिर्फ एक पाठ संपादक है, तो यह के रूप में उन शून्य और लोगों की सभी भ्रमित हालांकि वे थे, क्या हुआ? ASCII वर्ण. बुधवार को तो याद है, हम सिर्फ इस के साथ आया के पत्र संख्या, या बिट्स की मनमानी मानचित्रण, वर्णमाला और विराम चिह्न प्रतीकों और इस तरह. तो TextEdit, misinterpreting है कि यह एक पाठ संपादक शून्य और लोगों कि होना चाहिए रहे हैं उन पैटर्न तरह मुद्रण शब्दों में, "हैलो दुनिया." यह उन्हें प्रदर्शित है ASCII के रूप में, और यही कारण है कि यह एक छोटी सी गड़बड़ लग रहा है. अब, यहाँ में शुद्धता के कुछ संकेत हैं. सूचना है अगर मैं उजागर, वहाँ वास्तव में एक संकेत है "हैलो, दुनिया इतनी, कि कार्यक्रम में कहीं है वाक्य मैंने लिखा था. लेकिन आगे जाना है और अब एक अलग कार्यक्रम के साथ देखते हैं. यह एक हम है कि अक्सर इस्तेमाल करेंगे नहीं है, लेकिन यह भी साथ आता है एक मैक और CS50 उपकरण के अंदर हो जाएगा. मुझे आगे जाना है और एक कार्यक्रम XXD बुलाया के साथ खुला. दिन में वापस, ज्यादातर कार्यक्रमों में काफी cryptically नाम थे, और इसलिए रुझान जारी रहता है. लेकिन ख मतलब है कि इस कार्यक्रम द्विआधारी के रूप में बाहर थूक. यह नहीं चलेगा. यह मुझे शून्य और लोगों के रूप में प्रदर्शित करने के लिए, और इस सी है कार्यक्रम हम सिर्फ लिखा था. अब, मैं यहाँ एक मानव के रूप में, मैं ईमानदारी से कोई विचार नहीं है क्या शून्य और लोगों की इन विभिन्न पैटर्न का प्रतिनिधित्व करते हैं. दिन में वापस, मैं, मेरे पंच कार्ड या तरह के साथ होता है, वास्तव में क्या इन विभिन्न पैटर्न को देखने के लिए है 01111000, वास्तव में प्रतिनिधित्व करते हैं. या बुरा, मैं छिद्रण या सृजन करने की आवश्यकता होगी शून्य और लोगों की इन नमूनों की. लेकिन अब के लिए, विश्वास है कि एक सीपीयू, इंटेल के अंदर, तो ले हमारे कंप्यूटर के सभी के अंदर इन दिनों की बात है, जानता है, कैसे इन शून्य और लोगों की व्याख्या करने के लिए. और कुछ शून्य और लोगों प्रिंट मतलब है. कुछ शून्य है और लोगों का मतलब है कि एक ध्वनि खेलने. कुछ zeroes और लोगों का मतलब है एक कुंजीपटल से उपयोगकर्ता इनपुट ले. वहाँ अलग पैटर्न के सभी प्रकार है, लेकिन हम शुक्र, मनुष्य के रूप में, केवल आम तौर पर प्रोग्रामिंग के बारे में चिंता करने की ज़रूरत है यह काफी उच्च स्तर. और अन्य सीएस कक्षाओं में आप नीचे गहरा गड्ढा कर सकते हैं और देखो उन शून्य और लोगों की तरह चीजों पर अभी तक, या अन्य अभी भी बातें. तो अब हम इस परिवर्तित. चलो बहुत जल्दी सी से दूर स्थानांतरित करने के लिए और कुछ करने के लिए कदम थोड़ा और अधिक आरामदायक, एक छोटे से अधिक रोमांचक है कि हम वापस हमारे एनिमेशन और लगता है और इस तरह से प्राप्त कर सकते हैं स्पष्ट रूप से हमें इस में बच गए काफी आदिम इंटरफ़ेस. तो सी में यह एक ही इस कार्यक्रम में अब प्रतिनिधित्व कर सकते हैं प्रोग्रामिंग भाषा कहा जाता है खरोंच के रूप में इस प्रकार है. यह इस हैलो दुनिया में लिखा कार्यक्रम के बराबर है इस पहेली टुकड़ा शैली स्क्रैच बुलाया भाषा. तो मुझे आगे जाना है और यह बहुत ही कार्यक्रम खुला. यह फिर से स्क्रैच कहा जाता है. हम यह आसानी से उपलब्ध है, और यह एक ही बात है पर आज शुरू कर दिया. यहाँ तो यह खरोंच है, और यह एक कुछ में टूट गया है अलग टुकड़ों. बहुत ऊपर सही में, हम तथाकथित मंच है, और वास्तव में, कि जहां कुकीज़ सिर्फ एक बिट पहले प्रदर्शन किया. और उस मंच पर बातें sprites, वर्ण, या कहा जाता है वस्तुओं, या संस्थाओं. यह वास्तव में आप कैसे लगता है कि उनमें से कोई फर्क नहीं करता है, लेकिन वे प्रोग्राम, चल बातें कर रहे हैं, और इस मामले में यह, प्रोग्राम है कि हमारे छात्र लिखा जिंजरब्रेड की एक जोड़ी है कुकीज, परिपत्र कुकीज़ के एक जोड़े की एक पूरी गुच्छा दिल, चश्मा की एक पूरी गुच्छा. इस वजह से, वह या वह उन में से प्रत्येक कार्यक्रम में सक्षम है अलग व्यक्ति वर्ण. अब, यह क्या इन अक्षरों कार्यक्रम क्या मतलब है? खैर, मुझे आगे जाना है और इस बाएं हाथ कुकी पर क्लिक करें और ऊपर छोड़ दिया करने के लिए यहाँ स्क्रॉल. अब अपनी स्क्रीन के ऊपर छोड़ दिया है तथाकथित लिपियों क्षेत्र. यह एक खाली स्लेट की तरह है, शुरू में, पर जो मैं कर सकता हूँ खींचें और ड्रॉप पहेली टुकड़े है कि, सच में, वास्तव में वे क्या कहते हैं. बहुत पहेली टुकड़े के इस ढेर के शीर्ष पर शब्द है जब हरा झंडा क्लिक किया है, और अगर आप पहले ध्यान नहीं दिया, जिस तरह से मुझे लगता है कि कुकी गाना शुरू क्लिक किया गया था, सचमुच, एक हरा झंडा. तो ऊपर छोड़ दिया पर कि पहेली टुकड़ा वहाँ मतलब है जब मानव हरा झंडा क्लिक कर दीं निम्नलिखित बातें. अब, वे कुकी क्या करना आगे बढ़ना था? मैं वास्तव में यह कैसे की व्याख्या करने के लिए अभी तक नहीं पता नहीं है, लेकिन कुकी जाहिरा तौर पर शून्य करने के लिए नाली सेट करते हैं, तो यह इंतजार कर रहे थे यह तीन सेकंड है, तो यह एक करने के लिए अपने समूह फिर बदल गया है, एक दूसरे इंतजार कर रहे थे, तो इसे बदल अपनी नाली एक करने के लिए वापस. और तो यह वास्तव में एक बग के एक बिट की तरह लग रहा है, नहीं होना चाहिए अपने नाली फिर से और फिर से बदलने के लिए जब तक यह कहीं बदल किया जा रहा है, लेकिन कदम की इस श्रृंखला है क्या इस विशेष कुकी के व्यवहार हुक्म. तो चलो वास्तव में वापस स्क्रॉल और कुछ में नहीं लग रहे अभी तक काफी इतनी जटिल है. मुझे आगे जाना है और फ़ाइल, न्यू जाना, और एक साफ स्लेट मिलता है. तो अब, मैं वास्तव में एक खाली स्क्रिप्ट क्षेत्र, एक खाली मंच है, हमारे डिफ़ॉल्ट प्रेत खरोंच के साथ, और ऊपर छोड़ दिया पर अपनी स्क्रीन पर मैं उनके सभी का फूस है उपलब्ध पहेली टुकड़े. और हम इन बातों के लगभग है कि कई के माध्यम से नहीं जाना होगा क्योंकि आज, फिर से, सबसे सुगम कर रहे हैं, लेकिन हम करेंगे उन्हें वर्गीकृत करने और बाहर समानताएं बिंदु की कोशिश इन भविष्य भाषाओं के साथ जो हम गोता जाएगा. और ऊपर छोड़ दिया पर यहाँ पहली बार जब हरा झंडा क्लिक किया है, तो मुझे यहाँ पर इस खींचें, बाहर एक बिट ज़ूम. और अगर मैं हरा झंडा क्लिक करें, वास्तव में कुछ भी नहीं होता है, क्योंकि मैं किसी भी तर्क नहीं संलग्न है, किसी भी बयान के लिए बात करने के लिए कि हरा झंडा, तो मुझे ऊपर जाना यहाँ से अधिक श्रेणियों. मैं नियंत्रण वर्ग में वर्तमान में हूँ. मैं बजाय लगता श्रेणी में नीचे जाने के लिए जा रहा हूँ, और वहाँ चीजों की एक पूरी गुच्छा है कि यहाँ कहने, लगता है, रंग, स्विच कॉस्टयूम बदलें. तो आप वेशभूषा के साथ मूर्खतापूर्ण बातें करते हैं और कर सकते हैं लगता है और तरह. मुझे आगे जाना है और सिर्फ कहने के लिए, और अब सूचना के रूप में मैं खींचें और इस पहेली टुकड़ा छोड़ देता है, यह करने के लिए कुंडी चाहते हो रहा है इसी आकार में. तो जब मैं आगे बढ़ो और अपने माउस के चलो चलते हैं, वे लॉक अब एक साथ, और अगर मैं यहाँ से जाना और हरा झंडा क्लिक करें, बिल्ली वास्तव में नमस्ते कहना है क्योंकि वह है जो अंदर है इस सफेद बॉक्स के. हम जल्द ही देखने के लिए कि इस सफेद बॉक्स है क्या कहा जाता है तर्क है, या एक पैरामीटर. यह के व्यवहार को बदलने का एक तरीका है, इस मामले में, एक टुकड़ा की पहेली, लेकिन अगर मैं कहना है कि मैं वास्तव में क्या कहा पहले, हैलो, दुनिया है, अब मैं यहाँ पर वापस जा सकते हैं, खेलने के लिए क्लिक करें, और "हैलो, दुनिया है," क्या कहा. तो हम सचमुच अब प्रोग्रामिंग कर रहे हैं. यह एक कार्यक्रम के सभी कि बाध्यकारी नहीं है, लेकिन कम से कम यह एक छोटे से अधिक सम्मोहक कुछ है कि लग रहा है, पहली नज़र में, इस तरह. और हम बहुत जल्दी सभी को और अधिक अर्थपूर्ण प्राप्त कर सकते हैं है क्योंकि खरोंच में, जैसे अन्य भाषाओं में, वहाँ सब है बयान की तरह कहते हैं, या नहीं सिर्फ मुद्रण कुछ है, लेकिन आप इंतज़ार कर बातें करते हैं, के रूप में हम बस के साथ देखा जा सकता है कुकी, सेकंड के कुछ नंबर. आप स्क्रैच के वातावरण में ध्वनि खेल सकते हैं बस आप एक सामान्य कंप्यूटर प्रोग्राम ध्वनि में खेलने की तरह कर सकते हैं. आप देख सकते हैं क्या बूलियन भाव कहा जाता है. तो अब, चलो हमारे टूलकिट कुछ शब्दावली जोड़ने शुरू कि वास्तव में उदाहरण है कि यूसुफ और मैं किया संबंधित यहाँ मोजे के साथ. तो बयान सिर्फ तथ्य के बयानों के हैं. यह मत करो. प्रेत के लिए एक निर्देश है, मुझे या मानव, कुछ करना है. एक बूलीयन अभिव्यक्ति कुछ है कि एक मूल्य है, एक है तथाकथित सच मान, कि या तो एक शून्य या एक झूठी या सच पर या बंद है, या नहीं, हाँ. कोई बात नहीं कैसे आप इस के बारे में सोच नहीं वास्तव में है, लेकिन यह एक बाइनरी राज्य. दो के रूप में नैट बुधवार वीडियो में चर्चा की, अलग बातें हैं. तो खरोंच में, बूलियन अभिव्यक्ति के लिए देखने के लिए होता है यहाँ इन नीले वस्तुओं की तरह है, और इस मामले में, सवाल निशान का मतलब है कि आप एक सवाल पूछ रहे हैं. बिल्ली, या प्रेत, माउस सूचक को छू रहे हैं? तो यह सिर्फ एक स्क्रैच ब्लॉक कि जा रहा है की एक उदाहरण है हाँ या नहीं करने के लिए हमें जांच करने की अनुमति है, स्पर्श माउस स्क्रीन पर प्रेत? और यह उपयोगी हो सकता है अगर आप वास्तव में काम करना चाहते हैं कर सकते हैं अपने माउस के साथ. बूलियन अभिव्यक्ति के अलावा, हम बातें हैं जैसे माउस नीचे है, तो आप उस तरह का पता लगा सकते हैं के रूप में अच्छी तरह से सवाल. हम गणित अगर आप वास्तव में चाहते हैं, कर सकते हैं और वहाँ बस का शुद्ध की तुलना में वास्तव में और अधिक सम्मोहक इस के लिए उपयोग करता है के रूप में हम देखेंगे, गणित,. छद्म randomness और अपने कार्यक्रम बना लगता दिखाई देते हैं या कुछ मालूम होता है यादृच्छिक मूल्यों के आधार पर अलग ढंग से व्यवहार करते हैं, और फिर हम जैसे बूलियन भाव की तरह बातें है और. तो अगर आप वास्तव में दो मूल्यों की जांच चाहते हैं, हम में देखेंगे स्क्रैच कि हम वास्तव में अगर यह परीक्षण कर सकते हैं सच है और यह सच है. उदाहरण के लिए, मेरे मोज़े मामले में, मैं पर जा सकता था बहुत अंत प्रश्न पूछा अगर छोड़ दिया जुर्राब पर है और सही जुर्राब पर छोड़ दिया. आप पूरे दिन के लिए कर रहे हैं, ताकि एक होगा उस के लिए अवसर. तो चलो आगे जाना है और इनमें से एक साथ कुछ टुकड़े करने की कोशिश और उदाहरण के एक जोड़े में जाने यह एक से अधिक मजबूर. तो मुझे आगे यहाँ जाने के लिए और उदाहरण के कुछ खुले कि पाठ्यक्रम वेबसाइट पर हमेशा के रूप में अच्छी तरह से किया जाएगा, और खोलने के ऊपर hello2. तो यहाँ में hello2, हम एक प्रोग्राम है जो कुछ कर रहा है बातें, लेकिन यह के रूप में के रूप में हम हो सकता है प्रभावी ढंग से नहीं कर रहा है. यहाँ तो यह एक दूसरे के लिए "नमस्ते, दुनिया" कहते हैं और फिर इंतजार कर रहा है एक पल के लिए. और फिर इसे फिर से करता है, और फिर इसे फिर से करता है. तो अगर मैं हरा झंडा क्लिक करें, स्क्रैच "विश्व नमस्कार, कहते हैं. हैलो, दुनिया. हैलो, और दुनिया. "इस जाहिर है उम्मीदवार अब के लिए सुधार. क्या मामूली सुधार है, उम्मीद है, हम कर सकते हैं अब अगर स्क्रैच अवधारणा का समर्थन करता है? लूप के कुछ प्रकार की. पुनरावृत्ति के कुछ प्रकार, अब, अच्छा होगा, तो मुझे जाने वास्तव में कोशिश है कि. मुझे वास्तव में जाने के लिए और इस कदम. तो नोटिस ब्लॉक के रूप में आसानी से अलग रूप में आप को जोड़ सकते हैं कर सकते हैं उन्हें देते हैं. मुझे नियंत्रण के तहत किया जाना है, यहाँ नीचे स्क्रॉल, और वास्तव में, वहाँ इस पहेली टुकड़ा यहाँ है दोहराएँ, और हमेशा के लिए और हमेशा के लिए यदि. तो वहाँ पाशन constructs व्यक्त करने के तरीकों की एक संख्या है खरोंच में. एक मैं शायद यहाँ चाहते हमेशा के लिए केवल मैं इसलिए नहीं है इस तीन बार ऐसा करने के लिए करना चाहते हैं, लेकिन शायद दोहराएँ. तो मुझे यहाँ पर दोहराएँ, खींचें और ड्रॉप खींचें, और अब "नमस्ते, दुनिया" तीन अलग बार कह के बजाय, मुझे यहाँ इस पहेली टुकड़ा खींचें. और फिर भी यह करने के लिए फिट प्रतीत नहीं होता, कार्यक्रम स्मार्ट है यह एहसास को भरने के लिए बढ़ने के लिए पर्याप्त है, तो यह आकृतियों और बात है कि पूर्ण आकार नहीं. मुझे तीन पुनरावृत्ति को बदलने के लिए, और अब मुझे जाने दो आगे और वहाँ में एक दूसरा रूप में अच्छी तरह से इंतजार करने के लिए खींचें. यह करने के लिए के रूप में अच्छी तरह से तस्वीर जा रहा है, और अब मैं खींचें करने के लिए जा रहा हूँ मैं यहाँ और बस पर इन लोगों को उन्हें दूर फेंक क्योंकि अब जरूरत है उन्हें नहीं. मुझे बाहर ज़ूम और हरा झंडा अब क्लिक करें, और हम एक ही प्रोग्राम है, लेकिन जैसा कि मैं पहले से बेहतर की भविष्यवाणी क्योंकि आप कल्पना कर सकते हैं बुरा कैसे इस कार्यक्रम निश्चित रूप से aesthetically, अगर आप था कॉपी करने और चिपकाने, कॉपी करने और चिपकाने शुरू करने के लिए, या खींचने और एक ही झकना बातें फिर से और फिर गिर. अब, बस स्क्रीन पर सामान कह रही है, के लिए मुद्रण स्क्रीन, वास्तव में सभी, कि इतना रोमांचक नहीं चलो खोलने के एक 3 विचरण यहाँ. और अब, जैसा कि आप देखेंगे, यह जल्दी से कष्टप्रद मिल जाएगा - MEOW] डेविड मालन: - लेकिन यह भी प्यारा की तरह है. MEOW] डेविड मालन: ठीक है, तो बेहतर है, और हम निश्चित रूप से उपयोग कर सकते हैं कि इस एक looping में बेडौल का एक ही संक्रमण संरचना करते हैं, लेकिन इसे और अधिक दिलचस्प अभी भी बना. मुझे आगे जाना है और एक चौथे विचरण यहाँ खोलने के, मैं कहाँ चीजों को एक कदम आगे ले. तो इस के अनुसार, मूर्ख हालांकि यह पहले से कम है नज़र, इस कार्यक्रम के लिए क्या करने जा रहा है? यह म्याऊ के लिए एक बार जा रहा है. क्यों? खैर, एक है, जहाँ तक मुझे पता है, हमेशा दो से भी कम है. वहाँ randomness की कोई धारणा यहाँ है. मैं सचमुच कठिन कोडित है एक और दो, लेकिन यह एक है उदाहरण अब वास्तव में एक बूलियन अभिव्यक्ति का उपयोग. ज्यादा के रूप में यूसुफ ने अपने pseudocode में किया था की तरह, खरोज अगर आप पाते हैं मिलान मोज़े तो निम्नलिखित करते हैं, यहाँ हम एक अभिव्यक्ति अगर एक तो कम से कम दो - और वास्तव में हम भी खरोज का एक छोटा सा है, जहां बैंगनी सही करने के लिए थोड़ा दांतेदार बना हुआ है - तो आप ध्वनि म्याऊ खेलने जा रहे हैं. अब, इस मामले में, एक है कि हमेशा कम से कम दो, तो यह एक शर्त की बर्बादी की तरह है. लेकिन हम करने में सक्षम हो सकता है, जैसा कि हम देखेंगे, अन्य बातों के प्लग में इन प्लेसहोल्डर्स जहां एक और दो अब कर रहे हैं. तो चलो अब इनमें से कई के पांच उदाहरण के लिए अग्रिम hellos और इस कार्यक्रम के लिए क्या करने जा रहा है पर देखो. तो अब, एक अंग्रेजी वाक्य में, यह कैसे करता है कार्यक्रम व्यवहार करते हैं? दर्शक: आधा समय meows. डेविड मालन: समय के म्याऊ आधे, तो इस का एक तरीका है एक बहुत ही सरल विचार conveying. हालांकि हम कुछ असमानताओं का उपयोग यहाँ होता है कुछ संख्या में, यह सच है सिर्फ एक programmatical तरीका है, कह रही है अगर सिक्का सिर आता है की एक सटीक तरीका है, जाना है, आगे और म्याऊ. या इसके विपरीत, यदि सिक्का ऊपर आता पूंछ, म्याऊ नहीं है. और इस मामले में, हम कैसे है कि व्यक्त करते हैं? हम 1 से 10 के लिए एक यादृच्छिक संख्या उठा, और कहा कि अगर संख्या 6 से भी कम समय है, आगे बढ़ो और म्याऊ. और कैसे यह यहाँ में मिला? फिर ठीक है, बस खींचने और छोड़ने और नोटिस बातें जगह में latches. तो अब चलो देखते हैं अगर यह randomness काम करता है. मुझे आगे जाना है और हरा झंडा क्लिक करें. MEOW] डेविड मालन: ठीक है. MEOW] डेविड मालन: ठीक है. ठीक है, अच्छा है, इसलिए हम सिर, सिर, पूंछ को प्रभावी ढंग से मिला. पूंछ. MEOW] डेविड मालन: प्रमुखों. MEOW] डेविड मालन: बहुत बढ़िया. यह हमेशा अजीब जब सिर्फ सांख्यिकीय आप एक बुरा हो चलाने के लिए, और यह सब सिर है, और कार्यक्रम वास्तव में नहीं है काम के रूप में आशा है कि आप चाहते हैं. लेकिन इस बार, यह काम किया है, और हम है लगता है, अगर हमने किया इस बार की एक अनंत संख्या, 50% बाधाओं. अब फिर से, कि दिलचस्प नहीं, सब सिर्फ बिल्लियों बनाने म्याऊ, तो चलो देखते हैं कि हम यह एक थोड़ा आगे अग्रिम नहीं कर सकते यहाँ छह संस्करण में. तो अब, हम वास्तव में गुस्सा संस्करण है - [हर कुछ सेकंड meows] डेविड मालन: - और यह है कि क्या जाना जाता है, के रूप में एक सामान्य, अनंत लूप. तो इस मामले में अनंत लूप बुरा लगता है. यह निश्चित रूप से बुरा लग शुरू करने जा रहा है, और अभी तक अनंत loops हमेशा बुरा नहीं हैं. आप कंप्यूटर प्रोग्राम जहाँ तुम में संदर्भ के बारे में सोच सकते हैं वास्तव में एक अनंत लूप करना चाहते हैं? हाँ? दर्शक: जब आप एक शर्त की जाँच करना चाहते हैं. डेविड मालन: ठीक है, जब आप एक शर्त की जाँच रखना चाहते हैं? किस तरह? दर्शक: [अश्राव्य] डेविड मालन: ठीक है, अच्छा है, इसलिए यदि आप कुछ कार्यक्रम था कुछ, घर स्वचालन बात है, जहाँ आप लगातार चाहते हैं की तरह निगरानी के मामले में कुछ है. पर रोशनी कर रहे हैं? पर रोशनी कर रहे हैं, क्योंकि शायद तुम एक टाइमर है, और आप उन्हें दूर जाने के लिए करना चाहते हैं, तो आप कुछ करने की जरूरत हो सकती है फिर से और फिर. और वास्तव में, टाइमर के बोल रहा है, आप में से कोई भी जो है अपने कंप्यूटर या डिजिटल घड़ियों पर घड़ियों, कि एक अनंत लूप. यह समय अद्यतन जारी है क्योंकि यह लगातार जाँच और जाँच और जाँच समय बदल गया है, और यदि हां, ओह, मेरे भगवान. घड़ी अंत में बदल गया है. यह आपको लगता है कि मूल्य को प्रदर्शित करने की जरूरत है. तो, जबकि समय अनंत loops के अधिकांश एक गलती कर रहे हैं, या कम से कम एक गरीब डिजाइन निर्णय है, कभी कभी वे करते हैं उनके मूल्य है. खैर, hello7 यहाँ आगे अग्रिम करते हैं. तो अब एक छोटे से अधिक इंटरैक्टिव कार्यक्रम मिल जाएगा. मुझे यहाँ में ज़ूम, और फिर, यह है कि क्या अच्छा है खरोंच के बारे में. और हम इसे उपयोग करने के लिए स्पष्ट, खरोंच, बस आज में हो जाएगा अगले हफ्ते की समस्या सेट. लेकिन सोमवार को इस कार्यक्रम में हम यहाँ सी. में गोता करने के लिए यह है, हमेशा के लिए, निम्नलिखित. अगर माउस सूचक को छू - अब, कौन है यहाँ संदर्भ? वैसे नोटिस, और कहा कि जो नीचे तल पर चुना है यहाँ बिल्ली सही है, एक प्रेत, इसलिए इन लिपियों, कार्यक्रम है, उसे करने के लिए विशेष रूप से लागू होता है. तो अगर है कि बिल्ली माउस सूचक को छू रहा है, तो यह जा रहा है इस खेल नीचे और दो सेकंड प्रतीक्षा है, और तो विज्ञापन nauseum दोहराएँ. तो चलो आगे जाना है और खेलना मारा. कुछ भी नहीं होता है, लेकिन अगर मैं पालतू चाहते हैं बिल्ली अब, मैं तो बस कर सकते हैं. MEOW] डेविड मालन: आराध्य. MEOW] डेविड मालन: ठीक है, कम कष्टप्रद है, लेकिन यह भी सुस्त हो जाता है, तो हम पर स्थानांतरित करने के लिए और देखने के लिए अगर हम नहीं कर सकते हैं इंजेक्षन एक छोटे से अधिक तर्क. कि सात उदाहरण था. यहाँ आठ उदाहरण में, हम करने के लिए जा रहे हैं एक और हालत परिचय. तो सड़क में एक शाब्दिक कांटा की तरह है, जिसमें आप जा सकते हैं छोड़ दिया है या आप सही जा सकते हैं, एक प्रोग्रामिंग में एक शर्त भाषा स्क्रैच तरह के रूप में है, या हम सी देखेंगे, आप के लिए अनुमति दे सकते हैं और अगर एक का निर्माण के माध्यम से एक या दूसरी दिशा में जाना. तो काफी का शाब्दिक, अगर माउस सूचक को छू, कुछ ध्वनि खेलेंगे, और यह इस अन्य खेलने के लिए जा रहा है ध्वनि म्याऊ,. अब, अगर आप इन ध्वनियों के नाम से अनुमान कर सकते हैं, तो आप कर सकते हैं शायद लगता है कि क्या इस कार्यक्रम के लिए जादू का मतलब है का विचार है. इस बिल्ली खुशी meowing है. MEOW] डेविड मालन: खुशी नहीं करता है, लेकिन काफी छुआ जा पसंद है. [Roars] डेविड मालन: तो अब हम एक बिल्ली है जो तुम पर चिल्लाना होगा. सब ठीक है, ठीक है, बिल्लियों के साथ यहाँ एक आखिरी उदाहरण, और खुला संस्करण के यहाँ नौ करते हैं. तो अब, हम अगले है कि मैं कर सकता सबसे कष्टप्रद ध्वनि मिल रहा है तो, हम एक वालरस या समुद्र शेर यहाँ जो करने जा रहा है निम्नलिखित है. [सील छाल] डेविड मालन: ठीक है, तो इस पर जाना जब तक आप समझ कैसे इस कार्यक्रम के काम करता है. तो इस बार, इस जानवर दो लिपियों, और क्या है यहां दिलचस्प यह है कि इन लिपियों निष्पादित करने के लिए जा रहे हैं समानांतर में. इसलिए क्योंकि वे एक हरा झंडा दोनों के साथ शुरू क्लिक किया है, यह इस तरह की तरह है, और दोनों कार्यक्रमों इसे चलाने के शुरू एक बार भी अगर वे हमेशा के लिए पाशन कर रहे हैं. तो शीर्ष लिपि में, मैं कुछ तर्क है. कौन - कौन सी सुविधाएँ कि वहाँ करता है प्रदान करते हैं? [सील छाल] दर्शक: [अश्राव्य] डेविड मालन: यदि यह क्या है? [सील छाल] दर्शक: यदि शून्य के लिए मौन, यह खेल रखने के लिए जा रहा है ध्वनि. [सील छाल] डेविड मालन: ठीक है, अच्छा है. तो मौन अगर, जो भी है, इस नारंगी बात शून्य है, तब समुद्र शेर ध्वनि खेलते हैं और लगता है कि "ओह, हाय, "दो सेकंड के लिए. अब, मैं जानता हूँ कि मौन क्या है नहीं है, लेकिन शून्य conjures झूठी या बंद के विचार. तो अगर मौन गलत है, यदि ऐसा है तो नहीं मौन, ध्वनि खेलते रहना. ठीक है, ठीक है, कैसे हम इस बात को निष्क्रिय करते हैं? खैर, दूसरी स्क्रिप्ट पर वहाँ नीचे देखो करते हैं. 2 स्क्रिप्ट का कहना है कि शून्य के लिए मौन सेट. सूचना यह भी है नारंगी, तो क्या स्क्रैच यह रंग करता है अगर यह तरह ही छाया में ब्लॉक की तार्किक से संबंधित है. तो बस के रूप में मौन ऊपर शीर्ष नारंगी था, इसलिए मौन है यहाँ नीचे नारंगी ब्लॉक में उल्लेख किया है. लेकिन यह एक चर कार्य है, तो बस की तरह बीजगणित, आप x और y और z, प्रोग्रामिंग में आप चर, लेकिन वे आम तौर पर कर रहे हैं - चलो एक पल और कैसे आंकड़ा को थामने इस भौंकने बंद करो. मैं यह कैसे करते हो? [सील छाल] डेविड मालन: ठीक है. यह बंद कर दिया. ठीक है. तो बस बीजगणित के रूप में आप एक्स, वाई, जेड और चर है, लेकिन प्रोग्रामिंग, एक्स, वाई, जेड और तरह चर वाले आम तौर पर है पर सिकोड़ी क्योंकि वे सभी अभिव्यंजक नहीं कर रहे हैं. वे जो भी कोई अर्थ अर्थ है, तो अधिकांश में प्रोग्रामिंग भाषाओं, चर भरा हो सकता है विकसित नाम या शब्द या वाक्यांश, मौन पसंद है, कहने के लिए वे क्या करते हैं. तो यह 2 स्क्रिप्ट भी हमेशा के लिए सुन रहा था, और यह कहा अगर कुंजी, कुंजीपटल कुंजी अंतरिक्ष, दबाया, प्रश्न चिह्न. तो वहाँ है कि एक बूलियन अभिव्यक्ति के साथ एक शर्त है एक सवाल का जवाब या तो सच्चाई या झूठी जा रहा है, तो मैं इसे के अंदर यदि अंतरिक्ष कुंजी दबाया जाता है और यदि मौन शून्य है, एक के लिए मौन निर्धारित करते हैं, और शून्य के लिए मौन सेट. तो यह अन्य सड़क में कांटा, और नोटिस कैसे मैं अगर स्थितियों दो नीडिंत, जाँच का एक तरीका है स्पेस बार दबाया है क्योंकि अगर ऐसा है, तो मैं या तो यह जाना चाहते तरह या उस तरह. और मैं मौन के मूल्य कैसे पलटना है? मैं जाँच करने के लिए यह शून्य है? यदि हां, तो यह एक है, और यह शून्य इसलिए टॉगल करने के लिए अपने दो राज्यों. ठीक है, तो हम तो इन बुनियादी कुछ है constructs. हम बूलियन अभिव्यक्ति है, और एहसास है, भी, इन कर रहे हैं अपरिचित नहीं है कि सभी. वास्तव में, यहाँ हार्वर्ड पाठ्यक्रम CS50 के एक त्वरित स्क्रीनशॉट खरीदारी, उपकरण, और वहाँ से बाहर किसी भी वेबसाइट है कि जांचपेटी को और ड्रॉप चढ़ाव सच है, यह सब समय का उपयोग किया गया बूलियन अभिव्यक्ति. इस मामले में, यदि आप चेकबॉक्स अगला क्लिक करें से अधिक या 4.5 के बराबर, या एक ही करने के लिए अगले पाठ्यक्रम संकाय, आप एक बूलियन अभिव्यक्ति निर्दिष्ट कर रहे हैं. मुझे दिखाएँ पाठ्यक्रमों के लिए जो कि अभिव्यक्ति सच है. या सही करने के लिए, पाठ्यक्रम मैं कर रहा हूँ के साथ संघर्ष नहीं करता ले रही है, कि अगर जाँच की है, तो हाँ, आप जाँच करना चाहते हैं उस हालत है, और आप इसे नजरअंदाज करने के लिए करना चाहते हैं. तो बूलियन अभिव्यक्ति चारों ओर सब की तरह कर रहे हैं, लेकिन जब हम उन्हें परिस्थितियों में डाल दिया, चाहे स्थिति अगर, अगर Elses, या हम भी गहरा अनुकरण कर सकते हैं स्तर, और अगर और अगर - तो कि एक त्रिगुट राज्य की तरह है. आप इस तरह से या इस तरह से या इस तरह से जा सकते हैं. हम घोंसले के शिकार चीजें रखने के लिए अलग अलग दिशाओं में जा सकते हैं. स्क्रैच तो इन loops हमेशा की तरह है. यह 10 दोहराएँ तरह इन सुविधाओं के कुछ है, समय की परिमित संख्या. अब हम चर सेट करने की क्षमता है, तो इस मामले में मुझे लगता है, उदाहरण के लिए, एक चर बुलाया मोजे की घोषणा की है. मैं 0 से initialized है, और है कि अभी तक एक और दिशा मैं हम यूसुफ के साथ यहाँ ले सकता है, जिससे शायद सिर्फ मैं कितने मोजे पर है का ट्रैक रखने और को समाप्त कर कार्यक्रम जब कि चर मान 2 है. यह सामान्यीकरण की तरह का एक और तरीका हो सकता है कि होगा समस्या है और फिर कुछ और फिर से कर रही है. ठीक है, चलो आगे जाना है और अब एक जोड़ी नया बातें परिचय. इसलिए पूर्व programing अनुभव के साथ आप उन लोगों के हैं पता चला है कि भाषाओं की एक बहुत सरणियाँ, या वैक्टर या सूचियों, और वास्तव में, स्क्रैच कुछ इस तरह भी है. तो चलो देखते हैं अगर हम चीजों को अगले स्तर तक यहाँ नहीं ले जा सकते हैं. अगर मैं इन पहेली के टुकड़े के साथ करने की क्षमता है, अब है, एक चर के लिए एक शब्द या संख्या की तरह कुछ, जोड़ने के लिए, मैं कर सकते हैं चीजों को जमा पर. और यह वास्तव में खेल की तरह बातों के लिए सुंदर अनुरूप है, भूमिका खेल खेल है जहाँ आप चारों ओर चलने की तरह कर रहे हैं कुछ काल्पनिक दुनिया चीजों का संग्रह, चीजों को ऊपर उठा, अंक अर्जित, या पसंद है. आप सूची के कुछ प्रकार का ट्रैक रखने के लिए चाहते हैं, और हो सकता है वास्तव में, कि क्या यहाँ हमारे पूर्व छात्रों में से एक के साथ किया था कुछ Fruitcraft आरपीजी बुलाया. तो मुझे आगे जाना है और इस बात को यहाँ खोलने में, और Fruitcraft, हम शीर्ष पर इस दुनिया है. तो मुझे आगे जाना है और हरा झंडा क्लिक करें. ऊपर छोड़ दिया पर सूचना सूची के कुछ प्रकार है. है कि खरोंच में हम क्या एक सरणी फोन या के रूप में लागू किया है एक सूची है, और अब हम इस छोटी एनीमेशन है. तो बस के रूप में हम इस कुकी प्रेम कहानी के साथ पहले शुरू कर दिया है, और फिर हम बिल्लियों और समुद्र शेर के लिए उन्नत, अब हम कर सकते हैं बातें कि अधिक भी बातचीत कर रहे हैं. और इस छोटे नीले आदमी, मैं अपने चारों ओर स्थानांतरित करने के लिए शुरू कर सकते हैं थोड़ा यहाँ घर. तो यह लगता है कि वह एक से बाहर निकलें यहाँ नीचे मिल गया है तो, मैं का उपयोग कर रहा हूँ तीर चाबियाँ, ऊपर, नीचे, सही छोड़ दिया है. और अब मैं बाहर हूँ, तो चलो मैं यहाँ क्या मिल गया है. एक नारंगी की तरह लग रहा है, और वास्तव में, के रूप में जल्द ही के रूप में मैं स्पर्श , नारंगी, यह मेरी सूची में plopped हो जाता है. अगर मैं जाना चेरी के लिए यहाँ, अब मैं कुछ है और मेरी सूची में. और यह सब अच्छा और प्यारा है, लेकिन कैसे के बारे में लगता है, अब, यह लागू किया है. ठीक है, हम एक सूची की इस धारणा है, और कहा कि जाहिरा तौर पर एक पहेली टुकड़ा है कि आप कहते हैं कि तुम क्या चाहते हैं इसे जोड़ने के लिए, जोड़ें नारंगी, चेरी जोड़ें. अब, इस छोटे नीले आदमी क्या कर रहा है? खैर, वह एक प्रेत है. और शायद, नारंगी और चेरी - वे खुद को अलग sprites थे. और बूलियन अभिव्यक्ति में शर्तों का उपयोग छात्र शायद अगर नीले आदमी है व्यक्त करने के लिए के लिए सक्षम को छू चेरी तो अपने शब्द चेरी जोड़ने सूची, और फिर भी चेरी प्रेत छिपाने. तो हुड के नीचे, वहाँ शायद अभी भी एक चेरी वहाँ प्रेत. हम सिर्फ यह बता दिया है को प्रभावी ढंग से अदृश्य हो जाते हैं. अब, अगर मैं यहाँ पर चलते रहो, हम भी इस कर सकते हैं समीपस्थ बात है, जहां मैं जाना और हस्ताक्षर पढ़ सकते हैं. तो अगर नीले आदमी के हस्ताक्षर को छू, हम यह कहना ब्लॉक कर सकते हैं बस की तरह बिल्ली शब्दों में हम से बात की, हैलो, पहले समझे, " कुछ फल? यह फल जगह पर ले आओ. "ठीक है, तो अब, जाहिरा तौर पर, मैं अपने निर्देश दिया है. मैं यहाँ पर फल जगह पर जा सकते हैं, अपने आप को लाइन अप दरवाजे के साथ. अब, मैं यहाँ हूँ. मैं काउंटर पर आदमी के लिए जा सकते हैं. वह यह पता लगाता है कि मैं उसे करने के लिए बंद कर रहा हूँ, तो यह होना नहीं है काफी हूबहू छू, और मैं इस खेल को जीत लिया है. तो वहाँ हम Fruitcraft आरपीजी है. तो हम भी इस से अधिक उन्नत बातें कर सकते हैं. हम लगता है जोड़ सकते हैं. हम छद्म randomness जोड़ सकते हैं. हम जटिलता जोड़ सकते हैं. मुझे आगे जाना है, और बजाय खुद कर, मुझे आप एक और अधिक परिष्कृत प्रस्तुतियाँ दिखाने हम एक निश्चित ब्लेक नाम किसी से पिछले साल मिल गया. हम एक स्वयंसेवक कर सकते हैं जो सहज है पर प्रदर्शित होने कैमरा और एक खेल खेलने के लिए है? वहाँ के बारे में सही कैसे? पर आते हैं. तो सब ठीक है, खेल है कि आप अनजाने में है खेलने के लिए स्वेच्छा से - [वाहवाही] डेविड मालन: - पुराने से कुछ कहा जाता है "आओ." तुम्हारा नाम क्या है? RENDA: Renda. डेविड मालन: Redna? RENDA: ख के साथ बे्रन्डा की तरह है. डेविड मालन: ठीक है, Renda. डेविड. आपसे मिलकर अच्छा लगा. तो यहाँ में "आओ," और अगर हम मात्रा बढ़ा सकता है एक छोटा सा है, आप इस छोटे से कर रहे हैं तल पर हरी मेंढक. आप छोड़ दिया उपयोग करते हैं, सही, ऊपर और नीचे कर सकते हैं, और अपने लक्ष्य के लिए है सड़क पार करने के लिए नदी पार, और लिली पैड को छूने शीर्ष पर. ओ. एक और टी - फिर से करना, सब ठीक है? हिट रोकने के चलो. एक नहीं देखा. [वाहवाही] [वाहवाही] डेविड मालन: हाँ. बहुत अच्छी तरह से किया जाता है. बहुत बढ़िया, शुक्रिया. इतना है कि वहाँ Frogger था. अब है कि आप जानते हैं कि आप क्या लिया है अपने आप में एक अलग करने के लिए एक अधिक स्वयंसेवक मिल गया एक अन्य छात्र द्वारा प्रस्तुत खेल. आप पर आना चाहते हैं? आपका नाम क्या है? रिचर्ड: रिचर्ड. डेविड मालन: रिचर्ड. सब ठीक है, रिचर्ड, पर आओ. [वाहवाही] डेविड मालन: तुम कुछ है कि ध्वनि हूँ जल्द ही परिचित हैं, तो यहाँ अपने निर्देश दिए गए हैं. तो एक पल में, कुछ पहेली टुकड़े करने के लिए स्क्रॉल करने के लिए जा रहे हैं स्क्रीन है कि या तो छोड़ दिया देखो से या सही है या नीचे. आप करने के लिए इस तरह में तीर चाबियाँ हिट करने के लिए जा रहे हैं कि यह उन पहेली टुकड़े के साथ ऊपर की परत से मेल खाती है शीर्ष पर प्लेसहोल्डर्स. तो जब आप एक बाएँ तीर देखते हैं, और यह लाइनों के साथ छोड़ दिया तीर, बाएँ तीर मारा. आप शुरू कर सकते हैं. [संगीत - "मजबूत" Kayne पश्चिम] सब ठीक है, रिचर्ड के लिए प्रशंसा का एक बड़ा दौर: डेविड मालन. [वाहवाही] डेविड मालन: बहुत अच्छी तरह से किया. धन्यवाद. [वाहवाही] इतना मज़ा और प्रतीत होता है की तरह: डेविड मालन डरा देता है के रूप में इसे के रूप में कुछ को लागू करने के लिए हो सकता है इस के रूप में प्रतीत होता है परिष्कृत एहसास है कि छात्र सेट किया था और बाहर नहीं बस इस सब पर एक बार लिखने के. बल्कि, आप नीचे के रूप में प्रतीत होता है जटिल समस्या को तोड़ सकते हैं के रूप में बहुत छोटे टुकड़ों में है, और यह भी है, एक विषय होने जा रहा है. सबसे किसी में एक प्रोग्राम लिखने में सबसे बुरी बात आप कर सकते हैं, भाषा के लिए बैठ जाओ, बहुत उत्साहित हो, लिखने के लिए है पूरे लानत बात है, और तो बस उम्मीद है कि यह काम करता है बार जब आप लिख चुका रहे हैं. बल्कि, प्रोग्रामिंग की प्रक्रिया आम तौर पर होना चाहिए बहुत जानबूझकर, चलने का बहुत है, जिससे आप बस अपने आप को, काटने आकार के टुकड़ों के लिए बहुत छोटा कदम सेट आप के लिए रवाना काटने, और इसलिए कि आप इन विवेक है करना चाहते हैं चेक, छोटी मील के पत्थर को पूरा कर सकते हैं. और फिर तुम उन में से शीर्ष पर बनाने के लिए और अधिक बनाएँ परिष्कृत अभी भी बातें. तो उदाहरण के लिए, कैसे हम के बारे में जा सकते हैं इस तरह एक खेल को लागू? खैर, सच में, मैं निश्चित रूप से बस द्वारा शुरू होगा एक समय में एक महत्वपूर्ण समर्थन है. चलो बस बाईं तीर के लिए समर्थन को लागू करने. छात्र तो किसी भी तरह Photoshop में बनाने के लिए किया था, या ही स्क्रैच थोड़ा चित्रमय संपादक, एक का उपयोग तीर कुंजी है कि शीर्ष पर एक की तरह लग रहा है वहाँ छोड़ दिया है, बस ग्रे प्लेसहोल्डर. फिर छात्र को बाहर आंकड़ा एक्स, वाई, क्या करने के लिए समन्वय के लिए किया था इसे रखा, जहां यह खिड़की में डाल. 0 0, यहाँ है, तो आप को बाहर की संख्या का पता लगाने के लिए है पिक्सल, या बिंदु, कि तीर ऑफसेट से स्क्रीन के शीर्ष. और फिर एक बार उस जगह में है, वास्तव में अपने कार्यक्रम नहीं है अभी तक कुछ भी करते हैं, तो आप तो एक दूसरे प्रेत की जरूरत के लिए, उदाहरण के लिए एक हरे रंग का तीर भी छोड़ दिया है ओर इशारा करते हुए, और आप तो इसके लिए कुछ पटकथा लेखन शुरू करने की जरूरत है. और तुम नोटिस, शायद, कि इन बातों पर आ रहा शुरू अलग गति, और रंग अलग थे स्थानों, और है कि क्योंकि छात्र की एक बिट का इस्तेमाल छद्म randomness. और छद्म randomness से, मैं सिर्फ मतलब है एक नंबर लेने कुछ और कुछ के बीच में क्योंकि तुम कर सकते हो नक्शा बातें करने के लिए शुरू, जैसे अगर संख्या के बीच एक और पाँच, ठीक है, चलो बात हरा कर. यदि यह 6 और 10 के बीच है, चलो पहेली टुकड़ा बजाय लाल. इतने लंबे समय के रूप में आप किसी तरह की पैदा करने का एक तरीका है randomness, तो आप उस पर आधारित निर्णय कर सकते हैं randomness. और मैं कह छद्म यादृच्छिक रखने के लिए है क्योंकि वहाँ एक थोड़ा गंदा रहस्य. कंप्यूटर यादृच्छिक संख्या के साथ नहीं आ सकते. वे केवल क्या वे बता रहे हैं कर सकते हैं, क्योंकि वे मानव निर्मित उपकरणों रहे हैं. वे सिर्फ हम इंसानों की तरह एक संख्या का अनुमान नहीं कर सकते लग रहा है जैसे हम कर सकते हैं. एक कंप्यूटर के लिए गणितीय कुछ जादू नहीं है गणितीय संख्या का भ्रम है, कभी कभी बाहर क्या लगाना एक इनपुट के रूप में समय की वर्तमान दिन संख्या लौटने के लिए, लेकिन अधिक है कि एक बार पर. अभी के लिए, सिर्फ इतना पता है कि हम छद्म randomness उत्पन्न कर सकते हैं. तो एक बार मैं शुरू करने के लिए छोड़ दिया तीर के लिए क्षमता है अलग अलग समय पर और अलग स्पीड पर दिखाई दे तो, मैं वापस जाने के लिए और अगर शर्तें इनमें से कुछ जोड़ सकते हैं. अगर यह प्रेत अन्य एक और बायां तीर को छू रहा है कुंजी दबाया गया है - ताकि मामले में तीन की स्थिति. मुझे लगता है कि का उपयोग करें और शायद उस मामले में, ब्लॉक कर सकते हैं - तो मैं आगे जाना है और स्कोर वेतन वृद्धि करना चाहते हैं. और शीर्ष पर हम एक अंक है, हम बहुत बढ़िया है, कूल, अच्छा है, और बू. तो जाहिरा तौर पर पाँच चर कि इस छात्र इन विभिन्न मैट्रिक्स का ट्रैक रखने के लिए इस्तेमाल किया. तो संक्षेप में, अंत परिणाम आश्चर्यजनक है. यह मजेदार है, यह खेलने के लिए मजेदार है, यह आकर्षक है, लेकिन यह नहीं है जहां छात्र शुरू किया. वह या वह कदम की एक बहुत छोटे सेट में शुरू कर दिया. तो कुछ अन्य इमारत ब्लॉकों कि हम कर सकते हैं क्या कर रहे हैं इन कार्यक्रमों में बुनाई? खैर, वहाँ अधिकांश भाषाओं में यह अन्य अवधारणा है, उनके बीच स्क्रैच, धागे के रूप में जाना जाता है. तो वास्तव में एक कंप्यूटर कई बातें नहीं कर सकते हैं वास्तव में एक पर समय, आम तौर पर कम से कम नहीं है. बल्कि, एक कंप्यूटर आम तौर पर सिर्फ एक सीपीयू है, और यहां तक ​​कि हालांकि सुपर कंप्यूटर तेजी से कर रहे हैं और कर सकते हैं, इसलिए, एक ही बार में कई बातें कर भ्रम पैदा - अपने मेल की जाँच, एक पल हो रही है संदेश, एक दस्तावेज़ मुद्रण वास्तव में, एक कंप्यूटर सिर्फ मुद्रण से IMing कूद रहा है हम ईमेल, पीठ और वापस आ गया है और वापस और आगे इतनी जल्दी है कि धीमी गति से बुद्धि मनुष्य के सिर्फ एहसास नहीं है कि यह वास्तव में उन कार्यक्रमों को एक समय में एक छोटा सा चल रहा है. अब इन दिनों, एक सफेद रंग की यह एक सा है, क्योंकि आजकल झूठ, आप कई हमारे कंप्यूटर क्या मल्टी कोर कहा जाता है, तो एक सीपीयू लेकिन एकाधिक कोर, जो की तरह की तरह है कई CPUs होने. और तो कभी कभी, कंप्यूटर वास्तव में कई बातें कर सकते हैं एक समय में है, लेकिन आम तौर पर एक कार्यक्रम के भीतर कार्यक्रमों, इन धागों नामक बातों पर भरोसा करते हैं. तो एक धागा एक लघु कार्यक्रम है कि कर सकते हैं की तरह की तरह है एक और लघु कार्यक्रम के साथ मौजूद हैं और कर सकते हैं चलाने समानांतर में, या कम से कम भ्रम है कि नीचे चला सकते हैं वे एक साथ चल रहे हैं. तो स्क्रैच इन धागों नामक बातों का समर्थन करता है. आप कई बार पर निष्पादित लिपियों, हम बस के रूप में हो सकता है समुद्र शेर के साथ किया था, और यह हमारे लिए वास्तव में अनुमति देता है तो इन sprites के बीच बातचीत है. मुझे आगे यहाँ जाओ और ऊपर खींचने के लिए, हम कहते हैं, धागे, और इस खेल के रूप में निम्नानुसार. हम दो sprites, जिनमें से प्रत्येक में हम देखेंगे सिर्फ एक स्क्रिप्ट है. और तुम नोटिस वहाँ में कुछ खुफिया होने लगता है यह एक बिल्ली है, क्योंकि वह करीब हो रही है - [Roars] डेविड मालन: और करीब छोटे पक्षी. तो कैसे पक्षी काम कर रही है? ठीक है, चलो पक्षी पर एक नज़र 1 ले. पक्षी स्क्रिप्ट ने कहा कि जब हरा झंडा क्लिक किया जाता है, एक्स के लिए जाना 115 नकारात्मक बराबर है और y 150 के बराबर है. इसलिए मैं अभी बाहर लगा एक यादृच्छिक स्थान है जहाँ मैं चाहता था पक्षी शुरू करने के लिए और मैं सिर्फ उसे डिफ़ॉल्ट रूप से वहाँ plopped. फिर हमेशा के लिए अगर बिल्ली को छू नहीं है, तो यह एक अलग है पाशन निर्माण, लेकिन एक ही विचार है, इस तरह फिर से करते हैं और फिर से और फिर. इतने लंबे समय के रूप में आप बिल्ली नहीं छू रहे हैं, तीन चरणों को स्थानांतरित करने के लिए, और अगर आप किनारे, उछाल, पर कर रहे हैं, जहां एक की तरह है बिलियर्ड अर्थों में प्रतिबिंब. तो है कि कैसे पक्षी की तरह आसपास घूम रहा है प्रतीत होता है बेतरतीब ढंग से, लेकिन यह सिर्फ इसलिए है क्योंकि यह दूर शेख़ी है इस मामले में दीवारों. अब बिल्ली, इस बीच, धोखाधड़ी की तरह है. बिल्ली, जब हरा झंडा क्लिक किया जाता है, हाँ, में शुरू होता है कुछ स्थान, एक यादृच्छिक स्थान कम से कम के रूप में भाग लेने के प्रति वहाँ यादृच्छिक हरी ब्लॉक - और फिर हमेशा के लिए यदि चिड़िया को छू, शेर ध्वनि खेलते हैं, और फिर स्क्रिप्ट बंद करो. इसलिए जब मैंने कहा कि समाप्त कर सकता है, या उससे पहले से बाहर निकलें, एक पहेली है स्क्रैच में टुकड़ा है कि सिर्फ उस पर कार्यक्रम को मारने कहना है क्योंकि यह तार्किक किया की तरह है. लेकिन अन्यथा, यहाँ नोटिस, क्या होने जा रहा है. पक्षी और कदम से एक कदम की ओर प्वाइंट. पक्षी की ओर तो इस बिंदु पर एक फायदा बिल्ली की तरह है में है कि यह चलती पक्षी पर घर वापस आना है, और हम यह कर सकते हैं अब इस कार्यक्रम के सभी को और अधिक दिलचस्प बनाने के लिए. इसके बजाय CPU चक्र के अनुसार एक समय में एक कदम आगे बढ़ प्रति, घंटी के टोल हड़ताल, तो बात है, मुझे आगे जाना है और की ओर ले जाने का कहना है, बिल्ली के रूप में एक समय में पांच चरणों का. क्लिक करें चलाने के लिए, और अब वह वास्तव में उसे जल्दी पाता है. अगर हम 10 कदम आगे इस डबल, यह एक तरह से चला जाता है उसके लिए सही है. अब, हम पक्षी दे सकते हैं, शायद, एक लाभ का एक सा है. चलो पक्षी जाने के लिए और तीन चरणों का हिलाने की बजाय कहते हैं, चलो उसे 30 कदम चलते हैं. लेकिन वह अभी भी अंत में पकड़ा गया. तो, यहाँ हम दो सूत्र है. यह खरोंच में दो और दो लिपियों के साथ जेल में रखा है sprites, लेकिन अन्य भाषाओं में विचार है कि आप कर सकते हैं लिखने के लिए, अनिवार्य रूप से, इस तरह से भी कई कार्यक्रमों और उन्हें सही मायने में चलाने के लिए, या कल्पनात्मक ढंग से समानांतर में,. अब, वहाँ भी प्रोग्रामिंग के रूप में जाना जाता है में इस अवधारणा घटनाओं, और यह कुछ हम सी में नहीं देखेंगे, सी के रूप में जाना जाता भाषा हम यह सेमेस्टर अंत की ओर देखेंगे वेब प्रोग्रामिंग में, जब हम जावास्क्रिप्ट और परिचय इमारत वेब पृष्ठों है कि गतिशील हैं और बातचीत की धारणा उपयोगकर्ताओं के साथ. तो इस मामले में, हम दो में से एक बहुत ही सरल उदाहरण है sprites, लड़का और लड़की, जिनमें से प्रत्येक उनके संबंधित धागे, लेकिन किसी न किसी तरह कर रहे हैं जिस तरह से इन दो आपस संचार के बारे में कुछ घटनाओं कहा जाता है. तो मुझे आगे यहाँ जाओ और लड़के की स्क्रिप्ट पर में ज़ूम, जो इस तरह दिखता है. जब हरा झंडा क्लिक किया है, हमेशा के लिए निम्नलिखित है. यदि प्रमुख अंतरिक्ष, या स्पेस बार दबाया जाता है, कहते हैं, दो सेकंड के लिए मार्को, कि विशुद्ध रूप से सौंदर्य स्क्रीन, एक छोटा सा भाषण बुलबुला है, लेकिन फिर प्रसारित. तो एक और स्क्रैच टुकड़ा है कि प्रसारण प्रोग्रामिंग में कार्यक्षमता के एक वर्ग के प्रतिनिधि कि अलग अलग कार्यक्रमों, अलग धागे की अनुमति देता है, करने के लिए परस्पर संवाद, किसी भी तरह भेजने के लिए संदेश, एक दूसरे के लिए. कक्षा में कागज के एक टुकड़े पासिंग कम तकनीक की तरह है बराबर. तो घटना का प्रसारण करते हैं. मैं यह संदेश भेज सकते हैं, और शब्द घटना पूरी तरह से मनमाना है. स्क्रैच कभी कभी इन छोड़ चढ़ाव है, इसलिए मैं अभी आया अब घटना की तरह एक यादृच्छिक शब्द के साथ है, क्योंकि लड़का क्या करता है जब मैं प्रेस कुंजी है वह इस घटना को प्रसारित करता है. और अगर मैं लड़की की स्क्रिप्ट पर अब देखो, उसकी पटकथा है सुपर सरल क्योंकि वह सब करने की जरूरत है जब कार्य नहीं है हरा झंडा क्लिक किया जाता है. वह कार्रवाई करने के लिए बनाया गया है जब वह बोली गंदें शब्द बोलना प्राप्त है, "घटना" और उस बिंदु पर, वह इसलिए सुन रहा है तथाकथित घटना के फिर से और फिर. जैसे ही वह उस घटना को प्राप्त करता है, वह चिल्लाने जा रहा है दो सेकंड के लिए पोलो. और इसलिए तुम शायद यह वास्तव में क्या अनुमान कर सकते हैं अगले परिणाम पर होने जा रहा है. मुझे हरा झंडा क्लिक करें. कुछ नहीं होता क्योंकि मैं करने के लिए क्या करने की जरूरत है? दर्शक: स्पेस बार. डेविड मालन स्पेस बार:. Boy मार्को कहते हैं, लड़की पोलो कहते हैं. लेकिन यह है कि मुश्किल से प्रति कोडित नहीं है. लिपियों के बीच अंतर - संचार है, हम तो अब करने के लिए और भी अधिक जटिल जहाँ प्रोग्राम बनाने की क्षमता है किसी भी तरह इन दो अंतर संचार. तो क्या दिशाओं में हम ले सकते हैं? खैर, समस्या सेट में 0, वास्तव में, इस उद्देश्य के लिए है स्क्रैच के साथ मजाक किया है. हैकर संस्करण के लिए, आप के बजाय एक अधिक के साथ मजाक होगा स्क्रैच का परिष्कृत संस्करण BYOB बुलाया बनाएँ अपनी खुद की ईंट, लेकिन विचार ही है. आप सक्षम हो जाएगा - हाँ, यह जानबूझकर किया गया था. यह बर्कले से आया था. BYOB इस के हैकर संस्करण संस्करण है, लेकिन दोनों जनसांख्यिकी, मानक संस्करण और हैकर संस्करण एक जैसे, हाथ में आने वाले सप्ताह के लिए लक्ष्य वास्तव में बस में गोता लगाने के लिए गहरी, प्रोग्रामिंग के साथ अपने हाथ गंदे पाने के लिए, और कुछ दिलचस्प है, कुछ इंटरेक्टिव बनाने के, कलात्मक कुछ, वास्तव में कुछ मजेदार बनाने के प्रदर्शित करने के लिए, इतना है कि सप्ताह के अंत तक, आप किसी प्रोजेक्ट होगा, नहीं केवल अपने 1 CS50 pset के लिए, लेकिन आप एक होगा थोड़ा कुछ है कि आप बंद Annenberg में दिखा सकते हैं या यह एमआईटी की वेबसाइट पर अपलोड भी परिवार, दोस्तों. और इसलिए मैं बुधवार को कहा, हम वर्ग के 90% की उम्मीद है, आम तौर पर, मानक संस्करण करने के लिए. एहसास है कि वहाँ भी आप में से उन लोगों के लिए इस दुकान है जो अन्यथा अपने आप को एक मूल के साथ ऊब सा मिल सकता है और वास्तव में डुबकी और एक दृष्टि आप पहले से ही शिल्प चाहते हैं पूर्व की पृष्ठभूमि के साथ यह और अधिक अनुकूल है पर्यावरण. तो मुझे एक अन्य उदाहरण खींच कि हमारे पूर्व के एक छात्रों को किया था और यहाँ गीत के माध्यम से एक छोटे से कुछ बता. वह इसी तरह, इस नाटकों के रूप में, कैसे आप के बारे में जाने के बारे में सोचते हैं इस इन्हीं उसी का उपयोग कर कार्यक्रम को लागू करने इमारत ब्लॉकों, छद्म randomness का एक छोटा सा है, और एक परिचित गीत का सा. अगर हम मात्रा सिर्फ एक छोटा सा बढ़ा सकता है? [संगीत - "यह पुरुषों की बारिश हो रही है" मौसम लड़कियां] डेविड मालन: कि यह CS50 के लिए है. हम आप सोमवार को देखेंगे. [वाहवाही]