هل تُحدِث لغات .NET أي نوع من التأثير في تطبيقات سطح المكتب للمستهلك؟

StackOverflow https://stackoverflow.com/questions/82022

  •  09-06-2019
  •  | 
  •  

سؤال

يفعل أنت هل تريد كتابة تطبيقات سطح المكتب للمستهلك باستخدام لغات .NET؟ إذا كان الأمر كذلك ما هو النوع؟

انطباعي هو أن معظم تطبيقات سطح المكتب الاستهلاكية لا تزال تطبيقات أصلية مجمعة في C وC++ وما شابه.

في حين أن لغات .NET تزداد شعبية وشعبية، فهل خرجت هذه السلالة الجديدة من التطبيقات من نطاق المؤسسات والويب لتصبح تطبيقات استهلاكية رائجة؟

على سبيل المثال انظر إلى سطح المكتب الخاص بك الآن؟كم عدد التطبيقات المكتوبة بلغات .NET، فايرفوكس؟مايكروسوفت أوفيس؟ثندربيرد؟اي تيونز؟مايكروسوفت فيجوال ستوديو؟

تقوم شركتي بتطوير تطبيقات CAD/CAE المتطورة، ونحن نستفيد من التكنولوجيا الجديدة ولكن تطويرنا الأساسي لا يزال يتم باستخدام C++.

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

المحلول

لقد قمت بإنشاء وصيانة تطبيق سطح مكتب كبير مكتوب بلغة .NET (1.1، 2.0 الآن).التطبيق مخصص لأطباء الأسنان ويعمل من خلال الاستفادة من تقنية Ink الموجودة في مساحة الاسم MIcrosoft.Ink في TabletPC SDK.يستخدم بعض أطباء الأسنان أجهزة الكمبيوتر اللوحية لتسهيل الأمور والاستفادة من قوة هذه التكنولوجيا.

من ناحية أخرى، نظرًا لأنني أجد أن واجهة مستخدم Windows ليست جيدة المظهر (XP/Vista) وأجد أن كل تطبيق يبدو متماثلًا وغير متسق، فقد كتبت مكتبة GDI+ الخاصة بي من عناصر التحكم ومع احترام "إرشادات واجهة مستخدم Windows" بشكل أو بآخر، لقد توصلت إلى أزرار جميلة جدًا وعناصر واجهة مستخدم أخرى تجعل تطبيقي يبدو "أفضل بكثير" من أي تطبيق Windows "عادي" آخر.

نحن نعمل في وضع ملء الشاشة (الحد الأقصى، بدون عناصر تحكم، بدون شريط تطبيقات)، ولكننا نفعل ذلك لأنه أمر صعب للغاية محدد التطبيق المستخدم في الآلات مخلص إلى المهمة.لا تستخدم عيادات الأسنان Microsoft Excel وALT-TAB في تطبيقنا.يعمل التطبيق مثل "ATM"، المس اللمس، تم ذلك.بسيط جدا.لقد كان نجاحا في أوروبا حيث أنا.

لذلك يجب أن أقول إنني سعيد لأن التطبيق كذلك لا تطبيق ويب، لأنه عندما بدأنا، كان .NET GDI+ for Windows Forms أفضل بكثير من أي شيء يمكن أن يقدمه WEB؛حتى اليوم، Ajax غير قادر على إعادة إنتاج تجربة سطح المكتب الكاملة (ليس هذا ينبغي أن يكون ولكن...).

كان لدى Java واجهة مستخدم قبيحة في ذلك الوقت (لا أعرف الآن)، لذلك اخترنا .NET واستخدمنا C# منذ ذلك الحين.

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

لقد فكرت في Java وC++ وDelphi وغيرها قبل أن أبدأ بهذا منذ ست سنوات.لم يقدم أي منها بساطة وقوة c#.NET مع القليل من العيوب (مثل إطار العمل الذي لم يكن لدى أحد في ذلك الوقت).الآن، كل مربع ويندوز بالتأكيد سوف لديك .NET Framework 2.0.

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

نصائح أخرى

كما ذكرنا سابقًا، أعرف Tomboy وBeagle بالإضافة إلى F-Spot.تأتي جميعها كجزء من معظم توزيعات Linux.Paint.NET هو تطبيق آخر.

ربما ترى هذا لأن العديد من تطبيقات سطح المكتب الشائعة تحتوي على قاعدة تعليمات برمجية أقدم من عام 2001؟

يحرر:ربما كان ينبغي علي أن أقول أنه أقدم من 2003 أو 2004...أشك في أن أي شخص قد بدأ تطبيقًا رئيسيًا لسطح المكتب في أول عام أو عامين من إصدار .NET.

تمت كتابة كل من TurboTax 2007 و2008 من Intuit بلغة .NET.على عكس العرض التوضيحي لأداة تحرير الفيديو الخاصة بالسوق المتخصصة التي تناولتها في تعليق على إجابة أخرى، فقد تم بالفعل تثبيتها بشكل نظيف تمامًا وبدون أي حوادث (بما في ذلك خدعة التحديث الذاتي) على صندوق XP القديم قليلاً هنا في المنزل.

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

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

أعتقد أن هذه هي أول حزمة برامج للبيع بالتجزئة وجدتها في البرية والتي كانت تعتمد بشكل واضح على .NET.

هذا عار.السبب الوحيد للتراجع عن تطوير سطح المكتب باستخدام .net هو متطلبات إطار .net على جهاز سطح المكتب، ولكن هذا هو الثمن البسيط الذي يجب دفعه مقابل الفوائد التي تحصل عليها عندما تكون قادرًا على العمل في بيئة .net.

يتم كتابة Visual Studio (على الأقل 2008) في .NET

طالما أنك لا تحتاج إلى أداء فائق، فلا أرى أي سبب لعدم استخدام .NET.مع العناصر الجديدة القابلة لإعادة التوزيع الصغيرة جدًا، يمكنك تضمين برنامج تثبيت .net الذي يستغرق بضع مئات من كيلو بايت.

أود أن أقول إن مكاسب الإنتاجية للغة الحديثة المجمعة المهملة يجب أن تجعل لغة C++ خيارًا جيدًا فقط إذا كان لديك بالفعل مطورين يتقنون تلك اللغة أو كانت هناك متطلبات فنية محددة تجعلها ضرورية أو إذا كانت أجهزة العملاء مغلق بحيث لا يمكن استخدام النظام الأساسي .net.

على الرغم من أنني لست جزءًا من القوة العاملة حتى الآن (أيأنا طالب)، كل ما يمكنني التخلص منه أكتب بلغة C#.لا شيء آخر جربته يقترب من مستوى الكفاءة والنظافة الذي توفره هذه اللغة (والتي توفر جميع ميزات الإنتاجية في Visuall Studio).

لقد لاحظت ذلك في عملية المستكشف يتم تمييز المزيد والمزيد من تطبيقات سطح المكتب باللون الأصفر (مما يعني أنها .Net).كما هو مذكور أعلاه، فإن ATI's Catalyst هو Windows Live Mesh، والعديد من الألعاب تحتوي على محركات تحديث أو تكوين .Net، بالإضافة إلى معظم الأجزاء التي أكتبها والتي لم تصل إلى الساحة العامة بعد (لأنني لا أملك الكثير من الوقت الذي أرغب فيه للبرمجة والاختبار).كما أن أجزاء كبيرة من Visual Studio هي .NET - على الأقل وفقًا لـ Process Explorer.

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

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

ليس تطبيق سطح المكتب التقليدي، ولكن مركز التحكم ATI Catalyst يستند إلى .NET.

في الواقع، لقد وجدت بعض التطبيقات التي تتطلب .Net على سطح المكتب.

الأكثر شهرة هو Paint.Net، ولكن من بينها أيضًا "Catalyst Control Center"، الذي يتم تسليمه مع بطاقة الرسومات ATI الخاصة بي.

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

ربما لن يكون هناك الكثير من تطبيقات winforms بالمعنى التقليدي التي تتم كتابتها، ولكن الإصدار التالي من كل من Windows Live Messenger سيتم كتابته في أساس Windows Presnetation وأعتقد أن هذا هو ما سيكون الاتجاه نحوه.

تمت كتابة Windows Media Center بلغة C# وهو أمر مثير للإعجاب، ولكن بعد قولي هذا، فهو ليس تطبيق winforms التقليدي الخاص بك أيضًا.

إن برنامج TechSmith’s Jing هو .NET، وهو في الواقع WPF لذا فهو 3.5، وهو .NET.

تقريبًا جميع برامج العملاء المكتوبة هنا حيث أعمل موجودة في .NET؛إنها منصة رائعة لتطبيقات الأعمال.ومع ذلك، فإن معظم البرامج المتوفرة التي قد تكون .NET هدفًا جيدًا لها يتم نشرها كتطبيقات ويب بدلاً من ذلك؛والباقي عبارة عن تطبيقات رسومية ومكثفة لوحدة المعالجة المركزية يتم تنفيذها عادةً في لغة c ++ لأسباب تتعلق بالأداء.لنفس السبب، لا ترى الكثير من تطبيقات سطح المكتب مكتوبة بلغة جافا أيضًا.

معظمكم يشير إلى المصادر المفتوحة.أوافق على أن هناك بعض المشاريع التي تستخدم .NET (أنا أستخدم RSSBandit على سبيل المثال) ولكنها لا تهم (في الغالب).ولكن ماذا عن تطبيقات المؤسسات؟لقد قمت مؤخرًا بكتابة تطبيق يشبه MS Surface وهو مخصص للأغراض الإعلانية.قبل ذلك كان علي أن أكتب تطبيقًا للحفاظ على المستودع على سبيل المثال.أمر مختلف؟في أوقات WinForms قمت بكتابة تطبيق لدعم صفحة تشبه موقع ebay.هل تحتاج إلى المزيد؟

أنا شخصياً أعتقد أن .NET يستخدم على نطاق واسع في الأعمال التجارية (وهو ما لا تراه كل يوم) ولا يستخدمه المصدر المفتوح (لماذا؟لا أعرف، ربما يكره المساهمون مرض التصلب العصبي المتعدد؟).ومع ذلك، أعتقد أيضًا أنه سيتغير نحو .NET، خاصة مع الإصدارات التالية من نظام التشغيل Windows.ولقد نسيت تقريبًا - تثبيت .NET Framework ليس مشكلة، كن جديًا، فالمستخدمون ليسوا بهذا الغباء والكسل!

وصحيح أن سطح المكتب يفقد جاذبيته أمام بيئة الويب، لكنه لن يموت أبدًا؛)

Microsoft InfoPath - جزء من Microsoft Office مكتوب أيضًا بلغة .NET

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top