آموزش جاوا قسمت اول : مقدمه ای بر جاوا

با سلام
مقدمه:
بعد از مدت ها که تصمیم گرفته بودم نوشته های خودم رو از سایت برنامه نویس به وب لاگ شخصی خودم منتقل کنم.نوشته های من تحت نام HOTICE  بود.
متاسفانه بعلت ناشناخته ماندن وتاکمی مبهم بودن این زبان حتی برای برنامه نویسان در حد متوسط گرایش به این زبان در کشور مابسیار کم رنگ می باشد.و علت دیگر شاید نداشتن یک IDE یکتا وثابت برای این زبان است( اگر کمی وقت در اینترنت صرف یافتن IDE برای جاوا کنیدبه گزینه های زیادی برمی خورید Eclipse , Websphere , JDeveloper , Netbeans , Intelli.... که خو گرفتم با هریک حتی برای برنامه نویسان حرفه ای وقت لازم دارد ."البته به نظر من این یک قوت است"). من در این نوشتار قصد ندارم برتری جاوا بر بقیه زبانها را بگویم ویا تفاوت .NET با J2EE را بیان کنم بلکه آموزشی در حد مقدماتی بر این زبان خواهیم داشت.
بحث ونوشته هایی که در این تاپیک و تاپیک های آینده مطرح وارائه می شود حاصل و برگرفته از :
- ترجمه بخشهایی از کتاب Core Java
- کتب و مقالات موجود در اینترنت و مجلات
- Java Doc
- و تجربه و معلومات شخصی بنده
( هر کدام از مباحثی که حاصل تجربیات شخصی اینجانب است قابل نقد ، بحث و رد میباشد)
همچنین در این مقالات قصد دارم که IDE بسیار قدرتمند Eclipse را مورد استفاده قرار دهیم که به موقع و بین دروس به آن خواهیم پرداخت.
توجه : پروژه ها ومثالهایی که اجرا خواهیم کرد احتیاج به هیچ IDE ندارد ،شما میتوانید حتی با Notepade هم آنهارا بنویسید. اما برای راحتی کار واشنایی با یک IDE قدرتمند توصیه میشود از Eclipse استفاده کنید.
خوب برای شروع به چه چیزهایی نیاز داریم :
- دانشی از برنامه نویسی ( هرچند مقالات به گونه ای خواهد بود که افراد نا آشنا با برنامه نویسی قدم به قدم اصول برنامه نویسی را فرا خواهند گرفت. اما دانستن اصول برنامه نویسی بد نیست مخصوصاً اشنایی با syntax های C عالی خواهد بود )
- Java SDK
- یک کامپیوتر (سیستم عامل فرق نمی کند)
- Eclipse IDE (واجب نیست ، مستحب است)
نکته : بعلت مسائل کاری من هرروز نمیتوانم به پای کامپیوتر بروم.اگر سوالی مطرح کردید و جواب آنرا از طرف بنده دیر به دستتان رسید پیشاپیش عذر خواهی میکنم.
سرفصل های دروس بیشتر بر اساس کتاب Core Java خواهد بود و شاید گریزهایی به خارج از آن زدیم. سرفصل ها شامل : مقدمه ای برجاوا ، محیط برنامه نویسی جاوا ، ساختار پایه برنامه نویسی در جاوا ، شیء گرایی ، وراست ، کلاسهای درونی و اینتر فیس ، برنامه نویسی گرافیکی ، مدیریت رویداد و..... خواهد بود.

و اینک : بسم الله الرحمن الرحیم
مقدمه ای بر جاوا
برای اکثر کسانی که فقط نامی از جاوا شنیده اند(البته در ایران) ویا در حد خیلی ابتدایی با جاوا کار کرده باشند جاوا مترادف است با : برنامه نویسی شبکه ، اجرای خیلی کند ، خیلی سخت ، غیر قابل فهم ، کم طرفدار در ایران ، بدون رابط کاربر، برنامه نویسی کنسولی و...... آیا واقعا چنین است ؟؟
قبل از توضیح دادن بعضی ازآنها به تاپیک هایی که در همین بخش با عنوان " کار های برزرگ با جاوا"،"یک بازی سه بعدی با جاوا"،"نوشتن سیستم عامل باجاوا" مراجعه کنید و یا می توانید خودتان در اینترنت به جستجو بپردازید.اما بعضی از این حرف ها هم شاید رد کردن آن چندان کار درستی نباشد.
- برنامه نوسی شبکه : مطمئناً یکی از بازوهای قدرت مند جاوا است.
- اجرای خیلی کند : در مقایسه با برنامه های native compile تقریبا درست است. البته بخاطر ویژگی وساختار زبان جاواست.در ضمن تفاوت آن چندان محصوص نیست.
- خیلی سخت : موافق نیستم ، شاید برای افراد راحت طلب درست باشد.
- غیر قابل فهم : شاید برای برنامه نویسان روال گرا (procedure oriented) وغیر اشنا با OOP(برنامه نویسی شیء گرا) کمی درفهم آن مشکل داشته باشند.
- کم طرفدار در ایران : بخاطر ناشناخته ماندن آن.
- بدون رابط کاربر : اگر منظورشان IDE باشد که بیشتر از انگشتان دستتان IDE وجود دارد. و اگر منظورشان ساخت GUI برای برنامه ها باشد که حرف کاملا غلطی است. رجوع کنید به اینترنت یا تاپیک "کارهای بزرگ با جاوا". در بخش گرافیک و رابط کار بر توضیح خواهم داد.

و قص الی هذا ...........
"جاوا فردا بهتر از امروز خواهد بود". شاید این یک شعار دهن پر کن بنظر برسد اما با نگاهی به روند تکامل آن گویای این مطلب خواهد بود که جمله فوق چندان هم یک شعار نیست. سوالی که شاید در ذهنتان باشد این است که :
"این بهبود ها از کجا آمده است؟" . از تغیر در ساختار وزیر بنای جاوا نبوده بلکه قسمت اعظم آن تغیر در کتابخانه های جاوا بوده. به مرور زمان سان مایکروسیستمز خیلی از توابع کتابخانه ای جاوا را تغیر داد (برای سازگاری بیشتر)، تغیر در مدل گرافیکی با تغیر مدل رویداد و بازنویسی قسمت هایی از آن و هم چنین اضافه کردن ویژگی های مهمی مثل پرینت گرفتن که در نگارش های اولیه دیده نمی شد.نتیجه این تغیرات پلتفرم برنامه نویسی بسیار مفیدی با قابلیت های زیاد در ورژن های بعد بود.
نکته :
مایکروسافت هم محصولی بانام J++ بیرون داده بود که مشترکاتی با خانواده جاوا داشت.J++ دارای مفسری سازگار با ماشین مجازی جاوا برای اجرای بایت کد های جاوا بود.اما تفاوت اصلی در بخش interface و رابط کاربرآن بود. پایه دستورات تقریبا با جاوا برابر بود. مایکروسافت ابزار های مشکوکی در بخش interfacing و رابط کاربر آن اضافه کرده بود.منظورم استفاده از API های ویندوز بود.(( نظر من این است که : این کار مایکروسافت ترفندی برای لوکالیزیشن کردن برنامه ها بود. یا همان انحصاری کردن برنامه ها برای ویندوز.با این کار قابلیت حمل پذیری جاوا از بین می رفت. وشاید ترفندی برای زمینه سازی .NET . که جای بحث دارد)) در کل جاوا و J++ اشتراکات زیادی زیادی در توابع کتابخانه ای شان داشتند مثلاً : string, utilities, networking, multithreading, math و غیره که واقعاً برابر بودند. مایکروسافت برای مدت طولانی پشتیبانی از J++ را ادامه نداد بلکه پلتفرم وزبان جدیدی را معرفی کرد که بسیار شبیه به جاوا بود وآن .NET و C# بود.
برتری های جاوا :
- اولین برتری جاوا محیط اجرایی یا همون runtime environment آن است. که پلتفرم مستقلی را فراهم می کند که شما می توانید یک کد را روی ویندوز،لینوکس،مکینتاژ و.... اجرا کنید.این قابلیت وقتی مورد توجه قرار می گیرد که شما برنامه ای را روی پلتفرم های متفاوتی از اینترنت دانلود کنید.
- برتری دیگر آن سینتکس شبیه به C++ آن بوده. که ساخت برنامه ها را برای برنامه نویسان C/C++ آسان میکند.
- همچنین جاوا یک زبان برنامه نویسی کاملا شئ گرا می باشد حتی بیشتر از C++.تمام چیز ها در جاوا بجز تایپ های اولیه مثل اعداد همگی اشیاء هستند.

قسمت پایانی :
یکی از حضار از "استفان ویلد استروم" نویسنده بیزنیس ویک در کنفرانس CeBIT نیویورک می پرسد :
فکر میکنید کدام زبان برنامه نویسی در چند سال آینده بر سایر زبانها غالب خواهد بود ؟
فکر کنم دو زبان برنامه نویسی عمده همچنان C++ و جاوا باقی بمانند.البته گرایشی به سمت C# هم وجود دارد که با جا افتادن دات نت وکاربرد بیشتر آن این گرایش قوی تر خواهد شد.اما هنوز فکر می کنم C++ و جاوا زبانهای برنامه نویسی اصلی باقی بمانند.(ر.ک. : نشریه عصر ارتباط شنبه 12 دی 83)

خوب تا اینجا برای مقدمه فکر میکنم کافی باشد.در ضمن من خواننده انتقادات و پیش نهادات شما خواهم بود.

موفق باشید. :)

نظرات 1 + ارسال نظر
[ بدون نام ] شنبه 5 شهریور‌ماه سال 1384 ساعت 05:45 ب.ظ http://riyal.blogsky.com


با سلام خدمت شما دوست گرامی

من می خواستم سایتی ایرانی را به شما معرفی کنم که با فعالیت در ان می توانید تا 512 هزار تومان در روز از ان درامد کسب کنید.سایتی ایرانی که در حال حاضر بزرگترین بانک اطلاعات کتب ایران را دارا می باشد. من خودم تا حالا .......تومان از ان درامد داشتم و سایر زیر مجموعه ها من نیز به تناسب زیر مجموعه هایی که داشتند درامدهایی را کسب کردند این شرکت خدماتی را ارائه میکند که این خدمات میتواند از15 هزار تومان مبلغی که برای عضویت می پردازید خیلی با ارزش تر باشد به عنوان مثال شما در این سایت میتوانید هر کتاب ایرانی و خارجی وانواع سی دی ها(تمامی کتب منتشره در ایران و بیش از ۳۰ میلیون عنوان کتاب خارجی) را که بخواهید از این سایت تهیه کنید و ضمن بهره مندی از تخفیفهای در نظر گرفته شده انها را در سراسر ایران و به طور رایگان تحویل بگیرید (حتی اگر کتابی در سایت وجود نداشت می توانید تنها با دادن اسم و ناشر ان در فرم مخصوص ؛ ان را تهیه کنید) ، امکان تهیه کارتهای اینترنتی و تلفنی به صورت انلاین با 5 تا 15 درصد تخفیف، ارائه کارت اعتباری اریا کارت و امکان خرید با ان از بیش از 1000 فروشگاه طرف قرارداد در سراسر ایران و با امکان تهیه تعداد زیادی از بلیطهای سینماهای ایران به صورت انلاین و یا حضوری، فراهم اوردن امکان تهیه کارتهای اعتباری مثل مستر کارت و ویزا کارت، فراهم اوردن امکان خرید کلیه اجناس از کلیه سایتها دنیا و تحویل ان در منزل ، تهیه نشریات خارجی و نرم افزارهای اصل خارجی و با 5 درصد تخفیف و تحویل رایگان ان در منزل و خدمات دیگر این طرح که پشتیبانی آن را سه شرکت بزرگ
( شرکت انتشارات فرانشر - شرکت تجارت الکترونیک آریا و شرکت زرین کارت یا گروه کارتهای اعتباری ایران) بر عهده دارند
و حمایت سیستم بانکی طرح شتاب بانک سامان و اتصال ان لاین این شرکت به سرور بانک سامان از اعتبار 100 در 100 بالایی بر خوردار است شما می توانید روش کسب درامد از این شرکت و مزایای ان و چگونگی ثبت نام را در ادرس زیر مشاهده کنید
http://www.riyal.blogsky.com


دوست عزیز در صورت تمایل لینک www.riyal.blogsky.com (در قسمت پیوندها) با عنوان

" تنها راه قانونی کسب در آمد در ایران" را در وبلاگتون بزارین جهت آگاهی بیشتر بازدید کنند هاتون
بازهم بهتون سر میزنم

برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد