کاراموزی شرکت همراه نرم افزار نوین

مقدمه
شركت همراه نرم افزار نوين به عنوان اولين شركت توليد كننده نرم‌افزار تلفن‌همراه نزديك به ۳ سال است در اين زمينه فعاليت خود را آغاز نموده كه نتيجه آن فارسي‌ساز رابط كاربر تلفن‌هاي سري ۶۰ نوكيا و همچنين توليد برنامه‌اي جهت مديريت هاي شخصي بر اساس تاريخ شمسي بوده است.

با توجه به امكانات قابل توجه تلفن هاي همراه جديد به موازات موارد فوق اين شركت اقدام به توليد نرم افزار‌هاي ديگري نظير قرآن،مفاتيح الجنان اذان،مناسك حج،بانك اطلاعات مشاغل و… نموده است به دليل پيشرو بودن در اين زمينه اين شركت بخش قابل توجهي از منابع خود را به امور تحقيقات و ارائه راهكارهاي جديد براي استفاده بهتر از تلفن‌هاي همراه اختصاص داده است.

من به مدت ۲۴۰ ساعت در شركت همراه نرم افزار نوين مشغول به كار شدم. هدف از اين كار :
بمنظور آشنايي با محيط كاري و اينكه آنچه راكه در مدت كارداني به صورت تئوري وتاحدودي عملي آموخته ام در جامعه كاري به صورت كاربردي از آن استفاده كنم و بكار گيرم.
اين شركت مجموعاً به چند بخش عمده تقسيم بندي شده است كه شامل:

۱- بخش توليد
۲- بخش اداري- پرسنلي
۳- بخش تبليغات
۴- بخش فروش
۵- بخش خدمات پس از فروش

من در ابتدا مدتي در بخش فروش مشغول به كار شدم. نفرات متعددي در اين بخش كار ميكردند از جمله: مدير بازاريابي و فروش – سرپرست فروش- سوپروايزر تهران و سوپروايزر شهرستانها. باشند

در اين واحد نرم افزارهايي كه توسط بخش توليد،تهيه و تأييد شده و باركد خورده باشند به فروش مي رسد. اين شركت كاملاً به صورت مكانيزه عمل مي كند.
هر نرم افزار در سايت اين شركت به صورت رايگان دانلود ميشود اما براي اجراي آن بايد مبلغي را به حساب شركت مذكور واريز كنند، بعد از تاييد واريز وجه كد فعال سازي به تعداد نرم افزار هايي كه مشتري يا مشتريان خريداري مي كنند در اختيار آنها قرار مي گيرد و هر مشتري براي فعال سازي آن برنامه به صورت خودكار هنگامي كه برنامه ها را فعال ميكند اطلاعات او در سرور هاي شركت ثبت و نگهداري مي شود كه البته قابل ذكر است كه بخش(اتاق) سرور ها كاملاً ايزوله شده و هيچكس جز مسئول مربوطه اجازه دسترسي به آنها را ندارد.

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

مي توان گفت اين قسمت يعني همان بخش خدمات پس از فروش به نوعي قلب اين شركت ميباشد و محبوبيت اين شركت در بين كاربران و حتي نمايندگان خود به دليل خدمات نامحدود آن است و بدون اينكه وجهي دريافت كند تا مادامي كه از آن نرم‌افزار استفاده مي شود خدمات رايگان در اختيار آن كاربر گذاشته مي شود.كاربران اغلب بصورت تماس تلفني مشكلاتشان را مطرح كرده و مسئولين فني و اپراتورها به آنها پاسخ ميدهند تا مشكلات آنها را برطرف كنند و اگر مشكل آنها خيلي حاد بود به شركت مراجعه ميكنند ولي اكثراً با يك تماس مشكل برطرف ميشود.در اين بخش تمام خدمات به صورت رايگان در اختيار كاربران قرار ميگيرد.

خدماتي كه اين بخش در اختيار يوزرهاي خود ميگذارد شامل :
۱- نسب نرم‌افزار در كوتاهترين مدت ممكن

نكته:البته قابل ذكر است كه تمام نرم افزارها به صورت پكيج به بازار عرضه شده كه هركدام از پكيج ها شامل: دفترچه راهنماي نسب و كد فعال سازي ميباشد كه با خواندن آن دفترچه به راحتي مراحل نسب انجام ميشود. در اين صورت حتي اگر كاربر نتواند اين كار را انجام دهد مسئولين اين بخش باكمال رضايت اين خدمات را در اختيار كاربران
مي گذارند.

۲- چك كردن سرورها كه حتي براي يك ثانيه هم متوقف نشوند.چون اگر چنين مسئله اي پيش بيايد در سراسر ايران فروشندگان و نمايندگان وعاملين فروش و موبايل فروشي ها كارشان مختل ميگردد.

۳- پاسخ گويي به مشترياني كه تماس تلفني گرفته و ميخواهند به صورت شنيداري و به كمك راهنمايي هاي اپراتور مشكلات خود را در زمينه ي نصب كردن برطرف نمايند.
۴- حفاظت از سرورها كار كاملاً خطيري است كه به اين بخش محول شده و بايد از نظر Security كاملاً واقب باشند كه به هيچ يك از كدهاي داخل سرور كوچكترين خدشه اي وارد نشود و تغيير و جابجايي در آنها صورت نگيرد.

۵- نمايندگان استانها و شهرستانها كه تماس ميگيرند تا ببينند چه تعداد از كدهاي آنها مصرف شده و چه تعداد از كدها باقي مانده است.مثلاً اگر كسي از مقررات سرپيچي كرده باشد(يعني قانون كپي رايت را ناديده گرفته باشد)سريعاً باگزارشي كه به اين بخش ميشود جلوي آن كد را گرفته و كد مذبور بلاك ميشود تا فرد متخلف نتواند از آن برنامه استفاده كند بدين صورت كه كد آنرا ميسوزانند و اگر كاربر خطا كار بخواهد از آن استفاده كند پيغام :

” اين كد فاقد اعتبار است” را نشان ميدهد كه اين كار يكي از شاخص هاي شركت است كه هيچ يك از شركتهاي ايراني توليد كننده نرم‌افزار به اين مسئله توجه نكردند و بعد از مدت كوتاهي تمام نرم‌افزارهايي كه آنها زحمات فراواني براي توليد آن مي كشند سريعاً هك ميشود ولي تاكنون با گذشت پنج سال از توليدات نرم‌افزارهاي اين شركت هنوز هيچكس نتوانسته حتي يك نسخه را هم هك كند.

بخش بعدي مربوط به بخش توليد است كه در آنجا دوگروه مشغول به فعاليت ميباشند:
گروه اولProgramer ها هستند كه استراكچرها و برنامه ها را مينويسند وبا برنامه هاي متعددي كار ميكنند از جمله: C++ و java كه در قسمت هاي بعدي به توضيح جامع و كاملتري از نرم‌افزار جاوا ميپردازم.

گروه دوم Data intry ها هستند يعني،افرادي كه با نرم‌افزارها و ابزارهايي كه توسط برنامه نويسان طراحي و ساخته شده است كار ميكنند
كه اطلاعات را وارد كرده و ايراد يابي ميكنند تا در نهايت تاييد شده و به مرحله بهره برداري برسد بايد در نظر داشت كه حتي كوچكترين خطا و اشتباه منجر به مشكلات بزرگي خواهد شد. اين بخش نقش كليدي و حياتي را در تهيه برنامه ايفا ميكند.

در قسمت ضمائم نيز چند نمونه از نرم‌افزارهاي توليد شده توسط اين شركت و قابليت هاي آنها را توضيح داده ام .
توضيحات ذكر شده مختصري از شرح كارآموزي من در اين شركت بود و من در طي اين مدت با چگونگي عملكرد نرم‌افزار جاوا كه يكي از نرم افزار هاي مورد استفاده در اين شركت بود تا حدودي آشنا شدم كه در زير به شرح قسمت هايي از آن پرداخته ام:

جاوا
جاوا يك زبان برنامه نويسي است كه در اوايل دهة ۹۰ توسط جاوا سافت، بخش نرم افزاري شركت سان، توسعه داده شد. هدف آن بود كه جاوا زباني ساده، فوي و همه منظوره باشد. جاواتمام جنبه‌هاي مثبت C و C++را در خوددارد، و آن چيزهايي كه برنامه نويسان از‌آن نفرت داشته اند ( مانند وراثت چند گانه، تحريف اپراتورها و اشاره گرها) را به كناري گذاشته است.
مهمترين ويژگي جاوا اين است كه اساساً شييء گر است. اولين ادعاي oppتوانايي استفادة مجدد از كد است؛ چيزي كه C++ با تمام ادعاهايش هرگز نتوانست بدان دست بابد، اما در اولين قدم خواهيد ديد كه ادعاي جاوا در اين زمينه تا چه اندازه صحت دارد. تصورش را بكنيد كه با صرف كمي وقت بتوانيد برنامه‌اي بنويسيد كه در سيستم‌هاي ويندوز، يونيكس و مكينتاش براحتي اجرا شود! همين كه يك شركت نرم افزاري بتواند براي تمام پلاتفرم‌‌هاي موجود در آن واحد پروژه‌اي را توليد كند ( و مقادير عظيمي پول صرفه جويي كند) خود مي‌تواند بهترين دليل اقبال جاوا باشد . و امروزه ديگر همه ( و نه فقط شركتهاي نرم افزاري) به سمت جاوا كشيده شده‌اند.

با اين ويژگي ( استقلال از پلاتفرم) يك برنامه نويس مي‌تواند براي سيستمي برنامه بنويسيد كه هرگز با آن كار نكرده است. اين ويژگي اصلي ترين علت توفيق جاوا در اينترنت است. اينترنت شبكة پچيده‌اي است از ميليونها كامپيوتر مختلف در سراسر دنيا، و مقاومت در مقابل اين وسوسه كه بتوانيد برنامه‌اي بنويسيد كه روي تمام اين سيستم‌هاي متفاوت و نامتجانس اجرا شود چندان ساده نيست.

جاوا يك زبان بسيار ساده است چون شما را وادار نمي‌كند تا در محيط جديد ( و ناآشنايي) كار كنيد و اين براي كساني كه اطلاعات فني ناچيزي دربارة كامپيوتر دارند بسيار مهم است . ساختار زبان جاوا در نگاه اول بسيار شبيه C و C++ است و اين به هيچ وجه تصادفي نيست . C زبباني است ساخت يافته و C++ زبانيست شيي‌‌ء گرا ، و مهمتر از همه قسمت اعظم برنامه نويسان دنيا از آنها استفاده مي‌كنند. از سوي ديگر اين شباهت حركت به طرف جاوا از براي اين قبيل افراد ساده خواهد كرد بنابراين طراحان جاوا براي اجتناب از دوباره كاري از زبانهاي C وC++ بعنوان مدل استفاده كردند. ( و آيا اين خود به تنهايي نشانة نبوغ طراحان جاوا نيست؟) .

جاوا با دور انداختن اشاره گرها و بر دوش كشيدن بار مديريت حافظه، برنامه نويسانC++ /C را براي هميشه از اين كابوس‌ها رهايي بخشيده است. علاوه برآن، چون جاوا زباني براي اينترنت است، از ايمني و حفاظت ذاتي بالايي برخودار است. طراحان حاوا از ابتدا يك محيط برنامه نويسي امن را مد نظر داشته‌اند. مسئله حفاظت سيستم‌ها رابطة تنگاتنگي با اشاره گرها دارد؛ اكثر مهاجمان براي ورودي غير قانوني به جاوا مكانيزم‌هاي حفاظتي ديگري هم دارد كه در جاي خود به آنها اشاره خواهيم كرد.
براي آشنايي بيشتر با جاوا بهتر است نگاه مختصري به تاريخچة آن بيندازيم. اما چون جاوا رابطة تنگاتنگي با اينترنت دارد، آوردن تاريخچه‌اي از اينترنت و وب خالي از فايده نيست.

تاريخچة مختصر اينترنت وب
اينترنت به عنوان يك پروژة دولتي ايالات متحده امريكا در سال ۱۹۶۹ بدنيا آمد. اين پروژه ، كه درابتدا آرپانت (arpanet) نام داشت. فقط چهار كامپيوتر را در نقاط مختلف ايالات متحده به هم متصل مي‌كرد. آرپانت بتدريج رشد كردو در سال ۱۹۷۲ پنجاه دانشگاه و مركز تحقيقاتي نظامي در آن فعال بودند. در اواخر دهة ۱۹۸۰ متجاوز از هشتاد هزار كامپيوتر در اين شبكة عظيم به هم متصل شده‌ بودند. اين كامپيوترها خود به دستجات ( شبكه‌هاي) كوچكتري تقسيم شده بوددند و شبكة شبكه‌ها ( يا اينترنت) آنها را به يكديگر متصل مي‌كرد. در تمام اين

مدت اينترنت ملك اختصاصي محققان و دانشگاهيان بود و با آن كه شركتهاي خصوصي هم مي‌توانستند به آن دسترسي داشته باشند ولي سياست حاكم بر آن مانع استفادة تجاري از اينترنت شده بود. در سال ۱۹۹۱ با حذف ممنوعيت تجارت در اينترنت اوضاع دگرگون شد؛ ولي كماكان محدودة تجارت و تحقيق از هم جدا بود. از همين نقطه بود كه رشد انفجاري اينترنت شروع شد به طوري كه هم اكنون نزديك به ۱۰۰ ميليون كاربر در اين شبكه عضويت دارند و اينترنت به تمام زاوياي زندگي رسوخ كرده است.

با آن كه اينترنت چندان جوان نيست اما از تولد وب ( يا شبكة تار عنكبوتي جهاني، World Wide Wed-WWW) زمان زيادي نمي‌گذرد. وب در سال ۱۹۸۹ در آزمايشگاه اروپايي فيزيك ذرات (CERN) متولد شد. وب حاصل زحمات تيم برنرز – لي_(tim berners-lee) بود كه تلاش داشت تا فيزيكدانان سراسر دنيا بتواند اطلاعات خود را در شبكة اينترنت و به صورت

اَبَرمتن(hypertext) با هم در در ميان بگذرند . وي براساس زبان عمومي علامتگذاري استاندارد SGML يك زبان جديد بنام زبان علامتگذاري اَبَرمتن HTML بوجود آورد. براي انتقال اسناد HTMLهم يك پروتكل جديد ابداع شد كه پروتكل انتقال اَبرمتن HTTPنام گرفت. اين پروتكل وسيله‌اي بود براي جستجو، يافتن، بازيابي و نمايش سريع اسناد. با استفاده از ابرمتن مي‌توان

در شبكه‌اي از منابع، با برنامه‌اي بنام كاوشگر BROWSER بدنبال اسنادي با ويژگيهاي خاص كاوش كرد. چون اولين كاوشگر فقط مي‌توانست متون را نمايش دهد با اقبال كمي مواجه شد. در حقيقت درسال ۱۹۹۳ فقط پنجاه پايگاه وب در تمام دنيا وجود داشت. شروع محبوبيت وب ورشد برق آساي آن با ورود كاوشگر گرافيكي موزائيك MOSAIC همراه بود. اين كاوشگر در NCSA ( مركز ملي كاربردهاي سوپر كامپيوتر) توسعه داده شد.

امروزه در دنيا دهها كاوشگر گرافيكي و متجاوز از يكصد هزار پايگاه وب وجوددارد. موفقيت موزائيك باعث شد تا عده‌اي از محققان NCSA شركت نت اسكيپ NETSCAPE را تأسيس كنند و اين همان شركتي است كه معروفترين كاوشگر وب يعني NetsCape Navigator را توليد كرده است. كاوشگر نت اسكيپ علاوه بر HTML قابليت‌هاي متعددي در زمينة مالتي مديا دارد كه باعث تسريع در روند رشد اينترنت و وب شده است.

اما سال ۱۹۹۵ يكي از مهمترين سالها در تاريخ اينترنت و وب است: در اين سال بود كه ميكروسافت ويدئوي اينترنتي را توسعه داد و صوت را تبديل به يكي از اجزاء تفكيك ناپذير اسناد ابرمتن كرد؛ نت اسكيپ با افزودن قابليت‌هاي بي‌شمار به كاوشگر خود همه را شگفت زده كرد؛ اولين ويرايش زبان مدلسازي واقعيت مجازي VRML به بازار آمده و سان جاوا را در يك سيني طلايي بدنيا عرضه كرد.

توسعه دهندگان وب با جاو ابزاري را يافتند كه باآن مي‌توانستند صفحات تعاملي مالتي مديا در اينترنت بوجود آورند و اين نقطه عطف جديدي در تاريخچة اينترنت به شمار مي‌آيد.
تكامل جاوا
جاوا هم مانند اكثر اختراعات مهم حاصل تلاش گروهي دانشمند پيشتاز است. اما نكتة جالب دربارة جاوا آن است كه جاوا از ويرانه‌‌‌هاي يك پروژة شكست خورده سر برآورد . اگر پروژة گرين Greenكه شركت سان در سال ۱۹۹۱ آن را شروع كرد به موفقيت مي‌انجامد امروز نه سان ديگر يك شركت كامپيوتري مي‌بود و نه جاوا متولد مي‌شد.

در سال ۱۹۹۱، شركت سان ميكروسيستمز در آغاز راه تبديل شدن به بزرگترين توليد كننده ايستگاههاي كاري يونيكس بود و در طول فقط پنج سال در آمدش را از ۲۱۰ ميليون دلار به ۵/۲ ميليارد دلار رسانده بود و بنظر مي رسد هيچ چيز نمي‌تواند جلودار آن باشد. عامل عمدة موفقيت سان كارهاي پيشتازانه‌اش در ايجاد شبكه‌هاي باز بود و در اين زمينه هيچ كس به پاي آن نمي‌رسيد.

مديران سان به اين فكر افتادند تا كاري كنند كه اين رشد براي مدتي طولاني ادامه يابد. يكي از زمينه‌هاي مورد علاقة سان بازار لوازم الكترونيكي بود؛ پروژه گرين بوجود آمد تا براي اين بازار نرم افزاري پيشرفته خلق كند. مهندسان سان توجه خود را به ميكروپروسسورهايي معطوف كردند كه داراي قابليت استفاده در اين گونه سيستم‌ها باشند. اگر پروژة گرين مي‌خواست موفق باشد بايد كاري مي‌كرد تا سيستم مزبور بتواند براحتي به بسترهاي سخت افزاري مختلف منتقل شود. براي اين منظور ابتدا از كامپايلر C++ استفاده شد ولي بزودي نارسايي‌هايC++ در اين زمينه خود را نشان دادند. مهندسان سان خيلي سريع دريافتند كه براي ادامة كار بايد چيزي جديد و قوي خلق كنند. در همين زمان بود كه جيمز گاسلينگ كار بر روي زبان جديد اوكOak را شروع كرد . تقديرآن بود كه اين زبان جاواJava ناميده شود، چون ادارة ثبت نام‌هاي تجاري نام اوك را رد كرده بود.

بتدريج مهندسين يك دستگاه شبه PDA ساختند كه در آن از سيستم عامل ،‌زبان برنامه نويسي و واسط كاربر جاوا استفاده شده بود و با وجود ابتدايي بودن توانست توجه مديران سان را به خود جلب كند. بعدها گروهي كه در پروژه گرين كار كرده بودند شركت جاواسافت را بنيان نهادند.

متأسفانه بخت با پروژة گرين يار نبود و بعد از چند شكست متوالي، سان آن را كنار گذاشت. در همين زمان بود كه عده‌اي از محققان NCSA شركت نت اسكيپ را تأسيس كردند و اين اتفاقات با آتشي كه به سرعت دنيا را در مي‌‌نورديد و شبكة تار عنكبوتي جهاني Wwwنام داشت همزمان شد. بنابراين اتفاقي نبود كه مهندسان پروژه گرين به سمت اينترنت و وب به عنوان بستر پروژة سان جلب شوند. بعد از آن ديگر جزء تاريخ است، چهار سال بعد پروژة گرين به بار نشست و جاوا تبديل به داغترين موضوع اينترنت شد: همه،‌از برنامه نويسان و طراحان صفحات وب گرفته تا كاربران اينترنت، مي‌‌خواهند از جاوا استفاده كنند.

سان بلافاصله براي جاوا يك كاوشگر هم توليد كرد. اين اولين كاوشگري بود كه مي‌توانست اپلت‌هاي جاوا را اجرا كند و نام آن هم هات جاواHotJava بود.
ويژگي‌‌هاي زبان برنامه نويسي جاوا
جاوا ويژگيهاي متعددي دارد كه آن را منحصر به فرد كرده است. جاوا هم كامپايلر دارد و هم اينترپرتر. ( توضيح: كامپايلر برنامه‌اي است كه متن برنامه را گرفته و در پايان يك فايلexe توليد مي‌كند. بعد از كامپايل شدن يك برنامه، ديگر به وجود كامپايلر نيازي نيست و مي‌توان برنامة exe را روي هر كامپيوتر سازگاري اجرا كرد. اما اينترپرتر هيچ برنامة exe اي توليد نمي‌كند و برنامه را خط به خط اجرا مي‌كند. براي اجراي برنامه حتماً بايد اينترپرتر هم روي كامپيوتر مورد نظر موجود باشد). هر كامپايلر فقط براي يك سيستم خاص ( مانند اينتل، اپل يا آلفا) مي‌تواند كد اجرايي توليد كند. اما كامپايلر جاوا كد اجراييexe توليد نمي‌كند و در عوض يك فايل بينابيني مي‌سازد كه بايت كد نام دارد. بايت كد چيزي شبيه زبان اسمبلي است، اما اين زبان مختص هيچ پروسسور خاصي نيست بلكه زبان اسمبلي يك ماشين ويژه به نام ماشين مجازي جاوا jvm است. در هنگام اجراي چنين برنامه‌اي اينترپرتر زمان اجراي جاوا ، كه روي ماشين مجازي جاوا اجرا مي‌شود، دستورات فايل بايت كد را به دستورات قابل فهم براي پروسسوري كه روي آن اجرا مي شود تبديل خواهد كرد.

اماشايد از خود سوال كنيد كه چرا جاوا اين همه كار را بر خود( و ديگران) سخت گرفته است؟ اين همه لايه و ماشين مجازي براي چيست؟ يكي از بزرگترين ادعاهاي جاوا آزاد بودن از بستر سخت افزاري است. اما ، اين يعني چه؟ اگر جاوا بخواهد در اينترنت موفق باشد برنامه‌هاي آن بايد بتوانند بدون هيچ اشكالي روي تمام كامپيوترهاي متصل به اينترنت اجرا شود، اما شما بهتر مي دانيد كه اينترنت شبكة عظيمي است از كامپيوترهاي نامتجانس، از سوپر كامپيوترهاي عظيم گرفته تا PC هاي مبتني بر پروسسورهاي اينتل و پاورپي سي تا ماشين

‌هاي يونيكس مبتني بر پروسسورهاي آلفا و …! چگونه يك برنامه‌اجرايي مي‌تواند روي اين طيف وسيع كامپيوترها اجرا شود؟ ايدة اوليه ساده است: برنامه‌ها براي يك ماشين‌ مجازي كامپايل شوند و اين ماشين مجازي روي تمام كامپيوترهاي متصل به اينترنت نصب شود. اين دقيقاً همان روشي است كه جاوا در پيش گرفته است. برنامه‌تان را با يك كامپايلر جاوا كامپايل كنيد؛ آن را در پايگاه وب خود قرار دهيد و به ديگران اطلاع دهيد تا با يك كاوشگر مجهز به جاوا اين برنامه را ( كه ممكن است در دل يك صفحه وب قرار داشته باشد) اجرا كنند.

شايد هرگز تصور نمي‌كرديد كه برنامه‌اي را كه با يك PCاينتل نوشته‌ايد روي يك ماشين مكينتاش يا يونيكس اجرا شود، ولي اكنون به لطف جاوا اين ديگر ‌آرزويي دست نيافتني نيست.
با آن كه C و C++ بدون شك زبانهايي بسيار قدرتمندي هستند اما اشكالاتي ذاتي دارند كه شايد هرگز نتواند از آن رهايي يابند. عمده‌ترين اين اشكالات در مديريت حافظه و اشاره‌گرهاي آنها است. براي اكثر برنامه نويسانC++ /C مديريت حافظه و اشاره گرها يك كابوس واقعي است. با آن كه جاوا بدليل محبوبيت فوق العادة C++ ظاهري شبيه آن دارند

ولي در جاوا مديريت حافظه به طور خودكار انجام مي‌شود و اشاه گر هم اساساً در جاوا آرايه‌ها عضوي از يك كلاس هستند كه تمام مشكلات كار با آرايه را از دوش برنامه نويس بر مي‌دارد. جاوا در زمينة بهينه كردن استفاده از حافظه بسيار قويتراز اسلافش است، يكي از ويژگيهاي جاوا پاكسازي خود كار حافظه از چيزهاي بي‌مصرف است. ( اين برنامه نام بامسماي آشغال جمع كن gc را دارد!) .

شيئ گرايي در جاوا به غايت خود رسيده است. جاوا در استفاده از اشياء بسيار مفيد و سخت گير است و تخطي از اصول را نمي‌پذيرد. در C++ شما مي‌توانيد از اشياء به موازات برنامه نويسي به سبك قديم استفاده كنيد و اكثراً در پايان كار چنان ملغمه‌اي بوجود مي‌آيد كه مديريت آن نه با روش‌هاي برنامه نويسي شيئ‌ء گرا امكان دارد نه با روش‌هاي قديمي. جاوا ديگر به شما اجازه نمي‌دهد تا خود را در چنين مخمصه‌اي گرفتار كنيد!

شروع برنامه نويسي با جاوا
اولين برنامه‌اي كه مي‌نويسم يك برنامة متكي به خود است بنامhello worldتفاوت يك برنامة متكي به خود و يك اپلت آن است كه در برنامة متكي به خود ( كه ازاين به بعد به آن فقط برنامه خواهيم گفت) از متدي بنام main() استفاده مي‌شود در حاليكه اپلت چنين متدي ندارد.
برنامة helloworld بسيار ساده است و فقط جملة”Hello World!” را نمايش مي‌دهد. با اين حال، از آن مي‌توان به عنوان سنگ بناي برنامه‌هاي پيشرفته‌تر استفاده كرد چون تمام برنامه‌هاي جاوا ساختار كلي مشابهي دارند .
class Helloworld{

public static void main(string args[]) {
system.out.println(“hello world!”);
}
}
اين برنامة پنج خطي داراي تمام ويژگيهاي يك برنامة كامل و مفصل شيئ‌گرا است .
نكته: براي نوشتن برنامه‌هاي جاوا از هر اديتوري كه خروجيASCII توليد كند مي‌توانيد استفاده كنيد.
برنامه را با نام helloworld.java ذخيره كنيد . نام برنامه بايد همان نام كلاس برنامه باشد.
اين برنامه دو قسمت مهم دارد:
-تمام برنامه در واقع يك تعريف كلاس است.
-كل برنامه در متد main() قرار دارد.