سرور (رایانه)
کارسازها انواع گوناگونی دارند، نظیر:
- کارساز کاربردی (به انگلیسی: application server)
- کارساز وب (به انگلیسی: web server)
- کارساز پشتیبانی (به انگلیسی: backup server)
کتاب آموزش برنامه نویسی سی پلاس پلاس بدون ترس
چرا جاوا براي اينترنت اهميت دارد
تاثيرات پيش برنده اي روي اينترنت داشته است . دليل اين امر بسيار ساده است :
جاوا سبب گسترش فضاي حركت اشيائ بطور آزادانه در فضاي الكترونيكي مي شود . در
يك شبكه ، دو نوع طبقه بندي وسيع از اشيائ در حال انتقال بين سرويس دهنده و
رايانه شخصي شما وجود دارد : اطلاعات غير فعال (passive) و برنامه هاي فعال
(active) و پويا (dynamic) . بعنوان نمونه هنگاميكه پست الكترونيكي e-mail خود
را مرور مي كنيد ، در حال بررسي داده هاي غير فعال هستيد . حتي هنگاميكه يك
برنامه را گرفته و بار گذاري مي كنيد ، ماداميكه از آن برنامه استفاده نكنيد
كدهاي برنامه بعنوان داده هاي غير فعال هستند . اما نوع دوم اشيائي كه امكان
انتقال به رايانه شخصي شما را دارند ، برنامه هاي پويا و خود اجرا هستند . چنين
برنامه اي اگر چه توسط سرويس دهنده ارائه و انتقال مي يابد ، اما يك عامل فعال
روي رايانه سرويس گيرنده است . بعنوان نمونه سرويس دهنده قادر است برنامه اي را
بوجود آورد كه اطلاعات و داده هاي ارسالي توسط سرويس دهنده را نمايش دهد .
بهمان اندازه كه برنامه هاي پويا و شبكه اي شده موردتوجه قرار گرفته اند بهمان
نسبت نيز دچار مشكلاتي در زمينه امنيت و قابليت حمل هستند . قبل از جاوا ، فضاي
الكترونيكي شامل فقط نيمي از وروديهايي بود كه اكنون وجود دارند . همانطوريكه
خواهيد ديد ، جاوا درها را براي يك شكل جديد از برنامه ها باز نموده است :
ريز برنامه ها (applets) .
اعلان اشیا
بدست آوردن اشيائ از يك كلاس ، نوعي پردازش دو مرحله اي است . اول ، بايد يك
متغير از نوع همان كلاس اعلان نماييد . اين متغير يك شي ئ را تعريف نمي كند . در
عوض ، متغيري است كه مي تواند به يك شي ئ ارجاع نمايد. دوم ، بايد يك كپي فيزيكي
و واقعي از شي ئ بدست آورده و به آن متغير منتسب كنيد . مي توانيد اينكار را با
استفاده از عملگر new انجام دهيد . عملگر new بطور پويا ( يعني در حين اجرا )
حافظه را براي يك شي ئ تخصيص داده و يك ارجاع به آن را برمي گرداند .
اين ارجاع (reference) كمابيش آدرس آن شي ئ در حافظه است كه توسط new تخصيص
يافته است . سپس اين ارجاع در متغير ذخيره مي شود. بدين ترتيب ، در جاوا، كليه
اشيائ كلاس دار بايد بصورت پويا تخصيص يابند. اجازه دهيد كه به جزئيات اين روال
دقت نماييم .
استفاده از اشيائ بعنوان پارامترها
هم صحيح و هم معمول است كه اشيائ را نيز به روشها گذر دهيم . بعنوان مثال
برنامه ساده بعدي را در نظر بگيريد :
رشته ها (strings)
چند كلمه اي درباره رشته ها (strings)
حتما" دقت كرده ايد كه طي بحث گذشته درباره انواع داده و آرايه ها هيچ حرفي
از رشته ها يا نوع داده رشته (string data type) مطرح نشد . علت عدم پشتيباني
جاوا از اين نوع نيست . بلكه علت آن است كه نوع رشته در جاوا تحت نام string
يك نوع ساده نيست . اين مفهوم در جاوا با آرايه اي از كاراكترها ( آنگونه در C
و C++ مي باشد ) متفاوت است . در جاوا string تعريف كننده يك شي ئ است و توصيف
كامل رشته ، مستلزم درك كاملي از جنبه هاي گوناگون شي ئ گرايي است . بهمين دليل
مبحث رشته ها را بعد از بحث اشيائ خواهيم گفت . اما چون ممكن است تا آن زمان از
رشته هاي ساده درمثالها استفاده شود، لذا معرفي مختصري از رشته ها ارائه ميدهيم .
نوع string براي معرفي و اعلان متغيرهاي رشته اي استفاده مي شود . همچنين
مي توانيد آرايه هايي از رشته ها را اعلان كنيد . يك ثابت رشته اي داخل علامت " "
را مي توان به يك متغير string نسبت داد . يك متغير نوع string را مي توان به
متغير ديگري از همان نوع نسبت داد . مي توانيد يك شي ئ از نوع string را بعنوان
يك آرگومان به ()println استفاده نماييد . بعنوان مثال ، برنامه بعدي را در
نظر بگيريد :
+ String str = "this is a test";
+ String.out.println(str);
در اينجا str يك شي ئ از نوع string است كه رشته "this is a test" به آن
منتسب شده است . اين رشته توسط دستور ()println بنمايش درمي آيد .
بعدا" خواهيد ديد اشيائ string داراي جنبه ها و خصلتهايي هستند كه آنها را
بسيار قدرتمند و سهل الاستفاده ساخته است . اما در بحثهاي بعدي شما فقط از اده خواهيد نمود .
تاریخچه جاوا 2
زمينه هاي پيدايش جاوا
تاريخچه زبانهاي برنامه نويسي بشرح زير است : زبان B منجر به ظهور زبان C و C
زمينه پيدايش C++ شد و در نهايت زبان جاوا متولد شد . درك زبان جاوا مستلزم :
درك زمينه هاي لازم براي ايجاد جاوا ، نيروهايي كه اين زبان را شكل داده اند و
مشخصاتي است كه اين زبان از اسلاف خود به ارث برده است . نظير ساير زبانهاي
برنامه نويسي موفق ، جاوا نيز عناصر بارث برده از اسلاف خود را با ايده هاي
ابتكاري كه ناشي از محيط منحصر بفرد اين زبان بوده درهم آميخته است . فصول بعدي
جنبه هاي عملي زبان جاوا شامل دستور زبان (syntax) و كتابخانه ها (libraries)
و كاربردهاي جاوا را توصيف مي كند . فعلا" چگونگي و علت ظهور جاوا و اهميت آن
را بررسي مي كنيم .
اگر چه جاوا تفكيك ناپذيري با محيط هاي همزمان اينترنت پيوستگي دارد ، اما
بخاطر بسپاريد كه جاوا قبل از هر چيز يك زبان برنامه نويسي است . ابداعات و
پيشرفت ها در زبانهاي برنامه نويسي كامپيوتر بدو دليل بروز مي كنند :
- تطابق با تغييرات محيط ها و كاربردها .
- ايجاد پالايش و پيشرفت در هنر برنامه نويسي .
همانطوريكه بعدا" مشاهده مي كنيد ، تولد جاوا از اين دو دليل بطور يكسان
تاریخچه جاوا 1
جاوا
جاوا شباهتهایی به سیپلاسپلاس دارد، ولی قابلیت انتقال آن بهتر است و استفاده از آن ساده تر از ++C است. همچنین مدیریت حافظه نیز توسط خود ماشین مجازی جاوا انجام میشود. طراحی این زبان به گونه ایست که دارای اطمینان بسیاری بوده و وابسته به سیستم عامل خاصی نیست. و دلیل این موضوع این است که جاوا یک ماشین مجازی در سیستم شما راه میاندازد و برنامهها را در آن ماشین مجازی اجرا میکند. این ماشین مجازی «ماشین مجازی جاوا» یا به اختصار JVM نامیده میشود. البته راه انداختن یک ماشین مجازی باعث دو مشکل میشود. هنگامی که نرمافزار شما در یک ماشین مجازی اجرا میشود سرعت کمتری خواهد داشت، همچنین شما نیاز دارید قبل از اجرای برنامههای جاوا یکبار سیستم مجازی جاوا را که حجم نسبتاً بالایی دارد، از اینترنت بارگذاری و یا از جای دیگری تهیه و نصب کنید ولی مزیت آن عدم وابستگی به سیستم عامل مقصد است.
مهندسی نرم افزار کامپیوتر