वाणिज्यिक Android ऐप्स बनाने के लिए डेवलपर को क्या पता / पता होना चाहिए? [बन्द है]


21

एंड्रॉइड और मोबाइल विकास विकास का एक रोमांचक क्षेत्र है। जैसा कि यह एक नया अनुशासन है, कौशल के मामले में व्यावसायिक रूप से मजबूत अनुप्रयोगों के निर्माण के लिए एक Android डेवलपर से क्या उम्मीद की जाएगी? समस्या है कि मुझे और मुझे लगता है कि, प्रौद्योगिकी में कई अन्य "नॉब्स" जानना चाहेंगे कि तकनीकी कौशल के क्षेत्र और आवश्यक उन्नत विषयों की प्रगति है जो Google द्वारा प्रदान किए गए बहुत मूल आधारों से परे हैं। ऐसी बहुत सी जानकारी है जो काफी उपयोगी है लेकिन इसका आयोजन न तो अनुशासन और न ही आदेश की श्रेणियों में किया जाता है।

अपडेट : इसे इस तरह से देखें। यदि आप एक वरिष्ठ देव हैं, और एक विशेष परियोजना के लिए एंड्रॉइड पर एक साथी सहयोगी को गति प्राप्त करने की आवश्यकता है, (इस प्रश्न के लिए आपके विवेक पर), तो आप क्या करेंगे?


कमर्शियल से आपका मतलब "कमर्शियल क्वालिटी" या "पैसा कमाना" है और अगर बाद में आपका मतलब इलाके में नौकरी पाने से है या अपने लिए ऐप लिखकर और बेचकर है?
जॉन हॉपकिंस

@Jon। उनमें से किसी भी क्षेत्र को छोड़कर नहीं। लेकिन (मुझे लगता है), मेरे जैसे डेवलपर्स के बहुत सारे हैं जो अपने वर्तमान संगठन को प्रभावी ढंग से उपकरणों पर विस्तारित करना चाहते हैं। इसलिए, इसमें वास्तव में "पैसा कमाना" या एक नया काम शामिल नहीं है, बस भूख से कार्यकारी अधिकारियों / सड़क योद्धाओं के लिए उद्यम का विस्तार करना।
गुस्से में

जो मैं देख रहा हूं, वह एंड्रॉइड में वरिष्ठ डेवलपर्स से सलाह है, जिनके पास "ऊह! आपको इसे पहले पढ़ना चाहिए, और फिर इसे HTTP के लिए, या यह इंटरफ़ेस डिज़ाइन अपील करने के लिए और यह 2D / 3D ..." क्षणों को खींचने के लिए। मैंने इसे प्रतिबिंबित करने के लिए अपना प्रश्न अपडेट किया है।
नाराजगी

जवाबों:


16

इस प्रश्न के कई पहलू हैं:

तकनीकी दृष्टिकोण से , "कैसे?"

कई तकनीकों में महारत हासिल है "प्लस टू है"।

  1. नंबर एक जावा हैएंड्रॉइड एसडीके इस धारणा पर आधारित है कि सभी ऐप जावा में लिखे गए हैं । हालाँकि, निश्चित रूप से .net ( मोनोडॉइड देखें ) विकसित करने के लिए कुछ उभरते हुए तीसरे पक्ष के समाधान हैं , आखिरकार, अंतर्निहित ओएस लिनक्स है।

  2. दूसरा है ग्रहण । हालाँकि आस-पास 3rd पार्टी SDK की संख्या है, ADT की तुलना में कुछ सट्टेबाज, Intellij पर , या Netbeans पर , Google के प्रयासों को आधिकारिक तौर पर अभी के लिए केवल ग्रहण पर केंद्रित किया गया है।

संपादित करें: जनवरी 2016 तक Google आधिकारिक तौर पर अपने आधिकारिक आईडीई के रूप में एंड्रॉइड स्टूडियो का समर्थन कर रहा है।

Android आर्किटेक्चर में, कई बिल्डिंग ब्लॉक्स हैं जिनके लिए थोड़ा सा एक्सपोजर हमेशा मददगार होगा:

  1. SQLite

  2. वीडियो और ऑडियो स्ट्रीमिंग, कोडेक्स की सामान्य धारणा। OpenCore (android.media) के लिए।

  3. OpenGL ड्राइंग।

  4. REST आधारित वेब सेवाएँ, XML या JSON।

  5. मूल निवासी कोड विकास के लिए एआरएम वास्तुकला से संबंधित विचार।

इसके अलावा, मेरे क्रिस्टल कटोरे में पढ़ते हुए, एंड्रॉइड डेवलपर्स को अपने लिनक्स को भी जानना चाहिए और उस दिन के लिए देशी भाषाओं में कुशल होना चाहिए जब Google जावा को डायन करता है और इसे गो या किसी अन्य सामान के साथ स्थानापन्न करता है, जो कहीं न कहीं से पीसा जा सकता है (उनकी " मूल ग्राहक " पहल देखें ब्राउज़र डोमेन में)। Google ने पहले से ही सी और सी ++ के लिए NDK (Native Development Kit) को मानक JNI तंत्र का उपयोग करके Dalvik पूरक करने के लिए जारी किया है।

"क्या?" का जवाब देते हुए, व्यावसायिक दृष्टिकोण से

एंड्रॉइड डेवलपर्स को खुद एंड्रॉइड उपयोगकर्ता होना चाहिए। हालांकि, न केवल मानक मोबाइल फोन उपयोगकर्ता, बल्कि टैबलेट उपयोगकर्ता भी हैं। उन्हें वास्तव में एक नौकरीपेशा रवैया अपनाना चाहिए - हमेशा खुद से पूछते हुए कि "मैं अपने फोन, अपने टैबलेट या किसी भी-अभी तक बाजार-उपभोक्ता-इलेक्ट्रॉनिक्स-उपकरण के साथ बेहतर कैसे कर सकता हूं?"।

बहुत सारे एंड्रॉइड एप्लिकेशन हैं जिनके पास अभी तक कोई मार्केट लीडर नहीं है, जरूरी नहीं कि गतिशीलता से संबंधित हो (या सामान्य उबाऊ "जहां-जहां-निकटतम-पिज्जा?" ऐप)। यहाँ कुछ लोगों को मैं व्यक्तिगत रूप से अपने दिमाग से नहीं निकाल सकता (जब तक मेरे पास अधिक समय नहीं है; ;-)

  1. अपने बच्चे को आकर्षित करने और पढ़ने के लिए सिखाना।

  2. विदेशी भाषाओं को सीखने के लिए फ्लैशकार्ड।

  3. यूके-फ्रीसैट टीवी-गाइड + रिमोट कंट्रोल।

  4. तुम्हारा यहाँ (व्यंजनों व्यंजनों ... आदि)।


मुझे आपका जवाब पसंद है, क्या आप SQLLite, Webservices / REST / JSON और OpenGL के लिए उपयोग किए गए कुछ लिंक प्रदान कर सकते हैं?
क्रोधितगीत

12

ईमानदार होने के लिए, मुझे लगता है कि आपको केवल Google की आवश्यकता है और कुछ शोध करना चाहिए।

यहाँ कुछ दिलचस्प लिंक दिए गए हैं, जो एक अच्छी शुरुआत दे सकते हैं।

आपके द्वारा चर्चा किए गए Google दस्तावेज़ में एडिटॉन में कई अन्य हैं।

आशा है कि यह आपको शुरू हो जाएगा, आप जो विवरण चाहते हैं उसे पाकर!

शुभ लाभ


हाय, माफ करना, अगर यह मूर्खतापूर्ण है, लेकिन मैं यहाँ नया हूँ! इसे क्यों वोट दिया जाएगा? मेरे द्वारा पूछे जाने का कारण यह है कि मैंने देखा कि किसी और ने इस सवाल का जवाब नहीं दिया और कभी-कभी (मुझे लगता है कि वैसे भी) आपको बस दूर जाने की जरूरत है और खुद ही जवाब देने की जरूरत है। Thats सब मैं कुछ बुनियादी शुरुआत बिंदुओं के साथ सुझाव दे रहा था, तो इसमें क्या गलत है?

नकारात्मक का मुकाबला करने के लिए +1। इसके अलावा यह कुछ अच्छे लिंक देता है :)
डैरेन यंग

@ डेरेन यंग - थैंक्स, लेकिन मुझे सिर्फ इस बात में दिलचस्पी थी कि यह मतदान क्यों हो सकता है। इसलिए मैं साइट का बेहतर उपयोग कर सकता हूं लेकिन +1 का हमेशा स्वागत है!

@Digger। उस जानकारी के लिए धन्यवाद। यह प्रवेश स्तर का सामान है जिसे मैंने पहले ही ढूंढने में कामयाबी हासिल कर ली है। मैं उम्मीद कर रहा था कि अधिक वरिष्ठ डेवलपर्स / कूदेंगे और इस उत्तर को थोड़ा और आगे ले जाएंगे। +1
क्रोधितगीत

@giulio - धन्यवाद, आशा है कि आपको वह जानकारी मिल जाएगी जिसकी आपको तलाश है।

5

Google की आधिकारिक डेवलपर गाइड

मैं एंड्रॉइड के लिए Google के देव गाइड पर एक नज़र डालूंगा, जिसमें आपके ऐप को एंड्रॉइड ऐप के रूप और स्वरूप के अनुरूप बनाने के लिए सर्वोत्तम अभ्यास और दिशानिर्देश शामिल हैं।


धन्यवाद। मैंने पहले ही Google एसडीके और देव गाइड ( डेवलपर . android.com/guide/index.html ) की खोज कर ली है। लेकिन पाया गया कि कमर्शियल ग्रेड एप्लिकेशन डेवलपमेंट और परिनियोजन के लिए बहुत कुछ गायब है।
गुस्से में

3

दो बातें मैं देखूंगा। एक है ऐप्पल के निर्माण के लिए डिज़ाइन दिशा-निर्देश। मुझे पता है कि सवाल एंड्रॉइड ऐप के बारे में था, लेकिन ओवररचिंग सिद्धांत लागू होते हैं और आपको एक 'ऐप' डिज़ाइन तरीके से सोचने के लिए मिलते हैं, जो वास्तव में डेस्कटॉप ऐप डिज़ाइन के दृष्टिकोण से काफी अलग है।

इसके अलावा, मैं ऐप्लिसिटर टाइटेनियम पर एक नज़र डालूंगा जो एक उपकरण है जो आपको एक जावास्क्रिप्ट / वेब देव प्रकार के वातावरण से आईफोन, आईपैड और एंड्रॉइड पर मूल कोड में पोर्ट कोड की अनुमति देता है। मैंने इसे जल्दी से छोटे ऐप बनाने का एक उपयोगी तरीका ढूंढ लिया है। आप 'किचन सिंक' उदाहरण डाउनलोड कर सकते हैं, जैसा कि नाम से पता चलता है, सभी उपलब्ध मूल कार्यक्षमता को प्रदर्शित करता है। मैं निश्चित रूप से इसे शुरू करने के स्थान के रूप में सुझाऊंगा।


धन्यवाद टाइटेनियम को देख रहा है। मैंने उत्तर देने वाले की मदद करने के लिए प्रश्न को अपडेट किया है जो मैं उत्तर में देख रहा हूं।
नाराजगी

2

मुझे अक्सर नए मोबाइल डेवलपर्स में 3 चीजें याद आती हैं, आवश्यक प्रोग्रामिंग भाषा (एस) के साथ बुनियादी कौशल के बाद, और एसडीके उपकरण और पुस्तकालयों का ज्ञान (जो रॉकेट विज्ञान नहीं है ... 14 साल के बच्चों ने कथित तौर पर विकसित ऐप हैं)।

  1. विवश वातावरण के लिए विकास करना। सीपीयू, मेमोरी, डिस्प्ले पिक्सल्स, और उपलब्ध बैटरी पॉवर सभी मोबाइल उपकरणों पर अधिक विवश हैं। कुछ प्रोग्रामर कभी भी तेज और छोटे प्रोग्रामिंग को उजागर नहीं करते हैं। आप समस्याओं को हल करने के लिए बस उसी तरह नहीं सोच सकते हैं जब आप 5kW की शक्ति और उपलब्ध शीतलन आदि के साथ रैक कर सकते हैं, आदि कुछ चालें जो पुराने टाइमर 1kHz सीपीयू पर 48kB के साथ महान गेम को कोड करते हैं। स्मृति के, या कुछ ऐसे। शायद एक Arduino या अन्य छोटे नियंत्रक पर कोडिंग का अभ्यास करें।

  2. यूआई परिचित। एक उपयोगकर्ता आमतौर पर अपने मोबाइल डिवाइस के साथ डेस्कटॉप सिस्टम से अलग-अलग तरीकों से बातचीत करता है। एक के आसपास एक ले। शायद कई मॉडल। उन्हें इस्तेमाल करें। बहुत सारे ऐप और समालोचना का उपयोग करें (फीचर्स नहीं, लेकिन) वे कितने आसान हैं, खराब लाइटिंग में, चलती वाहनों को उछालने में, आदि पढ़ें और सभी विभिन्न मोबाइल एचआईजी को फिर से पढ़ें। जानिए ऐसे यूज़र्स को क्या पसंद है और क्या पसंद नहीं है, जिनके लिए आप यूआई कोडिंग कर रहे हैं।

  3. क्विर्क परिचित। कुछ उपकरण और पुस्तकालय नए हैं और "quirks" हैं। समस्याओं और समाधानों के लिए डेवलपर बोर्ड पढ़ें ताकि आप वही गलती न करें जो अन्य डेवलपर्स के अरबों ने ठोकर खाई है। मैं स्टैकओवरफ्लो पर बहुत सारे सवाल देखता हूं कि कैसे सामान करना है कि हार्डवेयर, एपीआई या ऐप वितरण मॉडल भी अनुमति नहीं देते हैं। पूरी तरह से कंपनियों ने iPhone ऐप स्टोर के लिए असंभव करने की कोशिश में अपना समय बर्बाद किया है।


घुसपैठ .. क्या आप उन विषयों को कवर करने वाली साइटों को कोई संदर्भ प्रदान कर सकते हैं?
क्रोधितगीत

1

मैंने अपने मैनर्स को निम्न मैनर में प्रशिक्षित किया।

चरण 1: मैं उन्हें एंड्रॉइड मार्केट में कुछ मुफ्त एप्लिकेशन और एपीआई डेमो देखने के लिए कहता हूं क्योंकि वे भी हैं कि वे कुछ विचारों को पकड़ सकते हैं। ( http://developer.android.com/resources/samples/ApiDemos/index.html ) और http://www.androidpeople.com/ भी

उदाहरण के लिए: एंड्रॉइड के लिए IBNLive ऐप क्योंकि जब वे इस एप्लिकेशन को देखते हैं, तो वे एक मोटा विचार प्राप्त कर सकते हैं कि ये चीजें संभव हैं, क्यों हम इसे व्यवस्थित / उपयोग, डिजाइन या नियंत्रण या कार्यक्षमता को पसंद नहीं कर सकते हैं।

Step2: एक बार जब वे एक आशा प्राप्त कर लेते हैं, तो मौजूदा एप्लिकेशन को देखकर, वे Google के साथ-साथ एंड्रॉइड डेवलपर गाइड को भी खोज सकते हैं, जो एंड्रॉइड के लिए बाइबल के रूप में कार्य करता है, और पता चला।

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


0

तकनीकी से बहुत अधिक महत्वपूर्ण (जो सीखा जा सकता है और वैसे भी बहुत कठिन नहीं होना चाहिए) यह जानना है कि क्या करना है, किसके लिए है, और क्या आप इसे पर्याप्त रूप से बेच पाएंगे। वह अंतिम भाग अभी भी Android पर एक समस्या है, जैसा कि iOS के विपरीत है।

इसलिए, एंड्रॉइड विकास सीखना शुरू करने से पहले, आप जो हासिल करना चाहते हैं, उसे कैसे प्राप्त करें, और क्या यह वास्तव में टिकाऊ है, इसकी स्पष्ट तस्वीर बनाएं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.