ماهي أفضل لغة برمجة؟

Abdullrahmanwasfi

أيهما أفضل/أقوى PHP أم ASP؟ وأي لغة أفضل/أقوى Java أم #C؟ , هل Perl أفضل/أقوى من Python؟

Visual Basic أم Delphi؟

إذا كنت متابعاً للمواقع المختصة في البرمجة ولغاتها فإنك حتماً صادفت مسبقاً أسئلة مشابهة. أو من الممكن أنك أنت قد قمت بطرح سؤال كهذا في أحد المنتديات، أو على أحد المبرمجين المحترفين، أو الأساتذة في الكلية أو الجامعة التي تدرس فيها.

إذاً دعنا نتناقش هنا لنعرف الإجابة الحقيقية، والتي لم يتوصل إليها أحد من قبل!

هل أنت مستعد لقراءة جميع ما سأكتب لتعرف الإجابة التي طالما حلُم العديد من الأشخاص التوصل إليها؟

هناك مئات المئات من النقاشات التي طُرحت مسبقاً وتحدّث فيها عشرات العشرات من الأشخاص، كل واحد منهم يقوم بالتسويق للغة التي يبرمج بها ويحترفها، ويحاول أن يثبت للبقية بأنها الأفضل بلا منازع. وماذا بعد تلك النقاشات!! هل توصل أحدهم لإجابة مطلقة؟ بالطبع لا.

إذاً، آسف ياصديقي العزيز. أستميحك عذراً، فليس هناك داعِ لإهدار الوقت مرة أخرى، والدخول في معركة جديدة مع مبرمجين وهواة آخرين فقط لإثبات أن Java هي أقوى لغة أو أن ASP أفضل وأقوى من PHP.

الأمر الغير مشكوك فيه هو أن تعلّم لغة C مهم جداً لتطوير المنطق البرمجي، وأن لغة سي تستخدم لبرمجة نواة Kernel أنظمة التشغيل. وأنها بمشاركة لغة التجميع Assembly تكون الأفضل للتحكم في أجزاء الكمبيوتر الملموسة Hardware. ولكن ذلك لا يجعلها أفضل لغة على الإطلاق. فانت على سبيل المثال، لا تريد أن تفني عمرك وأنت تحاول بناء نظام يعمل على الويب باستخدام لغة سي.

العثور على أفضل لغة برمجة هو أمر عائد على المبرمج نفسه، إضافة إلى نوعية التطبيق المراد برمجته. فلكل لغة جمهورها وتطبيقاتها. فمن خلال معرفتي الشخصية وخبرتي البرمجية فأنا ارى بأن PHP أفضل من ASP ولكن بالنسبة لشخص آخر فإن ASP هي الأفصل وذلك على افتراض أنه استغرق في البرمجة بواسطتها مايقارب العشر سنوات فأصبح يراها سهلة ومرنة وتلبي جميع احتياجاته.

عموماً، لغة البرمجة ليست إلا أداةً يقوم المبرمج بتطويعها حسب خبرته فيها لتناسب احتياجاته. وأفضل لغة هو أمر نسبي وليس مطلق. فعندما تريد معرفة ماهي أفضل لغة يتوجب عليك معرفة ذلك بالنسبة إليك أنت وبالنسبة لاحتياجك أنت وليس بالنسبة لفلان أو صديق لك.

اللغات المتشابهة من حيث الهدف كـ PHP - ASP و Visual Basic - Delphi، تؤدي نفس الغرض تماماً إلى حدّ ما. فعلى سبيل المثال: يمكن باستخدام إما فيجوال بيسك أو دلفي لبناء نظام مبيعات يتّصل بقاعدة بيانات مركزية ليقوم بجميع المهمات من تخزين وتعديل واسترجاع وحذف للبيانات إضافة إلى جميع العمليات الأخرى الأساسية في أي نظام مبيعات. ويمكن أيضاً استخدام إما PHP أو ASP لبناء نفس التطبيق المذكور ليعمل على الويب. ومسألة ضعف أو قوة التطبيق الناتج من حيث الأمان أو الاعتمادية أو السرعة أمر عائد على الطرق والأساليب التي يتّبعها المبرمج وليس لغة البرمجة بحد ذاتها.

أنا مؤمن بأن هناك لغات أسرع من لغات أخرى، ويمكن إثبات ذلك نظرياً وعملياً. ولكن عندما يقوم أحد المبرمجين باستخدام اللغة الأسرع فذلك لا يضمن له إنتاج برنامج يتّسم بالسرعة. فلربما كان اسلوب المبرمج خاطيء في إدارة الذاكرة أو معالجة البيانات.

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

بعض المواضيع التي ستفيدك:

أفضل 3 دورات لتعليم تطوير تطبيقات أندرويد

http://www.0prof0.com/2015/...

تعلم أساسيات تصميم صفحات الويب بالعربية مع هذا الموقع

http://www.0prof0.com/2015/...

الفرق بين تخصص البرمجة والشبكات (من الافضل)

http://www.0prof0.com/2015/...

منقول للفائدة من:

http://111000.net/prog/prog...

التعليق السابق

على أي أساس اخترت البايثون ثم هل قرأت ما كتبه ؟؟

لم أقرأ ما كتبه و من الواضح أنه نفس الهراء المعتاد.

اخترت البيثون لأنها تغنيك عن تضييع الوقت في تعلم العديد من لغات البرمجة فيمكنك أن تبرمج بها لأي منصة تريد ،لينكس ،ويندوز ،ماك ،برمجة الواجهات الرسومية ،البرمجة كائنية التوجه ،برمجة العتاد ،برمجة تطبيقات الويب ،برمجة تطبيقات الهواتف الذكية ،برمجة تطبيقات سطح المكتب ،برمجة التطبيقات التي تعمل بالتزامن و الموازات و هلم جرا .

ببساطة يمكنك فعل أي شيئ و المكتبات بسيطة جدا و يمكنك فهمها بسهولة و لديها مجتمع كبير جدا يدعمها.

ماذا عن الأداء إنها من أقل اللغات أداء إن لم تخني الذاكرة ؟؟

ثم إن هناك لغة جافاسكريبت تفوقت عليها تفوقت عليها تقريبًا في تعدد المنصات وأيضًا لغة C# فيمكنك بكليهما برمجة تطبيقات الوب وسطح المكتب والجوال ؟؟

ثم إن تعلم مكتبة جديدة لوظيفة جديدة لهو بمثابة تعلم لغة جديدة لغرض جديد

برمجة العتاد

كيف تستخدم بايثون في برمجة العتاد؟