ما هي لغة بايثون وما الذي تستطيع القيام به بواسطتها؟

بايثون هي لغة برمجة مرنة تستخدم مترجم فوري Interpreter تدعم برمجة الكائنات Object Oriented والتي يمكن استخدامها في الكثير من مجالات تطوير البرامج, كما من الممكن مكاملة هذه اللغة مع لغات وأدوات أخرى, كما إنها تأتي مع مكتبة ضخمة ومفصلة من الدوال. ومن الممكن تعلم بايثون خلال أيام معدودة. الكثير من مبرمجي بايثون يؤكدون إن هذه اللغة تعطيهم الدافع لكي يكونوا أكثر إنتاجية ويشعرون بأن اللغة تشجعهم على تطوير أدوات بجودة عالية وكتابة كود يمكن إدارته بشكل أفضل.

هذا هو تعريف لغة بايثون من موقع بايثون الرسمي نفسه, وهنالك أكثر من مجرد هذا التعريف مثل إن لغة بايثون وجميع أدواتها مجانية بالكامل ومفتوحة الشفرة المصدري Open Source وتشرف على تطويرها مؤسسة بإسم Python Software Foundation مؤلفة من مجموعة كبيرة من المبرمجين الأحرار الذين يعملون على هذه اللغة طوعاً بلا أجور. في الحقيقة أنت تستطيع أن تنظم إلى هذه المؤسسة إذا كنت تمتلك الخبرة المطلوبة ومن أي مكان في العالم.
تعمل بايثون على Windows, Linux/Unix, Max OS X, OS/2, Amiga, Palm Handhelds وحديثاً Nokia Mobile Phones مما يعني إنك تستطيع كتابة برامج بايثون وتنفيذها بإستخدام تلفون محمول من نوكيا يدعم سيمبيان Symbian مثل 6600, 7610, 6630 لا غير!
بايثون لك:
إذا كنت تقوم بعمل كثير على الكومبيوتر, في وقتٍ ما ستجد إن هنالك الكثير من الوظائف التي تريد أتمتتها, مثلاً إذا كنت ترغب في البحث عن وإستبدال نصوص في عدد كبير من الملفات, أو تعيد تسمية وترتب مجموعة كبيرة من الصور بطريقة خاصة, أو من الممكن إنك تريد أن تكتب نظام قواعد بيانات صغير خاص بك, أو برنامج ذو واجهة رسومية يعمل على أي نظام تشغيل, أو لعبة بسيطة...
أما إذا كنت مبرمج محترف, وقد عملت سابقاً على ++C/C و Java مثلاً وقد وجدت إن عملية كتابة ثم ترجمة ثم فحص ثم إعادة الترجمة ثم إعادة كل شئ مرة أخرى كانت بطيئة جداً. أو من الممكن أنك تكتب حزمة لفحص مكتبة معينة test suite وقد وجدت إن كتابة الشفرة الفاحصة عملية معقدة وصعبة. أو من الممكن أنك قد كتبت برنامجاً واحتجت لغة خاصة لكتابة توسعات برمجية وكنت لا ترغب في تصميم وكتابة لغة برمجة من الصفر (وهي عملية قد تأخذ وقتاً طويلاً)...
...فإن بايثون هي الحل لك!
حيث إنها سهلة الإستخدام ومع ذلك فإنها لغة برمجة حقيقية توفر هيكل مناسب تماماً لكتابة برامج ضخمة ومعقدة مثلما هو مناسب لكتابة برامج صغيرة, كما إنها تعطي معلومات كاملة عن الأخطاء البرمجية التي تحدث مما يجعل من تصليح هذه الأخطاء عملية أسهل بكثير من لغة C مثلاً. وبما إنها لغة برمجة عالية المستوى جداً فإنها توفر أنواعاً متقدمة جداً من كتل البيانات مثل المصفوفات المرنة والقواميس.
كما إن بايثون اللغة نفسها قابلة للتوسيع, أي إذا كنت تعرف البرمجة بلغة C ستستطيع كتابة أي توسعة ترغب فيها لبايثون.

رغم بساطتها في العمل والتطوير إلاّ إن بايثون قد تم إستعمالاها في مجالات كثيرة جداً, بالأساس طبعاً كتابة برامج قابلة للتوزيع,ويمكن إستخدامها كنص برمجي يستخدمه برنامجك الرئيسي, كما يمكن إستخدامها للحسابات العددية, وكذلك لفحص الأنظمة,...
تجمع بايثون قدرات لغات Tcl, Perl, Java, JavaScript, VisualBasic, Scheme في حزمة واحده, وهي فوق ذلك أسهل إستخداماً وأكثر إنتاجية من جميع هذه اللغات, كما إنها تعتبر أحد لغات البرمجة القليلة التي وصفت بأنها لغة برمجة عالية المستوى جداً Very High Level Programming Language.
هنالك عدد هائل من المجالات العملية التي تم إستخدام بايثون فيها, تصوّر أن وكالة الفضاء الأمريكية NASA تستخدم لغة بايثون! إضافة إلى عدد كبير من الشركات والمؤسسات العملاقة ولجميع المجالات والإختصاصات.

تطوير الويب:
تقدم بايثون مدى كبير من الخيارات لتطوير الويب:

* كتابة نصوص CGI الأساسية.
* أطر العمل مثل Django و TurboGears.
* حلول متقدمة وعالية المستوى مثل Zope.
* أنظمة إدارة محتويات متقدمة مثل Plone.

أما لحلول الويب المتخصصة والتطبيقات الأخرى المرتبطة بالإنترنت:

* دعم كامل لـ XML.
* معالجة البريد الإلكتروني.
* معالجة الـ RSS Feeds.
* دعم للكثير من بروتوكولات الإنترنت.

قواعد البيانات:

* واجهة ODBC متخصصة لـ MySQL, Oracle, MS SQL Server, PostgreSQL, SybODBC, وآخرين متوفرين للتنزيل مجاناً.
* واجهة قواعد البيانات القياسية Standard Database API.
* قواعد بيانات للكائنات Object Databases مثل ZODB و Durus.

برمجة الشبكات:
بايثون تقدم الدعم لبرمجة الشبكات المنخفضة المستوى:

* واجهة سوكت Socket سهلة الإستخدام.
* Twisted Python, إطار عمل يتيح برمجة الشبكات الغير متزامنة asynchronous network programming.

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

* SCon للتحكم بالبناء.
* BuildBot و Apache Gump للبناء والفحص المستمر والمؤتمت.
* Roundup و Trac لتتبع المشاكل وإدارة المشروع.
* Integrated Development Environment IDE

ومن الدورات الموجودة على موقعنا هذه الدورة من موقع تكناوي

 بالفيديو : دورة أساسيات البرمجة بلغة بايثون في 21 درسا - موقع تكناوي

المقال منقول بتصرف

Share |

معلومات إضافية