مشكله مع البرمجه

السلام عليكم ,انا شخص بدا البرمجه في حياته مع لغه c# وهيا لغه جميله جدا

ولاكن تعلمت هاذي اللغه لسبب واحد فقط وهو احتراف منصه xamarin زامرين ولاكن بعد سنه ونصف مع هاذي المنصه فقد اخذت موقف منها واكتشفت انها منصه فاشه للتصميم تطبيقات الهواتف

وبحكم ان لدي لغه c# يمكنني تعلم الجافا متي اشاء لقربها من c# ولاكن الاندوريد ستوديو يحتاج الي جهاز قوي نسبيا ولم اعرف ماذا الحل ولا يمكنني ترك البرمجه الان ! ليس بعد سنه ونصف من الجهد

افتوني في امري

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

التعليقات

زامارين منصة ناجحة جداً و انصحك بالبقاء عليها أو الانتقال إلى كوتلين لكن جافا؟ لا اللغة لم تعد الـ standard في عالم الأندرويد طبعاً الزامارين ليس ستاندرد أيضاً لكن على الأقل يزيد من إنتاجيتك على الجانب الآخر سي شارب كلغة غنية و جميلة أكثر بكثير من جافا

إن كان عليك الانتقال فدعني أطرح امامك سيناريوهين:

1- Nativescript مع جافاسكربت: لعمل تطبيقات أندرويد و IOS بكود واحد تتطلب منك IDE بسيط جداً (VS code) لكن عليك تعلم جافا سكربت و يُفضل مع Angular (و هذا سيمنحك فرص في تطوير الويب أيضاً :) )

2- كوتلن: هي الـ native بالنسبة لنظام الأندرويد و لا مثيل لها لهذا الغرض, لغة جميلة و مطورة عن جافا و تتميز ببساطة البايثون و قوة الجافا

لما لا تقول بساطة وقوة البايثون ؟

بايثون من أبطأ لغات البرمجة أيضاً هي dynamically typed language مما يصعب صيانة الكود.

اها ,

لا اعرف حقا ولكن اكثر المتحدثين عن البايثون لا تجد من بينهم من يتكلم عن البطئ ابدا في اللغة بل بالعكس تجد الكثير من المهتمين بالذكاء الاصطناعي مثلا ومن علي شاكلتهم مِن مَن ينجزون المهام الصعبة يستخدمون البايثون .

مشكلة انها ليست statically typed لا اظنها مشكلة مادام المراد منها حسب قولك صيانة الكود فمن المعروف ان البايثون تتجلي ببساطة الكود المكتوب بها من ما يعني ان الصيانة ليست مشكلة .

الذكاء الصُنعي يستخدم البايثون كـ API لا أكثر أما الخوارزميات نفسها فهي مكتوبة بـ C++ لأنها تتطلب سرعة كبيرة جداً

مشكلة انها ليست statically typed لا اظنها مشكلة

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

اها شكرا لك علي المعلومات فعلا كنت اظن ان الخوارزميات التي يستخدمونها مكتوبة بالبايثون وانت تقول عنها بطيئة .

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

لا أعتقد أنك ستجد أي implementation لبايثون أبطأ بعشر مرات من C++ :) سمعت عن Pypy لكنها أيضاً تعاني من مشاكل مع المكتبات

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

هذه فلسفة فارغة. بايثون لغة بطيئة جدا. الصحيح ان بايثون و السرعة لا يجتمعان. اي واحد يتفلسف و يقول ان بايثون مجرد معايير حرة فهو بنظري شخص لا يفهم شئ.

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

العكس صحيح. ربما انت تحب البايثون و لهذا ترفض الاعتراف انها لغة بطيئة؟

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

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

لا يمكن ان يوجد نسخة من البايثون سريعة لعدة اسباب اهمها ان اللغة فيها garbage collection و انه لا يمكنك التحكم بموقع البيانات في الذاكرة مما يجعل مثلا من المستحيل ان تكتب البرنامج بطريقة يسمح باستخدام الكاش cache بشكل فعال، و اصلا الـ specification تتطلب لكل قطعة بيانات في الذاكرة ان يوجد حولها الكثير من المعلومات لكي تعطيك معلومات عن نوعها، الخ

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

هل تمزح اخي الكريم؟ هل جربت البرنامج المكتوب في هذا البلوك اللذي نقلته؟ جربته عندي و اليك النتائج:

نسخة السي:

$ time ./a.out 
sum: 49999995000000

real    0m0.030s
user    0m0.025s
sys 0m0.002s

نسخة البايثون عن طريق pypy3

$ time pypy3 sum.py
49999995000000

real    0m0.098s
user    0m0.066s
sys 0m0.025s

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

من يهتم!؟ أنت في لغة عالية المستوى!

عادي، خليك في المستوى العالي. المهم لا تتعجرف و تدعي انها ليست بطيئة.

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

نفس السبب أدى لغياب native compiler للغة بايثون بخلاف جافا التي تجد لها Excelsior JET و GNU Java Compiler. أليس كذلك؟ المشكلة تكمن في تحديد حجم الذاكرة اللازم للبيانات عند التحويل للغة الآلة.

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

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

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

على كل حال عندي تجربة مشابهة مع نفس اللغة , منذ حوالي اكثر من سنة تعلمت السي شارب ... عندما جئت لأُصدر برنامجي صُدمت بأنه يجب علي ان اضع .net framework الذي يبلغ حجمه حوالي 20 GB ضمن حزمة تثبيت البرنامج !!!!!

غير معقول يبدو أنك لم تستوعب المطلوب

حجم الإطار لا يتجاوز 60 MB

أساسا أنت تطور لوندوز الذي بدوره يحتوي على احد اصدارات الاطار مثبتا مسبقا

فوقعت بحيرة شديدة .... فلا يمكنني عمل native app باستخدام c# لانها تعتمد على ذلك الإطار العمل اللعين

ان قصدت بـ native app تطبيق android أو ios

فهذا غير صحيح

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

اعرف ما هو managed code

ولكن لا اعرف ان كنت تعرف المقدرة التي تحتاجها لصنع native app في الوقت الذي تخاف من صعوبة cpp

ربما تناسبك دلفي او لازاروس

ولاكن الاندوريد ستوديو يحتاج الي جهاز قوي نسبيا

اندرويد ستوديو يبقى اخف من فجوال ستوديو و زامارين ،

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

انا استخدمتها ووصلت الى مستوى ممتاز في اقل من هذه المدة

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

مجهول أضف ردا

ايمكن ان تريني بعض اعمالك بالxamarin لو سمحت ؟

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

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

فاشلة مره وحدة ،،، حرام عليك يارجل الزامرين من افضل المنصات لعمل التطبيقات

الزامرين من نظرة بعيدة تراه شهي ومغري ويسيل لعابك نظرا للامكانيات الهائلة اللتي يقدمها

وما ان تبدا تبرمج فيه وتتعلمه حتى تحبه اكثر واكثر

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

اعترف بان

الزامرين قبل سنه تقريبا كان مليان bugs

واخطاء

اما الان فهو افضل بكثييير ونصيحتي لك اعمل ابديت للفيجوال ستوديو ولل nuget

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

المحاكي للاندريد مشاكله كثيره،،،،

لاتحاول تضبط اعدادات المحاكي وتختار محاكي جديد ببساطه لن تعمل معك الا الاعدادات الاصليه

جرب احد الاعدادات الاصليه للمحاكي الا ان يشتغل معاك احدهم واذا اشتغل خليه مفتوح واعمل

Deploy لكل مره احببت تجربه برنامجك

هذا الكلام من واقع تجربه طويله مع emulator

هذه بعض الملاحظات عن الزامرين غير هذا فالمنصه جباره وانصح الجميع بتعلمها

واي سؤال اخي نحن في الخدمة ان شاء الله

تحياتي

هل لديك تطبيقات بواسطه الزامرين ؟

الاندويد ستوديو يتطلب جهاز بمواصفات جيدة

زامرين لم احبه ولم اعمل به لانه لم يعجبني لنقص الموارد به الجاف احسن منه بكثير

اذا كنت تحب حقا البرمجة عليك ان تتدبر ثمن جهاز جيد