क्या मुझे मोबाइल एप्लिकेशन डेवलपमेंट के लिए जावा सीखना चाहिए या C # करना होगा?


9

मैं .NET फ्रेमवर्क में देरी करने के लिए उत्सुक हूं, लेकिन अधिकांश मोबाइल एप्लिकेशन जावा में विकसित होने लगते हैं। मैं शायद सबसे कम नोकिया और मोटरोला जैसे एंड्रॉइड या आईफोन ओएस जैसे प्रिकियर फोन को लक्षित कर रहा हूं। क्या मैं इन सामानों को C # कर सकता हूं?

java  c#  mobile 

जवाबों:


9

नहीं, C # नहीं करेगा। आपको जावा सीखने की जरूरत है, और जे 2 एसई नहीं बल्कि जे 2 ईएमई क्योंकि अधिकांश कम-अंत वाले मोबाइल फोन केवल जे 2 ईएम का समर्थन करते हैं। हालाँकि, आप फिर से एंड्रॉइड पर विचार करना चाह सकते हैं क्योंकि यह कम-अंत वाले फोन के साथ भी लोकप्रिय हो रहा है। वैसे भी, J2ME और Android के लिए भाषा जावा है।


7

प्लेटफॉर्म पर निर्भर करता है-

Android - JAVA, C # (मोनोऑनड्रॉइड के माध्यम से)
IPhone - ऑब्जेक्टिव C, C # (MonoTouch के माध्यम से)
Windows Phone - C # (सिल्वरलाइट)
Meego - C ++ (QT)
सिम्बियन - C ++, JAVA

मुझे लगता है कि सिम्बियन ज्यादातर कंपनियों द्वारा गिराया जा रहा है। स्मार्ट फोन भविष्य हैं। और हर प्रकार के स्मार्ट फोन ओएस के लिए, सी # / मोनो उपलब्ध होगा (आपको इसके लिए अतिरिक्त भुगतान करना होगा, लेकिन इसके लायक प्रयोज्य) देशी प्लेटफॉर्म भाषा के साथ। तो, आप C # के लिए जा सकते हैं।

सही प्लेटफ़ॉर्म स्वतंत्रता प्राप्त नहीं की जा सकती है, लेकिन यदि आप हर जगह C # का उपयोग करते हैं, तो आप एक ही कोर लाइब्रेरीज़ का उपयोग कर पाएंगे और प्लेटफ़ॉर्म के लिए UI को ट्विक करेंगे।

लेकिन कम लागत वाले फोन के लिए, C # नहीं करेगा। आपको जावा के लिए जाना होगा।


1
मोनो विकल्पों का उल्लेख करने के लिए +1। अगर डिवेलपर्स से डिमांड काफी ज्यादा है तो वे दूसरे फोन प्लेटफॉर्म पर भी ब्रांच करेंगे।
एजेंट_9191

नोवेल विभाजन से पहले मोनो डेवलपर्स ने वेबओएस समर्थन का उल्लेख किया, जिससे आप कभी भी नहीं जानते!
विनिया जूल

1

कैंट विशेष रूप से मोटरोला या नोकिया के बारे में बताते हैं लेकिन आपको यह ध्यान रखने की आवश्यकता है कि इन फोन का समर्थन प्लेटफॉर्म क्या है। आप जावा में विकसित होने से बेहतर होंगे क्योंकि यह एक अधिक लोकप्रिय मंच है और केवल विंडोज मोबाइल पर निर्भर नहीं होना चाहिए। एक और बात C # जावा से इतनी बेशर्मी से है कि एक क्रॉस कंपाइलर करता है डेस्कटॉप ऐप्स के लिए ट्रिक यह हो सकता है कि यह मोबाइल ऐप्स पर भी लागू हो।


1
मैं इस क्रॉस कंपाइलर को देखना चाहता हूं - यह इस तथ्य को कैसे संभालता है कि भाषाओं के साथ जाने वाले पुस्तकालय बहुत अलग हैं?
बेवन

1

यदि आप विंडोज फोन 7 के लिए विकसित करना चाहते हैं, तो C # एकदम सही है (VB.NET जल्द ही आ रहा है।) आप अपने पास मौजूद किसी भी Silverlight या XNA ज्ञान का लाभ उठा सकते हैं। मुझे इस बात का कोई पता नहीं है कि क्या प्लेटफ़ॉर्म सफल होगा, लेकिन आप जो भाषा जानते हैं, उसका उपयोग करके अपने ऐप को परिष्कृत क्यों न करें, फिर अपने उपयोगकर्ता अनुभव, तर्क, गणना आदि में आश्वस्त होने के बाद इसे अन्य भाषाओं में पोर्ट करें? एमुलेटर जाहिरा तौर पर बहुत अच्छा है, और एक्सेलेरोमीटर-एमुलेटर और जीपीएस-एमुलेटर के साथ पूरक किया जा सकता है ताकि फोन कॉल करने के अलावा सब कुछ किया जा सके। (और वास्तव में, जो कॉल करने के लिए स्मार्टफोन का उपयोग करता है?)


मैं आम तौर पर सहमत होगा, लेकिन ओपी ने कहा कि वह ".NET फ्रेमवर्क में देरी करने के लिए तत्पर था" इसलिए मुझे यकीन नहीं है कि वह पहले से ही सी # से कितना परिचित है। साथ ही मुझे जितनी भाषा पसंद है, विंडोज फोन के लिए बाजार में थोड़ी कमी है।
डेवि 8

1

मैंने जावा में Android ऐप्स लिखना शुरू कर दिया है, जिनमें C # का पूर्व अनुभव है। मैंने पाया कि भाषा की कई मौलिक अवधारणाएँ समान हैं, इसलिए यह केवल कुछ मतभेदों को सीखने का विषय था, विशेष रूप से पुस्तकालयों के साथ। यदि आप सीख सकते हैं, तो दूसरे में कोडिंग बहुत सरल होगी (मेरे अनुभव के आधार पर)।

मैं जावा से शुरू करने की सलाह दूंगा। एंड्रॉइड सबसे लोकप्रिय मोबाइल ओएस बनने की राह पर है, इसलिए आप जानते हैं कि यह निश्चित रूप से थोड़ी देर के लिए होगा। इसके अलावा, जावा पुराना है, इसलिए आपके लिए उपयोग करने और सीखने के लिए अनगिनत पुस्तकालय और ट्यूटोरियल उपलब्ध हैं। एक बार जब आप जावा की मुख्य अवधारणाओं को समझ लेते हैं, तो C # सीखना एक हवा होना चाहिए - और आप वास्तव में कुछ नीट सुविधाओं (जैसे विशेषताओं और LINQ) की सराहना करेंगे जो कि C # को पेश करना है।

डिस्क्लेमर: मैंने C # (मुख्य रूप से ASP.NET MVC वेब डेवलपमेंट के लिए) के साथ शुरुआत की और फिर एंड्रॉइड ऐप लिखने के लिए जावा सीखा। मैंने C # के साथ कोई मोबाइल प्रोग्रामिंग नहीं की है, इसलिए मैं आपको यह नहीं बता सकता कि यह कैसा है।


0

शायद इसे "पार्श्व सोच" के तहत दर्ज करें, लेकिन अगर आपके पास "शुद्ध" वेब प्रौद्योगिकियों - एचटीएमएल, जावास्क्रिप्ट, सीएसएस - में सभ्य कौशल हैं और जो आप प्राप्त करने की कोशिश कर रहे हैं, उसके आधार पर फोनगैप (http: // www) की तरह कुछ जांचें। .phonegap.com / के बारे में)। IOS उपकरणों (iPhone, iPad) और Android के समर्थन के अलावा, उनके पास सिम्बियन के लिए भी कुछ समर्थन है। हालाँकि, आपको अपने मूल बाइनरी ऐप्स बनाने के लिए आम तौर पर "देशी" टूल की आवश्यकता होगी। उदाहरण के लिए, यदि आप iPhone देव करना चाहते हैं, तो आपको iPhone sdk, XCode और OSX चलाना होगा।

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