الجمعة، 21 يونيو 2013

حافظ على أداء جهازك عالياً باجراء الصيانة الدورية له

الصيانة الدورية
أقدم لكم في هذا الموضوع كيفية اجراء صيانة دورية للجهاز
إن عمل الصيانة الدورية للجهاز هو أحد الأسباب المسؤولة عن سير عمل الجهاز


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

فما هي الخطوات التي يجب علينا اتباعها لاجراء صيانة دورية لجهازنا حتى نحافظ عليه نظيفاً خالياً من المشاكل


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

لذلك علينا القيام بتنظيف الجهاز من هذه التربة
و للقيام بذلك علينا أولاً بفك الغطاء الجانبي للجهاز





و يجب أن يتوفر لدينا بلاور لطرد الغبار من الجهاز



و في حال لم بتوفر البلاور فمجفف الشعر قد يفي بالغرض على الرغم من ضعف قوة دفع الهواء الصادر منه

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

نوجه البلاور إلى مروحة تبريد المعالج و باقي اللوحة لتنظيفها


و نوجه البلاور أيضاً إلى مروحة كرت الشاشة


نوجه البلاور تجاه مروحة تبريد وحدة التغذية من الخارج


و نوجه البلاور تجاه وحدة التغذية من الداخل



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


الصيانة الدورية من الخارج


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



الصيانة الدورية للوحة المفاتيح و الماوس


بالنسبة للوحة المفاتيح
يتم استخدام البلاور لطرد الغبار المتراكم بين المفاتيح و يتم مسح المفاتيح بقطعة قماش لازالة الغبار المتراكم عن لوحة المفاتيح
بالنسبة للماوس
نقوم بمسح المكان الذي يصدر منه الضوء أسفل الماوس بقطعة قماس لازالة الغبار المتراكم أو باستخدم فرشاة ناعمة
لأن الغبار يعيق عمل حساس حركة الماوس



الصيانة الدورية للنظام


علينا دائماً تنظيف الجهاز من الملفات المؤقتة التي يستعملها النظام أو تخلفها البرامج عند تشغيلها أو تنصيبها
و لحذف هذه الملفات
اكتب في تشغيل RUN أو مربع البحث الأمر التالي
%TEMP%
و احذف الملفات التي تظهر أمامك
أيضاً اكتب الأمر
TEMP
و احذف الملفات التي تظهر أمامك

أيضاً علينا التخلص من مخلفات تصفح الانترنت
اضغط بيمين الماوس على متصفح الانترنت
و اختر خصائص
PROPERTIES

عند بند محفوظات الاستعراض

اختر حذف
DELETE
BROWSING HISTORY





لا بد أيضاً من القيام بالخطوات التالية لتسريع أداء القراءة من الهارد
افتح جهاز الكمبيوتر
اضغط بيمين الماوس على القرص C
و اختر خصائص
PROPERTIES


من نافذة الخصائص التي تظهر اختر
تنظيف القرص
و أشر أمام الكل و اضغط موافق




بعد ذلك من نفس نافذة خصائص القرص انتقل إلى تبويب أدوات
قم باجراء تدقيق للقرص



ليقوم النظام باجراء فحص للهارد للتأكد من خلوه من المشاكل



و أيضاً قم باجراء إلغاء تجزئة
ليقوم النظام باعادة تجميع أجزاء الملفات المبعثرة حتى يكون هناك سرعة في الوصول إلى الملفات و بالتالي سرعة في الأداء







بامكاننا استخدام البرامج للقيام بهذه المهمات نيابة عنا
و من هذه البرامج

برنامج CCleaner

أو برنامج

AVG PC Tuneup
 

الخميس، 20 يونيو 2013

الجهاز درجة حرارتة عالية اتفضل حلول بسيطة وغير مكلفه لمشكلة ارتفاع درجة الحرارة

الجهاز درجة حرارتة عالية اتفضل حلول بسيطة وغير مكلفه لمشكلة ارتفاع درجة الحرارة

الأربعاء، 19 يونيو 2013

الدرس (2) : الفيجوال بيسك دوت نت (لمحة تعريفية)


السلام عليكم ورحمة الله وبركاته




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


في هذا الدرس سوف نتحدث عن:

  • الجديد في الدوت نت
  • تركيبة برنامج الفيجوال بيسك
  • انواع المشاريع في فيجوال بيسك دوت نت
  • برنامج Hello World



والآن دعونا نناقش ما هي الدوت نت وما جد فيها؟

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


1.ما هو الدوت نت .NET

الكثير يعتقد أن لغات الدوت نت صنعت لتطوير البرمجيات المتعلقة بالانترنت وهذا خاطئ

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


2.ما يبن الفيجوال بيسك دوت نت والفيجوال بيسك 6 وما قبل
لا يمكن اعتبار الفيجوال بيسك دوت نت امتداد لفيجوال بيسك فبدخولك الدوت نت فإن فيجوال بيسك 6 ليس لها اي اعتبار سوى الصيغة المشتركة في قواعد البرمجة.

كما أن فيجوال بيسك 6 يستخدم التقنية (Component Object Model) COM أي تقنية برمجة المكونات وهى ActiveX Controls و ActiveX DLL ....إلخ
أما الفيجوال بيسك دوت نت فيعتمد تقنية الدوت نت التي كانت في يوما من الايام ستصدر باسم COM2 ولكن بسبب الاختلاف الجذري مقابل تقنية الCOM عزفوا إلى تسميتها بالاسم الحال .NET




3.ما هو محتوى بيئة التطوير فيجوال بيسك دوت نت؟

كأي برنامج كبير فان الفيجوال بيسك دوت نت يحتوي:

  1. شريط القوائم.
  2. شريط الأدوات القياسي
  3. نافذة الأدوات التي تستخدم في تطوير البرامج
  4. نافذة التطوير
  5. محرر الكود الخاص باللغة
  6. حانة لعرض أخطاء الكود أو اخطاء اخرى وعرض التحذيرات وعرض رسائل موجهة من البرنامج للمطور
  7. مستكشف المشروع والذي يوضح تركيبة المشروع من نوافذ ووحدات نمطية ومصادر
  8. نافذة الخصائص والتي يمكن بواستطها تعديل خصائص الأدوات المعروضة
  9. وصف الخاصية التي يتم التعديل عليها


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

تنقسم المشاريع بشكل عام في بيئة الدوت نت باختلاف اللغة إلى :

أولا: مشاريع الونيدوز

  • تطبيقات الويندوز
  • خدمات الويندوز
  • تطبيقات WPF
  • تطبيقات الConsole والتي تعمل تحت بيئة الدوت نت والعديد..

ثانيا:مشاريع الويب

  • تطبيقات الويب
  • خدمات الويب
  • أدوات السيرفر
  • أيضا أدوات الأجاكس والعديد ايضا....

ثالثا:مشاريع الجهاز الذكي


5. البرنامج الشهير Hello World

سوف نتعلم صياغة هذا البرنامج باستخدام الConsole وتطبيق الويندوز

أولا : باستخدام الConsole
أنشئ مشروع Console جديد
جرب الكود التالي:

كود:
Sub Main()
 Console.Write("Hello World") 
 End Sub
لكن كما لاحظتم فان هناك مشكلة بعد تنفيذ البرنامج فانه سرعان ما يغلق البرنامج والسبب باختصار لان مهامه انتهت
يمكن التغلب على هذه المشكلة باضافة الكود التالي:

كود:
Console.ReadKey()  
ومهمة هذا الكود الانتظار الى أن يقوم المستخدم بادخال مفتاح وبالتالي مهمة هذا الكود قراءة نقرة

ليصبح الشكل الأخير للكود

كود:
Sub Main()
 Console.Write("Hello World")          
    Console.ReadKey()      
    End Sub
ثانيا:باستخدام تطبيقات الويندوز المرئية


أنشيء مشروع Windows Application
قم باضافة زر Button وواحد TextBox وغير بالخصائص ليصبح بالشكل التالي

وفي هذا الببرنامج يلزمنا عند الضغط على الزر Buttin1 أن يعرض رسالة Hello World في مربع النص
وسيكون بالشكل التالي:

كود:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    TextBox1.Text = "Hello World"      
End Sub

تحياتي للجميع

انتظروا الدرس القادم

الدرس (1) : دورة تعلم معنا فيجوال بيسك دوت نيت


                                                                 السلام عليكم ورحمة الله وبركاته

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


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

اليوم ان شاء الله دعنا ندخل البرمجة من الباب وليس من الشباك ( كما يقولون )

مدخل إلى البرمجة
سوف يكون درسنا هذا عبارة عن عناوين فرعية

1. لماذا البرمجة..!؟
الحواسيب تستطيع القيام بالعديد من المهام لانها قابلة للبرمجة
2.أنظمة الحاسوب..[برمجيات ومادة]
جميع انظمة الحاسوب تتكون من تركيبة أجهزة متشابهة ومكونات برمجية. والجزء التالي يوضح منظومة الأجهزة والبرمجيات ويمكن تصوير هذه المنظومة بالجسد(المكونات المادية) والروح(المكونات البرمجية) التي يتكون منها نظام الحاسب

  • المكونات المادية:


  1. المعالج The CPU
  2. الذاكرة الرئيسية Main Memory
  3. الذاكرة الثانوية Secondary Memory
  4. أدوات الإدخال Input Devices
  5. أدوات الإخراج Output Devices


  • المكونات البرمجية


  1. أنظمة التشغيل : -وحيدة المهام -متعددة المهام
  2. البرامج التنفيذية.

3.البرنامج ولغات البرمجة
البرنامج: عبارة عن مجموعة من التعليمات التي يبتعها الحاسب الآلي بغرض اتمام مهمة معينة.
لغة البرمجة:هي لغة خاصة تستخدم لكتابة البرنامج(مجموعة التعليمات)

ملاحظة:سيتم استخدام الConsole كتوضيح للفقرات

مثال 1:

رمز برمجي:
()sub Main
 Dim X As Integer = 5 Dim Y As Integer = 3
Console.Write(X * Y) Console.ReadKey()End Sub


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



4. لغات البرمجة
تقسم لغات البرمجة لصنفين:

  • عالية المستوى
  • متدنية المستوي

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


5.من ماذا يتكون البرنامج؟
يتكون البرنامج من مكونات رئيسية اهمال احدها يسبب خلل في سير البرنامج

  • الكلمات المحجوزة(KeyWords): هي كلمات تم حجزها في اللغة بهدف استخدامها في وظائف خاصة بالبرنامج مثل الكلمة المحجوزة If في تستخدم للتحقق من صحة الشرط أم لا.كما أن محرر لغة البرمجة يقوم بتلوين الكلمة المحجوزة لتمييزها عن غيرها كما يجب التنويه الى ان المترجم لا يقبل استخدام الكلمة المحجوزة كمتغير فهو يحتكرها له.
  • رموز معرفة من المبرمج(Symbols): هي عبارة عن رموز تعود لمتغيرات أو ثوابت أو روتينيات للمبرمج.
  • علامات الترقيم (Punctuation): لغة البرمجة هي لغة لها قواعدها لا ينبغي مخالفتها والوقوع في خطأ بسبب الاخلال بها يسمى Syntax Error أي خطأ قواعدي
  • العمليات(Operators): وهى عبارة عن عمليات منطقية(عمليات المقارنة) وحسابية(جمع , ضرب...الخ)

هذا هو الدرس الاول(ما قبل الدخول في عالم البرمجة) وترقبونا في الدرس القادم

الدرس 3- المتغيرات والثوابت و تتمة الالة الحاسبة

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

أولا : المتفيرات
أن المتغيرات مهمة جدا ولا يمكن لبرنامج التخلي عنها وهي قد تكون:
(( صورة توضح أنواع المتغيرات في المرفقات بإسم varTypes))

ProCSharp 2008 and .net2008 platform الصورة مأخوذة من

وتعريف متغير ما يتم بالشكل التالي

                                                                                                                                        ;int x =
فهنا تم تعريف متغير رقمي إسمه x وحمل القيمة 0

مثال توضيحي:
أولا قم بتعريف متغير من نوع string إسمه Var وضع فيمته = MyProgram على الشكل التالي:

كود:
string myvar = "MyProgram";  
ثم قم بوضع زر وكتب في الحدث Click الخاص بالزر : (تفاصيل كتابة الكود في الحدث Click في الدرس 2)

كود:
MessageBox.Show(Var);  

الثوابت:
إن الثوابت ليس لها أنواع فهي كأنواع المتغيرات لكن لا يمكن التغيير من فيمتها الإفتراضية
مثلا

كود:
public const int MyNum= 100;  
فهنا دائما الثابت MyNum سوف تكون فيمته 100
وإذا حاولنا تغييرها سوف يظهر خطأ


كود:
public const int MyNum= 100; 
MyNum = 50;    هنا يوجد خطأ  
تستخدم الثوابت لحفظ رقم معين مثلا مقدار التحويل بين عملتين

أظن أصبح لديك معلومات جيدة عن المتغيرات والثوابت ولمزيد من المعلومات عنها راجع ال MSDN
والان سوف نبدأ بإكمال الألة الحاسبة

في الدرس السابق وصلنا في الالة الحاسبة إلى هذا الكود
( مع العلم إننا قد أضفنا 2 TextBox و 1 Button )
الكود كامل:


using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using  Microsoft.VisualBasic;
namespace WindowsFormsApplication1 {
    public
partial class Form1 : Form
   
{

        public
Form1()
        {
           
InitializeComponent();
        }

        private
void button1_Click(object sender, EventArgs e)
        {
           
double num1, num2;

               
num1 = double.Parse(textBox1.Text);
               
num2 = double.Parse(textBox2.Text);
               
MessageBox.Show((num1 + num2).ToString());

        }
    }

وكانت نتيجة الكود الة حاسبة لكن هناك مشكلة بها إنه إذا وضعنا أحرف بدل من الأرقام فسوف يظهر Error
الحل:


كيف نجعل البرنامج يتحقق من القيم المدخلة:
سوف نستخدم لأداء هذا الغرض الكلمة try وهي كلمة محجوزة تستخدم لإلتقاط الأخطاء إذا حصلت عن طريق الكلمة المحجوزة catch بإمكانك إذا أردت أن ينفذ كود ما إذا حصل Error أو لم يحصل عن طريق الكلمة finally (( لسنا بحاجة لها الان ))

فسيصبح الكود الجمع بعد تنسيقه مع الكلمة المحجوزة try كالتالي:
كود:
            double num1, num2; 
            try 
            { 
                num1 = double.Parse(textBox1.Text); 
                num2 = double.Parse(textBox2.Text); 
                MessageBox.Show((num1 + num2).ToString()); 
            } 
            catch 
            { 
                MessageBox.Show("يرجى التأكيد من القيم المدخلة"); 
                textBox1.Text = "0"; 
                textBox2.Text = "0"; 
            }  
جربها ولاحظ:
في حال وجود أي خطأ في تنفيذ الكود في try سوف ينتقل المنفذ إلى catch وهكذا لن يتوقف البرنامج عن العمل

الان نكون قد أتممنا الالة الحاسبة
_____________________________________________


ولكن سوف أشرح عن الكلمة المحجوزة try قليلا لأهميتها:
شاهد الكود التالي ( أولا ضع textbox و button واكتب الكود التالي في الحدث click لل button)
كود:
            double x; 
            try 
            { 
                x = double.Parse(textBox1.Text); 
            } 
            catch 
            { 
                MessageBox.Show("لا يمكن إجراء عملية التحويل"); 
            } 
            finally 
            { 
                MessageBox.Show("شكرا لإستخدامك هذا البرنامج"); 
            }  
سوف تلاحظ أن لو كان ال textbox يحوي على الأرقام فقط فسوف تظهر رسالة ( شكرا لإستخدامك هذا البرنامج)
فقط..
أما لو كان ال textbox يحوي على حروف فسوف تظهر الرسالتان المكتوبتان في الأعلى

أظن أن مفهوم try أصبح واضحا

ولمن واجه أي مشكلة فهاذا الكود كامل:
using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 
using  Microsoft.VisualBasic; 

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 

        public Form1() 
        { 
            InitializeComponent(); 
        } 

        private void button1_Click(object sender, EventArgs e) 
        { 
            double x; 
            try 
            { 
                x = double.Parse(textBox1.Text); 
            } 
            catch 
            { 
                MessageBox.Show("لا يمكن إجراء عملية التحويل"); 
            } 
            finally 
            { 
                MessageBox.Show("شكرا لإستخدامك هذا البرنامج"); 
            } 
        } 
    } 
}  
إلى لقائنا في الدرس القادم إن شاء الله 

الثلاثاء، 18 يونيو 2013

الصين تصنع أسرع "كمبيوتر خارق" في العالم


الصين تصنع أسرع "كمبيوتر خارق" في العالم





مرة أخرى تعلن الصين تفوقها على الولايات المتحدة الأمريكية في حرب الدولتين بتصنيع الكمبيوترات السريعة، إذ طورت كمبيوتراً أسرع بمرتين من أي كمبيوتر عرفته أمريكا.
وأطلقت الصين على الكمبيوتر لقب Tianhe-2 أي درب التبانة-2 ، وكشفت عنه الجامعة الوطنية لعلوم الدفاع في الصين خلال مؤتمر في أواخر شهر مايو/أيار الماضي.
وأكد بروفيسور من جامعة تينيسي جاك دونغارا الأسبوع الماضي على أن سرعة الجهاز الصيني تبلغ 30.7 بيتافلوب في الثانية (وهي وحدة لقياس العمليات الكوادرليونية التي يعالجها الكمبيوتر)، في الوقت الذي يعمل فيه جهاز وزارة الدفاع الأمريكية الملقب بـ "Titan"، بمقدار 17.6 بيتافلوب في الثانية.
وسيتم استعمال الكمبيوتر الصيني لإدارة العمليات البرمجية بكفاءة عالية في المنطقة الواقعة جنوب غرب الصين، وستتيح السعة الكبيرة للجهاز محاكاة أساليب الطائرات ودعم الأمن الحكومي.
ويتوقع الخبراء أن يحتل هذا الكمبيوتر المرتبة الأولى من بين أسرع 500 كمبيوتر حول العالم، في قائمة سيتم الكشف عنها في مؤتمر الكمبيوترات الخارقة في نهاية الأسبوع القادم، في الوقت الذي احتلت فيه أمريكا المرتبة الأولى في القائمة بأواخر شهر نوفمبر/تشرين الثاني الماضي، وبعد تفوقها على منافسات مع اليابان والصين وألمانيا خلال السنوات الثلاث السابقة.

10 % من مستخدمي "فيسبوك" ليسوا بشرا

10 % من مستخدمي "فيسبوك" ليسوا بشرا






كشفت دراسة حديثة أجرتها شركة "إيماركتر"، المختصة بدراسات وأبحاث سوق الإنترنت، أن 10% تقريباً من الحسابات الموجودة على موقع التواصل الاجتماعي الأول بالعالم "فيسبوك"، لا تعود إلى مستخدمين من البشر، حسبما ذكر موقع سكاي نيوز عربية.
وتشير الدراسة، إلى أنه يوجد على الأقل 100 مليون حساب على "فيسبوك" تعود لعلامات تجارية، وشركات، وأيضا لحيوانات، قطط، وكلاب، وخيول وغيرها، ومن بينها الكلب "بيست" الخاص بمارك زوكربيرج، مؤسس موقع "فيسبوك"، ويتابع صفحة "بيست" على الموقع، نحو 1.5 مليون مستخدم.
أما عدد الحسابات البشرية، حسب الدراسة، فيبلغ حوالي 890 مليون حساب تقريبا.
وتزعم إدارة "فيسبوك" أنها تملك حاليا نحو 1.11 مليار مستخدم فعال حول العالم، في الوقت الحالي، حسب موقع "كوارتز".
وتوقعت "إيماركتر" في دراستها، أن يتواصل معدل نمو "فيسبوك" حول العالم، مرتفعا من 42.6% من إجمالي مستخدمي شبكة الإنترنت، ليصل إلى 54.7%، خلال عام 2017.

 

الدرس 2- فهم مبادئ اللغة والمدخل لها مع برنامج الة حاسبة بسيطة

الدرس 2: فهم مبادئ اللغة والمدخل لها


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

ثانيا: مجالات الأسماء (Name Spaces):
يمكنك إستيراد إحدى مجالات الأسماء باستخدام الكلمة المحجوزة using
فمثلا لو أردنا إستيراد الفئة IO وكما هو واضح أن أكبر مجال أسماء في اللغة هو System:

كود:
using System.IO;  
فمثلا إذا أردنا أن نوصل إلى أمر فتح ملف في برنامجنا يمكننا فعل إحدى الطريقتين:
علما أن الأمر يقع تحت مجال الأسماء System.IO

الأولى

كود:
System.IO.File.Open("مسار الملف","نوع الفتح للملف");  
أو نقوم أولا باستيراد مجال الأسماء System.IO كالتالي:

كود:
using System.IO;  
وفي هذه الحالة يكتفى بكتابة الأمر كالتالي:
File.Open


البدئ مع لغة c# :
الان قد ان الأوان لنبدأ بلغة سي شارب بشكل جدي:

كتابة البرنامج الأول لك:

أولا قم بفتح برنامج ال Visual Studio 2008
سوف تجد كلمة Project وعلى يمينها خيارين Open,Create
Open : لفتح برنامج مصنوع سابقا
Create : إنشاء مشروع جديد

إختر Create سوف تظهر لك نافذة تحوي على العديد من الخيارات التي سوف ندرس اهمها:
1- Windows Forms Application
وهي البرامج ذات النوافذ كال Internet Explorer ويكون إمتدادها exe
2- Class Library
وهي عبارة عن صف برمجي فارغ للبدأ ببرمجته من الصفر ويكون إمتداده dll
3- ASP.NET Web Application
إنشاء تطبيقات Web باستخدام تقنية asp.net
4- ASP.NET Web Service Application
إنشاء خدمات لتطبيقات الويب باستخدام تقنية asp.net
5- WPF Application
وهي برامج متطورة يستخدم في رسمها لغة xaml
6- Console Application
وهي تطبيق مهمته تنفيذ شيئ ثم الإغلاق وسوف تظهر ال Console أثناء تنفيذ هذا البرنامج
وعادة ما يستخدم في برامج فك الضفط . النسخ ,,,
7- Windows Forms Control Library
لتصنيع أداة خاصة بك لأستخدامها في تطبيقات Windows Form Application

والان نعود إلى موضوعنا سوف نختار Windows Forms Application:

في ال Name : نضع إسم البرنامج والذي سيكون الان myfirstprogram
ثم إضغط على زر Ok
الان سوف تلاحظ ظهور فورم أمامك ( تم الشرح في الدرس السابق ماهية الفورم )
والان سوف نبدأ بدراسة بعض خواص هذه الفورم:
( ملاحظة لعرض خواص Control ما إضغط عليها ضغطة بالزر الأيمن للفأرة ثم إختر Properties
سوف تظهر خصائص ال Control في أسفل الشاشة على اليمين )

1- الخاصية Text
وهي الخاصية التي تحدد ماهو المكتوب على رأس الفورم (( بشكل إفتراضي هو Form1)) لأنها الفورم الأولى في البرنامج
إكتب هنا MyFirstProgram

2- الخاصية Size
من خلال هذه الخاصية تستطيع تحديد حجم الفورم ولا داعي لكتابتها يدويا فأنت عدل بحجم الفورم بالفأرة وهي سوف تعدل تلقائيا

3- الخاصية Name:
ومن هنا يتم تحديد إسم الفورم (( إجعلها MainForm))

4- StartPosition
ومن هنا تحدد مكان الفورم عندما يتم تحميلها (( إجعلها CenterScreen لكي تبدأ بمنتصف الشاشة ))

الان سوف نقوم ببرمجة الة حاسبة بسيطة نقوم بوضع رقمين لها فتخرج الناتج برسالة:
ولكن قبل ذلك
عليا تعريفك ببعض مصطلحات اللغة ولو بشكل بسيط ( الذي يلزمنا الان ) :

bool وتكون قيمتها true أو false
string وتكون قيمتها نصية مثلا "td"
double رقم كبير
(( سوف يرد في الدورة الشرح المفصل لكل واحدة وحدود إستيعابها ومقدار وزنها على ال ram))

الان نضع إثنان من ال textbox على ال form ثم نضع Button نجعل الخاصية text له = إجمع
وفي كل من خاصية ال text لل textboxes إجعلها = 0

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

كود:
using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
        public Form1() 
        { 
            InitializeComponent(); 
        } 

        private void button1_Click(object sender, EventArgs e) 
        { 

        } 

    } 
}  
لكن ما الذي كتب تلقائيا؟؟؟
أولا:

كود:
using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms;  
هنا تم إستيراد المجالات كما تعلمنا في الدرس السابق

ثم تم تعريف ال namespace الخاص بالبرنامج والذي يدعى هنا WindowsFormsApplication1


كود:
public Form1() 
        { 
            InitializeComponent(); 
        }  
هنا كما تلاحظ أنه تم إستدعاء الأمر InitializeComponent
وهو الأمر الذي يقوم برسم الفورم (( سوف نتطرق إليه ويمكن الوصول إليه من ال Designer
الخاص بالفورم


كود:
private void button1_Click(object sender, EventArgs e) 
        { 
هنا سوف ينفذ كل شيئ مكتوب عند ضغط button1 
        }  
أما هنا فقط تم إضافة أمر في ال Designer مع الحدث Click لل button1 لكي يتم تنفيذ الكود مع ضغط الزر والذي يتم على الشكل التالي

كود:
button1.Click+=new EventHandler(button1_Click);  
أنتبه في الكود السابق تم إفتراض أنك قد كتبت أمر بأسم button1_Click حيث سوف يتم تنفيذ هذا الأمر عند ضغط زر البرتون وبإمكانك تغيير إسم الأمر كما تشاء

الان نكتب في الأمر الذي كتب تلقائيا في المكان الذي أشرت إليه سابقا:

كود:
private void button1_Click(object sender, EventArgs e) 
        { 
هنا أكتب كود الجمع 
        }  
نكتب:


كود:
            double num1, num2; 
            num1 = double.Parse(textBox1.Text); 
            num2 = double.Parse(textBox2.Text); 
            MessageBox.Show((num1 + num2).ToString());  
شرح الكود:
أولا قمنا بتعريف متغيرين من نوع double الأول :num1 والثاني num2
وفي السطر الثاني تم إعطاء القيمة num1 = textbox1.text ولكن هنا يوجد مشكلة
أنه لا يمكن أن نعطي قيمة نصية string لقيمة عددية double
لذلك قمت بالتحويل من string إلى double كما هو واضح
أي تستخدم هذه الطريقة للتحويل من string إلى double على الشكل التالي:
مثلا:

كود:
num1 = double.Parse("500");  
فهنا أصبحت num1 = 500

ثم في السطر الثالث قمنا بجعل num2 = textbox2.text بعد تحويلها ل double بنفس الطريقة
والان نصل إلى السطر الثالث ما معنى MessageBox???
وهي أمر يمكن من خلاله إظهار رسالة بقيمة نصية كالتالي:

كود:
MessageBox.Show("mymessage");  
فقد قمت بجمع الرقمين num1,num2 بين قوسين ثم كتبت على القوسين .ToString()

ويتم إستخدام هذه الدالة على الشكل التالي:

كود:
textBox1.text = num1.ToString();  
وكما هو واضح فإنها تستخدم للتحويل من رقم إلى string
والان لتجريب الحاسبة إضغط على زر f5 وأكتب رقم في كل من ال textboxes وأضغط على ال Button
وانظر إلى النتيجة...

( الان لا تحاول العبث بالالة الحاسبة لأنها في كثير من الحالات سوف تتوقف عن العمل كوضع أحرف بدل من الأرقام لكن في الدرس القادم إن شاء الله سوف نتممها لنجعلها تتحقق من المدخلات )

يتبع في الدرس القادم إن شاء الله...