جاوا به دلیل سادگی، استحکام و ویژگیهای امنیتی معروف است و انتخاب محبوبی برای برنامههای سطح شرکتی به شمار میرود. برنامههای جاوا به بایتکد تبدیل میشوند که میتوانند بر روی هر ماشین مجازی جاوا اجرا شوند. نحو (syntax) زبان جاوا مشابه زبانهای C/C++ است.
جاوا نوشتن، کامپایل کردن و اشکالزدایی برنامهها را آسان میکند و به ایجاد کد قابل استفاده مجدد و برنامههای مدولار کمک میکند.
فهرست مطالب
• ویژگیهای کلیدی جاوا
• وابستگیناپذیری از پلتفرم
• برنامهنویسی شیگرا
• ساده بودن
• استحکام
• امنیت
• توزیعشده
• چندرشتهای (Multithreading)
• قابلیت حمل
• عملکرد بالا
چگونه کد جاوا اجرا میشود؟
کامپایل کردن برنامه
اجرا کردن برنامه

تاریخچه جاوا
جاوا در طول زمان تکامل یافت و نسخه جاوا 2 پیکربندیهای مختلفی را برای پلتفرمهای گوناگون معرفی کرد که انعطافپذیری آن را نشان داد.
در سال 1997، شرکت سان میکروسیستمز تلاش کرد تا جاوا را از طریق سازمانهای استاندارد ISO رسمی کند، اما در نهایت از این فرایند خارج شد.
با وجود عدم رسمیسازی از طریق ISO، شرکت سان میکروسیستمز بیشتر پیادهسازیهای جاوا را بهطور رایگان عرضه کرد و از طریق اعطای مجوز برای محصولات تخصصی مانند سیستمعامل جاوا، درآمد کسب کرد.
یک نقطه عطف بزرگ در تاریخچه جاوا در تاریخ 13 نوامبر 2006 رخ داد، زمانی که سان میکروسیستمز بخش بزرگی از ماشین مجازی جاوا (JVM) را بهعنوان نرمافزار رایگان و متنباز منتشر کرد.
تا 8 مه 2007، کد هستهای ماشین مجازی جاوا بهطور کامل تحت شرایط توزیع متنباز در دسترس قرار گرفت.
جاوا با اصول اصلی طراحی شد: سادگی، استحکام، امنیت، عملکرد بالا، قابلیت حمل، چندرشتهای(multithreading) و تفسیر پویا. این اصول باعث شدند جاوا به زبان انتخابی برای انواع مختلفی از برنامهها، از جمله دستگاههای موبایل، برنامهنویسی اینترنتی، بازیها و تجارت الکترونیک تبدیل شود.
امروزه، جاوا همچنان بهعنوان یکی از ارکان توسعه نرمافزار مدرن شناخته میشود و بهطور گسترده در صنایع و پلتفرمهای مختلف استفاده میشود.
ویژگیهای کلیدی جاوا
کامپایلر کد منبع را به کد بایت تبدیل میکند و سپس ماشین مجازی جاوا (JVM) کد بایت تولیدشده را اجرا میکند. این کد بایت میتواند روی هر پلتفرمی مانند ویندوز، لینوکس یا macOS اجرا شود. به این معنا که اگر برنامهای را روی ویندوز کامپایل کنیم، میتوانیم آن را روی لینوکس و بالعکس اجرا کنیم. هر سیستمعامل یک JVM متفاوت دارد، اما خروجی تولیدشده توسط همه سیستمعاملها پس از اجرای کد بایت یکسان است. به همین دلیل است که به جاوا بهعنوان یک زبان مستقل از پلتفرم نگاه میکنیم.
2. برنامهنویسی شیگرا
جاوا یک زبان شیگرا است که استفاده از اشیاء و کلاسها را ترویج میدهد. سازماندهی برنامه در قالب مجموعهای از اشیاء، هرکدام که یک نمونه از کلاس است، روشی برای برنامهنویسی شیگرا است.
چهار مفهوم اصلی برنامهنویسی شیگرا عبارتند از:
• انتزاع
• پنهانسازی
• وراثت
• چندرشتهای
3. سادگی
دستور زبان جاوا ساده و یادگیری آن راحت است، بهویژه برای کسانی که با C یا C++ آشنایی دارند. جاوا ویژگیهای پیچیدهای مانند اشارهگرها و وراثت چندگانه را حذف کرده است که نوشتن، اشکالزدایی و نگهداری کد را راحتتر میکند.

4. استحکام
زبان جاوا مستحکم است، به این معنا که قابلاعتماد است. بهگونهای توسعه یافته که تلاش زیادی برای بررسی خطاها در مراحل اولیه انجام میدهد، به همین دلیل کامپایلر جاوا حتی خطاهایی را شناسایی میکند که شناسایی آنها توسط زبانهای دیگر دشوار است. ویژگیهای اصلی جاوا که آن را مستحکم میکنند عبارتند از جمعآوری زباله (Garbage Collection)، مدیریت استثناها و تخصیص حافظه.
5. امنیت
در جاوا اشارهگرها وجود ندارند، بنابراین نمیتوانیم به آرایههای خارج از محدوده دسترسی پیدا کنیم؛ بهطوریکه اگر این کار را انجام دهیم، استثنای ArrayIndexOutOfBound را مشاهده خواهیم کرد. به همین دلیل، مشکلات امنیتی مانند خرابی پشته یا سرریز بافر در جاوا غیرممکن است. همچنین، برنامههای جاوا در محیطی اجرا میشوند که مستقل از محیط سیستمعامل است، که این باعث میشود برنامههای جاوا امنتر باشند.
6. توزیعشده
ما میتوانیم برنامههای توزیعشده را با استفاده از زبان برنامهنویسی جاوا ایجاد کنیم. فراخوانی روش از راه دور (RMI) و جاوای نرمافزارهای سازمانی (EJB) برای ایجاد برنامههای توزیعشده در جاوا استفاده میشوند. برنامههای جاوا بهراحتی روی یک یا چند سیستم که از طریق اتصال اینترنت به یکدیگر متصل هستند توزیع میشوند.
7. چندوظیفگی
جاوا از چندوظیفگی پشتیبانی میکند که به اجرای همزمان بخشهای مختلف یک برنامه اجازه میدهد. این ویژگی بهویژه برای برنامههایی که نیاز به عملکرد بالا دارند، مانند بازیها و شبیهسازیهای زمان واقعی، مفید است.
8. قابلیت جابجایی
همانطور که میدانیم، کد جاوا نوشتهشده روی یک ماشین میتواند روی ماشین دیگری اجرا شود. ویژگی وابستگیناپذیری از پلتفرم جاوا به این معنا است که کد بایت مستقل از هر پلتفرم میتواند برای اجرا به هر پلتفرمی منتقل شود. ویژگی “یکبار بنویس، همهجا اجرا کن” (WORA) باعث میشود برنامههای جاوا فایلهای .class تولید کنند که مربوط به برنامههای ما هستند اما کد آنها در فرمت باینری است. این ویژگی باعث میشود تا برنامههای جاوا بدون وابستگی به معماری خاصی از ماشینها، بهراحتی قابل جابجایی باشند. این ویژگی دلیل اصلی استفاده گسترده جاوا در صنعت فناوری اطلاعات در سراسر جهان است.
9. عملکرد بالا
معماری جاوا بهگونهای تعریفشده است که بار اضافی را در زمان اجرا کاهش میدهد و در برخی موارد از کامپایلر Just In Time (JIT) استفاده میکند که کد را بهصورت درخواستمحور کامپایل میکند. به این معنا که تنها روشهایی که فراخوانی میشوند، کامپایل میشوند و این باعث افزایش سرعت اجرای برنامهها میشود.
این ترجمه دقیق و بهروز است و معادلهای فارسی رایجتر و قابلفهمتری برای واژهها به کار برده شده است.
چگونه کد جاوا اجرا میشود؟
1. نوشتن برنامه
برنامههای جاوا با استفاده از یک ویرایشگر متن یا یک محیط توسعه یکپارچه (IDE) مانند IntelliJ IDEA، Eclipse یا NetBeans نوشته میشوند. کد منبع با پسوند .java ذخیره میشود.
2. کامپایل کردن برنامه
کامپایلر جاوا (javac) کد منبع را به بایتکد تبدیل میکند، که در فایل .class ذخیره میشود. این بایتکد مستقل از پلتفرم است و میتواند روی هر دستگاهی که JVM (ماشین مجازی جاوا) داشته باشد، اجرا شود.
3. اجرای برنامه
JVM بایتکد کامپایل شده را اجرا میکند و آن را به کد ماشین مخصوص به سیستم عامل و سختافزار ترجمه میکند.

اصطلاحات مهم جاوا که باید بدانید
1. ماشین مجازی جاوا (JVM)
• نوشتن برنامه: برنامهنویسی جاوا توسط برنامهنویسانی مانند شما و من انجام میشود.
• مرحله کامپایل: کامپایلر javac، کامپایلر اصلی جاوا است که در کیت توسعه جاوا (JDK) قرار دارد. این کامپایلر برنامه جاوا را به عنوان ورودی دریافت میکند و بایتکد را به عنوان خروجی تولید میکند.
• مرحله اجرا: در این مرحله، JVM بایتکد تولید شده توسط کامپایلر را اجرا میکند.
• استقلال پلتفرم: هر سیستمعاملی نسخه خاص خود از JVM را دارد، اما همه JVMها از قوانین و استانداردهای یکسانی پیروی میکنند. این به این معنی است که برنامههای جاوا میتوانند به همان شیوه روی هر دستگاهی که JVM دارد، اجرا شوند، صرف نظر از سیستمعامل آن دستگاه. به همین دلیل جاوا به عنوان یک زبان مستقل از پلتفرم شناخته میشود.
2. بایتکد
3. کیت توسعه جاوا (JDK)
4. محیط اجرای جاوا (JRE)
5. جمعآوری زباله (Garbage Collector)
6. ClassPath
در جاوا، هر چیزی به عنوان یک کلاس و شیء نمایش داده میشود، از جمله تابع اصلی (main) که خود نیز جزئی از یک کلاس است.
مزایای جاوا
2. شیگرا: جاوا یک زبان برنامهنویسی شیگرا است، به این معنی که از اصول کپسولهسازی، وراثت و چندریختی پیروی میکند.
3. امنیت: جاوا ویژگیهای امنیتی داخلی دارد که آن را به یک پلتفرم امن برای توسعه برنامهها تبدیل میکند. این ویژگیها شامل مدیریت خودکار حافظه و بررسی نوع دادهها هستند.
4. جامعه بزرگ: جاوا یک جامعه بزرگ و فعال از توسعهدهندگان دارد، که به این معنی است که پشتیبانی زیادی برای یادگیری و استفاده از زبان جاوا وجود دارد.
5. برنامههای سطح سازمانی: جاوا به طور گستردهای برای توسعه برنامههای سطح سازمانی، مانند برنامههای وب، سیستمهای تجارت الکترونیک و سیستمهای پایگاهداده استفاده میشود.

معایب جاوا
2. مدیریت حافظه: مدیریت خودکار حافظه در جاوا میتواند منجر به کاهش عملکرد و افزایش مصرف حافظه شود که ممکن است برای برخی از برنامهها یک نقطه ضعف باشد.
ورود و ثبت نام برای ارسال نظر وارد شوید