أطر واجهة المستخدم الرسومية الغنية بنظام التشغيل X؟

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

سؤال

ما الذي توصي به لتطوير OS X لتطبيق رسومي مثل تلك الممكنة في WPF؟

خلفيتي المحددة هي في Smalltalk وJava، ولكنني أعمل حاليًا في الغالب في DHTML/.NET (ASP.NET/C#).

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

المحلول

كاكاو.يعتبره الكثيرون أفضل إطار تطبيق على الإطلاق.اللغة هي لغة Objective-C، وهي لغة شبيهة بـ SmallTalk والتي ألهمت منشئي Java.

حقًا، لا يوجد بديل معقول لـ Cocoa لتطوير OS X، إلا إذا كانت لديك احتياجات محددة مثل الرغبة في أن تكون متعدد المنصات.

نصائح أخرى

بصرف النظر عن Interface Builder الذي تم تضمينه كجزء من أدوات Xcode، يمكنك أيضًا استخدام QT وGTK+ وAWT & SWING (لخلفية Java الخاصة بك)، وTk، وSqueak (لخلفية Smalltalk)، والأحذية (مجموعة أدوات Ruby GUI الصغيرة الرائعة جدًا )، FXRuby (المزيد من Ruby)، وwxWidgets، وXULRunner، وغيرها، أنا متأكد من أنني نسيتها.بالنسبة إلى التطبيقات الأكثر تشابهًا مع التطبيقات الأصلية، فإن Interface Builder هو أفضل رهان لك.

Cocoa هو إطار العمل الأساسي المستخدم في نظام التشغيل Mac OS X.إنه ما تستخدمه Apple، وهو ما تستخدمه معظم التطويرات الجديدة، وهو المكان الذي تتم فيه إضافة الميزات الجديدة بشكل أساسي.

إذا كنت قادمًا من WPF، أعتقد أنك قد تجد عددًا لا بأس به من المفاهيم في الكاكاو مألوفة.(على الرغم من حقيقة أن Cocoa أقدم قليلاً.) فهو مبني بالكامل حول MVC، وهناك إشعارات وروابط لتغيير الخاصية، وهناك دعم للرسوم المتحركة، وهناك إطار عمل لإدارة الثبات والرسم البياني للكائنات، وما إلى ذلك.

(قد ترغب أيضًا في إضافة "mac" إلى العلامات.)

باستخدام خلفية Java الخاصة بك، لا تنحرف عن طريق جسر Cocoa-Java المهمل الآن.في وقت مبكر من تاريخ OS X، قدمت شركة Apple واجهة Java (تم صيانتها يدويًا) لمكتبات Cocoa.بسبب الاختلافات الدلالية بين Java وObjective-C، فإن العديد من أقوى ميزات Cocoa، بما في ذلك ربط القيمة الرئيسية (التي بنيت عليها العديد من الميزات الأخرى) صعبة للغاية، مما يؤدي إلى اختلاف قدرات Objetive-C وJava و الإهمال النهائي للجسر.من الأفضل إجراء جميع عمليات تطوير Cocoa باستخدام Objective-C أو أحد الجسور العديدة (التي يتم إنشاؤها تلقائيًا) للغات الديناميكية مثل Python أو Ruby.

مع خلفيتك في المحادثات الصغيرة، أتوقع أن تتمكن من تعلم لغة Objective-C في يوم أو يومين.

لست متأكدًا من ماهية WPF، ولكن معظم التطوير لمنصة OSX يتم في Objective-C مع Cocoa.يمكنك استخدام واجهات برمجة تطبيقات Carbon المهملة مع لغات أخرى مثل Java، ولكن يجب تطوير التطبيقات الجديدة لـ OSX في Objective-C.يمكنك أن تبدأ مع دليل أبل مع Xcode باعتباره IDE الخاص بك.

لوضعها بطريقة مختلفة عن الملصقات السابقة:إذا لم تكن تصمم واجهتك في InterfaceBuilder وتتعامل معها باستخدام Objective-C، فسوف ينتهي بك الأمر إلى تطبيق لا يبدو أو يشعر أو يتصرف أو يعمل بالطريقة التي ينبغي لتطبيق Macintosh أن يبرز فيها. مثل الإبهام المؤلم للمستخدمين.ستكون تجربة غير سارة للمستخدم مقارنة بالتطبيقات الأخرى، ومن المحتمل أن يرغب في تطبيق مختلف بسبب ذلك.

تعتبر مجموعات الأدوات مثل QT مقبولة إذا كان تطبيقك يستخدم QT بالفعل وتريد نقله بسرعة، ولكن إذا كنت تكتب تطبيقًا جديدًا (أو واجهة مستخدم رسومية منفصلة) فاكتبه في Cocoa باستخدام ObjC أو ObjC++.

قد يكون لديك نظرة على pyObjc وهو عبارة عن جسر بين لغة البرمجة Python وObjective-C، بما في ذلك الارتباطات لمكونات Mac OS X، بما في ذلك Cocoa.

مع خلفية Smalltalk، أوصي باستخدام Cocoa وObjective-C بشكل مباشر.ومع ذلك، إذا كنت تميل نحو لغة ديناميكية، روبي كاكاو سيسمح لك باستخدام Ruby والذي أعتقد أنك ستجده أسهل في التعلم من Python.

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