Razieh Shahraki

سوالهایی که بیشتر علاقمندان جاوا می پرسند

1 ارسال در این موضوع قرار دارد

[rtl] جاوا چیست؟

جاوا یکی از زبانهای محبوب برنامه نویسی در دنیاست. زمانیکه این زبان در دنیا معرفی شد زبان c و c++ محبوبترین زبانهای برنامه نویسی بودند. اما جاوا خصوصیتی داشت که آنها نداشتند، جاوا مستقل از سخت افزار و سیستم عامل بود. در اصل، هدف جاوا هم همین بود. از آنجائیکه کامپیوترهای آن زمان از نظر سیستم عامل و سخت افزار کاملا متنوع بودند شرکتهای تولید کنندة نرم افزار مجبور بودند برای هر سیستم عامل یا هر سخت افزار نسخة جداگانه ای از محصول خود را تولید کنند. در این شرایط بود که شرکت «سان میکروسیستمز» زبان جاوا را با شعار «برنامه تان را یک بار بنویسید، همه جا اجرا کنید» به دنیا معرفی نمود. [/rtl]

[rtl] جاوا چگونه کار می کند؟

شیوة کارکرد جاوا بسیار جالب است. در این زبان وقتی شما برنامه ای می نویسید و آنرا کامپایل می کنید، برنامة کامپایل شده مستقیما قابل اجرا نیست، نتیجة اجرای برنامه کدهای میانی است که به آنها «بایت کد» گفته می شود. بایت کدها توسط برنامة واسطه ای که به آن «ماشین مجازی جاوا» یا JVM گفته می شود روی سیستم عامل مورد نظر تطبیق داده شده و اجرا می شوند. این مطلب در شکل زیر نشان داده شده است:[/rtl]

[align=center][rtl]do.php?img=646[/rtl]

[/align]

[rtl]کار JVM تطبیق برنامة شما با محلی است که برنامه قرار است روی آن اجرا شود، بنابراین لازم نیست به اینکه برنامه تان قرار است کجا اجرا شود فکر کنید. این موضوع مسئولیت JVM است که قبلا آنرا روی سیستم خود نصب کرده اید. شکل زیر جزئیات بیشتری از عملکرد ماشین مجازی جاوا را نشان می دهد.[/rtl]

[align=center][rtl]do.php?img=647[/rtl]

[/align]

[rtl] با جاوا چه نوع برنامه هایی می توان نوشت؟

زبان جاوا یک زبان همه منظوره است یعنی با استفاده از آن می توانید انواع بسیار مختلف و متنوعی از برنامه ها را بنویسید از برنامه های رومیزی که فقط روی یک کامپیوتر اجرا می شوند تا برنامه های وب و برنامه های توزیع شده، و حتی بازیهای کامپیوتری. از جاوا برای ارتباط با سخت افزار استفاده نمی شود، مثلا از جاوا برای ارتباط با پرینتز و اسکنر استفاده نمی شود زیرا وقتی صحبت سخت افزار به میان می آید نیازمند زبانی هستیم که بی واسطه بتواند با سیستم عامل یا حتی سخت افزار ارتباط برقرار کند. چون جاوا توسط JVM اجرا می شود و JVM نیز خود توسط سیستم عامل اجرا می شود، ارتباط با سخت افزار از طریق جاوا خیلی منطقی نیست هرچند غیرممکن نیز نیست.[/rtl]

[rtl] در بازار کار بیشتر چه برنامه هایی تولید می شوند؟

در بازار کار از زبان جاوا بیشتر برای تولید برنامه های تحت وب و برنامه های توزیع شده استفاده می شود. برنامه های رومیزی سهم بسیار کمی از بازار جاوا را در اختیار دارند.[/rtl]

[rtl] نسخه های مختلف جاوا چیستند؟

جاوا در سه نسخة رسمی ارایه می شود معنی و کاربرد هر نسخه در جدول زیر نشان داده شده است.[/rtl]

[align=center][rtl]do.php?img=648[/rtl]

[/align]

طبیعی است که برای یادگیری جاوا باید از Java SE شروع کنید. Java ME به نسبت ساده است و پیچیدگی زیادی ندارد. Java EE بسیار وسیع، گسترده و تا حدودی پیچیده است. یادگیری Java EE نیاز به زمانی طولانی دارد. اگر می خواهید به عنوان برنامه نویس جاوا مشغول به کار شوید باید هرچه زودتر خود را به سطح Java EE برسانید تقریبا تمام پروژه های جاوایی که در ایران انجام می شوند با استفاده از Java EE پیاده سازی می شوند. متخصصان این حوزه نیز بسیار کم است. در خارج از ایران نیز تقریبا وضع به همین شکل است.

[rtl] چگونه باید برنامه ریزی برای یادگیری جاوا را شروع کنم؟

یادگیری زبان جاوا نیاز به علاقه، پشتکار، و برنامه ریزی دقیق است. وقتی از علاقه و پشتکار خود مطمئن شدید، بدانید که کار سختی در پیش رو ندارید فقط لازم است برنامه ریزی داشته باشید و فرد با تجربه ای در کنار شما باشد تا شما را راهنمایی کند. خیلی خوب است اگر بتوانید در یک دروة آموزشی شرکت کنید ولی باید بدانید که صرف شرکت در یک دورة آموزشی شما را برنامه نویس نخواهد کرد. در کنار دورة آموزشی باید مرتب تمرین کنید. مطمئنا در انجام تمرینات سوالات بسیاری برای شما پیش خواهد آمد، مشکلات زیادی را تجربه خواهید کرد، و بسیاری از جنبه های زبان جاوا برای شما روشن خواهد شد. بنابراین در یک جملة ساده، شما باید علاقه و پشتکار داشته باشید و ضمن شرکت در یک دورة آموزشی، به صورت مدوام و مستمر تمرین کنید. مطمئن باشید برنامه نویسی قدرتمندی خواهید شد.[/rtl]

[rtl] بازار کار جاوا در ایران و خارج از ایران چگونه است؟

بازار کار جاوا در ایران بسیار خوب است. در ایران حجم بسیار بالای از پروژه های دولتی با جاوا پیاده سازی می شوند از آنجائیکه پروژه های بزرگ همگی دولتی هستند برنامه نویس جاوا بسیار بیش از گذشته مورد نیاز است. نوعا حقوق برنامه نویسان جاوا تا چندین برابر زبانهای برنامه نویسی دیگر است. وضعیت جاوا در خارج ایران از داخل هم بهتر است کشورهای استرالیا، انگلستان، و کانادا از عمده سرمایه گذاران در زمینة جاوا هستند در این کشورها پروژه ها به صورت پیش فرض با جاوا تولید می شوند. در کشورهای دیگر صاحب فناوری مثل آمریکا نیز وضع تقریبا به همین منوال است. گذشته از این، دانشگاهها و مراکز آکادمیک از گذشته تا کنون جاوا را به عنوان زبان مرجع برای کامپیوتر می شناسند.[/rtl]

[rtl] اندروید چیست؟

اندروید یکی از چند سیستم عامل محبوب گوشیهای هوشمند است که توسط گوگل طراحی شده است. بسیاری از شرکتهای سازندة گوشیهای هوشمند از اندروید به عنوان سیستم عامل گوشیهای خود استفاده می کنند سامسونگ، HTC، و Sony از جمله این شرکتها هستند. اگر می خواهید برنامه ای برای این گوشیها که اندروید سیستم عامل آنهاست بنویسید می توانید از «بستة توسعة اندروید» استفاده کنید این بسته که به زبان جاواست توسط گوگل به صورت رایگان و منبع-باز تهیه شده است. برنامه نویسی اندروید مبتنی بر جاوای استاندارد است، ولی مفاهیم، جزئیات و تکنیکهای برنامه نویسی خاص خود را دارد.[/rtl]

[rtl] برای یادگیری جاوا باید لینوکس بلد باشم؟

برای یادگیری جاوا هیچ پیش نیازی وجود ندارد. البته اگر با یک زبان برنامه نویسی آشنا باشید یا مفاهیم شی گرایی را بدانید مطمئنا خیلی سریع تر جاوا را یاد خواهید گرفت. ولی همانطور که گفته شد جاوا مستقل از سخت افزار و سیستم عامل است، بنابراین می توانید روی لینوکس، ویندوز، یا مک برنامه نویسی جاوا کنید.[/rtl]

[rtl] برای شروع برنامه نویسی جاوا به چه چیزهایی نیاز دارم؟

اولین چیزی که به آن احتیاج دارید JDK است. JDK مخفف عبارت Java Development Kit است و در فارسی به آن «بستة توسعة جاوا» گفته می شود. این بسته شامل مجموعه ای از ابزارها شامل کامپایلر، دیباگر، اجراکنندة جاوا، کتابخانه های جاوا، چندین برنامة نمونه و هر آنچیزی است که برای برنامه نویسی به زبان جاوا به آن نیاز دارید. بنابراین قبل از شروع برنامه نویسی جاوا باید JDK را نصب کنید. بعد از اینکه JDK را روی سیستم خود نصب کردید باید یک ویرایشگر جاوایی داشته باشید تا بتوانید کدهای جاوا را در آن تایپ کنید و در کامپایل و اجرای برنامه به شما کمک کند. اگرچه شما می توانید بدون ویرایشگر، یک برنامة جاوا را بنویسید اما داشتن یک ویرایشگر کمک شایانی در برنامه نویسی سریع و بی عیب و نقص شما را خواهد داشت. ویرایشگرهای معروف جاوایی عبارتند از eclipse، Intellij Idea، و NetBeans. [/rtl]

[rtl] کلاسهای آموزشی چقدر مفید هستند؟

خیلی خوب است که در یک دورة آموزشی ثبت نام کنید، داشتن یک معلم خوب می تواند کمک شایانی به شما بکند. متاسفانه این روزها بسیاری از موسسات آموزشی با شیوه های تبلیغاتی از علاقمندان سوء استفاده می کنند. حتی برخی دانشگاههای پرنام نشان نیز در این مسیر باطل افتاده اند تا با تبلیغات فراوان و اعطای مدرک با نشان دانشگاه، علاقمندان را به شرکت در دوره های خود ترغیب کنند. بنابراین فراموش نکنید که اگرچه شرکت در یک دورة آموزشی بسیار مفید و لازم است اما در این مسیر گرفتار شرکتها، موسسات، یا حتی دانشگاههای سودجو نشوید. اگر چنین احساسی داشتید، یا اگر به هر دلیل امکان شرکت در دوره ای را ندارید باز هم می توانید با تلاش و پشتکار به هدف خود برسید.[/rtl]

[rtl] چه کتابهایی بخوانم؟

خوشبختانه امروزه کتابهای مفید و مناسب فراوانی در زمینة برنامه نویسی جاوا وجود دارند اما همة آنها به زبان انگلیسی هستند اگر دنبال کتاب فارسی هستید فقط مطالعة کتابهای مهندس صدیقی به شما توصیه می شود اما باید بدانید که با خواندن این کتابها، کار شما تمام شده است، بلکه تازه آغاز شده است بلافاصله پس از خواندن کتابهای فارسی باید به سراغ کتابهای انگلیسی بروید. اصولا برای انجام هر کار با کامپیوتر لازم است زبان انگلیسی بدانید، و برنامه نویسی کامپیوتر نیز از این حیث مستثنی نیست حداقل باید بتوانید متون فنی کامپیوتر را مطالعه کنید. کتابهای انگلیسی که در این وبسایت معرفی شده اند یا فایل آنها گذاشته شده است منابع خوبی برای یادگیری هستند. [/rtl]

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری