
جاوا ، یک زبان برنامه نویسی مبتنی بر کلاس، شی گرا و چند منظوره است که تا حدود زیادی به زبانهای C و ++C شباهت دارد. جاوا توانایی ساخت برنامههای قدرتمندی را دارد و کار با آن در مقایسه با C و ++C کمی سادهتر است. در این بخش قصد داریم به معرفی زبان برنامه نویسی جاوا و نسخه های مختلف جاوا بپردازیم.
محتویات فهرست
جاوا چیست؟
در این زبان برنامه نویسی از آرایههای کلاس برای ساخت شی استفاده میشود. در این نوع از آرایهها میتوانیم تعداد زیادی المان را در یک شی جدید تحت یک نام مشترک جمعبندی و ذخیره کنیم. بدین ترتیب این زبان برنامه نویسی، نسبت به محیط خود کپسوله میشود و دیگر نمیتوان از طریق توابع بیرونی تغییری در آن ایجاد کرد.
کدهای این زبان برنامه نویسی تنها یک بار به صورت بایت کد جاوا کامپایل و توسط ماشین مجازی جاوا به کدهای ماشین تبدیل میشوند. بعد از آن روی هر نوع سیستم عامل و وسیله که از جاوا پشتیبانی میکنند، قابل اجرا هستند. به همین دلیل این زبان برنامه نویسی شعار “یک بار بنویس، هر جایی اجرا کن” را برای خود انتخاب کرده است.
تاریخچه زبان جاوا
زبان جاوا در سالهای ابتدایی دهه 1990 توسط جیمز آرتور گاسلینگ و همکارانش در شرکت Sun Microsystems به وجود آمد. جیمز از اصول دست و پا گیر زبان برنامه نویسی ++C خسته شده بود و بهدنبال زبانی میگشت که سادهتر باشد.
اولین نامی که برای این زبان برنامه نویسی انتخاب شد، Oak به معنی بلوط بود که پس از مدتی هیئت مدیره شرکت تصمیم گرفتند، نام دیگری را برای آن انتخاب کنند و در نهایت نام Java را انتخاب کردند. این نام بهنوعی به قهوه Java اشاره دارد که در نماد این زبان برنامهنویسی نیز وجود دارد. در نهایت زبان Java در سال 1995 روانه بازار شد و محبوبیت بسیاری را از آن خود کرد.
اصول اولیه جاوا
جاوا یکی از زبانهای پرکاربرد در برنامه نویسی است که توانایی ایجاد پلتفرم را دارد. یکی از دلایلی که باعث شده جاوا بیشتر از بقیه زبانها مورد استفاده قرار گیرد، قابلیت عملکرد بالای این زبان است؛ چرا که در تمامی فضاها از جمله اینترنت، گوشیهای هوشمند، کنسول بازی و… قابل اجراست.
- ساده بودن، شی گرا بودن و آشنا بودن
- قابل اطمینان بودن و نداشتن خطا
- وابسته نبودن به معماری کامپیوتر و قابل انتقال
- اجرا با عملکرد بالا
- پویا، رشته ای و تفسیر شده
قابلیتهای جاوا
زبان جاوا از روی زبان برنامه نویسی ++C نوشته شده است. تفاوت آن با زبان ++C، مدل شی گرایی سادهتر و قابلیتهای سطح پایینتر آن است. به عنوان مثال ارث بری (Inheritance) آنطور که در ++C وجود دارد، در Java وجود ندارد.
یکی از برتریهای اصلی زبان Java نسبت به زبانهای نسل اول C، مدیریت خودکار حافظهی هیپ توسط Garbage Collector و ضریب اطمینان عملکرد بالای آن است.
نسخه های مختلف جاوا
نسخههای مختلفی از زبان جاوا وجود دارد؛ بسته به مشخصات سیستم خود و سازگاری آن، میتوانید نسخه موردنظر را دانلود و نصب کنید.
- JDK 1.0، تاریخ انتشار» 21 ژانویهی 1996
- JDK 1.1، تاریخ انتشار» 19 فوریهی 1997
- J2SE 1.2، تاریخ انتشار» 8 دسامبر 1998
- J2SE 1.3، تاریخ انتشار» 8 می 2000
- J2SE 1.4، تاریخ انتشار» 6 فوریهی 2002
- J2SE 5.0، تاریخ انتشار» 30 سپتامبر 2004
- Java SE 6، تاریخ انتشار» 11 دسامبر 2006
- Jaca SE 7، تاریخ انتشار» 28 ژوئیهی 2011
- Java SE 8، تاریخ انتشار» 18 مارس 2014
- Java SE 9، تاریخ انتشار» 21 سپتامبر 2017
- Java SE 10، تاریخ انتشار» 20 مارچ 2018
- Java SE 11، تاریخ انتشار» 25 سپتامبر 2018
- Java SE 12، تاریخ انتشار» 19 مارس 2019
- Java SE 13، انتشار» 17 سپتامبر 2019
- Java SE 14، انتشار» 17 مارس 2020
کاربردهای جاوا
پلتفرم جاوا
وابسته نبودن به معماری کامپیوتر و قابل حمل بودن، از اصول اولیهی زبان Java بوده و هست. به همین دلیل برنامههایی که برای پلتفرم Java نوشته میشوند، بر روی هر نوع سخت افزار و سیستم عامل قابل اجرا است.
همانطور که قبلاً اشاره کردیم، در زبان Java به جای کامپایل مستقیم به کد ماشینی، از واسط Java Bytecode استفاده میشود. این واسط دستورالعملهایی شبیه به کد ماشینی دارد که با ماشین مجازی(VM) جاوا که مخصوص سخت افزار میزبان نوشته شده، اجرا میشود.
- applet
- servlet
- java server
- swing
- generic
کتابخانههای جاوا
یکی از ویژگیهای برجسته جاوا داشتن کتابخانههای مشهور و متعدد است. مجموعه کدهای کاربردی و مهمی که در راستای انجام کاری مشخص، از قبل توسط برنامهنویسان خبره نوشته و در محلی ذخیره شدهاند و به محیط برنامه اضافه میشوند.
وجود کتابخانه کار برنامهنویسان را تا حد بسیار زیادی راحت میکند؛ چرا که نیاز نیست کد موردنظر را از اول بنویسند؛ فقط باید در دل کدهایی که مینویسند آن کنابخانه را فراخوانی کنند.
این کتابخانهها در زمینههای مختلف فریمورکهای وب و GUI، گزارشگیری و رسم جدول، ریاضی، Logging و… دارای زیرمجموعههایی هستند که توسط برنامهنویسان مختلف مورد استفاده قرار میگیرند.
اگر به برنامهنویسی علاقه دارید یا قصد آشنایی با زبانهای جدید را دارید، پیشنهاد میکنیم نگاهی به معرفی کامل زبان برنامه نویسی پایتون و معرفی کامل زبان برنامه نویسی روبی (Ruby) بیاندازید.
نسخههای جاوا
در حال حاضر 4 نسخه از Java وجود دارد:
- Java Card که برای کارتهای هوشمند، ارتباط با ترمینالها و درگاههای بانک مورد استفاده قرار میگیرد.
- پلتفرم Java ME که برای محیطهایی استفاده میشود که منابع محدودی دارند.
- پلتفرم Java SE که برای محیطهای کاری مناسب است.
- پلتفرم Java EE که برای محیطهای سازمانی مورد استفاده قرار میگیرد.