اولین سوالی که افراد علاقهمند به یادگیری برنامه نویسی می پرسند اینه که کدام زبان برنامه نویسی بهتره؟ کدامیک قوی تره؟ گاهی وقتها با توجه به اطلاعات محدودی که افراد کسب کرده اند اصرار دارند تا اثبات کنند فلان زبان برنامه نویسی بهتر و قوی تر است. تازه این قسمت خوب ماجراس. گاهی اوقات سوال خیلی کلی تر است. مثلا سوال وب بهتره یا اندروید؟
من این دست سوالات را خیلی ابتدایی و سطحی می دانم. اینکه ما بگوییم فلان زبان برنامه نویسی بهترین زبان برنامه نویسی است. یا فلان زبان برنامه نویسی بدترین زبان برنامه نویسی است ادعای نپخته و خامی است.
در واقع زبان های برنامه نویسی هرکدام هدف خاصی را دنبال می کنند و پشت هرکدام از آنها ایده بخصوصی وجود دارد. مجموعه از ویژگی ها و قابلیت ها در هر زبان برنامه نویسی نهفته است و نمی توان به صورت مطلق قضاوت کرد که فلان زبان خوب است یا فلان زبان بد است.
برای اینکه مساله روشن شود بهتر است یک مثال بزنم. فرض کنید دو ماشین را باهم مقایسه می کنید. هرکدام برای یک شرایط بخصوص طراحی شده اند و نیازهای خاصی را برطرف میکنند. یکی مصرف کمتری دارد. دیگری قدرت بیشتری دارد. یکی ارزان است و دیگری گران است. یک ماشین بسیار کاربرپسند است و ماشین دیگر بسیار قابل ارتقاء و تغییر. ممکن است ماشینی برای شرایط کوهستانی یا بیابانی طراحی شده باشد و ماشین دیگری برای داخل شهر. حال تصور کنید کسی از شما بپرسد کدام ماشین بهتر است. اگر بخواهید پاسخ منطقی به آن بدهید باید ابتدا سوال کنید که نیاز چیست و هدف سوال کننده از خرید ماشین چه می باشد. اگر قرار باشد یک ماشین نسبت به همه ماشین ها برتری داشته باشد پس دیگر نباید شاهد اینهمه تنوع ماشین باشیم بلکه همه باید سراغ یک ماشین خاص بروند...
شاید پیش خودتان بگویید ماشینی که در کوهستان و بیابان قابل استفاده است داخل شهر هم می توان از آن استفاده کرد. ولی آیا به هزینه های تهیه و نگهداری آن هم فکر کرده اید؟ آیا سادگی استفاده و تعمیر و لوازم جانبی یک ماشین داخل شهری را در نظر گرفته اید؟ مگر نه اینکه اقتصاد یعنی اختصاص منابع کمیاب به نیازهای بی انتها...
دقیقا به همین دلیل است که نمی توان گفت یک زبان برنامه نویسی بهتر از سایر زبان های برنامه نویسی است یا برعکس. چرا که نیاز ها و شرایط و سلیقه در انتخاب افراد بسیار موثر است و همین نکته نیز باعث شده است که تنوع زبان های برنامه نویسی بوجود بیاید.
اما میتوان در موارد مشخص قضاوت کرد که فلان تکنولوژی یا فلان زبان برنامه نویسی مناسب تر است. یا روحیه و اهداف یک فرد تناسب بیشتری با زبان برنامه نویسی مشخصی دارد. لذا در مقالات بعدی به این مطلب خواهم پرداخت و در بعضی محورها به مقایسه و توضیحات پیرامون آن می پردازم.