عدد المساهمات : 48 تاريخ التسجيل : 17/11/2007 العمر : 38 رقم العضوية : 261 Upload Photos :
موضوع: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الأربعاء 26 ديسمبر - 13:40
فى الموضوع ده نفسى كل واحد يكتب لنا سر من أسرار البرمجة (بأى لغة) حتى تكون محترف برمجة أى إن البرنامج بتاعك يكون بأقل حجم ممكن (أى بأقل كود) ويكون بيتنفذ بسرعة (مش بطـــــىء)
إيــــــــــــه رأيكم
وياريت المعيدين والدكاترة يفيدونا أيضا
camoon خريج هندسه أسوان دفعة 2004
عدد المساهمات : 86 تاريخ التسجيل : 11/11/2007 العمر : 42 الموقع : مع Optical Fiber , SDH & DWDM رقم العضوية : 232 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الأربعاء 26 ديسمبر - 21:53
ياريت نستفيد من الخبرات الموجودة معانا في المنتدىويفودونا في الموضوع ده
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الخميس 27 ديسمبر - 4:39
أشكرك يا Eng Fulla
ع الموضوع الرائع
وتم تثبيت الموضوع الرائع وأرجو من الجميع المشاركة
ومستنيين مشاركتك انتى كمان
بعد إذنك بس فيه فكرة كدة بسيطة موضوع زى دة كبير وهايل جداً أنا بقترح عليكى بجانب اقتراخات الأعضاء الكرام إنى أقتيس مواضيع عملاقة وأفكار حلوة جداً عن كيفية احتراف البرمجة وازاى نكتب برامج محترمة من كبارات مبرمجى العرب من مواقع أخرى وممكن نتناقش فيها
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الخميس 27 ديسمبر - 5:08
لو حبيت أبتدى معاكى
__ انا بصراحة ماحستش إنى باعمل برامج إلا لما دخلت عالم الGUI
احنا شغالين كونسول لحد دلوقتى في لايحتنا اخدنا في اعدادى QBasic وفى أولى كهربا Fortran و C++ وفي تانية ماخدناش حاجة برمجة وفي تالتة حاسبات بناخد جافا وماأخدناااش غير محاضرة واحدة GUI في الجافا وتقريباً حنكتفى بهذا القدر
أنا أخدت كورس سي شارب في أجازة السنة دى وابتدينا أول مرة في ال OOP وكان عالم تانى خالص ودخلنا حاجات كتييير في الGUI بتاع السي شارب
أولا ً أنا شفت من الOOP انى ماكنتش بااخد برمجة أصلاً قبل كدة
وحقيقي اللى مايعرفش OOP يبقى مايعرفش غير يكتب برنامج يسلي بيها نفسه لو بعدنا عن ال GUI شويه ، ع أساس إن الناس كلها بتقول إنك لو فهمت كونسول كويس حتبقى كويس جداً في ال GUI ودة اللى أنا مستغرب له جداً !!!!!!!! أنا الحمد لله كنت كويس في ال سي ++ لدرجة كويسة وقريت كتب فيجوال سي ++ كإنى ماعرفش سي ++ قبل كدة وطبعاً ال سي ++ كونسول مالهااش أى لازمة لازمتها تعرف ال syntax وتفهم اللوب وال array وال function وكدة طب ما احنا فهمناها في الفورتران!!! المفروض كنا ناخد ال syntax بتاعتا الحاجات دى في ال سي ++ وندخل في الOOP ع طوول زى ما اقترح الباشمهنس محمود هنا في المنتدى
لكن ماحصلش معانا كدة ولقيناها في تالتة حاسبات مع الداتا ستراكشر دخلنا مرة واحدة في ال OOP > في مادة من أصعب المواد وحرام الواحد أول مرة يتعامل مع OOP يلاقى data Structure الحمد لله إنى ماسبتش نفسي للكلية وماتعلمتهاش بدري بدري وجينا في الجافا برده ماخدناش OOP غير 3 محاضرات بس وحوالى 8 محاضرات syntax loops , arrays ,functions أنا الصراحة مش عارف حناخد OOP بجد امتى !!!!!!!!!! ممكن بعد ما نتخرج ندرسها كاملة ان شاء الله
المهم لو لخصت لك اقتراحاتى المتواضعة !) لو بتكتب برنامج صغير وبسيط وأى كلام تهتم بيه جداً وماتقولش بيطلع ناتج وخلاص تخلى بالك من أى Exception ممكن يحصل في ال runtime عن طريق اليوزر ، و تتأكد إن البرنامج حيؤدى وظيفته لو حصل أى حاجة من اليوزر يعنى تحط في دماغك _ إن اليوزر دة غلس قوووووى :) _- لو عملت كدة مع برنامج صغير ،، حتقدر تعمل كدة مع أى برنامج كبييير انما لو ابتديت مع برنامج كبييير إنك تخلى بالك من ال exception مش حتقدر تعمل حاجة وحتنسي حاجات كتييييير
2) تتعلم لغات كتيييير وتعرف مزايا كل اللغات اللى تقدر عليها عشان تحدد بنفسك ايه اللغة اللى حتستخدمها واللى حتفيد برنامجك من ناحية السرعة ومن ناحية سهولة الكود يعنى البرنامج محتاج تسخدم له دوت نت فريم وورك ولا لأ وكدة
3) قبل ما تحل البرنامج ع الكمبيوتر تحله ع ورق وتعمل له يتيت ع ورق برده الأول والكفاءة بقى إنك تتأكد منه ع ورق ولو 90 % وبعدين تعمل له تيست ع الكمبيوتر لو طلع زيرو error وطبعاً يكون شغال أصلاً يبقى انت كدة بتوصل للتوب ودة اللى نفسى أحققه لما أااجى أنقل من ورق للجهاز مش عايز أعدل تانىىىىىى
4) لو عملت برنامج وحقق المطلوب ولقيت زميلك عمل برنامج بصيغة تانية خالص وحقق المطلوب تقرااااه وتفهمه أو تسأله فيه وتعرف أفكار تانية _ ماتقولش أنا عملت برنامج وخلاااص ودة أنا ماكنتش بأعمله في الفورتران بس عملته كتييير في ال سي ++
5) تدخل ع النت كتييييييييييير وتشوف أفكار المبرمجين ع المنتديات وتستفيد منهم وتصاحبهم
6) تواكب العصر يعنى لو كنت بروف في ال سي++ وفظييييع
انا شفت مبرمجين فيجوال بيزك ع النت الصراحة عمالقة في الVB بس أصفار في الجافا والسي شارب معناه إن مزاياهم المختلفة مش حيقدروا يوصلوا لها أبداص وانت كمبرمج المفروض لو طلب منك اى برنامج تقدر تنفذه
وماظنش إن الفيجوال بيزك تقدر تنفذ أى برنامج أنا مافتيييش كتير في ال VB فمش حقدر أقول لكم يا ريت PRINCESS تدخل الموضوع دة وتفيدنا وهى تعرف فيجوال بيزك وسي شارب
7) تدخل عالم ال GUI في اللغة اللى تتقنها ككونسول
وأنا أحبذ الصراحة السي شارب والجافا
8) يبقى فيه روح الجماعة في العمل ونتعود عليه من دلوقتىىىىىىىى عشان حنشوفه كتير بره ومش حنقدر عليه
9) تبقى البرامج بتاعتك كاملة و لو اططلب منك برنامج مثلاً يرتب أرقام تصاعدى بس تخلى الكود بتاع البرنامج سهل لأقصي حد عشان تقدر تعدل فيه لو اططلب منك ترتبهم تنازلي مثلاً يعنى تخلى برنامجك Easy Maintainence
دى كانت أفكارى البسيطة مش مقتبسة ولا حاجة دة اللى أنا بافكر فيه وان شاء الله نسمع حاجات أكتر من كدة ولو فيه حاجة غلط في أفكارى اعذرونى أنا حاسس غنى لسة بابتدى أبرمج
أهم حاجة إنك تعرف " انا أمبرمج إذن أنا موجوووووووود " وشكراً ليكى يا Eng Fulla مرة تانية
ahmednet_0001 خريج هندسه أسوان
عدد المساهمات : 4 تاريخ التسجيل : 20/11/2007 رقم العضوية : 285 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الخميس 27 ديسمبر - 10:05
السلام عليكم احيكم على هذا المنتدى الجميل انا هاحاول اشارك فى الموضوع دة ويارب تكون معلوماتى المتواضعة مفيدة . عموما هناك مراحل متفق عليها لبنا اى لحل اي مشكلة وتصميم البرنامج يعتبر مشكلة انت عايز تحلها. اولا التحليل . بتشوف ابرنامج بتاعك اية المطلوب منة بمعنى انك تجلس مع العملا وتعرف كل كبيرة وصغيرة هما عايزين يعمولوخا فى البرنامج وتشوف لو فى برنامج موجود اصلا تدرسة وتعرف اية المشاكل االى كانت فية واية السبب اللى جعل العميل يغير البرنامج ثانيا التصميم
بتبدى تشوف اية افضل طريقة لتصميم البرنامج زتنفذة بالكامل على ورق خارجى بمعنى انى لوكان فية قواعد بيانات تبدى تربط جداولك على الورق وتشوف هل فى دوال هيتم استخام كتير هل هتاج اعمل فئات فى البرنامج ثالثا التنفيذ ابتدى اشوف اللعة الى انا بفضل وانفذ البرنامج ومنساش اى اعمل مصيدة اخطاء Catch Error رابعا الاختبار وبعد ذلك التعديل ارجو ان اكون وفقت ولو بدرج بسيطة
amir عضو بدرجة مهندس إستشارى
عدد المساهمات : 1687 تاريخ التسجيل : 12/11/2007 العمر : 37 الموقع : computrs laps رقم العضوية : 236 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الخميس 27 ديسمبر - 10:42
اعتقد ان تحسين البرنامج وزيادة كفائته وسرعته يأتي من الفكرة الاساسية لعمله اي الالجورزم التي سيعمل بها لأداء المهمة المطلوبة كلما اتينا بفكرة افضل تؤدي المطلوب بعدد اقل من الخطوات كلما كان البرنامج افضل .
TrueFact عضو مرشح للإشراف
عدد المساهمات : 9 تاريخ التسجيل : 03/11/2007 العمر : 41 الموقع : Egypt رقم العضوية : 192 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الأحد 30 ديسمبر - 1:01
رغم إني لم أدرس حاسبات ونظم إلا لسنة واحدة فقط، لكنها كانت أكثر تخصصاً من قسم حاسبات ونظم بكلية هندسة، وعلى هذا الأساس يمكنني أن أضيف القليل لهذا الموضوع رغم أنه لم يعد مجال تخصصي.
أولاً وقبل كل شيء يجب عليك بالفعل وكما ذكر ahmednet أن تحلل البرنامج في محاولة لفهم البرنامج وما المطلوب منه لتعرف ما هو المطلوب منك. فأنت إذا لم يكن عندك خلفية عما يفترض بالبرنامج أن يفعله فسيكون عليك التعديل كثيراً في كود البرنامج أو تسليمه ناقصاً وهو ما لن يرضي العملاء. ثانياً: وبعد أن تعرف مهام البرنامج ومتطلباته تنفيذه، عليك أن ترسم كيفية عمل البرنامج، من خلال الخوارزميات. ففي الوقت الذي يهمل فيه الكثيرين الخوارزمية Algorithm على اعتبار أنها من المبادئ التي يدرسها طلاب السنة الأولى لمساعدتهم في تدبير أمورهم وتنفيذ برامجهم، إلا أن أهميتها ترتكز في عدة نقاط: 1- تضع تسلسل عمل البرنامج وتحدد عناصره 2- تجعلك متيقناً من أنك لم تنسى مهمة أو جزءيفترض بالبرنامج أدائها 3- تجعلك متيقناً من أنك لم تنسى ربط بعض العناصر ببعضها (وهذه مهمة لك YeHi@$MmZ ما دمت تريد العمل بشدة باستخدام OOP. 4- تربطك بجدول زمني لتسليم المشروع في وقته المحدد وهو أمر مهم عند عملك لدى الشركات أو حتى لحسابك الخاص بعد التخرج، فيوم تأخير واحد كفيل بإضاعة جهد شهور متتالية. 5- لن تضيع وقتك في محاولة لأداء مهمة ما لتكتشف لاحقاً أنك لا تحتاجها أو أنها غير مطلوبة أو كان هناك ما هو أكثر أهمية وأولى بالوقت. ولعل هذه ما وصفها ahmednet بمرحلة التصميم. ثالثاً: مرحلة التنفيذ: وهي المرحلة التي ستبدأ فيها بنقل أفكارك من على الورق إلى الكمبيوتر، وبالطبع يوجد الكثير من لغات البرمجة، وأياً كانت تلك اللغة فكن على ثقة أنها يمكنها أداء ما ستفعله غيرها بالضبط، فأحد القواعد الأولى البرمجة هي كالتالي: لو استخدمت كل اللغات البرمجة المعروفة لصنع برنامج يجمع الرقمين واحد واثنان لحصلت على نفس لغة الكمبيوتر الثنائية، بكلمات أخرى، فلغة البرمجة هي مجرد أوجه مختلفة لنفس الأداة. أما عن قوة لغة عن الأخرى فذلك يتركز في بعض النقاط الثانوية. فعلى سبيل المثال: C# هي أحد فروع C++ والتي هي بدورها مبنية على أساس C والفرق بينهم أن C لا تمتلك بشكل مبني ضمناً الأدوات اللازمة لبناء واجهات رسومية GUI وعلى مستخدم اللغة أن يرسمها بالأوامر النصية Syntax أما C# فهي لغة تم تخصيصها لبرمجة الألعاب من خلال حذف جميع الأوامر التي لا تتطلبها برمجة الألعاب. وبهذا الشكل تكون C++ أكثر شمولية وقوة من C#. ونقطة الضعف الوحيدة لفيجوال بيسك أنها تعيد ترجمة الملف التنفيذي إلى لغة الآلة في كل مرة يتم تنفيذ البرنامج فيها مما يجعلها أبطأ في تنفيذ البرامج، أما ما عدا ذلك فهي على كفاءة تامة لتنفيذ أي برامج تطلب منها.
أما بالنسبة لاستخدام الواجهات الرسومية، ففيجوال بيسك Visual Basic جعلت من هذا الأمر لعبة أطفال لا تحتاج لمهارة تذكر في البرامج العادية. فواجهة مثل واجهة برنامج WinAMP لن تأخذ أكثر من 5 دقائق لو كنت تمتلك الصور اللازمة جاهزة في متناول يدك ورغم ذلك فالبرنامج يتمتع بالشكل الجميل الجذاب دون تعقيدات في برمجة هذه الواجهة. ولا تنسى أن أقوى نظم التشغيل اليوم تعتمد على الأوامر النصية وليست الواجهة الرسومية، فأنظمة التشغيل مثل يونيكس، لينوكس وبي إس دي ما زالت حتى يومنا هذا تأتي مع الاختيار بأن يتم تنصيبها بواجهتها الرسومية أو بدونها. ولا تعتقد أن نظام التشغيل ويندوز هو نظام تشغيل أصلاً، فكما ذكر عنه Kevin Metnick أنه "حشرة في عالم أنظمة التشغيل" عودة مرة أخرى للبرمجة وخطواتها، في رابعاً: الاختبار: لا تكن واثقاً أبداً من نفسك للدرجة التي تجعلك تهمل هذه النقطة، ولا تختبر البرنامج بنفسك، انشره بين أصدقاءك وزملاءك أو حتى على شبكة الانترنت ودع الآخرين يقيمون البرنامج.
آمل أن تكون هذه الكلمات مفيدة وألا تكون قد أضاعت وقتكم فيما لا يضيف جديداً لمعلوماتكم...
TrueFact عضو مرشح للإشراف
عدد المساهمات : 9 تاريخ التسجيل : 03/11/2007 العمر : 41 الموقع : Egypt رقم العضوية : 192 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الأحد 30 ديسمبر - 1:02
ملاحظة أخيرة في مجال برمجة الواجهات الرسومية... إذا أردت فعلاً أن تحترف في هذا المجال، وإذا كنت تبحث عن تحدي جدير بالوقت والمال، فحاول أن تبرمج الألعاب. فالألعاب برامج تدمج بين الرسوميات ثلاثية الأبعاد التفاعلية مع البرمجة المتجددة المشروطة.
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الثلاثاء 1 يناير - 8:30
ألف شكررر يا TrueFact
ENG_FULLA مهندس جديد
عدد المساهمات : 48 تاريخ التسجيل : 17/11/2007 العمر : 38 رقم العضوية : 261 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الجمعة 4 يناير - 14:24
جزيلا على كل ردودكم وأنا أسفة جدا إنى أتخرت فى الرد ولكن كان معانا إمتحانات وكدة وشكرا ليك يا بشمهندس YeHi@$MmZ على إقتراحاتك وفعلا أى واحد عايز يكتب برامج كويسة لازم يخلى باله من إن الuser ممكن يدخله أى حاجة فيعمل حسابه عن طريق ال Exeption handling ولازم كمان الواحد يعرف لغات كتير وميلتزمش بلغة واحدة يكتب بيها كل البرامج لأن ممكن لغة تانية غيرها تفيده أكتر وتوفر له وقت وجهد وتطلع البرنامج بشكل أحسن وكمان لازم نستفيد من أفكار بعض .
وياريت تجيب لنا أفكار مبرمجين محترفين أكيد ده حيفيدنا كتير وأنا إن شاء الله حبتدى بالناحية دى ونحاول نجيب أفكار مبرمجين محترفين ونتناقش فيها
و ليكم كلكم على ردودكم الحلوة دى
أنا إللى عايزاه من الموضوع ده إنه يكون موسوعة لل programming tricks يعنى اى حد كان بيكتب برامج حتى فى إعدادى وقابل كشكلة وعرف حلها إزاى يقولنا علي المشكلة والحل ممكن كمان واحد بكتب برنامج بكود معين وإكتشف طريقة تانية لحل البرنامج بشكل أسهل وممكن مش كل الناس عارفينها ممكن يقولنا عليها فى الموضوع دة.
drmsaber دكتور مهندس بكليه هندسه قسم حاسبات
عدد المساهمات : 137 تاريخ التسجيل : 01/01/2008 العمر : 51 رقم العضوية : 447 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الإثنين 7 يناير - 0:39
البرمجة درجة من سلم يبدأ بمشكلة تحتاج لحل باستخدام الحاسب و بعدها توصيف و تحليل و تصميم ثم تنفيذ
فاذا مرت المراحل السابقة للبرمجة بنجاح سهلت مهمة المبرمج
اذا كنت تنوى احتراف البرمجة فالنصيحة باخذ اخر ما وجد فى السوق من لغات البرمجة
و من موقع خبرة فى كلتا اللغتين
الاعلى كعبا الان c# -مشتقة من لغات c and c++ and java and visual basic -
و توصف بانها لغة ورثت كفاءة و سرعة c و مميزات oop من c++ و تصميم الواجهات GUI من java و سهولة visual basic
تليها java
و ان تيسر الوقت ساضع بعض الوصلات و الشروح للنقاط المهمة فى كلتا اللغتين و اهلا باى اسئلة
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الإثنين 7 يناير - 6:06
شاكرين أفضالك يا دكتور
ومقدرين الوقت اللى أخدناه من حضرتك
وحقيقي لازم ناخد بالغات المتقدمة والأحدث زى ال C# بس تعليق بسيط انا اتعلمت c# وأخدت جزء GUI كبير منها لكن كان نظامها drag & drop لل components
فماقدرتش أفهم حاجة في ال OOP وأهمها ال inheritance وال interfaces وكدة
لكن مع ال GUI في الجافا انا مادرستش منها كتيير وحسب علمى ان مالهاش كومبايلر بواجهة رسومية من أجل ال GUI واحنا بستخدم JCreator في الكلية فانا قصدي ان GUI لو اتعلمناها ع ال جافا حيكون أفضل لاننا حنفهم معنى ال OOP بجد وكل كبيرة وصغيرة فيها وبعدين حنلاقى الدنيا سهلة جداً في ال C# GUI ولا ايه رأى حضرتك ؟
وفيه حاجة كمان دلوقتى لو عايز أعمل برنامج بسيط بواجهة رسومية انا ماعرفش ال VisualBasic ،، أقدر أعمله بال C# أو بالجافا طب دة حيأثر ع برنامجى من ناحية ان لازم ال client يكون عنده الدوت نت فريم وورك أو ال JDK وكمان البرنامج حيبقى أبطأ مع اللغات المتقدمة طب يبقى كدة ايه الحل !! انى أرجع للغات القديمة وأتعلم Visual Basic وأشتغل بالفيجوال ستوديو 6 بدل الدوت نت عشان أتخلص من حكاية ال بطأ ومن ال enviroment اللى حيشتغل عليه البرنامج .Net frameWork / JDK يبقى كدة خالفنا كلام الناس كلها اننا بدل ما نشوف اللغات الحديثة نرجع للغات القديمة!!!!!!! ودى حاجة مشوشانى جداً
drmsaber دكتور مهندس بكليه هندسه قسم حاسبات
عدد المساهمات : 137 تاريخ التسجيل : 01/01/2008 العمر : 51 رقم العضوية : 447 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الإثنين 7 يناير - 12:48
لا ترجع للخلف
و لا تشغل بالك بالتفكير كثيرا فى الاسماء
المهم وجود مشكلة تحتاج لبرنامج
و من بعدها البحث عن امكانيات اللغة لتنفيذ برنامج لحل المشكلة
عند استخدام c# او java يتكون البرنامج من شقين اساسين اولهما computing engine او الجزء الخاص بالحسابات -متغيرات + ثوابت + حلقات تكرارية + هياكل بيانات ..الخ-
ثم الجزء الاخر GUI او واجهة المستخدم و هى خاصة بالتعامل مع الادخال و الاخراج ( مربعات نص + قوائم + ازرار + حاويات الخ...)
مشكلة drag and drop فى visual studio انه لا يساعد فى اتقان استخدام مفردات اللغة و لكن له مزية سهولة و سرعة الانتاج
و كذلك oop فالمفروض انها تجعل البرمجة اكثر سلاسة و مرونة و سهولة فى الصيانة و التعديل من خلال تقسيم البرنامج لمجموعة من الفئات classes و الكائنات objects
بخصوص الجافا فهناك JDK و هى تحتوى على ملف javac و هو مترجم الكود و المسئول عن تحويل الكود (امتداد java ) الى java byte code (امتداد class )
و من بعد ذلك لابد من وجود Java run time machine و المسئولة عن تحميل و تشغيل ملفات class
لو فيه اسئلة تانى اكتب و لا تتردد
PRINCESS مشرف عام على الأقسام ومشرفة قسم إسلاميــات وكورسات هندسيه
عدد المساهمات : 2385 تاريخ التسجيل : 28/06/2007 العمر : 36 الموقع : جامعة أسوان رقم العضوية : 19 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الإثنين 7 يناير - 14:34
بشكر جدا دكتور محمود علي صابر علي مشاركته لينا الأفكار والخبرة
وبالنسبة للموضوع فانا شايفة انه مفيد فعلا وخصوصا لو كملناه وقولنا ايه المشاكل اللي قابلتنا قبل كده في البرمجة بالنسبة للغات البرمجة كل لغات البرمجة ممكن نعمل بيها اي برنامج بس حتفرق معانا السهولة في توفير الوقت والمجهود
بالنسبة للفجوال بيسك كانت الأفضل بالنسبة لي لغاية ما اتعلمت سي شارب وتبقي الفورتران والسي ++ مجهولة بالنسبة لي بعض الشيء لاننا ما درسنهاش بتوسع في الكلية
بالنسبة للمشاكل اللي قابلتني في البرمجة
1- بالنسبة لل GUI كنت فاكرة ان كل ما يخلص معايا الفورم او ما يكفيش كل الازرار او لما ابقي عايزة اعمل برنامج كبير وفيه كذا واجهة بتتغير كنت بعمل فورم جديد واكمل البرنامج عادي لغاية ما اكتشفت ان بالطريقة دي كأني بعمل برنامج جديد وده بيسبب تقل في البرنامج وبطء يعني كتير مننا يعمل زرار لما ندور عليه ينقلنا لفورم جديدة فيها بقية البرنامج بس ده طلع مش صح والمفروض اننا نعمل container جديد ونكمل فيه البرنامج ومثال عليه في السي شارب ممكن نستخدم panel جديدة وفي الفجوال بيسك ممكن نستخدم frame بس انا ما جربتهاش في الفجوال بيسك بصراحة
يعني مثلا برنامج فيه كذا واجهة او كذا صفحة نخلي فيه زرار لما ندوس عليه يخفي الcontainer الاولي بكل اللي فيها ويظهر ال container الجديد بكل الحاجات الجديدة اللي فيه وهكذا
2- تاني مشكلة ظهرت بعد استخدام الcontainers وهي انه لازم كلهم يبقو محطوطين في الفورم الاصلية يعني لو نزلنا container جديد من الادوات واحنا منشطين container قبله حيبقي ال container الجديد موجود في ال container القديم وساعتها لما حاجي اخفي القديم حيختفي معاه الجديد لانه مندرج تحته ولازم برده ساعتها اخد بالي انا بحط الازرار والتكست بوكس مثلا فين يعني لو عايزة احطهم في الفورم ابقي منشطة الفورم قبل ما اعملهم drag & drop ولو عايزة احطهم في ال container يبقي لازم ابقي منشطاه الاول
وعلشان لو حصلت اخطاء او ما اخدتش بالي واتحطت حاجة في مكان مش صح او لو عايزة اصلا ما اهتمش بالحكاية دي يبقي لازم اتعلم ابرمج الادوات يعني لما احط زرار مثلا يبقي اكتب مقاسه في الاكواد ومش عن طريق الخصائص بتاعته
وفي الاكواد دي حلاقي ان مكتوب فيها الزرار ده محطوط فين هل في الفورم ولا في الcontainer وهكذا وممكن بكل بساطة اعدل فيه وفي خصائصه
وده عن طريق البرمجة في الملف اللي اسمه Form1.Designer.cs في السي شارب وفي الفجوال بيسك دورت عليه وما لقتهوش بس اكيد فيه ملف زيه نقدر نبرمج فيه الادوات عن طريق الاكواد
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الإثنين 7 يناير - 18:40
drmsaber كتب:
لا ترجع للخلف
و لا تشغل بالك بالتفكير كثيرا فى الاسماء
المهم وجود مشكلة تحتاج لبرنامج
و من بعدها البحث عن امكانيات اللغة لتنفيذ برنامج لحل المشكلة
عند استخدام c# او java يتكون البرنامج من شقين اساسين اولهما computing engine او الجزء الخاص بالحسابات -متغيرات + ثوابت + حلقات تكرارية + هياكل بيانات ..الخ-
ثم الجزء الاخر GUI او واجهة المستخدم و هى خاصة بالتعامل مع الادخال و الاخراج ( مربعات نص + قوائم + ازرار + حاويات الخ...)
مشكلة drag and drop فى visual studio انه لا يساعد فى اتقان استخدام مفردات اللغة و لكن له مزية سهولة و سرعة الانتاج
و كذلك oop فالمفروض انها تجعل البرمجة اكثر سلاسة و مرونة و سهولة فى الصيانة و التعديل من خلال تقسيم البرنامج لمجموعة من الفئات classes و الكائنات objects
بخصوص الجافا فهناك JDK و هى تحتوى على ملف javac و هو مترجم الكود و المسئول عن تحويل الكود (امتداد java ) الى java byte code (امتداد class )
و من بعد ذلك لابد من وجود Java run time machine و المسئولة عن تحميل و تشغيل ملفات class
لو فيه اسئلة تانى اكتب و لا تتردد
شكرأ جزيلاً يا دكتور حضرتك بيتقول ما ارجعش للخلف يعنى خلاص ماحاولش أتعلم فيجوال بيزك وأقووى نفسي في الجافا والسي شارب ؟
طب كدة انا لو عندى برنامج فورم صغير مش برده الأفضل انى اعمله بالفيجوال بيزك احسن من انى أعمله بلغات ال virtual machine زي ال c# وال جافا ع أساس انه أسرع !يا ترى معلوماتى صح عن الموضوع دة ؟
وكنت عايز أعرف ايه هو ال API والفرق ما بين Java 2 Standard Edition (J2SE), Java 2 Enterprise Edition (J2EE), and Java 2 Micro Edition (J2ME). في الجافا !!!؟ وكمان أعرف ال software Engineering ? ويا ترى هو طريقة مثلى لإنى أكتب برامج بقواعد معينة ولا ايه بالضبط ! وكمان انا ان شاء الله ناوى أااخد كورس شبكات في الأجازة_ لأحد الشهادات العالمية بس أنا متلخبط في شهادات ال MCSE لميكروسوفت ولا السيسكو ؟ ولو حبيت ااخد ال 2 يا ترى أبتدى بايه !! ومين حيفيدنى أكتر في مجال العمل
و
معلهش أنا بسال كتييير _ صدعت حضرتك انا أسف بس دى فرصتنا يا دكتور الصراحة
وجزاك الله كل خير
drmsaber دكتور مهندس بكليه هندسه قسم حاسبات
عدد المساهمات : 137 تاريخ التسجيل : 01/01/2008 العمر : 51 رقم العضوية : 447 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الإثنين 7 يناير - 22:42
1- c# اسرع من فيجوال بيسك 2- api مجموعة من الفئات classes مرتبة فى packages تاتى مع JDK و هى باختصار مكتبة لاكواد جاهزة بهدف تسعيل مهمة المبرمج زى stdio.h فى C
3- تصميم الواجهات GUI محتاج لدراسة و موهبة و الهدف ليس فى وضع الكثير من المتحكمات فى الفورم الواحدة بقدر اداء الوظيفة المطلوبة باقل عدد ممكن من التفاصيل الرسومية 4- هندسة البرمجيات software Engineering هو علم مهم اساسى لكل من يعمل فى صناعة البرمجيات و ان كنا لا ندرسه بطريقة مباشرة فى الهندسة فستجده فى كل مواد البرمجه من اعدادى لرابعة بطريقة غير مباشرة
5- الدورات : خذ كل ما يتاح لك سواء فى الكلية او ما تقدر على دفع رسومه الاولوية حسب الرغبة فاذا كنت تنوى العمل فى مجال الشبكات فدورات CCNA اولى و اذا كنت تميل للبرمجة فدورات ميكروسوفت اولى
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الثلاثاء 8 يناير - 3:08
ENG_FULLA مهندس جديد
عدد المساهمات : 48 تاريخ التسجيل : 17/11/2007 العمر : 38 رقم العضوية : 261 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الثلاثاء 8 يناير - 12:08
جدا يا دكتور محمود على مشاركاتك وتعاونك الجاد معنا إحنا فعلا محظوظين إن حضرتك معانا فى المنتدى أكيــد حنستفيد جدا من حضرتك وبالنسبة لموضوع البرمجة فيه ناس كتير بتحب البرمجة ونفسها تتعلم تحترف برمجة مش عارفة تبتدى إزاى زى أنا مثلا أنا أخدت دورات برمجة وإن شاء الله حاخد دورات تانى بس دة مش كفاية يا ريت حضرتك تفيدنا وشكرا مرة تانية
amir عضو بدرجة مهندس إستشارى
عدد المساهمات : 1687 تاريخ التسجيل : 12/11/2007 العمر : 37 الموقع : computrs laps رقم العضوية : 236 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الثلاثاء 8 يناير - 12:38
drmsaber كتب:
4- هندسة البرمجيات software Engineering هو علم مهم اساسى لكل من يعمل فى صناعة البرمجيات و ان كنا لا ندرسه بطريقة مباشرة فى الهندسة فستجده فى كل مواد البرمجه من اعدادى لرابعة بطريقة غير مباشرة
ياريت يادكتور نستفيد من حضرتك في موضوع هندسة البرمجيات والالجوريزم لأن مع أهميتها مفيش منهج مخصوص لها في الكلية والف شكر لمشاركات حضرتك معانا.
drmsaber دكتور مهندس بكليه هندسه قسم حاسبات
عدد المساهمات : 137 تاريخ التسجيل : 01/01/2008 العمر : 51 رقم العضوية : 447 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الثلاثاء 8 يناير - 22:10
المشاريع و التطبيقات اهم من الدورات الدورات تضع رجلك على بداية السلم المهم التطبيق استخدام اللغة فى عمل برامج مختلفة
لا زلت ارشح c#
هندسة البرمجيات كما قلت بتتعلمها من خلال 4 او 5 مواد للبرمجة و ده افضل للمهندسين من اخدها كمادة واحدة سيغلب عليها الطابع النظرى
لا مانع عندى من اجابة اى سؤال ....لكن الشرح بالتفصيل فلا ارحب به الان
رئيس الاتحاد مهندس بيشارك كويس
عدد المساهمات : 68 تاريخ التسجيل : 14/11/2007 العمر : 37 الموقع : رعاية الشباب رقم العضوية : 242 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الأربعاء 9 يناير - 0:28
د/محمود انا أخد كورس وmicrsoft components like ado.net ,db. windows application and web application وعمات برامج كتير............ لكن نفسى اتعلم اعمل finishللحاجات دي بمعنى انها تبقي برامج أعمل لها setup واشغلها ويقدر يستخدمها اي user مشكور مقدما
عدل سابقا من قبل في الأربعاء 9 يناير - 19:38 عدل 1 مرات
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الأربعاء 9 يناير - 9:37
رئيس الاتحاد كتب:
د/محمود انا أخد كورس c#وmicrsoft components like ado.net ,db.windows application and web application وعمات برامج كتير............ لكن نفسى اتعلم اعمل finishللحاجات دي بمعنى انها تبقي برامج أعمل لها setup واشغلها ويقدر يستخدمها اي user مشكور مقدما
قصدك تعمل
install(set up ) packages ? لو كن فهمتك صح _ قوللى فيه برامج كتييير بتحول لك البرنامج بتاعك لset up
عدد المساهمات : 5020 تاريخ التسجيل : 25/06/2007 العمر : 37 الموقع : سرى رقم العضوية : 10 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الأربعاء 9 يناير - 11:09
عشان نكمل الموضوع الجميل دة
ونخليه فعال أكتر وفيه مناقشات أكتر وبعد ما أخدت الإذن من صاحبة الموضوع ENG FULLA
انى اقتبس النصائح من كبار المبرمجين تعالوا نتناقش في النصيحة الأول لكى تكون مبرمج محترف :::::
مقتبس من الأخ Tymyah
في أحد المنتديات العربية الكبرى
الموضوع الأول وهو روح الجماعة والعمل الجماعي وكيفية بدء مشروع ناجح:
أولا أحب أن أثير نقطه نجهلها أو نتجاهلها أو نتكبر عليها ألا وهي روح الجماعة أو العمل الجماعي فما من مشروع ناجح حتى الآن إلا بفضل الله أولا ثم بفضل روح الجماعة أو العمل الجماعي "فاعتصموا بحبل الله جميعا ولا تفرقوا" الآية فنحن العرب وهذا الداء مع الإعتذار لإخواني أكثر ما يكون في المصريين وبالمناسبه أنا مصري وبعض العرب أيضا ألا وهو حب الإنفراد بعمل كل شيئ وحب الحفاظ على ما لديه من معلومات لكي لا يعرفها أخاه وينافسه بها . وأيضا عدم معرفة الواحد منا لقدره وإستطاعته "فرحم الله إمرئ عرف قدر نفسه" فأنا أستطيع أن أفعل أشياء لا يستطيع فعلها غيري وغيري كذلك عنده ما ينفرد به ويتخصص فيه لذلك يجب علينا الإيمان بالتخصص والعلم بأننا سيكفينا فخرا أن يتحدث الناس عن مشروعنا الذي قمنا به فيجب أن نعتبر مجازا أن إسم المشروع هو إسمي وإن أردت شهرة نفسي فعلي أن أبذل قصارلى جهدي ليعلو إسمي في كل مكان ويشاد به لذلك يجب أن نؤمن أن لكل واحد منا تخصص هذه هي البداية ثانيا بالنسبه لموضوع التخصص من حكم خبرتي وتعاملي مع الأوساط المبرمجين الأجانب تخيلوا!!!!! أن علم النفس يعتبر تخصص في عمل البرامج المحترفة!!!!! فقد يكون أحد أعضاء الفريق أو بعض منهم لا يفقهو عن البرمجه شيئ ولكنه يشارك بما يعلم في مجاله في البرنامج فالفنانين والمبدعين في الفن يشاركون بعمل GUI Graphical User Interface أو واجهة مستخدم محترفه لها مظهر لائق متناسقة الألوان وغير متكلفه أوزائده عن الحد وأن تكون وفق المعايير الأساسية المعترف بها عالميا لهذا المجال وسأشرح ذلك بالتفصيل إنشاء الله في المواضيع القادمة ومن له في علم النفس يشارك بوضع نصائح لعمل Themes مختلفه وأشكال متغيرة للبرنامج لكي لا تصيب المستخدم بالملل والذي له بأمور الترجمة يقوم بترجمة البرنامج والHelp Documents المرفقه بالبرنامج إلى اللغتين العربية والإنجليزية وهذه نقطه في غاية الأهميه لأنه كيف ستستطيع إشهار البرنامج إن لم يكن بلغتنا الحبيبه وأيضا باللغة السائدة الآن ألا وهي اللغة الإنجليزية وسامح الله العرب والمسلمون على هذا؟؟؟!!! إلى آخره من التخصصات التي تستطيع المشاركة في عمل البرنامج وهذا ليس تصنيف المحترفين في التخصصات في عمل البرامج الكبيرة ولكن أردت فقط الإيضاح به ولأننا إتفقنا على أن البرامج التي سنقوم بعملها ستكون من النوع البدائي أو المتوسط.
وهناك أيضا نقطة في غاية الأهميه وهي محور كل شيئ قلناه سلفا وهي كيفية تقسيم المهام على المجموعة فيجب أن يكون هناك أمير أو قائد للمجموعه هو الآمر الناهي الموجه للعمل ويجب إختياره بناءاً علي التخصص والخبرة وليس بناءا على المحبة والصداقة فلنترك الصداقة الى خارج العمل فهذا عيبنا الأول والله يا عرب وهو إدخال الأمور الشخصية في العمل والنفاق والتمادح وغيرها من الأمور التي توقف المسيرة وتخل بها فنحن نريد أن نكون في العمل في منتها الجد فمن أخطأ قل له أنت أخطأت في كذا وكذا ولكن طبعا بالطرق التي علمنا اياها ديننا الحنيف وكلنا نحفظها. فيجب إختيار أمير أو قائد للمجموعة حسب خبرتة في هذا الأمر وقدرته على التعامل مع الأمور وحنكتة القيادية في هذا التخصص ويفضل أن يكون من المتخصصين في مجال تكنولوجيا المعلومات .
وأيضا على كل مبرمج يريد أن يبدأ بهذا المجال سيكون عليه أن يلتزم بعدة قواعد منها: أن يكون متمكنا من اللغة الإنجليزية فهي ما تحتاجه فقط لتتعلم البرمجه ويفهمني بعض إخواني فهماً خاطئا في هذا الموضوع ظناً منه أنه ضليع باللغة الإنجليزية أو أنه لا يفقه عنها شيئا وإنما أقصد الإنجليزيه المعلوماتية أو الخاصة بمجال تكنولوجيا المعلومات أو مجال الكومبيوتر فهناك مصطلحات يجب أن تكون دائماً في ذهنك وأنت تتعلم ويجب أن تتعلم كيف البحث عن هذه المصطلحات في حالة الحاجة لها وأن تقوم بعمل قاموس لنفسك بهذه المصطلحات للرجوع إليها وقت الحاجة. الإيقان الكامل بأن روح الجماعة هي في المقدمة وأن يعمل المبرمج أو العضو ما يطلب منه بإتقان شديد وأن يستشير إخوانه في مايفعل لعله غفل عن شيئ فيذكره أخاه. محاولة التأقلم والتركيز في العمل الذي تقوم فيه فقط ولا تداخله بعمل آخر فصاحب بالين كداب كما يقول المثل فإذا كنت لا تستطيع لأنه يشغلك أمر ما فقل لقائد الفريق حتى يستطيع أن يساعدك وأن يأخذ في حسبانه ذلك لكي لا تؤثر على العمل الكلي وعلى عمل زملائك فالصراحة حلوه. كل واحد يلزم بعمل يعمله كما طلب منه فلا يزيد ولا ينقص فإن كان له رإي فليقله قبل البدء بالعمل لقائد الفريق لكي يعدل في خطة العمل إن قبل منه مشورته. الإلتزام بالقوانين التي توضع من قبل القائد لإدارة مجريات العمل. وبهذا نكون قد أنهينا الموضوع الأول من هذه السلسلة وأريد مشاركاتكم الهادفه في هذا الموضوع ولندع الشكر والتمادح الآن فتحن الآن إتفقنا وعزمنا على أن نبدأ بداية صحيحه فمن يريد إضافة شيئ لهذا الموضوع فليتفضل مشكورا وأقول لإخواني الذين لايفقهون في البرمجه من قال لك أني كنت أفقه فيها شيئاً فلقد كنت مثلك تماما في يوم من الأيام فلا يوجد شخص يخرج من بطن أمه مبرمج وإنما التعلم والمثابره عليه هما الذان يوصلان المرء إلى مايريد. والله أعلى وأعلم و السلام عليكم و رحمة الله و بركاته
PRINCESS مشرف عام على الأقسام ومشرفة قسم إسلاميــات وكورسات هندسيه
عدد المساهمات : 2385 تاريخ التسجيل : 28/06/2007 العمر : 36 الموقع : جامعة أسوان رقم العضوية : 19 Upload Photos :
موضوع: رد: كيـــــــف تكون مبــرمج محتـــــــــــــــــرف_ شارك برأيك الأربعاء 9 يناير - 13:58
YeHi@$MmZ كتب:
رئيس الاتحاد كتب:
د/محمود انا أخد كورس c#وmicrsoft components like ado.net ,db.windows application and web application وعمات برامج كتير............ لكن نفسى اتعلم اعمل finishللحاجات دي بمعنى انها تبقي برامج أعمل لها setup واشغلها ويقدر يستخدمها اي user مشكور مقدما
قصدك تعمل
install(set up ) packages ? لو كن فهمتك صح _ قوللى فيه برامج كتييير بتحول لك البرنامج بتاعك لset up
وغيره أؤمر بس وحجيب لك البرامج بشرحهاا ان شاء الله
وهو المطلوب
انا أعرف أعمل الباكينج في السي شارب بس في الاستوديو نفسه والبرامج دي جربت منها ولاقيتها معقدة من غير شرح فياريت لو تقدر تجيب شرح ليهم وكمان كنت عايزة اعرف هم بيعملوا الباكينج لكل البرامج بكل اللغات ولا خاصين بلغة معينة يعني ممكن استخدمهم في الفجوال بيسك مثلا؟؟؟