1 00:00:00,000 --> 00:00:11,270 2 00:00:11,270 --> 00:00:14,340 >> डेनियल Armendariz: नमस्ते, हर कोई, iOS एप्लिकेशन विकास के लिए आपका स्वागत है 3 00:00:14,340 --> 00:00:15,020 स्विफ्ट के साथ। 4 00:00:15,020 --> 00:00:15,870 मैं दान Armendariz हूँ। 5 00:00:15,870 --> 00:00:18,920 मैं कंप्यूटर के precepter हूँ यहाँ स्कूल में विज्ञान 6 00:00:18,920 --> 00:00:21,200 इंजीनियरिंग और एप्लाइड साइंसेज के। 7 00:00:21,200 --> 00:00:24,310 और स्विफ्ट तरह वास्तव में है एक सच में स्वच्छ भाषा की। 8 00:00:24,310 --> 00:00:27,190 और मैं आज के लिए कुछ योजना है। 9 00:00:27,190 --> 00:00:31,430 अगले एक घंटे से अधिक या तो हम जा रहे हैं तो iOS एप्लिकेशन विकास खुद को देखने के लिए 10 00:00:31,430 --> 00:00:36,640 Xcode का उपयोग करने और वास्तव में कुछ बनाने बहुत ही बुनियादी है, बहुत ही सरल अनुप्रयोगों। 11 00:00:36,640 --> 00:00:40,070 और वैसे भी पर देख रहे हैं कि आप वास्तव में उन अनुप्रयोगों ले, 12 00:00:40,070 --> 00:00:42,887 और वास्तव में उन्हें का निर्माण, और एक IOS डिवाइस पर डाल दिया। 13 00:00:42,887 --> 00:00:44,970 चीजों में से कुछ है कि हम को देखने के लिए नहीं जा रहे हैं 14 00:00:44,970 --> 00:00:47,540 की तरह बातें शामिल होंगे वास्तव में एक आवेदन लेने 15 00:00:47,540 --> 00:00:48,940 और app की दुकान पर डाल। 16 00:00:48,940 --> 00:00:52,930 ट्यूटोरियल की एक बहुत ऑनलाइन कि वहाँ यह उस पहलू के साथ मदद मिलेगी। 17 00:00:52,930 --> 00:00:56,230 लेकिन यह भी है क्योंकि CS50 का हिस्सा है, आपको मिल 18 00:00:56,230 --> 00:00:59,780 एप्पल के विकास में शामिल होने के लिए टीम, CS50 के अनुप्रयोग विकास टीम। 19 00:00:59,780 --> 00:01:02,790 अगर आप अभी तक नहीं किया है कि यदि और आप CS50 के साथ संबद्ध हैं, 20 00:01:02,790 --> 00:01:04,810 मैं आपको लगता है कि सिफारिश करते हैं उस वजह से ऐसा कर 21 00:01:04,810 --> 00:01:08,820 तुम बनाने के लिए कर रहे हैं कि कैसे है Xcode में कुछ कार्यक्रमों, 22 00:01:08,820 --> 00:01:11,890 उन्हें बनाने, और वास्तव में डाल अपने iOS उपकरणों में से कुछ पर उन्हें 23 00:01:11,890 --> 00:01:14,087 आप वास्तव में अगर एक भौतिक आईओएस डिवाइस। 24 00:01:14,087 --> 00:01:16,670 आप एक भौतिक आईओएस नहीं है ठीक से भी अधिक है कि डिवाइस। 25 00:01:16,670 --> 00:01:19,810 आप वास्तव में iOS के लिए विकसित कर सकते हैं। 26 00:01:19,810 --> 00:01:22,390 और Xcode है एक आपको अनुमति देता है कि सिम्युलेटर 27 00:01:22,390 --> 00:01:26,570 में आपके आवेदन को देखने के लिए आपके कंप्यूटर पर कार्रवाई की। 28 00:01:26,570 --> 00:01:30,440 लेकिन यह एक तरह से एक बात साफ है वास्तव में खेलने के लिए और बातचीत करने के लिए 29 00:01:30,440 --> 00:01:34,235 अपने आवेदन के साथ एक वास्तविक डिवाइस पर। 30 00:01:34,235 --> 00:01:37,360 इसलिए आवश्यकताओं के एक जोड़े के लिए नहीं है वास्तव में इस विकास के सभी करते हैं। 31 00:01:37,360 --> 00:01:39,151 उनमें से एक यह है कि यदि आप एक मैक के लिए है। 32 00:01:39,151 --> 00:01:44,770 बाद में यह 10.9.4 या चल रहा हो गया है स्विफ्ट के साथ विकास करने के लिए आदेश में। 33 00:01:44,770 --> 00:01:47,770 >> आप एक पहले का उपयोग कर सकते हैं संस्करण विकसित करने के लिए 34 00:01:47,770 --> 00:01:50,810 iOS और मैक के लिए उद्देश्य सी के साथ। 35 00:01:50,810 --> 00:01:53,990 लेकिन मेरा सुझाव है, और का एक बहुत आज हम देख लेंगे कि उदाहरण हैं, 36 00:01:53,990 --> 00:01:55,700 10.10 Yosemite का उपयोग करें। 37 00:01:55,700 --> 00:02:00,910 अगर आप अभी तक उन्नत नहीं है तो, अगर यह ऐसा करने के लिए एक अच्छा बहाना है। 38 00:02:00,910 --> 00:02:05,480 अब Xcode के 6.1 के नवीनतम संस्करण है एकीकृत विकास पर्यावरण 39 00:02:05,480 --> 00:02:08,979 एप्पल कि मुक्त करने के लिए प्रदान करता है कि आप app की दुकान बंद डाउनलोड कर सकते हैं। 40 00:02:08,979 --> 00:02:11,220 और मैं आपको सलाह देते हैं कि यह भी नवीनतम संस्करण चला रहे हैं। 41 00:02:11,220 --> 00:02:14,700 >> आप एक पहले चल सकता हो तो संस्करण, Xcode के 5 और बस के नीचे 42 00:02:14,700 --> 00:02:16,741 बस जो भी तेजी का समर्थन नहीं करते। 43 00:02:16,741 --> 00:02:19,490 छह साल की और बीटा संस्करण है, जो गर्मियों में जारी किए गए थे, 44 00:02:19,490 --> 00:02:21,770 स्विफ्ट का समर्थन करते हैं, लेकिन वहाँ एक भारी संख्या में किया गया 45 00:02:21,770 --> 00:02:25,220 भाषा में परिवर्तन के कारण पर्याप्त इतना है कि आप कर रहे हैं कि कोड 46 00:02:25,220 --> 00:02:28,320 और आपको लगता है कि देखने के लिए जा इंटरनेट पर मिल सकता है 47 00:02:28,320 --> 00:02:33,294 वास्तव में ठीक से संकलन नहीं होगा Xcode के इन पूर्व संस्करणों में। 48 00:02:33,294 --> 00:02:35,460 तो फिर, अगर आप ऐसा नहीं अभी तक एक डेवलपर खाता है, 49 00:02:35,460 --> 00:02:38,560 मैं तुम्हें करने के लिए जाने की सिफारिश developer.apple.com। 50 00:02:38,560 --> 00:02:42,240 साइन अप, एक डेवलपर खाता बनाने, और CS50 अनुप्रयोग विकास टीम में शामिल हो। 51 00:02:42,240 --> 00:02:45,530 एक मौका है कि आप के लिए प्रदान करेगा अपने आवेदन संकलन करने के लिए 52 00:02:45,530 --> 00:02:47,840 और अपनी डिवाइस पर डाल दिया। 53 00:02:47,840 --> 00:02:49,222 ठीक है, तो चलो शुरू हो जाओ। 54 00:02:49,222 --> 00:02:50,930 बहुत पहले की बात हमें क्या करना है जा रहे हैं 55 00:02:50,930 --> 00:02:55,140 वास्तव में एक बहुत बनाने के लिए Xcode में सरल परियोजना 56 00:02:55,140 --> 00:02:59,530 कि आप के लिए अनुमति देगा एक आवेदन कर सकते हैं। 57 00:02:59,530 --> 00:03:03,170 >> अगर आप अभी तक Xcode के पास नहीं है तो अगर खुला, आगे बढ़ो और इसे खोलने 58 00:03:03,170 --> 00:03:04,270 और एक नई परियोजना का निर्माण। 59 00:03:04,270 --> 00:03:06,570 एक विशेष छप स्क्रीन खुल जाएगा और तुम्हें दे देंगे 60 00:03:06,570 --> 00:03:08,800 के बारे में क्या कुछ विकल्प यह आप क्या करना चाहते हैं। 61 00:03:08,800 --> 00:03:12,170 बस आप बनाना चाहते हैं का कहना है कि एक नई परियोजना, एक नया आवेदन। 62 00:03:12,170 --> 00:03:15,650 इस विंडो पॉप अप होगा आप Xcode के 6.1 का उपयोग कर रहे हैं संभालने। 63 00:03:15,650 --> 00:03:17,650 अभी, और के लिए इस संगोष्ठी की अवधि, 64 00:03:17,650 --> 00:03:19,990 हम प्रयोग करने जा रहे हैं एकल दृश्य अनुप्रयोगों, बस 65 00:03:19,990 --> 00:03:22,590 एक बुनियादी आवेदन की तरह अपने पैरों को गीला पाने के लिए। 66 00:03:22,590 --> 00:03:25,200 और तुम बाहर शाखा सकता है वहाँ से अपने दम पर। 67 00:03:25,200 --> 00:03:27,660 >> इस बिंदु पर अगला क्लिक करें। 68 00:03:27,660 --> 00:03:30,796 अब यहाँ चीजों की एक जोड़ी नहीं है आप में प्रवेश करना चाहते हो सकता है। 69 00:03:30,796 --> 00:03:32,670 उत्पाद का नाम है अपनी परियोजना का नाम है। 70 00:03:32,670 --> 00:03:34,859 इस मामले में, मैं अभी कर रहा हूँ यह कॉल करने के लिए जा रहा Seminar1 71 00:03:34,859 --> 00:03:36,150 यह हमारा पहला उदाहरण है, क्योंकि। 72 00:03:36,150 --> 00:03:38,290 संगठन का नाम, में इस मामले में सिर्फ मेरा नाम है। 73 00:03:38,290 --> 00:03:41,760 आप निश्चित रूप से यह बदल सकते हैं अपने नाम करने के लिए, या CS50 के लिए। 74 00:03:41,760 --> 00:03:46,160 संगठन पहचानकर्ता, आप अगर बस लेने के लिए एक वेबसाइट के लिए होता है 75 00:03:46,160 --> 00:03:49,940 डोमेन नाम में , com.yourname रिवर्स। 76 00:03:49,940 --> 00:03:54,200 उत्पाद की और फिर नाम स्वचालित रूप से प्रकट करना चाहिए 77 00:03:54,200 --> 00:03:55,820 बंडल पहचानकर्ता के रूप में उस के बाद। 78 00:03:55,820 --> 00:03:59,200 >> हम कर रहे हैं कि जाहिर है भाषा आज के लिए उपयोग किया जा रहा तेज है। 79 00:03:59,200 --> 00:04:02,590 तुम्हें पता है, ज़ाहिर है, उद्देश्य सी का उपयोग कर सकते हैं उस के लिए, लेकिन आज तेज किया जाएगा। 80 00:04:02,590 --> 00:04:04,920 और हम अब के लिए कहता हूँ यूनिवर्सल उपकरणों, इसलिए 81 00:04:04,920 --> 00:04:06,900 कि यह iPad और iPhone दोनों पर काम करता है। 82 00:04:06,900 --> 00:04:10,040 और हम कोर छोड़ देंगे रखने के लिए अनियंत्रित डेटा 83 00:04:10,040 --> 00:04:12,830 परियोजना अपेक्षाकृत कुछ समय के लिए आसान है। 84 00:04:12,830 --> 00:04:14,430 तो चलो आगे जाना है और अगला क्लिक करते हैं। 85 00:04:14,430 --> 00:04:16,471 और यह मुझे पूछने के लिए जा रहा है जहां मैं इसे बचाने के लिए करना चाहते हैं। 86 00:04:16,471 --> 00:04:19,250 मैं बस अभी के लिए अपने डेस्कटॉप के लिए यह बचा लेंगे। 87 00:04:19,250 --> 00:04:22,267 >> सब ठीक है, तो अब यह क्या इच्छा है जब आप वास्तव में खुला Xcode के लिए होता है। 88 00:04:22,267 --> 00:04:24,100 और कहा कि नोटिस जैसा कि आप देख बहुत पहले की बात 89 00:04:24,100 --> 00:04:28,770 इस विस्मयादिबोधक बिंदु है कि पाया कोई हस्ताक्षर करने के पहचान कहते हैं। 90 00:04:28,770 --> 00:04:31,520 मैं जानबूझकर ऐसा किया मैं कर रहा हूँ और अपने कंप्यूटर पर 91 00:04:31,520 --> 00:04:34,220 मैं जा रहा हूँ, उम्मीद है कि वास्तव में यह तय करने में सक्षम हो 92 00:04:34,220 --> 00:04:37,860 मैं चाहता हूँ क्योंकि आप कैसे यह देखने के लिए वास्तव में अपनी खुद की मशीन पर काम करेंगे। 93 00:04:37,860 --> 00:04:40,400 >> आगे बढ़ो और तय मुद्दे पर क्लिक करें। 94 00:04:40,400 --> 00:04:45,400 अगर आपके पास एक यह है कि आप से पूछना होगा एप्पल डेवलपर खाते मौजूदा। 95 00:04:45,400 --> 00:04:48,330 में शामिल होने से यह जहां CS50 अनुप्रयोग विकास टीम 96 00:04:48,330 --> 00:04:51,240 महत्वपूर्ण है कि ताकि आप नहीं केवल एक app खाता है, 97 00:04:51,240 --> 00:04:53,690 लेकिन आप यह भी है क्षमता क्षुधा हस्ताक्षर करने के लिए 98 00:04:53,690 --> 00:04:56,420 और अपने IOS डिवाइस पर डाल दिया। 99 00:04:56,420 --> 00:04:58,957 इस not-- क्लिक है तय मुद्दा आवश्यक नहीं है 100 00:04:58,957 --> 00:05:01,040 तुम सिर्फ करने के लिए जा रहे हैं निर्माण और स्थानीय स्तर पर विकसित करने, 101 00:05:01,040 --> 00:05:03,520 पूरी तरह आईओएस सिम्युलेटर के भीतर। 102 00:05:03,520 --> 00:05:05,820 >> लेकिन अब के लिए मैं जा रहा हूँ को विकसित करने और उन्हें डाल करने के लिए 103 00:05:05,820 --> 00:05:08,160 मेरे iPad पर, जो होगा के रूप में अच्छी तरह से प्रसारित करने में सक्षम। 104 00:05:08,160 --> 00:05:10,770 इसलिए मैं वास्तव में इस जोड़ना चाहता है। 105 00:05:10,770 --> 00:05:13,670 और यह पूछने जा रहा है मेरे एप्पल आईडी के लिए मुझे। 106 00:05:13,670 --> 00:05:15,700 तो यह इस होने जा रहा है। 107 00:05:15,700 --> 00:05:18,940 और मैं अपने लाने के लिए है यहाँ खत्म हो गया है, जो पासवर्ड,। 108 00:05:18,940 --> 00:05:27,760 तो यह है कि खोजने के लिए मुझे सिर्फ एक दूसरे को दे, और उस की प्रतिलिपि, और यहाँ इस पर पेस्ट करें। 109 00:05:27,760 --> 00:05:28,580 >> जोड़ें पर क्लिक करें। 110 00:05:28,580 --> 00:05:31,095 यह मेरे पूछने के लिए जा रहा है जो टीम मैं शामिल होना चाहते हैं। 111 00:05:31,095 --> 00:05:33,240 मैं इंजीनियरिंग के स्कूल में क्या करने जा रहा हूँ। 112 00:05:33,240 --> 00:05:35,680 जुड़ें क्लिक करें। 113 00:05:35,680 --> 00:05:37,780 ओह, कि गलत है। 114 00:05:37,780 --> 00:05:40,730 चलो यह एक करते हैं। 115 00:05:40,730 --> 00:05:42,060 उम्मीद है कि एक काम करेंगे। 116 00:05:42,060 --> 00:05:44,220 यही कारण है कि एक अभी भी काम नहीं करता है। 117 00:05:44,220 --> 00:05:46,610 हम यहाँ अच्छे लोगों में से बाहर चल रहे हैं। 118 00:05:46,610 --> 00:05:48,260 ठीक है, यह एक काम करना चाहिए। 119 00:05:48,260 --> 00:05:50,816 अब जब कि बंद हुआ। 120 00:05:50,816 --> 00:05:54,450 अब देखते हैं की स्कूल करते हैं इंजीनियरिंग, चुनने के लिए क्लिक करें। 121 00:05:54,450 --> 00:06:00,190 >> और अब उम्मीद है कि एक के बाद आप ठीक can-- सेकंड की जोड़ी, 122 00:06:00,190 --> 00:06:02,550 मैं रद्द कर देंगे और अनुरोध करेंगे। 123 00:06:02,550 --> 00:06:05,410 अरे यार, यह काम नहीं कर रहा है। 124 00:06:05,410 --> 00:06:08,890 ठीक है, मैं एक अलग एक कोशिश करता हूँ। 125 00:06:08,890 --> 00:06:11,167 यहाँ इस एक करते हैं। 126 00:06:11,167 --> 00:06:17,020 127 00:06:17,020 --> 00:06:19,310 लाइव डेमो मुझे असफल रहे हैं। 128 00:06:19,310 --> 00:06:22,540 हम बस पर वापस लौटने के लिए हो सकता है स्थानीय स्तर पर पूरी तरह से निर्माण, 129 00:06:22,540 --> 00:06:25,050 लेकिन यह है कि इस मामले में ठीक हो जाएगा। 130 00:06:25,050 --> 00:06:28,560 >> यहाँ तो, यह वास्तव में है, जबकि काम, हम क्या करने जा रहे हैं तो बस है 131 00:06:28,560 --> 00:06:31,190 एक बहुत ही सरल बनाने नमस्ते विश्व आवेदन। 132 00:06:31,190 --> 00:06:32,340 तो यह Xcode है। 133 00:06:32,340 --> 00:06:37,300 और तुम, अभी तक यह नहीं देखा है अगर पहले डरा देता है एक छोटे से हो सकता है। 134 00:06:37,300 --> 00:06:41,430 शीशे का एक बहुत कुछ है, वहाँ एक विभिन्न क्षेत्रों में doodads की बहुत। 135 00:06:41,430 --> 00:06:44,300 लेकिन सिर्फ यह है कि वहाँ का एहसास वास्तव में कई मुख्य घटकों 136 00:06:44,300 --> 00:06:46,580 इस विकास में पर्यावरण के लिए। 137 00:06:46,580 --> 00:06:51,090 अब तक छोड़ दिया पर फाइलों के सभी कर रहे हैं अपने कार्यक्रम के लिए लागू कर रहे हैं कि 138 00:06:51,090 --> 00:06:52,997 या अपने विशेष परियोजना के लिए। 139 00:06:52,997 --> 00:06:55,080 हम आसपास क्लिक हो जाएगा उनमें से कुछ पर और हम हूँ 140 00:06:55,080 --> 00:06:57,660 सबसे बाहर बात समय के साथ महत्वपूर्ण हैं। 141 00:06:57,660 --> 00:06:59,650 अभी तक सही पर, हम विशेषताओं का एक सेट है। 142 00:06:59,650 --> 00:07:02,920 और इन विशेषताओं के सभी, वहाँ विशेषताओं के लिए विभिन्न शीशे हैं। 143 00:07:02,920 --> 00:07:06,770 शीशे के आधार पर बदल जाएगा मुख्य सामग्री के संदर्भ में, जो 144 00:07:06,770 --> 00:07:08,290 बीच में होना होता है। 145 00:07:08,290 --> 00:07:11,740 अब मध्य वास्तव में दिखा सकते हैं उदाहरण के लिए चीजों की तुम एक किस्म है, 146 00:07:11,740 --> 00:07:13,290 अपने कोड में ही। 147 00:07:13,290 --> 00:07:17,070 या फिर आप वास्तव में जब have-- हो सकता है आप स्टोरीबोर्ड पर क्लिक करें जो 148 00:07:17,070 --> 00:07:21,270 , जिस तरह से सिर्फ एक चित्रमय है अपने उपयोगकर्ता का प्रतिनिधित्व 149 00:07:21,270 --> 00:07:25,350 अपने application-- के लिए इंटरफ़ेस फिर विशेषताओं फलक 150 00:07:25,350 --> 00:07:27,334 बहुत दूर सही पर वास्तव में बदल जाएगा। 151 00:07:27,334 --> 00:07:29,750 अब अन्य की एक जोड़ी है मैं कहना चाहता हूँ कि चीजें हैं। 152 00:07:29,750 --> 00:07:33,360 आप की तरह चारों ओर तलाश कर सकते हैं अपने दम पर वातावरण में। 153 00:07:33,360 --> 00:07:35,730 लेकिन चीजों में से एक लगता है कि बहुत उपयोगी है 154 00:07:35,730 --> 00:07:38,470 इस बटन, यहाँ है खिड़की के ऊपर सही। 155 00:07:38,470 --> 00:07:41,230 इस बटन है कि दूर पर की तरह दिखता है 156 00:07:41,230 --> 00:07:46,090 छोड़ दिया है कि यह एक पैरा है दो हलकों और क्रमबद्ध करें द्वारा पीछा 157 00:07:46,090 --> 00:07:49,540 दो तीर की ओर इशारा करते हुए एक दूसरे से दूर। 158 00:07:49,540 --> 00:07:52,640 आप के बीच स्विच मानक संपादक, जो 159 00:07:52,640 --> 00:07:55,560 अब तक छोड़ दिया एक, एक है कि, डिफ़ॉल्ट रूप से चयनित 160 00:07:55,560 --> 00:08:01,040 और दो हलकों अतिव्यापी आप वास्तव में क्या मिलता है, एक दूसरे को 161 00:08:01,040 --> 00:08:02,210 एक डबल फलक दृश्य हैं। 162 00:08:02,210 --> 00:08:04,240 >> और यह वास्तव में है हमारे लिए उपयोगी होने जा रहा 163 00:08:04,240 --> 00:08:07,330 हम आइटम लिंक करने के लिए जब जरूरत कोड के लिए यूआई में। 164 00:08:07,330 --> 00:08:09,330 और हम के बारे में अधिक बात करेंगे बस एक पल में है। 165 00:08:09,330 --> 00:08:12,050 लेकिन अगर आप महसूस करते हैं कि इस तरह से भी अधिक के शीशे, 166 00:08:12,050 --> 00:08:15,830 तुम सिर्फ अपने दृश्य को आसान बनाने में कर सकते हैं पीठ पर क्लिक करके एक छोटा सा 167 00:08:15,830 --> 00:08:20,680 अपने एकल संपादक पर। 168 00:08:20,680 --> 00:08:21,580 अब तक सब ठीक है। 169 00:08:21,580 --> 00:08:24,560 तो बुनियादी तौर पर हम कोड पर है बाएं, सही पर विशेषताएँ 170 00:08:24,560 --> 00:08:28,260 और यह है कि हम काम कर रहे हैं जो कुछ भी है यहाँ बहुत केन्द्र में पर। 171 00:08:28,260 --> 00:08:30,390 >> तो यहाँ मैं क्लिक किया है मुख्य स्टोरीबोर्ड पर। 172 00:08:30,390 --> 00:08:33,350 और स्टोरीबोर्ड, फिर, Xcode में एक रास्ता है 173 00:08:33,350 --> 00:08:38,110 आप वास्तव में अपने उपयोगकर्ता बना सकते हैं बस खींचें और ड्रॉप का उपयोग इंटरफ़ेस 174 00:08:38,110 --> 00:08:39,130 तकनीक। 175 00:08:39,130 --> 00:08:41,190 और इसलिए हमारे बहुत के लिए पहले आवेदन इस 176 00:08:41,190 --> 00:08:42,720 हम क्या करने जा रहे हैं क्या ठीक है। 177 00:08:42,720 --> 00:08:45,950 हम करने के लिए नीचे जाने के लिए जा रहे हैं बहुत दूर निचले दाहिने भाग 178 00:08:45,950 --> 00:08:49,900 शामिल है जो स्क्रीन के उपयोगकर्ता तत्वों की एक किस्म 179 00:08:49,900 --> 00:08:53,270 तुम तो क्लिक करें और खींचें कर सकते हैं अपने यूजर इंटरफेस बनाने के लिए। 180 00:08:53,270 --> 00:08:55,550 >> अब इन सब तत्वों विचारों कहा जाता है 181 00:08:55,550 --> 00:08:57,370 वे देखने के लिए किसी प्रकार की आपूर्ति की वजह से। 182 00:08:57,370 --> 00:09:00,190 एक छवि को देखने के लिए, वहाँ उदाहरण के लिए, वास्तव में दिखाने के लिए 183 00:09:00,190 --> 00:09:01,740 यूजर इंटरफेस पर एक छवि। 184 00:09:01,740 --> 00:09:04,310 एक मेज को देखने के लिए नहीं है वास्तव में एक मेज दिखा। 185 00:09:04,310 --> 00:09:05,190 इतने पर और आगे। 186 00:09:05,190 --> 00:09:08,250 की एक विस्तृत विविधता है आप यहाँ चयन कर सकते हैं विचार। 187 00:09:08,250 --> 00:09:11,100 तो बस अब हम जा रहे हैं के लिए एक लेबल के लिए खोज करने के लिए। 188 00:09:11,100 --> 00:09:13,550 तुम बस के माध्यम से स्क्रॉल कर सकते हैं है कि वहाँ सूचियों के सभी। 189 00:09:13,550 --> 00:09:15,460 लेकिन खोज नहीं है बहुत नीचे पट्टी 190 00:09:15,460 --> 00:09:19,460 कि यह आसान पहचान के लिए बनाता है विशिष्ट विचारों कि आप वास्तव में 191 00:09:19,460 --> 00:09:22,020 अपने यूजर इंटरफेस में खींचना चाहते हैं। 192 00:09:22,020 --> 00:09:23,560 >> मेरे लेबल मिला। 193 00:09:23,560 --> 00:09:28,430 मैं सीधे, यहां खींचें करने के लिए जा रहा हूँ मेरे नमूना आवेदन पर। 194 00:09:28,430 --> 00:09:30,130 वहीं पर बीच अच्छा लग रहा है। 195 00:09:30,130 --> 00:09:33,180 और मैं टाइप करने के लिए जा रहा हूँ "नमस्ते विश्व!" 196 00:09:33,180 --> 00:09:33,810 हिट दर्ज करें। 197 00:09:33,810 --> 00:09:34,877 अब मैं एक लेबल है। 198 00:09:34,877 --> 00:09:36,960 यह ऐसा नहीं लगती है काफी ठीक से केन्द्रित। 199 00:09:36,960 --> 00:09:38,500 इसलिए मुझे लगता है कि यह केंद्र फिर से करने की कोशिश कर सकते हैं। 200 00:09:38,500 --> 00:09:42,100 सौभाग्य से यह इन प्रस्तावों बातें बहुत आसान बनाने के लिए गाइड। 201 00:09:42,100 --> 00:09:44,130 मैं यह संकलन करने के लिए प्रयास करने के लिए जा रहा हूँ। 202 00:09:44,130 --> 00:09:46,570 उम्मीद है कि यह वास्तव में यहाँ काम करेंगे। 203 00:09:46,570 --> 00:09:52,870 और यह सिर्फ एक पल में, नहीं करता है यह वास्तव में मेरे iPad पर दिखाई देगा। 204 00:09:52,870 --> 00:09:54,360 यह ठीक है यहाँ है। 205 00:09:54,360 --> 00:09:55,060 वहाँ यह है। 206 00:09:55,060 --> 00:09:56,590 >> ठीक है, तो यह बात है। 207 00:09:56,590 --> 00:09:57,160 हम कर रहे हैं। 208 00:09:57,160 --> 00:09:58,868 हम अपने बहुत ही बना लिया है पहले आवेदन। 209 00:09:58,868 --> 00:10:01,330 अब जाहिर है यह कुछ भी नहीं है। 210 00:10:01,330 --> 00:10:02,280 यह सिर्फ एक लेबल है। 211 00:10:02,280 --> 00:10:07,350 के बीच कोई संबंध नहीं है यूजर इंटरफेस और कोड। 212 00:10:07,350 --> 00:10:10,130 हम वास्तव में चाहते थे तो अगर इस संबंध बनाने के लिए, 213 00:10:10,130 --> 00:10:14,790 हम वास्तव में किसी प्रकार का है चाहता था तत्वों के बीच संचार की 214 00:10:14,790 --> 00:10:17,540 पर मौजूद स्क्रीन और कोड कि 215 00:10:17,540 --> 00:10:19,810 हमें नियंत्रित करने देता है तो उन तत्वों, 216 00:10:19,810 --> 00:10:23,570 हम वास्तव में करने की जरूरत है कोड खुद को देखो। 217 00:10:23,570 --> 00:10:27,000 >> तो यह कहा जाता है कि क्या है ViewController.swift। 218 00:10:27,000 --> 00:10:30,080 और विशेष रूप से के लिए, के लिए अपने पहले कुछ कार्यक्रमों, 219 00:10:30,080 --> 00:10:33,120 इस की तरह होने जा रहा है आप enter-- कि कोड के थोक 220 00:10:33,120 --> 00:10:35,980 यहाँ इस दस्तावेज़ में होने जा रहा है। 221 00:10:35,980 --> 00:10:38,390 सामान का एक बहुत कुछ है कि यहाँ में अब तक, सही है? 222 00:10:38,390 --> 00:10:42,660 आयात यूआई किट वर्ग नहीं है, ओवरराइड [? दुर्गंध,?] इन सभी विभिन्न बातें। 223 00:10:42,660 --> 00:10:45,820 और यह काफी स्पष्ट नहीं है क्या यह इस सब का मतलब है कि है। 224 00:10:45,820 --> 00:10:48,570 तो चलो वापस एक कदम दूर ले चलो Xcode से एक छोटा सा के लिए 225 00:10:48,570 --> 00:10:52,420 और भाषा ही, स्विफ्ट को देखो। 226 00:10:52,420 --> 00:10:56,370 >> स्विफ्ट के साथ तो, उस में था डिजाइन और विकास 227 00:10:56,370 --> 00:10:58,645 के बारे में चार के लिए एप्पल पर मेरी समझ के वर्षों। 228 00:10:58,645 --> 00:11:01,270 और सुविधाओं की एक जोड़ी है इसके बारे में वास्तव में साफ कर रहे हैं। 229 00:11:01,270 --> 00:11:03,910 सबसे पहले, यह संकलित है भाषा, सिर्फ सी पसंद 230 00:11:03,910 --> 00:11:06,120 तो जब आप पहली बार के लिए है यह संकलन और उसके बाद इसे चलाने के लिए 231 00:11:06,120 --> 00:11:09,580 आप वास्तव में कर सकते हैं पहले यह परिणाम है कि कोड को निष्पादित। 232 00:11:09,580 --> 00:11:14,250 लेकिन सी के विपरीत, एक इंटरैक्टिव, वहाँ है आप वास्तव में चला सकते हैं कि शीघ्र 233 00:11:14,250 --> 00:11:16,680 और में मनमाना आदेश टाइप करें। 234 00:11:16,680 --> 00:11:20,280 और बहुत एक JavaScript कंसोल जैसे, अब आप के साथ परिचित हो सकता है, जो 235 00:11:20,280 --> 00:11:24,506 यह वास्तव में उन का मूल्यांकन करेंगे आदेशों और आप करने के लिए उत्पादन प्रदान करते हैं। 236 00:11:24,506 --> 00:11:26,380 और वे भी कर लिया है कि अगले स्तर पर 237 00:11:26,380 --> 00:11:29,100 और वे कुछ बना लिया है Xcode में बुलाया खेल के मैदानों 238 00:11:29,100 --> 00:11:31,720 करने के लिए आप की अनुमति है कि नेत्रहीन कोड के साथ काम करते हैं। 239 00:11:31,720 --> 00:11:34,910 और हम वास्तव में कुछ उदाहरण देखेंगे बस थोड़ा सा में इस बात का। 240 00:11:34,910 --> 00:11:41,680 यह सी सी underlies पर आधारित है यह compilers के सभी क्योंकि 241 00:11:41,680 --> 00:11:46,820 सी के बाहर कोड बना सकते हैं और इसमें से वस्तु कोड बनाने के लिए। 242 00:11:46,820 --> 00:11:49,240 लेकिन यह सच शेयरों अपेक्षाकृत छोटे से वाक्य रचना। 243 00:11:49,240 --> 00:11:50,721 यह काफी अलग दिखेगा। 244 00:11:50,721 --> 00:11:51,970 कुछ समानताएं हो जाएगा। 245 00:11:51,970 --> 00:11:54,140 लेकिन वहाँ जा रहे हैं काफी कुछ मतभेद 246 00:11:54,140 --> 00:11:57,200 कहते हैं, जावास्क्रिप्ट या पीएचपी, की तुलना में। 247 00:11:57,200 --> 00:11:59,070 और हम इन बात करेंगे बस एक पल में बाहर। 248 00:11:59,070 --> 00:12:01,420 >> सबसे बड़ी बातें की अब एक के बारे में तेजी से अच्छा है कि 249 00:12:01,420 --> 00:12:05,650 विशेष रूप से, की तुलना में यह है कि सी के लिए, यह सुरक्षित होने का मतलब है। 250 00:12:05,650 --> 00:12:08,100 यह सब कुछ करने के लिए है बहुत दृढ़ता में टाइप किया जा। 251 00:12:08,100 --> 00:12:10,780 वास्तव में यह लगभग गुस्सा आ रहा है पहली बार में, जब आप पहली बार 252 00:12:10,780 --> 00:12:15,610 बस कैसे, स्विफ्ट के साथ काम शुरू ज्यादा यह हर जगह प्रकार लागू करता है। 253 00:12:15,610 --> 00:12:17,860 एक स्ट्रिंग है कि कुछ भी एक स्ट्रिंग रहना पड़ता है। 254 00:12:17,860 --> 00:12:22,100 इसे बदलने की सॉर्ट करने के लिए बहुत मुश्किल है यह कुछ अन्य रूप में यह ज़बरदस्ती या। 255 00:12:22,100 --> 00:12:23,800 >> और फिर, हम इस बात का उदाहरण दिखाता हूँ। 256 00:12:23,800 --> 00:12:26,830 लेकिन अंततः का एहसास है कि यह आप की रक्षा के लिए होती है 257 00:12:26,830 --> 00:12:32,010 और आप के द्वारा मैं से, अपने कोड मतलब कुछ भयानक तरह से जब में दुर्घटनाग्रस्त 258 00:12:32,010 --> 00:12:34,330 आप बेमेल प्रकार के कुछ प्रकार है। 259 00:12:34,330 --> 00:12:36,040 और फिर, इसके साथ काम करते हैं। 260 00:12:36,040 --> 00:12:40,210 यह पहली बार में निराशा होगी क्योंकि आप वास्तव में क्यों यह पता लगाने की कोशिश के रूप में 261 00:12:40,210 --> 00:12:43,070 आप इस असामान्य हो रही है प्रकार से निपटने में त्रुटि। 262 00:12:43,070 --> 00:12:45,350 लेकिन यह अंत में इसके लायक हो जाएगा। 263 00:12:45,350 --> 00:12:47,267 >> यह स्वत: के साथ सौदा करता है स्मृति प्रबंधन, 264 00:12:47,267 --> 00:12:49,100 इसलिए अब आप करते हैं चीजों के साथ सौदा किया है 265 00:12:49,100 --> 00:12:51,400 malloc और मुक्त है और सभी तरह इन चीजों की तरह की। 266 00:12:51,400 --> 00:12:53,066 और यह भी सामान्योक्तियां के लिए तैयार है। 267 00:12:53,066 --> 00:12:58,360 हम एक Xcode के लिए उपयोग कर सकते हैं तो, जबकि , IOS क्षुधा और मैक आवेदन पत्र बनाने 268 00:12:58,360 --> 00:13:00,380 हम भी सिर्फ इसका इस्तेमाल कर सकते हैं एक पटकथा भाषा के रूप में। 269 00:13:00,380 --> 00:13:03,660 और इसलिए हम क्रमबद्ध के लिए इसका इस्तेमाल कर सकते हैं के बजाय PHP या बजाय 270 00:13:03,660 --> 00:13:07,800 अजगर की वास्तव में करने के लिए जल्दी पार्स और प्रक्रिया 271 00:13:07,800 --> 00:13:09,800 हम अपने कंप्यूटर पर है कि कुछ डेटा। 272 00:13:09,800 --> 00:13:13,290 >> यह आधुनिक की एक विस्तृत विविधता है सुविधाओं, optionals, mutability, 273 00:13:13,290 --> 00:13:17,900 जेनरिक, closures, और इस का एक बहुत आप या नहीं पहचान सकता हैं और सामान। 274 00:13:17,900 --> 00:13:22,810 और यह बस की तरह एक दुर्भाग्यपूर्ण है भाषा की बात यह है कि इनमें से कुछ 275 00:13:22,810 --> 00:13:26,700 भविष्य, आधुनिक तत्वों की तरह है कि तत्व हैं भीतर समाहित कर रहे हैं 276 00:13:26,700 --> 00:13:34,520 इतने गहरे बैठ मैं वास्तव में होगा आप एक छोटा सा CS50.5 सिखाने के लिए है। 277 00:13:34,520 --> 00:13:37,305 >> हम और अधिक एक छोटा सा सीखने के लिए है आदेश में सुविधाओं में से कुछ के बारे में 278 00:13:37,305 --> 00:13:40,180 वास्तव में क्या हो रहा है समझने के लिए और इसलिए आप कोड पर देख सकते हैं कि पर 279 00:13:40,180 --> 00:13:42,450 और पूरी तरह खो नहीं लग रहा। 280 00:13:42,450 --> 00:13:44,820 और तुम मेरा क्या मतलब देखेंगे बस एक मिनट में उस ने। 281 00:13:44,820 --> 00:13:47,830 इस बात का ठीक है, तो let's-- पर्याप्त सैद्धांतिक सामान की तरह। 282 00:13:47,830 --> 00:13:52,450 वास्तव में लग रहे हैं हमारे बहुत पहले तेजी से कार्यक्रम। 283 00:13:52,450 --> 00:13:53,590 यह कोड की एक पंक्ति है। 284 00:13:53,590 --> 00:13:57,690 रेखा 14 यहीं है, यह प्रिंट एल एन हैलो CS50 कहते हैं। 285 00:13:57,690 --> 00:14:01,160 >> तो चलो कि चीजों की एक जोड़ी नहीं है इस तुलना के बारे में बहुत अलग 286 00:14:01,160 --> 00:14:04,140 तुम हो सकता है कि बातें करने के लिए उदाहरण के लिए, सी से करने के लिए प्रयोग किया जाता है। 287 00:14:04,140 --> 00:14:08,390 उनमें से एक कोई है कि वहाँ है intmain, कोई अनुभाग में शामिल नहीं है, 288 00:14:08,390 --> 00:14:10,790 इस अतिरिक्त सामान में से कोई भी नहीं है। 289 00:14:10,790 --> 00:14:13,790 मानक की तरह शामिल मैं / हे, पुस्तकालयों की तरह 290 00:14:13,790 --> 00:14:16,580 वास्तव में है कि प्रदान भाषा के मानक सुविधाओं, 291 00:14:16,580 --> 00:14:19,180 स्वचालित रूप से के रूप में शामिल किए गए हैं स्विफ्ट मानक पुस्तकालय का हिस्सा 292 00:14:19,180 --> 00:14:20,680 और कहा कि स्वचालित रूप से आयात कर रहे हैं। 293 00:14:20,680 --> 00:14:23,740 तुम सब करने की जरूरत नहीं है मैन्युअल रूप से है कि आयात करते हैं। 294 00:14:23,740 --> 00:14:27,360 >> Intmain क्योंकि अस्तित्व में नहीं है कोड के लिए मुख्य प्रवेश बिंदु 295 00:14:27,360 --> 00:14:29,470 पर वास्तव में है कोड की शुरुआत। 296 00:14:29,470 --> 00:14:32,000 तो आपको लगता है कि किसी भी कोड शुरुआत से शुरू 297 00:14:32,000 --> 00:14:34,940 वास्तव में शुरू में क्रियान्वित किया जाएगा। 298 00:14:34,940 --> 00:14:36,520 तो यह वास्तव में बहुत सरल करता है। 299 00:14:36,520 --> 00:14:38,470 कोई अर्धविराम है कि वहाँ है, यह भी सूचना है। 300 00:14:38,470 --> 00:14:41,040 इस भाषा में कोई अर्धविराम है। 301 00:14:41,040 --> 00:14:43,261 आप एक बयान में डाल दिया एक व्यक्ति लाइन पर 302 00:14:43,261 --> 00:14:45,510 और फिर अगली पंक्ति अन्य बयान का प्रतिनिधित्व करता है। 303 00:14:45,510 --> 00:14:47,420 आप करना चाहते हैं ऑनलाइन mulitiple बयान, 304 00:14:47,420 --> 00:14:49,086 तो आप अर्धविराम से यह अलग है। 305 00:14:49,086 --> 00:14:50,940 लेकिन सबसे अधिक भाग के लिए, अच्छा शैली के लिए, हम कर रहे हैं 306 00:14:50,940 --> 00:14:56,530 के लिए अर्धविराम देखने जा कभी नहीं अलग होने के बयान के उद्देश्यों 307 00:14:56,530 --> 00:14:58,420 तेज में। 308 00:14:58,420 --> 00:14:59,820 तो कैसे यह वास्तव में काम करता है? 309 00:14:59,820 --> 00:15:04,080 खैर बहुत बहुत सी हम जैसे वास्तव में इस संकलन करने के लिए है। 310 00:15:04,080 --> 00:15:10,640 और इसलिए हम का उपयोग करके ऐसा कर सकते हैं तेज ग और फिर 1.swift। 311 00:15:10,640 --> 00:15:13,850 और फिर एक जोड़े के बाद इस संकलन होगा मिनट 312 00:15:13,850 --> 00:15:16,340 और फिर मैं आइटम एक चला सकते हैं। 313 00:15:16,340 --> 00:15:19,691 और यह तुलना में सिर्फ "हैलो CS50 कहेंगे।" 314 00:15:19,691 --> 00:15:20,690 बहुत बढ़िया है, इसलिए हम वहाँ जाते हैं। 315 00:15:20,690 --> 00:15:22,273 हमारी पहली नमस्ते विश्व कार्यक्रम नहीं है। 316 00:15:22,273 --> 00:15:24,790 नंबर दो पर चलते हैं। 317 00:15:24,790 --> 00:15:30,450 >> अब this-- में यह बदल गया है थोड़ा, जबकि आम तौर पर आप क्योंकि 318 00:15:30,450 --> 00:15:34,720 वास्तव में do-- हमेशा आप के लिए क्या है इससे पहले कि आप एक तेज आवेदन संकलन 319 00:15:34,720 --> 00:15:37,180 वास्तव में it-- एक रन महान सुविधाओं की 320 00:15:37,180 --> 00:15:40,230 मैं alluded कि करने से पहले यह था कि तेज वास्तव में प्रकार में इस्तेमाल किया जा सकता है 321 00:15:40,230 --> 00:15:43,390 एक छद्म व्याख्यात्मक विधा की, वहाँ एक दुभाषिया की तरह वास्तव में है। 322 00:15:43,390 --> 00:15:46,690 लेकिन क्या यह करना होगा है वहाँ वास्तव में, एक तेज आवेदन है 323 00:15:46,690 --> 00:15:47,520 आप चला सकते हैं। 324 00:15:47,520 --> 00:15:51,050 >> तो उदाहरण के लिए आप बस प्रकार अगर यहां स्विफ्ट, क्या होगा 325 00:15:51,050 --> 00:15:52,330 यदि आप एक शीघ्र मिल जाएगा। 326 00:15:52,330 --> 00:15:59,040 और अगर आप अपने तेज टाइप कर सकते हैं कोड, नमस्कार, प्रिंट और इसे चलाते हैं। 327 00:15:59,040 --> 00:16:01,867 और यह वास्तव में print-- जाएगा खैर, यह इस मामले में मुद्रित नहीं था 328 00:16:01,867 --> 00:16:04,450 यह केंद्रित करने के लिए मुद्रित क्योंकि बाहर, जो यहां दिखाई नहीं देता है। 329 00:16:04,450 --> 00:16:06,660 लेकिन यह वास्तव में कार्य करने में सक्षम है। 330 00:16:06,660 --> 00:16:09,580 और हां, इस मामले में मैं अभी कर रहा हूँ एक स्क्रिप्ट के रूप में इस का उपयोग करने के लिए जा रहा है। 331 00:16:09,580 --> 00:16:11,259 और मैं वास्तव में वहाँ इस कोड को चला सकते हैं। 332 00:16:11,259 --> 00:16:13,800 इसलिए मैं वास्तव में चलने वाले रास्ता यह थोड़ा अलग होगा 333 00:16:13,800 --> 00:16:15,710 लेकिन तुम सिर्फ एक पल में देखेंगे। 334 00:16:15,710 --> 00:16:18,890 अब, इस मामले में हम क्या जा रहे हैं ऐसा करने के लिए पहली बार एक चर को परिभाषित करने के लिए है। 335 00:16:18,890 --> 00:16:22,160 तो यह है कि हम कैसे परिभाषित है तेज में एक चर, 336 00:16:22,160 --> 00:16:25,900 हम चलो कीवर्ड का उपयोग कर रहा है, पीछा चर के नाम से, 337 00:16:25,900 --> 00:16:29,280 और फिर हम कुछ प्रदान वैकल्पिक रूप से डेटा आरंभ। 338 00:16:29,280 --> 00:16:34,660 इसलिए इस मामले में हम परिभाषित कर रहे हैं नाम कहा जाता है एक निरंतर, 339 00:16:34,660 --> 00:16:37,775 और हम में है कि उपयोग करने के लिए जा रहे हैं हमारे प्रिंट लाइन का उत्पादन 340 00:16:37,775 --> 00:16:39,590 बहुत नीचे, नमस्कार नाम पर। 341 00:16:39,590 --> 00:16:43,260 >> अब, कि बजाय का उपयोग करने के लिए% s नोटिस हम इस बात का नाम encapsulate कर सकते हैं 342 00:16:43,260 --> 00:16:49,960 / में चर () और करने में सक्षम हो इस की सामग्री में जुटना 343 00:16:49,960 --> 00:16:51,790 इस स्ट्रिंग में स्ट्रिंग। 344 00:16:51,790 --> 00:16:56,510 अब सी के विपरीत, स्ट्रिंग एक है तेज में वास्तविक वास्तविक प्रकार। 345 00:16:56,510 --> 00:16:59,240 और तो यह बगल में बैठता है ints और साथ-साथ 346 00:16:59,240 --> 00:17:02,220 बहुत आसानी से दोगुना हो जाता है और स्वाभाविक रूप से तुलना 347 00:17:02,220 --> 00:17:05,450 अन्य में से कुछ को हमने देखा है कि भाषा। 348 00:17:05,450 --> 00:17:07,980 तो यह वास्तव में कार्य करेगा बस आप उम्मीद करेंगे की तरह। 349 00:17:07,980 --> 00:17:10,540 >> मैं 2.swift चला सकते हैं। 350 00:17:10,540 --> 00:17:14,390 और हम मेरा नाम है यह देखना है कि वास्तव में "नमस्ते दान।" में spliced 351 00:17:14,390 --> 00:17:16,050 ठीक है, बहुत बढ़िया। 352 00:17:16,050 --> 00:17:17,485 नंबर तीन पर चल रहा है। 353 00:17:17,485 --> 00:17:19,359 अब यह एक छोटा सा था एक सफेद झूठ है कि मैं 354 00:17:19,359 --> 00:17:23,369 कहा कि हम घोषणा की कि जिस तरह से चर चलो कीवर्ड का उपयोग करने के लिए किया गया था। 355 00:17:23,369 --> 00:17:27,640 आप संभवतः आप कर सकते हैं के रूप में के रूप में कई बार कि क्या करता है, क्योंकि यह बताने का उपयोग करना चाहते हैं 356 00:17:27,640 --> 00:17:29,280 यह एक निरंतर परिभाषित करता है। 357 00:17:29,280 --> 00:17:33,010 और कहा कि यह कर सकते हैं कि तेज बताता है अपने आवेदन की गति का अनुकूलन 358 00:17:33,010 --> 00:17:36,230 यह है कि कोई जानता है कि क्योंकि चर बदलने के लिए नहीं जा रहा है। 359 00:17:36,230 --> 00:17:38,760 >> तो ध्यान का मूल्यांकन आप का उपयोग करने के लिए जा रहे हैं जब 360 00:17:38,760 --> 00:17:41,382 के लिए एक चर इसे बदलने के प्रयोजनों। 361 00:17:41,382 --> 00:17:43,340 और जब आप करने जा रहे हैं सिर्फ एक परिवर्तनीय बनाने 362 00:17:43,340 --> 00:17:47,010 कुछ डेटा पकड़ और वह यह है कि करने के लिए वास्तव में परिवर्तित करने के लिए नहीं जा रहा है। 363 00:17:47,010 --> 00:17:50,150 तो अचल स्थिति की इस अवधारणा को, यह वास्तव में परिवर्तित करने के लिए नहीं जा रहा है 364 00:17:50,150 --> 00:17:53,740 एक महत्वपूर्ण एक के रूप में भी है नीचे तक चर को परिभाषित करने के रूप में। 365 00:17:53,740 --> 00:17:56,870 तो यहाँ हम एक नाम से परिभाषित किया है, नाम है, और इस मामले में 366 00:17:56,870 --> 00:18:02,120 यह उस प्रकार के एक स्थिर है है स्ट्रिंग, और यह दान के बराबर है। 367 00:18:02,120 --> 00:18:05,580 >> पूर्व में जबकि तो संस्करण है, यह infers-- और से "यह" 368 00:18:05,580 --> 00:18:08,220 मैं swift-- तेज मतलब डेटा के प्रकार infers 369 00:18:08,220 --> 00:18:10,850 हम चर में प्रवेश कर लिया है। 370 00:18:10,850 --> 00:18:12,930 इस मामले में, हम स्पष्ट हो सकता है। 371 00:18:12,930 --> 00:18:17,590 इसलिए इस बात का तो नाम देना चर तो, एक पेट के नाम है। 372 00:18:17,590 --> 00:18:21,350 और पेट के बाद हम करते हैं डेटा के प्रकार को निर्दिष्ट करें। 373 00:18:21,350 --> 00:18:24,694 तो अब इसे पूर्णांक नाम है या स्ट्रिंग नाम या ऐसा कुछ। 374 00:18:24,694 --> 00:18:26,860 लेकिन इसके बजाय हम कर रहे हैं, लेबल जाने चाहे या नहीं को परिभाषित 375 00:18:26,860 --> 00:18:29,090 यह लगातार या चर है नाम से पीछा किया, 376 00:18:29,090 --> 00:18:31,870 प्रकार वैकल्पिक रूप से पालन किया। 377 00:18:31,870 --> 00:18:34,730 >> इस मामले में हम परिभाषित कर रहे हैं तो इस नाम का एक स्ट्रिंग है। 378 00:18:34,730 --> 00:18:35,790 हम कह रहे हैं दान है। 379 00:18:35,790 --> 00:18:39,270 और अब मैं एक और चर है, इस मामले में यह लेबल कहा जाता है। 380 00:18:39,270 --> 00:18:42,090 लेकिन यह है कि नोटिस वर कीवर्ड की शुरुआत में लगाए। 381 00:18:42,090 --> 00:18:44,430 वर कीवर्ड साधन इस चर कर सकते हैं कि 382 00:18:44,430 --> 00:18:48,720 में एक बिंदु पर बाद में बदला जा कहीं नीचे कोड में समय, 383 00:18:48,720 --> 00:18:52,480 हम वास्तव में इसे और इसे बदल सकते हैं हमें किसी विशेष त्रुटि नहीं देंगे। 384 00:18:52,480 --> 00:18:56,760 >> हम मानक concatenating कर सकते हैं ऑपरेटर यहाँ प्लस प्रतीक का उपयोग 385 00:18:56,760 --> 00:19:00,130 वास्तव में जोड़ने के लिए हमारे इस स्ट्रिंग में नाम है। 386 00:19:00,130 --> 00:19:02,921 और फिर हम बाहर प्रिंट कर सकते हैं हम सिर्फ एक क्षण पहले देखा था। 387 00:19:02,921 --> 00:19:04,920 अब मान लीजिए कि आप कहते हैं कि एक चर बनाना चाहते हैं 388 00:19:04,920 --> 00:19:06,586 लेकिन आप इसे अभी तक प्रारंभ करने में नहीं करना चाहती। 389 00:19:06,586 --> 00:19:08,590 आपने अभी तक नहीं करना चाहते हैं यह के भीतर किसी भी डेटा डाल दिया। 390 00:19:08,590 --> 00:19:11,760 खैर आपको बताना है डेटा की तेज किस प्रकार का 391 00:19:11,760 --> 00:19:16,430 आप कर सकते हैं इससे पहले होने जा रहा है वास्तव में इसे ठीक तरह से परिभाषित करते हैं। 392 00:19:16,430 --> 00:19:20,360 >> इसलिए इस मामले में हम से परिभाषित किया है जब हमारे पास एक चर बुलाया ग्रेड होने के लिए 393 00:19:20,360 --> 00:19:24,450 क्योंकि, उसके प्रकार के बारे में स्पष्ट यह बस देख अनुमान नहीं कर सकते 394 00:19:24,450 --> 00:19:27,300 initialized डेटा पर आप इसे करने के लिए प्रदान करते हैं। 395 00:19:27,300 --> 00:19:30,050 यह हमें आप अगर एक त्रुटि दे देंगे बस प्रकार वर ग्रेड, उदाहरण के लिए, 396 00:19:30,050 --> 00:19:31,830 इसलिए यह कोई प्रकार है, क्योंकि। 397 00:19:31,830 --> 00:19:33,353 इसलिए ग्रेड = 100। 398 00:19:33,353 --> 00:19:35,790 100 एक पूर्णांक है कि इसलिए, यह उस में बहुत अच्छी तरह से फिट बैठता है। 399 00:19:35,790 --> 00:19:36,998 यह कार्य करने के लिए जारी रहेगा। 400 00:19:36,998 --> 00:19:40,350 401 00:19:40,350 --> 00:19:43,022 हम देख सकते हैं कि कैसे तो हम में इस जुटना कर सकते हैं। 402 00:19:43,022 --> 00:19:44,730 अब तुम हो सकता है परीक्षा, वास्तव में आप अगर 403 00:19:44,730 --> 00:19:48,610 जुटना करना चाहता था एक अन्य पाठ स्ट्रिंग में ग्रेड, 404 00:19:48,610 --> 00:19:52,560 एक और स्ट्रिंग में, कि तुम सिर्फ होगा कि एक ही concatenating ऑपरेटर का उपयोग करें। 405 00:19:52,560 --> 00:19:54,630 और कहा कि आम तौर पर सही होगा। 406 00:19:54,630 --> 00:20:00,540 लेकिन तेज करने के लिए आप की अनुमति नहीं होगी उलझाव से डेटा के प्रकार बदल जाते हैं। 407 00:20:00,540 --> 00:20:03,440 इस मामले में, यह तो रेखा, 25, असफल हो जायेगी 408 00:20:03,440 --> 00:20:06,650 ग्रेड है क्योंकि एक पूर्णांक नहीं है और एक स्ट्रिंग। 409 00:20:06,650 --> 00:20:08,760 और तो प्रकार का सेट एक बेमेल है। 410 00:20:08,760 --> 00:20:11,780 तो आप जब स्पष्ट होना जरूरी आप इस डेटा को बदलना चाहते हैं, 411 00:20:11,780 --> 00:20:14,080 आप इस विवश करना चाहते हैं एक अलग प्रकार में डेटा 412 00:20:14,080 --> 00:20:17,250 और ठीक है, मैं ले जाना चाहते हैं, का कहना है एक पूर्णांक है जो इस ग्रेड, 413 00:20:17,250 --> 00:20:19,050 और एक स्ट्रिंग के लिए इसे बदलना। 414 00:20:19,050 --> 00:20:23,970 >> तो मैं एक पूंजी की स्ट्रिंग के सभी ले प्रकार, आप पूंजीकृत हैं, पर ध्यान देंगे 415 00:20:23,970 --> 00:20:26,280 इंट, डबल, स्ट्रिंग, इतने पर और आगे। 416 00:20:26,280 --> 00:20:28,930 वे सब के सब पूंजीकृत हैं बस चीजों को आसान बनाने के लिए। 417 00:20:28,930 --> 00:20:32,240 और हम भुनाने कहूँगा स्ट्रिंग यह ग्रेड में गुजरती हैं। 418 00:20:32,240 --> 00:20:35,020 और यह एक बनाएगा कि पूर्णांक के बाहर स्ट्रिंग। 419 00:20:35,020 --> 00:20:37,970 और फिर हम जुटना कर सकते हैं दो बहुत ही अच्छी तरह से। 420 00:20:37,970 --> 00:20:40,500 अब तक इस सामान पर कोई सवाल? 421 00:20:40,500 --> 00:20:43,770 सब ठीक है, चलो हल करते हैं के माध्यम से चार नंबर करने के लिए। 422 00:20:43,770 --> 00:20:47,870 >> अब हम कुछ और अधिक उन्नत के बारे में बात करते हैं सरणियों और छोरों संरचनाओं की तरह,। 423 00:20:47,870 --> 00:20:54,920 और स्विफ्ट में सी के विपरीत, सरणियों संकेत द्वारा प्रतिनिधित्व नहीं कर रहे हैं। 424 00:20:54,920 --> 00:20:58,730 तेज में सूचक, वे मौजूद हैं, हालांकि, कहा जाता है 425 00:20:58,730 --> 00:21:02,840 असुरक्षित संकेत की तरह या इस तरह से कुछ इसी तरह के प्रकार, 426 00:21:02,840 --> 00:21:04,950 वे आम तौर पर आप को उजागर नहीं कर रहे हैं। 427 00:21:04,950 --> 00:21:07,300 इसलिए यह बहुत मुश्किल हो जाता है आप में हेरफेर करने के लिए 428 00:21:07,300 --> 00:21:10,020 सीधे अपने कंप्यूटर की स्मृति। 429 00:21:10,020 --> 00:21:11,670 >> तो सरणियों सिर्फ एक डेटा प्रकार के होते हैं। 430 00:21:11,670 --> 00:21:16,830 और वे इस प्रकार का उपयोग कर संदर्भित कर रहे हैं अब मानक वर्ग कोष्ठक अंकन 431 00:21:16,830 --> 00:21:18,280 आप पहले देखा है कि। 432 00:21:18,280 --> 00:21:21,130 लेकिन अगर आप वास्तव में करना चाहते हैं एक चर का एक प्रकार को परिभाषित 433 00:21:21,130 --> 00:21:24,330 कुछ की एक सरणी के रूप में उसके बाद विशेष प्रकार, आप 434 00:21:24,330 --> 00:21:27,150 वर्ग कोष्ठक में उस प्रकार के रख दिया। 435 00:21:27,150 --> 00:21:30,260 तो क्या मैं यहाँ कह रहा हूँ कि है मैंने फोन एक चर पैदा कर रहा हूँ 436 00:21:30,260 --> 00:21:33,930 प्रकार int सरणी के ग्रेड। 437 00:21:33,930 --> 00:21:37,380 और मैं कुछ करने के लिए है कि बराबर स्थापित कर रहा हूँ initialized डेटा, जो इस मामले में 438 00:21:37,380 --> 00:21:42,960 सिर्फ एक है, जो 85, 90, 0, 100 है यहाँ मनमाना ग्रेड का संग्रह। 439 00:21:42,960 --> 00:21:46,480 अब मैं कर सकता था, इस मामले में याद रखना, प्रकार निकालने के लिए, 440 00:21:46,480 --> 00:21:49,580 और यह है कि यह अनुमान करने में सक्षम होगा initialized डेटा पर आधारित है। 441 00:21:49,580 --> 00:21:51,990 लेकिन मुझे लगता है कि अगर हटा दिया इस और मैं बाद में इसे स्थापित करने की जरूरत 442 00:21:51,990 --> 00:21:56,840 तो मुझे यकीन है कि बनाने के लिए होता है मैं वहाँ प्रकार है। 443 00:21:56,840 --> 00:21:58,750 ठीक है, साथ चलते हैं। 444 00:21:58,750 --> 00:22:03,010 इसलिए हम सरणियों can-- एक किस्म हमें प्रदान 445 00:22:03,010 --> 00:22:07,130 कि डॉट अंकन के माध्यम से तरीकों में से आप कम से अब शायद से परिचित हैं। 446 00:22:07,130 --> 00:22:10,360 तो grades.count, उदाहरण के लिए, हमें ठीक संख्या बताता है 447 00:22:10,360 --> 00:22:13,680 कर रहे हैं कि तत्वों की इस सरणी के भीतर निहित। 448 00:22:13,680 --> 00:22:17,260 >> मैं additional-- जोड़ना चाहते हैं अब इस एक var है कि नोटिस 449 00:22:17,260 --> 00:22:20,140 और इस not-- एक चर रहा है , और एक स्थिर नहीं है, जो 450 00:22:20,140 --> 00:22:24,410 मैं सामग्री को बदल सकते हैं कि इसका मतलब है इस सरणी की, मैं इसे करने के लिए वस्तुओं जोड़ सकते हैं। 451 00:22:24,410 --> 00:22:28,870 लेकिन मैं सिर्फ ग्रेड नहीं कह सकता और फिर वर्ग कोष्ठक में 452 00:22:28,870 --> 00:22:33,280 चार, कि हो जाएगा, क्योंकि एक इस मामले में सीमा त्रुटि से बाहर। 453 00:22:33,280 --> 00:22:36,190 मैं वास्तव में बदलना चाहते हैं इस सरणी के आकार, 454 00:22:36,190 --> 00:22:41,140 मैं करने के लिए डॉट संलग्न विधि का उपयोग करने के लिए है इसके बारे में बहुत अंत करने के लिए पर कुछ जोड़ना। 455 00:22:41,140 --> 00:22:46,900 मैं कर सकता है, तथापि, परिवर्तन व्यक्तिगत सूचकांकों। 456 00:22:46,900 --> 00:22:48,920 >> इसलिए मैं ग्रेड इस्तेमाल कर सकते हैं और फिर वर्ग कोष्ठक 457 00:22:48,920 --> 00:22:52,480 शून्य यह पहली सूचकांक में हेरफेर करने और इतने पर, आप सामान्य रूप से उम्मीद करेंगे की तरह। 458 00:22:52,480 --> 00:22:56,530 और मैं वास्तव में करने के लिए ही कर सकते हैं के रूप में अच्छी तरह से है कि डेटा प्राप्त करते हैं। 459 00:22:56,530 --> 00:23:00,420 अब भी प्रकार की एक फैंसी तरीका है के इस ग्रेड प्लस बराबरी कर 460 00:23:00,420 --> 00:23:02,525 और फिर एक और सूचकांक, जो append-- जाएगा 461 00:23:02,525 --> 00:23:04,400 या किसी अन्य index-- नहीं लेकिन एक और सूची जो 462 00:23:04,400 --> 00:23:07,340 उस सूची संलग्न करेंगे ग्रेड के पीछे करने के लिए। 463 00:23:07,340 --> 00:23:09,780 और ग्रेड होगा फिर लगता है कि सभी के होते हैं। 464 00:23:09,780 --> 00:23:13,850 लेकिन यह है कि एक अतिरिक्त बात की तरह है कि मैं सिर्फ मनोरंजन के लिए आपको दिखा रहा हूँ। 465 00:23:13,850 --> 00:23:14,910 >> अब एक पाश के लिए नहीं है। 466 00:23:14,910 --> 00:23:18,970 और इस जहां की शुरुआत है चीजें एक छोटा सा परिवर्तन करने के लिए शुरू करते हैं। 467 00:23:18,970 --> 00:23:22,920 पाश के लिए यह सूचना कैसे सी में छोरों के लिए से अलग 468 00:23:22,920 --> 00:23:26,470 अब मुझे लगता है कि ध्यान दें स्विफ्ट में छोरों के लिए कर सकते हैं 469 00:23:26,470 --> 00:23:30,650 सी में छोरों के लिए की तरह देखने के लिए बनाया जा सकता है लेकिन अधिक उपयोगी निर्माणों की एक बहुत कुछ है 470 00:23:30,650 --> 00:23:37,840 कि अनिवार्य रूप से समाप्त करने की जरूरत वर के लिए है करने के लिए मैं 0 अर्धविराम के बराबर होती है मैं 471 00:23:37,840 --> 00:23:40,340 , कुछ लंबाई की तुलना में कम है इतने पर और बहुत आगे है, है ना? 472 00:23:40,340 --> 00:23:42,940 और इस का निर्माण सिर्फ उनमें से एक है। 473 00:23:42,940 --> 00:23:49,030 >> सूचकांक के लिए, सूचकांक नया है चर, रेंज में इस मामले में। 474 00:23:49,030 --> 00:23:52,730 और मैं क्या कह रहा हूँ कि वहाँ है 0 से सभी तरह अप करने के लिए एक सीमा 475 00:23:52,730 --> 00:23:55,870 लेकिन grades.count सहित नहीं। 476 00:23:55,870 --> 00:23:58,470 तो यह डॉट कम डॉट साइन प्रतिनिधित्व करता है की तुलना 477 00:23:58,470 --> 00:24:05,040 शून्य से शुरू मूल्यों की एक श्रृंखला grades.count अप करने के लिए शून्य से एक के लिए सभी तरह। 478 00:24:05,040 --> 00:24:07,070 एक अलग नहीं है मौजूद है कि ऑपरेटर, 479 00:24:07,070 --> 00:24:13,320 जो जो होता है, डॉट डॉट डॉट है मैं शून्य की सीमा चाहते हैं कि इसका मतलब 480 00:24:13,320 --> 00:24:16,310 ग्रेड के लिए समावेशी गिनती। 481 00:24:16,310 --> 00:24:19,130 >> लेकिन इस मामले में, इन क्योंकि सरणियों हम निश्चित रूप से, शून्य सूचकांक रहे हैं 482 00:24:19,130 --> 00:24:23,290 पर जाने के लिए नहीं करना चाहते ग्रेड की अधिकतम संख्या। 483 00:24:23,290 --> 00:24:26,390 आप कर सकते हैं, जैसा कि मैंने ग्रेड योग कर सकते हैं उम्मीद है, और इस सामान के उत्पादन में सब। 484 00:24:26,390 --> 00:24:29,620 ठीक है, पर चलती है। 485 00:24:29,620 --> 00:24:32,270 अब के कार्यों के बारे में बात करते हैं। 486 00:24:32,270 --> 00:24:35,465 एक समारोह को परिभाषित करने के क्रम में आप दुर्गंध कीवर्ड का उपयोग करें। 487 00:24:35,465 --> 00:24:38,090 और फिर, स्विफ्ट में आप के लिए है प्रकार के साथ बहुत सावधान रहना होगा। 488 00:24:38,090 --> 00:24:41,530 यह पैरामीटर के लिए आप प्रदान परिभाषित करने से, उदाहरण के लिए, 489 00:24:41,530 --> 00:24:45,440 पैरामीटर का नाम और डेटा के तत्कालीन कॉलिन में लिखें 490 00:24:45,440 --> 00:24:47,690 आपको लगता है कि उम्मीद है कि पैरामीटर स्वीकार करने के लिए। 491 00:24:47,690 --> 00:24:50,700 >> इसलिए इस मामले में हम एक है प्रिंट ग्रेड गिनती बुलाया समारोह। 492 00:24:50,700 --> 00:24:54,630 यह gradebook नामक एक चर स्वीकार करता है या बल्कि एक पैरामीटर gradebook बुलाया। 493 00:24:54,630 --> 00:24:59,267 और हम उस gradebook उम्मीद कर रहे हैं पूर्णांकों की एक सरणी होने के लिए। 494 00:24:59,267 --> 00:25:01,350 कि gradebook खाली है, हम एक बात मुद्रित करेंगे। 495 00:25:01,350 --> 00:25:06,090 वरना हम संख्या बाहर प्रिंट होगा यह वास्तव में है कि ग्रेड की। 496 00:25:06,090 --> 00:25:09,470 >> अब हम वापस जाने के लिए चाहते हैं कुछ मूल्य है, तो रास्ता 497 00:25:09,470 --> 00:25:14,595 हम इस परिभाषा है संशोधित वास्तव में यह तीर कीवर्ड का उपयोग करने के लिए, 498 00:25:14,595 --> 00:25:16,870 या यह तीर वाचक उपयोग करने के लिए। 499 00:25:16,870 --> 00:25:19,440 यहाँ तो हम परिभाषित करने के लिए जा रहे हैं एक समारोह के औसत बुलाया। 500 00:25:19,440 --> 00:25:21,940 हम नंबरों की सूची को स्वीकार करने के लिए जा रहे हैं। 501 00:25:21,940 --> 00:25:25,430 और हम एक वापसी करने जा रहे हैं डबल, जो उम्मीद करेंगे 502 00:25:25,430 --> 00:25:31,270 इस सरणी का औसत हो। 503 00:25:31,270 --> 00:25:34,570 और क्रम में, आदेश में ऐसा करने के लिए वास्तव में यह औसत की गणना करने के लिए, 504 00:25:34,570 --> 00:25:38,651 हम एक राशि ले जाएगा और हम करेंगे बेशक वस्तुओं के सभी को योग 505 00:25:38,651 --> 00:25:39,400 इस सरणी के भीतर। 506 00:25:39,400 --> 00:25:41,480 >> एक नया है कि वहाँ नोटिस पाश के लिए यहां की शैली। 507 00:25:41,480 --> 00:25:45,450 हम इस बारे में स्पष्ट होना जरूरी नहीं है हर एक तत्व पर iterating, 508 00:25:45,450 --> 00:25:48,280 लेकिन हम बजाय के लिए कह सकते हैं ग्रेड और gradebook, अर्थ 509 00:25:48,280 --> 00:25:50,930 हर एक के लिए है कि हम इस में है कि आइटम, 510 00:25:50,930 --> 00:25:53,482 इस में है कि आइटम प्रदान करते हैं चर बुलाया ग्रेड। 511 00:25:53,482 --> 00:25:54,940 और मैं इसके साथ कुछ करना चाहते हैं। 512 00:25:54,940 --> 00:26:00,350 इसलिए मैं इस डेटा के सभी योग करने के लिए जा रहा हूँ और वास्तव में डबल विभाजन वापसी। 513 00:26:00,350 --> 00:26:04,436 >> अब फिर से यहाँ है नोटिस स्विफ्ट में पूर्णांक विभाजन की अवधारणा। 514 00:26:04,436 --> 00:26:06,810 आप विभाजन को दोगुना करना चाहते हैं आप दशमलव चाहते हैं, क्योंकि 515 00:26:06,810 --> 00:26:09,460 तो आप स्पष्ट होना है, नहीं बस के बारे में एक तरफ, 516 00:26:09,460 --> 00:26:14,030 यह आपको अनुमति देने के लिए नहीं जा रहा है क्योंकि इस के दोनों तरफ डेटा विवश करना, 517 00:26:14,030 --> 00:26:17,030 आप वास्तव में कोर्स करने के लिए है डबल्स में दोनों पक्षों 518 00:26:17,030 --> 00:26:19,440 इतना है कि आप कर रहे हैं बहुत यकीन है कि बनाने के बारे में स्पष्ट 519 00:26:19,440 --> 00:26:23,370 कि आप डबल विभाजन कर रहे हैं। 520 00:26:23,370 --> 00:26:26,150 >> पर चलते हैं। 521 00:26:26,150 --> 00:26:31,150 मैं वास्तव में accept-- करना चाहते हैं तो इसलिए इस विशेष उदाहरण में, 522 00:26:31,150 --> 00:26:34,260 यह अभी भी एक आदेश है लाइन आधारित अनुप्रयोग। 523 00:26:34,260 --> 00:26:37,920 और हम में से कुछ को देखने के लिए शुरू कर रहे हैं युवा भाषा की सीमाओं 524 00:26:37,920 --> 00:26:41,850 उस में हालांकि हम कर सकते हैं का उपयोग करके तर्क का उपयोग 525 00:26:41,850 --> 00:26:44,940 इस process.arguments, यह है अभी भी जरूरी नहीं कि साफ 526 00:26:44,940 --> 00:26:46,200 हमने कभी देखा है कि बात। 527 00:26:46,200 --> 00:26:49,142 लेकिन मूल रूप से मैं आपको प्रोत्साहित करते हैं एक तरह से इस कोड को देखने के लिए 528 00:26:49,142 --> 00:26:51,100 और यह पता लगाने की कोशिश वास्तव में क्या चल रहा है। 529 00:26:51,100 --> 00:26:55,030 >> मूलतः यह क्या हो रहा है यह है कि हम तर्क की एक सूची ले जा रहे हैं 530 00:26:55,030 --> 00:26:57,610 और उन्हें मजबूर कर रहे थे पूर्णांकों, और फिर हम कर रहे हैं 531 00:26:57,610 --> 00:27:03,620 मुद्रित करने के लिए एक रास्ते के रूप में उपयोग करने के लिए जा रहा हमारे ग्रेड के सभी का औसत बाहर। 532 00:27:03,620 --> 00:27:06,150 533 00:27:06,150 --> 00:27:07,350 चलती हे। 534 00:27:07,350 --> 00:27:11,190 अब data-- की एक अन्य प्रकार है एक और डेटा सरणियों के बजाय टाइप 535 00:27:11,190 --> 00:27:14,940 बहुत हैं, जो कहा जाता है, शब्दकोशों, टेबल या हैश नक्शे हैश के समान 536 00:27:14,940 --> 00:27:18,560 और भी करने के लिए इसी तरह की हैं पीएचपी का साहचर्य arrays। 537 00:27:18,560 --> 00:27:20,770 इसलिए वे धारणा है कुंजी और मूल्यों की। 538 00:27:20,770 --> 00:27:23,780 >> और वे भी साथ में परिभाषित कर रहे हैं इस वर्ग कोष्ठक अंकन, 539 00:27:23,780 --> 00:27:26,750 लेकिन फर्क है शब्दकोशों है कि 540 00:27:26,750 --> 00:27:29,370 वर्ग कोष्ठक, एक पेट के अंदर की। 541 00:27:29,370 --> 00:27:33,850 और पेट के डेटा को अलग करता है उस कुंजी और मूल्य है टाइप करें। 542 00:27:33,850 --> 00:27:38,540 तो इस मामले में, मैं पैदा करने के लिए जा रहा हूँ एक शब्दकोश कुछ ग्रेड स्वीकार करने के लिए। 543 00:27:38,540 --> 00:27:44,200 और यह होने जा रहा है प्रकार स्ट्रिंग की: पूर्णांक, 544 00:27:44,200 --> 00:27:46,940 जिसका मतलब है कि सभी चाबियाँ, तार होने जा रहे हैं 545 00:27:46,940 --> 00:27:53,080 और उन के मूल्यों के सभी चाबियाँ पूर्णांकों होने जा रहे हैं। 546 00:27:53,080 --> 00:27:55,780 >> क्या इसका मतलब यह है कि मैं कर सकता है फिर विशिष्ट डेटा को संदर्भित 547 00:27:55,780 --> 00:28:00,490 मैं नहीं बल्कि उन कुंजियों का उपयोग करना चाहते हैं कि मैं जैसे संख्यात्मक सूचकांकों का उपयोग कर से 548 00:28:00,490 --> 00:28:04,350 एक मानक सरणी के लिए होगा। 549 00:28:04,350 --> 00:28:06,470 अब वहाँ है, चलो देखते हैं एक महत्वपूर्ण बात यह है कि 550 00:28:06,470 --> 00:28:10,790 मैं के बारे में भी उल्लेख करना चाहता हूँ कि कोड के इस विशेष अनुक्रम। 551 00:28:10,790 --> 00:28:12,910 और कहा कि है कि वहाँ है डेटा की एक अन्य प्रकार, 552 00:28:12,910 --> 00:28:15,580 या यों कहें कि इस वहाँ है कि डेटा के विचार 553 00:28:15,580 --> 00:28:18,340 स्विफ्ट के भीतर निहित optionals बुलाया। 554 00:28:18,340 --> 00:28:21,270 >> और क्या optionals इसका मतलब है यह तथ्य यह मानता है कि 555 00:28:21,270 --> 00:28:27,500 कि कभी कभी आप के लिए नहीं जा रहे हैं आप वास्तव में उम्मीद है कि डेटा मिलता है। 556 00:28:27,500 --> 00:28:31,400 कि चलो is-- द्वारा और इसलिए मैं क्या मतलब कोड का यह क्रम पर एक नज़र रखना 557 00:28:31,400 --> 00:28:38,910 की सब से अधिक जो दोहराता इस कोड को पारित कर दिया गया है कि तर्क 558 00:28:38,910 --> 00:28:43,460 और, उन्हें बदलने की कोशिश करता है की कोशिश करता है तार की एक किस्म में विभाजित करने के लिए, 559 00:28:43,460 --> 00:28:47,310 यह एक बहुत ही स्वीकार करता है, क्योंकि तर्क के विशेष प्रकार के। 560 00:28:47,310 --> 00:28:51,530 और फिर यह ज़बरदस्ती करने की कोशिश की जा रही है संख्या का प्रतिनिधित्व करते हैं कि तार 561 00:28:51,530 --> 00:28:55,460 ग्रेड रहे हैं कि पूर्णांकों में, मैं तो गणना कर सकते हैं कि। 562 00:28:55,460 --> 00:28:58,230 >> तो बुनियादी तौर पर मैं जा रहा हूँ इस विभाजन समारोह का उपयोग करने वाले 563 00:28:58,230 --> 00:29:00,080 भीतर मौजूद है स्विफ्ट मानक पुस्तकालय। 564 00:29:00,080 --> 00:29:03,720 मैं इस बारे में पारित करने के लिए जा रहा हूँ मैं विभाजित करना चाहते हैं कि स्ट्रिंग। 565 00:29:03,720 --> 00:29:06,980 और फिर इस प्रयोग में कायरता वाक्य रचना की तरह है, जो 566 00:29:06,980 --> 00:29:09,670 हम हूँ अगर मुझे नहीं पता हम करने के लिए मिलता है, लेकिन हो सकता है 567 00:29:09,670 --> 00:29:14,320 वास्तव में सटीक निर्दिष्ट करेगा हम कम से विभाजित करना चाहते हैं कि चरित्र। 568 00:29:14,320 --> 00:29:16,030 तो क्या यह वास्तव में की तरह दिखता है? 569 00:29:16,030 --> 00:29:18,740 पर एक नज़र रखना वास्तव में इस कोड चल रहा है। 570 00:29:18,740 --> 00:29:22,000 >> उदाहरण के लिए तो, चलो मेरे पास कहने दो एक प्रश्नोत्तरी और मैं उस पर 50 मिला है। 571 00:29:22,000 --> 00:29:23,960 और मैं एक PSETs है और मैं उस पर एक सौ मिला है। 572 00:29:23,960 --> 00:29:29,180 और मैं एक और वहाँ got-- प्रश्नोत्तरी और मैं उस पर एक 40 मिला है। 573 00:29:29,180 --> 00:29:33,520 मैं हिट दर्ज करें, और अंत में क्या क्या होगा यह क्या कर रहा है यह है कि 574 00:29:33,520 --> 00:29:37,730 इन मापदंडों ले जा रहा है, बंटवारे इन कोलन में तार, 575 00:29:37,730 --> 00:29:41,390 है कि वहाँ पहचानने हर एक में दो तत्वों, 576 00:29:41,390 --> 00:29:43,700 और यह अनिवार्य है प्रत्येक का ट्रैक रखने। 577 00:29:43,700 --> 00:29:49,226 >> इसलिए मैं अपने शब्दकोश में जिसका एक प्रश्नोत्तरी है, मूल्य, संख्या 50 द्वारा प्रतिनिधित्व किया है 578 00:29:49,226 --> 00:29:54,290 मैं 100 के मूल्य है कि एक PSET है और 40 के एक मूल्य है, जो एक प्रश्नोत्तरी एक। 579 00:29:54,290 --> 00:29:57,400 फिर बाद में कोड मैं में वास्तव में उन मूल्यों का औसत 580 00:29:57,400 --> 00:30:01,160 और की चाबी के सभी सूची उस विशेष शब्दकोश। 581 00:30:01,160 --> 00:30:03,217 लेकिन यह महत्वपूर्ण है आप देख सकते हैं कि इतने 582 00:30:03,217 --> 00:30:06,050 क्या हो रहा है, वह यह है कि क्या हम क्या करना चाहते हैं इस स्ट्रिंग ले रहा है 583 00:30:06,050 --> 00:30:11,450 और, इस चरित्र पर विभाजित हम इस विभाजन के साथ फिर से कर सकते हैं जो 584 00:30:11,450 --> 00:30:15,690 इस तरह का उपयोग करते हुए समारोह यहां मौजूद है कि दिलचस्प सिंटेक्स। 585 00:30:15,690 --> 00:30:17,880 >> अभी के लिए यह ठीक है कि मान। 586 00:30:17,880 --> 00:30:19,980 हम इस पर अधिक गौर करेंगे बस थोड़ी देर में। 587 00:30:19,980 --> 00:30:23,230 लेकिन अब एक दिलचस्प नहीं है पहलू यह है कि हम वास्तव में 588 00:30:23,230 --> 00:30:27,250 इस कन्वर्ट करने के लिए कोशिश करना चाहता हूँ एक पूर्णांक में स्ट्रिंग। 589 00:30:27,250 --> 00:30:29,720 लेकिन अन्य भाषाओं में क्या हो सकता है 590 00:30:29,720 --> 00:30:33,440 हम शायद कोशिश करेगा कि यह करना है और या तो वापस पाने के लिए 591 00:30:33,440 --> 00:30:36,185 प्रहरी के कुछ प्रकार नकारात्मक एक तरह मूल्य 592 00:30:36,185 --> 00:30:39,420 या शायद एक अशक्त या ऐसा कुछ। 593 00:30:39,420 --> 00:30:41,070 या हो सकता है कि यह सिर्फ एक त्रुटि के कारण होता है। 594 00:30:41,070 --> 00:30:42,820 और हम करना होगा तो उस त्रुटि को पकड़ने 595 00:30:42,820 --> 00:30:44,820 और फिर ऐसा करने की कोशिश कुछ तथ्य पर आधारित 596 00:30:44,820 --> 00:30:48,280 इस रूपांतरण है कि एक पूर्णांक करने में विफल रहा। 597 00:30:48,280 --> 00:30:50,460 यही कारण है कि जहां इस विचार है optionals के अंदर आता है। 598 00:30:50,460 --> 00:30:56,120 आप वास्तव में एक डेटा प्रकार बना सकते हैं एक पूर्णांक प्रश्न चिह्न, उदाहरण के लिए है। 599 00:30:56,120 --> 00:30:59,140 600 00:30:59,140 --> 00:31:01,910 यही कारण है कि इस पूर्णांक मतलब यह है कि वास्तव में, वैकल्पिक है। 601 00:31:01,910 --> 00:31:05,980 और क्या होगा यह हो सकता है एक पूर्णांक होते हैं, या यह नहीं हो सकता है। 602 00:31:05,980 --> 00:31:10,650 यह वास्तव में, यह दूसरी हो सकती है विचार, पूरी तरह Nill बुलाया। 603 00:31:10,650 --> 00:31:14,900 जिसमें कि मतलब है कि वहाँ जो भी इस में कोई मूल्य नहीं है। 604 00:31:14,900 --> 00:31:16,810 यह भी शून्य नहीं है अभी कोई मूल्य नहीं है। 605 00:31:16,810 --> 00:31:18,790 प्रतिनिधित्व बिल्कुल कोई मूल्य नहीं है। 606 00:31:18,790 --> 00:31:21,650 >> और कहा कि इस लाइन 71 क्या कर रहा है है। 607 00:31:21,650 --> 00:31:25,990 यह है कि मैं कह रहा है कि एक मूल्य निर्धारित करने की कोशिश करना चाहते हैं, 608 00:31:25,990 --> 00:31:31,790 के बराबर ग्रेड नामक एक चर, एक पूर्णांक में इस स्ट्रिंग के रूपांतरण। 609 00:31:31,790 --> 00:31:34,010 इसलिए मैं इस स्ट्रिंग ले लिया है, यह पहला घटक है, 610 00:31:34,010 --> 00:31:37,680 या बल्कि दूसरे घटक है, इस वजह से 611 00:31:37,680 --> 00:31:40,770 शून्य से, अनुक्रमित है मैं विभाजित कर दिया है कि स्ट्रिंग। 612 00:31:40,770 --> 00:31:42,930 और मैं कनवर्ट करना चाहते हैं एक पूर्णांक के लिए कि। 613 00:31:42,930 --> 00:31:46,730 लेकिन यह हमेशा आगे नहीं बढ़ सकता है आम तौर पर, क्योंकि कल्पना 614 00:31:46,730 --> 00:31:50,710 प्रकार के बजाय, क्या होगा अगर एक नंबर, मैं asdf जैसे कोर्स के प्रकार। 615 00:31:50,710 --> 00:31:51,534 >> यह विफल करने के लिए जा रहा है। 616 00:31:51,534 --> 00:31:54,200 यह वास्तव में होना करने के लिए नहीं जा रहा है एक पूर्णांक के लिए कि परिवर्तित करने में सक्षम 617 00:31:54,200 --> 00:31:55,510 मैं उम्मीद करेंगे। 618 00:31:55,510 --> 00:31:58,660 तो बजाय बंद किक से किसी त्रुटि के कुछ प्रकार, 619 00:31:58,660 --> 00:32:01,210 हम एक वैकल्पिक का यह विचार है। 620 00:32:01,210 --> 00:32:04,240 और उस का उपयोग कर इसका मतलब है कि मैं कह सकता हूँ कि इस प्रश्न चिह्न, 621 00:32:04,240 --> 00:32:09,100 ठीक है, यह मैं ले जा सकते हैं कि संभव है यह, एक पूर्णांक में परिवर्तित 622 00:32:09,100 --> 00:32:12,630 और एक चर में डाल दिया, जो भी एक पूर्णांक किया जाएगा। 623 00:32:12,630 --> 00:32:15,420 यदि हां, तो इसका मतलब है कि इस सफल रहा था कि 624 00:32:15,420 --> 00:32:18,720 और के इस पहले भाग ब्लॉक जारी रख सकते हैं। 625 00:32:18,720 --> 00:32:21,040 >> अन्यथा, यह विफल रहा है। 626 00:32:21,040 --> 00:32:25,840 Grade-- में कोई मूल्य नहीं है या बल्कि मौजूदा में कोई मूल्य नहीं है, 627 00:32:25,840 --> 00:32:30,220 और मैं वास्तव में करने के लिए प्रयास करने के लिए है इस त्रुटि स्थिति को संभाल। 628 00:32:30,220 --> 00:32:33,340 आप यह देखने के लिए जा रहे हैं प्रश्न चिह्न सभी समय 629 00:32:33,340 --> 00:32:35,990 स्विफ्ट में और स्विफ्ट के लिए उदाहरण कोड में। 630 00:32:35,990 --> 00:32:40,980 और वास्तव में Nill ऑपरेटर, इस तरह प्रश्न चिह्न का, optionals हिस्सा है, 631 00:32:40,980 --> 00:32:45,057 एक शायद होने जा रहा है अधिक कठिन चीजों में से 632 00:32:45,057 --> 00:32:47,640 की तरह चारों ओर अपने सिर पर लपेट आप वास्तव में इसे साथ काम करते हैं। 633 00:32:47,640 --> 00:32:48,490 >> अब यह समझ कर सकता है। 634 00:32:48,490 --> 00:32:50,760 और वास्तव में, मैं जब था इस के लिए नमूना कोड लिखने, 635 00:32:50,760 --> 00:32:52,780 निश्चित रूप से मैं समझ गया क्या चल रहा था 636 00:32:52,780 --> 00:32:55,570 लेकिन अभी तक मुझे पकड़ा आश्चर्य की बात तो हर बार 637 00:32:55,570 --> 00:32:58,370 मुझे लगता है कि मिल जाएगा जब कुछ डेटा वास्तव में था 638 00:32:58,370 --> 00:33:04,024 एक शून्य संस्करण, एक वैकल्पिक संस्करण डेटा की मैं उम्मीद कर रहा था कि। 639 00:33:04,024 --> 00:33:06,190 तो बस एहसास है कि आप अगर एक वैकल्पिक संस्करण है 640 00:33:06,190 --> 00:33:09,360 आपको लगता है कि अनपैक करने के लिए है इस बॉक्स से डेटा। 641 00:33:09,360 --> 00:33:15,870 >> तो यह I-- आप अगर सोच भी तरह तरह की है एक बॉक्स है और यह कुछ होता है। 642 00:33:15,870 --> 00:33:18,490 और तुम क्या करने की जरूरत सवाल पूछने के लिए है, 643 00:33:18,490 --> 00:33:22,800 यह संभव है कि वास्तव में इस बॉक्स मैं देख रहा हूँ कि डेटा में शामिल है? 644 00:33:22,800 --> 00:33:28,180 यदि हां, तो उस डेटा को बाहर खींचने के लिए और मौजूदा इस चर में डाल दिया। 645 00:33:28,180 --> 00:33:32,080 यदि नहीं, तो मैं बस करने के लिए है इस बॉक्स की सामग्री उपेक्षा 646 00:33:32,080 --> 00:33:34,310 कुल मिलाकर यह क्योंकि सचमुच कुछ भी नहीं होता है। 647 00:33:34,310 --> 00:33:36,880 648 00:33:36,880 --> 00:33:40,400 >> इस पर कोई सवाल? 649 00:33:40,400 --> 00:33:44,430 ठीक है, चलो इस से दूर चलते हैं कमांड लाइन आधारित बात की तरह 650 00:33:44,430 --> 00:33:47,610 और कम से तलाश शुरू प्रौद्योगिकी के कुछ 651 00:33:47,610 --> 00:33:53,060 Xcode के लिए हमें करने के लिए प्रदान करता है कि खेल के मैदान के रूप में। 652 00:33:53,060 --> 00:33:56,669 इसलिए का एक बहुत कुछ है यहां स्विफ्ट के साथ क्षमता। 653 00:33:56,669 --> 00:33:59,210 और तुम Xcode और इसे खोलने अगर आप क्या करना चाहते हैं आप से पूछता है, 654 00:33:59,210 --> 00:34:01,340 आप खेल के मैदान खोल सकते हैं और बस के चारों ओर खेलने 655 00:34:01,340 --> 00:34:06,200 विभिन्न संरचनाओं के बहुत से भाषा की और पहलुओं 656 00:34:06,200 --> 00:34:11,800 आप भी छू शुरू होने से पहले iOS के एसडीके या मैक एसडीके। 657 00:34:11,800 --> 00:34:15,670 >> तो यह मामला है, मैं have-- हम कहते हैं कि मैं एक अपेक्षाकृत काल्पनिक उदाहरण है 658 00:34:15,670 --> 00:34:18,460 यहाँ, लेकिन मेरे साथ के रूप में हम की तरह सहन के इस उदाहरण के माध्यम से काम करते हैं। 659 00:34:18,460 --> 00:34:22,639 हम एक बहुत कुछ करना है कि हम कहते हैं कि एक निश्चित मूल्य के साथ exponents की, 660 00:34:22,639 --> 00:34:26,397 जैसे हम हम करने की आवश्यकता के लिए जा रहे हैं पता है कि उदाहरण के लिए, वर्ग शक्तियों का एक बहुत कुछ है। 661 00:34:26,397 --> 00:34:28,980 इसलिए हम कुछ मूल्य लेने के लिए जा रहे हैं एक्स, हम यह वर्ग के लिए जा रहे हैं, 662 00:34:28,980 --> 00:34:30,540 हम कुछ मूल्य लेने के लिए जा रहे हैं Y और हम यह वर्ग के लिए जा रहे हैं। 663 00:34:30,540 --> 00:34:31,780 इतने पर और आगे। 664 00:34:31,780 --> 00:34:35,549 >> अब हम वास्तव में सिर्फ एक बना सकता है इस के लिए 2 समारोह की शक्ति, है ना? 665 00:34:35,549 --> 00:34:37,090 इसलिए हम दो समारोह की एक शक्ति का निर्माण करेंगे। 666 00:34:37,090 --> 00:34:38,600 हम एक डबल को स्वीकार करेंगे। 667 00:34:38,600 --> 00:34:41,489 हम output-- देंगे या हम करेंगे एक डबल प्रकार वापसी। 668 00:34:41,489 --> 00:34:46,159 हम इस परिणाम को ले जाऊँगा और फिर दो बार के लिए 669 00:34:46,159 --> 00:34:52,040 हम वास्तव में परिणाम है, क्या ले जो एक की कीमत के लिए प्रारंभ किया गया था, 670 00:34:52,040 --> 00:34:53,090 और एक्स से गुणा करें। 671 00:34:53,090 --> 00:34:56,540 तो संक्षेप में हम यहाँ एक्स टाइम्स एक्स है। 672 00:34:56,540 --> 00:35:01,860 >> और यदि ऐसा है तो मैं के रूप में हम कर सकते हैं, तो कर सकते हैं , 2 की, भागो शक्ति इस लेने की उम्मीद है, 673 00:35:01,860 --> 00:35:03,680 यह करने के लिए उपलब्ध कराने के कुछ डेटा, मैं 2.0 पसंद है। 674 00:35:03,680 --> 00:35:05,756 और हम यहाँ 4.0 परिणाम देखने को मिलता है। 675 00:35:05,756 --> 00:35:09,200 3.2 और हम पर दो की शक्ति भागो हमारे परिणाम, 10.24 देखने को मिलता है। 676 00:35:09,200 --> 00:35:10,840 अब तक तो अच्छा, ठीक है? 677 00:35:10,840 --> 00:35:12,070 अब हम ठीक है, ठीक है, सोच रहे हैं। 678 00:35:12,070 --> 00:35:15,530 अब मैं वास्तव में करने की जरूरत है तीन की शक्तियों का एक बहुत कुछ है। 679 00:35:15,530 --> 00:35:19,180 इसलिए मैं इस कोड के सभी कॉपी पेस्ट कर देंगे, से समारोह का नाम परिवर्तित 680 00:35:19,180 --> 00:35:24,440 बिजली की 3, और सब कुछ करने के लिए 2 की शक्ति इस मान के अलावा एक ही हो जाएगा 681 00:35:24,440 --> 00:35:26,740 यहाँ, इस रेंज, 1 ... 2। 682 00:35:26,740 --> 00:35:29,590 >> तो बजाय दोहरा से इस लूप दो बार, 683 00:35:29,590 --> 00:35:31,880 मैं इस लूप तीन बार दोहराना चाहते हैं। 684 00:35:31,880 --> 00:35:36,330 तो मैं बस से उस मूल्य को बदलने एक 3-- करने के लिए है या नहीं बल्कि 2-3। 685 00:35:36,330 --> 00:35:39,230 तो फिर, एक ही कोड, कि केवल परिवर्तन है। 686 00:35:39,230 --> 00:35:40,080 अब यह भी काम करता है। 687 00:35:40,080 --> 00:35:43,860 दो में से कुछ के मूल्य में उपलब्ध कराई गई तीन की शक्ति। 688 00:35:43,860 --> 00:35:44,420 हम 8 मिलता है। 689 00:35:44,420 --> 00:35:45,370 तो दो घन। 690 00:35:45,370 --> 00:35:48,060 और 3.2 घन 32.768 है। 691 00:35:48,060 --> 00:35:50,597 और अब तक तो अच्छा है, है ना? 692 00:35:50,597 --> 00:35:52,930 लेकिन उम्मीद है कि यह एक छोटी सी है आप के लिए एक लाल झंडा के सा 693 00:35:52,930 --> 00:35:55,530 उस में हम अब है कोड के कुछ दोहराव 694 00:35:55,530 --> 00:35:58,800 कुछ बहुत ही मामूली लिए छोड़कर अगले करने के लिए एक से बदल जाते हैं। 695 00:35:58,800 --> 00:36:02,170 तो वहाँ कोई रास्ता है कि हम सरल करने के लिए सक्षम हो सकता है 696 00:36:02,170 --> 00:36:06,080 इस समस्या है, जहां हम वास्तव में कर सकते हैं, चलाते समय पर, कुछ बाहर आंकड़ा, 697 00:36:06,080 --> 00:36:11,320 हमें करने के लिए है कि कुछ समारोह में प्रदान ठीक है कि हम चाहते की शक्ति। 698 00:36:11,320 --> 00:36:13,960 >> और के इस विचार नहीं है सच है, जो closures, वास्तव में 699 00:36:13,960 --> 00:36:18,180 स्विफ्ट के संदर्भ में महत्वपूर्ण है, और कई अन्य भाषाओं में भी। 700 00:36:18,180 --> 00:36:21,580 लेकिन शायद आप देखेंगे यह स्विफ्ट में तो और अधिक इस्तेमाल किया 701 00:36:21,580 --> 00:36:23,650 यह एम्बेडेड है क्योंकि भाषा के भीतर 702 00:36:23,650 --> 00:36:28,280 आप अन्य में से होगा यह भी आधुनिक भाषाओं। 703 00:36:28,280 --> 00:36:31,140 एक बंद करने के विचार बहुत यह वह जगह है, है कि हम उस 704 00:36:31,140 --> 00:36:35,430 के लिए होती है कि एक समारोह हो सकता है एक सामान्य समारोह में, एक सामान्य शक्ति हो 705 00:36:35,430 --> 00:36:36,860 समारोह का। 706 00:36:36,860 --> 00:36:41,010 >> और इस समारोह को स्वीकार करने के लिए जा रहा है इस प्रतिपादक है कि हम वास्तव में 707 00:36:41,010 --> 00:36:42,990 बनाना चाहते हैं। 708 00:36:42,990 --> 00:36:46,550 तो उदाहरण के लिए, बहुत पहले उदाहरण के लिए, हम 2 की शक्ति चाहता था। 709 00:36:46,550 --> 00:36:50,050 इसलिए हम की शक्ति प्रदान करेगा और फिर कोष्ठकों 2 में। 710 00:36:50,050 --> 00:36:52,490 और अब क्या नोटिस यह वास्तव में वापस आती है। 711 00:36:52,490 --> 00:36:57,680 यह एक प्राइमर का एक इनपुट लेता है एक पूर्णांक है कि कहा जाता है, वाई, 712 00:36:57,680 --> 00:37:03,090 और यह देख रहे हैं इस पागल रिटर्न parentheses-- कोष्ठक में बात 713 00:37:03,090 --> 00:37:06,230 डबल और फिर डबल तीर। 714 00:37:06,230 --> 00:37:10,270 >> क्या इसका मतलब यह है कि मैं कर रहा हूँ वह यह है कि एक समारोह में लौटने के लिए जा रहा है। 715 00:37:10,270 --> 00:37:13,510 मैं वापस नहीं कर रहा हूँ डेटा की एक अन्य प्रकार है, मैं कर रहा हूँ 716 00:37:13,510 --> 00:37:16,350 वास्तव में एक समारोह में लौटने वह यह है कि, इस पैरामीटर है 717 00:37:16,350 --> 00:37:22,680 स्वीकार करता इनपुट के रूप में एक डबल और वापसी मान के रूप में एक डबल outputs। 718 00:37:22,680 --> 00:37:29,750 और एक परिणाम के रूप में, क्योंकि अब मैं बुलाया है की शक्ति, वाई के लिए कुछ मूल्य में गुजर रहा है, 719 00:37:29,750 --> 00:37:32,280 और मुझे लगता है कि यह अन्य पैदा कर रहा हूँ है कि वहाँ function-- नोटिस 720 00:37:32,280 --> 00:37:35,980 बनाया जा रहा है कि एक अन्य समारोह this-- के अंदर मैं क्या कर रहा हूँ 721 00:37:35,980 --> 00:37:37,830 मैं तो बदल सकते है कि मूल्य, कि एक 722 00:37:37,830 --> 00:37:41,010 मैं बदल गया था कि मूल्य 2-3, अब मैं यह y बनाते हैं। 723 00:37:41,010 --> 00:37:42,500 >> और यह बनी हुई है। 724 00:37:42,500 --> 00:37:48,530 इसलिए मैं शक्ति कहते हैं कि हर बार की, अनिवार्य रूप से क्या होता है 725 00:37:48,530 --> 00:37:51,030 मैं एक समारोह लौटे मिलता है। 726 00:37:51,030 --> 00:37:54,310 मैं परिभाषित किया है कि यहाँ नोटिस एक नया चर वर्ग कहा जाता है। 727 00:37:54,310 --> 00:37:59,340 मैं, की शक्ति के लिए यह बराबर निर्धारित किया है की शक्ति के लिए इस मान 2 प्रदान की है। 728 00:37:59,340 --> 00:38:02,030 और क्या इस लौटे समारोह है। 729 00:38:02,030 --> 00:38:05,970 इसलिए वर्ग, चर वर्ग, प्रकार समारोह का अब है 730 00:38:05,970 --> 00:38:11,390 कि this-- उफ़, ऊपर स्क्रॉल है एक इस हस्ताक्षर है कि थोड़ा bit--, 731 00:38:11,390 --> 00:38:15,560 एक डबल एक डबल और उत्पादन में स्वीकार करते हैं। 732 00:38:15,560 --> 00:38:17,330 >> तो अब मैं क्या कर दिया मैं अनिवार्य रूप से दिया है 733 00:38:17,330 --> 00:38:22,890 एक समारोह में कहा जाता वर्ग बनाए गए किसी भी मूल्य स्वीकार करता है और यह वर्ग जाएगा। 734 00:38:22,890 --> 00:38:24,960 हम यहाँ नीचे देखो क्या होता है सकते हैं। 735 00:38:24,960 --> 00:38:29,960 उदाहरण के लिए वर्ग तीन, मैं जा रहा हूँ मतलब है मूल्य 3 लेते हैं और इसे चुकता करने के लिए। 736 00:38:29,960 --> 00:38:32,010 तो वास्तव में यह कैसे काम करता है? 737 00:38:32,010 --> 00:38:37,800 मैं 2-- की शक्ति से पारित जब जब मैं समारोह के इस शक्ति के रूप में 2 पास, 738 00:38:37,800 --> 00:38:44,430 इस चर y है कि मूल्य 2 के साथ बसा। 739 00:38:44,430 --> 00:38:46,340 और उस तरह की स्मृति में आयोजित किया जाता है। 740 00:38:46,340 --> 00:38:49,430 उस तरह का में आयोजित की तरह है कहीं कंप्यूटर में राज्य, 741 00:38:49,430 --> 00:38:51,980 हम वास्तव में परवाह नहीं है कैसे या जहां इस बिंदु पर। 742 00:38:51,980 --> 00:38:54,692 >> लेकिन मैं इस समारोह में वापसी exponentiate बुलाया। 743 00:38:54,692 --> 00:38:57,400 और फिर, यह वास्तव में कोई फर्क नहीं पड़ता इस समारोह में क्या कहा जाता है, 744 00:38:57,400 --> 00:39:01,730 हम वास्तव में, यह कुछ भी कॉल कर सकते हैं एक डबल स्वीकार करता है और एक डबल रिटर्न 745 00:39:01,730 --> 00:39:05,640 लेकिन इसके अंदर इस मान Y का उपयोग करता है। 746 00:39:05,640 --> 00:39:09,290 तो यह इस समारोह है, भले ही है कि इस exponentiater समारोह 747 00:39:09,290 --> 00:39:13,600 करने के लिए वापस लौटा दिया गया है मेरी मैं वर्ग कहा जाता है कि चर, 748 00:39:13,600 --> 00:39:17,980 यह इसके भीतर समाहित किया गया है Y क्या था की इस धारणा। 749 00:39:17,980 --> 00:39:19,070 और यह है कि याद है। 750 00:39:19,070 --> 00:39:24,810 >> तो हर बार मुझे लगता है कि समारोह फोन है कि अब वर्ग कहा जाता है, यह है कि का उपयोग करता है। 751 00:39:24,810 --> 00:39:27,990 लेकिन यह भी मैं कर सकता हूँ कि इसका मतलब है का उपयोग करते हुए एक और परिवर्तनीय बनाने 752 00:39:27,990 --> 00:39:29,120 की एक अलग शक्ति। 753 00:39:29,120 --> 00:39:33,240 तो मुझे लगता है के लिए, एक घन चर बना सकते हैं उदाहरण के लिए, यह करने के लिए 3 की शक्ति प्रदान करते हैं। 754 00:39:33,240 --> 00:39:37,230 अब क्यूब वास्तव में कुछ ले जाएगा मूल्य और घन कि और यह वापसी। 755 00:39:37,230 --> 00:39:39,570 तो हम है कि मैं देख सकते हैं उस के बाहर एक मूल्य 8। 756 00:39:39,570 --> 00:39:42,720 >> लेकिन यह है कि मूल्य Y नहीं है वे कर रहे हैं, क्योंकि बदल 757 00:39:42,720 --> 00:39:44,980 स्वतंत्र चर की तरह में आयोजित की। 758 00:39:44,980 --> 00:39:47,480 वे एक तरह से आयोजित कर रहे हैं स्मृति में स्वतंत्र रिक्त स्थान। 759 00:39:47,480 --> 00:39:51,290 तो घन हमेशा होगा तीन की शक्ति के लिए एक्स। 760 00:39:51,290 --> 00:39:55,380 और वर्ग हमेशा होगा दो की शक्ति, एक्स जो 761 00:39:55,380 --> 00:39:58,470 उस वर्ग हमेशा जाएगा मतलब मैं उम्मीद के रूप में वर्ग नंबर,। 762 00:39:58,470 --> 00:40:01,794 और घन हमेशा cubed जाएगा नंबर, मैं उम्मीद के रूप में। 763 00:40:01,794 --> 00:40:04,960 यह भी मतलब है कि कभी कभी आप कर सकते हैं कि कायरता देख वाक्य रचना के कुछ प्रकार प्राप्त 764 00:40:04,960 --> 00:40:09,030 जहां आप बहुत कम की शक्ति है यहाँ स्क्रीन के नीचे, 5 की शक्ति। 765 00:40:09,030 --> 00:40:11,410 आप परिणाम में गुजरती हैं। 766 00:40:11,410 --> 00:40:14,670 आप पर है कि उस समारोह कॉल नंबर 4 के साथ लौटा दिया गया। 767 00:40:14,670 --> 00:40:17,440 और तो क्या अनिवार्य रूप से इस पांचवें सत्ता में 4 768 00:40:17,440 --> 00:40:20,830 हम वहाँ परिणाम देख सकते हैं। 769 00:40:20,830 --> 00:40:23,690 मेरे साथ अभी तक? 770 00:40:23,690 --> 00:40:26,620 >> इसलिए इस विचार, एक बंद करने को कहा जाता है हम मूल रूप से क्या कर रहे हैं, क्योंकि 771 00:40:26,620 --> 00:40:30,610 हम encapsulating रहे है कुछ डेटा प्रकार का into-- 772 00:40:30,610 --> 00:40:33,050 इस डेटा enclosing की हम कर रहे हैं और एक समारोह में 773 00:40:33,050 --> 00:40:36,240 इस समारोह का पुन: उपयोग कर रहा है। 774 00:40:36,240 --> 00:40:41,480 अब इस वाक्य रचना हालांकि वास्तव में यह कर सकते हैं एक बड़ी राशि सरल किया। 775 00:40:41,480 --> 00:40:45,005 और संभावना के बहुत सारे है इस सरलीकरण के लिए स्विफ्ट में। 776 00:40:45,005 --> 00:40:47,780 और कहा कि किस प्रकार का है बाद में लोगों को वास्तव में देखने के लिए। 777 00:40:47,780 --> 00:40:51,400 तो उदाहरण के लिए 7b में, हम इस सटीक एक ही कोड ले। 778 00:40:51,400 --> 00:40:54,360 >> लेकिन अब के बजाय वास्तव में एक समारोह को परिभाषित 779 00:40:54,360 --> 00:40:57,910 की इस शक्ति के अंदर समारोह और इसे एक नाम दे, 780 00:40:57,910 --> 00:41:00,150 और उसके बाद नाम वापस उस समारोह की जो 781 00:41:00,150 --> 00:41:02,357 उसके बाद के हिस्से के रूप में इस्तेमाल किया जाता है इस बंद करने के बजाय, हम कर रहे हैं 782 00:41:02,357 --> 00:41:03,440 बस इसे सरल करने के लिए जा रहा है। 783 00:41:03,440 --> 00:41:06,580 हम इस समारोह में नाम होने की जरूरत नहीं है। 784 00:41:06,580 --> 00:41:09,760 तो यह एक की अवधारणा है गुमनाम समारोह जहां हम फिर से कर सकते हैं 785 00:41:09,760 --> 00:41:15,180 यहाँ कोष्ठक में, इनपुट के रूप में स्वीकार करते हैं, प्रकार डबल की है जो चर एक्स। 786 00:41:15,180 --> 00:41:17,250 >> हम प्रकार डबल वापस करने के लिए जा रहे हैं। 787 00:41:17,250 --> 00:41:19,830 और फिर कीवर्ड, एन, है इस समारोह की शुरुआत। 788 00:41:19,830 --> 00:41:22,180 तो इस बात का है कि सभी को नोटिस घुंघराले कोष्ठक के भीतर है 789 00:41:22,180 --> 00:41:25,310 और हम एक परिभाषित कर रहे हैं गुमनाम यहां कार्य करते हैं। 790 00:41:25,310 --> 00:41:29,910 बस एक आसान तरीका सटीक एक ही बात को परिभाषित। 791 00:41:29,910 --> 00:41:30,810 ठीक है? 792 00:41:30,810 --> 00:41:36,740 लेकिन रुकिए, स्विफ्ट वास्तव में हमें की अनुमति देता है आगे जाने के लिए और भी अधिक सरल बनाने के लिए, 793 00:41:36,740 --> 00:41:40,180 वास्तव में हम नहीं है क्योंकि इस पैरामीटर है कि परवाह 794 00:41:40,180 --> 00:41:41,700 किसी विशेष बात यह नाम दिया है। 795 00:41:41,700 --> 00:41:48,090 यह वास्तव में कुछ भी कहा जा सकता है और हम अभी भी है कि पहली पैरामीटर का उपयोग कर सकते हैं। 796 00:41:48,090 --> 00:41:53,800 >> तो वास्तव में इस खास नहीं है गुमनाम कार्यों में डेटा के प्रकार, 797 00:41:53,800 --> 00:41:57,710 के इस विशेष का नाम नहीं है गुमनाम कार्यों में चर 798 00:41:57,710 --> 00:42:00,280 साथ कि शुरू डॉलर के हस्ताक्षर और प्रतिनिधित्व 799 00:42:00,280 --> 00:42:03,785 पैरामीटर नंबर, शून्य इस समारोह के लिए, अनुक्रमित। 800 00:42:03,785 --> 00:42:05,410 तो क्या चल रहा चीजों की एक जोड़ी है। 801 00:42:05,410 --> 00:42:08,550 यहाँ मैं तो एक वापसी के लिए जा रहा हूँ, और एक समारोह का प्रतिनिधित्व घुंघराले गले लगा, 802 00:42:08,550 --> 00:42:09,050 सही? 803 00:42:09,050 --> 00:42:13,920 >> मैं परिभाषित किया है नहीं है नोटिस पैरामीटर प्रकार या वापसी प्रकार। 804 00:42:13,920 --> 00:42:16,460 यह वास्तव में निष्कर्ष निकाला जा सकता है हस्ताक्षर की वजह से 805 00:42:16,460 --> 00:42:18,360 इस मूल समारोह का। 806 00:42:18,360 --> 00:42:20,500 इसलिए हम समाप्त कर सकते हैं एक संभावना के रूप में है। 807 00:42:20,500 --> 00:42:25,120 लेकिन यह भी मैं करने के लिए डॉलर के हस्ताक्षर शून्य उपयोग कर सकते हैं है कि यह पहली पैरामीटर का प्रतिनिधित्व 808 00:42:25,120 --> 00:42:28,200 इस अनाम समारोह में पारित कर दिया। 809 00:42:28,200 --> 00:42:31,630 तो इसे और भी अधिक सरल बनाने। 810 00:42:31,630 --> 00:42:32,750 ठीक है? 811 00:42:32,750 --> 00:42:33,820 अब तक सब ठीक है? 812 00:42:33,820 --> 00:42:36,980 >> अब यह इस type-- है आप करते हैं इस डॉलर के हस्ताक्षर शून्य याद 813 00:42:36,980 --> 00:42:40,130 हम इस घुंघराले गले में देखा था कि हम बस थोड़ी देर में देखा था कि 814 00:42:40,130 --> 00:42:43,870 पहले इस स्विफ्ट छह उदाहरण में? 815 00:42:43,870 --> 00:42:46,560 यह यहीं था। 816 00:42:46,560 --> 00:42:48,430 कि वास्तव में नोटिस क्या हम देख रहे हैं, 817 00:42:48,430 --> 00:42:51,580 हम पारित किया है वह यह है कि इस विभाजन समारोह में 818 00:42:51,580 --> 00:42:55,140 एक गुमनाम समारोह है कि पहली पैरामीटर की जाँच करता है 819 00:42:55,140 --> 00:42:57,830 यह पेट के प्रतीक के बराबर होती है यह देखने के लिए। 820 00:42:57,830 --> 00:42:59,830 और है कि वास्तव में क्या है हो रहा है कि सभी है 821 00:42:59,830 --> 00:43:02,320 हम वापसी doing-- रहे कीवर्ड निहित है 822 00:43:02,320 --> 00:43:05,800 इस case-- में हम लौट रहे हैं हम तुलना कर रहे हैं, जहां इस मूल्य 823 00:43:05,800 --> 00:43:10,020 के खिलाफ पहली पैरामीटर इस चरित्र बृहदान्त्र। 824 00:43:10,020 --> 00:43:11,730 और तो उस तरह का इस demystifies। 825 00:43:11,730 --> 00:43:17,210 और तुम इस निर्माण को देखने के लिए जा रहे हैं स्विफ्ट वाक्य रचना में एक बहुत कुछ है, इसलिए कि रख कर 826 00:43:17,210 --> 00:43:19,400 आप कर रहे हैं, जब मन में इस पर एक नज़र ले रही है। 827 00:43:19,400 --> 00:43:21,970 अब हम से दूर प्राप्त कर सकते हैं रेल एक छोटा सा 828 00:43:21,970 --> 00:43:25,460 और पता चलता है कि वास्तव में फैंसी जाना स्विफ्ट की शक्ति का भी कुछ ज्यादा है। 829 00:43:25,460 --> 00:43:27,950 तुम भी कुछ देख सकते हैं नमूना कोड में इन की। 830 00:43:27,950 --> 00:43:29,790 मैं जा रहा हूँ तो इसलिए आप को यह दिखाने के लिए। 831 00:43:29,790 --> 00:43:37,260 >> असल में हम क्या कर सकते हैं पहला यह है कि, के सभी, यह मेरे लिए अनावश्यक की तरह था 832 00:43:37,260 --> 00:43:41,710 का है कि शक्ति के सभी लागू करने के लिए कोड आप डार्विन आयात क्योंकि अगर 833 00:43:41,710 --> 00:43:46,490 पुस्तकालय, यह वास्तव में एक समारोह में शामिल आप के लिए यह करता है कि पाउ बुलाया। 834 00:43:46,490 --> 00:43:50,570 इसलिए हम इसे सरल कर सकते हैं, यहां तक ​​कि अधिक से बस अब हमारी शक्ति को समारोह 835 00:43:50,570 --> 00:43:54,890 जहां हम एक अद्भुत एक लाइनर हो बस इस अनाम समारोह लौटने कि 836 00:43:54,890 --> 00:44:00,780 इसकी के रूप में डॉलर के हस्ताक्षर 0 स्वीकार करता है इसके प्रतिपादक के रूप में आधार और y। 837 00:44:00,780 --> 00:44:02,582 >> लेकिन हम वास्तव में प्राप्त कर सकते हैं जब हम सच में फैंसी 838 00:44:02,582 --> 00:44:04,790 स्विफ्ट एक एहसास है कि हुड के तहत बिजली की बहुत। 839 00:44:04,790 --> 00:44:07,010 ऑपरेटरों के एक बहुत है कि हम साथ काम कर रहा है 840 00:44:07,010 --> 00:44:11,270 प्लस चिन्ह और विभाजन प्रतीकों और इन सब बातों है कि आप सामान्य रूप से 841 00:44:11,270 --> 00:44:15,620 डेटा प्रकार के साथ के साथ काम एक प्रोग्रामिंग भाषा में, 842 00:44:15,620 --> 00:44:17,600 वास्तव में स्विफ्ट में एक्स्टेंसिबल हैं। 843 00:44:17,600 --> 00:44:21,460 तो क्या हुआ कि कि हम में इसका मतलब है हमारे अपने ऑपरेटरों को परिभाषित कर सकते हैं। 844 00:44:21,460 --> 00:44:26,020 >> तो अब मैं इस सब में टाइपिंग के थक गया हूँ पाउ और फिर एक कोष्ठकों और फिर 845 00:44:26,020 --> 00:44:26,520 आधार। 846 00:44:26,520 --> 00:44:27,520 मुझे लगता है कि ऐसा करने के लिए नहीं करना चाहती। 847 00:44:27,520 --> 00:44:30,190 मैं वास्तव में एक है चाहता हूँ मुझे लगता है कि ऐसा करने के लिए अनुमति देता है कि ऑपरेटर। 848 00:44:30,190 --> 00:44:34,510 इसलिए मुझे लगता है कि मैं चाहता हूँ स्विफ्ट बता सकते हैं एक ऑपरेटर, स्टार बनाने के लिए 849 00:44:34,510 --> 00:44:39,472 मैं कैरेट का उपयोग नहीं कर सकते हैं जिस तरह से star-- कैरेट एक ऑपरेटर है कि क्योंकि 850 00:44:39,472 --> 00:44:40,680 पूरी तरह से कुछ नहीं करता है। 851 00:44:40,680 --> 00:44:42,720 इसलिए मैं सॉर्ट करने के लिए नहीं करना चाहते उस के साथ टकराने। 852 00:44:42,720 --> 00:44:45,750 और इसलिए तुम एक किस्म में क्या देखते हैं अजगर सहित भाषाओं की, 853 00:44:45,750 --> 00:44:48,810 स्टार स्टार ऑपरेटर की तरह है exponents के प्रतिनिधित्व करने के लिए। 854 00:44:48,810 --> 00:44:50,730 >> तो यह है कि एक ही कारण है यही कारण है कि मैं ऐसा कर चुका हूँ। 855 00:44:50,730 --> 00:44:53,067 और यह होने जा रहा है एक इन्फ़िक्स प्रकार ऑपरेटर। 856 00:44:53,067 --> 00:44:54,900 और मैं प्रदान करने के लिए है यह कुछ जानकारी के लिए 857 00:44:54,900 --> 00:44:58,386 इस की वरीयता के बारे में ऑपरेटर तो यह बाईं साहचर्य है। 858 00:44:58,386 --> 00:45:00,260 यह अपेक्षाकृत तरह है उच्च वरीयता की तुलना 859 00:45:00,260 --> 00:45:02,432 योग या गुणा करने के लिए। 860 00:45:02,432 --> 00:45:04,140 यह उच्च पूर्वता है उन सभी की तुलना में। 861 00:45:04,140 --> 00:45:04,931 इतने पर और आगे। 862 00:45:04,931 --> 00:45:07,410 और फिर मैं को परिभाषित समारोह है कि वास्तव में 863 00:45:07,410 --> 00:45:10,070 इस ऑपरेटर क्या करती लगती हैं। 864 00:45:10,070 --> 00:45:14,150 तो मैं एक छोड़ दिया है यह सोचते हैं कि हाथ की ओर और दाहिने हाथ की ओर, 865 00:45:14,150 --> 00:45:17,330 जो होगा शायद एक इस के लिए बेहतर चर नाम। 866 00:45:17,330 --> 00:45:20,690 बाएं हाथ की ओर और दाहिने हाथ की ओर। 867 00:45:20,690 --> 00:45:26,740 मैं तो की इस शक्ति ले जा सकते हैं दाहिने हाथ की ओर करने के लिए बाएं हाथ की ओर 868 00:45:26,740 --> 00:45:28,980 और कहा कि मूल्य वापसी। 869 00:45:28,980 --> 00:45:30,370 तो अब यह सुपर प्यारा है। 870 00:45:30,370 --> 00:45:33,790 हम सभी को है 2 स्टार स्टार 3 है और कहा कि, तीसरी शक्ति के लिए 2 है 871 00:45:33,790 --> 00:45:35,290 और हम 8 के एक मूल्य मिलता है। 872 00:45:35,290 --> 00:45:40,280 2 स्टार स्टार 10 के लिए 2 है 10 वीं शक्ति है, हम 1024 से मिलता है। 873 00:45:40,280 --> 00:45:43,630 >> तो अब समारोह के बारे में हमारी शक्ति, जो फिर से अलग है, 874 00:45:43,630 --> 00:45:47,030 क्योंकि इसके पीछे पूरे विचार हम एक समारोह है कि था कि 875 00:45:47,030 --> 00:45:50,700 हमेशा कुछ मान लेता है और it-- पलता या यों कहें 876 00:45:50,700 --> 00:45:53,240 एक ही सत्ता में प्रतिपादक लेता है। 877 00:45:53,240 --> 00:45:54,300 तो अब यह भी सरल है। 878 00:45:54,300 --> 00:45:57,070 तो अब यह सिर्फ डॉलर है 0 सितारा सितारा Y साइन इन करें। 879 00:45:57,070 --> 00:46:01,190 हम भी अब पाउ का उपयोग करने के लिए नहीं है। 880 00:46:01,190 --> 00:46:03,020 >> ठीक है, जो खो दिया है? 881 00:46:03,020 --> 00:46:03,700 हम ठीक कर रहे हैं? 882 00:46:03,700 --> 00:46:05,090 इस सामान पर कोई सवाल? 883 00:46:05,090 --> 00:46:05,815 हाँ? 884 00:46:05,815 --> 00:46:09,500 >> दर्शक: जब you-- [अश्राव्य] Y डबल की दुर्गंध शक्ति। 885 00:46:09,500 --> 00:46:11,441 तो तुम एक समारोह लौट रहे हैं। 886 00:46:11,441 --> 00:46:13,190 डेनियल Armendariz: Y डबल की दुर्गंध शक्ति। 887 00:46:13,190 --> 00:46:14,270 अरे हाँ, मैं नहीं जानता Y संख्या क्या कर रहे हैं। 888 00:46:14,270 --> 00:46:15,708 उस के बारे में क्षमा करें। 889 00:46:15,708 --> 00:46:19,420 >> दर्शक: क्यों तुम लौट रहे हैं एक समारोह [अश्राव्य] बाड़े। 890 00:46:19,420 --> 00:46:24,214 डॉलर शून्य स्टार नहीं है स्टार Y [अश्राव्य] 891 00:46:24,214 --> 00:46:29,710 उस के साथ कि ऑपरेटर लगता है डबल [अश्राव्य] डबल लौटने? 892 00:46:29,710 --> 00:46:32,742 >> डेनियल Armendariz: तो चलो मुझे अपने सवाल का जवाब 893 00:46:32,742 --> 00:46:35,950 मैं यह समझने के लिए और क्या आप मुझे बता सकते हैं कि कैसे मैं अपने प्रश्न समझ में नहीं आया है। 894 00:46:35,950 --> 00:46:42,850 तो इस का निर्माण, घुंघराले ब्रेस डॉलर के हस्ताक्षर शून्य स्टार स्टार वाई, 895 00:46:42,850 --> 00:46:44,280 एक समारोह है। 896 00:46:44,280 --> 00:46:50,080 और यह है कि एक पैरामीटर स्वीकार करता है इस डॉलर के हस्ताक्षर शून्य से प्रतिनिधित्व किया। 897 00:46:50,080 --> 00:46:55,830 वापसी कीवर्ड इस में निहित है बहुत ही कम, गुमनाम समारोह सिंटेक्स। 898 00:46:55,830 --> 00:46:57,870 >> जो अनिवार्य रूप से इसका मतलब है कि क्या यह कह रहा है 899 00:46:57,870 --> 00:47:01,270 मैं एक परिभाषित कर रहा हूँ वह यह है कि function-- और फिर मैं हूँ 900 00:47:01,270 --> 00:47:05,320 सिर्फ यह कह something-- मैं कुछ मूल्य y है जहां। 901 00:47:05,320 --> 00:47:08,300 मैं डबल है, जो y है। 902 00:47:08,300 --> 00:47:10,750 और मैं एक डबल लौट रहा हूँ। 903 00:47:10,750 --> 00:47:19,010 और मुझे लगता है कि वापसी के भीतर है खेद y--, मैं इस y-- एक्स कहा जाता है नहीं करना चाहिए। 904 00:47:19,010 --> 00:47:20,240 ओह प्रिय, ओह प्रिय, ओह प्रिय। 905 00:47:20,240 --> 00:47:27,440 X-- nope-- स्टार स्टार Y। 906 00:47:27,440 --> 00:47:29,720 >> तो यह सिर्फ एक है इस बात का सरलीकृत संस्करण। 907 00:47:29,720 --> 00:47:33,990 और तो कारण है कि मैं डॉलर है कि साइन शून्य इस संलग्नक का उपयोग करता है 908 00:47:33,990 --> 00:47:41,050 मैं अब और नहीं है कि इसका मतलब है ऐसा नहीं रह गया पाउ टाइप करें, या करने के लिए 909 00:47:41,050 --> 00:47:45,570 मैं कुछ करना है जैसे तीन सितारा सितारा 2। 910 00:47:45,570 --> 00:47:48,530 मैं सिर्फ एक ही हो सकता है समारोह में कहा जाता वर्ग 911 00:47:48,530 --> 00:47:50,820 कि हमेशा के लिए ले जाएगा इनपुट के रूप में कुछ मूल्य 912 00:47:50,820 --> 00:47:52,980 और वास्तव में उस के वर्ग में लौटने। 913 00:47:52,980 --> 00:47:56,460 >> तो बंद करने का पूरा उद्देश्य है बस की तरह इस तथ्य encapsulate करने के लिए 914 00:47:56,460 --> 00:47:59,920 मैं हमेशा जब भी Y उपयोग करना चाहते हैं मैं सत्ता के रूप में उस समारोह कॉल 915 00:47:59,920 --> 00:48:01,710 इस प्रतिपादक जब ले। 916 00:48:01,710 --> 00:48:04,650 तो, एक तो लौटने स्वीकार करता है कि समारोह 917 00:48:04,650 --> 00:48:08,460 बेस है, जो एक डबल, और उस प्रतिपादक का परिणाम लौटने 918 00:48:08,460 --> 00:48:10,740 यहाँ कुंजी है। 919 00:48:10,740 --> 00:48:12,790 और कहा कि मुख्य अंतर है। 920 00:48:12,790 --> 00:48:14,430 एक पनपने का सिर्फ एक सा हो गया था। 921 00:48:14,430 --> 00:48:17,970 >> यह किसी भी अलग नहीं है पूर्व उदाहरणों की तुलना में, 922 00:48:17,970 --> 00:48:20,530 लेकिन इसके बारे में सिर्फ एक सा हो गया था एक हम वास्तव में कर सकते हैं पनपने 923 00:48:20,530 --> 00:48:24,500 स्विफ्ट में एक ऑपरेटर बना और वास्तव में इसके साथ सामान करना, 924 00:48:24,500 --> 00:48:26,396 जो एक अच्छी बात की तरह है। 925 00:48:26,396 --> 00:48:27,520 मैं आपके सवाल का जवाब दिया? 926 00:48:27,520 --> 00:48:28,390 मीठा। 927 00:48:28,390 --> 00:48:31,350 और कुछ हम आगे बढ़ने से पहले? 928 00:48:31,350 --> 00:48:33,570 ठीक है। 929 00:48:33,570 --> 00:48:36,430 >> अब इस तरह की भी जन्म देती है सवाल है, that-- अच्छी तरह से ठीक है 930 00:48:36,430 --> 00:48:40,870 अब हम क्षमता के लिए है कार्यों लौट जा। 931 00:48:40,870 --> 00:48:48,950 हम यह भी डेटा के रूप में कार्य करता है पारित कर सकते हैं या अन्य कार्यों के लिए मापदंडों के रूप में? 932 00:48:48,950 --> 00:48:50,710 और वास्तव में हम कर सकते हैं। 933 00:48:50,710 --> 00:48:53,480 तो चलो हम है कि हम कहते हैं एक ही कोड के सभी। 934 00:48:53,480 --> 00:48:56,120 हम वर्ग चर कि इस कोड वर्ग जाएगा। 935 00:48:56,120 --> 00:48:59,320 और हम घन चर कि कुछ डेटा घन जाएगा। 936 00:48:59,320 --> 00:49:02,440 और हम वास्तव में लागू करना चाहते हैं संख्या की एक विस्तृत श्रृंखला के लिए। 937 00:49:02,440 --> 00:49:06,870 >> तो हम क्या करने के लिए परीक्षा हो सकती है क्या, जाहिर है, निश्चित रूप से मान्य है, जो 938 00:49:06,870 --> 00:49:15,430 संख्या की इस सूची से पुनरावृति करने के लिए है और मेरे कार्यों वर्ग और घन लागू 939 00:49:15,430 --> 00:49:22,270 और परिणाम के रूप में दो नए सूचियों मिल चुकता इस मूल सूची रहे हैं कि 940 00:49:22,270 --> 00:49:24,970 और क्रमश: cubed। 941 00:49:24,970 --> 00:49:26,880 पूरी तरह से स्वीकार्य। 942 00:49:26,880 --> 00:49:29,130 लेकिन बात यह है कि क्या हम यहाँ देखें कि हमारे पास है 943 00:49:29,130 --> 00:49:31,310 फिर, हमारे कोड के दोहराव। 944 00:49:31,310 --> 00:49:34,310 और शायद वहाँ एक मौका है हमारे लिए यह एक छोटा सा सरल करने के लिए। 945 00:49:34,310 --> 00:49:41,260 हमारे लिए एक रास्ता था, तो क्या वास्तव में हमेशा कुछ सूची से पुनरावृति 946 00:49:41,260 --> 00:49:45,450 और सिर्फ इस जादुई करने के लिए पारित एक चर कि समारोह 947 00:49:45,450 --> 00:49:47,350 एक समारोह का प्रतिनिधित्व करता है हम लागू करना चाहते हैं 948 00:49:47,350 --> 00:49:50,336 इस सूची में हर एक आइटम के लिए। 949 00:49:50,336 --> 00:49:53,210 इस की अवधारणा को पेश करती है क्या उच्च आदेश कार्यों कहा जाता है। 950 00:49:53,210 --> 00:49:57,150 और कहा कि क्या यह अनिवार्य है है, हम एक समारोह बना सकते हैं। 951 00:49:57,150 --> 00:50:00,210 >> और इस मामले में यह कहा जाता है एक मैपर, बस, इसे एक नाम देने के लिए 952 00:50:00,210 --> 00:50:02,510 हर खत्म मानचित्रण एक सूची में एक आइटम। 953 00:50:02,510 --> 00:50:06,191 मैं कहां से एक सूची ले और मैं एक समारोह में ले। 954 00:50:06,191 --> 00:50:08,440 और उस समारोह, ज़ाहिर है, एक निश्चित हस्ताक्षर है। 955 00:50:08,440 --> 00:50:11,980 यह एक पैरामीटर डबल के रूप में स्वीकार करता है और यह उत्पादन एक डबल होगा। 956 00:50:11,980 --> 00:50:14,310 और के पूरे परिणाम इस समारोह में जा रहा है 957 00:50:14,310 --> 00:50:18,921 प्रकार डबल की है कि एक नई सूची हो। 958 00:50:18,921 --> 00:50:19,420 ठीक है? 959 00:50:19,420 --> 00:50:22,650 >> और मैं क्या करने जा रहा हूँ इस समारोह च लागू करने के लिए है 960 00:50:22,650 --> 00:50:24,960 मेरी सूची में प्रत्येक तत्व के लिए। 961 00:50:24,960 --> 00:50:30,280 और reply-- और नहीं बल्कि इस नए लौटने वास्तव में अच्छा है, जो एक परिणाम के रूप में सूची। 962 00:50:30,280 --> 00:50:31,820 अब मैं आसपास कार्यों पारित कर सकते हैं। 963 00:50:31,820 --> 00:50:35,290 और उच्च आदेश के इस विचार कार्यों वास्तव में महत्वपूर्ण है। 964 00:50:35,290 --> 00:50:39,260 और इस मैपर सिर्फ सच है गरीब आदमी का कार्यान्वयन 965 00:50:39,260 --> 00:50:43,130 बनाया गया है कि एक समारोह के स्विफ्ट में नक्शा बुलाया। 966 00:50:43,130 --> 00:50:45,690 और यह ठीक इस करता है शायद यह भी एक छोटा सा बेहतर है। 967 00:50:45,690 --> 00:50:48,260 >> यह बस की तरह एक सामान्य है सरलीकृत संस्करण है कि 968 00:50:48,260 --> 00:50:51,270 हमें देखने की अनुमति देता यहाँ लागू होता है कि अवधारणा। 969 00:50:51,270 --> 00:50:54,630 अब जिस तरह से देखने के लिए कि मैं वास्तव में मेरे वर्ग आवेदन कर सकते हैं 970 00:50:54,630 --> 00:50:57,850 और मेरे घन कार्यों संख्या की इस सूची में। 971 00:50:57,850 --> 00:50:58,780 मैं अपने मैपर चलाते हैं। 972 00:50:58,780 --> 00:51:00,280 मैं यह करने के लिए संख्या की मेरी सूची प्रदान करते हैं। 973 00:51:00,280 --> 00:51:02,155 मैं यह करने के लिए प्रदान करते हैं उस समारोह हो रहा है 974 00:51:02,155 --> 00:51:04,170 उन सूचकांकों में से प्रत्येक को लागू करने के लिए। 975 00:51:04,170 --> 00:51:07,120 और यह होने जा रहा है एक परिणाम के रूप में उत्पादन। 976 00:51:07,120 --> 00:51:11,810 और मुझे लगता है कि मैं चुकता कर दिया है कि देखने के लिए मिल जाएगा और एक परिणाम के रूप में मेरा नंबर cubed। 977 00:51:11,810 --> 00:51:14,660 >> और निश्चित रूप से मैपर ले जाएगा गुमनाम समारोह के किसी भी तरह। 978 00:51:14,660 --> 00:51:17,640 हम भी मैं बना लिया है कि देख सकते हैं एक नया गुमनाम समारोह है कि 979 00:51:17,640 --> 00:51:20,220 बस कुछ पैरामीटर लेता है और यह 2 से विभाजित करता है। 980 00:51:20,220 --> 00:51:24,340 और हम, मैं वास्तव में, है कि देख सकते हैं बजाय 2 से मेरी सूची में बांटा गया। 981 00:51:24,340 --> 00:51:25,250 बिंदास? 982 00:51:25,250 --> 00:51:27,340 अब तक सब ठीक है? 983 00:51:27,340 --> 00:51:29,650 सब ठीक है, अब चलो वापस इस विचार के लिए आते हैं। 984 00:51:29,650 --> 00:51:36,160 के दशक में इस पीठ को लागू करते हैं एक gradebook के संदर्भ। 985 00:51:36,160 --> 00:51:41,860 >> मुझे लगता है कि ऐसा करने और, अगर हम मैं कर सकता हूँ कि देख सकते हैं इन options-- की एक विस्तृत विविधता लागू 986 00:51:41,860 --> 00:51:44,330 या इनमें से एक विस्तृत विविधता उच्च आदेश कार्यों 987 00:51:44,330 --> 00:51:51,450 वास्तव में एक ऐसा करने के लिए अपनी क्षमता को आसान बनाने के लिए नंबरों की सूची पर बातें की विविधता भी है। 988 00:51:51,450 --> 00:51:53,660 उदाहरण के लिए, यदि ऐसा है तो मैं , संख्याओं की एक सूची ले 989 00:51:53,660 --> 00:51:57,060 उच्च आदेश कार्यों में से एक कि कम करने को कहा जाता है मौजूद है। 990 00:51:57,060 --> 00:52:00,080 क्या कम करने के बजाय करता है नक्शे से कम है, होगा 991 00:52:00,080 --> 00:52:03,710 सूची में दो तत्वों ले, कुछ कार्य ले जाएगा 992 00:52:03,710 --> 00:52:07,420 के दो तत्वों तुलना सूची है, और यह तब होगा 993 00:52:07,420 --> 00:52:09,610 की तरह output-- उस समारोह का उत्पादन 994 00:52:09,610 --> 00:52:13,790 एक और तत्व है कि हो जाएगा आप तो दूसरों की तुलना करें। 995 00:52:13,790 --> 00:52:18,190 >> तो क्या तुम वास्तव में इसका उपयोग कर सकता है अपनी सूची में संख्याओं का योग। 996 00:52:18,190 --> 00:52:20,640 उदाहरण के लिए, यदि आप था एक की एक सूची, 2, 3, 4, 5, 997 00:52:20,640 --> 00:52:22,940 जब आप पहली बार तत्वों, 1 और 2 ले। 998 00:52:22,940 --> 00:52:27,270 आप इसे एक अतिरिक्त करने के लिए आवेदन कर सकते हैं उन दोनों तत्वों लेता है कि समारोह 999 00:52:27,270 --> 00:52:30,980 और उन तत्वों में से एक बाहर spits, जो मूल्य 3 होगा। 1000 00:52:30,980 --> 00:52:35,684 तो फिर हम अगले के साथ कि मूल्य 3 ले सूची के तत्व, उन दोनों के योग 1001 00:52:35,684 --> 00:52:37,100 और फिर इस सूची में नीचे रख रहा है। 1002 00:52:37,100 --> 00:52:40,410 >> हम कम कर रहे हैं एक ही मूल्य के लिए सूची। 1003 00:52:40,410 --> 00:52:42,700 और यह सिर्फ इतना होता है प्लस प्रतीक है कि 1004 00:52:42,700 --> 00:52:44,670 एक ऑपरेटर हम सिर्फ देखा, जैसे है। 1005 00:52:44,670 --> 00:52:47,500 इस ऑपरेटर है वास्तव में एक समारोह में कहा कि 1006 00:52:47,500 --> 00:52:53,100 ठीक इस सूची है कि हम , चाहेगा इन गुणों के बजाय 1007 00:52:53,100 --> 00:52:54,770 हम चाहते हैं कि। 1008 00:52:54,770 --> 00:52:56,760 इसलिए मैं करने के लिए प्रोत्साहित करते हैं इस पर एक नज़र रखना। 1009 00:52:56,760 --> 00:52:59,290 मैं इस कदम की सॉर्ट करना चाहते हैं पर इस कोड में से कुछ से 1010 00:52:59,290 --> 00:53:05,330 हम वास्तव में कुछ पर देख सकते हैं कि इतने Xcode में वास्तविक, असली सच है, स्विफ्ट, 1011 00:53:05,330 --> 00:53:06,880 iOS के विकास में। 1012 00:53:06,880 --> 00:53:08,630 लेकिन पर एक नज़र रखना इस और आप कर सकते हैं देखें 1013 00:53:08,630 --> 00:53:11,171 पर क्या हो रहा है के माध्यम से पार्स इन उच्च आदेश से कुछ के साथ 1014 00:53:11,171 --> 00:53:13,790 फिल्टर सहित कार्यों, कम करने, और आप भी करेंगे 1015 00:53:13,790 --> 00:53:17,060 यहीं कहीं में देखने के रूप में अच्छी तरह से नक्शा। 1016 00:53:17,060 --> 00:53:17,910 यह ठीक है यहाँ है। 1017 00:53:17,910 --> 00:53:20,410 कहां यह एक दृश्य ले जाएगा ग्रेड की और यह वास्तव में होगा 1018 00:53:20,410 --> 00:53:24,230 स्विच निर्माण का उपयोग कर उन्हें नक्शा, आप सी से पहचान सकता है, जो 1019 00:53:24,230 --> 00:53:27,640 लेकिन वास्तव में यह एक बहुत अधिक है स्विच निर्माण की तुलना में शक्तिशाली 1020 00:53:27,640 --> 00:53:29,810 हम सी में है कि 1021 00:53:29,810 --> 00:53:31,930 >> और हम करने के लिए कि लागू कर देंगे सूची में प्रत्येक तत्व 1022 00:53:31,930 --> 00:53:34,540 और वास्तव में प्रदान करते हैं प्रत्येक के पत्र ग्रेड 1023 00:53:34,540 --> 00:53:40,780 इन सभी अवधारणाओं का उपयोग उन ग्रेड का कि हम सिर्फ पहले के बारे में बात की है। 1024 00:53:40,780 --> 00:53:44,760 अब हम सिर्फ एक के लिए टलना जाने मिनट और structs के बारे में बात करते हैं। 1025 00:53:44,760 --> 00:53:49,680 और तो structs सी में एक प्रतीक्षा कर रहे हैं कि हम डेटा के एक नए प्रकार परिभाषित करने में सक्षम थे। 1026 00:53:49,680 --> 00:53:53,590 Structs स्विफ्ट के भीतर मौजूद हैं। 1027 00:53:53,590 --> 00:53:58,980 और तो अन्य निर्माणों का एक बहुत कुछ कहा जाता है enums और कक्षाएं, कि वास्तव में 1028 00:53:58,980 --> 00:54:01,175 एक करने के लिए इस विचार ले पूरी अलग स्तर पर। 1029 00:54:01,175 --> 00:54:05,300 >> और मूल रूप से यह सिर्फ एक रास्ता है के डेटा के एक नए प्रकार को परिभाषित। 1030 00:54:05,300 --> 00:54:11,010 तो तुम आ अगर आप get-- अगर वर्ग या structs या enums भर में, 1031 00:54:11,010 --> 00:54:13,290 इसके द्वारा उलझन में नहीं मिलता है। 1032 00:54:13,290 --> 00:54:16,280 यह परिभाषित करने का सिर्फ एक रास्ता है डेटा के कुछ नए विशेष प्रकार के। 1033 00:54:16,280 --> 00:54:20,230 और यह जब वास्तव में महत्वपूर्ण है हम iOS एप्लिकेशन विकास के बारे में बात कर रहे हैं 1034 00:54:20,230 --> 00:54:24,630 सब कुछ है कि क्योंकि iOS एप्लिकेशन के भीतर मौजूद है 1035 00:54:24,630 --> 00:54:27,460 अनिवार्य रूप से किसी तरह की एक वस्तु है। 1036 00:54:27,460 --> 00:54:31,980 और एक वस्तु मूल रूप से एक है वर्ग या एक इनम या एक struct। 1037 00:54:31,980 --> 00:54:34,760 >> मैं कर रहा हूँ तो इस मामले में डेटा के एक नए प्रकार को परिभाषित 1038 00:54:34,760 --> 00:54:37,740 मैं मूल्यांकन बुला रहा हूँ कि कि सहित कुछ गुण है 1039 00:54:37,740 --> 00:54:41,040 एक नाम और ग्रेड का एक दृश्य। 1040 00:54:41,040 --> 00:54:43,470 मूल्यांकन की तो एक प्रकार मैं मन में है कि हो सकता है 1041 00:54:43,470 --> 00:54:44,760 उदाहरण के लिए क्विज़, होगा। 1042 00:54:44,760 --> 00:54:48,180 मैं एक है चाहेंगे एक प्रश्नोत्तरी था कि आकलन 1043 00:54:48,180 --> 00:54:51,460 और कहा कि ग्रेड की एक किस्म की थी प्रश्नोत्तरी एक के लिए, उस के साथ जुड़े, 1044 00:54:51,460 --> 00:54:52,840 प्रश्नोत्तरी दो, इतने पर और आगे। 1045 00:54:52,840 --> 00:54:55,720 >> या मैं एक अलग प्रकार का हो सकता है समस्या सेट के लिए मूल्यांकन की। 1046 00:54:55,720 --> 00:54:56,650 और मैं बातें कर सकते हैं। 1047 00:54:56,650 --> 00:54:59,860 मैं वास्तव में हो सकता है इस प्रकार के भीतर कार्य 1048 00:54:59,860 --> 00:55:02,645 अब कहा जाता तरीके हैं जो डेटा, के। 1049 00:55:02,645 --> 00:55:04,520 तुमने कभी देखा तो अगर शब्द विधि, यह सच 1050 00:55:04,520 --> 00:55:08,190 लागू होता है कि एक समारोह में बस है एक बहुत ही विशेष वर्ग के लिए, 1051 00:55:08,190 --> 00:55:10,100 या डेटा का एक बहुत ही विशिष्ट प्रकार के। 1052 00:55:10,100 --> 00:55:12,350 यह भीतर डेटा को संशोधित करने के लिए हमें की अनुमति देता है। 1053 00:55:12,350 --> 00:55:15,510 >> तो दूसरे शब्दों में, अगर मैं चाहता हूँ मेरे आकलन करने के लिए एक ग्रेड जोड़ने के लिए, 1054 00:55:15,510 --> 00:55:18,630 तो मैं क्या करने की जरूरत है सभी के लिए है इनपुट था कि स्कोर संलग्न 1055 00:55:18,630 --> 00:55:22,660 इस समारोह के लिए मेरी आंतरिक संपत्ति। 1056 00:55:22,660 --> 00:55:25,880 यहाँ एक और स्वच्छ निर्माण नहीं है इस डॉट डॉट डॉट है जो स्विफ्ट, में 1057 00:55:25,880 --> 00:55:31,780 के स्कोर कर सकते हैं जिसका मतलब है कि ऑपरेटर, अब पूर्णांकों की संख्या किसी भी स्वीकार करते हैं। 1058 00:55:31,780 --> 00:55:33,940 और स्कोर एक हो जाएगा पूर्णांकों की सरणी कि 1059 00:55:33,940 --> 00:55:39,030 मेरे समारोह, करने के लिए पारित किया गया है, जो मैं इस तरह की चीजें कर सकते हैं कि इसका मतलब है। 1060 00:55:39,030 --> 00:55:42,360 >> मैं ग्रेड जोड़ने और बस को प्रदान कर सकते हैं इसे में पूर्णांकों का मनमाना संख्या 1061 00:55:42,360 --> 00:55:47,420 और वास्तव में एक सरणी प्रदान की जा मेरे समारोह में उन मूल्यों की 1062 00:55:47,420 --> 00:55:50,270 या मेरे विधि में, जैसा भी मामला है। 1063 00:55:50,270 --> 00:55:54,040 अब इस महत्वपूर्ण है क्योंकि Xcode में सब कुछ, IOS में सब कुछ है, 1064 00:55:54,040 --> 00:55:56,250 एक वस्तु वास्तव में है। 1065 00:55:56,250 --> 00:55:59,630 तो मन में रखना है कि हम खुले Xcode के बस्ट जब 1066 00:55:59,630 --> 00:56:04,890 और iOS परे आगे बढ़ें संस्करणों दो और तीन 1067 00:56:04,890 --> 00:56:08,820 और वास्तव संस्करण चार पर चलते हैं। 1068 00:56:08,820 --> 00:56:11,940 >> और फिर, यह सब होगा संगोष्ठी पेज पर पोस्ट किया। 1069 00:56:11,940 --> 00:56:16,980 iOS के चार एक पूर्ण विकसित की तरह है एक बहुत ही बुनियादी अनुप्रयोग के कार्यान्वयन। 1070 00:56:16,980 --> 00:56:23,920 और क्या इस app करता है कि यह है इस तरह दिखता है जो एक यूआई, लोड करता है। 1071 00:56:23,920 --> 00:56:28,680 हम स्टोरीबोर्ड पर क्लिक करें फिर, अगर हम कर सकते हैं इस क्या ऐसा लग रहा है कि देखते हैं। 1072 00:56:28,680 --> 00:56:31,320 इस यूआई है। 1073 00:56:31,320 --> 00:56:33,676 यह बहुत शीर्ष पर एक शीर्षक है। 1074 00:56:33,676 --> 00:56:34,800 मैं वेब गैलरी यह बुलाया है। 1075 00:56:34,800 --> 00:56:38,400 >> बीच में एक तत्व नहीं है यूआई छवि देखें बुलाया। 1076 00:56:38,400 --> 00:56:41,340 और नीचे में वहाँ एक एक बटन के साथ टूलबार कि 1077 00:56:41,340 --> 00:56:46,850 यह करने के लिए अनुमति देते हैं कि फैलने वाला रिक्त स्थान है इस टूलबार के बीच में केंद्र। 1078 00:56:46,850 --> 00:56:51,780 और क्या होता है कि जब यह है भार यह है कि एक JSON फाइल डाउनलोड 1079 00:56:51,780 --> 00:56:55,540 कहीं और एक सर्वर पर निहित, कि, JSON फ़ाइल डेसिमल 1080 00:56:55,540 --> 00:56:58,130 और JSON फाइल इस तरह एक सा लग रहा है। 1081 00:56:58,130 --> 00:57:02,770 1082 00:57:02,770 --> 00:57:06,230 JSON फ़ाइल इस तरह दिखता है। 1083 00:57:06,230 --> 00:57:08,650 वहाँ यह है। 1084 00:57:08,650 --> 00:57:11,730 >> यह एक एल्बम का नाम है और यह फोटो की एक सरणी है। 1085 00:57:11,730 --> 00:57:13,490 उन तस्वीरों में से प्रत्येक एक का नाम है और यह भी 1086 00:57:13,490 --> 00:57:19,460 का प्रतिनिधित्व करते हैं कि एक यूआरएल खुद को उस व्यक्ति की तस्वीर की जेपीईजी संस्करण। 1087 00:57:19,460 --> 00:57:24,780 तो क्या होता है जब इस कार्यक्रम कि लोड, यह JSON फाइल डाउनलोड, 1088 00:57:24,780 --> 00:57:30,590 , यह डेसिमल में यह सब कहते हैं IOS में एक सरणी के बराबर 1089 00:57:30,590 --> 00:57:33,020 एक NSArray है जो अनुप्रयोग विकास,। 1090 00:57:33,020 --> 00:57:37,520 और फिर मैं तो लोड कर सकते हैं एक आवेदन में इस डेटा 1091 00:57:37,520 --> 00:57:41,100 और मेरा स्क्रीन पर इसे लोड। 1092 00:57:41,100 --> 00:57:44,760 >> लोड किया गया था कि एक छवि है बहुत नीचे बटन के साथ। 1093 00:57:44,760 --> 00:57:49,190 मैं अगला छवि, यह तो जाओ क्लिक करते हैं इंटरनेट से उस छवि खींचतान 1094 00:57:49,190 --> 00:57:53,370 और उस छवि की जगह यूआई छवि को ध्यान में रखते। 1095 00:57:53,370 --> 00:57:57,820 तो क्या आप वास्तव में इस डाउनलोड कर सकते हैं और यह आपके कंप्यूटर पर पर एक नज़र रखना। 1096 00:57:57,820 --> 00:58:00,940 और वास्तव में इसे बनाने और अपने डिवाइस पर यह संकलन। 1097 00:58:00,940 --> 00:58:04,710 लेकिन अनिवार्य रूप से प्रक्रिया थी यह storyboard-- बना 1098 00:58:04,710 --> 00:58:08,080 या यों कहें create-- नहीं लेकिन स्टोरीबोर्ड का चयन करें। 1099 00:58:08,080 --> 00:58:15,030 आप mind-- नहीं है और अगर वास्तव में we'll-- हम बस सेकंड के एक जोड़े को ले जाऊँगा 1100 00:58:15,030 --> 00:58:18,390 वास्तव में आप को दिखाने के लिए यह किया गया था कि कैसे। 1101 00:58:18,390 --> 00:58:22,430 1102 00:58:22,430 --> 00:58:27,820 >> बस कैसे हम वास्तव में कर सकते हैं कि इतना प्राप्त करने के लिए इस किया जाता है थोड़ा और अधिक 1103 00:58:27,820 --> 00:58:28,360 स्पष्ट। 1104 00:58:28,360 --> 00:58:30,651 एकल दृश्य आवेदन, मैं कर रहा हूँ इस संगोष्ठी फोन करने वाला 1105 00:58:30,651 --> 00:58:35,330 चार का प्रतिनिधित्व करने के लिए इस विशेष नंबर। 1106 00:58:35,330 --> 00:58:36,335 डेस्कटॉप पर सहेजें। 1107 00:58:36,335 --> 00:58:39,890 1108 00:58:39,890 --> 00:58:42,110 ठीक है, स्टोरीबोर्ड पर क्लिक करने के लिए जा रहा है। 1109 00:58:42,110 --> 00:58:47,030 और मैं क्या करने जा रहा हूँ मेरी छवि को देखने को मिल रहा है, 1110 00:58:47,030 --> 00:58:50,940 मेरे उपयोगकर्ता पर खींचें इंटरफेस और केंद्र यह। 1111 00:58:50,940 --> 00:58:54,850 अब बस दुर्भाग्य से यह एकत्रित एक पूरी बहुत कुछ करने नहीं जा रहा है, 1112 00:58:54,850 --> 00:58:58,680 एक स्क्रीन के लिए छोड़कर कि इस सटीक आकार है। 1113 00:58:58,680 --> 00:59:03,950 >> तो हम से है कि अपने आप को मना कर सकते हैं इस डबल सर्किल बात पर क्लिक करें, 1114 00:59:03,950 --> 00:59:08,290 इस पॉप नीचे लाने यहाँ मेनू और बदलते ऊपर 1115 00:59:08,290 --> 00:59:11,110 जहां हम वास्तव में हूँ, पूर्वावलोकन करने के लिए कैसे पूर्वावलोकन करने के लिए एक मौका मिलता है 1116 00:59:11,110 --> 00:59:13,530 यह वास्तव में होगा अन्य उपकरणों पर दिखेगा। 1117 00:59:13,530 --> 00:59:16,500 हम देख सकते हैं, हम भी नहीं करते इस विशेष मामले पर देखते हैं। 1118 00:59:16,500 --> 00:59:18,500 इसलिए मैं अब के लिए इस बंद करने के लिए जा रहा हूँ। 1119 00:59:18,500 --> 00:59:22,100 >> और मैं चयन करने के लिए जा रहा हूँ बहुत नीचे इस आइकन 1120 00:59:22,100 --> 00:59:23,910 स्क्रीन के नीचे के हिस्से। 1121 00:59:23,910 --> 00:59:26,584 यह ऑटो लेआउट मुद्दों को हल कहते हैं। 1122 00:59:26,584 --> 00:59:28,000 क्षमा करें, यह नीचे में काट रहा है। 1123 00:59:28,000 --> 00:59:36,360 लेकिन मैं उस पर क्लिक करते हैं, क्या मैं इस पॉप दूर जाने up-- है मिलता है। 1124 00:59:36,360 --> 00:59:39,740 1125 00:59:39,740 --> 00:59:51,220 क्या मैं पाने के लिए इस पॉप अप है कि मुझे याद आ रही बाधाओं को जोड़ने के लिए अनुमति देता है। 1126 00:59:51,220 --> 00:59:53,780 और द्वारा यह कर रही है कि तो एक तरह से यह बंद करेगा 1127 00:59:53,780 --> 00:59:56,640 के मध्य भाग में मैं की तरह स्क्रीन उम्मीद कर सकते हैं। 1128 00:59:56,640 --> 01:00:00,520 >> अब इस क्रम में बटन पर लाने के लिए यह की चोटी, मैं संपादक के लिए जाने की जरूरत है। 1129 01:00:00,520 --> 01:00:05,010 एम्बेड में और क्लिक करने के लिए जाओ नेविगेशन नियंत्रक। 1130 01:00:05,010 --> 01:00:08,900 क्या ऐसा करेंगे कि जोड़ देगा है यह करने के लिए इस पूरी अन्य घटक, 1131 01:00:08,900 --> 01:00:11,310 लेकिन यह वास्तव में कड़ी होगी इसे वापस अपने मूल यूआई के लिए। 1132 01:00:11,310 --> 01:00:14,450 और विवरण, फिर से, हम नहीं करते वास्तव में अब ठीक है के बारे में परवाह करने की जरूरत है। 1133 01:00:14,450 --> 01:00:16,710 लेकिन मैं एक है करने के लिए करना चाहते हैं बहुत नीचे उपकरण पट्टी। 1134 01:00:16,710 --> 01:00:18,530 इसलिए मैं शो टूलबार की जांच करेंगे। 1135 01:00:18,530 --> 01:00:21,870 >> और यह, मेरे विचार के भीतर प्रदान करता है जो अब कहीं और है, 1136 01:00:21,870 --> 01:00:23,900 हम इसे यहाँ पर जुड़ा हुआ है देख सकते हैं। 1137 01:00:23,900 --> 01:00:28,710 अब यह एक उपकरण पट्टी प्रदान करता है मेरे यूआई के तल पर। 1138 01:00:28,710 --> 01:00:34,770 तो अब, का चयन करने के बजाय एक छवि देखने के लिए, मैं एक लेबल पा सकते हैं 1139 01:00:34,770 --> 01:00:41,140 या बल्कि एक toolbar-- चलो कि जहां है, देखते हैं? 1140 01:00:41,140 --> 01:00:41,890 क्या कहलाता हे? 1141 01:00:41,890 --> 01:00:49,760 एक button-- मद bar-- item-- sorry-- बार बटन मद। 1142 01:00:49,760 --> 01:00:54,590 कि वहाँ अचानक और एक जोड़े को लागू दोनों तरफ से लचीला रिक्त स्थान 1143 01:00:54,590 --> 01:00:57,429 वास्तव में है कि केंद्र के लिए। 1144 01:00:57,429 --> 01:00:58,970 तो अब मैं मूल रूप से, मेरे यूआई बना लिया है। 1145 01:00:58,970 --> 01:01:01,428 और मैं इसे एक नाम दे सकते हैं बहुत शीर्ष पर डबल क्लिक 1146 01:01:01,428 --> 01:01:04,880 यहाँ और इतने पर वेब गैलरी और कह रही है। 1147 01:01:04,880 --> 01:01:08,100 अब फिर से, इन तत्वों रहे हैं स्वयं द्वारा कि मौजूद है। 1148 01:01:08,100 --> 01:01:10,400 और मैं कनेक्ट करने के लिए है मेरे कोड के लिए उन्हें जो 1149 01:01:10,400 --> 01:01:14,297 मैं फिर से लाकर क्या कर सकते हैं इस डबल सर्किल आइकन ऊपर, 1150 01:01:14,297 --> 01:01:15,380 पूर्वावलोकन से बदल रहा है। 1151 01:01:15,380 --> 01:01:18,950 जो, वैसे, अब हम देख सकते हैं अच्छी तरह से केंद्रित है और अच्छा लगेगा 1152 01:01:18,950 --> 01:01:23,720 उपकरणों की एक किस्म पर। 1153 01:01:23,720 --> 01:01:27,280 >> जो होगा, स्वत: के लिए स्विच ViewController कोड को ले आओ। 1154 01:01:27,280 --> 01:01:29,030 और अब इस महत्वपूर्ण हिस्सा है। 1155 01:01:29,030 --> 01:01:34,590 आप इन कनेक्ट होने के लिए आदेश में दो तत्वों, यूआई के लिए अपने कोड, 1156 01:01:34,590 --> 01:01:36,680 आप आइटम का चयन करें कि आप कनेक्ट करना चाहते हैं। 1157 01:01:36,680 --> 01:01:39,570 इस मामले में तो, हम वास्तव में सांकेतिक शब्दों में बदलना चाहते हैं 1158 01:01:39,570 --> 01:01:43,520 निहित है कि छवि को बदलने इस यूआई छवि देखने के भीतर। 1159 01:01:43,520 --> 01:01:47,070 तो आप पर नियंत्रण अगर क्लिक करें छवि देखें और खींचें, 1160 01:01:47,070 --> 01:01:51,960 क्या आप एक छोटे से बार मिल नोटिस हूँ कि, आप सब कुछ इस पॉप के चलते जब 1161 01:01:51,960 --> 01:01:53,550 ऊपर हो जाएगा। 1162 01:01:53,550 --> 01:01:56,470 >> और यह हम कहते हैं कि एक संबंध बनाते हैं। 1163 01:01:56,470 --> 01:01:59,300 और यहाँ से मैं इसे देना चाहता हूँ एक नाम, गैलरी की तरह कुछ। 1164 01:01:59,300 --> 01:02:00,240 हिट दर्ज करें। 1165 01:02:00,240 --> 01:02:03,040 और यह वास्तव में प्रदान करता है एक चर बुलाया गैलरी 1166 01:02:03,040 --> 01:02:08,600 मैं तो अपने कोड में संदर्भित कर सकते हैं कि उदाहरण के लिए, छवि बदलने के लिए। 1167 01:02:08,600 --> 01:02:10,430 तो कैसे कोड है कि वास्तव में दिखता है? 1168 01:02:10,430 --> 01:02:13,030 खैर फिर, मैं नहीं करना चाहता है इस पर बहुत अधिक समय खर्च करते हैं। 1169 01:02:13,030 --> 01:02:15,430 और मैं करने के लिए प्रोत्साहित करते हैं इसे डाउनलोड करने और एक नज़र रखना। 1170 01:02:15,430 --> 01:02:18,330 लेकिन ज्यादातर में से एक महत्वपूर्ण पहलू कोड है 1171 01:02:18,330 --> 01:02:20,980 कि वास्तव में एक छवि को लायेगा। 1172 01:02:20,980 --> 01:02:26,470 >> मैं चाहता हूँ कि इस मामले में तो मेरी तस्वीरें भीतर प्राप्त करने के लिए 1173 01:02:26,470 --> 01:02:28,520 निहित है जो सरणी, मेरी कक्षा के भीतर। 1174 01:02:28,520 --> 01:02:33,390 मैं नाम और यूआरएल को परिभाषित करना चाहते हैं कि इस JSON से बाहर विश्लेषित किया गया है। 1175 01:02:33,390 --> 01:02:39,810 असल में प्राप्त करने के लिए डिवाइस पूछना यूआरएल, इस से यूआरएल लाने के लिए 1176 01:02:39,810 --> 01:02:44,060 और फिर से डेटा लाने उस URL की सामग्री। 1177 01:02:44,060 --> 01:02:49,430 फिर एक छवि में है कि डेटा परिवर्तित यूआई छवि में यह पारित करके। 1178 01:02:49,430 --> 01:02:52,880 तो फिर, ये सभी अलग-अलग प्रकार के होते हैं वस्तुओं, कक्षाओं के विभिन्न प्रकार के। 1179 01:02:52,880 --> 01:02:58,410 >> और फिर मैं तो सेट कर सकते हैं मेरे उस डेटा के बराबर gallery.image। 1180 01:02:58,410 --> 01:03:00,750 और कहा कि मांस की तरह है यह की है कि वास्तव में तो है 1181 01:03:00,750 --> 01:03:08,250 डेटा from-- परिवर्तन को बदलने में सक्षम अगले करने के लिए एक से तस्वीर। 1182 01:03:08,250 --> 01:03:10,660 तो फिर, उम्मीद है कि अब निर्माणों की एक बहुत 1183 01:03:10,660 --> 01:03:12,240 थोड़ा और अधिक समझ कर देगा। 1184 01:03:12,240 --> 01:03:15,260 कुछ है कि वहाँ नोटिस यहाँ विस्मयादिबोधक अंक। 1185 01:03:15,260 --> 01:03:19,810 विस्मयादिबोधक अंक हैं अनिवार्य रूप से optionals से संबंधित है। 1186 01:03:19,810 --> 01:03:22,657 >> क्या मैं मूल रूप से कह रहा हूँ है कि यहां तक ​​कि जाँच के बिना 1187 01:03:22,657 --> 01:03:24,490 डेटा अगर वहाँ देखने के लिए यह वैकल्पिक भीतर, 1188 01:03:24,490 --> 01:03:27,140 मुझे आगे जाना है और कल्पना करने के लिए जा रहा हूँ कि वहाँ है और इसे खोलना। 1189 01:03:27,140 --> 01:03:31,340 हम के सादृश्य इस्तेमाल किया है कि याद रखें optionals के लिए एक पैकेज की तरह 1190 01:03:31,340 --> 01:03:34,700 और हम खोलना करने की जरूरत है पैकेज डेटा बाहर खींचने के लिए और। 1191 01:03:34,700 --> 01:03:37,570 विस्मयादिबोधक बिंदु वास्तव में होता है कि सेना। 1192 01:03:37,570 --> 01:03:39,590 >> लेकिन मैं यह पता है कि सुरक्षित मैं जाँच की वजह से 1193 01:03:39,590 --> 01:03:42,070 छवि डेटा बराबर है देखने के लिए शून्य करने के लिए, मैं वास्तव में जाँच की है 1194 01:03:42,070 --> 01:03:45,420 कि वैकल्पिक देखने के लिए अगर था, वास्तव में, असफल रहा। 1195 01:03:45,420 --> 01:03:47,110 कि था, वास्तव में, पहले से ही विफल रहे। 1196 01:03:47,110 --> 01:03:52,450 और इसलिए मुझे लगता है मैं यह करने के लिए एक बार यकीन है कि बिंदु मैं सुरक्षित कि डेटा खोलना कर सकते हैं। 1197 01:03:52,450 --> 01:03:55,710 आप भी इसे देख सकते हैं एक प्रश्न चिह्न के रूप में। 1198 01:03:55,710 --> 01:03:59,100 हम जहां के लिए नीचे स्क्रॉल तो अगर मैं वास्तव में डेटा पार्स करने की जरूरत है। 1199 01:03:59,100 --> 01:04:01,850 >> तो द्वारा बंद कर दिया जाना नहीं है लंबा नाम की इन प्रकार के। 1200 01:04:01,850 --> 01:04:06,580 आप एप्पल में पा सकते हैं डेवलपर साइट एक बहुत 1201 01:04:06,580 --> 01:04:09,620 सभी के लिए संदर्भ की वस्तुओं और प्रक्रियाओं के सभी 1202 01:04:09,620 --> 01:04:11,170 वास्तव में यह संभव बनाते हैं। 1203 01:04:11,170 --> 01:04:15,990 लेकिन यह अनिवार्य है कि नोटिस मैं इसे कुछ डेटा पास जहां एक समारोह। 1204 01:04:15,990 --> 01:04:18,410 और मैं डेटा के कुछ प्रकार वापस मिलता है। 1205 01:04:18,410 --> 01:04:24,190 और मैं करने के लिए कीवर्ड के रूप में इस का उपयोग करने की आवश्यकता है इस NSDictionary में कन्वर्ट? 1206 01:04:24,190 --> 01:04:26,490 कौन सा एक, फिर से है वैकल्पिक NSDictionary। 1207 01:04:26,490 --> 01:04:31,070 मैं तो करने की आवश्यकता है अगर यह मौजूद है देखने के लिए जाँच। 1208 01:04:31,070 --> 01:04:37,130 >> चलो तो अगर मुझे लगता है कि उपयोग कर सकते हैं सफल बराबर होती है, पार्स 1209 01:04:37,130 --> 01:04:40,620 तो मुझे लगता है कि वैकल्पिक जानते हैं कि वास्तव में कुछ डेटा शामिल हैं। 1210 01:04:40,620 --> 01:04:43,840 या क्या मैं यहाँ था के लिए गया था सिर्फ इतना है कि अगर वहाँ मान 1211 01:04:43,840 --> 01:04:49,067 यह वास्तव में सुरक्षित है कि कोई त्रुटियाँ थे। 1212 01:04:49,067 --> 01:04:51,400 सब ठीक है, मैं धन्यवाद देना चाहता हूँ आप सभी को आने के लिए बहुत बहुत धन्यवाद। 1213 01:04:51,400 --> 01:04:53,540 मैं यह एक बहुत कुछ था पता है, लेकिन यह केवल एक घंटे का था 1214 01:04:53,540 --> 01:04:55,920 कुछ के बारे में बात करने के लिए सुंदर उन्नत सामान। 1215 01:04:55,920 --> 01:04:59,640 और तो उम्मीद है कि आप एक मिल जाएगा मौका कोड के सभी डाउनलोड करने के लिए 1216 01:04:59,640 --> 01:05:01,657 और एक बेहतर, अधिक ले इस पर पूरी तरह से देखो। 1217 01:05:01,657 --> 01:05:04,240 क्रमबद्ध के सभी के अपने आप को समझाने सामान का हो रहा है कि। 1218 01:05:04,240 --> 01:05:06,800 और मैं आपको धन्यवाद देना चाहता हूँ सब, फिर से, आने के लिए। 1219 01:05:06,800 --> 01:05:08,760 अपने अंतिम परियोजनाओं के साथ और अच्छी किस्मत। 1220 01:05:08,760 --> 01:05:10,600 आपका दिन शानदार गुजरे। 1221 01:05:10,600 --> 01:05:11,467