zemmora
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

zemmora

منتدى متنوع
 
الرئيسيةالبوابةأحدث الصورالتسجيلدخول

 

 من Windows إلى Linux

اذهب الى الأسفل 
2 مشترك
كاتب الموضوعرسالة
HOUWIROU
Admin
Admin
HOUWIROU


عدد الرسائل : 14822
نقاط التميز :
تاريخ التسجيل : 02/04/2008

من Windows إلى Linux Empty
مُساهمةموضوع: من Windows إلى Linux   من Windows إلى Linux Emptyالأربعاء 18 مارس 2009 - 12:00


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

لقد شاركت في العديد من المنتديات الخاصة بنظام التشغيل Linux، أكثر
الأسئلة التي كانت تسأل تتعلق بكيفية الهجرة من ويندوز الى لينكس، بمقارنة
البرامج و لغات البرمجة و العتاد لكل من نظامي التشغيل ويندوز و لينكس.

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

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

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

إن الغالبية العظمى من مستخدمي ويندوز يقومون بحفظ الرسائل المرئية و
أماكن توضع النوافذ في نظام التشغيل ويندوز بشكل أعمى -عن ظهر قلب- حتى
دون الحاجة لقراءتها بحيث تصبح عادة النقر على أزار معينة (تجاهل، موافق،
إلغاء الأمر) ضمن الرسائل و النوافذ أمر روتيني دون الحاجة لقراءتها، صحيح
أن هذه الطريقة بالتعامل مع نظام التشغيل مفيدة للكثيرين من حيث السرعة،
لكنها كارثية لآخرين من حيث المضمون، فالكثير ممن لا يتقنون اللغة
الإنكليزية (من أطفال و كبار) يلجؤون للإجابة على هذه الرسائل بطريقة
عمياء، و أكبر مثال على ذلك هو زر ”Cancel” أو ”Esc” مما ينتج عن ذلك
كوارث في بعض الأحيان تضر بالبيانات أو بنظام التشغيل بشكل كامل، و الأهم
من كل ذلك هو إستغلال العديد من القراصنة و المخترقين لهذه النقطة و ذلك
بتصميم برامج قرصنة تحمل نفس الواجهات المرئية لنظام التشغيل، و بالتالي
يصدر برنامج الإختراق مجموعة من الرسائل الوهمية شبيه بتلك التي إعتاد
عليها المستخدمون العاديون ، فيجيبون عليها بشكل سريع و تتم عمليات
القرصنة أو الإختراق دون علم المستخدم، لذلك البرامج المفتوحة المصدر تكشف
عن مثل هذه التلاعبات خصوصا أن شيفرتها مسموح الإطلاع عليها و بالتأكيد
لينكس هو الحاضنة الرئيسية للبرامج المفتوحة المصدر، فنسبة أكثر من 99% من
البرامج المستعملة في لينكس هي برامج مجانية مفتوحة المصدر …. لقد أطلت
المقدمة، حسنا نعود لدليل الهجرة.

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

قم بإنشاء قائمة بأسماء البرامج التي تستعملها في ويندوز مع مهمة كل برنامج.
الخطوة الثانية

إبحث عن بدائل برامج ويندوز و التي تؤدي نفس الوظيفة المطلوبة منها.

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


دليل البرامج الحرة

عملية التدرب و البحث عن هذه البرامج يجب أن لا تتجاوز ألـ15 يوم فقط و
أحب أن أنوّه إلى أنك في الوقت الحالي يجب أن تنسى أمر الألعاب لأنني لا
أعدّها من فئة البرامج العادية بسبب أنها تملك بعض الخصوصية.

الخطوة الثالثة

قم بأرشفة جميع ملفاتك الشخصية و إنسخها على قرص DVD
أو CD من أجل الإحتفاظ بنسخة آمنة في حال حدث أي طارئ ما. و أنصحك
بإستعمال برنامج النسخ Nero.

http://www.nero.com

الخطوة الرابعة

بما أن لينكس حر مفتوح المصدر لذلك، هنالك العديد من التوزيعات التي تم إنشاؤها لأغراض محدّدة أو عامة.

و بما أنك مواطن جديد في قارة لينكس، لذلك أنصحك بإختيار:

توزيعة kubuntu

أو

توزيعة opensuse

و إذا كنت لا تثق بأي من الإختيارين السابقين بإمكانك إستعمال المعالج التالي الذي يساعدك على إتخاذ القرار بالتوزيعة المناسبة لك

Linux Distribution chooser

أو بإمكانك الإعتماد على الموقع التالي الذي يحتوي على روابط و تعريفات عن كل توزيعات لينكس في الدنيا -تقريبا.

distro watch

بعد إختيار التوزيعة التي ترغب بها يجب عليك قراءة ميزات التوزيعة من اجل التأكد مناسبتها لك.

الخطوة الخامسة

قم بتحميل التوزيعة التي تريدها من الموقع الرسمي، أو
من أي موقع آخر لكن تأكد من رقم الإصدار، فيجب ان تحصل على آخر إصدار من
التوزيعة، لأنه قد تحدث إختلافات جذرية بين إصدار و آخر، ثم بعد ذلك قم
بنسخ ملف التوزيعة (على الإلب لاحقة ملف التوزيعة سيكون من نوع *.iso) على
قرص مضغوط بواسطة برنامج النسخ Nero.

و في حال أردت شراء توزيعة من السوق (و هو شيء لا أفضّله)، أنصحك بمراجعة
رقم الإصدار من الموقع الرسمي للتوزيعة، ثم بعد ذلك إذهب و إشتر من السوق.

الخطوة السادسة

بواسطة أي برنامج يدعم الآلة الإفتراضية لويندوز و
لينكس، قم بتنصيب التوزيعة بشكل وهمي من أجل تجربتها، و ذلك من أجل
التأقلم عليها قدر المستطاع. و أشهر البرامج التي تستعمل للآلات
الإفتراضية هو:

vmware

و هو برنامج عملي خاص بالآلة الإفتراضية و الشبكات الإفتراضية أيضاً

يجدر بي التنويه أن هنالك بعض التوزيعات تعمل من القرص مباشرة دون الحاجة
لتنصيبها (LiveCD أو LiveDvD) لذلك لا حاجة لك بإستعمال برنامج الآلة
الإفتراضية لأن هذا النوع من التوزيعات يتيح لك خيار التنصيب على القرص
الصلب أو العمل من القرص المضغوط دون تغيير أي من محتويات جهازك.

الخطوة السابعة

قم بالبدأ بتنصيب لينكس لتحصل على جنسيتك الكاملة دون
أي غبار، أثناء عملية التنصيب ستلاحظ أن نوع الملفات التي يستعملها لينكس
مغايرة عن ويندوز (Fat, NTFS) لذلك لا تأبه لهذا الأمر لأنه بهجرتك إلى
قارة لينكس ستصبح تعتمد على هذا النوع من تنظيم الملفات.
ما يتعلق بالمبرمجين

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

MS Visual Studio، Borlan Delphi، Borland C++ Builder

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

عبارة عن محرّر متقدّم للشيفرات البرمجية، قد يحتوي هذا المحرر على العديد
من الإضافات، كالإكمال التلقائي، و التحرير المرئي لواجهة المستخدم GUI، و
آلية الربط التلقائي بين الشيفرات البرمجية و المترجمات Compilers من أجل
إنتاج التطبيق النهائي… إلخ من ميزات.

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

أما في لينكس فالأمر مختلف قليلاً، فهنالك بيئات تطوير تحتوي على محررات
الشيفرات فقط و أخرى تحتوي على مجموعة كاملة من الميزات (إكمال تلقائي،
تحرير المرئي لواجهة المستخدم GUI، وربط تلقائي مع المترجم Compiler)، و
أخرى منقوصة، … و الكثير.

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

و هي عبارة عن مجموعة من البرمجيات أو الشيفرات البرمجية التي تساعد على
تطوير البرامج، لكنها لا تستطيع أن تعمل مستقلة لوحدها أي بمعنى آخر، لا
يمكن للمبرمج إنجاز تطبيق أو برنامج معين بإستعمال حزمة تطوير فقط، فهو
يحتاج لعدد من حزم التطوير + محرر نصوص للشيفرات البرمجية من أجل إنجاز ما
يريده، لذلك تعتبر حزم التطوير مكمّل رئيسي لبيئات التطوير، و أهم أنواع
حزم التطوير هي حزم المترجمات Compilers و حزم تصميم واجهة المستخدم GUI
Designers.

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

Glade

و هو برنامج خاص بتصميم واجهة المستخدمGUI بإستعمال حزمة التطوير GTK .

و لقد إعتقد أحد الأخوة أنه بيئة تطوير للغة البرمجة C++ و جاء يسألني عن كيفية إنشاء تطبيق نهائي!

طبعاً كان جوابي له ينص على ما سبق إضافة إلى أنني نوّهت له أن أغلب برامج
تصميم واجهة المستخدم تقوم بتوليد شيفرات خاصة بهذه الواجهات.

كمثال: إذا قام المبرمج بتصميم نافذة مرئية و زر متوضع ضمنها، عندها سيقوم
برنامج تصميم واجهة المستخدم بتوليد الشيفرة البرمجية التالية:

create window(caption, id)
{
create button(caption, id)
}

هذه الشيفرة متوفرة لعدة لغات برمجة مثل: C++, Python, Perl, C# …. الخ.

لذلك ينخدع المبرمج و يظن أن بإمكانه وضع شيفراته البرمجية الخاصة و
بالتالي تنفيذ برنامجه الذي يرغب به، و هذا هو قمة الخطأ !، فإنتبهوا لهذه
الناحية المهمة جداً.

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

كل هذا يحدث دون تدخل المبرمج، صحيح أن هذه العملية وفّرت على المبرمج
كتابة أسطر برمجية لكنها منعته من التحكم ببرنامجه ليعمل على نظام تشغيل
آخر -أنا لا أقول هنا أن بيئات التطوير في لينكس لا تدعم خاصية توليد
شيفرات تلقائية خاصة بواجهة المستخدم، بل أنوّه إلى ناحية إجبار المبرمج
على إستعمال حزم تطوير خاصة بشركات إحتكارية مثل حزمة MFC أو VCL (في لغة
Delphi)

في عالم لينكس بيئات التطوير تعطي كامل الحرية للمبرمج بإختيار أي حزمة
تطوير يرغب بها و بالتالي الشيفرات التي ستولّد تلقائياً تحدّد حسب رغبة
المبرمج لا حسب رغبة الشركة، عند ذلك الإنتاجية و مجال التطوير و الحرية
سيتم تحقيقهم بآن واحد.
أنواع الشيفرات (البرامج)
الشيفرات (البرامج) الأصيلة Native Codes

شيفرات تطلب تنفيذ أمر معيّن من نظام تشغيل محدّد بحيث لو أردنا تنفيذ هذه الشيفرة على نظام تشغيل آخر فإنها لن تنفّذ.

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

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

هذا النمط من الشيفرات و الإستدعاءات المستعملة هو ما يستعمله مبرمجوا
ويندوز إما بشكل مباشر أو عن طريق حزم التطوير مثل MFC أو VCL، لكن هذا
النمط ليس مقتصرا على مبرمجي ويندوز فقط بل هو متواجد أيضا عند مبرمجي
لينكس! ، لكنه قليل الإستعمال -نوعا ما- فهو يقتصر على البرامج المكوّنة
لنظام التشغيل ذاته أو على بعض البرامج التي تحتاج لإستدعاءات خاصة من
نواة نظام التشغيل مثل بعض برامج تحرير الفيديو.
الشيفرات (البرامج) متعدّدة المنصات Cross-platform Codes

المقصود بكلمة منصات هي أنظمة التشغيل = منصات تشغيل.

معظم لغات البرمجة في العالم تستطيع العمل على عدّة أنظمة تشغيل أي لو
قامالمبرمج بكتابة شيفرة بلغة C++ القياسية على لينكس فإنها بالتأكيد
ستكون صالحة للعمل على ويندوز و ماكنتوش لكن بشرطين:

1.
أن لا تحتوي الشيفرة البرمجية على إستدعاءات واجهة برمجة التطبيقات API (شرحتها بالفقرة السابقة) الخاصة بنظام تشغيل محدّد
2.
أن يتوفر للمبرمج مترجمات تستطيع ترجمة هذه الشيفرة لعدّة أنظمة تشغيل

المقصود بمصطلح ”تعدد المنصات” هو إمكانية ترجمة الشيفرات لتعمل على عدّة
أنظمة تشغيل و ذلك من قبل عدّة مترجمات أو مترجم واحد يترجم لعدة أنظمة
تشغيل، و بالتالي سنحصل بالنهاية على عدّة توزيعات لتطبيق معين من شيفرة
واحدة، مثال:

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

#include

int main()
{
std::cout << "Hello world!" << std::endl;

return 0;
}


لكن ماذا لو أراد المبرمج إستعمال حزم تطوير معينة، هل تصلح الشيفرة التي ستكتب للعمل على عدّة أنظمة تشغيل؟

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

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

تكلمنا عن الغالبية العظمى من لغات البرمجة ماذا عن الباقي!

القسم الصغير من لغات البرمجة الأخرى لا تصلح لكي تصنف من أي من القسمين
السابقين و ذلك بسبب طبيعة هذه اللغات، إذ أن معظم هذه اللغات مختصة
ببرمجة الشبكات و الإتصالات مثل PHP و ASP و HTML لذلك تصنف هذه اللغات
على أنها مستقلة عن نظام التشغيل أي بالإمكان إنشاء تطبيق واحد قادر على
العمل على عدة أنظمة تشغيل و لسنا بحاجة على الإطلاق لعمل توزيعات كما في
النوع الثاني، لذلك يعتير هذا النوع من لغات البرمجة الأكثر قابلية للنقل
لإمتيازه بهذه الخاصية المهمة، لكن بالرغم من أهمية هذه الخاصية إلا أن
تطبيقات هذا النوع من اللغات تبقى قاصرة ببعض النواحي التي تتعلق بعمق
نظام التشغيل، لذلك تم تطوير بعض هذه اللغات لتتعمق أكثر بهذا المجال و
تتدارك هذه النقطة السلبية و أذكر بالتحديد كل من لغتي البرمجة جافا Java
و بايثون Python

لقد تم توسيع هاتين اللغتين بشكل كبير في الآونة الأخيرة لتشملا العديد من
النواحي من برمجة الشبكات المستقل تماما عن نظام التشغيل حتى برمجة أجزاء
من نظام التشغيل.

الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://zemmora.yoo7.com
HOUWIROU
Admin
Admin
HOUWIROU


عدد الرسائل : 14822
نقاط التميز :
تاريخ التسجيل : 02/04/2008

من Windows إلى Linux Empty
مُساهمةموضوع: رد: من Windows إلى Linux   من Windows إلى Linux Emptyالأربعاء 18 مارس 2009 - 12:14




أي أصبحت هاتين اللغتين متطورتين لمستوى جمع بين ميزة البرامج متعددة
المنصات مع الأصيلة، لذلك أحدث التقنيات المتكورة يتم برمجتها بهاتين
اللغتين و يتوقع أن تنتشر هاتين اللغتين على صعيد واسع خصوصا مع تطور
إمكانية برمجة تطبيقات سطح المكتب بسهولة مع Java/RCP (راجع هذا الرابط)

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

الآن و بعد الإطلاع على هذه المصطلحات أصبح بإمكانك إتخاذ القرار السليم بشأن الهجرة، و بالتالي لديك الإحتمالات التالية:
مبرمج C++ القياسية

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

easyeclipse



code::blocks (و هو المفضل من ناحيتي)
مبرمج C++/MFC



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

QT: حزمة مجانية (يوجد إصدار تجاري منها)، متوافقة مع لينكس و ماكنتوش و
ويندوز، تمتاز بتغليفها الجيد للأصناف و التوابع، لكن مشكلتها أن بيئات
التطوير التي تستعملها قليلة و السبب يعود أنها تحتوي على برنامج قوي جدا
لتصميم واجهة المستخدم لذلك لم يحبّذ مستخدموها إدماجها ضمن أي بيئة
تطوير، لكن هنالك ميزة مهمة في هذه الحزمة تميزها عن الحزم الأخرى و هي
أنها متوافقة مع VS في ويندوز، لذلك بإمكان مستخدمي VS أن يستعملوا هذه
الحزمة لتعمل على Win و Lin.

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

بما أن هذه الحزمة شهيرة و مستعملة على نطاق واسع لذلك تم دمجها في العديد
من بيئات التطوير لكنني أفضل ما توصلت إليه من حيث التوافقية بين لينكس و
ماكنتوش و ويندوز هي بيئة التطوير:

code::blocks



wxformbuilder

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



anjuta: بيئة تطوير متوافقة 100% مع GTK لكن مشكلتها الوحيدة أنها لا تعمل
على ويندوز، لكن الأمر المبشّر أن فريق تطوير هذه البيئة يسعون لتشغيلها
على ويندوز و لينكس.

code::blocks: بيئتي المفضلة للتطوير بإستعمال GTK، بالرغم من توافقيتها
الجزئية من GTK إلا أنها تعتبر ثاني بيئة تطوير توافقية مع GTK


مبرمج dot net



monodevelop



هل بإمكان MonoDevelope العمل على ويندوز؟

و المقالة التالية قد تفيد بالإطلاع عن تطور مونو .net في لينكس
مبرمج ديلفي Delphi



Lazarus




جافا Java:

easyeclipse



easyeclipse.python



easyeclipse.lamp



easyeclipse.php



NVU




مبرمجوا Linux وجدوا طريقة لحل هذه المشكلة و هي أنهم قاموا بتصميم بيئة
تطوير تستعمل لغة البايسيك Basic و هي gambas (Basic ليس Visual Basic) و
بالتالي كل ما عليك فعله لتشغيل تطبيقاتك هو تعديل الشيفرة البرمجية من VB
إلى Basic، و طبعا هذا أمر غاية بالسهولة بسبب التشابه الكبير من اللغتين
لأن VB إشتقت بالأساس من لغة Basic.



Gambas


لقد تم توسيع هاتين اللغتين بشكل كبير في الآونة الأخيرة لتشملا العديد من
النواحي من برمجة الشبكات المستقل تماما عن نظام التشغيل حتى برمجة أجزاء
من نظام التشغيل.






أو


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






و أفضل ما توصلت إليه من برامج تصميم لواجهة المستخدم هو:



يبقى لي ذكر أهم بيئات التطوير التي تستعمل هذه الحزمة، و هي:



أما برامج التطوير لواجهة المستخدم بإستعمال GTK، فهي كثيرة لكن أكثرها تميّزا Glade الذي ذكرناه سابقاً

أنصحك على الفور بإستعال حزمة التطوير mono، و أفضل بيئة تطوير تستعمل هذه الحزمة هي:


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



للأسف مبرمجي دلفي هم من أكثر المبرمجين الذين سيتأثّرون بهذه الهجرة بسبب
إستعمالهم للعديد من مكونات VCL المغلقة المصدر، لذلك جميع برامج دلفي
التي تحتوي على مكونات VCL مغلقة المصدر لن تعمل على لينكس، لكن بالإمكان
الإستعاضة عنها ببدائل لمكونات متواجدة ضمن بيئة التطوير Lazarus أما
مكونات VCL المفتوحة المصدر فهي ستعمل 100% دون أية عوائق.

مبرمج جافا- بايثون- بي إتش بي- بيرل- html

لن تقوم بتعديل أي سطر برمجي لأن جميع تطبيقاتك ستعمل، و السبب هو أن جميع
هذه اللغات هي من الزمرة الثالثة (الشيفرات المستقلة عن أنظمة التشغيل)،
لكن مع ذلك أنا أنصحك ببيئات التطوير التالية:



بايثون Python:


بيرل Perl:


بي إتش بي PHP:


إتش تي إم إل HTML:

مبرمج Visual Basic

لغة VB بالأساس موجهة لنظام التشغيل ويندوز (هنالك فرق بين VB.net و VB)
لذلك لا يوجد أي بديل لها على لينكس، و باالتالي جميع برامج فيجوال بايسك
لن تعمل على لينكس، همممم مشكلة، أليس كذلك؟


لكن أحب أن أنوّه أن gambas لا تعمل على ويندوز و بالتالي جميع تطبيقات ستكون من نوع برامج الشيفرة الأصيلة (النوع الأول)


ارجو قراءة الموضوع لاهميته و التفكير فى كل حرف
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://zemmora.yoo7.com
bousser5
عضو برونزى



عدد الرسائل : 192
العمر : 67
الموقع : زمورة
نقاط التميز : 5
تاريخ التسجيل : 01/06/2008

من Windows إلى Linux Empty
مُساهمةموضوع: رد: من Windows إلى Linux   من Windows إلى Linux Emptyالخميس 30 أبريل 2009 - 16:40

cher houwirou, si tu nous explique plus clairement en utilisant les images,ce sujet sera plus convainquant et pourra être tenté ,car d'après ce que je sais l'installation de linux n'est une excursion.Svp try an other once   No
الرجوع الى أعلى الصفحة اذهب الى الأسفل
http://www.zemala48.akbarmontada.net
 
من Windows إلى Linux
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
» أخر نسخة من نضام التشغيل Mandriva Linux Powerpack 2008
» Linux Mint 5 R1
» كتب اللينكس و ماشابهه LINUX
» توزيعات نظام التشغيل Linux
» شرح تثبيث ال ubuntu linux بجانب الويندوز

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
zemmora :: منتديات الحاسب الآلي :: عالم الينيكس LINUX-
انتقل الى: