• الإعلانات

    • فيصل الحربي

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

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

Khaled Alshaya

المشرفون
  • عدد المشاركات

    2,052
  • تاريخ الانضمام

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

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

  1. لا أتوقع أن هذا أكثر من كمية البحث حول لغة ما, و ليس استخدامها الفعلي. ربما أقتنع بأن Java عليها طلب كبير, و لكن ماذا عن C؟ بكل تأكيد طلاب الجامعات! أي أن نسبة البحث عن اللغة لا تعبر عن شهرتها في سوق العمل و لا في الاستخدام الحقيقي لها من قبل مبرمجي سوق العمل(أو المشاريع الحرة).
  2. [مخالف]ممكن شرح (cliced(0,0,0,0

    الأخ الكريم/الأخت الكريمة السلام عليكم ورحمة الله وبركاته مرحباً بكم في منتدى الفريق العربي للبرمجة تأسف إدارة المنتدى لغلق الموضوع وذلك لمخالفته قوانين المشاركات . قواعد طرح المشاركات http://www.arabteam2000-forum.com/index.php?showtopic=29343 شاكرين لكم حُسن تعاونكم {username}
  3. [مخالف]ممكن شرح (cliced(0,0,0,0

    أخ أحمد هذه ليست دالة لإنتاج أعداد عشوائية! نكتة في غير محلها :)
  4. أفكار لمشروع باستخدام CUDA؟

    يا أخ أحمد الخوارزمية التي تفضلت بها كيف تقترح كتابتها؟ كتابة دالة لتحليل arbitrary precision integer صعب باعتقادي باستخدام الـ SPMD. ربما لعمل تحليل لمصفوفة من الأعداد؟ و لكنها لن تكون مختلفة عن الطريقة العادية sequential. عموماً, كنت أتحمس لفكرة يسهل إيجاد حل لها تحت SPMD model, أقصد هنا أن المشكلة يمكن أن تجزأ إلى أجزاء تعمل بشكل متوازي, أما تطبيق خوارزمية sequential على عدة عناصر بيانات فهذا ممكن أيضاً و لكنه ليس فكرة جيدة للتطبيق على CUDA برأيي الشخصي. و بصراحة أيضاً, الخوارزمية صعبة قليلاً لإنجازها في يومين أو ثلاثة و التأكد أنها تعمل بشكل سليم :S
  5. أكثر من رائع :) مشروع مبهر, أتمنى لو تعرضت بشكل مختصر إلى كيفية كتابة الـ Implementation الخاص بـ FFI للغة كلمات.
  6. السلام عليكم ... أولاً, اعتذار مبدئي عن هذا السؤال التافه, و لكني احترت فعلاً :) لنفترض أنني أريد بناء board game. و المطلوب مني هو كتابة منطق اللعبة, بحيث أن هناك شخص آخر سيقوم بكتابة المحرك الرسومي. ماهي الطريقة الأفضل لكتابة المحرك؟ في البداية, كان التصميم المبدئي بحيث أن مستخدم المحرك سوف يقوم بتسجيل callbacks في المحرك بحيث عندما يحصل تغير في حالة اللعبة يتم إعلام مستخدم المحرك عن طريق callback معين لكل نوع تغير. ثم بدأت في التفكير حول إمكانية كتابة المحرك كـ state machine بحيث يصبح مستخدم المحرك مسؤولاً عن الاستعلام عن أي تغير في اللعبة. بصراحة أود أن يشرح لي أحد الأخوة كيف يحصل هذا في عالم الألعاب, لأنه يبدو أنني جاهل تماماً في هذه المسألة :)
  7. هل تشعر بعقدة نفسية ؟

    الحمدلله لست أنا الوحيد الذي يعاني من هذه المشكلة :lol:
  8. هل يعطى IP مباشر للمستخدمين في المنازل؟ كنت أعتقد أن المستخدمين العاديين دائماً يقبعون خلف NAT لمزود الخدمة :S شكراً على التوضيح :)
  9. يعني الموقع المعاد كان من المفرض أن يتم عمل forward له من مزود الخدمة إلى IP جهاز آخر, و لكن فشل Network Address Translation System في هذه الحالة. مجرد فكرة لا أكثر, لأنه حصل في الجامعة لدينا مرة أن النظام تحت الضغط الشديد لخبط الدنيا و السبب حسب ما فهمت أن الـ Table الذي يستخدمه النظام لا يحتوي على معلومات كافية ليكون deterministic! أنا متأكد بأن الأخ .S.T.A.L.K.E.R ليس لديه IP مباشر و إنما Private IP. عموماً, نحتاج من خبراء الشبكات في المنتدى أن يشرحوا لنا الأمر :huh:
  10. هناك أيضاً فكرة طرأت في عقلي قبل قليل! ماذا لو كان الأمر حصل بسبب خطأ في الـ NAT System على مزود الخدمة؟
  11. و عليكم السلام, كون اللغة case-sensitive أم لا هو قرار لا يؤثر في اللغة بأي شكل من الأشكال برأيي, لأنه يتبع تفضيل منشأ اللغة نفسها. حتى من ناحية سرعة الـ Implementation فإن ذلك لا يذكر, مجرد insensitive comparison في مرحلة الـ Lexical Parsing! أما كون المصفوفة تبدأ من صفر أم من واحد, فإن القرار مهم. في البداية كان الجميع يعتقد أن هذا الأمر يتبع تفضيل صاحب اللغة, و لكن Dijkstra له رأي آخر: Why numbering should start at zero
  12. لا أعتقد ذلك أخ محمد. لسبب بسيط, أن الموقع عبارة عن الـ index الذي يوفره الـ web server بشكل افتراضي, ألا يجب أن يكون هناك code لاستغلال ثغرة في المتصفح لكي يتم استغلالها و تغيير العنوان دون الذهاب إليه؟ إضافة إلى ذلك أنه ليس هناك شيء يدل على أنه الموقع الذي جلبه المتصفح هو Hotmail إلا معلومات الـ DNS نفسها. إضافة إلى ذلك, لم يتكرر الأمر. بالتالي فإن DNS Cache Poisoning هو على الأغلب السبب.
  13. ليس الصفحة نفسها. عندما أرسلت طلب للحصول على الصفحة أرسل المتصفح طلب لتحويل الـ URL إلى عنوان IP لكي يقوم بالاتصال به على المنفذ 80. الـ IP المعاد خاطئ, و قام المتصفح بطلب الـ IP على المنفذ 80 فحصل على الرد!
  14. لا أدري و لكن من المستحيل أن يكون هذا هو الـ root الخاص بـ Hotmail! ماهذه الملفات أصلاً, و يبدو أن صاحبه يقوم بقص و لصق المجلدات دون إزالة الملفات غير المطلوبة مثل Thumbs.db الذي يستخدمه سطح المكتب في Windows :lol: +1 لأنه لو تأكدنا أن الـ IP هو أحد الـ IPs المستخدمة لـ Hotmail لكان الأمر مريباً, و لكن من الواضح فعلاً أن هناك مشكلة في الـ DNS.
  15. للأسف كنت أتمنى أن يكون ذلك صحيحاً. الذي يحصل هو العكس, هو أن هناك غضب عارم على الطريقة التي يدار بها مستقبل cl(مترجم ++C الخاص بـ Microsoft) و كافة المشاريع المتعلقة بـ ++C. في خلال سنة تقريباً, أعتقد أن gcc و clang سوف يكونان في مقدمة المترجمات التي تدعم 11++C رسمياً. بدلاً من أن تقوم Microsoft بدعم لغة ++C, قامت بإنشاء WinRT الذي هو Framework خاص مع extensions للغة في منتصف الطريق! لا أدري مالذي يفكر فيه مدراء Microsoft و لكن هذا القرار خاطئ تماماً برأي الغالبية الساحقة(على الأقل مما ينشر في العالم الافتراضي!). انظر مثلاً إلى الردود في موضوع VC vNext: http://blogs.msdn.com/b/vcblog/archive/2011/09/12/10209291.aspx إما أن الأمر غير مقصود و هذه مصيبة, أو أن يكون الأمر مقصوداً و تلك مصيبة أكبر. محاولة جر مبرمجي ++C إلى عالم الـ extensions لم يعد يجدي نفعاً! و COM-Like أخرى من خلال الـ reflection الخاصة بـ NET. في ++C؟!! بصراحة لا أفهم سبب هذا التوجه من Microsoft, سوى أنها تترنح بالضربة القاضية و تحاول حصر المستخدمين في منتجاتها, بينما يمكنهم كتابة كود يعمل في كل مكان من خلال مكتبات متوفرة منذ عشرات السنين! المشكلة أن gcc و clang يمكنك تحميلهما مجاناً! و أداؤهم أفضل, و لكن مايحزنني هو أني سأفتقد الـ IDE. هذا هو الشيء الوحيد الذي أفتقده في VS, أما المترجم فإلى سلة المهملات بصراحة.
  16. السلام عليكم و رحمة الله و بركاته, بنظرة خاطفة على أعضاء هذا المنتدى الكريم نجد العديد من الخبرات العربية في مجال البرمجة و التقنية بشكل عام بشكل لا يتوفر نظيره في مكان آخر على الشبكة. رغم وجود تلك الخبرات التي تتفرق في شتى بقاع العالم من الصين إلى الولايات المتحدة و كندا, إلا أن البرمجيات العربية لا ترقى لمستوى تلك العقول. لابد من وجود أسباب جوهرية لهذا التأخر البرمجي, و حل المشكلة نصفه يكمن في تعريف المشكلة نفسها. بكل تأكيد, هناك عدد لا منته من المشاكل سواء في البرمجيات العربية - أو الغير عربية - و لكن لابد من وجود عقبة رئيسية تمنع المبرمجين العرب من الإنتاجية بفعالية و الرقي ببرمجياتهم بحيث تصلح للاستخدام و المنافسة في السوق أمام المنتجات القادمة من وراء البحار. إن أردت المشاركة في هذا النقاش, فعليك طرح المحاور التالية في إجابتك لكي ترشح نفسك للحصول على النقاط الموضوعة على السؤال - 25 نقطة, و الأفضل أن تكون الإجابة على شكل فقرة أو مقالة مختصرة تمر على النقاط التالية مع إضافة ما يحلو لك من نقاط إن كنت ترى أهميتها: * ماهي العقبة التي تراها عاملاً أساسياً في تأخر صناعة البرمجيات العربية. (يمكنك طرح ما شئت, سواء كانت تلك عقبة في عملية التعلم أو الصناعة نفسها أو في عقلية المبرمجين العرب أنفسهم) * لماذا ترى أنها العقبة الأساسية, و ماهي المؤشرات التي تدل على أنها العقبة الأساسية. (الحقائق و الأرقام هي من ستحدد الفائز بالنقاط في حقيقة الأمر, لأن هذا يعني أن لديك إثباتاً لكلامك و ليس رأياً عائماً في الهواء الطلق!) * البذرة التي تتمنى زرعها لحل تلك العقبة. (لا نريد حلولاً مفصلة, نريد أن نرى بداية الطريق حسب رأيك) أرجو أن يكون واضحاً أننا لانريد مشاركات جانبية في هذا السؤال, و يكتفى بالتعليق بعد إذنكم إن لم تكن المشاركة للإجابة عن السؤال المطروح. سأسمح لنفسي باختيار الإجابة بعد عدة أيام و ذلك لإتاحة الفرصة للجميع بالمشاركة. و هنيئاً للفائز النقاط كاملة :) تحياتي... =========================== خاتمة: شكراً للجميع على الإدلاء بما يرونه, و أتمنى في يوم من الأيام أن نرى مبرمجين عرب يحللون مشاكلنا حتى نعرف بداية الطريق على الأقل. الحقيقة أني احترت في اختيار الإجابة المثالية بنظري لسؤالي, و لكني سأعطي كما وعدت النقاط لشخص واحد يطرق باب المشكلة من زاوية ضيقة, و اخترت إجابة الشمري لأنه ببساطة ذكر التالي: إحقاقاً للحق, كنت أتمنى لو أنه أغفل باقي الأمور المذكورة في رده, و ركز كل إجابته على صعوبة الدفع عبر الشبكة, و التي بعدما قرأت الإجابات وجدتها مشكلة ملموسة يمكن أن يعرف لها حل ملموس أيضاً. و اختياري جاء بعد أن جربت المعيشة في الولايات المتحدة و في السعودية و في سورية, و من الواضح أن طريقة الدفع عبر الشبكة تعتبر مشكلة حقيقية بالنسبة لمن يعيش في الدول العربية. شكراً للجميع من جديد, و لا أغفل أن إجابة هيثم تطرقت للموضوع بشكل أكثر عموماً, و تحدث عن مكانة المال الشحيح في دولنا العربية, و برأيي الشخصي فإن الشمري طرق باباً من أبواب المشكلة عندما ذكر عملية الدفع عبر الشبكة التي تعيق تحرك الأموال إن وجدت. و أعجبني أيضاً إجابة OricalcosZy التي تتحدث بشكل مبسط عن تردي مستوى التعليم التقني في البلاد العربية. تحياتي...
  17. أخ سنان, أختلف معك لأن Microsoft أو غيرها عندما تطرح إضافة للـ Framework فهي تفترض أن لديك المعرفة بكيفية استعمال تلك الإضافة. بمعنى أن Microsoft ليس هدفها تقديم prototype للـ Multitasking لكي يتعلم المبرمجون من خلاله. هي تطرح حلول للمبرمجين الذي يودون اختصار الطريق, من خلال مكتبات مكتوبة باحترافية. صدقني, موضوع البرمجة اليوم أصبح توفر المكتبات من عدم توفرها. المبرمج الحقيقي هو الذي يستطيع استغلال المكتبات من خلال معرفته بالـ domain الذي تنتمي إليه تلك المكتبات.
  18. الشكل الذي تقترحه كان يستخدم في المشرق الإسلامي, و الشكل الذي تستخدمه اللغة الانجليزية حالياً كان يستخدم في المغرب الإسلامي. كلاهما من تطوير المسلمين.
  19. هل عادت حليمة لعادتها القديمة؟(نقاش حول VC)

    لا والله يا أخ محمد المشكلة في Microsoft نفسها. شخص واحد يعمل على المكتبة القياسية لـ ++C, و التي ليست أصلاً من صناعة Microsoft بل مرخصة من شركة أخرى. ميزات المترجم و المكتبة القياسية ليست متعلقة بشكل كبير بالـ IDE. كل ما في الأمر أن Microsoft تعيش في الزمن الأغبر حيث تعتقد أن المبرمجين لن يستغنوا عنها! رأيت الكثير من الحوارات حول الانتقال إلى GCC أو clang بشكل تدريجي و البعض فعلياً. على Microsoft أن تدرك أن MFC لم تعد نهاية العالم كما كانت في التسعينيات, فهناك Qt و Boost و غيرهم.
  20. السلام عليكم... يبدو أن حليمة عادت لعادتها القديمة بالفعل! على مدونة VC Blog الرسمية منذ أيام عدة,تم إعلان الميزات الجديدة المختصة بـ Cpp11 في النسخة القادمة من VCpp11. و حتى أكون صريحاً معكم, فإن صبري قد نفذ. و انتقلت بالفعل للعمل على GCC في كل مشاريعي. بينما يسابق GCC الريح في تطبيق اللغة الجديدة, و يبهر clang الجميع بتصميمه الحديث, و سهولة إضافة المميزات عليه بالدليل الفعلي الذي وصل في وقت قياسي إلى تطبيق لغة Cpp الجديدة بشكل شبه كامل مع دعم شبه كامل أيضاً للمكتبة القياسية حاملاً ميزات كمترجم لم يحلم بها أي مبرمج ++C أو مطور أدوات لـ ++C, بقي VCpp عالقاً في مكانه تقريباً في نسخة جديدة. هذا يذكرني بالفترة التي تلت إصدار Cpp98! بدأت البرمجة بـ ++C, من خلال GCC و لكن ما لبثت أن انتقلت لـ VCpp بولاء شبه مطلق حتى وقت قريب. و لكن هذه المرة قررت الخروج بلا عودة من عالمه. ماهي الآراء حول الموضوع؟ هل تعتقد أن VCpp سيبقى صامداً في وجه في وجه GCC و clang اللذان يكتسحان السوق حالياً, أم أنه سيصبح أحد تلك المشاريع المنقرضة؟
  21. Java Script قد تكون بسيطة من ناحية الاستخدام(إذا افترضنا أنك تعرف ماهو الـ duck typing و الـ functional programming و خلافه) و لكنها من ناحية الـ abstraction عالية جداً مقارنة بأي لغة تريدها. هل بعد الـ Dynamic Typing هناك Abstraction :S Javascript تمتلك قدرات OOP و لكنها على طريقة Smalltalk و ليس بالطريقة الكلاسيكية(Simula). الـ Abstraction الذي توفره Prototype OOP أعلى بكثير أيضاً من Classical OOP‍!
  22. ماهو الفرق أخ عصام بين الـ scripting و الـ "programming language", و بالمناسبة أي لغة يمكن بناء compiler أو Jitter أو interpreter لها. فما هو الفرق الذي تتكلم عنه؟!
  23. على العكس ما يطلبه الشمري رغم أني لا أوافقه الرأي, يزيد من إمكانية فرص الـ Optimization لدى JS Implementations لأن الأنواع ستصبح explicit و يمكن التحقق منها في كثير من الحالات. بينما في حالة الـ Prototype Inheritance كل "كائن" يجب أن يحمل معلومات عن الدوال. بينما في الحالة الكلاسيكية كما في Java و ++C على سبيل المثال معلومات الدوال لأي كائن من فئة معينة يتم استعلامها من الفئة و الكائن لا يحمل سوى متغيرات.
  24. و الله سيكون الأمر جميل إن عرضت لنا حلولك أخي SD, للمسائل: 51, 77, 78 و شكراً مرة أخرى :)
  25. مسائل Project Euler من البداية و حتى السؤال الخمسون تقريباً, عبارة عن مسائل عادية يجب على أي طالب علوم حاسب أو هندسة برمجيات أن يقوم بحلها بلغته المفضلة, حيث يحل البرنامج السؤال في أقل من دقيقة. هناك بعض المسائل الصعبة في الخمسين الأولى و قد يكون الطالب تعرض للمفهوم بشكل مبسط أو تجاوزه. بعد ذلك تأتي الخمسين الثانية التي تعتمد على مهاراتك في الـ Optimization, ستحتاج في معظمها إلى دراسة كل سؤال, و البحث عن بداية الخيط لحل السؤال بعد أن تكون قد قمت بعمل formulation للسؤال على شكل graph مثلاً. تتعلم الخوارزمية و تفهمها ثم تقوم بكتابتها. نصف الأسئلة تشبه النصف الآخر, و لكنك إن لم تفهم الخوارزميات التي تطبقها لن تستطيع تحويرها لحل أسئلة أخرى, مثل تطبيق الـ memoization. عموماً, حللت أول خمسين كاملة و الحمدلله. و لكن المصيبة في الخمسين الثانية :( هذه الأسئلة لم أستطع حلها: 51, 54, 60, 64, 66, 77, 80, 84, 86, 88, 89, 90, 91, 93, 94, 95, 96, 98 و لاحظ أنني حللت أسئلة مشابهة لأفكار الأسئلة التي ذكرتها, و لكن لم أستطع من فهمها و تحليلها و قمت بعمل implementation من خلال اتباع الـ pseudopod في Wikipedia و غيرها. أتمنى ممن يستطيع شرح أحد الأسئلة أن يتفضل علينا, إلا سؤال 54 فكل مافي الأمر أني كسول لكتابة برنامج بوكر :lol: أخيراً, halsten هذا يبدو أنه شخصية محترمة. كان لديه مدونة و لكنها لا تعمل حالياً كما يبدو, يتكلم فيها عن كتابة mods لألعاب PS3 و يصمم البعض منها كما فهمت. أتمنى لو أرسلت دعوة من المنتدى لهذا النوع من المبرمجين. ------------- عفواً وضعت رابط خاطئ للمدونة, يبدو أنها لا تعمل.