• 0
مصطفى 36a2

رابط : لماذا Python هي أفضل (أوّل) لغة برمجة للمبتدئين

سؤال

مقال أجنبي جميل , يتحدث عن ميزات بايثون فضلاً عن سهولتها ..

أترككم مع المقال 

http://www.mihneadb.net/post/python-the-best-first-programming-language/

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

1 إجابات على هذا السؤال .

  • 0

هذه ترجمة للمقال مع بعض التعديل:

 

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

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

هذا مثال لبرنامج بايثون:
 

def contains(numbers, value):    for n in numbers:        if n == value:            return True    return Falsenums = [1, 2, 3, 7, 13, -2, 4, 8, 9]result = contains(nums, 7)print result # True

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

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

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

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

3 < x < 10

مباشرة بينما في C قد تحتاج لكتابة:
 

3 < x && x < 10

أو استخراج الأعداد الفردية في مصفوفة وبسطر واحد:
 

numbers = [1, 2, 3, 4, 5, 6, 7, 8]evens = [x for x in numbers if x % 2 == 0]

أخيراً، قابلية القراءة ميزة بايثون، في لاتستخدم الأقواس { } بل تستخدم بل المسافات وعلامات الـTab، وهذا يجبر المبتدئ على كتابة كود منسق يسهل على الآخرين وعليه قراءته. وتستخدم أيضاً الكلمات مثل (and، و or و True و False) بدل الرموز كما في اللغات الأخرى، ممايقربها للأكواد المستخدمة في التعبير عن الخوزميات pseudocode.

قارن هنا واسأل نفسك أي الكودين أسهل للقراءة؟:

كود C:
 

is_even = (a % 2 == 0) ? 1 : 0;

كود بايثون:
 

is_even = True if a % 2 == 0 else False

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

أرى أن بايثون اللغة الأنسب لتعليم البرمجة، فسهل أن يتعلمها المبتدئ، ولكنها قوية، وتعجله يركز على البرمجة بدلاً من تفاصيل الكمبيوتر، بسبب سهولة كتابة البرامج بها وسهولة قراءة البرامج التي كتبت بها.

تم تعديل بواسطه Mr.B
8

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .