آموزش برنامه نویسی جاوا
آموزش برنامه نویسی جاوا (مقدمه)
در کدهایی که برای اپلیکیشن های اندرویدی می نویسیم به زبان جاوا احتیاج داریم. پس یادگیری زبان برنامه نویسی جاوا تقریبا الزامی ست و کمک بسیاری در نوشتن کدهایی که برای اپلیکیشن های اندرویدی می نویسیم می کند.
در این بخش ابتدا کمی در مورد جاوا توضیح می دهیم.
جاوا (به انگلیسی: Java) یک زبان برنامهنویسیِ شیءگرا است که برای نخستین بار توسط جیمز گاسلینگ در شرکت سان مایکروسیستمز ایجاد گردید و در سال ۱۹۹۵ به عنوان بخشی از سکوی جاوا منتشر شد. زبان جاوا شبیه به ++C است اما مدل شیءگرایی آسانتری دارد و از قابلیتهای سطح پایین کمتری پشتیبانی میکند. یکی از قابلیتهای بنیادین جاوا این است که مدیریت حافظه را بطور خودکار انجام میدهد. ضریب اطمینان عملکرد برنامههای نوشتهشده به این زبان نسبت به زبانهای نسل اول C بالا است و وابسته به سیستمعامل خاصی نیست. برنامههای جاوا به صورت بایت کد (کامپایل) میشوند که توسط واسط JVM به کدهای ماشین اجرا میشوند؛ و در صورت وجود JVM مانند سایر زبانهای مبتنی بر آن وابسته به سیستمعامل خاصی نیستند. (منبع : ویکی پدیا)
در حقیقت بسیاری از خصلتهای زبان جاوا از دو زبان C و ++C مشتق شده یا با آنها مرتبط است. علاوه بر این، تولید جاوا بطور عمیقی متاثر از روال پالایش و تطبیقی است که طی سه دهه گذشته برای زبانهای برنامه نویسی موجود پیش آمده است. بهمین دلایل بهتر است سیر مراحل و نیروهایی که منجر به تولد جاوا شده را بررسی نماییم. هرنوع ابتکار و فکر جدید در طراحی زبانها براساس نیاز به پشت سر نهادن یک مشکل اصلی است که زبانهای قبلی از حل آن عاجز مانده اند. جاوا نیز بهمین ترتیب متولد شد.
جاوا برای نوشتن انواع برنامههای کاربردی مناسب است. با جاوا میتوان انواع برنامههای زیر را نوشت:
- برنامههای تحت وب
- برنامهنویسی سیستمهای کوچک مانند تلفن همراه، رایانه جیبی و …
- برنامههای کاربردی بزرگ (Enterprise)
- برنامههای رومیزی (Desktop)
- و غیره.
سیستمعامل: تا سال ۲۰۰۴ net. تنها بر روی پلت فرم ویندوز اجرا میشد و برخی ویندوز را سیستمعامل غیرقابل اعتمادی در برنامهنویسی Enterprise میدانستند. ولی جاوا از این نظر انتخاب خوبی محسوب میشد.
قابلیت حمل: جاوا بر روی سکوهای رایانش گوناگونی قابل اجرا است، از ATM و ماشین رختشویی گرفته تا سرورهای سولاریس با قابلیت پشتیبانی از 1024 CPU برای پردازشقابلیت حمل: جاوا بر روی سکوهای رایانش گوناگونی قابل اجرا است، از ATM و ماشین رختشویی گرفته تا سرورهای سولاریس با قابلیت پشتیبانی از 1024 CPU برای پردازش.
قابلیت حمل: جاوا بر روی سکوهای رایانش گوناگونی قابل اجرا است، از ATM و ماشین رختشویی گرفته تا سرورهای سولاریس با قابلیت پشتیبانی از 1024 CPU برای پردازش.
جاوا از نظر ساختار بسیار شبیه زبان C و ++C است. و این به هیچ وجه تصادفی نیست. C زبانی است ساخته یافته و ++C زبانی شی گرا است. مهم تر از همه آنست که ++C زبان خیلی از برنامه نویسان در دنیا است.
برنامه نویسی شی گرا هسته اصلی جاوا است . در حقیقت کلیه برنامه های جاوا شی گرا هستند . بر خلاف ++C که در آن امکان گزینش شی گرایی وجود دارد روشهای OOP (شی گرایی)، آن چنان با زبان برنامه نویسی جاوا پیوستگی دارند که حتی قبل از نوشتن یک برنامه ساده جاوا نیز باید از روش های OOP استفاده نمود.
OOP مخفف Object Oriented Programming می باشد. بهمین دلیل این بخش را با بحث جنبه های نظری OOP آغاز می کنیم.
3 اصل OOP
کلیه زبانهای برنامه نویسی شی ئگرا مکانیسمهایی را در اختیار شما قرار میدهند تا مدل شی ئگرا را پیاده سازی نمایید.
این مدل شامل کپسول سازی (Encapsulation)، وراثت (Inheritance) و چند شکلی (polymorphism) می باشد.
هر یک از بخش های بالا و به طور کلی مفهوم وراثت در برنامه نویسی، نیاز به توضیحاتی دارد که ترجیح داده می شود در اینجا از توضیح آنها چشم پوشی شود. اگر می خواهید آن موارد را بخوانید بهتر است به کتب موجود در این زمینه مراجعه کنید.
ریزبرنامه ها applets
از جاوا برای تولید دو نوع برنامه می توان استفاده نمود: برنامه های کاربردی (applications) و ریزبرنامه ها (applets)
یک برنامه کاربردی برنامه ای است که روی رایانه شما و تحت نظارت یک سیستم عامل اجرا می شود. بدین ترتیب یک برنامه کاربردی ایجاد شده توسط جاوا مشابه برنامه های ایجاد شده توسط C و ++C خواهد بود.
هنگامیکه از جاوا برای تولید برنامه های کاربردی استفاده میکنیم تفاوتهای زیادی بین این زبان و سایر زبانهای برنامه نویسی مشاهده نمی کنیم اما ویژگی جاوا برای تولید ریز برنامه ها دارای اهمیت زیادی است.
یک ریز برنامه (applets) یک برنامه کاربردی است که برای انتقال و حرکت روی اینترنت و اجرا توسط یک مرورگر قابل انطباق با جاوا طراحی شده است. یک ریز برنامه در حقیقت یک برنامه ظریف جاوا است که بطور پویا در سراسر اینترنت قابل بارگذاری باشد. درست مثل یک تصویر، یک فایل صوتی یا یک قطعه ویدئویی.
تفاوت اصلی در اینست که ریزبرنامه یک برنامه کاربردی هوشمند است و شباهتی با یک تصویر متحرک یا فایل رسانه ای ندارد . بعبارت دیگر این برنامه قادر به عکس العمل در برابر ورودی کاربر و ایجاد تغییرات پویا است.
ریز برنامه های جاوا بسیار جالب و هیجان انگیزند و قادرند دو مشکل اصلی یعنی امنیت و قابلیت حمل را پشت سر بگذارند.
اپلتها امکانات فراوانی برای نوشتن برنامههای تحت وب در اختیار برنامهنویسان قرار میدهند.
البته وجود ماشین مجازی جاوا برای اجرای اپلت لازم است. اپلتها نظیر فناوری سیلورلایت شرکت مایکروسافت هستند که برنامهنویسان را قادر میسازد تا امکاناتی را به مرورگر کاربر بیفزایند. البته تفاوت این دو در امنیت میباشد به گونهای که سیلورلایت به دلیل اینکه در محیطی به نام جعبه شنی (sandbox) اجرا میشوند امن هستند ولی اپلتها فاقد چنین امنیتی هستند و به سادگی هدف حملات استاندارد Social Engineering Toolkit در Kali Linux واقع میشوند.
قابلیت های جاوا
- ساده
- شىء گرا
- (Portable) قابل انتقال
- (Distributed) توزیع شده
- کارایى بالا
- (Interpreted) ترجمه شده
- Multithreaded (چند نخی)
- پویا
- (Secure) ایمن
- جاوا مجانی ولی Open Source نیست.
با سلام
با تشکر از آموزش خوبتان
موفق و پیروز باشید.
ممنون از شما . نظرات شما باعث دلگرمی ماست
سلام
خیلی خوبه که آموزشها اینطور کوتاه باشه.حس بهتری به آدم دست میده در هنگام مطالعه…..
تشکر
ممنون بسیار خوب و جامع من تازه شروع کردم امیدوارم تو این زمینه با آموزشهایی شما موفق بشم
با سلام. آموزشتون بسیار جامع و کامل و مهمتر از همه رایگان بود. ادامه بدین!
سلام به شما مدرس عزیز من واقعا ازتون تشکر میکنم که وقتتون رو گذاشتین برای اموزش دادن واقعا من ازتون ممنونم