الشبكة العربية لمطوري الألعاب

مبتدئ  Noha aly مشاركة 1

السلام عليكم انا مهندسة اتصالات وحبة مجال البرمجة واريد ان ادخل فيه وانتج انا بحب التفكير وبحب البرامج و بحب كتير Self study" ولذلك انا حبيت مجال البرمجة ، بس للأسف مش عارفة ابدأ ازاي مش عارفة ابدأ باي لغة برمجة
اريد ان اعرف مقدمة عن لغات البرمجة وعن اسماء كل لغات البرمجة؟؟؟؟
اريد ان اكون محترفة في Oracel or Java ?? هل ده يستدعي ان ابدأ اولا VB
شكراً جزيلا

خبير مدير وسام البهنسي مشاركة 2

ما ذكرته هو بالفعل ما أقترحه أنا كذلك. يعتمد خيار لغة البرمجة بشكل كبير على نوع البرامج المطلوب إنجازه في النهاية. بالنسبة لاختصاص هندسة الاتصالات، فإنني أتوقع الكثير من العمل على الويب أو الشبكات. لهذين المجالين، فإنني أعتقد أن Java هي بالفعل أنسب لغة. يفضل البعض البدء من لغة برمجة أبسط قليلاً من جافا، لكن الموضوع عائد في النهاية للشخص نفسه. قد يجد أن اللغة سلسة حتى وإن كانت أول لغة برمجة يتعلمها... طبعاً VB خيار وارد جداً أيضاً للبداية (أرجو أن يعلق على رأيي هذا الإخوة المختصين في فيجوال بيسك).

Oracle هي قاعدة بيانات متقدمة، وليست لغة برمجة تماماً. وطبعاً هي أفضل أنظمة قواعد البيانات الحالية، أعتقد أن خيار أوراكل جيد أيضاً.. ويمكنك البدء مع Microsoft Access أيضاً إن لم يكن لديك أي خبرة سابقة في التعامل مع قواعد البيانات من قبل، ثم الانتقال إلى أنظمة أكثر تقدماً مثل MS SQL و mySQL و Oracle.

كيف نبدأ؟ خبرتي الشخصية هي أن أفضل طريقة للبدء هي محاولة إيجاد كتاب والسير معه حتى النهاية ومن ثم الانتقال لكتاب آخر وهكذا حتى تتشكل لدينا قاعدة صلبة نوعاً ما. ومن ثم يمكن الانتقال إلى محاولة إنجاز مشروع فعلي مهما كان باستخدام ما تم تعلمه (أو إيجاد عمل يسمح بزيادة الخبرة في هذا المجال).

لذا الخطوة العملية الأولى برأيي هي التوجه إلى أقرب مكتبة تبيع كتب حاسوب، وتصفح مجموعة الكتب الموجودة وانتقاء ما تحسين أنه قريب إلى الفهم وسلس الشرح. إن كنت ترتاحين للكتب الإنجليزية فعليك بها، إلا أنني لا أجد عيباً في الترجمات العربية كنقطة بداية (في بعض الحالات الاستثنائية قد تجدين كتب عربية تتفوق على الإنجليزية).

هذا رأيي. وأرجو أن يغنينا أصحاب الاختصاص برأيهم كذلك...

وسام البهنسي
مبرمج في إنفيديا وإنفريمز

مبتدئ  Noha aly مشاركة 3

السلام عليك ورحمة الله وبركاته ، انا متشكرة جداً علي رأي حضرتك وعلي سرعة المساعدة لي بس اتمني كثير من المعلومات من حضرتك واكون شاكرة جداً لجهودك

خبير مشرف مؤيد مارديني مشاركة 4

حسناً، اسمحوا لي بمداخلة بسيطة☺

بالرغم من أن لجافا سمعة لا بأس بها في مجال برمجة الشبكات إلا أني لا أعتقد أنها اللغة الأمثل التي يبدأ بها مبتدأ تعلم البرمجة بسبب صعوبتها النسبية (و هي نقطة تأخذ عليها)، ما البديل إذن؟ واحدة من لغات دوت نيت الأبسط (VB.NET أو #C)..
مهلاً، ليس إطار عمل دوت نيت بالضعيف في التعامل مع الشبكات أيضاً، قم بتصفح System.Net Namespace (و خاصة في الإصدار 3.5 من دوت نيت الذي أضاف بعض التقنيات الجديدة مثل P2P) لتجد الكم الهائل من الـClasses التي ستسهل التعامل مع مختلف بروتوكولات الاتصال بسهولة.

كمصادر، يوجد مصادر لكل من جافا و دوت نيت في التعامل مع الشبكات إلا أن جافا تتفوق بكم أكبر من الأخيرة.

بالتوفيق!،

Moayad Mardini,
MSDN Forums Moderator

مبتدئ  Amro Kandeil مشاركة 5

السلام عليكم
لو تسمحوا لى بابداء الرأى
فأنا من رأيى ان الاساس لأى لغة برمجة ولفهم لغات البرمجة هو تعلم لغة السى اولا
واللى يتعلمها كويس ويعرف اوبجكت اورينتد معها يعنى يعرف سى بلس بلس يقدر يمشى بعد كدة فى اى لغة برمجة
فهى المدخل البسيط والصحيح لعالم البرمجة
اما بالنسبة للفيجوال بيزك انا عارف انها سهلة جدا ونتايجها مفرحة لكن للأسف اللى يبدأ بيها ويتعود عليها بيبقى صعب عليه يتعامل بعد كدة مع اى لغة برمجة تانية لانها متساهلة جدا مع المبرمج يعنى زى مابنقول ان الفيجوال بيزك بتكسب المبرمج عادات سيئة
بتخليه لايهتم بالكود ولا باسلوب كتابته مش مهم يركز اوى لأن هية بتظبط اى حاجة لو هوة غلط
يعنى انا رأيى انه يتدرج كما يلى
لغى سى ثم اوبجكت اورينتد مع معرفة السينتكس بتاع السى بلس بلس بعد كدة ممكن ينطلق لأى لغة ممكن سى شارب او جافا او اللى يحتاجه
شكرا

خبير  سلوان الهلالي مشاركة 6

السلام عليكم,
بالنسبة للغات البداية فأعتقد إن لغة ++C/C ليست مناسبة كلغة بداية خاصة إن كان الهدف الدخول في تخصصات عملية محددة مثل إدارة قواعد البيانات أو الشبكات, اما فيجوال بيسك فالأفضل تعلم إصدارات دوت نت منها, لأن الإصدارة 6 القديمة مصنوعة بطريقة تعطي القدرة على صنع البرامجيات من دون الحاجة لتعلم البرمجة بشكل صحيح (وذلك ليس الهدف).
وبرأيي إن جافا مناسبة خاصة بالنسبة إلى الغرض المطروح, ما إن تتعلمي لغة برمجة ذات أسس حديثة, يمكن حينها نظرياً تعلم أي لغة برمجة أخرى.
 
في النهاية فنحن جميعاً لا نتعلم لغات البرمجة فقط لأجل التعلم... ولكن لكي نستخدمها ونستفيد منها في مجالاتنا, أليس ذلك صحيح؟

مبتدئ  ammarrozza مشاركة 7

السلام عليكم
أهم قواعد بيانات على الترتيب
oracle: من انتاج الشركة نفسها وهي أقوى قاعدة بيانات في العالم لحجمها وقوتها, حيث انه لا يستطيع شخص واحد ان ينهيها لضخامتها, وتحمل الكثير من التخصصات بداخلها, وعادتا يعتمد عليها البنوك والشركات الكبرى لسببان, الاول انها تعمل على كل انظمة التشغيل وخاصة unix وهذا اهم شيء في الشركات الكبرى. وضخامتها
sql server: من انتاج Microsoft وتعتبر جيدة للمشاريع الصغيرة والمتوسطة وسهلة التعلم
mysql: لا يوجد عندي معلومات كثيرا عنها ولكنني سمعت ان شركة sun اشترتها (صاحبة java)

بالنسبة للغات البرمجة فهي:
assymbly: هي اساس kernal in all OS وتستخدم لتخاطب ال hardware والاقمار الصناعية والصواريخ وذلك لدقتها حيث التحكم بها يصل لكل bit

c/c++: من اقدم لغات البرمجة الممتازة والتي يعتمد عليها الكثير من المشاريع وتطوير انظمة التشغيل (حتى ما قبل win vista بالنسبة ل microsoft) وتستخدم ايضا في صناعة الالعاب والتحكم ايضا بالالات وال microcontrollers والكثير الكثير من المشاريع القوية, ولكنها صعبة احيانا, وهي اساس تعلم البرمجة في الجامعات الي الان, لانها هي التي تعطي نمط التفكير logic وهذا مهم جدا جدا جدا في البرمجة والحياة ايضا

java: من اقوى لغات البرمجة وقديمة جدا, بعد نزول .net2003 ترك الكثير من المبرمجين java واتجهوا الى .net, هذا اعطى افضليه لها مع زيادة رواتب موظفيها, قوة java أتت من انها مفتوحة المصدر وذلك اعطى الافضلية  لها ليتم تطويرها من قبل  مبرمجيها , اي العالم كله, وهذا ما حاولت Microsoft ان تقلدة وانتجت j++.net والذي اثبت فشله, تستخدم عادتا java مع oracle
تأتي قوتها ايضا لانها تعمل على جميع انظمة التشغيل والاهم Unix and Linux

vistal studio 6: كانت بها لغتان اساسيتان وهما
vc6 صعبة البرمجة جدا
vb6 من لغات الجيل الثاني والتي طورة الى vb.net لتصبح من لغات الجيل الثالث



بتاريخ 31 آذار 2008 06:43 م، قطب Amro Kandeil حاجبيه بشدة وهو يقول:

لغى سى ثم اوبجكت اورينتد مع معرفة السينتكس بتاع السى بلس بلس بعد كدة ممكن ينطلق لأى لغة ممكن سى شارب او جافا او اللى يحتاجه
هذا ما يدعى لغات الجيل الثالث, اي انها اصبحت object oriented



وفي 16 كانون الأول 2007 05:31 م، أعرب مؤيد مارديني عن رأيه بالموقف كالآتي:

، ليس إطار عمل دوت نيت بالضعيف في التعامل مع الشبكات أيضاً،

ان .net قوية في برمجة الشبكات, ولكن Java لا يستهان بها ايضا
دليل على قوة .net اذهب الى http://fadidotnet.org/
انه لصديق لي مؤلف اول كتاب عربي في برمجة الشبكات في .net وفعلا كتاب رائع


واخيرا ذكرة linux and unix وذلك لاهميتهما من جهة الاستقرار والقوة وغيره, والتي لا تتمتع بها windows نهائيا, وهذا ما اثبتته التجارب في السيرفرات حول العالم

ذكرة assymbly والتحكم بال hardware  لانك هندسة

اعتذر عن التطويل في الحديث

محترف مشرف عبد اللطيف حاجي علي مشاركة 8

وفي 31 آذار 2008 09:40 م، أعرب ammarrozza عن رأيه بالموقف كالآتي:

السلام عليكم
أهم قواعد بيانات على الترتيب
oracle: من انتاج الشركة نفسها وهي أقوى قاعدة بيانات في العالم لحجمها وقوتها, حيث انه لا يستطيع شخص واحد ان ينهيها لضخامتها, وتحمل الكثير من التخصصات بداخلها, وعادتا يعتمد عليها البنوك والشركات الكبرى لسببان, الاول انها تعمل على كل انظمة التشغيل وخاصة unix وهذا اهم شيء في الشركات الكبرى. وضخامتها
sql server: من انتاج Microsoft وتعتبر جيدة للمشاريع الصغيرة والمتوسطة وسهلة التعلم
mysql: لا يوجد عندي معلومات كثيرا عنها ولكنني سمعت ان شركة sun اشترتها (صاحبة java)
هذه هي أشهر الـ DBMS (Database Managment Systems) ولكنها ليست الوحيدة وليست Oracle أقواها فهناك بعض الأنظمة "المأكول حقها" وذلك لقلة تسويقها أذكر منها Sybase
 

في 31 آذار 2008 09:40 م، قال ammarrozza بهدوء وتؤدة:

assymbly: هي اساس kernal in all OS وتستخدم لتخاطب ال hardware والاقمار الصناعية والصواريخ وذلك لدقتها حيث التحكم بها يصل لكل bit
ليست كل الـ OS Kernels مكتوبة بالـ assembly لا بل إن الـ Kernels الجيدة هي تلك التي تحوي أقل كمية من الـ assembly coding أنظر كود الـ Linux كمثال. كما أنني أشك أن الـ assembly وحدها تستخدم في الأقمار الصناعية والصواريخ ومتأكد أنها لا تستخدم وحدها أيضاً في التخاطب مع الـ hardware وأحياناً لا تستخدم أبداً. أخيراً فإن الـ assembly لا تعطيك أي ميزة إضافية لا تعطيك إياها لغة عالية المستوى كـ C++ (بما في ذلك الوصول إلى الـ bits) أستثني من ذلك بعض التعليمات ذات الـ security المنخفضة 


في 31 آذار 2008 09:40 م، عقد ammarrozza حاجبيه بتفكير وقال:

c/c++: من اقدم لغات البرمجة الممتازة

لغة C مختلفة تماماً عن لغة الـ C++ ولا يوجد ما يدعى بلغة C/C++  

وفي 31 آذار 2008 09:40 م، قال ammarrozza متحمساً:

والتي يعتمد عليها الكثير من المشاريع وتطوير انظمة التشغيل (حتى ما قبل win vista بالنسبة ل microsoft)
للتنويه فقط أذكر أني قرأت إن Windows Vista يحوي على أجزاء مكتوبة بلغات الـ .NET
 

وفي 31 آذار 2008 09:40 م، ظهر شبح ابتسامة على وجه ammarrozza وهو يقول:

لانها هي التي تعطي نمط التفكير logic وهذا مهم جدا جدا جدا في البرمجة والحياة ايضا
في الحقيقة لغة C هي من نوع Imperative وهي بصراحة أسوأ نوع من لغات البرمجة للتفكير بشكل منطقي. هناك لغات أفضل من هذه الناحية كـ Prolog و CLIPS و Scheme 



أما في 31 آذار 2008 09:40 م، فقد تنهد ammarrozza بارتياح وهو يرد:

vistal studio 6: كانت بها لغتان اساسيتان وهما
vc6 صعبة البرمجة جدا
vb6 من لغات الجيل الثاني والتي طورة الى vb.net لتصبح من لغات الجيل الثالث

Visual Studio 6 -إن كان هذا ما تقصده- ليس لغة برمجة ولكنه IDE أو بيئة تطوير متكاملة لعدة لغات ومؤلف من عدة أقسام، منها: VC6 وهو أيضاً ليس لغة برمجة بحد ذاته ولكنه مترجم وبيئة تطوير بدائية للغتي C و C++ المعروفتين. أما VB6 فيمكن اعتباره حالة خاصة باعتبار أنه ليس هناك مترجم آخر للغة Visual Basic غيره، إلا أن المبدأ ذاته يمكن تطبيقه.

في 31 آذار 2008 09:40 م، غمغم ammarrozza باستغراب قائلاً:

هذا ما يدعى لغات الجيل الثالث, اي انها اصبحت object oriented
للدقة فإن لغات الجيل الثالث ليست الـ Object Oriented منها ولكنها هي المقروءة من قبل الإنسان. انظر http://en.wikipedia.org/wiki/Third-generation_programming_language لمزيد من المعلومات


بتاريخ 31 آذار 2008 09:40 م، قطب ammarrozza حاجبيه بشدة وهو يقول:

واخيرا ذكرة linux and unix وذلك لاهميتهما من جهة الاستقرار والقوة وغيره, والتي لا تتمتع بها windows نهائيا, وهذا ما اثبتته التجارب في السيرفرات حول العالم
متأكد من أنك نسيت ذكر ذلك لذلك سأذكره أنا. Linux و Unix هما نظاما تشغيل وليسا لغتا برمجة. لكني أؤكد وجهة نظرك من حيث استقرارهما.

عبد اللطيف حاجي علي
مبرمج
In|Framez

محترف مشرف عبد اللطيف حاجي علي مشاركة 9

وفي 16 كانون الأول 2007 03:31 م، قال مؤيد مارديني متحمساً:

بالرغم من أن لجافا سمعة لا بأس بها في مجال برمجة الشبكات إلا أني لا أعتقد أنها اللغة الأمثل التي يبدأ بها مبتدأ تعلم البرمجة بسبب صعوبتها النسبية (و هي نقطة تأخذ عليها)
ممم... هل لديك أمثلة عن كون Java أصعب من C# مثلاً؟
على فكرة مع أن بدايتي كانت مع VB6 إلا أنني أكره لغة Visual Basic سواء أكان الإصدار السادس منها أو اصدار .NET وذلك بشكل رئيسي لكونها تحتاج للكثير من الكلمات و الحروف لأداء مهام بسيطة. (Too wordy) بمعنى آخر تحتاج للكثير من "اللّعي"☺

عبد اللطيف حاجي علي
مبرمج
In|Framez

مبتدئ  ammarrozza مشاركة 10

السلام عليكم
شكرا اخي عبد اللطيف  على تصحيح بعض المعلومات,
 
لم اسمع عن Sybase بكل صراحة, يمكن ان تكون قوية لا اعلم
 
 

في 01 نيسان 2008 06:08 م، قال عبد اللطيف حاجي علي بهدوء وتؤدة:

كما أنني أشك أن الـ assembly وحدها تستخدم في الأقمار الصناعية والصواريخ

كلامك اكيد ولكن اهم الكود والذي يحتاجون اليه لسرعته ودقته يستخدمون assembly  بشكل مباشر, (كما يوجد لغات اخرى خاصة) هذا ما قاله لي بروفيسور روسي كان يعمل مدير قسم في مفاعل تشرنوبل, وقام بعمل بعض الاشياء في طيارات airbus القديمه,,,,,,,,,,,, ونفس الشيء قاله لي دكتور كان يبرمج الصواريخ في الجيش العراقي (حسب ما نقل عن لسانهم)



في 01 نيسان 2008 06:08 م، عقد عبد اللطيف حاجي علي حاجبيه بتفكير وقال:

فإن الـ assembly لا تعطيك أي ميزة إضافية لا تعطيك إياها لغة عالية المستوى كـ C++
انا لا اتفق معك هنا: والسبب هو
(لغة التجميع 8085 Assembly Language for MP

Defination & tipsلغات البرمجة العالية المستوى High Level Languages (HLL) هي اللغات القريبة من فهم الإنسان (c++, basic, pascal ... Visual Basic, Visual Studio.NET).
و لغات البرمجة المتدنية المستوى Low Level Languages (LLL) هي اللغات القريبة من فهم الحاسوب (لغة التجميع Assembly - لغة الآلة Machine Language).
اللغات المتدنية المستوى تختلف إيعازاتها باختلاف طراز المعالج CPU و الشركة المصنعة له.
أما اللغات العالية المستوى فيمكن أن تعمل برامجها على أي جهاز إذا وجد المترجم الخاص بها لهذا الجهاز.
أي برنامج يكتب بلغة عالية المستوى يجب أن يترجم إلى اللغة الوحيدة التي يفهمها الحاسوب و هي لغة الآلة Machine Language.
مترجمات اللغة العالية المستوى Compilers: هي برامج تترجم الإيعازات المكتوبة بلغة عالية المستوى إلى لغة التجميع ثم إلى لغة الآلة الخاصة بذلك المعالج.
كل "إيعاز Instruction" بلغة "التجميع Assembly" تقابلها بايت واحد بلغة الآلة مكونة أو اثنين أو ثلاثة. )نقلا عن
wikipedia (لم اجد الاصل الذي باللغة الانجليزية)
http://tinyurl.com/2mubp5

معناه ان الاساس Assembly والباقي هي ادوات لتسهيل الكتابة واستخدامها بشكل افضل و.....و.....و.....
 

وفي 01 نيسان 2008 06:08 م، قال عبد اللطيف حاجي علي متحمساً:

للتنويه فقط أذكر أني قرأت إن Windows Vista يحوي على أجزاء مكتوبة بلغات الـ .NET

كلامك صحيح, ولذلك ذكرة "ما قبل", وللاضافة قامت microsoft بتطوير vista على .net لتسمح للمبرمجين باستخدام اكبر كمية component به.
 
 
c/c++
أعني بها c او c++


 

وفي 01 نيسان 2008 06:08 م، ظهر شبح ابتسامة على وجه عبد اللطيف حاجي علي وهو يقول:

للدقة فإن لغات الجيل الثالث ليست الـ Object Oriented
معلومة جديدة علي, شكرا


 

أما في 01 نيسان 2008 06:08 م، فقد تنهد عبد اللطيف حاجي علي بارتياح وهو يرد:

ليست كل الـ OS Kernels مكتوبة بالـ assembly

كلامك صحيح, بحثت على الانترنت ووجدة ان Linux kernal مكتوب بلغة C
 
شكرا لكم