الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كتابي الكامل في السي شارب

مغلق
بدأه omssd84 في 4 أبريل 2005 · 28 رد · 3,969 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لقد قمت ولله الحمد بإنهاء قسم من كتابي ( الكامل في السي شارب )

وأنهيت مرحلة الـ Console وسأقوم بعرضها جميعاً قريباً إن شاء الله

( أنا عارف زي بعض الشباب بيحطو درس وبيحكوا قريباً وما بيرجعوا ) لا أنا مش من هذا النوع

الدروس تقريباً 15 درس وهي حوالي 70 صفحة

وتتكلم من بداية فتح الشاشة الرئيسية للدوت نيت إنتقالاً إلا تطبيقات الكونسول

والهيكلة بواسطتها والأنواع والمصفوفات وإنتهاءاً بالإندكسر والديليجيت والإيفينت

إنتظرونا ... تجدوا ما يسركم :D

#2

مشكوووووووووووووور يا الغالي

في انتظار ردك القادم حاملا معه كتابك

الذي انتظره

ويعطيك الف عااافية

52gv0m.gif
#3

مشكور على جهودك المتميز دائما

ونحن في انتظار كتابك

#4

أهنأك يا أخي omssd84 على هذا الانجاز , والحقيقه ان انا فكرت في عمل كتاب أيضا للسي شارب ولكن قمت بتأجيل الفكره حتى يتحسن مستواى.

اللهم لا تحرمه أجر هذا الكتاب.

#Read

http://MoutazShams.blogspot.com

projects003.gif

أعتذر عن التغيب هذه الأيام نظرا للانشغال المريب

#5

وهذا هو الدرس الأول :

المحاضرة الأولى : ( ساعة ونصف )

تاريخ الـ . NET منذ بداية صناعة الحاسوب :

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

- IBM كانت من الشركات الرائدة والسباقة في هذا المجال بحيث كانت تصمم جهاز حاسب آلي و تضع فيه نظام تشغيل صغير Operating System ( O.S ) والتي أدت فيما بعد إلى تطور مصطلح نظام التشغيل O.S والحاجة إلى تطويره .

- ومعنى نظام التشغيل : هو النظام الذي يستخدم أجهزة الهاردوير الموجودة لدى الحاسوب .

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

- عندما نظرت شركة IBM إلى النظام الذي صُمم بواسطة هذين الطالبين تبنت نظامهما بالكامل وعملت على تشجيعهما والذي أدى إلى أن تركا الدراسة وفتحا شراكة مع شركة IBM .

- كان النظام يدعى DOS – 8 Bit وكلمة DOS جاءت من الجملة المختصرة Disk Operating System ومعناها قرص نظام التشغيل . أما القسم الثاني من النظام فهو كناية ودلالة على عدد الخانات المستعملة لكل جملة Instructor وهي أوامر النظام ونلاحظ هنا أن عددها 8 أي أننا عندما نضغط على لوحة المفاتيح من خلال النظام فإن الحاسوب يقوم بفهمها على أساس 8 أرقام ثنائية ( 1 , 0 ) . وكما نعرف فإن الحاسوب لا يمكنه التعامل مع الحروف وإنما بواسطة الأرقام الثنائية Binary فمثلاً لإدخال حرف A فإن الحاسوب يفهمها ( ******** ) والنجمة معناها إما 1 أو 0 .

- من خلال هذا النظام ظهرت لغة الأسمبلي الشهيرة والمعقدة ومعناها لغة التجميع .

- بواسطة لغة الأسمبلي كان العمل صعباً وكانت الجمل طويلة وعدد سطورها طويلة حيث أن المبرمج كان يتعامل مع الذاكرة مباشرة من خلال وضع وجمع وحذف .. إلخ قيمتين مخزنتين في الذاكرة ، لذلك فقد كان يتوجب على المبرمج مثلاً لطباعة كلمة أن يكتب 5 أو 6 سطور لتنفيذ ذلك . و نتيجة لذلك كان لابد من إيجاء طريقة جديدة لتوفير الوقت والتقليل من حجم البرنامج فقاموا بإبتكار طريقة جديدة وهي طريقة الدوال Function حيث قاموا بوضع أكثر من Instruction بدالة واحدة فقط ومن هنا نشأ مفهوم المكتبات التي تضم أكثر من دالة وتطورت البرمجة فعرفت بإسم Structured Programming ومعناها البرمجة التركيبية . نتيجة لذلك طُورت عدة لغات مثل COBOL ولغة C الشهيرة و FORTRON .

- بعدد تلك اللغات وبسبب الحاجة إلى إضافة كلمات فقد تم إضافة وتوسعة النظام لكي يصبح DOS – 16 Bit .

- كانت شركة أبيل ماكنتوش قد عملت على تطوير نظام عجيب وكان فريد من نوعه فقد كان يستخدم الصور للدلالة على الأعمال فظهر شكل الملف وشكل المجلد ... إلخ وذلك بدل الشاشة السوداء التي كانت معروفة في ذلك الوقت والمسماة Console وبذلك النظام تم معرفة الـ Interface ومعناها الواجهة والتي كانت User-Friendly حيث كان التفاعل مع المستخدم تفاعلاً مباشراً من خلال الرسومات .

- أخذت شركة SUN الفكرة من نظام ماكنتوش والتي كانت تمتلك النظام المفتوح Open Source المسمى يونيكس نسبة إلى صانعه وقامت بتشكيل نظام جديد عُرف بإسم لينكس .

- ظهرت في هذه اللحظة التسابق لإنتاج نظام تشغيل كامل من واسطة كبريات الشركات مثل Microsoft وشركة Sun وشركة Apple Macintosh و باقي الشركات الكبرى .

- وأيضاً في هذه الأثناء وبينما كان هناك تقدم وتطور من قِبل شركات Sun وشركة Apple Macintosh كانت شركة Microsoft تعيش ركود نسبي لأنها كانت تعتمد نظام الـ Console في تلك الأثناء .

- شعرت شركة مايكروسوفت بعجزها وبتنحيها عن السوق فقامت بطرح تطبيق Application وليس نظام تشغيل يعتمد الواجهة الرسومية والذي عرف بنظام Windows 3.X .

- ظهرت الحاجة لتوحيد نظام البرمجة لدى المبرمجين لكي يكون الكود ديناميكي وسلس وله قواعد وشروط ولكي لا يخرج كل مصمم بأفكار بعيدة عن الهدف المقصود فظهر مفهوم الـ Object Oriented Programming والمعروف بالرمز ( OOP ) وأدت إلى ظهور العديد من اللغات ومن الأمثلة عليها C++ , Small Talk , … .

- بواسطة البرمجة الموجهة بالأهداف أنتجت شركة مايكروسوفت شبه نظام وسموه Windows 95 وسبب أنه كان شبه نظام أنه كان يعتمد على نظام الـ DOS في أداءه وعمله .

- وظهرت الحاجة إلى إخراج جيل من البرمجيات المتكاملة من خلال شركة مايكروسوفت والتي سميت فيما بعد بـ Microsoft Office .

- وبعد سنتين تقريباً طرحت شركة مايكروسوفت نظام تشغيل وسمته Windows 97 ولكنه فشل فشلاً سريعاً فقد طرح وخلال شهرين فقط تم سحبه من الأسواق لرداءته .

- ولكنها سرعان ما قدمت أول نظام تشغيل مستقل بواجهة رسومية والذي عرف بإسم Windows 98 ومن هنا ظهرت الحاجة لإنشاء برمجيات متكاملة على طريقة الـ Enterprise التي تعني وجود جميع الحلول في مجموعة واحدة .

- قامت شركة مايكروسوفت بالتفكير بفكرة ذكية لجذب ولإجبار جميع العملاء على بإستخدام نظامها التشغيلي فقد قامت بطرح معالج لبعض اللغات مثل لغة الـ C ولغة الـ BASIC ولإجبار المبرمجين على إستخدامه فقد قامت بالتسهيل على المبرمجين وبالمجان فقدمت API المستخدمة من قِبل النظام والمختصرة من جملة Application Program Interface والتي تعني واجهة البرامج التطبيقية . فسهلت على المبرمج فمثلاً إذا أراد المبرمج كتابة كود لإظهار نافذة فقط فإنه سيبقي وقت طويل جداً وسيكتب كود طويل جداً ، فقامت مايكروسوفت بطرح المكتبات لهذه الغاية بحيث ينتج نافذة كما في نظام التشغيل بوقت وكلفة قليلين جداً . وبذلك جذبت العديد من المبرمجين ومن العملاء إليها بواسطة هذه الخطة . وبالطبع فإن البرنامج الناتج من هذه العملية لن يشتغل سوى على نظام التشغيل Windows .

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

- في هذه الأثناء قامت شركة SUN بطرح لغة جديدة من إنتاجها والتي عرفت بإسم جافا JAVA لملاحقة شركة مايكروسوفت وبذلك تكون هذه الشركة قد قطعت شوطاً كبيراً بهذا المجال حيث قامت بتجزيء هذه اللغة إلى ثلاثة أقسام وهي : J2SE , J2EE , J2ME .

- ظهرت مكتبتان هنا من إنتاج الشركتان وهما :

SDK : من شركة مايكروسوفت وهي إختصار لجملة Software Developer Kit .

JDK : من شركة SUN وهي إختصار لجملة JAVA Developer Kit .

- لكن يوجد جانب لم تعيهما تلك الشركتان وهو قواعد البيانات Database والتي أصبحت حالياً الجانب المهم والأكبر في إستخدام الحاسب الآلي فقد كانت شركة Oracle الرائدة في هذا المجال والسباقة إليه . وظهرت شركات أخرى مثل شركة Fox Pro التي أيضاً كانت من الشركات الكبيرة في هذا المجال .

- تنبهت شركة مايكروسوفت باكراً إلى خطورة هذا الجانب فإشترت ملكية شركة Fox Pro وضمتها إلى أملاكها وقامت لاحقاً بإنشاء المكتبة الخاصة للـ Database التي عرفت بإسم SQL .

- و بإستخدام قواعد البيانات أنتجت شركة مايكروسوفت لغات جديدة مثل Visual C++ , Visual Basic , Visual Fox Pro وضمتها إلى قائمتها البرمجية .

- و بإستخدام تكنولوجيا الإنترنت فقد قامت شركة مايكروسوفت بطرح لغة خاصة لمعالجة صفحات الإنترنت والي سُميت فيما بعد بالإسم InterDev وهي عبارة عن صفحات إنترنت نشطة ذات الإمتداد المعروف ASP .

- كانت شركة SUN تعمل على تحديث وتطوير لغتها ( JAVA ) أول بأول من حيث قواعد البيانات و التعامل مع الإنترنت .

- وطبعاً جاءت هنا فكرة الـ Script والتي تعني جزء من كود لغات الإنترنت في صفحة HTML .

- بسبب الطمع والجشع الذي كان عند شركة مايكروسوفت فقد قامت بالخطوة القاتلة وهي أنها أنشأت لغة جديدة وسمتها بإسم Visual J++ , ولكنها لم تسلم بتلك الفعلة فقد قامت شركة SUN برفع دعوة قضائية على شركة مايكروسوفت ولأنها صاحبة اللغة فقد خسرت شركة مايكروسوفت تلك القضية وتم تغريمها مبالغ طائلة وصلت إلى 3 مليار دولار أمريكي ومُنعت من إستعمالها والتطوير عليها لذلك السبب .

- يمكن تلخيص الإصدارات للغات البرمجة في تلك الفترة لشركة مايكروسوفت بالجدول التالي تجدونه في المرفق )

- ظهرت مشاكل عديدة في لغات شركة مايكروسوفت فمثلاً وجود أوامر في لغة السي ++ وعدم وجودها في الفيجوال بيسك وكذلك فقد كان من الصعب تشغيل برنامج على الفيجوال بينما هو مكتوب بلغة السي ++ , في هذه الأثناء كانت شركة SUN تسير على الطريق الصحيح وتعمل على تطوير لغتها أولاً بأول . ومن المشاكل الأخرى لمايكروسوفت أن مبرمج اللغة الواحدة لا يستطيع أن يتعامل أكثر من نسخة من برامج قواعد البيانات فمثلاً كل مبرمج واحد يستطيع التعامل مع لغة واحدة لا يسعة إستعمال غير مكتبة واحدة فقط من المكتبات التالية DAO , ADO , ODBC ... الخ ، وكل مكتبة متخصصة بلغة واحدة لا يستطيع المبرمج إستعمالها في لغة أخرى وفي هذا تقسيم المبرمجين إلى أقسام عديدة وكل مبرمج له مجال يختلف عن مجال زميله في المهنة ، بينما كانت شركة SUN تمشي بدون أي مشاكل فهناك لغة واحدة فقط وهي الجافا وهناك مكتبة واحدة وموحدة فقط لقواعد البيانات وهي JDBC .

- نظرت شركة مايكروسوفت بنظرة عميقة للموضوع وأسفر عن ذلك خطة جديدة مع عام 2000 وهي إخراج لغات موحدة لها نفس مكتبات التشغيل ولها إطار واحد فقط Frame Ware وأدت إلى ظهور لغات جديدة عرفت بمجموعة الدوت نيت . NET فقدمت لغات جديدة مثل VC# وضمتها في مجموعة Visual Studio 7 . NET وضمت :

1 – Visual C # ( 2000 )

2 – Visual C ++ ( 2002 )

3 – Visual Basic (2002)

4 – Visual J# ( 2003 )

في هذه النسخة قاموا بضم لغة الـ J# ولعلك تتساءل كيف ذلك ؟؟ والمحاكمة ؟؟

هنا قامت شركة مايكروسوفت بتصميم تلك اللغة من الصفر وقاموا بتطويرها لتحاكي لغة الجافا

كل اللغات السابقة كانت قادرة وبكفاءة التعامل مع الـ XML , ADO وبإستطاعة المبرمج تصميم وصناعة البرامج في المجالات التالية :

Windows Application , Web Application , Mobile Application , Smart Device …

كان هذا في النسخة لعام 2000 الماضي

وفي نسخة عام 2003 قاموا بإنشاء Compiler مترجم لكل لغة وهو موحد ويستدعي مكتبة واحدة كما في الشكل التالي : كما في المرفق

C#.zip

#6

مشكوووووووووووووووووور

ويعطيك الف عااافية

وجاري القراءه

وتحياتي لالك

52gv0m.gif
#7

بارك الله فيك أخي

من أتيت بكل هذه المعلومات؟

أرجو أن تستمر في طرح الدروس

#8

هناك بعض الاخطاء مثل

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

بيل جيتس لم يكمل الجامعة اساسا لانه اسس شركة Microsoft و هو لم يتجاوز ال 20 من عمره كما ان زميله Paul Alan لم يكن هندي الاصل

الخطأ الثاني

اقتباس
كانت شركة SUN تعمل على تحديث وتطوير لغتها ( JAVA ) أول بأول من حيث قواعد البيانات و التعامل مع الإنترنت .

- وطبعاً جاءت هنا فكرة الـ Script والتي تعني جزء من كود لغات الإنترنت في صفحة HTML

لم تطور Sun ال Javascript با من طورها من الاساس هي Netscape مما جعل Netscape ترفع دعوى قضائية على Microsoft عندما قامت بتطوير ال Microsoft JScript, Microsoft VbScript و جعلت الIE يدعمهم من دون Netscape JavaScript.

الخطا الثالث

اقتباس
بواسطة البرمجة الموجهة بالأهداف أنتجت شركة مايكروسوفت شبه نظام وسموه Windows 95 وسبب أنه كان شبه نظام أنه كان يعتمد على نظام الـ DOS في أداءه وعمله .

حتى هذه اللحظة Windows XP غير مبني بالكامل على OOP في الكثير من الاجزاء و الدليل على هذا هو ال APIs و التي هي عبارة عن Global Functions و التي لا توجد لها Class اما النظام الاول الذي سيكون Object Oriented هو LongHorn و الذي سيصدر بشكل نهائي عام 2006 و هذا لنه يعتمد في البنية الاساسية على .net framework

اقتباس
كذلك فقد كان من الصعب تشغيل برنامج على الفيجوال بينما هو مكتوب بلغة السي ++

هذه الجملة خطأ جدا لانها غير مفهومة

ببساطة يستحيل تشغيل C++ Code على VB لان اللغتين مختلفتين في ال Syntax و كل منهم له Compiler مختلف كما ان ال VB هو Interpreted Language اما ال Cpp فهي Compiled Language

الخطا الرابع

اقتباس
- كان النظام يدعى DOS – 8 Bit وكلمة DOS جاءت من الجملة المختصرة Disk Operating System ومعناها قرص نظام التشغيل . أما القسم الثاني من النظام فهو كناية ودلالة على عدد الخانات المستعملة لكل جملة Instructor وهي أوامر النظام ونلاحظ هنا أن عددها 8 أي أننا عندما نضغط على لوحة المفاتيح من خلال النظام فإن الحاسوب يقوم بفهمها على أساس 8 أرقام ثنائية ( 1 , 0 ) . وكما نعرف فإن الحاسوب لا يمكنه التعامل مع الحروف وإنما بواسطة الأرقام الثنائية Binary فمثلاً لإدخال حرف A فإن الحاسوب يفهمها ( ******** ) والنجمة معناها إما 1 أو 0 .

- من خلال هذا النظام ظهرت لغة الأسمبلي الشهيرة والمعقدة ومعناها لغة التجميع .

لغة ال Assembly ظهرت منذ الستينات اي من قبل ان يولد بيل جيتس كما ان لكل Processor ال Assembly الخاص به

بمعنى ان Intelx86 Processors لها Assembly مختلف عن Motorola Processors.

و لا يوجد اي ارتباط بين ال Assembly و ال DOS

الخطأ الخامس

اقتباس
المفاتيح من خلال النظام فإن الحاسوب يقوم بفهمها على أساس 8 أرقام ثنائية ( 1 , 0 )

الاساس 8 ليس معناه ان الجهاز لا يفهم سوى الصفر و الواحد. حتى لو اصبح الجهاز من الاساس 128 فلن يفهم سواهما

معنى الاساس 8 ان ال Registers داخل الProcessesors عرضها 8 بت

الخطأ السادس

اقتباس
لا يسعة إستعمال غير مكتبة واحدة فقط من المكتبات التالية DAO , ADO , ODBC ... الخ ، وكل مكتبة متخصصة بلغة واحدة لا يستطيع المبرمج إستعمالها في لغة أخرى وفي هذا تقسيم المبرمجين إلى أقسام عديدة وكل مبرمج له مجال يختلف عن مجال زميله في المهنة ، بينما كانت شركة SUN تمشي بدون أي مشاكل فهناك لغة واحدة فقط وهي الجافا وهناك مكتبة واحدة وموحدة فقط لقواعد البيانات وهي JDBC .

ال ADO, DAO, ODBC غير مخصص للغة واحدة فكل اللغات يمكنها التعامل مع ADO, DAO, ODBC فيمكنك استخدام VB, C++, ASP, ببساطة

كما ان ال ODBC ليس Library و انما هو طريقة موحدة لاستخدام ال Database بغض النظر عن منتج هذه الDatabase كما انه اصبح Standard اي جميع قواعد البيانات تدعمه و ايضا جميع اللغات

ارجو تصحيح الاخطاء مع وضع Refrence لكل واقعة.

شكرا

و اخيرا اقترح تسمية الكتاب "المفتي في اي شيئ"

تم تعديل هذه المشاركة بواسطة bashmohandes في 15 يناير 2007 في 11:58

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#9

هذه بعض الاخطاء الاخرى في كتــاب المفتي في ال C#.net

اقتباس
CLR

CLR ليس لختصار ل "Common Library Trace" و انما هو اختصـار ل "Common Language Runtime"

كما ان الMSIL لا يتحول الى Machine Code الا عند التشغيل فقط عن طريق ال JIT (Just In Time Compiler) و لا يمكن تحويل ال MSIL الى ActiveX ابدا او بمعنى اخر لا يمكن ان تبني ActiveX باستخدام ال .net

من الافضل ان تعيد التفكير في كتابة هذا الكتاب حيث ان عدد الاخطاء في الباب الاول يدل على مستوى المادة العليمة بالكتاب .

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#10

السلام عليكم...

الحقيقة الأخطاء أكثر مما ذكره أخي محمد حسام، لدرجة أنها استفزتني .. أرجو إذا كان كلامي حادا أكثر من اللازم أن يقوم صديقي محمد عبد العليم بتعديل الرد، لأن الموقف فعلا غريب! :(

1- لم تكن IBM هي أول من طور نظم التشغيل، بل كانت أحد مطوري نسخ UNIX و قامت بتطوير نسختها الخاصة.

2- الكلام المعتم حول "إحدي" الجامعات الأمريكية و ما شايه قام بالرد عليه أخي محمد.

3-كانت IBM هي التي تكلمت مع بيل جيتس و بول آلان بصدد مشروع الـ PC الذي كان جديدا في ذلك الوقت و كان يسمى Chess أي الشطرنج حيث اعتبروه بمثابة لعبة في البداية، و عليه قامت شركة Microsoft.

4- فكرة عدد الـ Bits لكل نظام تشغيلي ليست مسألة OS في الأساس (سواء DOS أو غيره), و إنما هي مسألة Processor و Memory Addresses .. ربما عليك أن تفكر في قراءة القليل عن Logic Design, Data Structurs and Computer Organization & Architecture

5- الـ Assembly لغة خاصة بالمعالج، و يمكن التطوير لها دون حتى وجود OS و لذا لابد من كتابة جزء من نظام التشغيل بها على الأقل و ليست هي التي تستلزم نظام معين أو شئ حسب المكتوب. معالجات x86 لها الـ Assembly الخاصة بها، و هذه لغة اعتمادها على المعالج و ليس الـ OS .. لكن طبعا بعد الـ Compilaton يجب ـن تخرج نسخة من البرنامج تعمل تحت نظام تشغيل معين.. لذا كان الـ Compiler الذي قدمته Microsoft و هو masm (راجع مقالات قسم الـ Assembly بهذا المنتدى)

6- ما أعرفه أن لغة C ظهرت من أيام UNIX قبل DOS، أظن حتى أن أجزاء من الـ DOS كتبت بها.

7-المعروف أن Mac متميز فعلا في الـ Interface نظرا لأن الشركة التي تكتب الـ OS هي نفسها التي تصنع الـ Hardware Components ، لكن من المعروف أيضا أنها ليست من ابتدع هذه الفكرة لأن من ابتكرها هو نظام تشغيل آخر (أظن اسمه Xerox أو شئ)

8-مصيبة كبرى هاهنا: Unix نظام مفتوح ؟!!!!! و Sun هي التي طورت Linux ؟ و الله أفهموني أنه من النادر أن تجد نسخة مفتوحة من Unix ، و أن Sun Solaries نفسه هو أحد نسخ Unix المغلقة، أما Linux فقد قام بتطويره شخص منفرد هو Linus Torvalds اعتمادا على نسخة مفتوحة و كانت صغيرة و محدودة جدا اسمها Minux، ثم اشترك في التطوير العديني معه بسبب فكرة الكود المفتوح

9-لم تكن نسخة Windows 3.x (أظنك تقصد 3.11) هي أول نسخ الـ Windows و إنما آخر تحديث لنسخه التي تعمل كبرنامج آخر و لا تحاول أن تبدو كنظام تشغيل منفصل (آخر نسخة منه قبل نسخه 95)

10-مصيبة مزدوجة: مفهوم الـ OOP موجود حتى من قبل ++C. كل ما في الأمر أنها أشهر اللغات التي تعتمده لأنها وجدت أصلا كي تضيف دعمه إلى لغة الـ C القديمة. الجدير بالذكر هاهنا أنها لم توجد مع ظهور Windows 95 بل كتطوير لـ C كما ذكرت بعيدا عن Microsoft. طبعا لابد أنك تعرف أشهر Compiler لـ ++C تحت DOS و هو ++Turbo C الذي صار فيما بعد يسمى باسم الشركة التي أنتجته أي ++Borland C.

11- Windows3.11 نفسه كان فيه بعض الأجزاء بـ ++C. لكن الغالبية كما أشار أخي محمد C. ليس Windows 95 أول من يستخدم ++C و لكنه لم يكن مبينا عليها بشكل أساسي كما أشار محمد أيضا، بل أول نظام مبني على OOP Language في معظمه هو Longhorn

12- برامج Office معروفة و مستخدمة من قبل windows 95. هل رأيت و لو صورة لـ Word 4 مثلا و هو يعمل على windows3.11 ؟

13- فكرة الـ Enterprise Applications ليست من أيام windows 98 بل الناس تفكر فيها من بدايات الـ UNIX .. و قد كانت هناك بعضها على نظام Microsoft من أيام نظام Microsoft Windows for Workgroups و لكن طيعا كان تطويرها مليئا بالمشكال العديدة التي انتهى معظمها الآن.

14-الـ Basic موجود من أيام الـ DOS. هل سمعت عن QBASIC أو GWBasic من قبل ؟ VB نفسه موجود من قبل Windows 95. ألم ترى كتاب يدرس الحاسب لطلبة الثانوية العامة قدديما و هو يبين نسخة VB تعمل على Windows 3.11 ؟

15-هناك اختلاف كبير بين SDK, JDK لا أستططيع أن أخوض فيه خاصة هنا. مجمل القول أنه تقريبا أي برنامج تنزله Microsoft له SDK خاصة به حتى Windows. أما JDK فهي مقتصرة على لغة الـ java فقط.

16-هذه الكارثة أكبر من غيرها: نظم قواعد البيانات قديمة جدا، و ليست Microsoft من أنشأها. هل رأيت من قبل نسخة Dbase تعمل على DOS أو سمعت عنه ؟ هل سمعت عن قواعد بيانات DB2 من IBM ؟ المصيبة الملحقة أنك لا تعرف أن SQL هو Standard عالمي من الثمانينات و تم تحديثه في التسعينيات. طبعا كل شركة لديها Database Engine تقوم بتطويع هذا الـ Standard إضافة و حذفا ليلائم عملها. الجدير بالذكر أن Microsoft لم تبن SQL Server من الصفر بل قامت نشراء نظام آخر هو إذا لم تخني الذاكرة SyBase

17-"و بإستخدام قواعد البيانات أنتجت شركة مايكروسوفت لغات جديدة مثل Visual C++ , Visual Basic , Visual Fox Pro وضمتها إلى قائمتها البرمجية . " <<- طبعا هذه الجملة خاطئة وفقا للتصحيحات السابقة، لكن مادا تقصد بـ "بإستخدام قواعد البيانات " أصلا ؟ كيف انتجتها باستخدام قواعد البيانات ؟ لعلك تقصد أنها جعلت فيها دعما مبيتا لقواعد البينات، لكن معنى الجملة يشير إلى أنها استخدم قواعد البيانات لتبني هذه اللغات نفسها !!!!!

18- على حد علمي Interdev أو Visual Interdev هو برنامج يستخدم لعمل المواقع بتقنية ASP التي تعتمد لغة VB Script في الكتابة، و هو بالمناسبة لم يلق قبولا كبيرا بين الناس الذي فضلوا العديد من المحررات الأخرى و حتى Notepad عليه. أما أن يكون Interdev نفسه لغة فهذا خطأ إلى أن يثبت العكس.

19-طبعا مسألة java و JavaScript أوفى فيها الأخ الكريم محمد.

20- على حد علمي ++VJ تم بناءه على عقد بين Microsoft و Sun. أما القضية التي رفعت فلها سببين: استمرار Microsoft في استخدام الـ VM التي قامت بصنعها حتى بعد فسخ أو انتهاء العقد بينها و بين sun، و كذلك بسبب وضع limitations في ++VJ ضمن تغييرات عديدة أخلت بالعقد بين Microsoft و Sun التي اعتبرت هذا تم لأغراض احتكارية.

21- بالنسبة لمشكلة اللغة و قواعد البينات كانت الفكرة في مشاكل يصعب شرحها تتعلق بالاتصال بواسطة ODBC حيث يتطلب الاتصال بأي قاعدة بيانات أن يكون لمحرك هذه القاعدة ODBC Driver على الجهاز (و مشاكل أخرى طبعا)، و قد حل ADO هذه المشاكل بشكل جزئي و ليس جذري، و بالتالي جملة أن لكل لغة قاعدة بيانات لا تعمل إلا عليها تحتاج للتعديل لتصبح أن لكل لغة قاعدة بيانات تعمل عليها يشكل أفضل و أسهل من غيرها.

22- كلمة Frameware أظن أنها ليست مجرد خطأ في كتابة framework، بل إنها يمكن أن تفهم بمعان أحرى لا تتعلق بالـ Framework نفسه.

23- أخيرا الـ Compiler سواء في 2003 أو حتى 2005 القادم ليس موحد أبدا و لا يمكن أن يكون، كل ما هنالك أن الـ IDE أو بيئة التطوير (التي تستخدم الـ Compiler داخليا) هي الموحدة. و كذلك اللغة النهائية التي تنتجها كل الـ compilers هي لغة موحدة MSIL. لكن الـ Compiler الذي يحول كود VB.NET مثلا إلى MSIL ليس هو أبدا نفس الـ Compiler الذي يحول كود #C إلى MSIL برغم أنهما في النهاية ينتجان نفس اللغة MSIL.

أخيرا أرجو تقبل هذها الملاحظات بصر رحب على اعتبار أنه تم وضعها فقط كي لا يستقي أي مبتدئ قارئ للموضوع المعلومات بطريقة خاطئة. كذلك صديقي omssd84 أرجو ألا تتضايق مني إذا طلبت منك الاطلاع على الكتب العربية المطبوعة في #C قبل البدء في كتابك الخاص (اكامل كما أسميته)، لن يضايقني أن أنتظر لمدة عام أو أكثر ثم أقرأ كتابا رائعا أكثر من ضيقي و أنا أجد 23 خطأ في بداية الكتاب وحدها (المحاضرة كما أسميتها، لا أدري هل هذا تأثرا بمرحلة دراسية ما أم ماذا). ربما أيضا تفكر في عدم وجود داع لكثير من الأجزاء التي تناولتها في هذا الجزء و لك الحرية في تقييم هذه النقطة بالذات. فقط أنصحك بأن تستزيد أكثر و تقرأ أكثر حتى تأتينا بتحفة نفتخر بها جميعا. ربما حتى تنتهزها فرصة لتتقن C# 2.0 و تكتب عنها مباشرة مع صدور VC#.NET2005 في نسخته النهائية و تحقق سبقا عظيما. أليس كذلك ؟ :)

أرجو ألا تتضايق مني أو أي أحد آخر فهذا بالتأكيد ليس هدفي إطلاقا.

تحياتي و احترامي للجميع. السلام عليكم.

,Regards

Mohamed Ahmed Meligy

Senior Software Engineer

SilverKey Tech - Egypt Branch

Computer Engineering Student

High Institute of Engineering, Culture and Science City

E-mail: Eng.Meligy@Gmail.com

Weblog: http://GeeksWithBlogs.NET/Mohamed

Mobile: +20 10 603 3013

#11

انا اتفق كليا مع Mohamed Ahmed Meligy و لقد قمت بذكر بعض الاخطاء زي ما تقول كده على السريع و لكن الاخطاء اكبر بكثير مما ذكرنا و هذا للحفاظ على مصداقية المعلومة داخل المنتدى و شكرا

تم تعديل هذه المشاركة بواسطة bashmohandes في 15 يناير 2007 في 12:03

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#12

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

امال احنا هنا ليه مش علي شان نغلط ونصحح لبعض ونستفيد وغيرنا يسفيد

الرجل حب يعمل حاجة مفيد يعني حب يساعد

معلش غلطة نساعده علي قدر ما نقدر

ثم انت يااستاذ omssd84

مستعجل علي ايه متقرش كتير ليه

اصبر ما تستعجلش وحده وحده

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

والجماعة ميصيحوش في وشك :lol: :lol: :lol:

المهم خلي بالك

لاتحسبن المجد تمرا انت اكلهوا.... لن تبلغ المجد حتى تلعق الصبرا

ومن يتهيب صعود الجبال ...:::... يعش أبد الدهر بين الحفر

"وَيَا قَوْمِ اسْتَغْفِرُوا رَبَّكُمْ ثُمَّ تُوبُوا إِلَيْهِ يُرْسِلِ السَّمَاءَ عَلَيْكُمْ مِدْرَارًا وَيَزِدْكُمْ قُوَّةً إِلَى قُوَّتِكُمْ وَلَا تَتَوَلَّوْا". (أيه 52 سورة هود)

أَمَرَ بِالِاسْتِغْفَارِ الَّذِي فِيهِ تَكْفِير الذُّنُوب السَّالِفَة وَبِالتَّوْبَةِ عَمَّا يَسْتَقْبِلُونَ وَمَنْ اِتَّصَفَ بِهَذِهِ الصِّفَة يَسَّرَ اللَّه عَلَيْهِ رِزْقه وَسَهَّلَ عَلَيْهِ أَمْره وَحَفِظَ شَأْنه وَلِهَذَا قَالَ " يُرْسِل السَّمَاء عَلَيْكُمْ مِدْرَارًا "

وَفِي الْحَدِيث" مَنْ لَزِمَ الِاسْتِغْفَار جَعَلَ اللَّه لَهُ مِنْ كُلّ هَمّ فَرَجًا وَمِنْ كُلّ ضِيق مَخْرَجًا وَرَزَقَهُ مِنْ حَيْثُ لَا يَحْتَسِب ".

(تفسير ابن كثير)

#13

علي يا bashmohandes

ثم ان msil تعني (micrsoft Intermediate Language ) ويتم تحويل اي تطبيق منشأ بواسطة اي لفه من لغات الدوت نت

قبل ترجمتها compilor الي لفة الاله

وممن تتأكد بنفسك

/index.php?showtopic=46878

ومعلش ياسيدي جلال من لا يسهوا

وانت يا omssd84 ايك ان تحزن وتذكر دائما ان طريق الالف ميل يبدي بخطوه فتقدم واخطأ ونحو هنا للنساعدك وبلا استفزز يااستاذ

mohamed

لاتحسبن المجد تمرا انت اكلهوا.... لن تبلغ المجد حتى تلعق الصبرا

ومن يتهيب صعود الجبال ...:::... يعش أبد الدهر بين الحفر

"وَيَا قَوْمِ اسْتَغْفِرُوا رَبَّكُمْ ثُمَّ تُوبُوا إِلَيْهِ يُرْسِلِ السَّمَاءَ عَلَيْكُمْ مِدْرَارًا وَيَزِدْكُمْ قُوَّةً إِلَى قُوَّتِكُمْ وَلَا تَتَوَلَّوْا". (أيه 52 سورة هود)

أَمَرَ بِالِاسْتِغْفَارِ الَّذِي فِيهِ تَكْفِير الذُّنُوب السَّالِفَة وَبِالتَّوْبَةِ عَمَّا يَسْتَقْبِلُونَ وَمَنْ اِتَّصَفَ بِهَذِهِ الصِّفَة يَسَّرَ اللَّه عَلَيْهِ رِزْقه وَسَهَّلَ عَلَيْهِ أَمْره وَحَفِظَ شَأْنه وَلِهَذَا قَالَ " يُرْسِل السَّمَاء عَلَيْكُمْ مِدْرَارًا "

وَفِي الْحَدِيث" مَنْ لَزِمَ الِاسْتِغْفَار جَعَلَ اللَّه لَهُ مِنْ كُلّ هَمّ فَرَجًا وَمِنْ كُلّ ضِيق مَخْرَجًا وَرَزَقَهُ مِنْ حَيْثُ لَا يَحْتَسِب ".

(تفسير ابن كثير)

#14

ما انا قلت كده ياعم انت حتغلطني انا كمان

اقتباس
كما ان الMSIL لا يتحول الى Machine Code الا عند التشغيل فقط عن طريق ال JIT (Just In Time Compiler) و لا يمكن تحويل ال MSIL الى ActiveX ابدا او بمعنى اخر لا يمكن ان تبني ActiveX باستخدام ال .net

انا كل اللي قلته زيادة انه ماينفعش اساسا تعمل ActiveX بال .net وده طبعا حقيقي

ابقى خلي بالك قبل ماترد

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#15

الغريب ان الراجل في الوصلة اللي حطيتها انت قايل نفس الكلام بالنص زي ماقلته

اقتباس
البرامج التى يتم عمل Compilation لها تحت بيئة الدوت نيت لا يتم تحويلها مباشره إلى Native Code بل يتم تحويلها إلى MSIL ( Microsoft Intermediate Language ) تماماً مثل تطبيقات الجافا التى يتم تحويلها إلى Byte Code و بالتالى هذا يجعل تطبيقات الدوت نيت قابله للعمل على اى نظام تشغيل يحتوى على ال CLR بعد ذلك يتم تحويل كود ال MSIL إلى Native Code بواسطة مترجم وقت التنفيذ (Just In Time Compiler ) تحويل الكود إلى MSIL شئ ممتع فهو يجعلك تعمل تحت منصة الدوت نيت باستخدام لغتك المفضله (التى يجب ان تدعم تحويل الكود إلى MSIL )

بالراحة علينا يا عم علي المصري و ابقى اقرا كويس

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#16

مش مهم المقدمات المهم الدروس و نحن في انتظار دروسك ان شاء الله، استمر بارك الله فيك

Oracle 10G Certified Professional Developer.

عودة بعد 3 سنوات غياب، ان شاء الله سوف اتكلم معكم قريبا احبائي

#17

ما شاء الله كلام جميل جداً

سأقوم بتعديل الأخطاء وأرجوا أن توجهونني أول بأول :rolleyes:

الدرس الثاني :

C#_2.zip

#18

اخطاء الدرس الثاني

اولا اخطاء املائية

اقتباس
Polymorphizen

و التصحيح Polymorphism

ثانيا اخطاء علمية

اقتباس
لنفترض اننا نمتلك الكائنات التالية: الطـالب و الدكتور و السكرتير...الخ

كل الكائنات السابقة لها خاصية متشابهة و هي الاسم و الرقم

فلو قمنا بفصل هاتين الخاصيتين و جعلناهما في كائن واحد ثم قمنا بعمل Inheritance لباقي الكائنات من هذا الكائن الاب

ماذا لو اخذنا هذا الكائن الاب على حدة و رأينا ماذا يمثل ؟؟ لاشيء و ليس له معنى

المثال خاطئ تماما لانه استخدم Scenario صحيح لوضع ال Inheritance لاثبات العكس حيث ان في المثال السابق الكائن الجديد هو الكائن Person و الذي يحتوي على كل الخصائص الاساسية للانسان مثل الاسم و العنوان و النوع و تاريخ الميلاد...الخ

اقتباس
Override

ال Override مرتبط بال Inheritance حيث ان في ال Parent Class يمكن ان تكون هناك Virtual Function يوجد بها Initial Implementation و لكن عندما يحدث Inheritance منها فيحق للProgrammer ان يغير هذا الImplementation في الChild Class بما يناسبه مادامت ال Function هي Virtual Function و هذا المبدا مهم جدا في Code Reusability

و شكرا

و الى اللقاء في الحلقة القادمة من برنامج الافتــــاء سيد الاخلاق

تم تعديل هذه المشاركة بواسطة bashmohandes في 15 يناير 2007 في 12:07

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#19

والله رد جميل وسأقوم بتعديله

أما بالنسبة للدرس الأول فقد قمت بإلغاءه تماماً من كتابي لكثرة الأخطاء

ولأنني أركز أيضاً على الناحية العملية في كتابي

وأشكركم حيث أني أقوم بتصحيح الأخطاء لإخراج نسخة جديدة للجيل القادم :D

#20

ننتظر الفصل الثالث من كتاب الافتـــــــــــــاء في كل الاشيــــــــــــاء

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#21

وهذا هو الدرس الثالث

وأرجوك أخي إنتقده وصحح الأخطاء فقد إستفدت من توجيهاتك

ولكن الحجم كبير سأقوم بتحميله على موقع ولكن سيتم إزالة الوصلة بعد سبع أيام من تاريخ اليوم

وهاهي الوصلة :

http://s29.yousendit.com/d.aspx?id=0TDYFQP...4J2RU39QNJKXJ5N

وأرجوا الرد السريع

#22

الحقيقة انا مش فاضي لتصحيح اخطاء كتابك

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

و كل ما ارجوه هو ان تستمع الى نصيحة محمد مليجي عندما طلب منك ان تصبر حتى تتمكن من اللغة حتى لو تطلب هذا ان تؤجل مشروع هذا الكتاب لسنة اخرى

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

و شكرا

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#23

كلام الأخوة صحيح فيه أخطاء كثير

وإذا كنت جاد في تقديم المفيد

فباشر بالعملي لا النظري لأنه لا يمكن

تنزيل دروس إلا وأنت نتِكد 100 % منه

وبالتوفيق أخوي ... ونحن بإنتظار دروسك

وهذه بادرة خير منك .. وأقول للأخوة أنكم بالغتم

كثيراً في توجيه الصفعات للأخ .. فهو حب أن

يساعد ويقدم ما عجز عنه الكثير

وأكرر وأقول أنا وأنت وكل الناس إنسان يصيب

ويخطأ وخير الخطائين التوابين

#24

شكراً لكل من صحح الموضوع إلا اننى ارى انكم اكثرتم من النقد والتصحيح اكثر بكثير جداً حتى فى عددالكلمات وطول الموضوع من الشرح نفسه واضيف ان كلمة DOS و الخاصة باسم نظام التشغيل و التى حملت بعد ذلك اصدارة مث DOS 5 , DOS6 DOS6.22وغيرها هى اختصار الى Disk Operating System وليس شئ اخر

#25

غلطة مطبعية يا سيدي :D

Sr. Software Development Engineer
Hulu, LLC
My Blogs

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…