تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[برمجة الاندرويد بـ#C] بيئة Xamarin
#1
بسم الله الرحمن الرحيم

والصلاة والسلام على اشرف الخلق محمد وعلى آله الطيبين الطاهرين

السلام عليكم ورحمة الله وبركاته



--


اليوم شفت نفسي فاضي شوي فقررت اكتب هذي المقالة التي وعدت بكتابتها سابقا

ففي هذا المقال سنتعرف على بيئة Xamarin التي تتيح لنا برمجة تطبيقات الاندرويد وIOS بواسطة لغة السي شارب



فانبدأ ...









صفر :- أجزاء المقالة

1- ماهو Xamarin Studio
2- الاسئلة الشائعة حول الXamarin
3- شرح بيئة Xamarin (فيديو)
4- الخاتمة & المراجع












اولا :- ماهو Xamarin Studio


هو IDE (بيئة عمل) بسمح لك ببرمجة الاندرويد بواسطة تقنية Mono + تقنية ربط خاصة

فصار بالامكان الدمج بين مكتبات الجافا ومكتبات الدوت نت في مكان واحد :





وهو شبيه جدا ب Visual studio :





وايضا بمجرد تنصيب Xamarin سيتاح لك برمجة الاندرويد من خلال Visual studio Cool





وهذا متاح فقط للخطة Business ، في ما يلي جدول الخطط وكل خطة لها ميزاتها :




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


الموقع الرسمي لـ Xamarin


صفحة تحميل النسخة المجانية


لاتستخفوا بالموقع فهو مرجع كبير جدا ، وسأفصل ذلك في المقالة الثالثة .












2- الاسئلة الشائعة حول الXamarin


طبعا لكثرة الاسئلة ، قمت فقط بترجمة اهم الاسئلة واجوبتها ...



إقتباس :هل يمكنني استعمال Xamarin لبناء تطبيقات قوية واحترافية ؟

نعم ، بخلاف بيئات العمل الاخرى ، فتطبيقك الذي قمت بتطويره بواسطة Xamarin سيتم ترجمته بواسطة Complier خاص الى Native binary (يعني برنامج مصنوع خصيصا لمعالج معين) ، انتبهوا فنحن نقصد Complier وليس Interpreter (سأشرحه تحت) ، فالكود المترجم بواسطة الComplier يعطي اداء مذهل جدا لتطبيقك حتى لبعض سيناريوهات البرمجة مثل : توفير frame rate عالي للالعاب مع مؤثرات خيالية ومعقدة وكل هذا بحجم صغير! ، وايضا اضفنا بعض الكماليات البسيطة لجعل برنامجك يعمل اسرع على كل الاجهزة.


فيديو من الموقع يوضح الكلام السابق : هنا


بما انه جاء ذكر Complier وInterpreter فلابد من توضيح بعض المفاهيم فأنا لااريد ان تخرج من هذا المقال وفي بالك شيئ مبهم .





-------

Compailer VS Interpreter

باختصار شديد ...

الCompailer: يقوم بتحويل السورس كود الى ملف تنفيذي جاهز (exe) ، لمرة واحدة، ثم عند طلب تشغيل الملف التنفيذي لا يعيد الترجمة من البداية.

اما الInterpreter: فهو يقوم بتحويل السورس كود الى لغة وسيطة (اي انه ليس EXE) بل يسمى Byte-code ، الان لكي يتم تشغيل الكود على الجهاز ، يترجم الbytecode سطرا سطرا الى لغة الالة بواسطة طبقة تسمى virtual Machine .

ولهذا يقولون ان الملف الناتج من المفسر (Interpreter) يمكنه العمل على اي بيئة اخرى لأن الطبقة virtual Machine وهي تختلف من بيئة الى اخرى ، تحول الملف المفسر الى كود يفهمه المعالج الخاص بها .

ولكن يظل Compailer هو الاسرع بالتأكيد لأنه يترجم الى لغة الالة مباشرة ويعطيك ملف قابل مباشرة للتشغيل دون الحاجة الى طبقة تقوم بترجمة الملف الى لغة الالة.


لهذا اجتهدت شركة الXamarin لتطوير Compailerخاص لتترجم كود السي شارب مباشرة للغة الالة الخاصة بالاندرويد وهذا فعلا افضل كثيرا من الInterpreter


صورة توضح الفرق بين الـ[color=#FF0000]Compailer والـ Interpreter:




------





إقتباس :كيف يقوم Xamarin بتشغيل الكود الخاص بي على الاندرويد ؟

Xamarin يقوم بدمج جميع مايحتاجه التطبيق في الملف وذلك يتكون من : مكتبات الدوت نت mono وكل مايتعلق لجعل برنامج مكتوب بالسي شارب يعمل ، قمنا ايضا باعادة تكوين مكتبات الدوت نت الاساسية امثال System.IO , System.Net وغيرها الى مكتبات يمكنها العمل على الاندرويد بنفس اسماء الدوال والخصائص الموجودة فيها . اي انك لست بحاجة الى استكشاف مكتبات الاندرويد الاصلية ، بل مكتبات الدوت نت التي تحبها صارت تعمل على الاندرويد

إقتباس :هل يمكنني استخدام Third-party library في تطبيقاتي ؟

نعم ، فالمكتبات الاخرى غير مكتبات الframework المدارة للاندرويد والتي قد تصنع من قبل اشخاص عاديين يمكنها ان تعمل مع تطبيقك. ولاتنسى ان بامكانك استخدام مكتبات الاندرويد الاصلية الخاصة بالجافا إلا انك لن تحتاج لها في اكثر الاوقات


إقتباس :هل بالامكان اعادة استخدام مكتبات java, objective-c, javasctipt او Html في تطبيقاتي ؟

نعم ، Xamarin بامكانها الجمع بين كل هذه المكتبات في برنامجك ، فيمكنك استيرادها واستعمال دوالها بسهولة بواسطة الsyntex الخاص بالسي شارب.



هذه كانت بعض الاسئلة الشائعة (FAQs) المذكورة ، يمكنك مشاهدتها كاملة هنا









3- شرح بيئة Xamarin







او من اليوتيوب مباشرة :








4- الخاتمة & المراجع


Xamarin official site

What is the difference between compiler and interpreter



تحياتي




Done by - Alshaki LLah
الرد }}}}
تم الشكر بواسطة: Sajad , tariq2812 , hoob computer , mamas1 , Japan , ابو ابراهيم
#2
السلام عليكم

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

وأنا بانتظار بقية الدروس

تحياتي
الرد }}}}
تم الشكر بواسطة: الشاكي لله
#3
(06-02-14, 02:30 PM)Sajad كتب : السلام عليكم

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

وأنا بانتظار بقية الدروس

تحياتي
عليكم السلام ورحمة الله ...

إن شاء الله تفيدكم وماتأخر عليكم

وفي خدمتكم دوما ...


--

تم رفع الفيديو


موفقين
الرد }}}}
تم الشكر بواسطة: Sajad , abulayth
#4
والله روعة أخي العزيز محمد, جزاك الله كل خير على ما تقدمه للمنتدى و لأعضاءه ...


السلام عليكم
الرد }}}}
تم الشكر بواسطة:
#5
يا جماعة ..

ارجو المعذرة ماقدر اكتب مقالات اخرى عن هذا المجال

لذلك الغيت نظام السلسلة وهذا صار موضوع عادي

السبب : مستوى تقديمي للدروس . هناك من يعرضها بشكل افضل


الافضل متابعة دروس الموقع الرسمي (انا طبقتها في 3 ايام وفهمت هذي المنصة):

http://docs.xamarin.com/guides/


اسف على ذلك

واحب ان اقول انا لدي وجهة نظر في هذا الموضوع ..

انت عندك دروس منصة الوندوز متوفرة بشكل كبير عربيا وخاصة الاساسيات ، ولكن من ناحية الاندرويد لايوجد الا البقشيش (لا اساسيات ولا احترافيات)Big Grin !

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

اذن ابتعد عن هذه المنصة واكمل طريقك مع الوندوز ، لان هذا المجال يتطلب منك البحث دائما وبشكل روتيني .

فتعلم تقرا مصادر اجنبية عشان تقدر تبرمج لهلمنصة وهذا ماريد الاشارة اليه .

واعذروني ..
الرد }}}}
تم الشكر بواسطة: Sajad , hoob computer , ابو ابراهيم
#6
ممكن اعادة رفع الفيديو جزاك الله خيرا
الرد }}}}
تم الشكر بواسطة:
#7
شكرا :-)
(( نحن قوم أعزنا الله بالإسلام فمهما ابتغينا العزة بغيره أذلنا الله )) .. 











الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [مقال] برمجة نظام تشغيل بواسطة #C الشاكي لله 9 4,069 02-06-16, 11:34 AM
آخر رد: CLARO
  [C#.NET] مشاركات : #1 دورة بالصوت ووالصورة في برمجة الشبكات في الدوت نت m00755 0 497 05-05-15, 04:43 AM
آخر رد: m00755
  [حصرياً] برمجة لعبة x-o باستخدام c#.net Blue Sky 0 1,554 01-10-12, 07:43 PM
آخر رد: Blue Sky

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم