13

استخدام لغة دلفي في برمجة تطبيقات الموبايل

  • ali mohamad

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

و ما هو الحل للتغلب على مشكلة الجحم الكبير للتطبيق في نظام الأندرويد ؟


التعليق السابق

كلامك صحيح من ناحية أنها لا تترجم إلى الجافا أنا لم اعلم بإمكانية استخدام NDK بلغة الدلفي وكان كلامي عن الأدوات المنتشرة التي تقوم بترجمة الكود من لغة إلى أخرى مثل C# بمشروع Mono و Lua بمشروع Corona و HTML+Javascrip بمختلف المشاريع

لكن ذلك لا يعني أن البرامج المكتوبة بدلفي أسرع من المكتوبة بجافا

Before downloading the NDK, you should understand that the NDK will not benefit most apps. As a developer, you need to balance its benefits against its drawbacks. Notably, using native code on Android generally does not result in a noticable performance improvement, but it always increases your app complexity. In general, you should only use the NDK if it is essential to your app

المصدر:

ومماهو منتشر على الشبكة فإن حجم البرامج المكتوبة أكبر وأحياناً كثيرة أبطأ

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

هذا لا يمنع ان برنامج مكتوب بشكل جيد على الجافا سوف يكون أسرع من برنامج مكتوب بشكل سىء على الدلفى أو السى++. لكن برنامج جيد على الدلفى و السى++ سوف يكون اسرع من برنامج جيد على الجافا.

و يمكنك مراجعة اللينك مرة أخرى من شركة Embarcadero التى تسرد الاسباب لماذا الnative أفضل من اللغات الاخرى.

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

أتمنى أن تدلني على المكان الذي يقول أن برامج أندرويد المكتوبة بدلفي أو سي ++ أسرع من تلك المكتوبة بالجافا.

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

مقتبس من اللينك الذي أعطيتني اياه: Delphi/FM Application Platform apps are faster than web based or hybrid mobile apps

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

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

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