تطبيق محمول

يمكن لمحرك أقراص USB أن يحمل تطبيقات محمولة.

التطبيق المحمول (أو التطبيق المحمول )، والذي يُسمى أحيانًا بالبرنامج المستقل ، هو برنامج حاسوبي مصمم للعمل دون تغيير أي ملفات أخرى أو الحاجة إلى تثبيت برامج إضافية. وبهذه الطريقة، يمكن إضافته وتشغيله وإزالته بسهولة من أي جهاز حاسوب متوافق دون الحاجة إلى إعداد أو آثار جانبية. [ 1 ]

عمليًا، غالبًا ما يخزن التطبيق المحمول بيانات المستخدم وإعدادات التكوين في نفس المجلد الذي يوجد فيه. وهذا يُسهّل نقل البرنامج مع تفضيلات المستخدم وبياناته بين أجهزة كمبيوتر مختلفة. كما يمكن أن يكون البرنامج الذي لا يحتوي على أي خيارات تكوين تطبيقًا محمولًا. [ 1 ]

يمكن تخزين التطبيقات المحمولة على أي جهاز تخزين بيانات ، بما في ذلك وحدات التخزين الداخلية ، ومشاركة الملفات ، والتخزين السحابي ، أو وحدات التخزين الخارجية مثل محركات أقراص USB ، ووحدات التخزين المحمولة [ 2 ] ، والأقراص المرنة ، حيث تُخزَّن ملفات البرنامج وأي معلومات وبيانات تكوين على وسيط التخزين فقط. في حال عدم الحاجة إلى معلومات التكوين، يمكن تشغيل البرنامج المحمول من وحدة تخزين للقراءة فقط مثل أقراص CD-ROM و DVD-ROM . تتوفر بعض التطبيقات بنسخ قابلة للتثبيت ونسخ محمولة.

بعض التطبيقات التي لا تدعم النقل افتراضيًا، تدعم النقل الاختياري عبر آليات أخرى، وأكثرها شيوعًا هي وسائط سطر الأوامر . ومن الأمثلة على ذلك /portableتوجيه البرنامج ببساطة ليعمل كبرنامج قابل للنقل، أو --cfg=/path/inifileتحديد موقع ملف التكوين.

مثل أي تطبيق، يجب أن تكون التطبيقات المحمولة متوافقة مع أجهزة نظام الكمبيوتر ونظام التشغيل .

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

تطبيقات ويندوز المحمولة

معظم التطبيقات المحمولة لا تترك ملفات أو إعدادات على جهاز الكمبيوتر المضيف، ولا تُعدّل النظام الحالي أو إعداداته. قد لا يكتب التطبيق في سجل ويندوز [ 3 ] أو يخزن ملفات إعداداته (مثل ملف INI ) في ملف تعريف المستخدم ، ولكن العديد من التطبيقات المحمولة تفعل ذلك اليوم؛ مع ذلك، لا يزال الكثير منها يخزن ملفات إعداداته في مجلد التطبيق المحمول. من الاحتمالات الأخرى، نظرًا لاختلاف مسارات الملفات غالبًا عند تغيير أجهزة الكمبيوتر بسبب اختلاف تخصيصات أحرف محركات الأقراص ، أن التطبيقات المحمولة قد تخزنها بتنسيق نسبي . في حين أن بعض التطبيقات توفر خيارات لدعم هذا السلوك، فإن العديد من البرامج غير مصممة للقيام بذلك. تتمثل إحدى التقنيات الشائعة لمثل هذه البرامج في استخدام برنامج تشغيل لنسخ الإعدادات والملفات الضرورية إلى جهاز الكمبيوتر المضيف عند بدء تشغيل التطبيق، ثم إعادتها إلى مجلد التطبيق عند إغلاقه.

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

يُستخدم النهج نفسه مع مكونات التطبيق الفردية: مكتبات وقت التشغيل ، ومكونات COM ، و ActiveX ، وليس فقط مع التطبيق بأكمله. [ 4 ] ونتيجةً لذلك، عند نقل المكونات الفردية بهذه الطريقة، يُمكن دمجها في التطبيقات المحمولة الأصلية، وإعادة تثبيتها (تثبيتها افتراضيًا) بإعدادات/تكوينات مختلفة على نظام التشغيل نفسه دون حدوث تعارضات. ولأن المكونات المنقولة لا تؤثر على الكيانات ذات الصلة المحمية بنظام التشغيل (السجل والملفات)، فلن تتطلب هذه المكونات صلاحيات إدارية للتثبيت والإدارة.

أدركت مايكروسوفت الحاجة إلى سجل خاص بالتطبيقات لنظام التشغيل ويندوز منذ عام 2005. [ 5 ] وقد دمجت لاحقًا بعضًا من هذه التقنية، باستخدام الأساليب المذكورة أعلاه، عبر قاعدة بيانات توافق التطبيقات [ 6 ] باستخدام مكتبة أكواد Detours [ 7 ] ، في نظام التشغيل ويندوز إكس بي. ولم تُتح أيًا من هذه التقنية عبر واجهات برمجة التطبيقات الخاصة بنظامها .

إمكانية النقل على أنظمة شبيهة بنظام يونكس

البرامج المصممة لأنظمة شبيهة بنظام يونكس غالبًا لا تفترض أي شيء. فبينما تفترض العديد من برامج ويندوز أن المستخدم مدير نظام - وهو أمر شائع جدًا في ويندوز 95 / 98 / ME (وإلى حد ما في ويندوز XP / 2000 ، ولكن ليس في ويندوز فيستا أو ويندوز 7 ) - فإن هذا الافتراض سيؤدي سريعًا إلى ظهور أخطاء "تم رفض الوصول" في بيئات شبيهة بنظام يونكس، نظرًا لأن المستخدمين سيكونون في حالة غير مميزة في أغلب الأحيان. لذلك، تُصمم البرامج عمومًا لاستخدام HOMEمتغير البيئة لتخزين الإعدادات (مثل $HOME/.w3mمتصفح w3m ). يوفر الرابط الديناميكي متغير بيئة LD_LIBRARY_PATHيمكن للبرامج استخدامه لتحميل المكتبات من أدلة غير قياسية. بافتراض أن /mntالدليل يحتوي على البرامج المحمولة والتكوين، فقد يبدو سطر الأوامر كما يلي:

HOME=/mnt/home/user LD_LIBRARY_PATH=/mnt/usr/lib /mnt/usr/bin/w3m www.example.com

يمكن إنشاء تطبيق لينكس دون الحاجة إلى تفاعل المستخدم (مثل تعديل نص برمجي أو متغير بيئي) على مسارات دليل متغيرة باستخدام خيار رابط GCC الذي يسمح بمسار بحث نسبي عن المكتبة. [ 8 ]$ORIGIN

لا تحترم جميع البرامج هذا الأمر - فبعضها يتجاهل $HOME تمامًا ويقوم بدلاً من ذلك بالبحث عن المستخدم /etc/passwdللعثور على الدليل الرئيسي، وبالتالي يعيق قابلية النقل.

توجد أيضًا تنسيقات حزم متعددة التوزيعات لا تتطلب صلاحيات إدارية للتشغيل، مثل Autopackage و AppImage وCDE، ولكنها لم تحظَ إلا بقبول ودعم محدودين في مجتمع لينكس خلال العقد الأول من الألفية الثانية. [ 9 ] [ 10 ] [ 11 ] في عام 2015 تقريبًا، اكتسبت فكرة الحزم المحمولة والمستقلة عن التوزيعات لنظام لينكس البيئي زخمًا أكبر عندما ناقش لينوس تورفالدز هذا الموضوع في مؤتمر DebConf 2014، وأيد لاحقًا AppImage لتطبيق سجل الغوص Subsurface . [ 12 ] [ 13 ] [ 14 ] على سبيل المثال، حذت MuseScore و Krita حذوهما في عام 2016 وبدأتا في استخدام إصدارات AppImage لنشر البرامج. [ 15 ] [ 16 ] أصدرت Red Hat في عام 2016 نظام Flatpak ، وهو خليفة مشروع glick لألكسندر لارسون، والذي استُلهم من klik (المعروف الآن باسم AppImage). [ 17 ] وبالمثل، أصدرت شركة Canonical في عام 2016 حزم Snap لنظام Ubuntu والعديد من توزيعات Linux الأخرى.

تتميز العديد من تطبيقات ماك التي يمكن تثبيتها عبر السحب والإفلات بسهولة نقلها كحزم تطبيقات ماك. [ 18 ] ومن الأمثلة على ذلك متصفح موزيلا فايرفوكس ، وسكايب، وجوجل كروم، والتي لا تتطلب صلاحيات المسؤول ولا تحتاج إلى وضعها في منطقة مركزية مقيدة. تُسجل التطبيقات الموضوعة في مجلد التطبيقات /Users/username/Applications( ~/Applications) في خدمات تشغيل macOS بنفس طريقة تسجيل التطبيقات الموضوعة في /Applicationsالمجلد الرئيسي. على سبيل المثال، سيؤدي النقر بزر الماوس الأيمن على ملف في Finder ثم اختيار "فتح باستخدام..." إلى عرض التطبيقات المتاحة من كلٍ من /Applications و ~/Applications. يمكن للمطورين إنشاء برامج تثبيت لمنتجات ماك تسمح للمستخدم بتثبيت التطبيق في مجلده الرئيسي، مع تسمية "التثبيت لي فقط" في واجهة المستخدم الخاصة ببرنامج التثبيت. [ 19 ] يتم تنفيذ هذا التثبيت بصلاحيات المستخدم.

انظر أيضاً

مراجع

  1. 1 2 "ما هو التطبيق المحمول؟" . PortableApps.com. التعريف . تم الاطلاع عليه بتاريخ 15-11-2022 .
  2. "تطبيقات وألعاب محمولة مجانية لـ USB ▷ برامج فلاشة USB" . pendriveapps.com . 2007-01-08 . تم الاطلاع عليه بتاريخ 2024-06-17 .
  3. ""ما هو التطبيق المحمول؟"" . PortableApps.com. إرشادات . تم الاطلاع عليه بتاريخ 15-11-2022 .
  4. "تقنية تحويل التطبيقات المحمولة" . شركة سفينكس للبرمجيات. مؤرشف من الأصل في 7 سبتمبر 2010. تم الاطلاع عليه في 19 يناير 2012 .
  5. "سجل التطبيقات المحمولة" . ip.com . تم الاطلاع عليه في 19 يناير 2012 .
  6. إيونسكو، أليكس. "أسرار قاعدة بيانات توافق التطبيقات (SDB) - الجزء 1" . تم الاطلاع عليه في 19 يناير 2012 .
  7. "التحويلات" . أبحاث مايكروسوفت . تم الاطلاع عليه في 19 يناير 2012 .
  8. هوستفيت، إسكيلد (8 فبراير 2009). "طريقتنا الجديدة للالتزام برخصة LGPL" . مؤرشف من الأصل في 20 فبراير 2009. تم الاطلاع عليه في 9 مارس 2011. يمكنك استخدام الكلمة المفتاحية الخاصة $ORIGIN لتحديد "المسار النسبي لموقع الملف التنفيذي". فجأةً، اكتشفنا أنه بإمكاننا استخدام -rpath $ORIGIN/lib وقد نجح الأمر. كانت اللعبة تُحمّل المكتبات الصحيحة، وبالتالي أصبحت مستقرة وقابلة للنقل، بل وأصبحت الآن متوافقة تمامًا مع روح رخصة LGPL ونصها!
  9. فينينغ، نيكولاس (13 أكتوبر 2010). "إلى مجتمع لينكس العزيز: علينا أن نتحدث" . غاسلامب غيمز . تم الاسترجاع في 30 يناير 2011. يُواصل مجتمع لينكس، بحكمته المزعومة، انتقاد بيئة سطح المكتب CDE بشدة. [...] "يجب علينا جميعًا استخدام إدارة الحزم." إليكم ما أود قوله، ولتكن كلماتي محفورة في الذاكرة: إدارة الحزم ليست حلاً سحريًا.
  10. بايفيلد، بروس (12 فبراير 2007). "أوتوباكيج يكافح من أجل اكتساب القبول" . linux.com. مؤرشف من الأصل في 31 مارس 2008. تم الاسترجاع في 21 يناير 2012. إذا كان هيرن محقًا، فإن الدرس الحقيقي من أوتوباكيج ليس كيفية تحسين تثبيت البرامج، بل صعوبة - وربما استحالة - إجراء تغييرات واسعة النطاق في بنية لينكس في هذه المرحلة المتأخرة من تاريخه. إنها خاتمة مُحبطة ومُثيرة للتأمل لمشروع بدا واعدًا للغاية في يوم من الأيام.
  11. "AppImages" . مشروع Elementary. مؤرشف من الأصل في 13 ديسمبر 2010. تم الاسترجاع في 19 يناير 2012 .
  12. لينوس تورفالدز (29 أغسطس 2014). "أسئلة وأجوبة مع لينوس تورفالدز" (فيديو) . مؤتمر دبيان 2014 بورتلاند . debian.net . 6:28 . تاريخ الاسترجاع: 14 مايو 2016. لقد لمستُ هذا بنفسي في المشروع الآخر الذي أعمل عليه، وهو تطبيق سجل الغوص الخاص بي. نحن نُنتج ملفات تنفيذية لأنظمة ويندوز وماك، ولا نُنتجها أساسًا لأنظمة لينكس. لماذا؟ لأن إنتاج ملفات تنفيذية لتطبيقات سطح المكتب الخاصة بنظام لينكس أمرٌ في غاية الصعوبة.
  13. تورفالدز، لينوس . "هذا رائع حقًا" . جوجل بلس . أخيرًا سنحت لي الفرصة لتجربة نسخة "AppImage" من +Subsurface، ويبدو أنها تعمل بالفعل "بكل سهولة".
  14. هوندل، ديرك (25-11-2015). "هذا رائع حقًا" . جوجل بلس . بصفتي مطور التطبيق، لا أرغب في تضمين تطبيقي في أي توزيعة بعد الآن. الكثير من المتاعب مقابل لا فائدة تُذكر. عندما أتلقى تقريرًا عن خطأ، يكون سؤالي الأول: "أي إصدار من أي توزيعة؟ أي إصدار من أي مكتبة؟ ما هي مجموعة التصحيحات المعقدة التي طُبقت على تلك المكتبات؟". لا، ويندوز وماك يُحسنان التعامل مع هذا الأمر. أنا أتحكم في المكتبات التي يعمل عليها تطبيقي. [...] باستخدام AppImage، يمكنني أن أمنحهم ذلك بالضبط. شيئًا يعمل على أجهزتهم.
  15. فايس، إسحاق. "إصدار MuseScore 2.0.3" . MuseScore.org . MuseScore. مؤرشف من الأصل بتاريخ 23 أبريل 2016. تم الاطلاع عليه بتاريخ 5 أبريل 2016 .
  16. ^ "تم إصدار Krita 3.0" . كريتا. أورغ . كريتا. 2016-05-31.
  17. تجارب مع حزم التطبيقات غير المحددة بوقت التشغيل بواسطة أليكس لارسون (2007)
  18. "توزيع تطبيقك" . developer.apple.com . تم الاطلاع عليه بتاريخ 23-05-2017 .
  19. "مرجع توزيع XML" . developer.apple.com . تم الاطلاع عليه بتاريخ 23-05-2017 .