رفتن به مطلب

جاوا را چقدر ميشناسيد؟


Mohammad Aref

ارسال های توصیه شده

جاوا يک زبان برنامه نويسي است که درسال 1994 توسط يکي از مهندسين شرکت سان (sun) به نام جيمز گوسلينگ نوشته شد، جيمز از نوشتن برنامه با C++ خسته شده بود و جاوا را براي رفع نيازهاي خود طراحي کرد. مثل لينوکس ترودلز که لينوکس را براي استفاده خود پديد آورد.

جيمز ابتدا نام اين برنامه را oak گذاشت. ابتدا شرکت sun از توسعه oak منصرف شد ولي با پيشرفت و گسترش اينترنت و مشخص شدن قابليت هاي برنامه و تطابق بعضي ويژگي هاي آن با نيازهاي اينترنت شرکت sun پروژه oak را فعال نمود و نام جاوا را براي آن برگزيد.

نام جاوا از Jsut Another Vague Acronym گرفته شده است و دليل آن اين بود که تيم برنامه نويسان جاوا به قهوه خيلي علاقه داشتند. اين موضوع در لوگوي جاوا هم مشهود است!!

 

نگارش نسخه يک جاوا در سال 95 آغاز شد و در سال 97 نسخه 1/1 و در سال 98 نسخه 1/2 به بازار ارايه شد. البته تا کنون نسخه هاي متفاوت با قابليت هاي متفاوت به بازار ارايه شده است. جاوا زبان مادر براي سيستم عامل سولاريس است، مثل بيسيک براي سيستم عامل ويندوز و زبان سي براي يونيکس.

مهم ترين ويژگي جاوا اين است که اساسا شي گراست به اين معني که توانايي استفاده مجدد و مکرر از کدهاي از پيش نوشته شده را دارد.

ويژگي ديگر جاوا اين است که بر روي سيستم هاي مختلف کار مي کند مثلا برنامه اي که شما با يک سيستم اينتل نوشته ايد به راحتي روي يک سيستم مکينتاش و يونيکس اجرا مي شود و اين عامل اصلي موفقيت جاوا است.

سادگي، قابل انتقال بودن، کارايي بالا، استحکام، پويايي و ايمني بالا از ديگر قابليت هاي جاوا است.

معمول ترين برنامه هايي که با جاوا نوشته مي شود Applet ها هستند. Applet برنامه اي پويا است که در يک صفحه وب اجرا مي شود و براي ديدن آن به مرورگري نياز است که جاوا را پشتيباني کند. علاوه بر اين شما مي توانيد با جاوا برنامه هاي کاربردي، چند منظوره وسطح بالا بنويسيد مثل نرم افزارهاي سرويس دهي شبکه يا سرويس دهنده پست الکترونيک.

جاوا در واقع يک زبان برنامه نويسي شي گرا وبسيار قدرتمند است و تمام خصوصيت هاي C++ و C را داراست. البته خصوصيت هاي مشکل ساز آن مثل وراثت و اشاره گرها را کنار گذاشته است. برنامه نويساني که با C++ آشنا هستند خيلي راحت و سريع مي توانند جاوا را ياد بگيرند. با جاوا کد نويسي بسيار آسان تر است و کدها و کلاس ها و کتابخانه هاي آماده جاوا باعث مي گردد نوشتن يک برنامه با جاوا از نظر تعداد خطوط و زمان لازم تقريبا يک سوم يک برنامه C++ است.

 

.NET رقيب JAVAًـ؟

.NET فرمي است که به وسيله مايکروسافت براي ساخت سايت ها با قابليت هاي زياد و متفاوت ايجاد شده است به طوري که قسمتي از يک پروژه را مي توان با VC++ و بخش ديگر را با برنامه اي ديگر نوشت و در نهايت کل آن توسط يک واسطه به نام MSIL ترجمه شده و در محيط .NET قابل اجرا است.

 

J2EE (نسخه جديد JAVA) به وسيله شرکت SUN و با همکاري شرکت هاي IBM و HP تهيه شده است. در اين قالب تنها زباني که مورد استفاده قرار مي گيرد جاوا است، و بر خلاف .NET که فقط روي محيط هاي سازگار با ويندوز عمل مي کند، مستقل از سخت افزار است.

 

بين .NET و JAVA کدام را انتخاب کنيمًـ؟

- قابليت انتقال برنامه ها روي سيستم هاي مختلف و شعار اصلي جاوا يعني: "يک بار بنويس و هر جا استفاده کن" (Writeonce-Run anywhere) موضوعي بسيار حايض اهميت است که بسته به نياز شما و نوع برنامه شما مي تواند خيلي مهم باشد.

- در محيط هايي که چند نوع سيستم سخت افزاري وجود دارد قطعا برنامه هاي تحت جاوا مناسب تر است ولي اگر در محيط مورد نظر شما از سيستم عامل ويندوز استفاده مي شود استفاده از .NET هزينه کمتري در برخواهد داشت.

- .NET ويژگي هايي دارد که با آن مي توان سايت هاي جذاب و زيباتري ساخت اما در سايت هاي پيچيده و بزرگ و جايي که کارايي مهمتر از ظاهر است بهتر است از جاوا استفاده کنيم.

- تصور کنيد نياز به برنامه اي داريد که در آن چيزهايي به صورت ديناميک ايجاد مي شوند و پس از طي يک سري عمليات بر روي آنها از بين مي روند، در اين نوع برنامه ها تعقيب اشيايي که در برنامه ساخته مي شوند، تخصيص و مديريت حافظه تماما بر عهده برنامه نويس است. اما جاوا داراي يک سيستم خودکار مديريت و پاکسازي حافظه است که بسياري از مشکلات را آسان کرده است.

هر تکنولوژي که ايجاد مي شود؛ هر برنامه اي که مورد توجه عموم قرار مي گيرد قطعا مورد توجه نفوذگران هم واقع مي شود، هر سيستمي که بخواهد بماند و پيشرفت کند نياز به ايمني دارد و اينجاست که سدهاي حفاظتي جاوا و مدل هاي امنيتي آن که حاصل تلاش زبردست ترين برنامه نويسان دنياست مورد توجه قرار مي گيرد. مدل چهار لايه امنيتي جاوا جلوي خيلي از اقدامات خرابکارانه و نفوذي را مي گيرد، ولي هيچ سدي 100درصد غير قابل نفوذ نيست!!

در هر حال انتخاب بين اين دو نياز به بررسي دقيق، آينده نگري و مشخص شدن اهداف دراز مدت و ميزان سرمايه گذاري شما دارد زيرا هزينه هايي که يک برنامه جاوا دربر دارد در اکثر موارد چندين برابر يک برنامه .NET خواهد بود.

 

J

شما که با دنياي کامپيوتر و اينترنت آشنايي داريد حتما اين اسم را شنيده ايد. اما اشتباه نکنيد JAVA Script با جاوا فرق دارد. JAVAScript يک برنامه کاملا مستقل است که توسط شرکت SUN و شرکت NetScape ساخته شده است. جاوا هم به صورت فايل اجرايي (exe) و هم در صفحات وب قابل استفاده است. ولي JAVA Script فقط به منظور استفاده در اينترنت طراحي شده است. شما مي توانيد يک متن جاوا اسکريپت را در ساده ترين ويرايشگرها مثل word pad ويرايش کنيد. دستورات JAVA Script درون تگ هاي HTML قرار گرفته و بعد درون فايلي با پسوند .htm ذخيره مي شوند و در مرورگرهاي وب قابل مشاهده هستند.

خلاصه اين که جاوا برنامه اي قوي و کاربردي است و ابتدا فقط مورد توجه برنامه نويسان آمريکايي بود ولي اکنون به قدري رشد کرده است که برنامه نويسان سراسر دنيا به آن اعتقاد پيدا کرده اند، اما از آنجا که جاوا ابزاري است براي برنامه هاي پيچيده و بزرگ که توسط تعداد معدودي از سيستم ها مورد استفاده قرار مي گيرد، کمتر مورد توجه برنامه نويسان سيستم هاي کوچک قرار گرفته ولي با همه اينها ابزارهاي بسيار قدرتمند و پيشرفته اي دارد که قابليت هاي فراواني به اين زبان برنامه نويسي داده است.

 

13 سال قبل, 13 نفر از کارمندان سان ميکروسيستم براي انجام پروژه پر تشويشي با عنوان “موج جديد پردازش کامپوتري“ پرداختند.

اين مشکل از گذشته وجود داشت اما تنها دستاورد اين تيم, جوابگويي به اين سوال بود که چگونه نيازهاي نوين پردازش اطلاعات برطرف مي شود. 5 سال طول کشيد وافکار ونظرات و پيشنهادات فراواني مطرح شد تا فناوري جاوا به جهانيان شناسانده شود. جاوا اولين فضايي است که امکان برنامه نويسي قدرتمند تجاري را ايجاد کرد.

جاوا به صورت يک فناوري نوپا وارد بازار شد و بعدها در اينترنت ريشه گرفت. اين روزها نام HotJava کمتر به گوش مي خورد. اين محصول اولين مرورگري بود که Applet ها را پشتيباني مي کرد. Applet ها برنامه هاي کوچکي بودند که در بروزر ذخيره مي شدند و قادر بودند صفحات HTML ثابت را به کاربردهايي جالب همچون بازي هاي شطرنج دوسويه, چت روم هاي چند نفري و حتي کاربردهايي در تجارت سهام تبديل کنند.

 

توانايي هاي بالقوه جاوا با نيازهاي روز اينترنت همخواني پيدا کرد و به سرعت به صورت زبان بالفعل اينترنت و محاسبات تجاري درآمد. جاوا به سرعت گسترش يافت و طريقه محاسبات و همچنين استفاده از اينترنت را تغيير داد, به طوري که وقتي شما به صورت آنلاين کتابي مي خريد يا سهامي را به فروش مي رسانيد در حال استفاده از جاوا هستيد.

حال پس از گذشت 8 سال فعاليت جاوا,اين سوال مطرح مي شود که جاوا چگونه مي تواند بر موج جديد محاسبات پردازش تاثير گذار باشدًـ؟

ديدگاه هاي مختلفي دراين زمينه وجود دارد ولي مهم ترين آنها اين است که جاوا اگر مي خواهد نقش خود, يعني افزايش کاربرد کامپيوتر را حفظ کند بايد از پيچيدگي خود بکاهد. يکي از کليدهاي موفقيت جاوا نسخه تجاري جاوا 2 است که با نام J2EE شناخته شده است.

J2EE بسيار قدرتمند است و توانايي هاي زيادي دارد ولي همانطور که مي دانيم با افزايش قدرت پيچيدگي ها نيز افزايش مي يابد. اما جاوا براي اين که با سازگاري بيشتري در هنگام اجرا کار کند و قدرت خود را نيز حفظ کند بايد ساده تر باشد.

“جاوا“ 2 يا به اين مساله توجه خواهد داشت و نقش خود را درمحاسبات حفظ خواهد کرد و يا به دليل کاربردي نبودن به دست فراموشي سپرده مي شود. اما اميدواري بسياري وجود دارد که جاوا 2 موفق عمل کند, چون سرمايه ها و افکار زيادي آن را پشتيباني مي کنند. اما براي نيل به اين هدف بايد قادر به حل دو مساله باشد.

جاوا 2 هنوز هم به طوري باور نکردني پيچيده مانده است طوري که تنها براي افراد ماهر و نيروهاي متخصص قابل استفاده است.

با توجه به يک نياز جهاني براي کاهش قيمت ها و شرح حال به روز و جديد سازندگان فناوري اطلاعات پيچيدگي مي تواند عاملي نابود کننده باشد. جاوا 2 بايد با حفظ استانداردهاي خود و توجه به نيازهاي مشتريان و در صدر قرار گرفتن درعرصه هاي رقابتي روند تجاري شدن خود را تسريع کند.

همان طورکه ساده تر کردن Visual Basic کاربرد ويندوز را افزايش داد, جاوا 2 نيز بايد ميانه رو باشد و با کاهش پيچيدگي از حالت اختصاص يافتن به نخبگان خارج شود.

کاهش پيچيدگي جاوا2, آن را در سطح وسيعي قابل فهم و کاربردي مي کند ضمن آن که در وقت کاربران هم صرفه جويي مي شود وباعث استفاده بهينه از توانايي هاي آن مي شود. علاوه بر آن در زمينه تجاري نيز به مقدار قابل توجهي در هزينه و وقت صرفه جويي مي شود.

دومين مساله ميزان سرعتي است که نوآوري جاوا 2 در اختيار مشتريان خود مي گذارد. ميزان سادگي جاوا2 شايد چندان اهميت نداشته باشد اما در مقابل براي اينکه جاوا2 در عرصه بازار هم حضور يابد بايد سرعت خود را به حد ايده آل و مناسب برساند.

افرادي هستند که شايد به کيفيت اهميت چنداني ندهند ولي به سرعت آنها نياز باشد بنابر اين در اينجا سرعت مهمترين مساله خواهد بود.

جاوا2 هنوز هم مي تواند پيشتاز باشد ولي بايد در دستورالعمل هاي خود تغييراتي را ايجاد کند. متخصصان حرفه اي جاوا (JCP) در ميدان رقبا در صدر قرار دارند و براي جذب مشتري بيشتر فناوري هاي خود را قبل از ورود به بازار استاندارد مي کنند.

اين تغييرات يکي دوسال به طول خواهد انجاميد و در حال حاضر با رشد نيازهاي مشتريان, فروشندگان ناچاربه عرضه فناوري هايي هستند که صورت تجاري داشته باشد اما در حقيقت اين فناوري ها بايد قبل از عرضه, موارد مربوط به استاندارد در آنها اعمال شود. درحال حاضرweb فناوري هايي را عرضه مي کند که در سطح وسيعي مورد استفاده قرار مي گيرد و توسط world wide web consortium استاندارد مي شود يعني اين فناوري ها اول در بازار عرضه مي شود و بعد عمل استاندارد سازي بر آنها اعمال مي شود.

 

جاوا2 با استانداردي که مورد نياز مشتري است و با سرعتي بالاتر از انواع قبلي عرضه مي شود به طوري که اگر اين فناوري نبود بايد مرتب مراحل نوآوري, اجرا, استاندارد مورد توجه قرار مي گرفت.

جاوا 2 از انواع موفق فناوري هاي عرضه شده در طول اين هشت سال است و ما همچنان به سرمايه گذاري در کاهش پيچيدگي و سرعت نوآوري و استانداردسازي آن ادامه خواهيم داد تا در هشت سال آينده نيز به شکلي موفق عمل کنيم.

 

 

نوشته : سيد هادي جمشيديان

لینک به دیدگاه
×
×
  • اضافه کردن...