منتديات خنشلة
∏▐◄البرمجة►&#871 613623

عزيزي الزائر / عزيزتي الزائرة يرجي التكرم بتسجبل الدخول اذا كنت عضو معنا
او التسجيل ان لم تكن عضو وترغب في الانضمام الي أسرة منتديات خنشلة
سنتشرف بتسجيلك
منتديات خنشلة
∏▐◄البرمجة►&#871 613623

عزيزي الزائر / عزيزتي الزائرة يرجي التكرم بتسجبل الدخول اذا كنت عضو معنا
او التسجيل ان لم تكن عضو وترغب في الانضمام الي أسرة منتديات خنشلة
سنتشرف بتسجيلك
منتديات خنشلة
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

منتديات خنشلة

مرحبا بكم في بيتكم الثاني
 
الرئيسيةأحدث الصورالتسجيلدخول

 

 ∏▐◄البرمجة►&#871

اذهب الى الأسفل 
كاتب الموضوعرسالة
المدير
المدير
المدير
المدير


عدد الرسائل : 774
تاريخ التسجيل : 02/11/2007

∏▐◄البرمجة►&#871 Empty
مُساهمةموضوع: ∏▐◄البرمجة►&#871   ∏▐◄البرمجة►&#871 I_icon_minitimeالإثنين 24 ديسمبر 2007 - 19:40


∏▐◄البرمجة►&#871 Www.uaekeys.com0016∏▐◄البرمجة►&#871 Bismillah∏▐◄البرمجة►&#871 Www.uaekeys.com0016

∏▐◄البرمجة►&#871 W6w200504210024396953031d4fn

بــوابــــة الــبــرمــجــة

∏▐◄البرمجة►&#871 W6w200504210024396953031d4fn

مـقـدمـة

بسم الله الرحمان الرحيم

اخواني الأعزاء بمنتدى البرمجة الحبيب

يسعدني افتتاح هدا الموضوع الدي سيشمل ان شاء الله

مجموعة من الدروس و الكتب و كلما يتعلق بالبرمجة

في أهم اللغات في مقدمتها لغة السي و السي ++.

للاشارة فالمحتوى سيكون ما بين ما هو من انجازي الخاص و أيضا

بعض الدروس المتواجدة بالشبكة لبعض الخبراء

و الرائدين في الميدان جزاهم الله خيرا.

طبعا لا يمكن ان يكتب النجاح للموضوع بدون مشاركاتكم اضافاتكم

و خصوصا انتقاداتكم و استفساراتكم.

اعتدر ان كانت وتيرتي في تحديث الموضوع بطيئة و دلك بسبب الدراسة

و ان شاء الله تعم الفائدة على الجميع.

∏▐◄البرمجة►&#871 W6w200504210024396953031d4fn

الدرس الأول : مقدمة عن البرمجة

************

البرمجة



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







تقوم
الحواسب بمعالجة المعطيات Data وفقا لمجموعة من التعليمات تدعى بالبرامج
Programs و التي تقود الحاسب من خلال مجموعة من الأفعال المرتبة و المحددة
بواسطة شخص يسمى بالمبرمج Computer Programmer .







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







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







يمكننا على هذا
الأساس تصنيف لغات البرمجة حسب قربها من اللغات الإنسانية ( وبالتالي
بعدها عن لغة الآلة ) لنجد الأنواع الثلاثة الموضحة في الشكل أدناه :









اللغات الإنسانية


اللغات



الحديثة


لغات المستوى العـــالي

لغة التجميع


لغة



الآلة

∏▐◄البرمجة►&#871 Lcمرونة + عمومية



سرعـــة + سلطــة∏▐◄البرمجة►&#871 Rc











ولا يعني ما تقدم أن
باستطاعة الحاسب أن يتقبل هذه اللغات غير الإنسانية ( رغم ما تمتاز به من
دقة ) ، فهو لا يفقه إلا لغة الآلة . إلا أن دقة هذه اللغات تمكننا من
ترجمتها إلى لغة الآلة . والمترجم ما هو إلا برنامج (يكتب عادة بلغة
الآلة) يحول كل جملة لغوية إلى مجموعة من الأوامر المكافئة لها بلغة الآلة
. وكما هي الحال بين البشر ، توجد ثلاثة أساليب للترجمة : الأسلوب الأول
يعتمد على قراءة جملة واحدة من البرنامج الأصلي ، تحديد المقصود منها ،
إيجاد الأوامر المكافئة لها بالمعنى بلغة الآلة ، ثم تنفيذ هذه الأوامر
مباشرة ، قبل الشروع بقراءة الجملة التالية (لاحظ أن أوامر لغة الآلة لم
تحفظ بل جرى تنفيذها فقط). يدعى البرنامج الذي يتبع هذا الأسلوب : المترجم
( Interpreter ) أو المترجم الفوري ويمتاز بسهولة التصميم وسهولة
الاستعمال إلا أنه يبطئ تشغيل البرنامج (لأنه لا يحفظ ما سبق أن ترجم ) .
الأسلوب الثاني يعتمد على قراءة البرنامج الأصلي كله دفعة واحدة ، تحديد
مضمونه الإجمالي ، إيجاد الأوامر المكافئة له ، ككل بلغة الآلة ، ثم حفظ
هذه الأوامر بملف ثان ( يسمى ملف الهدف Object تمييزاً له عن ملف المصدر
Source الذي يحوي البرنامج الأصلي ) . يدعى برنامج هذا الأسلوب : المؤلف
( Compiler ) ويتسم بالصعوبة و التعقيد في التصميم والاستعمال إلا أنه
يسرع التشغيل ( لأن الترجمة تتم مرة واحدة فقط ولأنها تنشد ترجمة المعنى
الإجمالي ) . أما الأسلوب الأخير فيعمد إلى ترجمة كل جملة في البرنامج
الأصلي إلى أمر واحد مرادف ( ونقول مرادف وليس مكافيء فقط ) لها بلغة
الآلة . ثم يقوم بعدئذ بتجميع هذه الأوامر في ملف الهدف ليتم تنفيذها
لاحقاً ، ولهذا السبب يطلق عليه اسم المجمع ( Assembler ) . ومن الواضح أن
هذا الأسلوب لن ينجح في ترجمة المعنى ( كما لو حاولت فهم رسالة مكتوبة
بلغة تجهلها باستخدام القاموس فقط ) ، اللهم إلا إذا كانت اللغة الأصلية
قريبة جداً من لغة الآلة بحيث تتطابق جملها في النحو والإنشاء ولا تختلف
إلا في المفردات . وهذه هي الحال تماماً مع لغة التجميع .







ويوضح
الشكل أنه كلما اقتربنا من لغة الإنسان ، كلما اكتسبت برامجنا مرونة (
Flexibility ) وعمومية ( Portability ) أكثر . المرونة تعني السهولة في
كتابة وتعديل وتصحيح البرامج ، وكذلك تعني القدرة على تحمل الأخطاء .
فالمؤلف الذي يترجم لغة باسكال مثلاً ، إلى لغة الآلة يلعب دور المرشح فلا
يسمح بوجود تعليمات غير صحيحة في البرنامج ، وبالتالي لا يترجم إلا
التعليمات الصحيحة . وبذلك يحمينا من عواقب الأخطاء التي قد نرتكبها في
البرنامج . أما العمومية فتعني استقلالية البرنامج عن نوع الجهاز الذي
يعمل عليه . فبرنامج مكتوب بلغة فورتران القياسية ومنفذعلى كمبيوتر شخصي
من أي نوع ، يمكن بكل سهولة نقله إلى حاسب كبير ( ليتم إعادة تأليفه هناك
) دون الحاجة ، في أغلب الأحيان إلى إجراء أي تعديل فيه .







أخذ هذا الموضوع من كتاب البرمجة بلغة التجميع (الدكتور حمزة الروماني)











ما مستوى الذكاء المطلوب للبرمجة ؟





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







هل تتطلب لغة انجليزية جيدة ؟





حقيقة فى الوضع الحالي .. لابد لمن يريد ان ينال الخبرة الكافية ان يكون متقناً للغة الانجلزية ....
ولكنها ليست مشكلة في البداية. فالانسان لا يولد متعلما ..
والبرمجة
ليست الا كلمات و اومر بسيطة يمكنك تعلمها بكل سلاسة دون وجود اي عائق
لغوي تماما ... لكن للاحتراف والتميز لابد ان يكون جيدا فى اللغة حتى يكون
ملماً بكل جديد ومساير له ..






هل يجب ان يكون لدي خلفية رياضية جيدة ؟





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





∏▐◄البرمجة►&#871 W6w200504210024396953031d4fn

الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
∏▐◄البرمجة►&#871
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
» ►▓◄وداعاً للفيروسات التي تنقله
» حصــــــ╝◄شرح خاص بإنشاء موقعك الخاص ب w

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