جاوا، جاوا، جاوا

25 07 2008

انگیزه‌ی نوشتن این پست، ایمیل زیره که امشب گرفتم:

تو وبلاکتون یه قسمتی راجع به خودتون توضیحاتی داده بودید نوشته بودید برنامه نویسی رو خودخوان یاد گرفتید. چون منابع زیاده ولی بدردبخورش نه. این سئوال رو پرسیدم مثلا کلی پول میدی یه کتاب می خری ولی بد نوشته چیزی نمی فهمی من می خام جاوا رو شروع کنم توش صفرم منبع خوب میخام فارسی باشه فایل یا کتاب هم فرق نمی کن.

خب، یه جورایی حق با شماست، کلی پول یک کتاب رو می‌دی و بعد هیچی ازش نمی‌فهمی، ولی نباید نا امید شد. اولین کتابی که من برای جاوا خریدم هم اینطور بود، کتابی بود به اسم «برنامه نویسی به زبان JAVA» نوشته‌ی «مهندس محمدحسن نیکبخش تهرانی» از «انستیتو ایزایران». بعد از خوندن یه ۵۰-۶۰ صفحع از این کتاب، به قدری از جاوا زده شدم که تا مدت‌ها به جاوا فکر هم نمی‌کردم.

اما من چطور شد جاوایی شدم: اصولا من وقتی می‌رم یه کتاب بخرم، ناخوداگاه می‌مونم و قفسه‌ی نرم‌افزار رو نگاه می‌کنم. اکثر مواقع هم یک کتاب غیر از اون چیزی که می‌خواستم رو اضافه تر می‌گیرم. یکی از این کتاب هایی که اضافه تر گرفتم، کتاب «اصول برنامه نویسی برای موبایل» ترجمه‌ی « مجید آیت – هادی امین زاده» از انتشارات «ناقوس اندیشه» بود. این کتاب رو خوندم و با مثال‌هاش جلو رفتم. اولین باری بود که معنی ماشین مجازی و این طور حرف‌ها رو درک می‌کردم و علاوه بر این ها دستم به کی‌بورد می‌رفت برای نوشتم جاوا. این خیلی مهمه که کسی که می‌خواد برنامه بنویسه، کی‌بورد رو لمس کنه و نه برگه‌های کتاب رو. بعد از خوندن اون کتاب شرو کردم به آزمایش خودم و نشستم یه تقویم برای موبایلم نوشتم. این تقویم گرافیکی بهم فهموند که جاوا بلد نیستم و باید جاوا یاد بگیرم. این شد که رفتم و از قفسه‌ی کتابام، کتاب «برنامه نویسی به زبان JAVA» نوشته‌ی «مهندس محمدحسن نیکبخش تهرانی» از «انستیتو ایزایران» رو که یک سال قبل خریده بودم، آوردم. با این که نسبت به سال قبل درک کتاب برام راحت تر بود و می‌تونستم با این کتاب کی‌بورد رو هم به لطف برنامه‌نویسی موبایل لمس کنم، باز کتاب سنگین به نظر می‌رسید. نا امید نشدم و رفتم به کتابفروشی و ازشون خواستم که کتاب‌های جاوا رو به من معرفی کنن، اون روز کتاب «آموزش جاوا در ۲۱ روز» نوشته‌ی «لورا لمی – چارلز پرکینز» ترجمه‌ی «علیرضا زارع‌پور» از انتشارات «موسسه‌ی علمی فرهنگی نص» رو خریدم و یک هفته ای خوندمش. واقعا کتاب خوبی بود. بعد از خوندن اون کتاب اولی رو به راحتی خوندم. بله، نگارشش خیلی بد بود و باعث می‌شد که هر تازه کاری بخونش، به مشکل بر بخوره. بعد از اون کتاب «آموزش گام به گام برنامه‌نویسی به زبان جاوا» ترجمه‌ی «جعفرنژاد قمی» از انتشارات «علوم رایانه» رو خوندم. کتاب آموزنده ای نبود (مثل تمام کتاب های آقای جعفرنژاد) ولی می‌شه گفت برای مرجع خوب باشه. و بعد از اون کتاب «جاوا، جاوا، جاوا، رهیافتی شیء گرا در حل مسائل» رو که تالیف «هادی محمدزاده – علی جهانیان» از اتتشارات «جنگل، جاودانه» بود رو خوندم. البته خلی کتاب خوبیه ولی نه برای شروع. خیلی روی GUI تمرکز کرده و برای کار تو این زمینه مناسبه. اخیرا هم یک کتاب دیگه در مورد جاوا دیدم که به زودی می‌خرمش! این‌ها کتاب های فارسی ای بود که من خوندم. در کنار این ها کتاب فوق‌العاده‌ی «Java Programming Cookbook» از نویسنده‌ی محبوب من «Herbert Schildt» خیلی بهم کمک کرد. و در نهایت چیزی که خیلی به درد می‌خوره Java-doc هستش که بهترین مرجع جاواست.

اگه می‌خواین جاوا رو یاد بگیرین، با کتاب «آموزش جاوا در ۲۱ روز» نوشته‌ی «لورا لمی – چارلز پرکینز» ترجمه‌ی «علیرضا زارع‌پور» از انتشارات «موسسه‌ی علمی فرهنگی نص»شرو کنین و همراه با اون حتما کد بنویسین و تمام دنیا رو مدل سازی کنید. البته اگه جاوا رو به عنوان یه تازه کار می‌خواین شرو کنید، من شدیدا پیشنهاد می‌کنم قبل از یاد گیری جاوا، کتاب «راهنمای سریع C++» تالیف «هربرت شیلد» از انتشارات «دانشگاه هرمزگان» رو بخونید. اگر هم جاوا رو می‌خواین «پاس» کنید، مهم نیست که کدوم کتاب رو می‌خونید! لازم هم نیست خودتون رو درگیر کد نویسی سخت جاوا کنید!

بعد از این، شدیدا بهتون پیشنهاد می‌کنم به جای خوندن کتاب، کار کنید تا جایی که به مشکل بر بخورین، بعد اونجاست که یا یکی از مراجعی رو که بالا معرفی کردم بخونید و یا Java-doc رو به عنوان مرجع انتخاب کنید.

البته اگه هنوز برنامه نویسی بلد نیستین، از جاوا پرهیز کنید، چون شما رو از برنامه نویسی زده می‌کنه!

یه تجربه (البته کمی گرون!) به من می‌گه که کتاب‌های ترجمه تو زمینه‌ی برنامه نویسی، البته به جز ترجمه‌های آقای جعفرنژاد، از کتاب‌های تالیفی تو این زمینه بهتر هستن. به قول یکی از دوستام، که اتفاقا موتور شتاب دهنده‌ی حرکت من به سمت گنو/لینوکس بود، آقای جعفر نژاد اقیانوسی به عمق ۱ میلیمتره!

پ‌ن: من آماده‌ام توی این زمینه (جاوا) برای هر پروژه‌ای همکاری کنم!
پ‌ن: اگه کسی به این راهنمایی من عمل کرد، حتما خودم رو در جریان بذاره، حتما کمکش می‌کنم.
پ‌ن: اگه می‌خواین جاوا کار کنید، از ویندوز جدا شین!

میلاد عزیز هم تو قسمت نظرات مطلب بنده رو کامل کرده:

منم چند تا کتاب و منبعد دیگه اضافه می کنم:
اولیش و مهترینش اینه که شما با مفاهیم شی گرایی آشنا شده باشین. منم با رامین جان موافقم که اگه c++ را خوب کار کرده باشین یا حداقل یه کارایی با c++ انجام داده باشین خوردن جاوا به راحتی آب خوردن است باور کنید!
دوم: خود tutorial پیشنهادی sun را بخوندید: برای کسانی که با Oop آشنایی ندارند خیلی خوبه قسمت شی گراییش را خیلی جالب با شکل و مثال روی دوچرخه مثال زده. پس قبل از هر کتابی خوندن این tutorial توصیه میشه:

http://java.sun.com/docs/books/tutorial/index.html

حالا میرسیم به دو راهی
1- اگه قبلا c++ کار کردید کتاب Prentice Hall Core Java Volume I Fundamentals 8th Edition   Sep 2007 خیلی خوبه با تشریح تفاوت های java و c++
2- اگه با c++ و شی گرایی کار نکردید کتاب java how to program نوشته ی Deitel & Deitel را بخونید. (البته اگه خوصلش را دارید!)


کارها

اطلاعات

5 جواب

25 07 2008
میلاد خواجوی

منم چند تا کتاب و منبعد دیگه اضافه می کنم:
اولیش و مهترینش اینه که شما با مفاهیم شی گرایی آشنا شده باشین. منم با رامین جان موافقم که اگه c++ را خوب کار کرده باشین یا حداقل یه کارایی با c++ انجام داده باشین خوردن جاوا به راحتی آب خوردن است باور کنید!
دوم: خود tutorial پیشنهادی sun را بخوندید: برای کسانی که با oop آشنایی ندارند خیلی خوبه قسمت شی گراییش را خیلی جالب با شکل و مثال روی دوچرخه مثال زده. پس قبل از هر کتابی خوندن این tutorial توصیه میشه:
http://java.sun.com/docs/books/tutorial/index.html
حالا میرسیم به دو راهی
1- اگه قبلا c++ کار کردید کتاب Prentice Hall Core Java Volume I Fundamentals 8th Edition Sep 2007 خیلی خوبه با تشریح تفاوت های java و c++
2- اگه با c++ و شی گرایی کار نکردید کتاب java how to program نوشته ی Deitel & Deitel را بخونید. (البته اگه خوصلش را دارید!)

25 07 2008
h@med

خیلی عالی بود .
مرسی

26 07 2008
Hamid

سلام، به نظر من هر کس میخواد برنامه نویس خوب بشه اول باید دور منابع فارسی رو یه خط قرمز خوشگل بکشه. ثانیا اگر دنبال منبع جاوا میگردین یه سر به اینجا [به علت رعایت نکردن کپی‌رایت لینک حذف شد] بزنید. این کتاب یه کتاب رسمی و استاندارد است که تو بسیاری از دانشگاه ها تدریس میشه و به زبان بسیار ساده مفاهیم جاوا را توضیح میده.
امیدوارم کمکتون بکنه.

کپی رایت رو رعایت نکردین دوست من! برای همین کامنت رو ویرایش کردم

26 07 2008
Mohammad

آقاي جعفر نژاد بهترين هستند من كه خيلي ازشون چيز ياد گرفتم

دوست من، اینجا رو بخون

24 10 2008
hamed

سلام

يك كتاب خوب در زمينه جاوا به زبان فارسي اخيرا بيرون اومده. اسمش برنامه نويسي شبكه در جاوا است. ارزش خوندنش را داره . حداقل اينكه از كتابهاي فارسي ديگه يك سر و گردن بالاتره . اگه ميخواهين در باره آن اطلاعاتي بدست بيارين مي تونين به لينك زير مراجعه كنيد.

دیدگاه‌تان را بنویسید: