در این بخش برخی از انتقادهایی که معمولاً به زبان جاوا وارد میشود را مطرح کرده و آنها را بررسی میکنیم.
برخی بر این باور هستند که جاوا قدیمی است و کمکم از روند زبانهای محبوب خارج میشود. جاوا در سال 1995 متولد شده است و شاید اینک حتی از برخی از برنامهنویسانش نیز سن بیشتری داشته باشد؛ اما زبانهای بسیار قدیمیتری نیز وجود دارند که همچنان در صدر زبانهای محبوب برنامهنویسی هستند. واقعیت این است که زبان برنامهنویسی جاوا همچنان در صدر لیست معتبر Tiobe قرار دارد و به نظر نمیرسد به این زودیها هم آنجا را ترک کند و در واقع به طور مداوم نیز بر محبوبیت آن افزوده میشود. البته زبانهای دیگری هستند که میزان رشد محبوبیت بالاتری از جاوا دارند؛ ولی این نکته که جاوا در حال خروج از رده زبانهای محبوب است واقعیت ندارد.
این نکته جالبی است و با توجه به این که کاتلین به سرعت در حال رشد است، شاید برای بسیاری از افراد این سؤال را مطرح کند که آیا باید شروع به یادگیری جاوا بکنند یا کاتلین را بیاموزند؟
پاسخ این است که یادگیری جاوا در صورتی که بخواهید یک توسعهدهنده JVM باشید، یک ضرورت محسوب میشود. البته شما میتوانید زبانهای دیگری که از JVM استفاده میکنند را نیز بیاموزید؛ اما در صورتی که جاوا را یاد نگرفته باشید، چیز مهمی را از دست دادهاید. اغلب این زبانها به طور گستردهای به کتابخانههای جاوا اتکا دارند و عدم یادگیری جاوا به مهارتهای ما لطمه خواهد زد.
دانستن جاوا یک مزیت عمده محسوب میشود و پایهای برای زبانهای دیگر محسوب میشود. در واقع JVM با وجود زبانهایی مانند Groovy، Scala، Clojure و Kotlin بسیار غنیتر شده است؛ اما همه آنها علاوه بر JVM، به نوعی از جاوا الهام گرفتهاند یا با آن رابطه دارند.
بررسی زبانهای JVM دیگر به جز جاوا بسیار مناسب است، چون موجب بروز و ظهور ابداعها و نوآوریها میشود؛ اما این دلیل نمیشود که کسی یادگیری جاوا را کنار بگذارد، چون جاوا نقش بنیادینی برای همه این زبانها دارد و یادگیری آن سرمایهگذاری ارزشمندی محسوب میشود.
این سؤال را میتوان به همه توسعهدهندههای فرانتاند تعمیم داد و پرسید آیا ضرورتی برای یادگیری یک زبان سمت سرور مانند جاوا برای آنها وجود دارد؟
NodeJS بسیار عملی و محبوب است و با آن میتوان سرویسها را با سرعت و به طرز کارآمدی ایجاد کرد. با این حال جاوا در سمت سرور گزینه تثبیتشدهتری محسوب میشود.
پاسخ به سؤال فوق تا حدودی زیادی به شخص برنامهنویس بستگی دارد که آیا میخواهد برای همیشه یک توسعهدهنده فرانتاند بماند و یا ترجیح میدهد با برنامهنویسی سمت سرور نیز آشنا شود. کدهای سمت سرور زیادی با جاوا نوشته شدهاند و حتی اگر کسی قصد نداشته باشد خودش کد جاوا بنویسد؛ اگر به یادگیری جاوا نپردازد از خواندن این کدها نیز محروم خواهد شد.
اگر شما روی یک پروژه NodeJS با استفاده از جاوا اسکریپت هم در سمت سرور و هم کلاینت کار میکنید، یادگیری جاوا برای شما بسیار مناسب خواهد بود و یک سرمایهگذاری ارزشمند برای آینده محسوب میشود.
نسخه Enterprise جاوا به دلیل استفاده از XML برای پیکربندی bean شهرتی منفی کسب کرد و این شهرت منفی سالها با آن همراه بوده است؛ گرچه نکته فوق دیگر صحت ندارد.
امروزه فریمورکهای زیادی برای نوشتن پروژههای جاوا معرفی شدهاند که ما نیز در بخشهای پیشین این نوشته برخی از آنها را معرفی کردیم.
جاوا روی ماشین مجازی جاوا (JVM) اجرا میشود و از این رو زمان راهاندازی کندتری دارد. بدیهی است که در قیاس با برنامه نوشته شده به زبان C که ماهیتی شبیه به bash دارد، زمانی که برای شروع به کار JVM مورد نیاز است بسیار طولانی محسوب میشود. مسلم است که اپلیکیشنهای بسیار کوچک و سبک که به زبان بومی پلتفرم نوشته شدهاند در رقابت با JVM برنده خواهند بود. اما آیا این دلیلی بر عدم استفاده از JVM است؟ اگر هم چنین باشد، فقط در همین مواردی که اشاره کردیم خواهد بود.
سؤال دیگر این است که پس جاوا برای چه چیزی مناسب است؟ و آیا این روزها سریعتر شده است؟
جاوا زبانی شگفتانگیز است. جاوا به عنوان محبوبترین زبان برنامهنویسی دنیا در این لحظه یکی از مهارتهای اصلی برای توسعه نرمافزار محسوب میشود.
البته شما مجبور نیستید به جای هر زبان دیگری جاوا بیاموزید. برای اغلب افراد تبدیل شدن به یک برنامهنویس چه به صورت سرگرمی و چه حرفهای ماهها زمان میبرد. بنابراین نباید خود را به جاوا محدود کنید. اما عدم یادگیری جاوا باعث میشود از جامعه عظیم و دینامیک آن محروم شوید.
از طرف دیگر فرایند توسعه جاوا نیز سرعت بیشتری یافته است و انتشار نسخههای اصلی از سالی یک بار به سالی دو بار افزایش یافته است. در نهایت باید اشاره کرد جاوا امروزه بیدلیل به عنوان محبوبترین زبان برنامهنویسی دنیا مطرح نشده است. دلیل این محبوبیت، سادگی، مدرن بودن، سریع بودن و فرایند تکامل مداوم آن است. همچنین کتابخانههای بیشماری هستند که به نوشتن کدهای جذاب کمک میکنند و دسترسی گستردهای به منابع آموزشی و کمکی وجود دارد. در ادامه برخی از دورههایی که برای یادگیری جاوا میتوانید مورد استفاده قرار دهید معرفی میکنیم.
درباره این سایت