• الإعلانات

    • فيصل الحربي

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

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

Khaled Alshaya

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

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

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

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

  1. يجب أن يكون لديك الصلاحيات اللازمة. شغل برنامجك بالضغط بالزر الأيمن للماوس ثم Run As Administrator.
  2. الحل في هذه الحالة ليس بناء كل شيء من الصفر و لكن عمل تخصيص لـ ERP إن كان عميلك بهذا الحجم, أو العملاء حسب قولك. إضافة إلى ذلك, لا يمكن لمبرمج واحد القيام بما تريده, أعمل كـ SAP Developer و هناك جيش من محللي النظم بيننا و بين العملاء :)
  3. تحذير! أنا لست الشخص الأفضل للحديث عن تصميم قواعد البيانات و لكن هذا ما لدي. الذي تواجهه أحد ثلاثة أمور برأيي المتواضع. الأول, هو الخلط بين "متطلبات" العميل و بين تصميم النظام. بمعنى, أن المتطلبات يمكن أن تنفذ بأكثر من طريقة, و بجعل النظام مرناً يتم استيعاب المتغيرات في التعديلات دون الحاجة إلى تعديل التصميم نفسه. مثلاً, قد يطلب العميل نوعين من المستخدمين: مدير و موظف, و لكل منهما صلاحيات معينة. قد تصمم جدول للمدراء و جدول للموظفين. في هذه الحالة لو أضفنا نوعاً آخر من المستخدمين كالمشرفين الذي تقع صلاحياتهم بين المدراء و الموظفين فستحتاج إلى تعديل قاعدة البيانات إضافة إلى منطق البرنامج. و لكن لو كان لديك جدول للمستخدمين و جدول للصلاحيات, إضافة أنواع جديدة من المستخدمين و ربطها بالصلاحيات لا يستدعي تعديل تصميم البرنامج و لا قاعدة البيانات. الثاني, هو أن التصميم مرن و لكن المتطلب يحتاج إلى مراجعة التصميم فعلاً. في هذه الحالة إذا كان التصميم جيداً من الأساس فلا مشكلة لأن قواعد البيانات العلائقية تستوعب هذا الأمر و هو من صميم أهدافها: تغيير هيكلية البيانات دون التأثير على البيانات نفسها. بمعنى, لو أردت إضافة حقل جديد لجدول المستخدمين فلن يؤثر هذا على صلاحياتهم! الأخير, أن تكون البيانات التي لديك لا تتبع هيكلية ثابتة تقريباً و هذا ممكن فعلاً و لكني أشك أن هذه الحالة تنطبق على البيانات التي ذكرتها. في هذه الحالة قواعد البيانات العلائقية ليست الحل الأنسب و هناك حلول أفضل. تحياتي...
  4. عزيزي, ليس هناك فائدة مما تريد عمله لأنك تستخدم الـ stack في غير ما استحدثت لأجله أصلاً. الموضوع يعتمد على نظام التشغيل و المترجم(في الحقيقة الـ Linker) الذي تعمل عليه. عندما تقوم بترجمة برنامج فإن الـ Linker يقوم ببناء Header لملفك التنفيذي, و هذا الـ header يستخدم من قبل نظام التشغيل لمعرفة إعدادات تشغيل ملفك التنفيذي. في Visual Studio, يمكنك تغيير حجم الـ stack الافتراضي: /STACK:size_in_bytes في GCC: --stack,size_in_bytes على العموم, يمكنك تغيير حجم الـ stack حتى وقت التشغيل من خلال دوال نظام التشغيل, و لكن تذكر أن حجز كمية كبيرة من الذاكرة على الـ stack هو أسلوب خاطئ في الأصل, هي صممت لكي تكون مخزن مؤقت و سريع للدوال. تحياتي...
  5. PGP Protector هو اسم عضو قام بتصحيح المقالة حول المترجمات. و الذي يقصده أن مترجم VC Express مجاني يمكن إنتاج برامج تجارية من خلاله دون قيود.
  6. إطار عمل Bootstrap من Twitter

    سبحان الله منذ الصباح و أنا أبحث عن تعريب النسخة الثانية و بحثت عن هذا الموضوع أيضاً و لم أستطع الوصول إليه, يا محاسن الصدف :) أفيدونا يا أخوة بالنسبة لإنشاء المواقع باللغة العربية بالنسخة الثانية؟
  7. السلام عليكم , هناك الكثير من الشخصيات التي أثرت بشكل واضح و كبير على عالم البرمجة و البرمجيات. و برأيي الشخصي فإن ريتشارد ستالمان Richard Stallman هو من أبرزهم. هذا الرجل استطاع أن يثبت شيئاً لربما لو كنا في زمانه لضحكنا عليه. و لكنه بكل تأكيد صاحب إصرار و عزيمة لا متناهيتين. أعرض لكم اليوم الرسالة الأولى التي أعلن فيها فكرته للعالم أجمع على المجموعة الإخبارية الشهيرة Usenet. الرسالة يمكن قراءتها على العنوان التالي : new UNIX implementation الرسالة قمت بترجمتها, لمن يحب قراءتها باللغة العربية, إن كان هناك أخطاء الرجاء إعلامي بها ... Unix حر! بدءاً من عيدالشكر القادم سوف أبدأ بكتابة نظام كامل متوافق مع Unix, و سوف أسميه GNU و هذه التسمية تشير إلى GNU's Not Unix. النظام سوف يوزع مجاناً لمن يريد استخدامه. نحتاج إلى التبرعات سواءً بالوقت أو المال أو البرامج أو حتى العتاد و الأجهزة. في البدء, سوف نعمل على بناء نواة النظام إضافة إلى جميع أدوات النظام الأساسية لكتابة و تشغيل برامج لغة C و ذلك يتضمن : المحرر Editor و الـ shell و مترجم C Compiler و Linker و مجمع Assembler و العديد من الأدوات الإضافية. بعد ذلك سوف نبني منسق نصوص Word Processor و باني محللات نصوص YACC و لعبة الإمبراطورية Empire Game. إضافة إلى برنامج للجداول الحسابية SpreadSheet, و المئات من البرامج الأخرى. نأمل أن نقوم ببناء جميع الأدوات الضرورية التي تأتي مع نظام Unix, و بالتأكيد وثائق النظام بصيغتها الإلكترونية و المطبوعة. نظام GNU سوف يصمم لكي يسمح لبرامج Unix بالعمل عليه, و لكنه لن يكون نسخة مطابقة عنه. سوف نقوم بعمل جميع التحسينات حسب قدرتنا و ذلك من واقع خبرتنا في العمل على الأنظمة الأخرى. بخصوص التحسينات فإن النظام سوف يسمح بأسماء طويلة للملفات, و رقم النسخة للملفات file version number, و نظام ملفات غير قابل للإنهيار CrashProof File System, و إمكانية إكمال أسماء الملفات من خلال سطر الأوامر ربما, إضافة إلى إضافة دعم للعديد من الشاشات بدلاَ من دعم النظام لنوع مخصوص, و نظام لإنشاء النوافذ معتمداً على LISP. وسوف تكون لغتا C و LISP متوفرتان بشكل أساسي مع النظام لبرمجته. و سوف يكون لدينا نظام شبكات معتمد على MIT Chaosnet Protocol, و الذي يعتبر أفضل بكثير من UUCP. و ربما ندعم UUCP Protocol. من أنا ؟ أنا ريتشارد ستالمان Richard Stallman, المخترع الأصلي لمحرر النصوص EMACS و الذي تم إنشاء الكثير من المحررات المشابهة له. أعمل في معمل الذكاء الاصطناعي في MIT. لقد عملت بشكل مكثف في مجال المترجمات و المحررات و المنقحات و المفسرات و عملت أيضاً على Incompatible Timesharing System و نظام تشغيل الـ LISP Machine. أنا صاحب فكرة فصل برمجيات العرض عن عتاد الشاشة نفسه في Incompatible Timesharing System و قمت ببناء نظام ملفات غير قابل للإنهيار بالإضافة إلى نظامي نوافذ لـ LISP Machines. لماذا يجب علي إنشاء GNU ؟ القاعدة الذهبية لدي تقتضي بأنني إذا أحبب برنامجاً ما فيجب أن أشاركه مع الآخرين ممن يحبونه. لا يمكنني و أنا في كامل قواي العقلية أن أوقع على وثيقة تمنع هذا الأمر. لكي أستمر باستخدام الحاسوب دون أن أخل بأي من المبادئ التي أراها صحيحة, قررت أن أقوم بكتابة برمجيات حرة تسمح لي بالاستغناء عن أي برنامج لا يتبع هذا المنهج. طريقة المشاركة في الفكرة أطلب من مصنعي الحواسيب أن يقوموا بالتبرع بالأجهزة و الأموال, و من الأفراد أن يقوموا بالتبرع بالبرامج و العمل. أحد مصنعي الحواسيب قام بالفعل بالتبرع. و لكننا نحتاج إلى أجهزة أكثر. إذا تبرعت بالأجهزة فنتيجة ذلك أن البرمجيات الحرة سوف تعمل على منصتك. من الأفضل أن تكون تلك الأجهزة قابلة للعمل في مناطق سكنية و لا تحتاج إلى أجهزة تبريد أو كهرباء معقدة. المبرمجون يمكنهم المشاركة بكتابة برامج مشابهة و متوافقة مع برامج نظام Unix. لأن هذا النوع من البرامج لن يحتاج إلى تنظيم بين المبرمجين لكي تعمل البرامج فوق النظام. و السبب أن النظام سوف يكون متوافقاً بشكل كبير مع نظام Unix. بحيث إذا عمل برنامج على Unix فسوف يعمل على GNU بشكل افتراضي. إذا تبرعت بالمال, لربما أمكنني توظيف بعض المبرمجين بدوام جزئي أو كامل. الرواتب بطبيعة الحال لن تكون مرتفعة, لأنني أبحث عن مبرمجين يؤمنون بأن هذه الفكرة هي لمساعدة البشرية بدلاً من التفكير في الراتب نفسه. بحيث يمكن لهؤلاء المبرمجين توظيف كامل طاقاتهم في برمجة النظام دون البحث عن عمل آخر. ريتشارد ستالمان 27 سبتمبر 1983 تحياتي ...
  8. C++ Garbage Collector عملي من تصميمي ...

    أخ sanousy.howari, لماذا كل هذه الضجة؟ أنا لا أشارك هنا حتى أهين أحداً, و حتى المشاركة التي تشتكي منها لم أجرح و لم أقصد أصلاً أن أجرح فيها أي شخص و لا أستطيع جرح أي شخص. أنا عندما أكتب أخاطب, و لا أكتب بصيغة المجهول, و راجع مشاركاتي في المنتدى و سترى أنني لا أتهكم على أحد, بارك الله فيك. أنا تكلمت معك بشكل تقني و لم أدخل في أي موضوع شخصي, و إن لم تعجبك طريقة مشاركتي فهذا رأيك و أنت حر فيه.
  9. C++ Garbage Collector عملي من تصميمي ...

    أخي العزيز يصعب التعليق على كل نقطة ذكرتها لأنها نقاط عامة جداً, و لو حصرت الموضوع بنقاط يمكن النقاش حولها و الوصول إلى نتيجة فلا بأس. تعني أنك تعرف تماماً متى سيتم حجز الذاكرة و متى سيتم إلغاؤها, و هذا يعني ربط الـ life-time بالـ scope أي عندما تدخل أي scope فإنه يتم حجز الذاكرة و عندما يتم الخروج من الـ scope يتم إلغاء الذاكرة. لماذا برأيك تحتاج finally بعد try؟ لماذا استحدثت using في #C؟ في ++C هناك RAII و هو اسم مخيف لفكرة أكثر من رائعة لإدارة جميع الموارد "بما فيها" الذاكرة. تحياتي...
  10. C++ Garbage Collector عملي من تصميمي ...

    أخي للأسف عندما تأتي بأسلوب لتطبقه في ++C يتعارض مع أساليبها المجربة, فأنت تخذل نفسك قبل أن تخذل اللغة. ربما هناك بعض الأمور المزعجة في السابق و لكن مع Cpp11 فأنا لا أرى إلا جوانب معينة لم تتكلم عنها حضرتك مثل عدم توفر module system حقيقي. أنصحك بمشاهدة هذه المحاضرات فهي لـ Herb Sutter النار على علم :) http://channel9.msdn.com/Events/BUILD/BUILD2011/TOOL-835T http://channel9.msdn.com/Shows/The+Knowledge+Chamber/C-A-Language-for-Modern-Times http://channel9.msdn.com/posts/C-and-Beyond-2011-Herb-Sutter-Why-C http://channel9.msdn.com/Events/Lang-NEXT/Lang-NEXT-2012/-Not-Your-Father-s-C-
  11. C++ Garbage Collector عملي من تصميمي ...

    مثال بسيط لو سمحت يشرح كيفية عمل ما تتكلم عنه, المثال الموجود في الموقع غير واضح, ماهي Track؟ كل الفائدة من الـ garbage collectors هي أن لا تقوم بعمل tracking بشكل يدوي أصلاً! أما بالنسبة للتعقيد فليس هناك تعقيد في ++C من ناحية الذاكرة, و أنا مع فتح النقاش في الموضوع ليتوضح للكثيرين كيف تدار الذاكرة بشكل أتوماتيكي في ++C, و ليس كما في C مع ميزة أن إدارة الذاكرة في ++C عملية deterministic و لا يقتصر الموضوع على الذاكرة فقط و إنما على أي نوع من أنواع الموارد resources و هنا يكون التعقيد في اللغات التي تستخدم الـ GC :) تحياتي...
  12. أين تكمن صعوية الوراثة

    أتفق معك تماماً في هذا, أصلاً الوراثة لم تستحدث إلا للـ Polymorphism الذي هو قلب OOP و ليست الوراثة بحد ذاتها كـ Code Reuse.
  13. متاهة التطوير على لينكس

    ربما GPL أما ما عدا ذلك(BSD-Like) فكلها واضحة و تسمح لك باستخدام المكتبات في مشاريعك التجارية دون أي مشكلة. بالنسبة للتكملة في المدونة, حبذا لو طرحت أمثلة بعينها لأن الكلام العام يشمل جميع الأنظمة حسب وجهة نظر الكاتب :)
  14. أين تكمن صعوية الوراثة

    للأسف أخ ماجد, المكعب ليس مربعاً! تستخدم الواراثة في غالب الأحيان من قبل المبرمجين بشكل خاطئ. يجب أن تكون هناك علاقة is-a لكي يكون تصميمك صحيحاً, و في غالب الأحيان يكون التصميم خاطئ. المكان الوحيد الذي رأيت فيه OOP makes sense هو في الـ GUI و الـ Simulation أما ما عدا ذلك فالمبرمجين يغردون خارج السرب.
  15. بالمناسبة ستخرج من هذه المهاترات عندما تعلم أن معظم الـ computing systems في عالمنا لا تحتوي على نظام تشغيل بالمعنى "الرفيع" الذي نتكلم عنه. معظمها embedded systems مكتوبة بـ C مع قليل من الـ assembly الخاص بالـ micro-controller. هذا إذا كنت تتحدث عن "عدد الأجهزة"!
  16. هل لدى أحد فكرة عامة عن طريقة الترجمة بهذه الطريقة؟ لدي فكرة بسيطة عن الـ probabilistic bnf هل هي الطريقة المستخدمة؟ هل من الممكن أن يعطينا أحد الأخوة نبذة مبسطة عن الخوارزميات و الطرق المستخدمة ليس لجميع الطرق و لكن الطرق المستخدمة في google و bing؟
  17. بهذه الطريقة أنت تحسب النسبة كما لو أن عدد الحواسيب الشخصية هو نفس عدد التابلت هو نفس عدد السيرفرات :happy:
  18. إذا كان التعليق يشرح شيئاً في اللغة المستخدمة أو المكتبات فهذا يعتبر سيئاً. إذا كان التعليق يشرح الـ domain الذي بني عليه الكود فهذا سيء أيضاً. إذا كان التعليق يشرح لماذا اختيرت هذه الطريقة لحل المشكلة فهذا هو المطلوب. على سبيل المثال, تم استخدام اختصار لحساب أمر ما, فيتم توضيح لماذا تم اختيار الطريقة و ما تأثيرها على عمل الكود.
  19. مبروك أبوعابد الـ mac, جربت TextMate؟
  20. كنت أعلم هذا حتى قبل التسجيل في الموقع, و لكن إذا نظرت إلى الموضوع ستجد أن الفائدة التي خرجت بها شخصياً تعادل 1000x الفائدة التي قدمتها في الموقع. كم المعلومات رهيب على الموقع, و صاحبه الآخر Jeff نصراني أمريكي.
  21. نور المنتدى أخي B.M.AbdelAziZ :cool: حل الأخ Delphawi هو الأفضل حقيقة, و هذا ما كنت أشير إليه بالخدعة أي أن البيانات مرتبة أصلاً. كل ما علينا هو إيجاد نقطة النهاية للنوع الأول باستخدام binary_search في الاتجاهين. تحياتي...
  22. السلام عليكم ... استغرقت في حل هذا السؤال أقل من دقيقة على غير العادة :cool:. السؤال بسيط جداً و سهل, و لكن حاول اقتراح خوارزمية جيدة لحل السؤال. تصور أن لدينا قيمتان متكررتان في مصفوفة من حجم n. بحيث أن القيمة الأولى بتكراراتها موجودة في القسم الأول من المصفوفة و القيمة الثانية بتكراراتها موجودة في القسم الثاني من المصفوفة. مثلاً, قد يكون لدينا أعداد زوجية و أعداد فردية: 1 9 8 6 2 0 قد تكون الأعداد الزوجية قبل الأعداد الفردية و لكن كلا النوعين منفصلان عن بعضهما و يبدأ الآخر مع نهاية الأول. الآن, نحن نعلم: حجم المصفوفة: n من العناصر. عدد عناصر النوع الأول: غير معروف. (نريد حسابه) عدد عناصر النوع الثاني: غير معروف. (نريد حسابه) ماهو عدد عناصر كلا النوعين؟ في مثالنا, النوع الأول عنصران, و النوع الثاني أربعة عناصر. فكر في السؤال جيداً, و اطرح أفضل خوارزمية لديك :)
  23. ايهما الاصح 9 او 1 ؟

    لا أعتقد أن هذا له علاقة بقواعد الرياضيات, و إنما تمثيل العبارات نفسها representation.
  24. لأن الرياضيات أم العلوم. و الاكتشافات فيها ليست ظرفية مرتبطة بأدوات القياس و تطور التكنلوجيا و إنما سرمدية.
  25. أخي, المشاريع التي تفكر بها جميعها تتطلب دارية بوظائف هذه الثلاث تطبيقات. ستحتاج لفهم هذه التطبيقات جيداً قبل الشروع في العمل, و لن تصل إلى شيء جيد إلا بمعرفة تامة لما تريد عمله في البداية. أقترح أن تنظر إلى تطبيقات يمكنك افتراض الـ requirements بسهولة مع تحدي في الجانب البرمجي أكثر.