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

شنو الفرق بين هالكودين؟

بدأه Computer Guy في 27 مارس 2008 · 6 رد · 879 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

الاخوة الاعزاء ودي اعرف شنو الفرق بين هذه

انا ادرس السي بلاس بلاس اول مادة في التخصص وشوي معقدني وقاعد اقول الله يستر من القادم

وانا اليوم اقراء كتاب HOW TO PROGRAM C++

وشفت هذا الكود

#include <iostream>
using namespace std;

class GradeBook
{
public:

		void displayMessage()
		{
				cout << "Welcome to the Grade Book!" << endl;
		}
};

  int main()
  {
		GradeBook myGradeBook;
		myGradeBook.displayMessage();
		return 0;
}

وبين هذا الكود؟

 cout << "Welcome to the Grade Book!" << endl;

طالما ان كلاهما يطلع لي نفس الناتج ..

ادري ان سؤالي ماله داعي لكن معليش تحملوني قاعد اتعلم :)

وابي اتعلم وانا الحين في اجازة من الجامعة ومقضي اجازتي على قراءة الكتاب منها مراجعة ومنها اتعلم اكثر واكثر من اللي فاتني .. لإن مستواي جداً مُبتدى :(

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

والله يوفقه دنيا واخره ويرزقه مافي باله يارب ..

وان شاء الله بمساعدتكم وتشجيعكم اصبر مبرمج اد الدنيا على قوله حبيابنا المصريين :)

أخوكم: بدر ...

تم تعديل هذه المشاركة بواسطة Computer Guy في 27 مارس 2008 في 20:17

#2

الأول بستخدم Function للطباعة. و الثاني بطبع مباشرة دون استخدام Function خارجي للطباعة. الأول بيعتمد على مبدأ OPP

تم تعديل هذه المشاركة بواسطة da666ni في 27 مارس 2008 في 20:40

Chao!!!

Great place, and people, but full of sectarianism.

#3

لا يوجد فرق بالنتيجة..

لكن الكود الأول يستخدم الـClasses وهي أساس الـObject oriented programming يعني عند إستخدام الـClasses يمكن أن تستفيد من أشياء كثيرة مثل الـinhieretence والـencapsulation وغيرها الكثير وكل هذا سيتوضح لك مع متابعة الكتاب.

بالعربي الكود الأول هو مثال على البرمجة بالـ++C اما الكود الأخير فهو مجرد طباعة نص.

#4

الكود الثاني لايحتاج الا شرح فهو فقط جملة اخراج بسيطة

مقارنة مع الأول من حيث النتيجة - لا فرق -

ولكن الفرق يكمن في Object Oriented Programming وتترجم - > البرمجة الشيئية او البرمجة الكينونية او برمجة الكائنات - او البرمجة الموجهة او ... الخ من التسميات

المهم في الكود الأول تم خلق Object من نوع Gradebook والأخير هو Class يحتوي على Member Functions + Data Member

بعضها يعرف على انه Public or Private or Protected

وهذه تمثل درجة الوصول

هذا شرح بسييييييييييييييط جدااااااااااااا

والكلام عنه ال Object Oriented Programming يطووووووووول كثيرا لا انصحك بقرائتها حاليا - لأنك مثل ما قلت جديد على ++C لذلك انصحك بالتمرن على

Control Strcuter

Functions

Arrays

Pointers

والخطوة الأولى الى Object Oriented Programming هي ال

Structs

ثم انتقل الى

Template

وبعدها

OOP - > Object Oriented Programming

اتبعها من البداية لا تقفز عن موضوع قبل موضوع فقد وضعتها لك بالترتيب - هذا رأي الشخصي والمتواضع وقد يختلف عن الخبراء -

ااتمنى ان اكون قد ساعدتك

اخوك

أبوكارليتو العراقي

#5

برأي أنا كل ال OPP ما بدكن ياه, ممكن بس ططلع عليه لتفهم شو هو ))

Chao!!!

Great place, and people, but full of sectarianism.

#6

السلام عليكم:

حياك الله اخوي بدر وكل من في الفريق العربي أخوة والكل يساعد بالي يقدر عليه ويعرفه.

اخي بدر:

دائما المبتدي في أي مجال كان يجد صعوبه وتعثر ولولا هذه الصعوبه لما وجد الانسان لذه العلم.

في بداية تعلمي كنت لاعرف اشغل جهاز الكمبيوتر مع اني كنت اشاهده كثيرا عند الجميع.

في فترة من الفترات قررت اتعلم ونفذت قراري.

انت تريد ان تتعلم اذن سوف تتعلم بمشئية الله عزوجل.

بالنسبة للكود: الكلاس هو اسلوب تنظيمي للبرمجة والحقيقة انه من اجمل الافكار البرمجة.

تستطيع عمل كلاس وفي داخل الكلاس الدوال والاعضاء الدالية .

تستطيع استخدام الدوال والاعضاء الدالية اذا كانت عامة . والخاصه تستخدمها من داخل الكلاس.

لا حظ الامثلة التالية:

#include <iostream>
using namespace std;
 /*هنا نستخدم الدالة بدون كلاس فقط عرفنا دالة */
 void displayMessage()
        {
                cout << "Welcome to the Grade Book!" << endl;
        }

int main() 
{
          displayMessage(); //هنا تنفذ الدالة وتطبع الرسالة فقط احتجنا الى اسم الدالة
    return 0;
}

#include <iostream>
using namespace std;
  /*هنا عرفنا الدالة داخل كلاس*/
class GradeBook
{
public:

        void displayMessage()
        {
                cout << "Welcome to the Grade Book!" << endl;
        }
};

  int main()
  {
        GradeBook myGradeBook;     // هنا أعلنا عن متغير من نوع الكلاس من اجل استخدام الدوال التي في داخل الكلاس
        myGradeBook.displayMessage();    //هنا طلبت الدالة ولكن من خلال الكلاس لاحظ اسم الكلاس ثم نقطة ثم اسم الدالة
        return 0;
}

طبعا الكتاب يستخدم امثله بسيطه من اجل ايصال الفكرة ومع الاستمرار سوف تجد الموضوع سهل وميسر.

أسال الله لك ولي وللجميع التوفيق .

tvquran_6.gif

#7

السلام عليكم

الأخوه ما قصروا

ولكن أريد أن أضع لك مثال آخر لعلك تستفيد منه

مثلا إنضر إلى هذا الكود

#include <iostream>


using namespace std;

class Math
{
public:

		float Add(float  a,float b )
		{

				cout <<"a+b="<< a+b<< endl;
		return a+b;
		}

		float Mult(float a,float b)
		{
				cout <<"a*b="<< a*b<< endl;
	return a*b;	
		}

		float Avreage(float a,float b)
		{
cout<<"Avreage="<<(a+b)/2<<endl;
		return ((a+b)/2);
		}

};

  int main()
  {
		Math test;
		test.Add(2,4);
		test.Add(3,7);
		test.Add(10,111);
		test.Mult(2,90);
		test.Mult(test.Add(2,3),4);
		test.Avreage(3,4);
		return 0;
}

إنضر في class

لقد عملت class وسميته Math

وعملت داخله ثلاث دوال

الأوله إسمها Add

وهي لجمع عددين

والثانيه إسمها Mult

وهي لضرب عددين

والثالثه إسمها Avreage

وهي لحساب المتوسط لعددين

الآن إنضر إلى

test.Add(2,4);

هذا الكود يقوم بجمع عددين

العدد الأول هو 2 والثاني هو 4

والناتج 6

وأيضا هذا الكود

test.Mult(2,90);

يقوم بالضرب العدد 2 في العدد 90

الآن لنأخد مثال أصعب

test.Mult(test.Add(2,3),4);

هذا الكود يقوم بضرب العدد الناتج من

test.Add(2,3)

وهو 5

بالعدد 4

والناتج 20

مثال آخير

test.Avreage(3,4);

وهو يقوم بحساب المتوسط للقمين 3 و4

وهو 3.5

هل رأيت هذه الأمثله وكيف أنك تستطيع عمل أشياء كثيره وفي سطر واحد وبشكل منضم

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

ومن ثم تستخدمها مثل ماتريد فقط بذكر إسم الداله وإعطائها القيم التي تريد

أرجوا أن أكون وفقت في هذا المثال

وبالتوفيق في تعلمك هذه اللغه الشيقه

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

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

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

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

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