• الإعلانات

    • فيصل الحربي

      تسجيل عضوية جديدة في المنتدى   01/31/2016

      السلام عليكم ورحمة الله وبركاته  عزيزي العضو الجديد :  حاليا رسالة الإيميل لتأكيد صحة إيميلكم تذهب للبريد العشوائي ( جاري حل المشكلة )  فإذا لم تجد رسالة التحقق من إيميلكم في صندوق الوارد لديكم إتجه للبريد العشوائي ( JUNK)  وقم بتفعيل إشتراككم من هناك   

SamCode

اعضاء جدد
  • عدد المشاركات

    23
  • تاريخ الانضمام

  • تاريخ اخر زياره

كل شيء نشر بواسطة SamCode

  1. عليكم السلام ورحمة الله و بركاته   يمكنك استخدام لغة Boo , فهي شبيهة بلغة البايثون, https://github.com/bamboo/boo/wiki/Gotchas-for-Python-Users   لمزيد من المعلومات يرجى زيارة الموضوع التالي : http://forum.unity3d.com/threads/1374-Is-Boo-Python
  2. سؤال : خاص لمطوري الويب في بايثون ,.

    إضافة إلى ما تم ذكره من قبل اﻷخوة: إطار الويب عكاشة
  3. استخدمه منذ عدة سنوات كمحرر أساسي في التيرمنال و إلى الان. و أجده أفضل محرر في وضع التيرمنال (جربت سابقا emacs و nano , أرى vim أسهل و أسرع منهما) و استخدمه أيضا كمحرر أساسي عند التدريب على نظام ليونكس في أحد المقررات التي لدينا بالكلية (مطفش طلابي فيه ^_^)
  4. برمجة Iphone

    عليكم السلام ورحمة الله و بركاته شاهد الروابط التالية : http://www.arabteam2...1 http://www.arabteam2...1 http://www.arabteam2...1 http://www.arabteam2...1
  5. لماذا يظهر هذا الخطأ في DataRow

    ضع السطر : System.Data.DataRow row=dt.NewRow(); بعد : dt = ds.Tables["TableName"]; بمعنى يكون الكود هكذا : dt = ds.Tables["TableName"]; System.Data.DataRow row=dt.NewRow(); ﻷن المشكلة لديك DataTable لم يتم تعين أعمدة فيها بعد, لذا لا يمكن انشاء صف جديد من دون انشاء الاعمدة
  6. استخدم الأمر sleep لمزيد من المعلومات : http://linux.about.c...cmdl1_sleep.htm sleep 2s ايقاف لمدة ثانتين sleep 2m ايقاف لمدة دقيتين sleep 2h ايقاف لمدة ساعتين sleep 2d ايقاف لمدة يومين
  7. كيفة ربط مشروعين في c#?

    عليكم السلام ورحمة الله و بركاته تحتاج اضافة Reference لمشروع الثاني application2 في المشروع الأول application1, ومن ثم الوصول الى Form كتالي بافتراض ان اسماء المشاريع هي application1 و application2: application2.Form1 f = new application2.Form1(); و لإضافة reference أعمل ما يلي: 1/ في application1, إضف Reference و ذلك من خلال قائمة Project اختر (Add Reference) أو بالنقر بالزر الأيمن على اسم المشروع application1 و اختر (Add Reference) 2/ اختر توبيب (Projects) , واختر المشروع الثاني , ومن ثم OK
  8. لم استفيد الكثير !

    السلام عليكم ورحمة الله و بركاته انصحك أخي الكريم بالكتاب التالي : Beginning Python: Using Python 2.6 and Python 3.1 - By James Payne - Worx الكتاب من وجهة نظري يعتبر مدخل ممتاز الى البرمجة و لغة Python.
  9. PyCon 2011

    السلام عليكم ورحمة الله و بركاته في التاسع من شهر مارس لهذا العام (2011) لقد بدأ مؤتمر مجتمع البايثون السنوي (PyCon 2011: Connecting The Python Community) المقدم من قبل (Python Software Foundation) و عقد في أتلانتا، جورجيا في الولايات المتحدة , و يتهم في مواضيع حول ما يتلعق بلغة البرمجة (Python). لمشاهدة الجلسات التي عقدت في هذ المؤتمر, شاهد على هذا الرابط و هذه قائمة لبعض الجلسات : PyCon 2011: The Data Structures of Python PyCon 2011: Python 3: the next generation is here already PyCon 2011: Running Django Apps on Google App Engine PyCon 2011: Backup Is Hard; Let's Go Shopping جميع جلسات المؤتمر تحت ترخيص : لحفظ احد الجلسات, انقر على (Files and Links) و اختر نمط الفيديو المراد حفظه. الموقع الرسمي لمؤتمر هذه السنة. و جدولة الجلسات. أتمنى لكم متابعة مفيدة ان شاء الله دمتم سالمين :)
  10. لقد كنت دائما أتسأل لماذا كان مغلق المصدر رغم دعمه لبرامج مفتوحة المصدر. و لم أكن أتوقع أنه كان يستخدم لغة Python أعجبني الخبر و أعجبني أكثر المستند (Using the Allura Platform to Create Your Own Forge). لتحميل المستند (PDF, PPTX) دمتم سالمين
  11. لقد اعلن مجموعة التطوير الرسمية لغة البايثون (CPython), تبديل نظام التحكم باﻷصدارات (source control) من Subversion إلى Mercurial . و يقول (Eli Bendersky's) (الذي أصبح مؤخرا أحد المبرمجين في المجموعة الرسيمة لتطوير لغة Python) في مدونته : المصدر و المزيد من التفاصيل دمتم سالمين :)
  12. كتاب مجاني عن الإحصاء مستخدماً Python

    +1 جزاك الله خير على هذا الكتاب أخي محمد. لمزيد من الكتب المجانية من قبل دار النشر (Green Tea)
  13. Python development switches to Mercurial source control

    لم أتعمق في استخدام git و hg كثيرا , و لكن من خلال قرائتي لمقارنات ما بينهما فوجهة نظري هي أن الاختيار يعتمد على: - المنصة او نظام التشغيل الذي تعمل عليه, اذا كنت تستخدم انظمة (Uinx-like System) فقط, فنظام Git أفضل من mercurial و ذلك من حيث الاداء, و لكن في نظام MS Windows العكس ﻷن git لا يكون اداءه مثلما هو في لينكس مثلا. اما كنت تعمل على عدة انظمة تشغيل (مثلا ويندوز و لينكس) فنظام Hg يكون هو الخيار المناسب. - سهولة التعلم و الاستخدام, فنظام mercurial افضل من git في هذا, و لكن من الجهة اﻵخرى فنظام git يقدم (lower-level commands) أكثر من hg. دمتم سالمين :)
  14. Python development switches to Mercurial source control

    يبدو انا الذي استقيظ من سبات عميق لكن على العموم انا متابع لمدونة (Eli Bendersky's) و هو الذي كتب الخبر اليوم . و أحببت نقله هنا لفائدة و لتشجيع الأخوة لتجربة mercurial :). و اعتذر لجميع.
  15. DreamPie

    السلام عليكم و رحمة الله و بركاته Dream Pie The Python shell you've always dreamed about! هو عبارة عن (Python Shell) رسومية تفاعلية متعددة المنصات, صممت لتكون صدفة موثوفة و ممتعة و اكثر فعالية لتعامل مع مفسر اللغة مباشرة. و هذه الصدفة هي حرة و مفتوحة المصدر و مرخصة تحت ترخيص GPL 3. ومن مميزات هذه Shell هي: - النافذة مجزئة إلى قسمين, الأولى هو جزء (History Box) و يعرض فيه اﻷكواد و مخرجاتها, و الجزء اﻵخر هو (Code Box) وظيفته هو إدخال الاكواد ومع إمكانية التنقل بين اﻷكواد المدخلة مسبقا. - سهولة عمل نسخ ﻷكواد و ذلك من خلال خاصية (Copy only code) التي تنسخ فقط الكود من دون مخرجاته و ذلك عند تحديد عدة أسطر تشمل الاكواد و المخرجات. - عرض و إكمال تلقائي لوسائط الدوال و مع التوثيق و اسماء الملفات. - إمكانية إخفاء (fold) و إعادة عرض المخرجات ذات اﻷسطر العديدة (مثلا طباعة اﻷعداد من 1 الى 100) - إمكانية حفظ الجلسة على هيئة ملف من النوع (HTML) ومع إمكانية إعادة تحمليها مرة آخرى. - دعم التفاعل مع (Matplotlib) - دعم إصدارت لغة Python و هي (2.5, 2.6, 2.7, 3.1) و Jython 2.5 و IronPython 2.6. - تعمل على Windows و Gnu\Linux و Mac (في Mac تتطلب MacPorts). وهذه بعض الصور: واجهة Shell الموقع الرسمي : http://dreampie.sourceforge.net خطوات إعداد DreamPie مع IronPython لقد أعجبتني هذه الصدفة كثيرا , و من وجهة نظري أراها أكثر انتاجية من Shell الافتراضية و IDLE, و إمكانية حفظ الجلسات مهمة بالنسبة لي (ﻷني ذاكرتي ...... ). دمتم سالمين
  16. SUN solaris

    عليكم السلام ورحمة الله و بركاته نعم يمكنك ذلك, ولكن بإتباع طريقة التنزيل الصحيحة. لقد جربت إصدار النظام (SUN solaris Developer) [ و ذلك بتركيبها بجانب كل من Windows visat و PCLinux2007 ] قبل سنتين , فبيئة سطح المكتب (Java Desktop) كانت جيدة, أيضا كان من ضمن البكج solaris Studio :) Java Desktop و أتمنى لك التوفيق
  17. السلام عليكم و رحمة الله و بركاته كل عام و انتم بخير :) سوف نتحدث في هذا الموضوع بتعريف ﻹطار عمل (GNU Gettext) و كيفية استخدامه في لغة (PHP) و ذلك لدعم تعدد اللغات في تطبيقات الويب. ماهو GNU Gettext؟ هو عبارة عن إطار عمل يساعد المبرمجين و المترجمين و المستخدمين من دعم التطبيقات بعدة لغات بطريقة قياسية و ذلك مما يساعد انتشار استخدام التطبيق, و تم استخدام هذا اﻹطار في الكثير من برامج مفتوحة المصدر مثل (WordPress). و طريقة عمله أن يجهز المبرمج التطبيق لدعم الملفات الخاصة بقواميس اللغة في اﻹطار و من ثم يقوم المترجم بتعامل مع ملفات قواميس اللغة دون الاحتكاك في برمجة التطبيق. و ملفات قواميس اللغة في إطار عمل gettext هي: ملف .pot اختصاراً (Portable Object Template) : يحتوي على كافة النصوص التي مراد ترجمتها من الكود في التطبيق و ذلك لتجهيز الملف التالي.ملف .po اختصاراً (Portable Object) : ملف نصي يحتوي على نص اللغة اﻷصلية في المشروع مع تجهيزه لترجمة للغة المضافة للتطبيق. يتم إنشاءه بعد الملف السابق, و يمكن من خلاله ترجمة التطبيق بواسطة تحريره.ملف .mo اختصاراً (Machine Object) : هو ملف ثنائي منتج بعد عملية ترجمة (compiled) ملف po, و هو الملف المستخدم في التطبيق لعرض النصوص بلغة المحددة. و لعمل ملفات قواميس الترجمة لمشروعك أو ترجمة مشروع موجود, يتم استخدام أحد أدوات رسومية لهذا ىالغرض مثل poedit و gted. و طريقة استخدام برنامج poedit تجدها في (مدونة مبدع). عند طباعة النصوص في المشروع نجعل النص وسيط لدالة (gettext) و التي بدورها تكون وسيطاً لدالة (printf) كالتالي: printf(gettext("Welcome World")); حيث يكون النص هنا النص للغة الافتراضية (العربية أو الانجليزية) وسوف يتم طباعته كما هو في حالة عدم اختيار لغة آخرى, و عند اختيار لغة آخرى فسوف يتم استبدال النص الموجود في دالة (gettext) بنص المرادف لجملة في ملف .mo. و يمكن استبدال كلمة (gettext) بأي رمز مثل (_) أو (e_) و ذلك اختصاراً لكتابة اسم الدالة, و يجب تحديد هذا الاختبار عند إنشاء ملفات اللغة بأحد أدوات مثل poedit. printf(_("Welcome World")); تجهيز المشروع لدعم تعدد اللغات عند الانتهاء من طباعة كافة النصوص, نقوم بفتح أحد الأدوات الخاصة بترجمة و بأتباع خطوات الأداءة سوف يتم سحب كافة النصوص و تجيزها لترجمتها بصيغة ملفات ,po. مسار وضع ملفات اللغات ﻷستخدامها في المشروع يكون كالتالي: languages |_____ar_SA | |________LC_MESSAGES | |_________ msg.po | |_________ msg.mo |_____en_US |________LC_MESSAGES |_________ msg.po |_________ msg.mo حيث أن نعمل مجلد رئيسي للغات بأي اسم (هنا اخترنا languages) و نشئ مجلدات داخلية باسم اللغات و بداخلها مجلد باسم (LC_MESSAGES) و بداخله ملفات اللغة, حيث أن اسم يستخدم فيما بعد بأسم المجال (domain) استخدام GNU Gettext في لغة PHP إطار عمل gettext مدعوم في العديد من اللغات مثل C, Java, Python و أيضاً PHP . و ﻷستخدامه نحتاج لكل من الدوال التالية: 1- دالة (setlocale): وظيفة هذه الدالة هي تمكننا من تحديد معلومات المحلية (local information) مثل اللغة و الوقت لمنطقة الجفرافية المحددة و التي ىيتم تحديدها بتحديد اسم اللغة مثل (ar-SA) تمثل اللغة العربية – المملكة العربية السعودية و (en-US) اللغة الانجليزية – الولايات المتحدة اﻷمريكية. setlocale(constant,location) حيث أن : - الوسيط (constant): يمثل ما هي المعلومات المراد تحدبدها من المعلومات المحلية (local information), ويتم وضع الثابت (LC_ALL) و لذلك يعني كافة المعلومات. - الوسيط (location): يثمل الموقع الجفرافي (أو بمعنى هنا تحديد اللغة المستخدمة), مثل (ar-SA), ولدعم uincode نضع القيمة هكذا : ("ar-SA.utf8″). setlocale(LC_ALL,"ar-SA.UTF-8"); 2- دالة (bindtextdomain): وظيفة هذه الدالة نحدد مسار ملفات اللغة و اسم المجال (أي اسم نحدده, ويجب أن يكون نفس اسم ملفات اللغة). $domain = 'mydomain'; bindtextdomain($domain, '/usr/share/mydomain/locale'); 3- دالة (textdomain): وظيفة هذه الدالة ان نحدد المجال الافتراضي ( default domain ) المستخدم في المشروع. textdomain($domain); مثال على الاستخدام // setting gettetxt setlocale(LC_ALL, $lang.'.UTF-8'); $domain = "sami"; bindtextdomain($domain, './languages'); textdomain($domain); بعد تهيئة المشروع ﻷستخدام getext و استدعاء ملفات اللغة, سوف نرى اﻻن طريقة استعماله: <?php printf(gettext("BLOG"));?> <?php printf(_("WELCOME"));?> و اتمنى لكم التوفيق
  18. السلام عليكم ورحمة الله و بركاته هذه مجموعة من البودكسات التي أتابعها و انصحكم بذلك: عربية: Free Talk Weekly أردرويد كاست نبضات تقنية نصائح التدوين الصوتي ---------------------------------------------------------------- إنجليزية : Linux Outlaws java world FLOSS Stack Overflow podcast Awaretek: مهتمة في لغة البرمجة Python شاركنا بقائمتك لتعم الفائدة لجميع :)
  19. +1 حياك الله أخي محمد عرسان :) أسف لم انتبه لقسم الفرعي و ذلك ﻷني رأيت الموضوع من خلال قائمة (آخر المواضيع المضافة) و أعتذر لجميع اﻷخوة عن ذلك
  20. اذا كنت تعني بشاشة : splash screen التي تفيد المستخدم ما يتم تحميله عند بدء التشغيل سوف يفيدك هذا المثال: How to implement a splash screen for an application
  21. سؤال لمحبي البايثون؟!

    في الحقيقة هذا الموضوع يزعجني عندما استخدام لغة Python, و عند تشعب جمل IF حلقات FOR و WHILE, أكتب تعليق يفيد بنهاية البلوك كالتالي: for r in range(20): c = 0 m = 0 x = 1 while c < 20: if(m == 4): m = 0 prow.append(x) x = 1 #end if if (20 - c) < 8: break for i in range(c, (c + 8), 2): x = x * int(n[r][(i) : i + 1]) m = m + 1 s = s + int(n[r][i : i + 2]) t.append(int(n[r][i : i + 2])) #end for ( i ) c = c + 1 #end while ( c ) #end for ( r ) ولكن استخدم خاصية Code Folding في Editor أو IDE لمساعدة في هذه المشكلة مع التعليقات
  22. حياك الله أخي herch :) الله يعيطك العافية على إضافتك الرائعة :). اتفق معك بأن باستخدام ملفات (ini) اسهل في عملية الترجمة من عمل ملفات القواميس بلغة PHP. ولكن هذا يتطلب من المبرمج وضع مختصر الجملة (الذي هو key في ملف ini) أثناء التطبيق ومن ثم كتابة كل جملة (Value) مقابل كل مختصر او المفتاح (Key). , عند استخدام إطار عمل GNU Gettext فأن المبرمج يقوم بكتابة الجملة مرة واحدة للغة الافتراضية للتطبيق, ومن ثم تكون عملية تجميع كافة النصوص في المشروع عملية آلية و تجيهزها في ملف pot. و الذي بدوره يستخرج منه المترجم ملف po لترجمة الملف. و أتمنى لك التوفيق
  23. الله يبارك فيك أخي bastr3 :). الله يعطيك العافية على مداخلتك الطيبة. اتفق معك أخي بأنها طريقة أطول من الطريقة التي وضعتها, و لكن بطريقة التي ذكرتها من الممكن أن يجعل المبرمج كل لغة لها ملف مستقل و يقوم بتعريف الجمل على شكل ثوابت أو مصفوفة كالتالي: // en.php define('WELCOME_MSG') = "Welcome"; // By using constant $Text['Welcome'] = "Welcome"; // By using array // ar.php define('WELCOME_MSG') = "مرحبا"; // By using constant $Text['Welcome'] = "مرحبا"; // By using array ولكن هذه الطريقة يعيبها عدم كونها قياسية (كل مبرمج يمكن يعمل قاموس مصطلحات تطبيقه بطريقة التي يراها مناسبه) و هذا مما يقيد المستخدمين العادين من ترجمة التطبيق للغات آخرى, و ذلك بسبب من الممكن أن يخطئ المستخدم العادي الغير ملم بلغة PHP ببعض اﻷخطاء اللغوية في لغة PHP عند الترجمة (مثل نسيان ; :) وذلك بمسحها عن طريق الخطأ ومن ثم لا يعرف الخطأ أين). أما من جهة استخدام طريقة GNU Gettext, الطريقة قياسية و تضمن لمستخدم العادي عدم المماس بكود التطبيق بحيث يتعامل مع ملفات آخرى و هي ملفات GNU gettext التي تم ذكرها بالموضوع, و أيضا من جهة المبرمج, فهو فالبداية يكتب النصوص بلغته اﻷصلية في التطبيق و ذلك بإسنادها لدالة (gettext) و عند الانتهاء يمكن عمل ملفات (po و mo) و ذلك لن يكون صعبا له بسبب ﻷن عملية البحث عن النصوص في التطبيق تكون آلية و يتم تجيز ملف po من خلال أمر واحد فقط :) باستخدام مثل اﻷداءة xgettext من خلال من وجهة نظري اذا كان المبرمج يرغب بأن ينتشر تطبيقه بدعم تعدد لغات بشرية و يريد تسهيل عملية الترجمة لمستخدمين اﻵخرين و ذلك من باب انتشار التطبيق بأن يستخدم طريقة غطار عمل GNU Gettext. و أتمنى لك التوفيق