PythonGuide/Programming Basics
من PFWiki
محتويات |
مامعنى كلمة Programming ؟
هى بتعنى القدرة على التخاطب مع الكمبيوتر وتنفيذ افكارك على ارض الواقع .. الكمبيوتر لايفهم اى شئ سوا 0 و 1 وصعب على البشر تعلمها إن لم يكن مستحيلا فنلجأ لخيارات بديلة وهى إستخدام لغات البرمجة
مامعنى Programming Language ؟
بكل بساطة هى وسيلة للتخاطب مع الكمبيوتر .. ولكننا قلنا إن الكمبيوتر لايفهم اى شئ سوا ال0 وال 1 ومستحيل على الإنسان تعلمها! .. إذا الحل هو إستخدام لغات وسيطة .. على سبيل المثال واحد عربى وواحد فرنسى والعربى مش بيفهم فرنسى ولا الفرنسى بيفهم عربى .. فالحل هو إنهم يتكلمو إنجليمثل مثلا… او يجيبو مترجم بين الإتنين مش كدا ؟ فهنا الحل إننا هنجيب مترجم يترجم افكارنا للغة الكمبيوتر 0 و 1 ويقوم المترجم بنفس الدور بتحويل رد فعل الكمبيوتر الى لغتنا المفهومة :) وهنا دور ال Programming Language انت هتتعلم اللغة وكيفية التعامل معاها عشان تقدر تفهم المترجم “المقدم من اللغة” الذى إنت تريده وهو يفهمه للكمبيوتر بدوره
ماهو ال Source Code ؟
بكل اختصار هو حلك لمسألة رياضيات وتفكيرك وإستنتاجاتك عند كتابتها على ولكن هنا هو حلك لبرنامج مطلوب منك على ملف Text
Compiled vs Interpreted
كتير منا إشتغلو على نظم Windows وكان دائما يرى ملفات إمتدادها .exe فمامعنى ال exe ؟ معناها Executable او قابل للتنفيذ .. فى لغات برمجة مثل ال C و Pascal بيتوافر الناتج النهائى بتاع برنامجك على صورة ملف exe وهو عبارة عن تعليماتك اللتى مررتها للمترجم ليحولها للغة يفهمها للكمبيوتر ولكن فى صورتها النهائية (الكلام الذى اخبره المترجم لل كمبيوتر) فمستحيل على الإنسان إنه يقرا ذلك الملف وهنا معنى الcompiled فهى ملف ال exe يشمل التعليمات التى كتبتها ولكن بلغة الكمبيوتر وهو وحده القادر على فهمها
من مميزات ال Compiled Languages مثل ال C هى السرعة ومن القصور هو وجوب عمل Compile لل Source Code على النظام الموجه له البرنامج.. فبرنامج مكتوب على Windows محتاج يتعمله recompile على ال Linux وهكذا ..
من مميزات ال Interpreted Languages هى ان ال Source Code لبرامجها قياسى لايحتاج لعمل Recompile على مختلف النظم
ومن القصور البطء
ملحوظة:
البطء فى الInterpreted Languages بيكون المقصود البطء بالنسبة لل Compiled Language وليس البطء للمستخدم لأنك لن تلاحظ الفرق لأن البطء فى شئ لايكاد يذكر
{