لغة برمجة C# هي لغة كائنية التوجه ( Object-oriented programming -OOP ) تجمع بين القوة البرمجية للغة C++ وبين سهولة وبساطة البرمجة بلغة Visual Basic ولن أبالغ إذا قلت أن هذه اللغة قامت بجمع مزايا لغات البرمجة السابقة مثل Delphi و Java وابتعدت عن مساوئ هذه اللغات و أخطائها .
بواسطة لغة C# ستتمكن من تصميم أعقد التطبيقات وبمجهود أقل بكثير من الذي يمكن أن تبذله باستخدام لغات برمجة أخرى . كما تضع شركة Microsoft جملة من الأهداف من أنشاء لغة برمجة .
أهداف لغة سي شارب C#
لغة بسيطة : جاءت C# لتقضي على التعقيدات والمشاكل الخاصة باللغات مثل Java و C++ فقامت بالغاء الماكرو والقوالب والتوارث المتعدد فهذه تسبب الالتباس لدى مطوري C++ وكذلك ظهور المشاكل . إذا كنت ممن يدرسون C# أول مرة فلا داعي لدراسة هذه الموضوعات .
لغة حديثة : أن معالجة الاستثناء وأنواع البيانات القابلة للتوسع وكذلك أمن الأوامر هي سمات تتصف بها اللغات الحديثة pointer مكون أساسي في لغتي C و C++ وهذا المكون من أكثر الأجزاء التي تسبب الالتباس لدى المبرمجين . وقد تم ألغاء العديد من التعقيدات والمشاكل التي يحدثها هذا المكون في C# . لا تقلق بشأن المكونات سوف يتم شرحها في دروس هذا الكتاب .
لغة برمجة كائنية التوجه : لكي تكون لغة البرمجة كائنية لابد لها من مفاهيم أساسية تتصف بها وهي الكبسلة capsulation والتوارث Inheritance وتعدد الأوجه Polymorphism تدعم لغة السي شارب كل هذه المفاهيم وسنتعرف على كل هذه المفاهيم في الدروس المتقدمة .
لغة قوية ومرنة : قلنا سابق الا حدود لهذه اللغة فقط أطلق العنان لخيالك فيمكننا استخدام لغة السي شارب في المشاريع الكبيرة ذات الأشكال المتعددة كالبرامج الرسومية وجداول البيانات وبرامج compilers للغات أ خرى .
لغة ذات كلمات قليلة : تستخدم لغة C# كلمات دليليه أو أساسية قليلة وهي الأساس التي تبنى عليه إجراءات اللغة . قد تعتقد أن اللغة ذات العديد من الكلمات الأساسية هي لغة قوية ولكن هذا غير صحيح فعندما تقوم بالبرمجة باستخدام لغة C# ستجد أنها لغة يمكن استخدامها في أداء أي مهمة .
لغة نمطية : الأوامر في C# تكتب على شكل Classes أي أصناف وتحتوي على أساليب العضو وهذه الأصناف يمكن إعادة استخدامها في برامج أخرى .
تصنيف الكتاب

مؤلف الكتاب
أ / أحمد القاسمي
صيغة الكتاب
لمن هذا الكتاب؟
- مبتدئ يريد تعلم لغة برمجة كائنية التوجه بشرح عربي.
- مطوّر يعرف C++ أو Java ويريد الانتقال إلى منصة .NET.
- طالب يريد بناء تطبيقات سطح مكتب أو ويب أو ألعاب بمحرك Unity الذي يعتمد على C#.
ما الذي تغيّر في C# و.NET؟
تطورت اللغة كثيرًا في السنوات الأخيرة. منصة .NET الحديثة أصبحت مفتوحة المصدر وتعمل على ويندوز ولينكس وماك، بدل .NET Framework الذي كان يعمل على ويندوز فقط. كما أن قالب تطبيقات الـ Console منذ .NET 6 يستخدم Top-level statements، فلن ترى الدالة Main والكلاس المحيط بها كما في الأمثلة القديمة، لكن الكود القديم ما زال يعمل.
المفاهيم التي يركز عليها وصف الكتاب، أي الكبسلة والوراثة وتعدد الأشكال ومعالجة الاستثناءات والأنواع، ما زالت أساس اللغة اليوم. ملاحظة: “الكبسلة” بالإنجليزية هي Encapsulation.
كيف تطبّق أثناء القراءة
- ثبّت Visual Studio Community المجاني، أو VS Code مع إضافة C# Dev Kit.
- أنشئ مشروع Console بالأمر
dotnet new consoleوطبّق أمثلة كل درس فيه. - عند الوصول إلى الكلاسات ابنِ مشروعًا صغيرًا لإدارة مكتبة: كلاس كتاب وكلاس عضو وعمليات إعارة وإرجاع.
- بعد إتقان الأساسيات انتقل إلى LINQ ثم إلى ASP.NET Core أو WinForms حسب هدفك.
أسئلة شائعة
ما الفرق بين C# و.NET؟
C# هي لغة البرمجة، أما .NET فهي المنصة التي تشغّل الكود وتوفر المكتبات الجاهزة.
هل C# مناسبة كلغة أولى؟
نعم، قواعدها واضحة وأدواتها المجانية قوية، وتفتح مجالات متعددة من سطح المكتب إلى الويب والألعاب.
هل أتعلم WinForms أم ASP.NET Core بعد الأساسيات؟
يعتمد على هدفك: WinForms أو WPF لتطبيقات سطح المكتب على ويندوز، وASP.NET Core لتطبيقات الويب والـ APIs، وهو الأكثر طلبًا في سوق العمل حاليًا لأنه يعمل على كل الأنظمة.
اقرأ أيضاً
- كتاب البرمجة بلغة سي شارب #C من البداية حتي الإحتراف بالعربي
- كتاب سبيلك إلى تعلم سي شارب #C بالعربي
- كتاب الإبحار في لغة سي شارب C# باللغة العربية PDF
- كتاب دورة كن خبيراً في لغة سي شارب C# باللغة العربية PDF

