! T3B > W3C

تطوير البرمجيات

كيف تنتقل من ويندوز الى لينكس

السلام عليكم

بداية اود ان اقول اولا انني من معجبي ومستخدمي نظام التشغيل لينكس لاكثر من سنتين، وعملت كثيرا على نشر لينكس بين الناس وتعليم البعض على استخدامه واستخدمت معظم الوسائل والفرص لنشر وجعل جميع الناس تعرف ان هناك شئ اخر غير ويندوز ، فالكثير يعتقد انه ما دام هناك كمبيوتر يعني هناك ويندوز، و يعتقدون ان الكمبيوتر هو ويندوز والويندوز هو الكمبيوتر، وعندما يرى احدهم لينكس عل جهازي فسرعان ما يقول ( شو ال theme هذا ؟ )

في هذا الموضوع وربما كتب عنه الكثير ، لكني سأكتبه بطريقتي ونظرتي لما حولي عن كيفية الانتقال من ويندوز الى لينكس وربما كليا.

لن اتطرق الى التعريف عن انظمة التشغيل وعن ما هو لينكس لانه اعتقد ان اغلب  قراء التقنية يعرفون ما هو.

linux-online-inc

اولا  اود ان اقول ، انه بإستطاعتك الانتقال الى لينكس ما دام لديك الرغبة لذلك وليس فقط ولمجرد  ان تريد ان تعرف ما هو لينكس فهذه تعتبر جزء من اول خطوة وليست اول خطة، وان تؤمن انه بإمكانك الانتقال

لينكس هو عالم مليء بالعلم والمعرفة والتجارب

كثير منا يقول ( لن انتقل الى لينكس لانه جميع البرامج موجودة على ويندوز ومنها ليس موجود على لينكس ) وهذا كلام خاطئ جدا

اكثر من 90% من برامج ويندوز لها نسخ او حتى بدائل مماثلة على لينكس

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

http://badeel.coeia.edu.sa

فيه كل البرامج وبدائلها على لينك

وغير ذلك هناك مشروع Wine  وهو مشروع يهدف الى توفير البيئة الاساسية لتشغيل برامج ويندوز فهو يعمل كـنظام محاكاة لبرامج ويندوز على لينكس فبإمكانك تشغيل برامج كثيرة من برامج ويندوز على لينكس منها PhotoShop ، Adobe Flash، وبرامج اخرى كثيرة

ويمكنك تنزيله من هنا www.winehq.org

وهناك ايضا برنامج مشهور هو CrossOver وهو برنامج تم بناؤه على برنامج Wine ونسخة الـ Standard من CrossOver هي مجانية ولكن هناك نسخة كاملة منه وهي ليست مجانية وهناك ايضا نسخة خاصة بالالعاب

وقمت بتجربته وجربت برامج عديدة كبير من برامج ويندوز مثل Mirosoft Office 2007 و Yahoo Messenger وبرامج اخرى

الان وبعد ان تكلمنا قليلا عن البرامج على لينكس فسنتكلم الان عن توزيعات لينكس وكيف تختار توزيعتك

كما نعرف ان لينكس له توزيعات كثيرة وهذه التوزيعات هي نتاج تطوير نواته لاغراض مختلفة ومتعددة ونظرات مطويرين حسب رؤيتهم لمتطلبات عملهم او مجتمعهم او مستخدمين الكمبيوتر

فمن هذه التوزيعات

1- Linux RedHat:

Redhat_Logo

تعتبر هذه التوزيعة من اقوى نسخ لينكس على الاطلاق وهي تعتبر نسخة Server وهي اقوى نسخة سيرفر حتى الان وهي غير مجانية

اما المجاني منها هناك توزيعتان CentOS و Fedora سنتكلم عنهم لاحقا

2- Linux OpenSuse :

opensuse

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

3- Linux Ubuntu:

Ubuntu-logo

اهلا بكم الى اشهر توزيعات لينكس واكثرها استخداما، تعتبر هذه النسخة من اسهل واخف التوزيعات ، Ubuntu هي كلمة افريقية وهي تشير الى( نسخة البشرية ) حتى ان موسيقى التشغيل لها يوموسيقى افريقية ، وتعتبر هذه التوزيعة ايضا من اكثر التوزيعات من حيث توفير الدعم لها، فالحديث عنها في عالم الانترنت كثير وبسهولة تجد لها برامج والاخبار عنها والتحديثات، وحديثا اصبحت نسخة السيرفر لها مجانية تماما

4- Linux Mandriva:

mandriva-logo

هذه التوزيعة جميلة جدا وهي من اشهر التوزيعات ايضا وهي تشبه OpenSuse نوعا ما

5- Linux Mint :

LML

توزيعة رائعة جدا وبسيطة وسهلة جدا

6- Linux Fedora:

fedora-logo

تعتبر هذه التوزيعة ما اقوى التوزيعات وكما ذكرت فهي تابعة لـ Redhat ونسخة Fedora تعتبر نسخة للمستخدمين العاديين

7- Linux CentOS :

centos-transparent

تعتبر هذه النسخة ايضا من اقوى الوزيعات فهي ايضا تعتبر نسخة Server ولكنها مجانية من RedHat

8- Linux ArtistX:

ArtistX1Small

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

9- Linux OpenSolaris:

OpenSolarisLogo2

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

وهناك العديد من التوزيعات الاخرى تختلف بإتجاه تطويرها.

الان سنتكلم على بيئة سطح المكتب :

هناك العديد من بيئات تشغيل لسطح الكتب على لينكس ولكن اشهرها واكثرها استخداما هما KDE و  Gnome وجميع توزيعات لينكس توفر من توزيعاتها نسختين ، نسخة لـ KDE ونسخة لـ Gnome،

مثل توزيعة Ubuntu فمنها Ubuntu وهي نسخة ال Gnome ومنها Kubuntu وهي نسخة الKDE

KDE: وهي بيئة رائعة جدا وغاية في الروعة والجمال ومن خلال تطوريها اصبحت الان تعتمد على ال Widgetsبحيث اصبح سطح المكتب فيها عبارة عن مجموعة Widgets

kde430-desktop

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

techrepublic_gnome_default_desktop

يعتمد نظام لينكس على برامجه وملفاته على الـ Packages فكل ملفات لينكس وبرامجه عبارة عن packges يمكن تنزيلها من موقع التوزيعة او البحث عنها على الانترنت اواذا كان صاحب البرنامج قد وفر نسخة لتوزيعة معينة من برنامجه ، مثل برنامج متصفح Opera  فعند تنزيلك للبرنامج تختار نوع توزيعة لينكس لديك

او من خلال البحث على الانترنت تجد ما تريد

واجهة التنزيل للتوزيعات سهلة جدا وبسيطة ، فقط تعمل تجزئة للقرص لديك لتعطي جزء للينكس ويكفى كمبتدئ ان تجزء 10 GB على الاكثر للينكس

طبعا هناك جزء يجب عمله وهو ال Swap وهذا الجزء يعمل كذاكرة اضافية للنظام فستلاحظ السرعة فمن المتعارف عليه عند عمل تجزئة ان يتم عمل الجزء الخاص بالـ Swap بضعف الذاكرة لديك فمثلا لو كان لديم 2GB ذاكرة فيتم عمل جزء Swap 4 GB

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

فالذي يقوم بتوفير ميزة معينة في برنامج هو البرنامج نفسه وليس لينكس او نظام التشغيل

مثلا برنامج Amsn وهو برنامج قوي جدا وبديل عن برنامج Windows Live Messenger على ويندوز رغم قوته لكن عيبه الوحيد انه لا يدعم الكتابة العربية بشكل جيد فهو يظهرها بالمقلوب وسبب ذلك انه يعتمد على مكتبة اخرى وليس الEncoding الخاص بالنظام

فكثير من المستخدمين يقول ان هذه المشكلة من لينكس ولذلك لن اقوم بإستخدام لينكس

ولكن لو نظرنا لبرامج اخرى مثل Amsn فهناك برامج كثير مثل pidgin و emesene و Kmess و العديد وجميعها تدعم العربية ولكن مشاكلها انها لا تدعم جميع الخواص الاخرى مثل الفيديو والاديو وال Nudge طبعا بتفاوت بينهم

فاذا البرنامج من يوفر لك ذلك وليس النظام

والنسخة القادمة من Amsn على حسب الاخبار سيتم دعم اللغة العربية بشكل افضل فلا حجة بعد الان

لينكس قوي جدا ، والكثير من المؤسسات والشركات الضخمة حولت سيرفراتها الى لينكس فوفرت الكثير واصبحت اقوى وآمن من ذي قبل

حاولت ان اذكر النقاط التي تهم في الانتقال الى لينكس

فأتمنى ان اكون قد وفيت في الموضوع

وسأقوم إن شاء الله بعمل مواضيع اخرى في لينكس في عدة جوانب

تحياتي


هل بدأت Google بالرد؟


السلام عليكم

هل بدأت Google بالرد فعلا على محرك Bing ام هي مجرد مرحلة تطويرية تمر بها؟

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

ويمكنكم من تجربة النسخة التجريبية من المحرك على الرابط http://www2.sandbox.google.com

ولقد قمت بتجربته ووجدت سرعة اكبر من قبل في اظهار النتائج واظهار عدد اكبر من النتائج ايضا

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

وهذه الخطوة اجدها خطوة قوية جدا في وجه Bing وخصوصا بعد الصفقة الاخيرة مع Yahoo وربما تضعف من منافسة Bing لها

تحياتي

تحياتي


اضافة Xmarks في موزيلا

السلام عليكم

اعجبتني هذه الاضافة حقيقة عندما اخبرني عنها احد الاصدقاء فلن تحتاج بعد الان لحفظ الـ BookMarks لديك كملف والحفاظ عليه من الحذف بالخطأ

اضافة Xmarks تتيح تسجيل وحفظ الـ BookMarks لديك في متصفح FireFox في حساب خاص بك تقوم انت بإنشائه على موقع الاضافة Xmarks فتعمل تزامن مع المتصفح لاستيراد الـ BookMarks كما تحفظ ايضا كلمات السر لديك بحسب إرادتك وتبقى محفوطة في حسابك ومن ثم تستطيع عمل تزامن اخر في اي وقت اخر لاستراجاع الـ BookMarks من حسابك الى متصفحك بكل سهولة

كما توفر ايضا التعامل مع ال BookMarks واضافة BookMarks جديدة في حسابك وتصديرهم الى ملف HTML

كما ايضا يمكنك من اي نسخة قديمة من ال Bookmarks لديك في اي قت

وتوفر لك الاضافة ايضا عرض معلومات عن المواقع لديك واظهار مواقع ذات علاقة بها عند البحث في Google او بجانب رابط الموقع في المتصفح

وعند البحث في Google تظهر لك الاضافة بجانب المواقع الاكثر اضافة في المتصفحات علامة تميز هذا الموقع وعند النقر عليها تظهر لك معلومات عن الموقع

ونوع من الحماية فهذه الاضافة تطلب منك بالاضافة الى كلمة السر PIN Code وذلك تميز اذا كنت جالس على متصفح او كمبيوتر اخر فتطلب منك كتابة ال PIN Code الخاص بك لتمنع احد اخر من عمل تزامن لل BookMarks ولا يملك ال PIN Code

ولتجربة هذه الاضافة الرائعة كل ما هو عليك ان تقوم بتحميل هذه الاضافة من هنا وتثبيتها على متصفحك ومن ثم تسجل في موقع الاضافة من هنا

ومن حسابك تعمل تزامن فيقوم هو بالباقي

تحياتي


نظام التشغيل الجديد Google Chrome، هل سيحطم التوقعات ؟

السلام عليكم

بعد نجاح Google في نشر متصفحها الجديد Google Chrome والذي اخذ اهتمام اكثر من 30 مليون متصفح انترنت حول العالم، بدأت شركة Google تتجه لتطوير انظمة التشغيل واصدار نظام تشغيل خاص بها ويحمل نفس اسم المتصفح Google Chrome

google_chrome_logo

ومن مزايا هذا النظام انه مفتوح المصدر فهو مبنى على Linux Kernel ،ويتميز بالسرعة في التشغيل وصولا للتصفح  فهو يعمل بالتقنية الجديدة Cloud(او التقنية السحابية) التي توفر للمستخدم استخدام النظام عبر الانترنت

كما يتميز بخفته بالتعامل فهو يستهدف اجهزة الحواسيب المحمولة وخصوصا ال NetBook ، كما تتميز واجهته بالبساطة والجمال لتعطي السهولة في التعامل فهذا النظام متخصص بالتعامل مع الانترنت وتطبيقاته

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

وجاء نظام التشغيل معتمدا على برامج وخدمات من انتاج Google  ويضم جميع خدماتها مثل الخرائط والترجمة وغيرها وكما ذكرنا سابقا فهو يدعم تقنية الانظمة السحابية Cloud

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

وسيكون متاح لـ X86 و AMD

وحسب المصدر لهذا الخبرمن Google  فسوف تتوفر هذه النسخة خلال منتصف العام القادم

واخيرا قد نفت Google عن وجود نسخة من نظامها الجديد مبني على توزيعة Ubuntu  وهي نسخة GOS او Good OS حيث تدعم وتوفر تطبيقات Google وتعمل على تقنية Cloud ايضا التي ستوفرها Google بشكل كبير في نظامها القادم

ولكن السؤال هنا ، هل سيكون هذا النظام بديل ومنافس قوي لنظام التشغيل الاكثر تداولا في العالم الا وهو ويندوز ؟

تبقى الاجابة بين ايدي المطورين ومن ثم المستخدمين..

تحياتي


SWT: The Standard Widget Toolkit

Swing GUI Toolkit - JAVA

الشكل الإفتراضي لوجهات مطورة باستخدام Swing

تاريخياً كانت the Abstract Windows Toolkit وتختصر AWT أول بداية للدعم الواجهات الرسومية في لغة Java من قبل شركة Sun، المكتبة كانت تعمل كوسيط ما بين Java والمكونات “الأساسية” للوجهات الرسومية في الأنظمة المختلفة مثل ( Buttons, Events, Menus )، وعندما نقول المكونات الأساسية فإننا نقصد المكونات التي تتوفر في أي نظام تشغيل رسومي تدعمه Java، في هذه الحالة فإن أي مكون رسومي آخر حتى وإن كثر استخدامه مثل Tree أو Table لن يكون متوفراً بشكل مباشر في مكتبات AWT وعلى المبرمج أن يقوم هو نفسه ببرمجته بالإعتماد على ما توفره هذه المكتبات من مكونات أساسية!!

بعد فترة من الوقت أطلقت Sun أيضاً المكتبة الشهيرة Swing والتي حاولت من خلالها حل النواقص في AWT، حيث قامت Sun بإعادة إستخدام بعض أجزاء AWT خاصة فيما يتعلق بالـEvents وقامت ببناء مكتبة قوية لدعم الواجهات الرسومية مكتوبة بالكامل بلغة Java بما يحمله ذلك من إيجابيات وسلبيات، فأنت بذلك يمكنك إستخدام هذه المكتبة القوية والتي تحتوي على مجموعة أكبر من المكونات الرسومية، والتي ستعمل مع أي جهاز يدعم Java مباشرة، ولكنك في ذات الوقت ستشعر ببعض البطء في التنفيذ كما وستظهر برامجك بشكل مختلف عن النمط المعتاد في نظام التشغيل !

SWT GUI Toolkit - JAVA

مظهر الوجهات المطورة بSWT على أنظمة التشغيل الرئيسية

قد يكون إستخدام AWT/Swing معتاداً عند مبرمجي Java، ولكننا اليوم نود الحديث عن مكتبة أخرى وهي SWT، وهي المكتبة المطورة بواسطة IBM، والتي تستخدم وتطور حالياً تحت مشروع الـEclipse المفتوح المصدر، فقد شعرت IBM بأنها بحاجة لمكتبة رسومية للغة Java تتغلب على المشاكل النقص الموجود في AWT والبطء والشكل المختلف الذي تفرضه Swing، وبالتالي قامت ببرمجة مكتبة جديدة ومتكاملة باستخدام C/C++ تدعم المكونات الرسومية المستخدمة بكثرة ( مثل Swing )، وفي ذات الوقت تعمل وبالتالي تظهر بنفس مظهر نظام التشغيل الذي تعمل عليه ( مثل AWT). أضف لذلك وجود أداة مساعدة وهي JFace والتي ستسهل عليك الكثير من الأمور التي يكثر إستخدامها مثل التعامل مع الـEvents, Fonts, Images وغيرها.

وبما أنك يجب أن تدفع ضريبة لكل شيء جيد 😀 فإن SWT ليست خالية من المتغصات، فهي الأخرى تحتوي على بعض النواقص التي قد لا تجدها في Swing فعلى سبيل المثال SWT تدعم طريقة واحدة في إنشاء الواجهات الرسومية وهي Top-down approach وهو ما يعني أنك بحاجة لإنشاء النافذة ثم إضافة أي مكونات أخرى بداخلها، بينما تمكنك كل من AWT و Swing من العمل بطريقتين Top-down أو Buttom-up. الأمر الثاني هو أن SWT ليس جزءاً من الـJava وبالتالي عليك إضافة المكتبات اللازمة مع برنامجك علماً بأن هذه المكتبات تختلف من نظام تشغيل لآخر.

متى أستخدم SWT ؟

هذا هو السؤال الأهم لدى أي مبرمج عندما يجد نفسه أمام عدة خيارات، وأي مبرمج لديه بعض الخبرة يدرك أنه لا يوجد جواب يقول ” إستخدم الأداة الفلانية أو المكتبة الفلانية “، لأن الأمر يعتمد على طبيعة العمل الذي تود القيام به.

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

مراجع ومواضيع ذات علاقة.

إنشاء برامج إحترافية بواسطة Java-RCP الجزء الأول – محمد بشير النعيمي
SWT, Swing or AWT: Which is right for you?
Four toolkits for Java to develop excellent GUI

عناويين مواضيع مقترحة (يمكنكم الرد بدعم أحد هذه المواضيع للكتابة عنها)

مقارنة تطبيقية بين Swing و SWT
تحويل برنامجك من Swing إلى SWT
تطوير برمجيات باستخدام منصة Eclipse RCP


نافذة إلى المصادر المفتوحة (Opensource)

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

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

عندما نقول أن “مصدر مفتوح” ويمكن للجميع التعديل عليه، فهنا نقصد أن للجميع الحق في رؤية الكود وتغييره وإعادة إصداره فقط على نسخه الشخصية وليست على البرنامج الأساسي، فهذا الأمر يتطلب صلاحيات خاصة يعطيها مدير المشروع المفتوح المصدر لبعض الأشخاص حسب رؤيته وطريقته الخاصة، ويتم العمل على هذه المشاريع عبر برامج إدارة التغييرات أو لنقل التحكم بالإصدارات Version Control System – VCS

حسناً عندما نتحدث عن مصادر مفتوحة وعن Version Control System فإننا نتحدث عن متنافسين قويين هما SVN و CVS فدعونا نتحدث حول العوامل المشتركة والفكرة الأساس وثم نقوم بطرح الإختلافات والمميزات لكل منها عن الآخر

Version Control System :-
هي عبارة عن أنظمة تهتم بترتيب وتنظيم البرمجة الجماعية -التعاونية- بحيث يستطيع الفريق العمل على نفس المشروع في نفس الوقت ويقوم البرنامج بإتاحة أخر نسخة معدلة من الملفات للجميع كما ويقوم بحفظ كل التغييرات بالإضافة أو الحذف أو التعديل.
الـWikipedia تعتبر مثالاً جيداً لتوضيح الأمور ، فهي عبارة عن نظام يتيح لعدد كبير من المستخدمين التعديل على نفس المقال وإضافة ما لديهم وحذف ما يجدونه خطأ وتعديل ما يحتاج التعديل، ولكنها في نفس الوقت تحتفظ بكل التغيرات وذلك ليستطيع القائمون على الموقع إستعادة أي مواد محذوفة أو معدلة في حال تطلب ذلك !! يبقى أن نشير إلى أن أنظمة VCS المختلفة لا تعمل بمفردها فهي عادة تكون إضافات لتستخدم مع IDE’s مختلفة ومتنوعة

Concurrent Versions System – CVS :-
نظام إدارة الإصدارات ذو المصدر المفتوح هذا بدأ في الثمانينيات من القرن الماضي وهو الأكثر إنتشاراً في العالم ربما حتى هذه اللحظة، يستخدم كنظيره Client/Server بحيث يكون الكود الأساسي موجود على Server ويتم طلب هذا الكود والتعديل عليه وإعادته للسيرفر مرة أخرى عبر برنامج يدعم CVS عبر الClient ما يميز هذا النظام عن نظيره هو قلة المساحة المستخدمة ويدعم الـRollback بشكل أسهل وإنتشاره وتوفره

Subversion – SVN :-
أيضاً نظام إدارة إصدارات ذو مصدر مفتوح بدأ التطوير عليه بداية هذا القرن عبر شركة CollabNet ، ببساطة القائمون على هذا المشروع يقولون أنهم يسعون لإنشاء نظام يغطي على CVS ويستبدله كلياً وأعتقد أنهم سينجحون في ذلك. فكرة العمل لا تختلف والأساس لا يختلف، ولكن تم حل العديد من المشاكل التي وجدت في النظام السابق .
تم إستخدام هذا النظام في :Apache Software Foundation, KDE, GNOME, Free Pascal, GCC, Python, Ruby, Samba and Mono. كما أنه متوفر في SourceForge.net و Tigris.org ، ويتم إستخدامه في Google Code و BountySource بشكل حصري دون إتاحة CVS كبديل.

مشكلة النظام هو كبر المساحة المستخدمة لكثرة عدد النسخ التي ينشأها ولكنه أكثر سرعة

المشاكل التي تم حلها في هذا النظام:

  • * atomic commit حيث كان النظام القديم يتطلب شبكة موثوقة لعدم قطع النقل خلال عملية الCommit ولكن لا مشكلة بهذا الخصوص مع النظام الجديد
  • إدارة التغييرات الخاصة بالملفات “نسخ، إعادة تسميه،نقل،حذف” فبعضها لم يكن موجوداً في النظام السابق والبعض الأخر تم تطويره
  • إدارة التغييرات في الmetadata الخاصة بالملفات
  • إدارة التغييرات في symbolic links
  • إستخدام بروتوكول http دون بروتوكول خاص

وعدد آخر من الميزات يمكنكم الإطلاع عليها عند القراءة والإستخدام .

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

مصادر مفيدة:
Revision control
Concurrent Versions System
Subversion
SVN vs CVS

دمتم بود

نشر ونوقش في: سوالف سوفت، المشروع ، شبكة فلسطين للحوار


برمجة الألعاب الغائبة عربياً

tt_1

بداية يسعدني أن أنضم لمجتمع سوالف سوفت بعد طول إنتظار وأنتظار
قد يكون أول موضوعٍ لي خارج نطاق سوالف العام المهتم بالإنترنت وتطوير المواقع
ولكن المواضيع القادمة ستكون أقرب لهذا الجانب بإذن الله.

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

فحسب إحصائية عرضها أحد المتخصصين في المجال يعتبر سوق الألعاب في العالم من أكبر وأكثر الأسواق عالمياً ومن أكبر مصادر الدخل في عالم التقنية .

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

ما الذي تحتاجه إذن ؟
عندما نقول ” برمجة ألعاب ” فإننا نتكلم عن فريق يضم مطورو برمجيات ، مصممون ، ملحنون ، مبدعون .

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

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

لنبدأ من الملحنين والمصممين معاً،
فهؤلاء يلزممهم أدواة مساعدة ومصادر موجودة فعلياً يمكنهم الإستفادة منها وإعادة إستخدامها
مصادر لمحتويات الألعاب<- ستجد في هذا الرابط العديد من المصادر لمحتويات جاهزة ومستخدمة سابقاً كـ ( Animations ، Fonts ، Icons, Misc, Sprites, Textures, Music and Sound )
أدوات لمحتويات الألعاب<- وستجد في هذا الرابط قائمة بالكثير من الأدوات والبدائل التي تستخدم لصناعة وتصميم وإنتاج ما سبق ذكره .

توفرت كل هذه الأمور ونريد أن نبدأ في برمجة اللعبة ؟
على المبرمج إختيار العديد من الأمور وإستخدام العديد من الأمور الأخرى أما التي يجب عليه إختيارها فهي لغة البرمجة وبيئة التطوير التي يريد أن يعمل بها أما التي يمكن إستخدامها هي الـ Engine والمكتبات الجاهزة التي تسهل الكثير من العمل ويصعب وقد يستحيل برمجيتها يدوياً في كل مرة ! حسناً كنظرة أولية يمكننا الإستفادة من هذه الصفحات ،
Languages
Programming Tools
Libraries
Game Engines

سأكتفي بهذا القدر هذه المرة ومن الواضح أن مرجعاً كـ Game Programming Wikiليس بسيطاً وكافياً لنبدأ بالإتجاه إلى هذا التخصص الرائع ! بالتأكيد هناك العديد والمزيد من المراجع الأجنبية التي يمكن البحث عنها والقراءة بها فلا تبخل على نفسك بالمحاولة الموقع المذكور سابقاً يوجد به العديد من المقالات والإجابات وبعض المصادر لألعاب جاهزة لتقوم بتحميلها والتعلم من خلالها

دمتم بود

نشر ونوقش في: سوالف سوفت