IOS विकास कैसे सीखें

समय-समय पर, लोग मुझसे पूछते हैं कि आईओएस विकास कैसे सीखें। तो अब हम शुरू करें।

शुरू करने से पहले, अपने अंतिम लक्ष्य के बारे में गंभीर रहें। क्या आप एक अवधारणा को तैयार करने, धन प्राप्त करने और फिर उससे निपटने के लिए किसी और को किराए पर लेने की कोशिश कर रहे हैं? क्या आप एक "सामान्यवादी" हैं जिन्हें वास्तव में तेजी से गति प्राप्त करने की आवश्यकता है। मुझे अच्छी खबर मिली है: मैंने कुछ ही हफ्तों में लोगों को ऐप शिप करते हुए देखा है।

लेकिन मेरी सलाह आपके पहले प्रोजेक्ट के लिए अनुकूलन के बारे में नहीं है। मैं लंबी दौड़ के बारे में अधिक सोच रहा हूँ आप पहले से ही जानते हैं कि कैसे प्रोग्राम करना है, और आप iOS विकास में समय का एक अच्छा हिस्सा निवेश करने के लिए तैयार हैं।

चरण 1: अपने लिए निर्माण के लिए कुछ चुनें

शायद मैं अलग-अलग तार वाला हूं, लेकिन सिर्फ एक पाठ्यपुस्तक नहीं पढ़ सकता। मुझे संदर्भ और अभ्यास की जरूरत है।

जब मैं कोई भाषा सीख रहा होता हूं, तो मुझे सुदृढीकरण के लिए एक स्कैपपैड की आवश्यकता होती है। मैंने स्विफ्ट सीखने के दौरान प्लेग्राउंड को अमूल्य पाया।

आईओएस को ऊपर से नीचे तक सीखने के लिए, एक छोटे ऐप के साथ आओ जो एक खुजली को खरोंच करता है। यदि यह आपको प्रेरित करता है, तो यह एक टूडू सूची, ध्यान ऐप या मौसम परीक्षक हो सकता है। मैं कुछ अधिक व्यक्तिगत की ओर झुक रहा हूं। अरे, शायद आपके माता-पिता के व्यवसाय में मदद करने के लिए कोई ऐप है?

चरण 2: भाषाओं का अध्ययन करें

इससे पहले कि आप मंच को समझें, अंदर और बाहर की भाषाओं को जानें। हाँ, भाषा बहुवचन है।

जबकि स्विफ्ट महत्वपूर्ण द्रव्यमान तक पहुँच गया है, वहाँ पर बहुत सारे उद्देश्य-सी कोड हैं। आपको भाषा के प्रत्येक विवरण में महारत हासिल करने की आवश्यकता नहीं है, लेकिन आपको इसे पढ़ने में सक्षम होना चाहिए। मैं एक दिन में इंजीनियरों को ऑब्जेक्टिव-सी पढ़ाता था। यह एक छोटी सी भाषा है।

स्विफ्ट: ऐपल की स्विफ्ट प्रोग्रामिंग लैंग्वेज बुक पढ़ें। यदि आप एक त्वरित परिचय चाहते हैं, तो ऐप्पल के वार्षिक डेवलपर सम्मेलन, डब्ल्यूडब्ल्यूडीसी से स्विफ्ट के साथ आरंभ करना देखें।

ऑब्जेक्टिव-सी: ऐप्पल के पास एक मुफ्त गाइड है, जो काम पूरा करता है।

क्या मैं [पसंदीदा भाषा] का उपयोग नहीं कर सकता?

जावास्क्रिप्ट, C # में ऐप्स बनाने के लिए थर्ड पार्टी टूल हैं, जो भी हो। प्लेग की तरह उनसे बचें। ज्यादातर आईफोन ऐप में स्विफ्ट और ऑब्जेक्टिव-सी का इस्तेमाल होता है। Apple के सभी टूलचैन उन भाषाओं के लिए अनुकूलित हैं। जब आपकी वैकल्पिक भाषा रहस्यमय कारणों से टूट जाती है - और यह - आप अपने दम पर करेंगे।

आपका अधिकांश समय वाक्यविन्यास नहीं, बल्कि Apple के ढांचे को सीखने में व्यतीत होने वाला है। इन चौखटे के लिए कोड नमूने स्विफ्ट में होंगे, इसलिए आपको वैसे भी स्विफ्ट सीखने की आवश्यकता है।

चरण 3: Apple के मार्गदर्शिकाएँ पढ़ें

IOS के विकास के बारे में तीसरे पक्ष की किताबों और ट्यूटोरियल और स्क्रैनास्ट की कोई कमी नहीं है। कुछ अच्छे हैं, कुछ बुरे हैं, और बहुत से आपको किसी ऐसी चीज़ पर बेचने की कोशिश कर रहे हैं जिसकी आपको ज़रूरत नहीं है। अंतिम प्राधिकरण Apple है, और वे उत्कृष्ट मुफ्त सामग्री देते हैं।

स्विफ्ट के साथ आईओएस ऐप विकसित करना शुरू करें। फिर "जहां से यहां तक ​​जाओ।" हर गाइड पढ़ें, यदि आप किसी विषय को अलग ढंग से सुनना चाहते हैं, तो WWDC वीडियो ब्राउज़ करें। फिर, यदि आप गहराई में जाना चाहते हैं, तो डॉक्स पढ़ें।

यदि Apple के डॉक्स थोड़े बहुत सूखे हैं, तो NSHipster जैसी साइटें कई शुरुआती विषयों को अधिक आकस्मिक टोन के साथ कवर करती हैं। RayWenderlich.com जैसी साइटें एक ट्यूटोरियल प्रारूप में सामग्री को कवर करती हैं। Objc.io में गहराई से लेखन है, लेकिन यह अभी आपके लिए बहुत उन्नत है।

ऐसे समय होते हैं जब तृतीय-पक्ष के लेखक Apple से असहमत होते हैं। अभी के लिए Apple का तरीका आज़माएं।

चरण 4: पढ़ना बंद करो। बस अपना ऐप बनाएं।

आपने वह सब कुछ अवशोषित कर लिया है जो Apple ने आपको दिया है? आप मुझे बता सकते हैं कि MVC क्या है? एक UIView क्या करता है? जब आप फंस जाते हैं तो आपको Google के बारे में पता होता है? अपना ऐप बनाएं।

गंभीरता से। बस इसे बनाने जाओ।

आपने एक बिंदु मारा, जहां आप पसंद करते हैं, "मैं किसी दृश्य की पृष्ठभूमि का रंग कैसे बदल सकता हूं?" पहला खोज परिणाम निश्चित रूप से स्टैक ओवरफ्लो होगा। UIView पर प्रलेखन के साथ इसे सत्यापित करें।

एक बार जब आप उच्च स्तर की अवधारणाओं से परे हो जाते हैं, और "मैं वास्तव में एक्स कैसे करता हूं," यह सभी Googling है। किसी भी डेवलपर से पूछें कि दो दृश्य नियंत्रकों के बीच कस्टम संक्रमण एनीमेशन कैसे लिखें। जवाब: "मैं इसे Google।"

यह सोचना कि आप केवल एक और ब्लॉग पोस्ट पढ़कर या एक और वीडियो देखकर कुछ मास्टर कर सकते हैं। नहीं। आप शायद मूल बातें समझते हैं। आप परीक्षण और त्रुटि के माध्यम से अगले स्तर पर पहुंच जाते हैं।

MVVM / VIPER / FRP के बारे में इस सामान के बारे में क्या?

यदि आप निर्माण करने से पहले बहुत अधिक पढ़ते हैं, और Apple से बहुत दूर चले गए हैं, तो आप विभिन्न iOS आर्किटेक्चर के बारे में पढ़ेंगे। ये उन समस्याओं को हल करने का प्रयास करते हैं जिन्हें आप अभी तक नहीं समझ पाए हैं। इनका आविष्कार तीसरे पक्ष द्वारा किया गया था, इसलिए Apple उन्हें समर्थन नहीं देता है।

ऐप्पल के बोरिंग आर्किटेक्चर, एमवीसी का उपयोग करके एक ऐप बनाएं। आपके द्वारा कुछ समय के लिए ऐसा करने के बाद, वापस जाएं और फिर उन आर्किटेक्चर पर एक नज़र डालें। मैं उनका उपयोग नहीं करता, लेकिन हे, शायद तुम उनमें मूल्य पाओगे।

लेकिन पैकेज प्रबंधकों और उपकरणों के निर्माण के बारे में क्या ?!

एक तर्क दिया जा सकता है कि आपको कार्टाज और कोकोपॉड्स के बारे में तुरंत सीखना चाहिए, जो निर्भरता के प्रबंधन के लिए तीसरे पक्ष के उपकरण हैं। या फास्टलेन, जो जटिल निर्माण कार्यों को स्वचालित करने का वादा करता है।

जब आप Apple के समर्थित टूलकिन से भटकते हैं, तो चीजें नाजुक हो जाती हैं, क्योंकि वे असमर्थित एपीआई पर निर्भर करते हैं। कुछ परियोजनाओं पर, इन साधनों को बचाने का समय सामयिक टूटने के लायक हो सकता है।

लेकिन इतनी सारी टीमें अपने सिर दर्द के कारण इन उपकरणों से बचती हैं, मैं उन्हें आवश्यक नहीं समझूंगा। काफी विपरीत। मेरी राय में, आपको इन उपकरणों का उपयोग तब तक नहीं करना चाहिए जब तक आप समझ नहीं लेते कि नीचे क्या चल रहा है।

चरण 5: पारिस्थितिकी तंत्र का अन्वेषण करें

Apple एक प्राधिकरण हो सकता है, लेकिन आपको कूल-ऐड को संतुलित करने के लिए विविध राय चाहिए। क्यूपर्टिनो के बाहर के अनुभवी डेवलपर्स ने Apple के एपीआई में सभी किनारे के मामलों की शिकायत की, और उनके चारों ओर काम करने के लिए भयानक भयानक हैक।

लेकिन जैसे ही आप बड़े iOS इकोसिस्टम में उद्यम करते हैं, आप इंटरफ़ेस बिल्डर, कोर डेटा, ऑटो लेआउट, और अन्य बहुत सारी चीजों के बारे में तर्क देते हैं। वे हमेशा आंकड़ों और मतों के आधार पर ईंधन भरते हैं, डेटा नहीं।

आलोचनात्मक सोच का उपयोग करें। वापस कदम रखें और पूछें कि लेखक कहां से आ रहा है। यह केवल कुछ ब्लॉग पोस्ट को एक विषय पर एक प्राधिकरण बनने के लिए लेता है, भले ही लेखक ने इसके चारों ओर कुछ भी महत्वपूर्ण न भेजा हो।

मैं आपको केवल फेसबुक / इंस्टाग्राम / ट्विटर / Pinterest पर काम करने वाले लोगों की बात सुनने की सिफारिश नहीं कर रहा हूँ। दुनिया में 99% ऐप्स की तुलना में इन ऐप्स की बहुत अलग आवश्यकताएं हैं। लेंस के माध्यम से उनकी सलाह को फ़िल्टर करें, "यह वही है जो आप तब करते हैं जब आपके पास सौ डेवलपर होते हैं जो सैकड़ों लाखों लोगों द्वारा उपयोग किए जाने वाले ऐप पर काम करते हैं।" वे जोखिम उठाने की ओर झुकते हैं।

स्पेक्ट्रम के दूसरे छोर पर, छोटी-छोटी सलाहकारों के पास उन परियोजनाओं की विविधता के लिए उपयोगी अंतर्दृष्टि है जिनकी वे बाजीगरी कर रहे हैं। लेकिन कभी-कभी वे महत्वपूर्ण परियोजनाओं के लिए पर्याप्त स्थिर होने से पहले नई भाषाओं और रूपरेखाओं की सलाह देते हैं।

महत्वपूर्ण सोच का उपयोग करें, विशेष रूप से बहुत सारे अनुयायियों वाले लोगों पर।

चरण 6 से ∞: एक अलग ऐप बनाएं

आपने अभी एक टोडो सूची ऐप समाप्त किया है? महान। अब कुछ अलग तरह से काम करें, जैसे फोटो फ़िल्टर ऐप, ताकि आप AVFoundation के बारे में सीख सकें। जब आप ऐसा कर लें, तो कुछ ऐसा बनाएं जिसमें नक्शे की आवश्यकता हो, और आप GPS और MapKit के बारे में जानेंगे।

मैंने दस साल पहले कोको विकास मैक पर शुरू किया था, और मैं अभी भी नई चीजें सीख रहा हूं। एकमात्र रहस्य अपने आप को चुनौती देने के नए तरीके खोजना है।