|
أدوات الموضوع | إبحث في الموضوع |
02-03-2011, 05:39 PM | رقم المشاركة : 1 |
مصمم برامج
|
تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
الان اقدم لكم دوره سى شارب من البدايه حتى الاحتراف ان شاء الله اولا : فهرس الدورة بأذن الله الدرس الاول مقدمه عن لغة السى شارب الدرس الثانى : نبذه عن البرنامج ومكوناته الدرس الثالث :تطبيق بسيط للخاصية (visible) الدرس الرابع : تطبيقات عن اظهار الرسائل ( خطأ & تذكير & عرض معلومه &......) الدرس الخامس : المتغيرات الدرس السادس : بعض العمليات الحسابيه البسيطه الدرس السابع : if statement الدرس الثامن تطبيق اله حاسبه متطوره الدرس التاسع Variable types الدرس العاشر
التعديل الأخير تم بواسطة بو حسين A.H.K.O ; 02-03-2011 الساعة 05:51 PM. |
02-03-2011, 05:42 PM | رقم المشاركة : 2 |
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
فيجوال سى شارب
Visual c# 2008 سي شارب (C#) أحد لغات بيئة الدوت نت لتطوير البرامج من أنتاج شركة ميكروسوفت يرمز اليها بالرمز c# وتنطق "سي شارب"، وهي إحدى اللغات التي انتجتها شركة مايكروسوفت وذلك خروجا من ورطة الجافا والقضية الشهيرة التي رفعتها عليها شركة صن ، تم الاعلان عنها في اواسط العام 2000 تزامنا مع الاعلان عن بيئة الدوت نت. تتميز سي شارب بأنها أحد لغات البرمجة الكائنية وتجمع صفات بالسي والبيزك المرئي حيث انها تستخدم القواعد الخاصه السي وسرعة التطوير كما في البيزك المرئي , لغة السي شارب موجهه إلى مبرمجي الفيجول سي ومبرمجي السي على انها امتداد لهذه اللغات مميزات السى شارب: استفادت لغة السي شارب إلى حد كبير من جهود مطوري الجافا وتشاركها في كل مزاياها ومبادئ التصميم وتفوقها في بعض الاجزاء . لغة السي شارب كباقي لغات الدوت نت والجافا تنتج برامج لاتعتمد على بيئه معينه مثل برامج موجهه للينكس او ويندوز او موبيل . هي لغة كائنية بالمعني الحقيقي للكلمة حيث كل شيء في تركيب اللغة هو عبارة عن كائن تم تعريفة مسبقا ، لذلك لا تسمح هذة اللغة بالكتابة الحرة اي ان ابسط التراكيب البرمجية يجيب ان تكون داخل احدي الكائنات. منذ الوهلة الاولي لظهور السي شارب كان من الواضح انها اتت لتعزز موقف شركة مايكروسوفت فيمنتجها الدوت نت ..... وذلك لانها افضل لغة تتعامل مع الدوت نت و تستفيد من قدراتها كاملة. و قد أصدر في أواخر العام 2005 الإصدار الثاني من اللغة C#2 .. تتنوع التطبيقات التي يمكن انتاجها بلغة السي شارب للعمل علي منصات متتعدة , ثم تلاه فى أخواخر عام 2007 للإصدار الثالث فى فيجوال ستوديو 2008 عيوب السى شارب: لا أستطيع أن أقول أن للسى شارب عيوب , حيث أنها تجمع بين قوة لغى السى ++ وسهولة الفيجوال بيسيك , فهى تعتبر لغة متكاملة وكذلك تتعامل مع الاله بشكل مباشر وتم عمل نظام تشغيل من لغة السى شارب وهذا يتعارض مع بعض الاقوال الاخرى مع بعض المبرمجين الذين يدعون انها لن تستطيع عمل نظام تشغيل تم بالفعل عمل نظام تشغيل ويسمى cosmos وهذا هو الموقع الرئيسى للنظام http://www.gocosmos.org/index.en.aspx مجالات استخدام السى شارب: * تطبيقات منصة التشغيل ويندوز * تطبيقات الانترنت (الويب والواب) ذلك باستخدام منصة ال ASP.NET * تطبيقات الموبايل وتعتمد علي منصة التشغيل وينوز سي اي WINDOWS CE * تطبيقات العمل علي لينوكس وذلك بالاعتماد علي مكتبيات تمت كتابتها خصيصا لمنصة التشغيل لينوكس وذلك من خلال مشروع مونو (مستقل عن ميكروسوفت) ونظرا لتنوع امكانيةعمل تطبيقات باستخدام السي شارب فانة يمكن عمل تطبيقات قوية مثل * تطبيقات تعامل مع قواعد البيانات باستخدام مكتبة ADO.NET * تطبيقات الجرافيكس والوسائط المتعددة * تطبيقات ادارة المحتوي * الالعاب والترفية خلاصة القول فى سى شارب دوت نت لغة السى شارب لغة قوية ومتميزة فى الكثير من المجالات ويتم تطويرها بشكل مستمر , وتعتبر ضمن عائلة لغات السى , ولكنها تتميز عن السى بأنها أسهل فى التعلم كالفيجوال بيسيك
|
02-03-2011, 05:45 PM | رقم المشاركة : 3 |
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
سأقوم فى هذا الدرس ان شاء الله بعرض نبذه بسيطه عن برنامج السى شارب 2008
اولا نحن نستطيع الحصول على البرنامج من الموقع الاصلى لشركة ميكروسوفت وستجد البرنامج ان شاء الله هنا على هذا الرابط http://www.microsoft.com/express/Downloads/#2008-All وهذه هى صفحه البدايه للبرنامج بعد الضغط على مشروع جديد سيظهر لنا هذه النافذه نكتب اسم المشروع ونضغط ok سيظهر لنا مساحة العمل كما بالشكل وهذا شكل الفورم وهذا صندوق الخصائص وهذا هو صندوق الادوات وهذه نبذه بسيطه جدا عن البرنامج ولو اى عضو محتاج اى توضيح او استفسار انا فى الخدمه
|
02-03-2011, 05:49 PM | رقم المشاركة : 4 |
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
سنقوم اليوم وفى ثالث دروس السى شارب بعمل برنامج بسيط جدا فكرته اننا سنقوم بعمل برنامج يقوم بعرض نص معين عن طريق خاصيه اسمها (visible)
بعد ان نقوم بفتح مشروع جديد نقوم بادراج button & label ونغير خاصية ال**** عند الlabel الى وليكن ahmed اما بالنسبه لل button نقوم بتغيير الكود هكذا كما فى الصوره حيث سيظهر لنا الجمله الى كتبناها بعد الضغط على الBUTTONاثناءتشغيل البرنامج وهى I LOVE ALLH ويتم الضغط على الbutton مرتتين متتاليتين حتى تظهر صفحة الاكواد الصفحه التاليه وقبل تشغيل البرنامج سيكون شكل الفورم هكذا البرنامج بعد التشغيل وقبل الضغط على الBUTTON البرنامج بعد الضغط على الbutton ولكن ظهور محتوى نص الlabel يعد عيب عند المبرمج لذلك سنستخدم خاصيه تسمى visible وسيتم التعديل فيها بدل من ان تكون true ستكون false هكذا الى وسيتم تعديل الكود الى سيتضح لنا بعد ان يتم تشغيل البرنامج الى ان نص الlabel لم يظهر وذلك قبل الضغط على ال button وبعد الضغط على ال button سيظهر هكذا و هكذا قد تم عمل البرنامج على اكمل وجه ملحوظه مهمه يمكن الاستغناء عن خاصية visible فى هذا المثال وذلك عن طريق مسح محتوى الخاصيه ال****فى ال label هكذا من الى ارجوا ملا حظة الفرق حيث سيصبح شكلها هكذا بعد التشغيل وقبل الضغط على ال button اما بعد الضغط على ال button ستصبح هكذا وستكون الاكواد هكذا وبهذا نكون قد انتهينا من اول دروس السى شارب 2008
|
03-03-2011, 11:06 AM | رقم المشاركة : 5 |
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
ونبدأ اليوم وبمشيئة الرحمن رابع دروس السى شارب وسيتم ان شاء الله عمل برنامج يظهر رساله معينه كالرسائل الخطأ او رسائل تذكير وهكذا....... ونبدأ بسم الله الشرح والتطبيق نقوم بفتح مشروع جديد ونسميه ا اسم مثلا( I LOVE ALLAH ) ثم نقوم بعمل BUTTON وكل هذا شرحناه بالتفصيل فى الدرس السابق ونضغط عل البوتون مرتين متتاليتين حتى نظهر صفحة الاكواد كما سبق شرحه ونبدأ فى عمل الاكواد كما فى الصوره نلاحظ الربرنامج بعد التشغيل سيظهر هكذا نلاحظ ظهور الرساله وبها النص الذى كتبناه نيجى بقى نزود الكود شويه يعنى هنضيف حاجات على الرساله الى ظهرت ركزوا معايا عشان نلاحظ الفرق هنعدل الكود كما فى الصوره لاحظ اننا كتبنا WELCOME داخل القوس وليس خارجه ونلاحظ الرساله لاحظ WELCOME مكتوبه فين باللون الاصفر تيجى بقى نزود الكود شويه كمان احنا ورانا حاجه لاحظ الكود الجديد لاحظ وجود خيارات غير OKCANCEL كما فى الصوره بص ايه الى هيحصل خطيره الحته دى شوفت ايه الى حصل حلوه الحته دى لا اصبر الى جى احلى اهه شوف الكود الجديد ركز ايه الى هيحصل الحته عاوزه قلب جامد خليك معايا على فكره فى خيارات تانيه غير الERROR وكده درس النهارده يكون خلص يارب تكونوا استفادتم وانا عاوز تطبيق مش كلمة شكر
|
03-03-2011, 11:08 AM | رقم المشاركة : 6 |
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
اليوم باذن الله نبدأ خامس دروسنا فى لغة السى شارب وموضوع درسنا اليوم عن المتغيرات ببساطه جدا المتغيرات تستخدم فى ايجاد وحل معادلات والمتغيرات عندنا ببساطه فى لغه السى شارب منها int و string وdouble .......... حيث ان ال int متغير عددى اى يعبر عنه بعدد معين والمتغير string متغير نصى يعبر عنه بنص **** والمتغير double متغير كسرى او عشرى او عددى ( 65 او 65.3 ) وكذلك يوجد متغيرات اخرى مثل المتغير البوليانى ومتغير float الذى يعبر عن عدد صحيح او عدد عشرى ونبدأ بسم الله التطبيق نريد عمل برنامج يظهرلى قيمة المتغير التى سيتم وضعها فى ال****box سنقوم بفتح مشروع جديد ونسميه ب (int and string ) ونقوم بعمل button و ****box داخل الفورم وذلك بسحب وافلات ال button و ****box داخل الفورم حيث يصبح شكل الفورم هكذا ثم ننقر على الbutton نقرتين حتى نفتح صفحة الاكواد ونقوم بكتابة الكود هكذا لاحظ الكود سترى اننا افترضنا ان المتغير x متغير عددى وحيث ان ال****box1 يكون محتواه نص فنحول النص الى عدد عن طريق الامر parse والسطر الثانى من الكود عملنا رساله يظهر فيها القيمه الى هنكتبها فى ال ****box1 ووضعنا بعد المتغير x الامر ()tostring . لان صندوق الرسائل لا يقبل الا نص لذلك وضعنا هذا الامر حتى يتحول الرقم x الى نص فى الرساله نلاحظ البرنامج بعد التشغيل هكذا واحنا كده اخدنا برنامج بمتغير عددى تعالوا ناخد برنامج بمتغير عشرى او عدد صحيح ايضا نلاحظ الكود كما فى المثال الاول لكن المتغير العشرى ياخذ الامر double يكون الكود هكذا نلاحظ الكود كما فى المثال السابق لكن تم تغيير فقط الامر int الى double والسطر الثانى كما هو نلاحظ البرنامج بعد التشغيل فى حالة الرقم العشرى اما فى حالة الرقم الصحيح يكون هكذا ونأتى الى المتغير النصى ويأخذ الامر string نلاحظ اننا لم نضع امر لتحويل الى نص مثل parse كما فى المتغير العددى والعشرى وهذا لان string متغير نصى فلا نحتاج الى التحويل وكذلك لا نضع فى كود الرساله فى السطر الثانى الامر ()tostring. لانه اساسا متغير نصى ويلائم الصيغه النصيه للرساله نلاحظ البرنامج بعد التشغيل ونأتى الى الامر float الذى يأخذ المتغير العشرى او العددى ايضا و يساوى الامر double وقد تتسائل ما الفرق بينهم؟؟؟ ببساطه الفرق لايختلف فى الوظيفه ولكن الامر ان double تأخذ حجم اكبر من الذاكره عن الامر float وهذا يؤثر على كفاءة البرنامج ونلاحظ الكود نلاحظ كود ال float يطابق تماما كود ال double ويكون البرنمج بعد التشغيل هكذا فى حالة العدد العشرى اما فى حالة العدد الصحيح يكون هكذا وهكذا نكون قد انتهينا من المتغيرات وان شاء الله سنتطرق الى باقى المتغيرات فى الدروس القادمه ويارب تكونوا استفادتم
|
03-03-2011, 11:11 AM | رقم المشاركة : 7 |
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
الحمد لله والصلاة والسلام على رسول الله سيدنا محمد وعلى اله وأصحابه ومن أتعبه إلى يوم الدين ثم أما بعد:
نبدأ اليوم بأذن الله تعالى سادس دروسنا في السى شارب وسيكون درس اليوم عبارة عن عمل برنامج لعمل بعض العمليات الحسابية مثل الجمع والضرب والقسمة والطرح ونبدأ بسم الله بأولى العمليات الحسابية وهى الجمع نقوم بفتح مشروع جديد ونسميه مثلا اله حاسبه بسيطة نقوم بعمل button وtwo ****box هكذا نقوم بتغيير خاصيه****في إلbuttonهكذا من button1 الى **** = الجمع وبعد ان صممنا البرنامج نقوم بعمل الاكواد وكما اخذنا فى درس المتغيرات انه يوجد ثلاث متغيرات عدديه هى ال int & double &float حيث ان ال intمتغير عددى للعدد الصحيح واذا استخدمنا هذا المتغير فى العمليه الحسابيه سيتخدم فقط للاعداد الصحيحه وسيكون الكود هكذا تلاحظوناننا افترضنا فى الكود xمتغير عددى وساوينا هذا المتغير بقيمه ال****box1لذلك وضعنا الامر parse وذلك لان****box1لا يقرأ الا نص و الامر parse يقوم بتحويل النص الى عدد وكذلك فى السطر الثانى افترضنا y متغير عددى ثانى وساويناه بقيمة ال****box2وحولناه الى عدد عن طريق الامر parseكما فى السطر الاول اما فى السطر الثالث : فأننا افترضنا متغير ثالث z يساوى مجموع المتغيرين الاخرين x&y ثم فى السطر الرابع : وضعنا كود اظهار رساله وبها ناتج عملية الجمع وهو قيمة المتغير z ثم وضعنا الامرtostring() وذلك لان الmessageboxلا يقبل الا نص لذلك حولنا قيمه الناتج العددى الى نص عن طريق هذا الامر ويكون البرنامج بعد التشغيل هكذا ولكن اذا كتبنا اعداد عشريه سيظهر لنا خطأ لذلك يفضل استخدامdouble & float لانهم يقبلوا العدد الصحيح والعشرى ويكون الكود نفس الكود السابق مع تغيير المتغيرintالى float & double وشرح الكود تماما مثل فى الحاله الاولى ويكون البرنامج بعد التشغيل هكذا فى حاله العدد الصحيح اما فى حاله العدد العشرى يكون هكذا (float) وكذلك المتغير ويكون الكود هكذا والناتج بعد التشغيل كما فى المتغير double ونأتى لعملية الطرح ويكون الكود كما حاله الجمع تماما ولكن مع تغيير الاشاره يكون الكود هكذا فى حالة المتغير float ويكون هكذا فى حالة المتغير double ويكون البرنامج بعد التشغيل هكذا فى حالة العدد الصحيح اما فى حالة العدد العشرى يكون البرنامج هكذا نأتى بعد ذلك الى حالة الضرب ويكون الكود هكذا مع امكانية وضع المتغيرات الاخرى double بدل من الint & floatمثل ال ويكون الكود مطابق تماما والبرنامج بعد التشغيل يكون هكذا فى حالة العدد الصحيح اما فى حالة العدد العشرى يكون هكذا وحالة القسمه تماما مثلها والى درس قادم باذن الله
|
03-03-2011, 11:13 AM | رقم المشاركة : 8 |
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
نبدأ اليوم بأذن الله سابع دروسنا فى السى شارب وسنتناول اليوم if statement نقوم بفتح مشروع جديد ثم نرفق بالفورم button &****box ثم نقوم بكتابة الكود فى ال button حيث اننا سنقوم بتعريف متغير نصى كما سبق فى درس المتغيرات وهو المتغير string حيث اننا كما سبق وان ذكرنا هذا الكود عندما نجتب اى نص فى ال ****box ولكن اذا اردنا عمل شروط للنص الذى سوف يكتب فى ال****box فسيكون هذا عن طريق if يعنى مثلا سنقوم بوضع شرط اذا تم كتابه لفظ ahmed فى ال****box سيظهر رساله مكتوب فيها Welcome mr ahmed واى لفظ غير ahmed يظهر رساله بها welcome ستلاحظون فى الكود اننا عرفنا المتغير النصى ((x وساويناه بقيمة ال ****box ثم وضعنا فى السطر الثانى الشرط وهو if يعنى لو المتغير x ساوى لفظ ahmed نلاحظ فى الشرط اننا وضعنا = = يساوى مرتين وهذه تكون مع شرط if وكما ان شرط if لا يوضع فى اخره هذه العلامه ( ويكون امر التنفيذ وهو ظهور الرساله موجود بين ({}) هذه العلامات كما فى الصوره وتحصل على هذه العلامات عن طريق الضغط بالكيبورد على مفتاحى ( shift + ج) و ( shift + د) والسطر الرابع من الكود مكتوب فيه كلمة else وهذه الكلمه تطبق امرها اذا لم يتحقق شرط ال if وامرها هو ان تظهر رساله بها كلمة welcome نلاحظ البرنامج بعد التشغيل يكون هكذا فى حالة تحقق الشرط اما اذا لم يتحقق الشرط يكون هكذا ولكن اذا اردنا ان عمل شرطين فى اللكود سيكون ذلك عن طريق الامر else if وسيكون الكود هكذا نلاحظ الكود واضح انه يوجد شرطين لذلك يكون البرنامج بعد التشغيل هكذا فى حالة الشرط الاول اما فى حالة الشرط الثانى اما فى حالة عدم تحقيق الشرط يكون هكذا وبذلك نكون قد انتهينا من هذا الدرس
|
03-03-2011, 11:17 AM | رقم المشاركة : 9 |
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
ان شاء الله اليوم سنبدأ فى عمل اله حاسبه متطوره اولا و قبل ان ندخل فى التطبيق يجب ان نعلم انه حتى نستطيع كتابة الاكواد صحيحه يجب معرفة ماذا يحدث داخل البرنامج وبعد ذلك نستطيع بناء الكود على اساس مدى فهمنا للبرنامج ثانيا نبدا فى تطبيق البرنامج على بركة الله نبدا بفتح مشروع جديد ونسميه (اله حاسبه متطوره ) ونقوم بعمل 17 button و ****box1 ونغير الخصائص كما فى الجدول التالى اولا اكواد الارقام سيكون الكود مثلا فى الرقم واحد اولا لازم نعرف ايه الى هيحصل فى البرنامج عند الضغط على هذا الزر سيتم كتابة الرقم (1) فى ال****box1 يبقى هيكون الكود هكذا ****Box1.**** = num1.****; تلاحظون اننا كتبنا فى الكود ان ****box1.**** وهى دى قيمه ال****box بعد الضغط على الزر تساوى num1.**** يعن هتساوى واحد الى هو الزر الى هنضغط عليه كده احنا فى البدايه يعنى مفيش ارقام لسه فى ال ****box طب نفرض ان ال****box كان فيه مثلا رقم واحد وضغطنا على الواحد بهذا الكود سيظهر لنا واحد بس فى ال ****box وكان من المفترض ظهور رقم (11) لذلك يعد هذا عيب برمجى لانه يجب وضع الارقام متتاليه لذلك يجب تعديل الكود ليكون هكذا ****Box1.**** = ****Box1.**** + num1.****; حيث ان ال ****Box1.**** هى القيمه بعد الضغط على الزر اما ال ****Box1.**** هىالقيمة الاصليه لل****box اما ال num1.**** فهى قيمة الزر او ال button ال هى واحد وبهذا يكون الكود هكذا ****Box1.**** = ****Box1.**** + num1.****; ويكون هذا الكود ثابت فى كل الارقام والdot (.) اولا قبل عمل اكواد العمليات يجب تعريف ثلاث متغيرات وهى المتغيرات (tabel1& tabel2&tabel3) هذه المتغيرات سيتم استخدامها فى اكواد العمليات الحسابيه زى الجمع والطرح والضرب والقسمه وسنرى ذلك فى الاكواد كود: كود:bool btnPlus = false; bool btnminus = false; bool btnMult = false; bool btnDivide = false; كما سنقوم بتعريف الاربع متغيرات البوليانيه اولا المتغيرات البوليانيه هى المتغيرات التى لا تقبل الا قيمتين اما true او false وقد تم عمل كل المتغيرات false حتى يتم تنشيطهم عن الضغط على الزر وذلك عن طريق القيمه true كما سنرى 1- كود عملية الجمع اولا لازم نعرف ايه الى هيحصل عندما يتم الضغط على زر الجمع ولازم نفهم ان البرنامج يقوم بتطبيق معادلات يعنى مثلا عاوزين نجمع5 و3 البرنامج هياخد ال5ويخزنها عنده ويحذفها من ال ****box وبعد كده يقوم بأخذ القيمه3 وجمعها واظهار الناتج عن طريق الضغط على يساوى يبقى المعادله المستخدمه هى 5+3=8 اما total1 التانيه فهى المتغير الى حانا عرفناه وساويناه بالصفر وقيمته هنا تساوى ضفر اما double.Parse(****Box1.****) فهى القيمه المكتوبه الى فى ال****box وهى الى تساوى 5 فى المثال الى فرضناه فى الاول وعشان كده المعادله هتكون هكذا Total1 = 0 + 5 يبقى total1=5 وهى دى القيمه الى اتخزنت اما السطر الثانى وهو يعطى امر بأن يجعل ال taxtbox فارغا بعد الضغط على الزر حتى يتم كتابة الرقم الثانى وذلك عن طريق الامر clear() اما السطر الثالث فيجعل خاصية الجمع الى تم وقفها عن طريق تعريف المتغيرات البوليانيه يتم تنشيطها عن طريق الضغط على الزر 2- كود عملية الطرح يشبه كود الجمع مع وجود اختلاف بسيط كما فى الصوره حيث ان ال total1 الاولى هى الرقم الى احنا كتبناه يعنى هى الرقم الى هيتخزن فى الاله وهنا تم تقديم ال double.Parse(****Box1.****) على ال total1 الثانيه لاننا كما فى المعادله التاليه لو وضعناها كما فى حالة الجمع ستكون هكذا Total1 =0-5 Total1=-5 يبقى ده عيب فى الاشاره وبدلنا حتى تتوافق الاشاره وتكون المعادله هكذا Total1 =5-0 Total1 =5 وبكده نكون قد تغلبنا على الاشاره والسطر الثانى تماما مثل حالة الجمع وان السطر الثالث تم تنشيط خاصية الطرح بدل من الجمع 3 - كود عملية الضرب نأتى الى كود الضرب والقسمه حيث اننا سوف نستخدم المتغير العددى الثالث فى عمليتى الضرب والقسمه وهو total3 ويرجع السبب الى اننا ساوينا هذا المتغير بالواحد الصحيح والواحد لا يؤثر فى عمليتى الضرب والقسمه كما ان الصفر لا يؤثر فى عمليتى الجمع والطرح لذلك استخدمنا المتغير total1 لانه يساوى الصفر اما المتغير total2 فسيتم استخدامه فى كود الزر يساوى سيكون الكود هكذا حيث ان total3 وهى العدد الذى يتم تخزينه فى البرنامج وهى العدد 5 اما total3 الثانيه وهى التى تساوى واحد كما عرفناه قبل ذلك اما (double.Parse(****Box1.****)) فهى كما سبق العدد الذى سيكتب فى ال ****box وتكون المعادله هكذا Total3 = 1* 5 Total3=5 اما السطر الثانى من الكود كما سبق شرحه والسطر الثالث سيتم تنشيط خاصية الضرب التى تم وقفها فى تعريف المتغيرات البوليانيه 4- كود عملية القسمه سنلاحظ ان كود عملية القسمه يشبه كود عملية الطرح لكن مع تغيير الاشاره وذلك ليس للهروب من الاشاره ولكن للهروب من الكسر هكذا حيث اننا اذا كتبنا الكود كما فى حالة الضرب ستكون المعادله هكذا Total3=1/5 وهنا total3 ستكون كسر مع اننا ادخلنا عدد صحيح وهذا سيجعل الناتج به اخطاء اما حالة الكود الحالى فستكون المعادله هكذا Total3 = 5/1 Total3=5 وبهذا نكون قد تغلبنا على الكسر اما السطر الثانى من الكود كما سبق شرحه والسطر الثالث يتم فيه تنشيط خاصية القسمه ثم نأتى الى كود اليساوى (=) سنستخدم فى هذا الكود الجمل الشرطيه الخاصه ب if كما سبق فى الدرس السابق وهو اذا كانت خاصيه الجمع متنشطه اى اذا ضغطنا على زر الجمع وهو ان if (btnPlus == true) اما ال total1 هى القميه الاولى المراد جمعها وهى تساوى 5 حسب مثالنا اما ال double.Parse(****Box1.****); فهى القيمه الثانيه وهى تساوى 3 حسب مثالنا واذا طبقنا المعادله ستكون هكذا Total2=5+3 Total2 =8 اما السطر الثانى من الكود وهو كود عرض النتيجه حيث ان ال ****box1 هتساوى قيمة الجمع وهى قيمة ال total2 اما الامر tostring() فهذا كما عرفنا قبل ذلك ان ال ****box1 لا يقبل الا نص وناتج الجمع عدد لذلك هذا الامر يحول العدد الى نص حتى يقبله ال ****box اما السطر الثالث من الكود وهو total1 = 0; فهو يجعل ذاكرة البرنامج خاليه حتى تكون جاهزه الى عمليه اخرى الشرط الثانى واذا لم يتحقق اول شرط سينتقل البرنامج الى الشرط الثانى وهو لو كانت خاصية الطرح نشطه اما ال total1 فهى القيمه التى تم تخزينها فى البرنامج وهى كما فى مثالنا5 اماdouble.Parse(****Box1.****) فهى القيمه الاخيره وهى 3 كما فى مثالنا وعند تطبيق المعادله ستكون هكذا Total2 =5-3 Total2=2 اما السطر الثانى والثالث فهو كما فى حالة الجمع ندخل على الشرط الثالث وهو اذا كانت خاصية الضرب نشطه else if (btnMult == true) فيتم تنفيذ الامر التالى وهو وذلك لاننا استخدمنا المتغير total3 وهو العدد الذى تم تخزينه فى البرنامج بقيمة العدد الاول المراد ضربه وهو العدد5 كما فى مثالنا والسطر الثانى كما فى حالة الجمع والطرح اما السطر الثالث فهو يجعل قيمة total3 ترجع الى قيمتها الافتراضيه التى افترضناها فى الاول ويكون تطبيق المعادله هكذا Total3=5*3 Total3=15 ونأتى الشرط الرابع وهو شرط حالة القسمه وهو else if (btnDivide == true) واذا تحقق هذا الشرط سيتم تنفيذ الامر الذى يليه وهو كود: كود:total2 = total3 / double.Parse(****Box1.****); ****Box1.**** = total2.ToString(); total3 = 1; هذا الكود مثل كود حالة الضرب تماما ولا يختلف كثير الا فى تغيير علامة القسمه وختاما اتمنى ان اكون قد وفقت فى شرح هذا الدرس على اكمل وجه واتمنى ان تكونوا قد استفدتم معانا والى درس اخر ان شاء الله
|
03-03-2011, 11:23 AM | رقم المشاركة : 10 | ||||||||||||
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته كلنا نعرف قيمة البيانات وأهميتها ، وفي الأكواد التي نكتبها نحتاج إلى بيانات من المستخدم حيث يقوم الكود بإجراء عمليات حسابية عليها لإنتاج معلومات جديدة للمستخدم ، وكل عمل في البرمجة يتضمن العمل مع البيانات بشكل أو باخر في هذا الدرس سنتكلم بتفصيل أكبر عن أنواع المتغيرات التي يمكن أن تخزن قيم مختلفة من البيانات. The variable's type determines what kink of data it can store (نوع المتغير تحدد نوع البيانات التي يمكن استخدامها) هناك 15 نوع من انواع البيانات في السي شارب (built-in value types) وكل نوع يخزن أنواع مختلفة من البيانات. في الدروس السابقة استخدمنا بعض الأنواع وعرفنا كيفية استخدامهم ، لكن هناك أخرى لم نستخدمها بعد value types you'll use all the time ( المتغيرات الأكثر شيوعا) *int تخزن الأرقام الصحيحة بين(2.147.483-2.147.483-) *string تستطيع تخزين **** بأي طول ، متصمنا الفراغات " " . *bool لديها قيمتان منظقيتان "True-False" float * تخزن أرقام تحتوي على كسور ملاحظة : float اختصار للكلمة الانجليزية floating point More types for whole numbers (أنواع أخرى للأرقام الصحيحة ) سوف نروي قصة قصيرة قبل أن نبدأ بذكر الأنواع ...كان يامكان ، في قديم الزمان، وسالف العصر والأوان ، كانت ذاكرة الحاسوب غالية جدا ، وكانت المعالجات في غاية البطئ ، وصدقوا أو لاتصدقوا ...مجرد استخدام نوع خاطئ من البيانات ممكن يسبب بطئ شدييييد للجهاز ، لذلك كان من المهم جدا الحرص على استخدام النوع الصحيح .. وبعد زمن تغير الحال الحمد لله ، وأصبح بإمكاننا في أغلب الأحيان استخدام النوع int في كثر من الحالات ليلبي لنا احتياجنا ، لكن في حال أردت استخدام رقم أكبر أو رقم أصغر ، c# وفرت لناهذه الخيارات *byte تخزن ارقام موجبة بين 255-0 *Sbyte تخزن ارقام بين 128-127- *short تخزن أرقام بين 32.767-32.767- *Ushort تخزن أرقام موجبة بين 65.535-0 ملاحظة :"U" اختصار للكلمة Unsigned (بدون إشارة) *long تخزن أرقام بين billion billion+_ Ulong* تخرن أرقام بين billion billion 18 -0 Types for storing really HUGE numbers أنواع لتخزين قيم كبيرة جدا في الأنواع السابقة مر ت علينا أنواع تستوعب أرقام كبيرة جدا قد تصل الى 38 صفر على اليمين لكن هذا الرقم قد يكون غير كافي في بعض التطبيقات العلمية مثلا ، لذا وفرت السي شارب الأنواع التالية: double * decimal* a few more useful built-in value أنواع أخرى مهمة مررنا بالنوع byte وقلنا أنه يخزن 256 قيمة ، هناك نوع خر يخزن نفس الرقم لكن من نوع character * char اذا هذا النوع يخزن بيانات من نوع character كما ذكرنا ودائما نضع الكاركتر داخل تنصيص مفرد، مثال : ' a' ويمكن تضمين escape sequence مثل : '\ n ' لعمل سطر جديد ، أو ' /t' لعمل tap , وهناك نوع اخر هام جدا من أنواع البيانات وهو ****** وسوف نتطرق له بشكل مفصل بالدرس التالي إن شاء الله تعالى . Casting casting هذا المصطلح يعني تحويل البيانات من نوع إلى اخر . نستطيع تمثيل أنواع البيانات في السي شارب بهذه الصورة ، نمثلها وبعد أن عرفنا أنواع البيانات بقي أن نعرف أن البيانات يجب أن تتوافق عند استخدامها ، لنفترض هذا المثال :
القيمة 20,000 ممكن أن تخزن في النوع short ، لكن نحن خزنا الرقم أولا في النوع int ، الكومبايلر سوف يرى الحجم كنوع int ويعتبر أنك تحاول وضع محتوى الكوب الكبير في الكوب الصغير ، وبالتالي لن ينفذ الكود وسوف يعطينا خطأ : إذا حتى لو كان الحجم صحيحا ، لايمكن أن نعطية لأي متغير ، لاحظوا هذا المثال أيضا:
نعرف أن 10 يمكن أن تخزن في ال interger لكن هذا الكود لن ينفذ ، ونحصل على الخطأ التالي: ويمكن أن نتخلص من الخطأ بعمل الإقتراح الموجود في الرسالة casting كود PHP:
هذا الكود سينفذ بدون أخطاء ، هنا قام الكومبايلر بعمل إجراء توافق بين النوعين بطريقة معينة نوضح الأمر بمثال : في هذا الكود ، نريد أن ندخل قيمة ابتدائية لعدادا السيارة وقيمة نهائية، بحيث يقوم الكود بحساب عدد الأميال التي قطعتها السيارة في رحلة ، ويحسب المبلغ التعويضي المستحق من الشركة التي يعمل لديها الشخص( تقوم الشركة بدفع مبلغ 39.$ مقابل كل ميل في الرحلة) نفتح مشروع جديد ، ونسحب الأدوات التالية: two buttons two NumbericUpDown four lables ونغير خاصية ال **** كما في الصورة : ونغير خاصيل ال visible لل lable 4 الذي أمام amountOwed إلى false نعرف المتغيرات التالية بعد الكلاس مباشرة وقبل عمل أي كود : كود PHP:
نضغط على زر caluculate مرتين لكتابة الكود التالي : كود PHP:
وفي زر Display نكتب الكود التالي حتى يعرض لنا الكود عدد الأميال
تنفيذ الكود أدخلنا الرقم 60 كقيمة ابتدائية للعداد ، و 90 كقيمة نهائية عند الضغط على الزر calculate، ظهر لنا مبلغ 11.7 دولا قيمة التعويض وعند الضغط على زر Display ظهر لنا المسافة التي قطعتها السياة وهي 30 ميل الكود سهل ولايحتاج إلى شرح أكثر ، ووضحت كل النقاط المهمة في الكود نفسه لكن أي سؤال ، لاتتردوا بطرحه ، وكلنا موجودون هنا لإجابة أسئلتكم أتمنى أن أكون وفقت في الشرح ، دمتم في رعاية الله
|
||||||||||||
03-03-2011, 11:28 AM | رقم المشاركة : 11 | ||||
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاته switch statements متابعة للدروس السابقة ، سوف أتكلم في هذا الدرس عن السوتش switch statementes، وتكمن فائدة السوتش في اعطائي امكانية اختيار خيار واحد من بين مجموعة خيارات ، لو نتذكر معا درس ال if statements: استخدمنا في هذا الدرس جملة if statement ومن خلالها حددنا الرسالة التي تظهر اعتمادا على القيمة التي أدخلناها، هنا نفس الفكرة ، فاعتمادا على قيمة المتغير الذي نحدده ، تنفذ لنا تعليمات معينة وهذا بالضبط عمل ال Switch سوف أستخدم نفس المثال لتوضيح الفكرة: اعطينا المتغير name لل Switch وهي القيمة التي سيقوم باختبارها، وفي جمل ال case يقوم الكودر بمقارنة القيمة المدخلة name مع الاسماء بين التنصيص:
وهذه طريقة عمل السوتش، ومن الضروري استخدام الbreak ، وهي تعني الخروج من جملة السوتش عند تحقق اي شرط، بمعنى اذا وجدت اسم يمانية اظهر رسالة ترحيب واخرج من السوتش، لاتقم بتنفيذ بقية المقارنات ، طبعا بإمكاننا وضع عدد غير محدود من المقارنات والجملة الأخير default تعني : في حال عدم تحقق أي من الشروط السابقة ، نفذ التالي( ونعطيه أي أوامر لكي ينفذها)، في مثالنا ، اذا لم يكن الاسم المدخل" يمانية" او" علي" اضهر رسالة: welcome to switch statements أتمنى أن تكون فكرة السوتش اتضحت إلى هذا الحد ، ولمزيد من التوضيح سوف نقوم بتطبيق السوتش على الالة الحاسبة تتذكرون في درس الآلة الحاسبة اننا استخدمنا جملة ال if الشرطية هنا سوف نستبدلها بالSwitch وبالنسبة للجزء الأول لن نغير شيء فيه: التغيير سيكون في بقية الكود، فكنا نتذكر في الكود السابق قمنا بتعريف متغيرات من نوع boolean وأعطيناها قيم false ، وعند الضغط على أي عملية حسابية تتفعل أحد القيمتين ، هنا ومن أجل تسهيل العمل على ال Switch سنقوم بتعريف متغير من نوع string
ونعطيه قيمة "+" اذا ضغطنا على زر الجمع ، وقيمة "-" اذا ضغطنا على زر الطرح، و"*" لزر الضرب، و"*" لزر القسمة. هذه هي بقية الكود باستخدام ال Switch ولن اشرحه بالتفصيل لانه سبق شرحه بدرس الالة الحاسبة ، فقط كما ذكرت غيرنا من if statement الى switch statement أتمنى أن أكون وفقت في الشرح ، دمتم في رعاية الله ولكي تتأكدوا من مدى فهمكم للدرس، أتمنى أن تقوموا بتنفيذ المطلوب بالرد التالي
|
||||
03-03-2011, 11:32 AM | رقم المشاركة : 12 | ||||||||||||||||
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته درس اليوم سيكون خفيفا ولذيذاجدا ، سوف نتكلم عن بعض الأدوات الهامة جدا في الدوت نت التي تسخدم في بناء الفورم ، الأدوات التي سوف نتكلم عنها هي : CheckBoxes, RadioButtons, GroupBoxes ,CheckedListBoxes , ListBoxes and ComboBox أولاالأدوات CheckBoxes, RadioButtons, GroupBoxes سوف نستخدم مثال واحد لشرح كل الأدوات التي ذكرتها في الأول، وهو نموذج مبسط لشراء سيارة بحيث يختار الزبون المواصفات التي يريدها من الفورم ثم يؤكد الطلب لتظهر كل الموصفات في lable واحد هذا هو الفورم الناتج ، وفي كل مرة سوف نضيف أدوات عليه قمنا بتغيير خصاص الأدوات حسب الجدول التالي : وبعد إعداد الفورم ، نكتب الكود التالي في زر ال button
، في أول جملة شرطية في الكود :
اذا قام الزبون بالتأشير على الصندوق ، يعني أنه يريد قطع أثاث إضافية في السيارة التي يرغب في شرائها وسنضيف هذا الكلام الى المتغير OrderInf لكي يعرض في الأخير في lable وبالمثل
إذا أشر الزبون على ال radio button باللون الأزرق ، يعني أنه يريد اللون الأزرق كلون خارجي للسيارة وهكذا بالنسبة لبقية الألوان وسوف نضيف هذا الكلام على label لعرض كل المواصفات التي أختارهاكما هو ظاهر في صورة الفورم في الأعلى CheckedListBoxes بالفورم الذي سبق وكوناه سوف نضيف هذه الأداة من ال ToolBox ليصبح شكل الفورم كالتالي : سوف نستخدم هذه الأداة لنمكن المستخدم من اختيار نوع نظام الصوت في سيارته وبعد إضافة الأداة الى الفوم يمكن تعبئتها بطريقتين ، أولا من التصميم نفسه أو يمكن كتابته بالكود بالطريقة التالية : الكود المكتوب بالصورة:
الان جاء دور الكود الذي يجب أن يضاف الى الكود السابق حتى تظهر الخيارات التي اختارها الزبون من ال checklistBoxexsلتظهر على الlable سوف نضيف على ال event handler of the button
سيظهر الكود كالشكل التالي : ListBoxes سوف نضيف الأداة listBoxes من صندق الأدوات إلى الفورم ونعطيها الإسم (name=carMakeList) ، وفكرتها نفس فكرة الcheckListBoxe لكن هنا لايمكن اختيار اكثر من خيار، وسوف نضع فيها قائمة بأسماء الشركات المنتجة للسيارات حتى يختار الزبون الشركة المصنعة للسيارة التي يرغب في شرائها وسوف يكون شكل الفورم بعد إضافة الأداة كالتالي : ولن أطيل كثيرا في الشرح لأنه كما قلت شبيه بالأدوات التي سبق وشرحتها ، ويمكن ملء القائمة تماما كأداة checklistbox إما من الفورم نفسه أو بكتابة الكود التالي :
في السطر الأول نتأكد من أن الزبون اختار احد عناصر القائمة وذلك باستخدام الميثد الجاهزة SelectedItem. التي ترجع قيمة العنصر، فاذا اختار الزبون احد عناصر القائمة اضفه الى المتغير orderInf لكي يتم عرضه بواسطة ال lable ComboBoxes أولا سنضيف هذه الأدة الى الفورم من صندوق الأدوات ونعطيها الاسم (name=comboSalesPerson) وسوف نستخدمها لنمكن الزبون من اختيار مندوب المبيعات الذي يرغب في شراء سيارته منه او كتابة الاسم الذي يريد إذا لم يكن موجود في القائمة ، سوف يصبح شكل الفورم كالتالي وهو الشكل النهائي للفورم: وأداة combobox تستخدم لاختيار احد العناصر من بين مجموعة عناصر وهي شبيه بالأدوات التي سبق شرحها، وفي الحقيقة نحن نعرف أغلب هذه الأدوات وسبق واستخدمناها أكثر من مرة ( في المواقع في البرامج ..الخ الخ ) لكن لم نكن نعرف اسمها البرمجي، وحالما نضيف الأداة الى الفورم سوف نعرف مهمتها ويمكن ملء قائمة ال combobox تماما كباقي الأدوات ، إما من الفورم أو بإضافة كود كالتالي:
طبعا بالإضافة الى باقي المكونات حان وقت كتابة الجمل البرمجية التي سوف تضيف مندوب المبيعات المطلوب من المستخدم الى قائمة الطلبات التي تعرض في ال lable
في السطر الأول ، استخدمنا ****. لكي تعطينا النص المكتوب في الخيار الذي يختاره المستخدم ونتأكد هل تم الإختار أم لا ، إذا لم يتم الاختيار يظهر النص " أنت لم تقم باختيار مندوب مبيعات" وهذا هو الشكل النهائي للكود لكل الأدوات : انتهى الدرس ، أتمنى أن أكون وفقت في الشرح ودمتم في رعاية الله
|
||||||||||||||||
03-03-2011, 11:35 AM | رقم المشاركة : 13 | ||||||||||||
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
Arrays الدرس الثاني عشر المصفوفات تسهل العمل على عدة بيانات من نفس النوع ، مثلا لو كان لدينا قائمة بالاسعار ..او قائمة ارقام ...الخ يمكن ان نقوم بعملية ترتيب للقائمةsortingالمهم ان تكون من نفس النوع، والذي يميز المصفوفات Arrays ان المتغيرات vaiables تعامل كوحدة واحدone ****** لسنا مضطرين للتعامل مع كل متغير لوحده . تعريف المصفوفات declaring arrays كأي متغير اخر ، نقوم باعطاءه اسم ونوع البيانات ..
عرفنا مصفوفة Array من نوع boolean ملحوقة بأقواس مربعة squre brackets ، وفي السطر الثاني ، اضفها الكلمة المحجوزة new لان المصفوفة عبارة عن ****** مكونة من 15 عنصر( item) وبالطبع يمكن يكون تعريف المصفوفة في سطر واحد
في السطر الثالث ، اعطينة قيمة true للمتغير الخامس في المصفوفة ، حيث ان المصفوفة تبدأ من myarra[0 ] ثم myarray[1] مثال اخر :
نوع كل عنصر في هذه المصفوفة هو int ويمكن الوصول الى كل عنصر باستخدام ال index فمثلا للوصول الى العنصر الثالث في المصفوفة int[2] حيث تبدا الترقيم من صفر كما اشرنا في البداية ، ويمكن التعامل مع كل عنصر حد تماما كما لو كانت متغيرات عادية. مثال تطبيقي : ذكرت في البداية ، ان ال Array تمكنك من التعامل مع المتغيرات بسهولة اكبر ، منها ال sorting هذا المثال يوضح كيفية عمل sorting لعناصر المصفوفة هناك دالة يوفرها array class وهي Array.sort وبالطبع هناك الكثير من الدوال الاخرى الجاهزة مثل البحث او البحث والاستبدال والنسخ ..الخ،لكن سنكتفي بدالة الترتيب sorting تكوين الفورم : اولا قم بانشاء مشروع في السي شارب واسحب 2 ****box و button يستحسن ان تجعل خاصية readonly لل****box اجعلها true نبدأ بعمل declaration للمصفوفة كما ذكرنا في بداية الموضوع نضع الكود في بداية الكلاس :
هنا قمنا بادراج عناصر المصفوفة مباشرة (هذه الطريقة ممكنة في حال وجود عدد صغير من العناصر ام لو كانت العدد كبير فهناك طرق اكثر فعالية لعمل ذلك) سوف نعرض عناصر المصفوفة قبل الترتيب باستخدام foreach loop ، ضع الكود في ال form_load method
show.**** += a +" , "; في ال button event handler نضع الكود التالي :
طبع الكود سهل حيث array.sort هي method جاهزة كما اشرنا وقمنا بتمرير المصفوفة لها واعدنا عرض المصفوفة بال ****box رقم 2 هذا هو شكل الفورم عند تطبيق البرنامج .. وهذا هو الكود الكامل داخل الفيجوال ستديو هذه جدول باهم ready array class methods أتمنى ان اكون وفقت في الشرح و ..دمتم سالمين
|
||||||||||||
04-03-2011, 11:47 AM | رقم المشاركة : 14 |
مشرف الكمبيوتر والبرامج والإنترنت
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
بو حسين a.h.k.o
|
04-03-2011, 11:58 AM | رقم المشاركة : 15 | |||||||||||||||||||||||
مصمم برامج
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
تسلم محمد رضا على المرور وأتمنى نشوف تطبيقات من عندكم
|
|||||||||||||||||||||||
15-05-2012, 05:57 PM | رقم المشاركة : 16 |
طرفاوي جديد
|
رد: تبدأ اولى دورات لغة السى شارب 2008 من البدايه حتى الاحتراف ان شاء الله
يعطيك الف عافية
|
الذين يشاهدون محتوى الموضوع الآن : 2 ( الأعضاء 0 والزوار 2) | |
أدوات الموضوع | إبحث في الموضوع |
|
|