تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
دورة الفيجوال بيسك و اللينيكس - الدرس الثاني
#1
كاتب الموضوع : magicsword

بسم الله الرحمن الرحيم


تناولنا في الدرس الاول من الدورة مقدمة مبسطة عن منصة تشغيل التطبيقات mono و بعض البرامج الهامة التي سوف نحتاج اليها لنقل برامجنا المكتوبة بلغة vb.net للعمل تحت نظام التشغيل اللينيكس. في الدرس االثاني من الدورة سوف نبدا في بناء تطبيقات بلغة vb.net تستطيع العمل في نظام Linux من خلال mono.


محتويات الدرس الثاني

1. التقنيات المدعومة تحت mono
2. تطبيق Hello World
3. مقدمة عن التطبيقات الرسومية GUI
4. تطبيق Windows Forms


التقنيات المدعومة تحت mono

قبل ان نبدا في تطوير البرامج لمنصة mono يجب ان نتعرف على التقنيات التي يدعمها mono والتقنيات التي لا يدعمها mono ... حتى نعرف نوعية التطبيقات التي يمكن او لا يمكن تطويرها لمنصة mono.

Microsoft .NET Framework 1.1

C# 1.0 - دعم متكامل

المكتبات الاساسية mscorlib, System, System.Xml - دعم متكامل

ASP.Net 1.1 - دعم متكامل

ADO.Net 1.1 - دعم متكامل

Winforms/System.Drawing 1.1 - دعم متكامل

System.Transactions - دعم متكامل

System.Management - غير مدعومة لانها لا تتوافق مع اللينيكس

System.EnterpriseServices - غير مدعومة

-------------------------------------------------------------------------------------------------

.NET 2.0

C# 2.0 (generics) - دعم كامل

Core Libraries 2.0: mscorlib, System, System.Xml - دعم كامل

ASP.Net 2.0 - دعم كامل

ADO.Net 2.0 - دعم كامل

Winforms/System.Drawing 2.0 - دعم كامل

-------------------------------------------------------------------------------------------------

.NET 3

WCF
- دعم غير كامل

WPF - غير مدعوم

WF (Work Flow projects) - غير مدعوم

-------------------------------------------------------------------------------------------------

.NET 3.5

C# 3.0 - دعم متكامل

System.Core - دعم متكامل

LINQ - دعم متكامل

ASP.Net 3.5 - دعم متكامل

ASP.Net MVC - دعم متكامل

LINQ to SQL - دعم متكامل

-------------------------------------------------------------------------------------------------

.NET 4

C# 4.0 - دعم متكامل

ASP.Net 4.0 - دعم متكامل

ASP.Net MVC 1 and MVC 2 - دعم متكامل

System.Numerics - دعم متكامل

Managed Extensibily Framework - دعم متكامل

Dynamic Language Runtime - دعم متكامل

Client side OData - دعم متكامل

Parallel Framework and PLINQ - دعم متكامل

CodeContracts - دعم غير متكامل

EntityFrameworks - غير مدعومة

Server-side OData - غير مدعومة

المصدر
http://www.mono-project.com/Compatibility

-------------------------------------------------------------------------------------------------


تطبيق Hello World


سوف نبدا باذن الله بتصميم اول برنامج لنا على منصة mono بلغة vb.net باستخدام Visual Stdio 2010 كبيئة تطوير و باستخدام MonoDevelop لترجمة وتشغيل البرنامج (debugger) لمنصة mono

تطبيق Hello World هو تطبيق Console بدون واجهة رسومية وسوف يكون موجة لاطار العمل Microsoft .NET 3.5.

1. في Visual Stduio 2010 قم بانشاء مشروع جديد من نوع Console Application ويكون اسمة HelloWorld .

2. في الاجراء الاساسي main قم بكتابة الكود التالي

كود :
[color=#000000][COLOR=#0000bb]        Console[/color][color=#007700].[/color][color=#0000bb]WriteLine[/color][color=#007700]([/color][color=#dd0000]"Hello World"[/color][COLOR=#007700])
        [/COLOR][color=#0000bb]Console[/color][color=#007700].[/color][color=#0000bb]ReadLine[/color][COLOR=#007700]()  
[/COLOR][color=#0000bb][/color][/COLOR]

3. قم بحفظ المشروع باسم HelloWorld

4. قم بتشغيل MonoDevelop ومن قائمة File اختر Open ثم اختر ملف ال solution الخاص بالمشروع HelloWorld. سوف تقوم MonoDevelop بعمل استيراد لملفات المشروع.

5. في شريط الادوات القياسي Standard Toolbar سوف تجد قائمة منسدلةCombo box تحتوي على خيارات ترجمة المشروع اختر الاعدادات التالية:
Release x86 – Mono 2.10.5 ...لكي يتم ترجمة وتشغيل البرنامج تحت منصة mono.

6. اضغط Cntrl+ F5 لتشغيل البرنامج تحت منصة mono. في حالة نجاح التطبيق ستجد عبارة Hello World قد ظهرت في Application Output.

مبروك لقد برمجت اول تطبيق لك على منصة mono وهذا التطبيق يمكنة العمل على نظام التشغيل Linux

-------------------------------------------------------------------------------------------------

مقدمة عن التطبيقات الرسومية GUI

يوفر لنا mono مجموعة من المكتبات المختلفة التي يمكن الاختيار فيما بينها لعمل واجهة رسومية للتطبيق الخاص بنا و لعل اشهر هذة المكتبات هي Windows Forms وgtk# وسوف نقوم بعرض مختصر لاهم هذة المكتبات و شرح لمزاياها و عيوبها.

GTK#

هي مكتبة تم اشتقاقها من المكتبة الام Gtk+ وتم تطويرها خصيصا لعمل تطبيقات رسومية لمنصة المونو و الدونت وهي موجهة في الاصل للغة C# ولكن يمكن استخدامها في لغة vb.net.

يوفر MonoDevelop محرر واجهات للتطبيقات المكتوبة ب Gtk#

المنصات المدعومة: Windows, Linux, Mac OSx

المزايا:
1. مجتمع كبير للدعم
2. الاندماج مع سطح المكتب جنوم
3. الاندماج مع الويندوز حيث انها لها نفس شكل التطبيقات في الويندوز native look
4.لها نفس API الخاصة ب Gtk+
5. MonoDevelop توفر دعم متكامل لتطبيقات GTK#
6. دعم لكثير من اللغات C#, Java, Python, VB.Net
7. مكتبة حرة و مفتوحة المصدر
8. مجموعة كبيرة من الادوات

العيوب:
1. لها شكل مختلف عن التطبيقات الاخرى على Mac OSx
2. ملفات المساعدة و الدعم غير مكتملة
3. صعوبة التعلم وخاصة لمبرمجي ال Vb.net




Windows.Forms

هي المكتبة الرئيسية لعمل الواجهات في Microsoft Windows ويستخدمها ملايين المبرمجيين في عمل التطبيقات. يوفر ال mono الدعم لعمل التطبيقات الرسومية باستخدام هذة المكتبة ويمكن تطبقات Windows Forms من العمل على المنصات التشغيل الاخرى ( مع استثناء مجموعة من التطبيقات التي استخدم فيها بعض الادوات خارجية والتي تستخدم Win API مباشرة)

المنصات المدعومة: Windows, Linux, Mac OSx

المزايا:
1. دعم متكامل من خلال كتب-مقالات-منتديات
2. تمكنك ببساطة من نقل برامجك المكتوبة ب vb.net للعمل على المنصات الاخرى.

العيوب:
1. لا يوجد دعم للكود الذي يستخدم WIN API
2. شكل التطبيقات يظهر مختلف عند تشغيلة على المنصات الاخرى




مكتبات رسومية اخرى يمكن استخدمها:


Mono Mac
http://www.mono-project.com/MonoMac



Qyoto
http://techbase.kde.org/Development/Languages/Qyoto

Qt4Dotnet

http://code.google.com/p/qt4dotnet/

المصدر:
http://www.mono-project.com/Gui_Toolkits

-------------------------------------------------------------------------------------------------

تطبيق Windows Forms

بما اننا نريد ان ننقل تطبيقاتنا للعمل على المنصات الاخرى فسوف نستخدم مكتبة Windows Forms

سوف نبدا باذن الله بتصميم اول برنامج رسومي لنا على منصة mono بلغة vb.net باستخدام Visual Stdio 2010 كبيئة تطوير - لان ال MonoDevelop لا تحتوي على محرر نوافذ لل vb.net - و باستخدام MonoDevelop لترجمة وتشغيل البرنامج (debugger) لمنصة mono

تطبيق Hello GUI هو تطبيق Windows Forms Application وسوف يكون موجة لاطار العمل Microsoft .NET 3.5.


1. في Visual Stduio 2010 قم بانشاء مشروع جديد من نوع Windows Forms Application ويكون اسمة Hello GUI.

2. قم باضافة button الى ال Form ثم قم باضافة الكود التالي في الحدث Button_Click

كود :
[color=#000000][COLOR=#0000bb]MessageBox[/color][color=#007700].[/color][color=#0000bb]Show[/color][color=#007700]([/color][color=#dd0000]"Hello Linux"[/color][color=#007700], [/color][color=#dd0000]"Mono"[/color][color=#007700], [/color][color=#0000bb]MessageBoxButtons[/color][color=#007700].[/color][color=#0000bb]OK[/color][color=#007700], [/color][color=#0000bb]MessageBoxIcon[/color][color=#007700].[/color][color=#0000bb]Information[/color][COLOR=#007700])  
[/COLOR][color=#0000bb][/color][/COLOR]

3. قم باضافة الكود التالي في الحدث Form_FormClosing

كود :
[color=#000000][COLOR=#0000bb]Application[/color][COLOR=#007700].Exit()  
[/COLOR][color=#0000bb][/color][/COLOR]

4. قم باضافة Module وسمة start

قم باضافة الكود التالي الى Module start


كود :
[color=#000000][COLOR=#0000bb]    Sub main[/color][COLOR=#007700]()

        [/COLOR][color=#0000bb]Application[/color][color=#007700].[/color][color=#0000bb]EnableVisualStyles[/color][COLOR=#007700]()
        [/COLOR][color=#0000bb]Dim StartForm [/color][color=#007700]As New [/color][COLOR=#0000bb]Form1
        StartForm[/COLOR][color=#007700].[/color][color=#0000bb]Show[/color][COLOR=#007700]()

        [/COLOR][color=#0000bb]Application[/color][color=#007700].[/color][color=#0000bb]Run[/color][COLOR=#007700]()

    [/COLOR][COLOR=#0000bb]End Sub  
[/COLOR][/COLOR]

5. اذهب الى خيارات المشروع و فم بتعطيل الخاصية Enable Application framework حيث ان ال MonoDevelop لا تدعمها....وغير Startup object الى start

6. قم بحفظ المشروع باسم HelloGUI

7. قم بتشغيل MonoDevelop ومن قائمة File اختر Open ثم اختر ملف ال solution الخاص بالمشروع HelloGUI. سوف تقوم MonoDevelop بعمل استيراد لملفات المشروع.

8. في شريط الادوات القياسي Standard Toolbar سوف تجد قائمة منسدلةCombo box تحتوي على خيارات ترجمة المشروع اختر الاعدادات التالية:
Release x86 – Mono 2.10.5 ...لكي يتم ترجمة وتشغيل البرنامج تحت منصة mono.

9. اضغط Cntrl+ F5 لتشغيل البرنامج تحت منصة mono. في حالة نجاح التطبيق ستظهر نافذة التطبيق جرب ان تضغط على ال Button. ستجد ان شكل ايقونة التطبيق و شكل صورة الرسالة تختلف لان البرنامج من خلال منصة Mono وليس .NET

مبروك هذا اول تطبيق رسومي لك......هذا التطبيق يمكنة العمل بكل سلاسة على منصات التشغيل الاخرى.





انتهي الدرس الثاني من الدورة واعتذر عن تاخر الدرس لظروف السفر و الامتحانات
ومنتظر الاراء و الاسئلة

بالتوفيق
Magic Sword
}}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الطباعة على الوورد من خلال الفيجوال بطريقة مبسطة abdullah 8 3,829 20-10-16, 03:55 PM
آخر رد: نجلاء سالم
Information تحميل برنامج الفيجوال بيسك 2010 download visual basic 2010 mohamed atef2018 0 271 09-07-16, 08:30 PM
آخر رد: mohamed atef2018
  [سؤال] اريد كود بالفيجوال بيسك 2008 يقراء سريال المازربورد nabil.1710 5 636 13-06-16, 12:16 AM
آخر رد: محمد سالم المحترف
  حصريا لمنتدى فيجوال بيسك لكل العرب شرح مكتبه علي سبايسى (alysbisydata) alimse 9 2,516 03-01-15, 04:10 PM
آخر رد: abulayth
  تحويل الفيديو في برامجك-الجزء الثاني( إصلاح للمشاكل + تعديل للروابط + توضيح للأمر ) RaggiTech 1 718 10-12-14, 06:37 PM
آخر رد: abulayth
  درس عمل زر جميل الشكل بالفيجوال بيسك boty 5 1,242 22-08-13, 05:15 PM
آخر رد: زهرة الازهار_mybb_import9220
  بشرى لكل من يريد تعلم البرمجة بالفيجوال بيسك دوت نت arbtech 8 1,614 21-08-13, 11:32 PM
آخر رد: arbtech
  طلب اكواد فجوال بيسك دوت نت 2008 shgeen 2 646 24-02-13, 06:42 PM
آخر رد: السندباد المصري
  الجزء الثاني من:كيف تجعل الـ Text Box ذكي!يترجم العمليات الحسابية ويخرج الناتج ( العمليات المتعددة)! أنس محمود 0 693 22-02-13, 12:39 AM
آخر رد: أنس محمود
  الجزء الثاني - تطوير الكونترول Interfaces RaggiTech 0 387 06-10-12, 12:19 AM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم