سؤال

أطلقت مايكروسوفت مؤخرا الأدوات والوثائق عن الهاتف الجديد 7 منصة الفزع من أولئك الذين لديهم big C++ برنامج (مثلي) لا يدعم التنمية المحلية بعد الآن.على الرغم من أنني قد وجدت التكهنات حول هذا القرار من عكسه ، أشك في ذلك.لذا كنت أفكر كيف قابلة للحياة سيكون لجعل هذا codebase المتاحة فون 7 من خلال تكييفها مع ترجمة تحت C++/CLI.بالطبع واجهة المستخدم أجزاء لا يمكن أن يكون استدار لكن لست متأكد عن بقية.أي تجربة مماثلة ؟ أنا لا أتحدث عن التعليمات البرمجية التي لا ثقيلة يوتيوب - ولكن هناك متكررة جدا استخدام قوالب المؤشرات الذكية.

هل كانت مفيدة؟

المحلول

وج ++ / CLI يمكن نظريا أن تستخدم مع برنامج الأغذية العالمي / سيلفرلايت باستخدام خدعة استبدال C # المتولدة من XAML مع تعريف الماكرو التي يمكن استخدامها داخل الطبقة الرئيسية في التعليمات البرمجية خلف الملف. أنا عملت بها هذه التقنية ولكن لم تتح الدافع لاتخاذ إلى ما وراء نظرية - أنا اللغات خلط سعيدة جدا

وبقدر ما باستخدام ج ++ / CLI في الوضع الآمن النقي لرمز المنطق، وهذا قد لا تزال لا يكون ممكنا ولكن أحب أن أسمع كيف شخص يذهب تحاول الآن. في حين أن البحث عن سيلفرلايت مرة أخرى في 2008 لقد وجدت هذا شاقة سيلفرلايت منتدى التعليق :

أنا فقط أعطى سيلفرلايت & C ++ هو محاولة من خلال تجميع MSIL من مشروعي C ++ إلى DLL سيلفرلايت متوافق. والخبر السار: كان يعمل، ويمكنك الاتصال هذا الرمز من مشروع سيلفرلايت. الأخبار السيئة: المترجم C ++ على ما يبدو يستخدم تعليمات MSIL الذي لا يسمح سيلفرلايت

وهكذا، إذا حاولت ذلك، حتى مع أبسط البرامج، وستحصل على الفور تقريبا باستثناء على "عملية قد يزعزع استقرار التشغيل." لللي، وهذا يجعل الأمر يبدو أقل احتمالا أن سنرى سيلفرلايت لC ++ قريبا، حيث أن المترجم سوف تحتاج إلى التصرف لا بأس به بشكل مختلف.

نصائح أخرى

ويمكنك توليد التحقق منها التعليمات البرمجية المدارة في C ++ / CLI باستخدام / مسح: خيار آمن. والمشكلة هي أن معظم ج العادية ++ كود لن ترجمة مع هذا الخيار.

C# هو حاليا فقط دعم لغة WinPhone7.

أتوقع تماما أن مايكروسوفت سوف تضيف دعم VB و C++/CLI في المستقبل أيضا, ولكن لا تتوقع أن تفتح الأم رمز كيمونو في أي وقت قريب.

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

إذا كنت مستاء من ترقية رمز C++ C#, فقط كن سعيدا MS لم يجبر أن يكون لديك للانتقال إلى الهدف C ;)

من تجربتنا الخاصة ، بروسس من ترقية مكتوبة جيدا C++ C# في الواقع يأخذ الكثير جهد أقل من واحد في البداية قد تتوقع.من المؤكد أن هناك منحنى التعلم ، ولكن عليك أن مع أي ميناء.في الواقع لدينا الكثير من الاستفادة من ترقية لدينا التطبيق الأساسية و بيانات محركات C# أن نعيد مزخرف لدينا فريق كامل التعليمات البرمجية في C# و ميناء لدينا# C إلى C++ عند الضرورة بدلا من العكس!حتى الآن, لقد استدار اثنين من وحدات العودة إلى C++ و اتصل C# رمز من التعليمات البرمجية الأصلية عبر interop بدلا من ذلك.

مرة أخرى تذكر WinPhone هي العلامة التجارية الجديدة منصة باستخدام أفضل من سلالة عالية الإنتاجية الجيل المقبل من أدوات التطوير والمنصات.ليس والدك WinMo.

إذا ودعم C++ هو شيء يمكنك العثور على أن تكون في غاية الأهمية ، ثم تأكد MS أعلم - (باحترام مهنيا) الدولة موقعك في منتديات MSDN و في المطور الأحداث بالقرب منك.

Update1:2012-12-17:

في حين أن الأم C++ لا يزال غير معتمد رسميا عن هاتف ويندوز 7, ويندوز فون 8 يدعم الآن رمز C++ الأصلي بحيث يمكنك بسهولة أكبر ميناء القائمة الخاصة بك C++ برنامج(s) إلى هاتف ويندوز 8 (وكذلك ويندوز 8 و ويندوز تطبيقات سطح المكتب).

في حين لم يكن هناك 100% التوافق بين Windows8/Phone8 منصات API الآن أتوقع اثنين من منصات لتصبح متكاملة على نحو متزايد خلال اليومين المقبلين من النشرات.

هذا صحيح لا سيما الآن أن أحد العقبات الرئيسية أمام تعاون أوثق بين ويندوز في مايكروسوفت مؤخرا ترك الشركة ;)

Update2:4/15/2014:

كما في الآونة الأخيرة إعلانات في //بناء/ 2014, يمكنك الآن البدء في بناء "العالمي" تطبيقات في C++ & XAML, C#/VB & XAML أو جافا سكريبت و HTML التي سوف تعمل على ويندوز 8.1 و ويندوز فون 8.1 و Xbox One!لمزيد من التفاصيل على بناء هاتف ويندوز 8.1 تطبيقات العالمي ، قراءة هذه المادة.

وبنيت فكرة المشروع برمته، على سيلفرلايت. أعتقد أنك يمكن أن تضيف المدارة مكتوبة دلل في C ++ من دون أي مشكلة لهذا المشروع سيلفرلايت، ولكن لا يمكن استخدام التعليمات البرمجية الأصلية.

وأنا تخطط لتثبيت الأدوات على الجهاز الخاص بي هذه الليلة، وسوف أحاول ذلك.

وعلى ما يرام إذا ما قررت MS إلى ترك المسار وخلق شيء جديد، وهذا هو القرار MS. لذلك دعونا نواجه الحقائق. سيلفرلايت هو أي نجاح حتى الان. فقدت MS حصة كبيرة نظرا لأبل، والروبوت وRIM. مطوري التطبيقات لديهم ببساطة لتقييم حالة قطاع الأعمال للتطبيقات الخاصة بهم ويقرروا ما اذا كانوا يثقون في كسب حصة ويندوز 7 الهاتف أم لا. للشركة أن أركض، قررنا عدم دعم أي أكثر الهاتف MS يندوز 7، وليس لهذا السبب أو سبب فني آخر، ولكن لمجرد أننا لا نعتقد في عودة استثمارنا للمنفذ. نبدأ دعم أبل، سيمبيان، Andoid و MeeGo في المستقبل إذا كنا نرى نجاح السوق من هذه المنصة الجديدة. كل الدعم C / C ++ وتمكننا من إعادة استخدام لدينا النوى التطبيق التي أثبتت جدواها. فلماذا القلق على الإطلاق. تفضيلات التكنولوجيا الشخصية لا ينبغي المحاصرة. إذا تقلق التفضيلات الشخصية، ثم أود أن ركلة MS بها لللي UI تبحث القبيح.

وتوماس

هو في الأفق أخيرا!

حتى مسح إرسالها إلى هاتف ويندوز المطورين حول مستقبلهم التنمية تفضيلات XNA لم يذكر مرة واحدة في المسح (A مسح إرسالها إلى المطورين على هاتف ويندوز - أنا لم أذكر ذلك)

ومع ذلك فهي تسأل:

كيف كنت تفضل استخدام C++ في تطبيقات الجوال/الألعاب ؟

  • تطوير التطبيقات/الألعاب التي هي C++ من أعلى إلى أسفل (واجهة المستخدم ، منطق الأعمال ، منصة واجهات برمجة التطبيقات)
  • استخدام C++ منطق الأعمال ومن ثم كتابة منصة طبقة تجريد
  • استخدام C++ منطق الأعمال استخدام 3rd الطرف محركات التشغيل
  • أنا لا أريد أن استخدم C++
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top