الإبحار في لغة سي شارب الجزء الثاني
الوصف
لمن هذا الكتاب؟
يستهدف هذا الكتاب الأشخاص الذين يودون تعلم البرمجة ويودون البدء بلغة برمجية جديدة ويستهدف أيضا المبرمجين المبتدئين الذين يرغبون تطوير التطبيقات بواسطة لغة C
أما بالنسبة للأشخاص الذين سبق وأن تعلموا لغة برمجية سهلة مثل Visual Basic فإن هذا الكتاب هو وسيلتهم لاحتراف لغة C
.
وكخلاصة: فإن هذا الكتاب موجه إلى كل شخص سأم من الكتب التي تتناول لغة C
سواء العربية أو حتى الأجنبية والتي تفترض منه معرفة مسبقة بلغة برمجية أخرى.
إن هذا الكتاب مثالي لنوعين من المبتدئين:
إذا كنت مبتدئا في عالم البرمجة واخترت لغة C
لتبدأ معها مشوارك سيساعدك هذا الكتاب على تعلم مفاهيم برمجية قوية جدا ستعتبر ركيزة أساسية تعتمد عليها أثناء تصميم تطبيقاتك.
إذا كانت لديك خبرة مسبقة بإحدى لغات البرمجة ولو كانت خبرة ضئيلة ولكنك تود تعلم كيفية البرمجة باستخدام إطار عمل .NET فإطار عمل .NET يمثل ثورة برمجية بحد ذاته ويدخل عددا من المفاهيم الجيدة على عالم البرمجة هذا ويقدم الكتاب المفاهيم البرمجية كائنية التوجه المتعلقة بإطار عمل .NET وإذا كنت مبرمجا بإحدى لغات البرمجة التي لا تدعم البرمجة كائنية التوجه فإننا قد أفردنا جزءا كاملا في هذا الكتاب لن يعلمك مفاهيم البرمجة كائنية التوجه في .NET وحسب وإنما إتقان هذه المفاهيم أيضا.
تأليف:
تعنبر لغة السيي شاب الموضوع السائن الذي يطوده المبرصبون اليوم أثناء مديثمم عن تطوير
عيبلزيرع وسو مسندس متميز في 1/1301:05017 متام بإنتاج منتجابى ولغابى برصية أخوى بدا في طلك
تنسم غيما اللغابم الأخرى مع أضافة التمسيتابى لجعل عطه اللغة أفضل.
لد سدم لغة 0# من نبل شرك 1/13010505 لتعمل علي منصة خاصة بها تسدي بلك المنصة
بلطار عمل 1021 - عدون الامتماد المباشر علي نظام التشغيل فالشيغرة المشُتوبة بلغة 0# لا
تتناطيب مع نظام التشغيل مباشوة وإنما مج إطاو عمل 1151
مجوحة أو بشضل تياس الاستخدام العام. تسدي عطه المضقبة بإطار عمل 11121 وضطا واضع عن
تجمع بين المنوة البرمجية للغة ++0 وبين سسولة وبساطة البوسجة بلغة 1585830 17181181 ولن بالغ
إعداد: المهندس حسام الدين الرز
نضع شرضصة 1/11010804 جملة من الأعدام من أنشاء لغة برعبة. ومن أعدائم لغ 0#:
1- لغة بسيطة جاديم 0# لتتفي علي التعتيدارم والمفاضل الخاصة باللغام مثل 8172ل
و++© فاده بالغاء الماشرو والفواليم والتوارثش المتعدد قسطة تسيو الالقبلس لعدى
2- لغة مديثة: أن معالبة الاستثناء وأنواع البيانات القابلة للتوسع ويطلك أمن الأوامر ع
سمانع تتسضيم با اللغابم البتدية 10111461 مون أساس شي لفقي © و++0 وقطا
المعشون من أحَثر الأجزاء التي تسبي الالزبلس لعدى المبرصجين. ود ثم ألغاء العديد عن
التعقيدابى والمشاعل الف يحدثما عا المشون في 0#. لا تفلق بشأن المتشونابم سوك
يتم شردما في الدروس القاسعة.
بما وميه الصبسلقن:0820501010 والتواريش 11103150006 وتعدد الأويه
المقاصيم نه المدروس المتقدمة.
عداد: المهندس حسام الدين الرز 6
ثوية ولشّن عا غير سميع معندما تقوم بالبرصبة باستخدام لغذ 0# متبد أنما لغ يعن
استشدامما في أعداء أي مصمة. ستتعري علي اللمارم الأساسية لأحنثا.
ويشقي أن تقول إنك بواسطة لغذ 0# متتمكن من تصميم أعيّد التطبيفابك وبمبصود أل بخثير
يستعدكم عطا الصُتَاب الأشناس الذين يودون تعلم البرمبة ويودون البدء بلغة بركجية جديدة
ويستعدم أيضا المبرمبين المبتدنين الذين يوثبون تطوير التطبيقاءم بواسطة لغة #© أما
بالنسبة الأشناس الذين سبق وأن تعلموا لخذ برمجية سملة مثل 1715118113510 إن عطا العتام
عو وسيلقدم لاحتراث لغة 0#.
خائنية التوجد المتعليقة بإطار عمل 111:1. وإا حَنى سيومجا بإمعدي لغابم البرسجة النه لا
عداد: المهندس حسام الدين الرز 7
تدعم البرسمة خائئية التوجد مإننا قد أفردنا جزءا كاملا في معطا الصَتاج لن يعلمك مشاسيم
إن أدر ما تضاح إليه لاستخداء عطا الصتاب عو عترم 0# يمثل المترجم "00111101161 الأساة الت
تطوير إطار عمل 1071 (51015 16:ه 110016177 151) والقي يمشنك يليما من موفع شوضة
ولكّن ع تتمشّن من الاستشاعدة التسوى من عا الحَباج فأنى بحاجة إلي بيئة التطوير المتكاملة
383 30010112171 لعتامة17 والنه تبسط عليك عُتابة شيفرة #©0 من عسة جواني عما أتما
للتشاطع يدول تسميم واجساب المستخدم إلى منعة متيقة.
أسدريم شرصة 1/3010505 للش نسغ من 2013 5016601171 17151181 ومي:
إعداد: المهندس حسام الدين الرز 8
إعداد: المهندس حسام الدين الرز 9
الفصل الأول
بيقات 0005016 مفيدة لكن كي نتمكن من الوصول إلى القوة الحقيقية للبرمجة بلغة 0# وإطار عمل
د فإن علينا أن نستخدم تقنيات البرمجة كائنية التوجه ع 0017-0110 :ع0 001-01160160 أو
سوف نتجنب في هذا الفصل الشيفرات البرمجية وسنركز على مبادئ البرمجة كائنية التوجه وهو ما
سيقودنا إلى كتابة شيفرة بلغة #© بعد ذلك باعتبار أن علاقتها بالبرمجة كائنية التوجه وثيقة جدا سوف
نتكلم عن جميع المبادئ التي سنتناولها في هذا الفصل بتفصيل أكبر في الفصول القادمة ومع الكثير من
التطبيقات والأمتلة لذا لا داعي لأن تقلق إذا لم تستطع استيعاب كافة الأمور في هذا الفصل من الوهلة
وكبداية فإننا سنتحدث عن أساسيات البرمجة كائنية التوجه ويتضمن ذلك الإجابة على أسئلة جوهرية مثل
"ما هو الكائن؟" سوف تكتشف وجود العديد من المصطلحات المرتبطة بالبرمجة كائنية التوجه التي قد
تظهر مربكة نوعا ما في البداية إلا أنك ستجد الكثير من الشرح الوافي لها. ستجد أيضا أن استخدام
البرمجة كائنية التوجه يتطلب منا رؤية مختلفة للبرمجة.
وبالإضافة إلى مناقشة المبادئ الأساسية للبرمجة كائنية التوجه فإننا سنتناول إحدى المناطق التي يكون
فيها فهم 0017 أمرا جوهريا وهي تطبيقات 10/018 11/100085 يوفر هذا النوع من التطبيقات رؤية
واضحة للبرمجة كائنية التوجه حيث سنستعرض النقاط الأساسية في 001 ضمن
نقصد بتطبيقات 10015 17100005 تلك التطبيقات التي تستفيد من المزايا التي يقدمها نظام
5 وبيئته الرسومية من قوائم وأشرطة أدوات...الخ.
إعداد: المهندس حسام الدين الرز يود
لاحظ أن 0017 المقدمة في هذا الفصل هي 0017.011 حقيقية وهذا يعني أن بعضا من التقنيات
المعروضة في هذا الفصل لا تنطبق على بيئات 0017 الأخرى إن التنويه عن ذلك سيبسط علينا الأمور
ما هي البرمجة كائنية التوجه؟
ات الحاسب والذي يتجاوز العديد من المشاكل
وظائف التطبيق موجودة ضمن عدد من الوحدات البرمجية وفي الغالب لن يكون هناك سوى وحدة برمجية
واحدة أما في 001 فإن الوضع مختلف فباستخدام 001 يمكننا استخدام العديد من وحدات الك
بحيث تقدم وحدة وظائفها الخاصة وبحيث تكون هذه الوحدة مستقلة بصورة كاملة أو جزئية عن الوحدات
الأخرى يوفر لنا هذا النهج المعياري للبرمجة جوانب برمجية عديدة بالإضافة إلى توفير الفرصة لإعادة
استخدام الشيفرة في أكثر من تطبيق.
ولكي نصف ذلك بصورة أدق تخيل تطبيقا ما ذا أداء عال في جهازك كسيارة السباق إن تطبيقنا الذي
استخدمنا فيه تقنيات البرمجة التقليدية مشابه لسيارة السباق المكونة من وحدة واحدة فإذا أردنا أن نحسن
التطبيق فإن ذلك مشابه لمجرد شراء محرك جديد من المصنع وإتباع تعليمات استبدال المحرك القديم بهذا
الجديد
يكون سير التنفيذ في التطبيقات التقليدية عادة بسيطا وخطيا حيث يتم تعديل التطبيق إلى الذاكرة ومن ثم
بدء التنفيذ من النقطة «ر وإنهاء التنفيذ عند النقطة 13 ومن ثم إزالة التطبيق من الذاكرة وخلال هذا الطريق
هناك العديد من الأشياء المستخدمة مثل الملفات ووسائط التخزين أو إمكانية بطاقة العرض لكن الجسم
ِ ة سنجد العديد من عمليات معالجة البيانات وفقا
تستخدم أنواع بيانات بسيطة أيضا مثل
ة البيائات ومعانيها بالإضافة إلى التفاعل
بين البيانات والبيانات الأخرى يبدو ذلك أن استخدام تقنيات 001 يتطلب جهدا أكبر في تصميم التطبيقات
في الحقيقة إن هذا صحيح إلا أننا سنستفيد عندها من عدة مزايا كمجالات التوسع والتطوير المستقبلية
إعداد: المهندس حسام الدين الرز 12
فمتى استطعنا إنشاء نوع وأسلوب معين لاستخدامه في تطبيق ما فإن بإمكاننا استخدام نفس النوع
والأسلوب في أي تطبيق أخر.
يسمى هذا النوع في تقنية 001 بالكائن )0180 إذا ما هو الكائن؟
الكائن :0180 عبارة عن كتلة برمجية لتطبيق 00 تغطي هذه الكتلة جزء من التطبيق حيث يمكن
يمثل الكائن في أبسط صوره البنية 80024 التي سبق وتحدثنا عنها في الفصول السابقة والتي
أعضاء من متحولات وتوابع يمكن ان تمثل المتحولات الموجودة ضمن هذه البنية. البيائات التي يحتفظ
كائنا يمثل تخاطب التطبيق مع الطابعة وبالتالي يمكن لهذا الكائن أن يحتوي على توابع تتحكم بصورة
كاملة في الطابعة كطباعة مستند ما أو طباعة ورقة تجريبية...الخ.
يتم إنشاء الكائنات في 0# من الأنواع تماما كما نقوم بإنشاء المتحولات يطلق على نوع الكثن في 007
بالصنف (الفئة) 1088© يمكتنا أن نستخدم تعريفات الصنف لتهيئة الكائنات وهذا يعني إنشاء حالة
لاحظ ان تعبير كائن وحالة من الصنف يمثلان الشيء ذاته لكن لاحظ ان تعبير كائن وصنف هما شيئان
سوف نصور الأصناف والكائنات في هذا الفصل باستخدام صيغة (10111) 110061108 لفكت حتدنا
007 دون الخوض في تفاصيل أكثر تعقيدا .
لقد تم تصميم الأشكال في هذا الفصل بواسطة و1716 111705011
يمثل الشكل (1-1) تمثيلا بلغة ,11111 لصنف الطابعة وهو باسم :ع101::
إعداد: المهندس حسام الدين الرز -13-
الشكل (01-1)
نلاحظ أن اسم الصنف ظاهر في القسم العلوي من المخطط سنهتم بالأقسام السفلى لاحقا.
وتمثيل .1111 التالي يستعرض حالة للصنف 11016 حيث لهذه الحالة الاسم «عتصترطر:
الشكل (1-2)
نلاحظ هنا أن اسم الحالة ظاهر في القسم العلوي من المخطط متبوعا باسم الصنف حيث تم فصل كلا
الاسمين باستخدام الرمز ":".
إعداد: المهندس حسام الدين الرز 14
هذا الكتاب مصمّم ليأخذ بيد مبرمج مبتدئ يخطو أولى خطواته على الدرب، ولديه الهمة والحماس للإكمال إلى آخره.. لهذا فإن هذا الكتاب يبدأ فعليا وحرفيا من...
في هذا الكتاب, شرح لمقدمة رسم المنحنيات... بمعادلات رياضية بسيطة حاولت قدر الامكان شرحها بطريقة مبسطة... وقد وضعت بعض الصور في الكتاب... يمكن تطبيق...
مجموعة أكواد لبرامج جاهزة في لغة السي شارب C.
هذا كود صغيير لتحديد نص مشكل باستخدام نص غير مشكل بالاضافة الى كود لحذف التشكيل
كتاب تم تقديمه في منتديات فيجوال بيسك للعرب عبر عدة دروس في هذا القسم :