انا علمت حديثا عن C++/CLI
ولكن لم اعرف عنها الكثير بمعنى هل هى سوف تبقى اقوى من السى شارب.؟
اكيد هى اقوى من السى ++ ولكن هى اقوى من السى شارب؟؟
انا علمت حديثا عن C++/CLI
ولكن لم اعرف عنها الكثير بمعنى هل هى سوف تبقى اقوى من السى شارب.؟
اكيد هى اقوى من السى ++ ولكن هى اقوى من السى شارب؟؟
بسم الله الرحمن الرحيم
إِنَّ الَّذِينَ آمَنُوا وَعَمِلُوا الصَّالِحَاتِ إِنَّا لَا نُضِيعُ أَجْرَ مَنْ أَحْسَنَ عَمَلاً
صدق الله العظيم
=================
Belal Mahmoud Younes
Solution Developer
Link Development a LINKdotNET subsidiary
Mobile : 010 89 69 772
E-mail : belalyounes@hotmail.com
السلام عليكم ,,
المشكلة أن معيار القوة نفسه غامض ,, يعني الانتاجية وسرعة كتابة الأكواد وتنفيذها لمهام نحتاجها في السي# أفضل من السي++ ,, لكنها كال C++/CLI تماما ,,
في الأداء السي++ تفعل كل ماتتخيله وبسرعة أكبر من السي# ولاتحتاج لمنصة دوت نت ولاغيره وتعمل فورا على أي وندوز ,, لذا تكتب بها الفيروسات غالبا ,,
ال C++/CLI أسرع من السي# أيضا ,, وبسرعة السي++ لو لم نستخدم GC Objects وتقل السرعة كل ماستخدمنا كائنات مدارة بال GC ,,
السي# ليس بها دعم للمؤشرات بشكل حقيقي ولديها مشاكل مع دوال ال API التي تمرر لها بارمترات من نوع مؤشر المؤشر ,,
ال C++/CLI ليس لديها مشكلة مع ذلك ,,
السي++ بالطبع أيضا ليس لديها مشكلة ,, لأن هذه الدوال أصلا كتبت بالسي++ !!
النتيجة في النهاية أرى أنها تفوق ال C++/CLI لأنها الحل السحري لكل المشاكل فهي تجمع بين قوة السي++ وحرية التعامل مع الذاكرة وكل الميزات ,, مع خدمات اضافية لتعامل الذاكرة ومنصة الدوت نت أيضا !!
النتيجة C++/CLI =( قوة السي++ مع قوة السي# )
مارأيك !!
تم تعديل كلمة بشكل حقيقي التي باللون الأحمر في الموضوع ,, لتنبيه من الأخ elbasha :
تم تعديل هذه المشاركة بواسطة HGB في 7 سبتمبر 2004 في 04:05
فى البدايه احب ان اشكرك يا اخ HGB
فعلا شرحك فى منتهى السهوله والدقه وبالرغم من ذلك انا يوجد عندى سؤال وهو
انا الان باتعلم سى شارب فهل بعد ما اتقن هذه اللغه جيدا (السى شارب) سوف استطيع بسهوله دراسه ومعرفه هذه اللغه الجديده C++/CLI ام سوف ابدا من الاول كانها لغه جديده ام انها زى باقى لغات الدوت نت بنفس الفكر ؟؟؟؟؟؟؟
بسم الله الرحمن الرحيم
إِنَّ الَّذِينَ آمَنُوا وَعَمِلُوا الصَّالِحَاتِ إِنَّا لَا نُضِيعُ أَجْرَ مَنْ أَحْسَنَ عَمَلاً
صدق الله العظيم
=================
Belal Mahmoud Younes
Solution Developer
Link Development a LINKdotNET subsidiary
Mobile : 010 89 69 772
E-mail : belalyounes@hotmail.com
السلام عليكم ..
لا يوجد عندي اي تعليق على سؤالك اخي belal.net فقد و فى و كفى الاخ HGB كالعادة .. :)
و لكني اريد ان انبهك الى خطأ في الآية الكريمة التي وضعتها كتوقيع عنك .. حيث انك وضعت الآية على النحو "ان الله لا يضيع اجر من احسن عملا " و الصحيح هو "انا لا نضيع اجر من احسن عملاً " ... غفر الله لك و لنا ، لأني كنت اخطأ الخطأ ذاته على الرغم من مطالعتي الدائمة لسورة الكهف (آيه رقم : 30) ، الا انني انتبهت لخطأي عندما علق عليه الاستاذ عمرو خالد في احدى حلقاته من برنامج صناع الحياة ..
و السلام ..
بنت اليمن ،،
لا اله الا الله .. محمد رسول الله
(* ربِ اجعلني مقيم الصلاة و من ذريتي ، ربنا و تقبل دعـاء *)
يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين
اقتباسانا الان باتعلم سى شارب فهل بعد ما اتقن هذه اللغه جيدا (السى شارب) سوف استطيع بسهوله دراسه ومعرفه هذه اللغه الجديده C++/CLI ام سوف ابدا من الاول كانها لغه جديده ام انها زى باقى لغات الدوت نت بنفس الفكر
لأ هي نفس الفكرة ,, ومافي مشكلة بعد تعلم السي# باذن الله ,,
بس ال C++/CLI أقرب للسي++ في جملها من السي# ,, مع أن الفرق بين السي++ والسي# بسيط جدا أيضا ,,
توكل على الله وأتقن السي# فهي لغة المستقبل للتطوير السريع ,, واذا لم ترغب في خوض البرمجة المتقدمة جدا ,, فتأكد من أن السي# ستكفي تماما ,,
المهم اكمل مشوار السي# وبعدها ستستطيع أن تحدد بشكل أفضل ,,
اولا اود ان اشكر الاخ الكريم HGB
وبارك الله فيك وبالتوفيق لنا جميعا ان شاء الله
بسم الله الرحمن الرحيم
إِنَّ الَّذِينَ آمَنُوا وَعَمِلُوا الصَّالِحَاتِ إِنَّا لَا نُضِيعُ أَجْرَ مَنْ أَحْسَنَ عَمَلاً
صدق الله العظيم
=================
Belal Mahmoud Younes
Solution Developer
Link Development a LINKdotNET subsidiary
Mobile : 010 89 69 772
E-mail : belalyounes@hotmail.com
اقتباسحيث انك وضعت الآية على النحو "ان الله لا يضيع اجر من احسن عملا " و الصحيح هو "انا لا نضيع اجر من احسن عملاً " ... غفر الله لك و لنا
بارك الله فيكى يا اخت بنت اليمن واشكرك على هذا التعليق وجزاكى الله خير
بسم الله الرحمن الرحيم
إِنَّ الَّذِينَ آمَنُوا وَعَمِلُوا الصَّالِحَاتِ إِنَّا لَا نُضِيعُ أَجْرَ مَنْ أَحْسَنَ عَمَلاً
صدق الله العظيم
=================
Belal Mahmoud Younes
Solution Developer
Link Development a LINKdotNET subsidiary
Mobile : 010 89 69 772
E-mail : belalyounes@hotmail.com
شكرا على الاجابة القيمة ولكني اود ان اضيف ان اي لغة برمجة تعتمد على الفكر في المقام الاول واستغلال لاوامر في تنفيذ هذا الفكر وهنا تكمن قوة هذة اللغة
وفوق كل ذي علم عليم
والله اعلم
الملك ------>محمد ابو تريكة

على اسم مصر التاريخ يقدر يقول ما شاء
أنا مصر عندي أحب وأجمل الأشياء
باحبها وهي مالكه الأرض شرق وغرب
وباحبها وهي مرميه جريحة حرب
باحبها بعنف وبرقة وعلى استحياء
واكرهها وألعن أبوها بعشق زي الداء
واسيبها واطفش في درب وتبقى هي ف درب
وتلتفت تلقيني جنبها في الكرب
والنبض ينفض عروقي بألف نغمة وضرب
على اسم مصر
فعلا يا اخ بامبو وهذا الى كان يقصده الاخ الكريم HGB
عندما قال هى نفس الفكره وما فى مشكله تعلم السى شارب باذن الله ان شاء الله الفكر واحد ولن تفرق الا فى ال syntax
وربنا يوفقنا جميعا
عفوا عن الاخطاء الاملائيه
بسم الله الرحمن الرحيم
إِنَّ الَّذِينَ آمَنُوا وَعَمِلُوا الصَّالِحَاتِ إِنَّا لَا نُضِيعُ أَجْرَ مَنْ أَحْسَنَ عَمَلاً
صدق الله العظيم
=================
Belal Mahmoud Younes
Solution Developer
Link Development a LINKdotNET subsidiary
Mobile : 010 89 69 772
E-mail : belalyounes@hotmail.com
اخى HGB
هل انت متاكد ان السي شارب لا تدعم المؤشرات ؟
انا قرات اكثر من مرة انها تتدعم المؤشرات كاملة!!
وهذة واحدة من الى قراتها:
تم تعديل هذه المشاركة بواسطة elbasha في 6 سبتمبر 2004 في 23:14
Ahmed Elbasha
E-mail:ah_elbasha@yahoo.com
السلام عليكم ,,
أخطأت التعبير ,, السي# لاتدعم المؤشرات بشكل كامل ,, وسبق أن قلتها بنفس هذا اللفظ سابقا في أكثر من مرة ,, عموما :
مع أن بعض المتعصبين يقولون انها لاتدعم المؤشرات ,, لأنها فقط تدعمها داخل بلوكات unsafe ,, تخيل أنك كل ماتحتاج لتنفيذ كود به مؤشرات عليك بوضعه داخل بلوك Unsafe ,, بالطبع مع تغيير اعداد المصرف ليترجم الكود للغة IL تكون unsafe ,,
هذه مشكلة ,, المشكلة الثانية هي انه لاتوجد كلمة اساسية اسمها delete ,, يعني لايمكن تحرير الذاكرة المحجوزة يدويا أبدا ,,
الأمر الثالث أن الذاكرة التي تحجز بالأمر new كما أعرف تكون في ال GC Heap وليست في ال Heap العادي ,, يعني مدارة بال GC ,, وبذلك تكون بدون قوة المؤشرات أيضا ,,
الأمر الرابع : أنه لايوجد شيء يسمى ** في السي# أبدا ,,
يعني لايمكن أن تنشيء مؤشر لمؤشر ,, وهي احدى الركائز الأساسية في المؤشرات والتي هي غير موجودة مطلقا في السي# ,, هذه تحد من قوة المؤشرات في السي# ,,
لكن هناك ماهو أكثر !! لايمكن أن تستدعي دالة من دوال ال API بها بارمتر ل ** الا بعد انجاز عمليات سمكرة بشعة للغاية ,,
يعني دالة ك CoCreateInstance لانشاء تواجد لكائن من مكون كوم مسجل في النظام ,, ستحتاج لتمرير البارمتر الأخير لهذه الدالة ك
LPVOID *
و LPVOID معرفة أصلا ك :
typedef void* LPVOID
يعني تصبح وكأنها ,,
void **
الان قل لي كيف ستمرر هذا البارمتر من السي# والسي# أصلا لاتدعم الا علامة مؤشر واحدة ؟!!
يوجد حل طبعا لكنه التفاف طويل ومرهق ,, وكان من الاسهل منه أن نكتب فئة بال C++/CLI تغلف دالة ال CoCreateInstance ,, لتستقبل البارمتر الأخير بطريقة أكثر ودية وتعيده للمستدعي ,, ونستدعيها من السي# بدل كل وجع الرأس !!
أعتقد أن كل ذلك كافي لاثبات ان السي# لاتدعم أكثر من 50% من المؤشرات التي في السي++ ,, دعك من مؤشرات ال C++/CLI المتقدمة ,,
تم تعديل هذه المشاركة بواسطة HGB في 7 سبتمبر 2004 في 04:00
هل C++/cli بنفس صعوبة C++ ؟
وهل الاختلاف بينهما كبير ؟
وشكرا اخى HGB
Ahmed Elbasha
E-mail:ah_elbasha@yahoo.com
omarfive2003@yahoo.frتحية طيبة للأخ: HGB, وبعد:
هل من يتقن إستعمال لغة VC++6 لحد ما, يمكنه الإنتقال بسرعة
وببساطة إلى اللغة الحديثة C++/CLI.
وهل هناك تباين شديد وحساس بين الإثنين.
وشكراً جزيلاً.
سأجيب على السؤال الأول قبلا :
اقتباسهل C++/cli بنفس صعوبة C++ ؟
ال C++/CLI أصعب لتضمنها المزيد فوق السي++ ,, نفي سؤالك أن تقول أيهما أصعب السي أم السي++ ؟ سأقول لك السي++ لأن السي++ تضم كل السي ,, وعليها المزيد ,,
اقتباسهل من يتقن إستعمال لغة VC++6 لحد ما, يمكنه الإنتقال بسرعةوببساطة إلى اللغة الحديثة C++/CLI.
اذا أتقنت ال Visual C++ 6 أنا متأكد من أنك تستطيع ان تنتقل لأي لغة وبسرعة , لأنك دربت نفسك على التعلم في أقسى الحلات لذي أأكد لك أنه يمكنك الدخول في ال C++/CLI وبسرعة ,, لكن :
لاعلاقة بين برمجة ال MFC وبرمجة ال C++/CLI ,, حيث أن ال C++/CLI تبرمج باستخدام منصة الدوت نت ,, وبرمجتها بالنسبة للدوال والفئات والتجمعات أقرب الى ال C# والى VB.NET ,, لكن الأوامر الأساسية مختلفة بشكل كبير طبعا لأنها سي++ عادية مع بعض الأضافات تضيف المزيد من المرونة على اللغة ,,
انظر للمواضيع التي في القسم وستجد الكثير المختلف عن الجدي في ال C++/CLI ولماذا هي متميزة ,,
كيف نجمع بين القولين:
اقتباسلكنها كال C++/CLI تماما ,,في الأداء السي++ تفعل كل ماتتخيله وبسرعة أكبر من السي# ولاتحتاج لمنصة دوت نت ولاغيره وتعمل فورا على أي وندوز ,, لذا تكتب بها الفيروسات غالبا ,,
و
اقتباسحيث أن ال C++/CLI تبرمج باستخدام منصة الدوت نت
كيف يمكنها العمل بدون الدوت نت
محبكم/ أبو أنس
المفيد:
3أسطر برمجية للتنقل بإستخدام مفتاح الإدخال
درس بناء واستخدام أدوات المستخدم ASP.NET Web User Controls
خدمة نسيت كلمة المرورمع الشرح ASP.NET
طريقة سهلة للتعامل مع ListBox و Combobox
إضافة الخصائص الى أدوات الويب ASP.NET
موقع لبيع الكمبيوترات مع الكود ASP.NET
كنترول بسيط مع الكود HoverButtonTextBox
برنامج لإنشاء Propertys مع الكود
كيف نختار بين DataGrid,DataList,Repeater
روابط برامج مهمة ASP.NET مع أكوادها
[islamonline]المفيد الدعوي[/islamonline]

قصدي الأول أن مايبرمج بدون منصة الدوت نت , هي السي++ العادية ,,
ومايبرمج بإستخدام منصة الدوت نت هي ل C++/CLI
سيظهر أول كتاب ل C++/CLI في Amazon.com قريبا جدا ...
السلام عليكم ورحمة الله وبركاتة
ما شاء الله عليك استاذ HGB
انك تحوى من المعلومات قدر بحر
ولكن اية رايك لو قلت ان كل لغات الدوت نت مفيش بينهم اى اختلاف
غير فى الطريقة الكتابة
وبعض الحجات الى ما تعتبرش تغيير
يعنى بمعنى اصح كل اللغات تستخدم مكتبات الفريم ورك
اية الفرق الفعلى
وبعدين انا بعتبر قوة لغات الدوت نيت .. فى برامج الداتا بيز .... والويب
ومتهيالى ان الانتاج القادم من لغات الدوت نيت هاتكون فى المجالين دول اكتر او بس
وبعدين مشابهت اى لغة من لغات من لغات الدوت نيت بالسى ++ يبقى تقليل من شانها
وانا اقصد السى ++ الى تكتب على الفيجوال استيديو 6
وحاسس ان ميكروسفت عملت الغات دى علشان يبعدو الناس عن عمل
اى فكرة نظام تشغيل
او برامج قوية مثل 3dsmax
او العاب
لان متهيالى لو عملت برنامج زى 3dsmax بالدوت نيت هايبقى تقيل جدا جدا
ولما الكل يبعد عن الغات القوية يبقى وعن عمل برامج قوية
يبقى هما الصانع الوحيد ههههههههههههههههههههههههه
انا بعد مدة سنتين فى السى شارب حسيت انى مش قادر اعمل اى حاجة غير برامج الداتا بيز
او اتعلم asp.net
وراجع تانى اتعلم السى بلس بلس
والفريم ورك الغبى دة كل شوية ينزل واحد تانى دة الواحد لو عمل فيرس مش هايشتغل اصلا
الا لما الكل يسطب الفريم ورك ودة هايبقى احد الحلول لما يظهر فيرس معمول على الدوت نيت
وارجو انى ما اكون اطلت عليكم
وشكرا
محارب بلا زمان
.................................................................................................................................................................................................

اقتباسولكن اية رايك لو قلت ان كل لغات الدوت نت مفيش بينهم اى اختلاف
الكلام ده صح بالنسبة للغات العادية و ليس C++/CLI لأنك لو قرأت عنها جيدا ستلاحظ أنها اللغة الوحيدة التي تستطيع بها كتابة Native Code أي أنك تستطيع المزج بين ال Native و ال Managed معا
اقتباسوانا اقصد السى ++ الى تكتب على الفيجوال استيديو 6وحاسس ان ميكروسفت عملت الغات دى علشان يبعدو الناس عن عمل
اى فكرة نظام تشغيل
او برامج قوية مثل 3dsmax
او العاب
فيجوال ستوديو مازال يحتوي على الكومبيلر الخاص بسي بلس بلس أي أنك لست مضطر لإستخدام الدوت نيت بل تسطيع إستخدام سي بلس بلس مع ال ًWindows APIs بدون دوت نيت أو فرامورك
السلام عليكم
يعنى حضرتك موافقنى فى الراى عن عدم وجود فرق جوهرى بين لغات الدوت نيت
وحسوا انهم انكشفوا
علشان كدة عملو اللغة الجديدة دى والدليل على انك حتى ملقيتش غير اختلاف مش كبير جدا
ستلاحظ أنها اللغة الوحيدة التي تستطيع بها كتابة Native Code أي أنك تستطيع المزج بين ال Native و ال Managed معا
على الرغم انى مش فاهم يعنى اية الاختلاف دة وهل هايتحس اصلا ولا لا
وشكرا
محارب بلا زمان
.................................................................................................................................................................................................

بالعكس ده إختلاف كبير و مهم جدا
إنت تقدر تنظر للغات الدوت نيت الأخرى على إنها تعمل تحت الدوت نيت
لكن ال C++/CLI أحسن تبصلها عل إنها سي بلس بلس عادية تقدر تستخدم الدوت نيت
مثلا يعني إستدعاء دوال ال API في الدوت نيت بطيء نسبيا بالنسبة للأسمبلي و السي و السي بلس بلس
لكن مع C++/CLI تقدر تستدعيها تقريبا بنفس السرعة
يعني C++/CLI تقدر تقول إنها تجمع بين مميزات سي بلس بلس و قوتها و بين إنتاجية الدوت نيت
بإختصار لن تستطيع أن تعرف قوة C++/CLI مالم تحترف السي بلس بلس و الدوت نيت
اقتباسولكن اية رايك لو قلت ان كل لغات الدوت نت مفيش بينهم اى اختلاف
نعم, ولكن Microsoft ذكرت ذلك قبلك ولم تخفه بالنسبة إلى لغات VB.Net و C#.Net حيث أن ترجمتها يعني وصولها إلى لغة ML والتي تفسر من قبل dotNetFramework ولكن بطريقة لو قرأت القليل عنها لعرفت أنها من القوة والسرعة والوثوقية «الركيزة لبيئة dotNetFramework» ما يكفي بأن يطيح بلغات البرمجة السابقة VB و Delphi «مع العلم أني مبرمج Delphi أساسا»
اقتباسولما الكل يبعد عن الغات القوية وعن عمل برامج قوية, يبقى هما الصانع الوحيد
لا أعتقد أن هذا الكلام قريب من الصحة أبدا
ولكن تبقى فكرة واحدة وهي أن برمجة win32 تبقى هوس العديد من المبرمجين «مثلي أنا» والمعارضين لأفكار المحمولية مقابل الأداء وبالتالي معارضي أي Framework ومنه تجد أن Microsoft لم تلغي برمجة win32 «ولن تستطيع على كل حال أن تلغيها, لا أقول أبدا فهناك حديث عن لغات برمجة خاصة مع نظام التشغيل القادم Vista»
وربما ذلك ما دفعها لكسب هؤلاء المبرمجين عن طريق طرح C++/CLI
ولكن تساؤلي عن اللغة مع أني أعجبت بالفكرة بعد قرائتي لها هو أن برمجيات هذه اللغة إذا ما استدعت Native API فلن تتميز بصفة المحمولية وبالتالي أصبحت لا win32 ولا dotNetFramework
C++/CLI أقوى من C++ العادية على ماأظن
و مايكروسوفت تقوم بإنتاج برامج جديدة أغلبها ب C++/CLI و C #
أي أنها لا تريد الإستفراد ب WIN 32
عموما WIN 32 في طريق الإنقراض
وهم أنتجوا كرنل ب C#
أما أنك تقول أنها تريد أن تنزل بمبرمجي إلى مستوى المبرمجين الأخرين فلا حول و لا قوة إلا بالله
الأخوة الأفاضل كلامكم جميل من البداية لكن برأيي أن مايكروسوفت قللت من السنوات السابقة من أهمية WIN32 و السي بلس بلس العادي لأنه على طريق الإنقراض قكلنا يعلم بأن الوين 32 خلاص إنتهي تقريباً و يكفي أن مايكروسوفت SQL سيرفر 2005 معمول كاملا بالدوت نت و بالنسبة للأداء فبحسب أقوال ماكيروسوفت يعود الأداء البطيء إلا أنه عند التحويل من الفرام وورك إلى النيتف كود تكمن هنا المشكلة حيث أن الإكس بي و الويندوز الذي فبله لا يمتلك أي خواص إضافية للتعرف على الدوت نت و بالتالي سيتكون لدينا طبقة تحويل ثالثة بين نظام التشغيل و البرنامج و هي IL و لكن لا تنسوا أن بإمكاننا إستخدام NGEN الأداة التي تأتي مع الدوت نت و تجعلنا نحول البرنامج كاملاً إلى نايتف كود من غير ان تحوله JIT عند التنفيذ إلى ذلك و بهذا تكون قد تخلصت من مشاكل الأداء و البطى المصاحب لها 90% تقريباً و لا تنسوا أن الماكينتوشس يعتمد بشكل كامل على الجافا و ما الدوت نت إلا تقليد من مايكروسوفت لصن في الجافا و هو المستقبل و الله أعلم...
نسيت موضوع السرعة في ردي
الدوت نت بطئ في win xp لأن xp غير داعم للدوت نت كاملا
ولكن شوف سرعة الدوت نت على windows vista
أما نظام التشغيل الذي ستصدره مايكروسوفت بعد فيستا فإنه لن يدعم win 32 و هذا حسب مايكروسوفت