الخميس، 6 مارس 2014
5:31 ص

كل ماتود معرفته عن لغة البايثون




لغة البايثون هي لغة برمجة مرنة تستخدم مترجم فوري Interpreter تدعم برمجة الكائنات Object Oriented يمكن استخدامها في تطوير البرامج, ويمكن ان تستكمل مع لغات وادوات اخرى, كما لديها مكتبة ضخمة تحوي مجموعة كبيرة من الدوال المفصلة.
 هي لغة سهلة اي من الممكن تعلمها خلال أيام معدودة. (هذ التعريف منقول من موقع بايثون الرسمي نفسه) وهنالك أكثر من تعريف لهذه اللغة.
 جميع أدوات البايثون مجانية بالكامل ومفتوحة المصدر Open Source وتشرف على تطويرها مؤسسة بإسم Python Software Foundation مؤلفة من مجموعة كبيرة من المبرمجين الأحرار الذين يعملون على هذه اللغة بدون أجور. في الحقيقة أنت تستطيع أن تنضم إلى هذه المؤسسة إذا كنت تمتلك الخبرة المطلوبة ومن أي مكان في العالم.
تعمل بايثون على Windows, Linux/Unix, Max OS X, OS/2, Amiga, Palm Handhelds وحديثاً Nokia Mobile Phones . أما بالنسبة لرخصة إستخدام بايثون فهي بسيطة القوانين تضع لغة بايثون القليل من العوائق للإستخدام. حقوق النسخ لمعظم ملفات الشفرة المصدرية لبايثون هي لمؤسسة برامج بايثون PSF, عدد قليل من ملفات الشفرة المصدرية يمتلك حقوق نسخ مختلفة, ولكن كل شفرة بايثون المصدرية تنطبق عليه نفس رخصة الإستخدام.
هذه هي المزايا الأساسية لرخصة بايثون. ولكن هذه المزايا لا تمثل الموقف القانوني الكامل؛ ولكنك تستطيع قراءة الرخصة الكاملة الأصلية من هنا وتستطيع الإستعانة بمساعدة جهة مؤهلة قانونياً لكي تفهم شروط الرخصة في حالتك. (لا تكترث بهذه لأنها خاصة بالمؤسسات القانونية)
مزايا وشروط بايثون:
بايثون مجانية بالكامل لجميع الإستخدامات من ضمنها الإستخدام التجاري وإعادة البيع, أي إنك من الممكن أن تبيع منتج مكتوب بإستخدام بايثون أو منتج يستخدم مترجم بايثون Python Interpreter, من دون أن تدفع أي تكاليف للمؤسسة.
حركة الشفرة المصدرية المفتوحة Open Source Initiative صدقت على رخصة بايثون بأنها شفرة برمجية مفتوحة Open Source, وقد وضعتها في قائمتها للشفرات المصدرية المفتوحة.
ليس هنالك عوائق مشابهة للعوائق التي تضعها رخصة GPL, توزيع نسخ مبنية (binary) من بايثون سواء كانت بايثون الأصلية أو بايثون معدلة مسموح به من دون الحاجة لنشر أي من شفرتك البرمجية. كما يمكنك أيضاً كتابة إضافات برمجية Extension modules للغة بايثون وتوزيع هذه الإضافات في شكلها التنفيذي (binary) من دون الشفرة المصدرية.
ولكن مع ذلك فإن رخصة بايثون متوافقة مع GPL, حسب مؤسسة البرامج الحرة Free Software Foundation.
لا يمكنك أن تزيل حقوق الطبع الخاصة بمؤسسة برامج بايثون من الشفرة المصدرية أو البرامج التنفيذية الناتجة.

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

أما إذا كنت مبرمج محترف, وقد عملت سابقاً على ++C/C و Java مثلاً وقد وجدت إن عملية كتابة ثم ترجمة ثم فحص ثم إعادة الترجمة ثم إعادة كل شئ مرة أخرى كانت بطيئة جداً. أو من الممكن أنك تكتب حزمة لفحص مكتبة معينة test suite وقد وجدت إن كتابة الشفرة الفاحصة عملية معقدة وصعبة. أو من الممكن أنك قد كتبت برنامجاً واحتجت لغة خاصة لكتابة توسعات برمجية وكنت لا ترغب في تصميم وكتابة لغة برمجة من الصفر (وهي عملية قد تأخذ وقتاً طويلاً)...    فإن بايثون هي الحل لك!

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

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



رغم بساطتها في العمل والتطوير إلاّ إن بايثون قد تم إستعمالاها في مجالات كثيرة جداً, بالأساس طبعاً كتابة برامج قابلة للتوزيع,ويمكن إستخدامها كنص برمجي يستخدمه برنامجك الرئيسي, كما يمكن إستخدامها للحسابات العددية, وكذلك لفحص الأنظمة,...

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

هنالك عدد هائل من المجالات العملية التي تم إستخدام بايثون فيها, تصوّر أن وكالة الفضاء الأمريكية NASA تستخدم لغة بايثون! إضافة إلى عدد كبير من الشركات والمؤسسات العملاقة ولجميع المجالات والإختصاصات.

تستطيع أن تجد الكثير الآلاف من توسعات بايثون البرمجية Modules في Python Package Index.


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

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


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

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


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

أنظمة واجهة مستخدم Desktop GUIs:


  • مكتبة Tk لتطوير برامج تستخدم واجهة المستخدم موجودة أصلاً مع أكثر توزيعات بايثون المبنية.
  • wxWidgets
  • +GTK
  • Qt
  • MFC عبر win32 extension.
  • Delphi

التطبيقات العلمية والرياضية:

  • Bioinformatics
  • Python course in Bioinformatics
  • Physics

تطوير البرمجيات:

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


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

تطوير الألعاب والرسومات الثلاثية الأبعاد:

  • قائمة من الألعاب في صفحة بايثون العامة.
  • PyGame و PyKyra اثنين من أطر عمل بايثون المتخصصة في تطوير الألعاب.
  • قائمة من مكتبات التصيير الثلاثي الأبعاد المتوفرة لبايثون.
  • PyWeek هي مسابقة شبه سنوية لتطوير الألعاب بإستخدام بايثون

وهذه مجموعة من كتب البرمجة بلغة بايثون اخترناها لكم آملين في المولى عز وجل ان تكون خير معين
لكم في مسيرتكم العلمية ذات فائدة
 
التحميل من هنا

0 التعليقات: