هل C# تغنيني عن ال Java في برمجة الاندرويد ؟؟

السلام عليكم ...

شاهدت مؤخرا فيديو لاستاذ الفاضل عبد الله عيد عن تطوير اندرويد .. قال في الفيديو انك لن تستطيع ان تحترف بناء تطبيقات اندرويد الا اذا تعلمت اساسيات الجافا جيدا وان تعلم لغات اخري لبرمجة اندرويد مضيعه للوقت .. وانا احب بيئه العمل .net ولغه ال C# قطعت فيها مشوار جيد ..

فهنا السؤال هل ستغنيني الC# عن الJava وتساعدني علي بناء تطبيقات قويه ام هذا مضيعه للوقت وسأحتاج لتعلم اكواد الجافا وترجمتها ل C# مثل ما قال ؟ وخاصة ان معظم شروحات الاندرويد بالجافا

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

من الافضل ان تتعلم جافا لانها ام الاندرويد

سابقا كنت ابرمج بالسي شارب فقررت ابدأ البرمجة في الاندرويد وبحكم معرفتي بالسي شارب اخترته للاندرويد لكن بعد ان قرأت في عدة مواقع وخاصة في الموقع الرسمي xamarin انه مصادر تعلم هذه الاخيرة شحيحة وستجد صعوبة في التعلم بعكس جافا المجتمع كبير حتى انك تستطيع ان تكتفي فقط بالموقع الرسمي للاندرويد

وزد على ذلك كل المشاكل التي تواجهك تجد حلولها خاصة في موقع stackoverflow ومواقع اخرى

زد على ذلك المصادر والدورات والكتب التي لا نهاية لها سواءا عربية او غربية

فانا انصحك بتعلم الجافا للاندرويد وبما انك مبرمج سي شارب فاظن انك لن تجد مشكلة فيها ان شاء الله

موفق ان شاء الله

لقلة المعلومات ودوات في xamarin افضل java او انتقل الي cordova

نعم

Cordova ليست دوما فعالة في التطبيقات المتخصصة لانها لاتعطيك تحكم كامل بموارد الهاتف

افضل استعمالها في بناء تطبيقات المواقع مثل تطبيق سوق كوم

او تطبيقات اخرى للاعلانات المبوبة او متاجر

ماذا تعني بالتطبيقات المتخصصة ؟

مجهول
  • حذف بواسطة المستخدم

برمجة تطبيقات الاندرويد عن طريق الC# يتم عن طريق اضافة اسمها Xamarin , هذه الاضافة اشترتها مايكروسوفت منذ فترة "اظن بـ 2015" وللبرمجة بهذه الاضافة لا بد لك من دفع اشتراك شهري لهم , أو يمكنك استخدامها بشكل مجاني لكن لن تتمكن من انشاء تطبيقات يتعدى حجمها نصف ميجا ! "ربما الة حاسبة تتطلب اكثر من نصف ميجا!" بينما في جافا يمكن البرمجة عن طريق Android Studio وهو مجاني ويمكن ايضا عن طريق Eclipse ومجاني ايضا .

وحسب علمي فانه لا يوجد اضافات غير Xamarin لبرمجة الاندرويد في C# .

ولا اظن ان الـC# ستوفر لك التحكم الكامل في الاندرويد كما توفره لك جافا , حيث جافا هي المعتمدة من جوجل في برمجة الاندرويد وكما هو معروف فـ Android Studio يعمل بالجافا .

واريد ان الفت انتباهك لنقطة وهي التعلم

فاذا اردت برمجة الاندرويد في C# لن تجد كمية الشروحات مثل التلك التي ستجدها في جافا

حيث جوجل لها دورات رسمية في برمجة الاندرويد موجودة على موقع udacity .

اعتقد انك تؤكد كلامه ف C# هي مضيعه للوقت .. ولكن فكره البدء من الصفر في تعلم لغه اخري والبحث عن شروحات لها عباره عن كابووس :/

لماذا انت مستائ هكذا ؟

هناك تشابه كبير بين #C وجافا

:)

لن تجد سوى فروقات بسيطة بين c# وجافا ، بالاضافة الى ذلك كونه مبرمج فيفترض انه ملم بأساسيات البرمجة ولن يكون صعبا عليه الانتقال الى لغة اخرى .

هل تستطيع تحمل شراء ترخيص زامارين؟

إذا أجبت بنعم فانتقل لقراءة الرابطين أدناه :

 https://www.quora.com/Why-w...

https://www.reddit.com/r/cs...

اظن انك مبرمج سي شارب

لن تجد صعوبة ابدا في الجافا لان طريقة كتابة الكود مماثلة للسي شارب مع بعض الاختلافات الخفيفة تتعود عليها بالممارسة الطويلة

في console ال C# كنت بستخدم console.write لاظهار كتابه ما

console.readline لادخال كتابه ما في الشاشه السودا

بينما في الجافا لا اعرف سوي System.out.println فكيف اظهر الشاشة السودا و ما كود اظهار الكتابه وكود ادخال الكتابه ؟

اظن في الجافا لا تظهر الشاشة السوداء

النتيجة تخرج في جزء تابع لل ide

اظن اسمها log او consol output

اذا كيف ابني برامج تحتاج لأدخال المستخدم ولا يوجد واجهه رسوميه ؟

قبل ان تتعلم الواجهات الرسومية يجب ان تتعلم مبادئ اللغة حتى تعود نفسك عليها حتى وان اضطررت لاستخدام printout

وذلك حتى تستطيع معرفة الفروقات بينها وبين السي شارب

اما عن الواجهات الرسومية ان كنت تقصد الويندوز تستطيع تنزيل بيئة netbeans فستجد فيها كل انواع التطبيقات ذات الواجهات الرسومية من

Application java

Application web (jsp,servelt....)

وغيرها..

انا اعلم ذلك ولذلك اسأل كيف اكتب البرنامج الذي يحتاج لادخال المستخدم بدون اي واجهه رسوميه مثل الconsole في الC#

لن تظهر "الشاشة السوداء" في جافا بل سيقوم ال IDE الذي تستخدمه باظهار النتائج في شاشة output

كيف اجعل المستخدم يدخل بيانات ليقوم البرنامج بمعالجتها .. كان الامر سهلا جدا ب c# لماذا الامر معقد في جافا ؟ :-D

AmmarRgx أضف ردا

تحتاج إلى مكتبة تدعى scanner على ما أذكر لن تحتاجها في برمجة الاندرويد والسبب أنك في الأندرويد ستحتاج إلى مربع لادخال النص لادخال البيانات لذلك الطريقة ستكون مختلفة ، فلا تخف كثيرا من الأوامر التي تستخدم للتعامل مع "console" لأن اوامر الادخال والاخراج فيها لن تكون بحاجة اليها غالبا

مثال ع ما اقصد .. ولنفرض ان شخص طلب مثال ﻷله حاسبه .. فقمت انا ببناء كلاس واضفت الدوال واستدعيت كونستراكتور لادخال باراميترين .. وهنا يتوقف البرنامج ع ادخال المستخدم لقيمتي البارامترين ليتم عمل الحاسبه وهنا المشكله .. ما الكود المطلوب لجعل المستخدم يدخل القيم

AmmarRgx أضف ردا

```

   Scanner sc = new Scanner(System.in);
   int i = sc.nextInt();
   System.out.println("the number is :" + i);

```

طبعا يجب عليك أن تقوم باستدعاء المكتبة java.util.Scanner

في حال أردت ادخال نص بدلا من رقم قم بوضع nextLine بدلا من nextInt ولا تنسى ان تغير نوع المتغير i

رائع اخي .. هذا ما اريده .. ولكني اريد ان اتعلم عن المكتبات هل لديك مصادر ؟

https://docs.oracle.com/jav...

هذا مرجع رسمي من اوراكل يحتوي كل شيء تحتاجه في جافا ، وغالبا ستتعلم المكتبات بمرور الوقت أثناء تطبيقك لبعض المشاريع .

الجافا هي اللغة الأم للأندرويد لذلك فهي الخيار الأول

إذا كنت تحب C# فبرمج لأنظمة الـ IOS

لماذا تريد التوجه للأندرويد على كل حال

وأنت لديك معرفة مسبقة في C# وتستيطع بناء تطبيقات IOS

وفي الغالب فإن تطبيقات الأيفون ارباحها اكثر من تطبيقات الأندرويد

فأغلب من يستخدمون أجهزة IOS لديهم قابلية أكبر لشراء التطبيقات بعكس الأندرويد

طبعاً لا أقول بأن البرمجمة للأندرويد بالعكس لكن في الأندرويد هناك الكثير من التطبيقات المجانية

وهذه ميزة طبعاً للمستخدم ولكن الأمر يختلف بالنسبة للمبرميجين

وجهة نظر ..

توجد فريمورك تغنيك عن تعلم الجافا في برمجة الاندرويد

اذ يمكنك استخدام السي شارب لبناء السورس الخاص بك لكنها غير مجانية

اذا كنت تريد نصيحة تعلم للجافا

من حكم تجربتي لايوجد اختلاف كبير عن السي شارب فقط السنتاكس وسوف تتأقلم معه بمرور الوقت ^_^

باستخدام Visual Studio 2015

لن تحتاج الى تعلم شيئ آخر

لطالما كانت مايكروسفت تغلب شركة SUN بكل شيء البرمجة انظمة التشغيل النصات و لكن لان نظام الاندرود صنع بجافا ف C# ستسقط و ان كانت افضل من جافا

اما بنظرتي الشخصية افضل C#