لغة البرمجة بايثون، اللغة المناسبة لتعلم البرمجة

السلام عليكم ورحمة الله

قبل سنتين أو أكثر حاولت إستكشاف لغة بايثون التي أصبحت من اللغات التي حدثت لها قفزة كبيرة في الإستخدام. لكن في كل مرة لا أجد أداة تطوير أو محرر مناسب ممايجعلني أنسى الفكرة. لكن اﻹسبوع الماضي مر علي هذا الفيديو من شركة كانونيكال لشرح أداة التطوير quickly التي تستخدم لغة بايثون. ويظهر أن عندهم مسابقة لبرامج أوبونتو إسمها Ubuntu App Showdown

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

كذلك فهي تستخدم برنامج gedit لتحرير كود البايثون، ثم تقوم بربط الكود بالتصميم.

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

وهذا هو المتصفح البسيط الذي قُمت بعمله بمتابعة الفيديو خطوة بخطوة:

للأسف هذه اﻷداة مع إمكاناتها إلا أنها لا تُعتبر أداة تطوير متكاملة IDE، حيث لا بد لأداة التطوير المتكاملة أن تحتوي على محرر للكود، و منقح debugger، وواجهة تصميم تعمل كلها في بيئة واحدة في متناول اليد، مثل أدوات التطوير اﻷخرى: NetBeans, Lazarus, MonoDevelop.

اﻹعتماد على محرر الكود gedit لم يعجبني، فهو لايصلح لتعلم لغة بايثون، وتعليم اللغة يحتاج لمحرر به ميزات مثل تكملة الكود auto completion.

المشكلة الثانية في اﻷداة quickly أنها معتمدة على نظام أوبونتو، وبرامجها معتمدة كذلك على هذه البيئة، أو على اﻷقل فرع ديبيان في نظام لينكس، وهذا اﻹرتباط بنظام تشغيل واحد أو توزيعة واحدة يُقلل من عدد المستخدمين، فالمبرمجين الآن يعملون بأدوات تطوير تعمل في عدد كبير من المنصات وأنظمة التشغيل.

بعد الفراغ من تجربة أداة التطوير quickly و glade بحثت مرة أخرى في برامج أوبنتو فوجدت محرر آخر يُسمى geany، ويبدو أنه غير معتمد على لغة برمجة واحدة.

قمت بكتابة كود بايثون لقراءة ملف نصي وعرضه في الشاشة:

import datetime,os.path
print "hello world!"
today = datetime.datetime.now()
print str(today)

afilename = raw_input("Enter a filename: ")

if os.path.exists(afilename):

	f = open (afilename,"r")

	#Read file, line by line
	while 1:
		line = f.readline()
		if not line:
			break
		pass
		print line,
	# Close the file
	f.close()
else:
	print afilename +  ": Not found"

ذكرني هذا البرنامج بلغة البيسك في اﻷيام القديمة.

فكرت في أن لغة بايثون بسبب بساطتها وتوفرها يُمكن أن تكون خيار جيد لتعليم البرمجة، خصوصاً مع الطلاب اﻷصغر سناً، مثلاً مرحلة الثانوي. لي صديق يعمل مدرساً لمادة الحاسوب في المدارس الثانوية، سوف أطلعها عليه إن شاء الله.

نسيت أن أضيف أن هناك ظاهرة صحية لاحظتها في الفترة اﻷخيرة هي أن لغة بايثون حلت محل لغة سي القديمة في إنتاج برامج لنظام لينكس، بإعتبار أن لغة بايثون هي لغة جديدة وواضحة القراءة مقارنة بلغة سي التي أكل الدهر عليها وشرب.

About these ads

نبذة أبو إياس
مهندس برمجيات

27 Responses to لغة البرمجة بايثون، اللغة المناسبة لتعلم البرمجة

  1. sameh قال:

    السلام عليكم أستاذي العزيز
    بما أن لي خبرة في لغة البرمجة بايثون إليك بعض الملاحظات البسيطة
    لغة البرمجة بايثون تأتي منصبة جاهزة في لينكس
    يمكنهااختبار إذا كانت موجودة بكتابة python -v في terminal
    ثانياً من أفضل المحررات لا ستخدام هذه اللغة e macs أو pyscripter
    ثالثاً : توجد أداة تطوير رائعة SPE ide
    رابعاً: لغة بايثون ليست مناسبة لتعلم البرمجة فقط بل قوية جدا لكتابة البرامج
    خامساً : هناك العديد من مكتبات الواجهات الرسومية pyqtk gtk wxpython
    http://www.ojuba.org/wiki/docs/wxpython

  2. عدم وجود IDE متكاملة احترافية مثل الـNetBeans تدعم البايثون بشكلٍ مكثف هي المشكلة الرئيسة لها، و الإشكالية الأكبر أن مجتمعها لا يولي هذا الأمر الاهتمام الكافي (و ربما لا يفعل في المستقبل كذلك) رغم أن هذا الأمر لو تم سيجعل أناساً كثيرين يتحولون للبرمجة باستخدامها !

  3. أبو إياس قال:

    شكراً لك اﻷخ سامح على هذه المعلومات. الغريب وجدت أداة التطوير SPE ضمن البرامج المُثبتة، فقد قُمت بتحميلها من قبل، لكن لا أدري لِم لم أقم بإستخدامها. عندما فتحتها اﻵن لم أجد فيها مصمم للفورمات، فقط تحرير مصدر كود بايثون.
    يوجد شيء آخر لم أتبين منه بعد، وربما هذا أحد أسباب نفوري منها، أنها لغة script، تستخدم مفسر بياثون، فهل هذا هو الخيار اﻹفتراضي، أم يوجد طريقة لترجمة برامجها لإنتاج ملفات تنفيذية قائمة بذاتها ولاتحتاج لمفسر أو مترجم بايثون.

  4. أبو إياس قال:

    اﻵخ وائل، مارأيك في SPE

  5. sameh قال:

    هناك اداة تسمى py2exe رائعة فكرتها أنها تنشيء ملف تنفيذي يحتوي على كل مايحتاجه البرنامج يعمل فقط في ويندوز و هناك أداة أخرى للينكس
    http://www.py2exe.org/
    http://sourceforge.net/projects/py2exe/files/

  6. mansour قال:

    الشي الجميل انو له ابلكيشن بالايباد

  7. مما قرأته عنه أعتبره بداية قوية لـIDE متكاملة، و لو كان هناك فريق كامل يقف وراءه فأظن أنه سيصبح منافساً قوياً في المستقبل بإذن الله تعالي خصوصاً أنه اهتم بجزئية مصمم النوافذ GUI designer و التي أجد أن معظم بيئات البرمجة بالبايثون و الـC و الـ++C تُبالغ في إهمالها. لكن لا أدري هل يمكن الاعتماد عليه في المشاريع الكبيرة بكفاءةٍ أم يجب الانتظار بعض الوقت ليصل لهذه المرحلة.

    بالمناسبة هناك مترجم PyPy لترجمة أكواد البايثون لملفاتٍ تنفيذيةٍ تعمل منفردة، و هاك رابط الموقع الرسمي للمشروع:
    http://pypy.org/

  8. أبو إياس قال:

    تبقى سؤال، هل يمكن حمل برامج بايثون التي تستخدم واجهة رسومية معتمدة على مكتبة GTK إلى أنظمة أخرى؟ أم أنها مرتبطة فقط بنظام لينكس، أم يُنصح بإستخدام مكتبة رسومية أخرى

  9. sameh قال:

    wxpython هي المكتبة القياسية و إذا استخدمتها شغل برامجك حتى ولو على سطح القمر
    ولكن gtk تقريبا ليست مدعمة بالوجه الأمثل على windows أما qt و wxpython فيمكن استخدامها

  10. sameh قال:

    ولكن استاذي!!
    هل أعجيت ببايثون؟

  11. أبو إياس قال:

    نعم، كلغة تعليمية بسيطة. لكن لعمل برامج كبيرة فليس لدي خبرة في ذلك ولا استطيع اﻹجابة اﻵن، فلم أجد أداة تطوير مقنعة و متكاملة للغة بايثون مثلما توجد أدوات مثل NetBeans للجافا و Lazarus لفري باسكال.

  12. عبدالاله قال:

    أعتبر البايلثون من اقوى لغات السكريبتن..
    لكن مع الاسف الاقل سرعة في المردودية و الادا،, كما لا ارى استعمال تجاري لها۔

  13. أبو إياس قال:

    توجد بعض البرامج التجارية مثل OpenERP مكتوبة بلغة بايثون. لكن ليس لي علم بسرعته وأدائه

  14. Boubakr قال:

    مشكور أخي على مشاركة تجربتك الشخصية،
    أعتبر البايثون من أقوى اللغات و هي من المحببات إلي،
    شخصيا استخدم Eclipse مع PyDev لتطوير تطبيقاتي كما أنه يوجد Sublime Text مفيد جدا، أما بالنسبة للمبتدئين فشخصيا أنصح باستخدام VIM و دلك على يعتاد المطور على الكلمات البرمجية و يتمكن من حفظها.

  15. PhinoSoft قال:

    بايثون لغة رائعة وقوية جدا تمت برمجة برامج قوية بها مثل بلندر الغني عن التعريف ومع دلك فهي سهلة جدا هي لغتي المفظلة بعد الدلفي

  16. سلطان قال:

    يمكنك إستخدام هذا الأيدي وهو مخصص للبايثون http://eric-ide.python-projects.org/ يمكنه التكامل مع بيئة qt وتستطيع عمل تطبيقات سطح المكتب بسهوله يحتوي على كل ما تحتاجه وحتى ما لها تحتاجه ! بصراحه هو أداتي المفضله للتطوير بلغة البايثون http://eric-ide.python-projects.org/

  17. سلطان قال:

    صحيح نسيت أن أذكر رابط التورتيلا لعمل متصفح مثلا بسهوله بهذه الأداة http://eric-ide.python-projects.org/eric-tutorials.html

  18. أبو إياس قال:

    أذكر أني قُمت بتحميله من قبل، لكن شعاره المحتوي على شكل قبيح جعلني أنفر منه

  19. مطور أسعى لتعلم برمجة الألعاب قال:

    يكفي أن برنامج Blender تم عمله بلغة paython
    أظنك قد سمعت عنه برنامج حجمه 31 ميجا فقط يقارن ببرنامج 3D maX
    الذي حجمه أكثر من جيجا
    هذا موقع البرنامج http://www.blender.org
    بصراحه لقد أعجبت بهذه اللغة بسبب البرنامج فلو إطلعت على البرنامج والأعمال السينمائية التي أستخدم فيها لدهشت بهذه اللغة..!
    ولكن السؤال هل هذه اللغة تستطيع العمل بدون منصة ..! أعني عمل نظام تشغيل لوحدها

  20. أبو إياس قال:

    حسب تعريف لغة بايثون في ويكيبيديا:
    Python is a general-purpose, interpreted high-level programming language
    فهي في الأساس لغة معتمدة على مفسر interpreter وليس مترجم compiler
    مثلها مثل لغة php. لكن سمعت أنه يُمكن أن يتم إصدار برنامج تنفيذي للبرامج المكتوبة بواسطتها. لكن يبدون أن هذا ليس الخيار الطبيعي والتلقائي في إنتاج برامج بايثون، حيث أن طبيعتها أن تكون لغة scripting

  21. تنبيه: إحصاءات المدونة لعام 2012 « مدونة أبو إياس

  22. محمد2000 قال:

    اخواني ممكن أستفسر أنا مبتدء في البرمجه وأتبع شرح لكتاب عن البايثون وأستخدم نظام ويندوز7 الكتاب يشرح على اللينكس والويندوز لكن في مرحلة طلب اني افتح text editor او vim لكن أعتقد إن هذي تخص نظام لينكس لا أعلم ما هذه لاني لم أكمل حتى اجد حل او بديل عن text editor او vim أرجو المساعده

  23. أبو إياس قال:

    في وندوز يُمكنك استخدام notepad

  24. shadi قال:

    السلام عليكم أخواني أنا مبتدء بلغة البرمجة وهاد تخصصي بالجامعة وراح أبدأ كمان أسبوع وراح نتعلم على برنامج البايثون
    في كتب باللفة العربية تسهل علي الدراسة وتقويني بلغة البرمجة باثيون
    علما بأني بأدرسها باللغة الألمانية :(

  25. أبو إياس قال:

    وعليكم السلام
    هذا كتاب باللغة العربية اتمنى أن تستفيد منه:
    http://librebooks.org/learn_programming_with_python3/

أضف تعليق

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

You are commenting using your WordPress.com account. تسجيل الخروج / تغيير )

Twitter picture

You are commenting using your Twitter account. تسجيل الخروج / تغيير )

Facebook photo

You are commenting using your Facebook account. تسجيل الخروج / تغيير )

Google+ photo

You are commenting using your Google+ account. تسجيل الخروج / تغيير )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 56 other followers

%d bloggers like this: