خواهش میشه..... ما در خدمتیم.
یه نکته : شاید امروزه خیلی مد شده که میگن فلان سایت رو با jsp نوشتن بهمان سایت رو با جاوا نوشتن ...
برای اینکه فرهنگ جاوایی هم رعایت بشه لپ کلام یه دفعه بگین فلان سایت رو با J2EE یا همون نگارش برنامه نویسی سرور جاوا نوشتن.
چون اگه شما وارد این مقوله بشید میفهمید JSP یا Servlet فقط موتور های پوروتوکل http هستند.(مثل asp) ولی اصل کاری ها درر دیگر قسمت های این فناوری گنجونده شده مثلا برای دیتا بیس مخلوط جدیدی از Transcation و DataBaseConnbection و یا برای انجام اعمال چند سروری از JNDI و ... استفاده میشه پس اولین چیزی که هنگام کار ببا جاوا بهتره بدودنید و یاد بگیریم اینه که بگیم فلان برنامه موبایل J2ME هست یا فلان برنامه ی ویندوزش J2SE هست یا فلان برنامه وبش J2EE هست. پس این یادمون نره.
اما باید بگم به واقع جاوا عجوبه ای است که لنگه نداره و ابزار هایی که برای جاوا منتشر شده شاید چند صد برابر دیگر پلاتفورم ها مثل وین 32 یا دات نت هست.
راسی متن مقاله رو نتونستم آپ لود کنم همینجا نوشتش زو میذارم (البته منهای اسکرین شات ها) :
---------------------------------------------------------------
ویرایش دوم از مقاله اول :
جاوا چیست ؟
امروزه وقتی حرف از جاوا ممی زنیم سریع کلیه اذهان و افکار میره سراغ جاوا اسکریپت (!!!!). ولی اینجا جا داره خدمت تمام کاربران عزیز عرض کنم که این تفکر یه تفکر سطح ابتدایی و ساده میباشد که فقط به دلیل تشابه اسمی برای افراد بوجود اومده و هینجا هم جا داره عرض کنم چیزی که شاید تا بحال فکر میکردیم یک زبان اسکریپتی و ساده میباشد یکی از بزرگترین تکنولوژی های روز میباشد که حدود به 45 % برنامه های کاربردی تحت آن نوشته میشود.
جالب تر آن که بدانید همین دات نتی که در حال حاضر محوریت کار ها و پروژه هاتونو میدین دستش یه تقلید همه جانبه از جاوا بوده.
خوشبختانه هر سایتی که بواد امروزه جاوا رو آموزش بده میره سراغ تاریخچه این بزرگ افزار و تا به حال مقالات بیشماری راجع به فلسفه بوجود آمدن جاوا ئ نام گذاریش در ایران به زبان فارسی موجوده. برای همین از پرداختن به تاریخ این نرم افزار پرهیز میکنم و یه راست میرم سراغ خود این سیستم.
جاوا تقریبا 10 ساله که به دینا نر مازفر اومده و دو ورژن اصلی از این زبان و تکنولوژی موجوده که تقریبا تمامی افراد جاوا کار در سراسر دنیا با ورژن 2 این پلاتفورم کار کرده. هدفی که جاوا در طول عمر چند ساله اش دنبال کرده توسعه یک سیستم بدون محدودیت سخت افزار و نرم افزار و سیستم عامل است. شاید جالب باشد ولی شما یک بار یک نرم افزار با جاوا مینویسید و در ویندوز اجرا میکنید و همان فایل ها را میتوانید در لینوکس و اپل و یونیکس و سولاریس و … هم اجرا کنید . حتی بدون نیاز به کامپال مجدد (!).
جاوا برای اجرای برنامه هایش در سیستم عامل نیاز به یک
JVM یا Java Virtual Machine دارید . این ماشین مجازی جاوا پشتیبانی کننده از فایل هایی است که با جاوا نوشته میشوند و محیط اجرای آن ها را در سیستم عامل های مختلف فراهم میکند. در اصل
JVM مثل یک لایه کاربردی بین برنامه ای که شما مینویسید و سیستم عامل میباشد و واسطه ای که اجرای برنامه شما رو ممکن کند. به این نوع لایه های میانجی در نرم افزار های اینگونه (مثل لایه ی فریم ورک در دات نت ) پلاتفورم میگویند.
جاوا فایل های *.JAVA شما را گرفته و پس از کامپایل فایل های *.CLASS را تحویل شما میدهد. این فایل ها همان فایل هایی هستند JVM آن ها را خط به خط برای سیستم عامل ترجمه میکنه و اون هارو اجرا میکنه.
خود محیط
JVM هم به چند بخش مختلف مثل اجرا گر ها کتابخانه های پایه(JRE) و کامپایلر ها تقسیم میشود. که فعلا از پرداختن به لایه های مختلف و نرم افزار ها و فایل های اون پرهیز میکنم و فقط به قسمت کوچکی از فایل های اون اشاره خواهیم کرد.
همانطور که در تصویر پیداست JVM فایل های زیاید برای اجرا برنامه های کاربردی جاوا دارد که برای اجرا جاوا در محیط های مختلف مثل مرورگرو برنامه های کاربردی به کار میرود.
بطور مثال از
java.exe و یا
javaw.exe برای اجرای برنامه های جاوا در محیط کاربردی و از
appletviewer برای اجرای برنامه های (Applet ) در مرورگر استفاده میشود.
جاوا بطور آپن سورس و مجانی توسعه میبابد و شما میتوانید و شما میتوانید نسخه های مختلف آن را از وب سایت جاوا (
www.java.sun.com) دریافت کنید. در حال حاضر نسخه های متفاوت و زیادی از
jdk و یا Java Development Kit وجود دارد (که حاوی JVM و کتابخانه های کاربردی جاوا میباشد) که جدید ترین نسخه ی آن JDK 6.0 میباشد که بصورت بتا ارائه شده و نسخه های قدیمی آن JDK 5.0 و JDK 1.4 و JDK 1.3 و ... میباشد.
البته متاسفانه به علت تحریم اقتصادی ایران امکان دانلود مجانی جاوا و محیط های توسعه دهنده آن در SUN وجود ندارد . (البته شما نگران نباشید راه های بسیار زیادی برای تهیه ان در ایران وجوود دارد).
اما طبق رتبه بندی و تقسیم بندی های انجام شده و استاندارد برای جاوا جاوا در سه نسخه ارائه میشه:
که به ترتیب زیر می باشد :
Java 2 Platform Standard Edition : این نسخه که به اختصار J2SE هم بهش میگن حاوی کتابخانه ها و کامپایلر هایی هست که برای نوشتن یک برنامه معمولی و اصطلاحا Desktop Application به کار میره. در کتابخانه های کد موجود کلیه API ها و کلاس ها از شبکه(Socket) و طراحی فرم ویژوال (Swing , Awt)و گرافیک (J2D)دو بعدی و سه بعدی(J3D) و فایل(File API) و تصویر(Imaging) و متد فشرده سازی(Compressing) و ارتباط به دنیای خارج از جاوا (JNI) و هر چیزی که برای برنامه نویسی برنامه های معمولی نیازه موجوده . این کتابخانه بصورت عادی با نصب یکی از نسخه های JDK بر رو سیستم شما نصب میشود و امکان توسعه چنین فایل هایی را به شما میدهد.
اکثر برنامه نویسان زبان مایکروسافتی میتوانند به خوبی این نسخه از جاوا رو درک کنند زیرا اکثر برنامه هایی که در محیط هایی چون VB6 مینویسند Desktop Application میباشد.
Java 2 Platform Enterprise Edition : این نسخه از جاوا رو که به اختصار J2EE هم میگن شاید تجاری ترین و معروفترین بخش برنامه نویسی جاوا میباشد. تمامی امکانات گنجانده شده در این نسخه از جاوا برای طراحی و توسعه برنامه های تحت سرور و تحت وب در جاوا میباشد . یکی از گونه هایی که در برنامه نویسی جاوا تحت وب بسیار معروف شده JSP یا Java Server Page میباشد که با این که این بخش فقط یکی از 13 رکن این نسخه می باشد ولی دارای Framework های زیاد و معروف میباشد که توسعه jsp را بسیار بسیار قوی تر میکنند .
این بخش از جاوا برای اجرا نیاز به یک JDK دارد (یا همون J2SE) و یک Application Server. اما Application Server چیست ؟ Application Server ویا همون App Server یک ظرف نگه دارنده میباشد. برای اینکه کار app server براتون بهتر روشن شه می تونم این طوری براتون توضیح بدم همانطور که یک برنامه تحت وب مثلا یک برنامه cms تحت asp.net برای اجرا به یک وب سرور مثل IIS برای اجرای عملیات مختلف و Parsing نیاز دارد یک برنامه ای که تحت J2EE نوشته شده برای اجرا به یک APP Server نیاز داره تا اجرا بشه و کار هاشو انجام بده . این بخش از جاوا مفلاهیم بسیار سخت سقیلی داره که شاید یه نفر مثل من بعد از دو ماه شبانه روز سرو کله زدن باهاش نتونه حتی مفهومش رو هم درک کنه ولی در عوض این وعده رو بهتون میدم که در صورت پیدا کردن تسلط روی این بخش از جاوا میتونید کار هایی انجام بدی که برای انجامشون در دات نت و یا تکنولوژی های مشابه باید زجری وصف ناشدنی بکشید. اما جالبتر اینجاست که فقط خود شرکت سان برای این بخش جاوا app server ارائه نکرده و شرکت های IBM , BEA, SUN , Borland, Oracle, ….. هم برای این بخش App Server های قوی ارائه کردند. این بخش از جاوا دارای App Server های مجانی و سورس بازی چون JBoss و یا Tomcat ویا Sun GlassFish تا App Server های گران قیمتی چون Web Sphere , WEB LOGIC میباشد و حتی گران قیمت ترین نرم افزار دنیا که پکیج Business Suite اوراکل هست مربوط به App Server قوی و کامل Oracle میباشد. (با این نتایج فکر کنم دلیل خوش پول بودن جاوا رو میتونید خوب درک کنید).
مطمئنم با خوندن متن بالا مطمئنم که کمی گیج شدید و مشتاق شدید که بیشتر راجع به این بخش از جاوا بدانید. خب پس تا آماده شدن آموزش های J2EE کمی صبر کنید ...
Java 2 Platform Mobility Edition : این بخش از جاوا همانطور که از اسمش پیداست برای نوشتن برنامه های جاوا برای موبایل و چند نوع پروسسور مختلف دیگر میباشد که در اکثر موبایل ها پشتیبانی میشود. (برنامه هایی با فرمت *.jar و یا *.jad) .
در این بخش از جاوا ما API ها و ابزار های ریز و درشتی از ساختن بازی تحت موبایل گرفته تا برنامه سازی برای ابزار جانبی موبایل و SMS و .... داریم.