14

ما رايك بتطوير تطبيقات سطح المكتب باستخدام NodeJS ؟

اتحدث هنا عن Node-Webkit مكتبة تسمح بتطوير تطبيقات سطح المكتب باستخدام NodeJS و تقنيات الويب ...

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

طبعا لا اتحدث عن التطبيقات التي تحتاج الى ادارة الذاكرة والتعامل مع الهاردوير وانما التطبيقات التي تعتمد على خدمات الويب API

هل قمت بتجربتها من قبل ؟ ما رايك ؟

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

التعليقات

سؤال: هل يمكن للتطبيق أن يعمل على أنظمة مختلفة بسهولة؟ إن كانت هذه ميزة فأرى أن هذا الأسلوب مناسب جداً لتطوير تطبيقات سطح المكتب، لا يهم أن يكون شكل التطبيق مختلفاً وغير متوافق مع النظام، أرى هذه ميزة لا سلبية.

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

أؤمن تمام باستخدام كل شيء لمجاله، لهذا ان كنت سوف اقوم بالتطوير لسطح المكتب اول خيار لدي هو java او python

لاكن هذا النوع من التطبيقات الذي اتحدث عنه مختلف تماما

على الرغم من الإغراء الكبير الذي يقدمه استخدام Node.js وJavaScript لتصميم تطبيقات سطح المكتب إلا أن التطبيقات ستكون كبيرة الحجم، وغير متوافقة مع مظهر النظام (وهو أكثر أمر مزعج في تطبيقات الويب، بما فيها تطبيقات Chrome).

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

من جهتي أرغب دومًا بتعلم Qt/C++ لأنها تعطي تطبيقات سريعة ومتوافقة في مظهرها مع الأنظمة العديدة التي يمكن البناء لها. أكثر التطبيقات التي أستعملها في Linux مبنية بـQt، ومنها: Clementine، Okular، SMPlayer, PhotoQt, QWinFF, Sublime Text, GoldenDict. كما ترى فبإمكانك بناء تطبيقات عابرة للمنصات (cross-platform) وذات كفاءة وسرعة عالية ومهما كانت الوظيفة التي يؤديها تطبيقك، حتى لو كان يتطلب التعامل مع الشبكة والواجهات البرمجية لخدمات على الإنترنت.

هل بدأت تحن لأيام Chrome ههه

:)

ما زال Firefox متصفحي المفضل منذ كتبت هذه المقالة، لكنه ما يزال لا يوفر تجربة سوق تطبيقات جيدة. يمكنك كتابة تطبيق ويب لـFirefox على سطح المكتب ونشره على Firefox Marketplace (مثال على ذلك تطبيق DevDocs)، لكنه لا يوفر واجهات برمجية للتعامل مع الملفات على الجهاز أو معلومات عن النظام أو ما شابه.

بالعكس اخي افضل شيء بالنسبة لي في هذه النوع من التطبيقات هو عدم اعتمادها على مظهر النظام بالتالي يمكن عمل تصميم انيق للتطبيق مثال على ذلك تطبيق TweetDeck

اوافقك الراي بخصوص QT احببتها منذ ان جربتها اول مرة اكثر ما عجبني فيها هو خفة وسرعة التطبيقات وهو خياري الاول لمثل هذا النوع من التطبيقات لاكن ليس باستخدام pyside بل باستخدام HTML وتقنيات الويب

يمكنك إنشاء تطبيق هجين باستخدام Qt QML، يستخدم HTML5 مع تقنيات Qt، وتعديل مظهره كما تشاء. لكنني أرى أن اختلاف مظهر التطبيق عن مكونات النظام يجعله غير مألوف وغير منسجم، ولا يمكن تعديله عبر إعدادات النظام كبقية التطبيقات. يجب أن تكون مكونات التطبيق (الأزرار والنوافذ وعناصر القوائم...) متشابهة عبر النظام بكامله.

نعم كانت لي تجربة مع QML وهي فعلا ممتازة، اختلاف شكل المكونات عن النظام كما ذكر الاخ عبد الله هي ميزة وليست سلبية.

مقارنة بـ GTK، هل تعتقد أن Qt لاتزال أسرع أداء؟

عندي ملاحظتين عليها: يمكن فك الضغط لملفها التنفيذي للحصول على الملفات المصدرية لبرنامجك ... حجم البرنامج بعد الـ deploy أكثر من 50 ميجا

هل تقترح حلول اخرى ؟