# فناوری جاوا > برنامه‌نویسی جاوا >  اموزش جاوا از صفر اینجا

## ceramic_meybod

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

----------


## ceramic_meybod

منبع http://paradise19791979.persianblog.com/ 

 برنامه جاوا توسط یکی از برنامه نویسان شرکت Sun Microsystems  به نام جیمز گوسلینگ James Goslingبه عنوان روش بهتر برای ایجاد برنامه های کامپیوتری اختراع گردید . گوسلینگ از نحوه کاربرد زبان C++‎ روی پروژه ای که مشغول انجام آن بوده رضایت نداشت و از زبان جدیدی ابداع کرد که بهتر از عهده آن کار بر آید .


شروع کار : 

اغلب برنامه های کامپیوتری به همان شکلی نوشته می شوند که شما یک نامه را می نویسد . یعنی با تایپ کردن هر جمله در یک ویراشگر متن . 

برخی از ابزارهای برنامه نویسی دارای ویرایشگر خاص خود می باشد برخی دیگر با هر نرم افزار ویرایشگر متن کار   می کنند .

برای نوشتن برنامه های جاوا نیز باید ابتدا یک ویرایشگر متن مانند Not pad  یا Word pad را گشوده برنامه را نوشته آنگاه برنامه را با پسوند Java ذخیره کرد به عنوان مثال Calculator. java  نامی برای یک فایل برنامه جاوا است .

پیش از شروع به نوشتن برنامه های ، جاوا لازم است که یکی از  نرم افزارهای برنامه نویسی جاوا را تهیه و راه اندازی کنید،  کیت توسعه جاوا JDK نامیده می شود که نسخه های متعددی مانند1.2 ، …1.4 دارد .

نسخه های این کیت را می توانید از سایت زیر Download  کنید .

Http://www.java.sun.com

----------


## ceramic_meybod

در این درس شما اولین برنامه جاوای خود را با وارد کردن آن درون ویرایشگر دلخواه خود، ایجاد خواهد کرد . پس از آن برنامه را ذخیره و کامپایل می کنید و سپس آن را آزمایش خواهید کرد .



آغاز برنامه :

با استفاده از ویرایشگر خود (wordpad,notepad ) تمام سطرهای زیر را وارد کرده، دقت کنید که حروف بزرگ و کوچک را دقیقاً به همان صورتی که نشان داده شده وارد کنید.

Class exampel1 {

           Public static void main(String[] arguments) {

                //this is my first java program

           }

}

حال برنامه را با نام exampel1.java ذخیره کنید . باید توجه داشته باشید که کلمه exampel1 در سطر اول، نشان دهنده نام برنامه است و در برنامه های دیگر تغییر خواهد کرد .

سطر سوم نیز کاملاً واضح است . چرا که جمله ایست به زبان انگلیسی و تنها برای توضیحات بیشتر در برنامه آورده شده است ، به این توضیحات که در ابتدای آنها از // استفاده می شود comments می گویند .

سطر اول برنامه  ( class exampel1 { ) به ماشین می گوید که نام برنامه را exampel1 قرار بده یعنی شما از جمله class برای نامگذاری برنامه ی کامپیوتری خود استفاده می کنید البته در درسهای بعدی در رابطه با این جمله توضیحات بیشتری خواهیم داد .

توجه داشته باشید که نام برنامه دقیقاً باید مطابق نام فایل باشد یعنی هر برنامه باید با نامی save شود که دقیقاً بعد از کلمه class نوشته شده است البته با پسوند .java 

سطر بعدی برنامه به این ترتیب است 

Public static void main(String[ ] arguments) {

این سطر به برنامه می گوید که بخش اصلی برنامه از اینجا شروع می شـــود ، در واقع main نقطه شروع برنامه می باشد باید توجه داشت که از آکولاد ها برای گروه بندی بخشهایی از برنامه استفاده می شود ، هر آنچه بین آکولاد باز(}) و آکولاد بسته({) قرار دارد بخشهای یک بلوک (block) حساب می شود .

شما باید همواره برای مشخص کردن آغاز و پایان برنامه هایتان بعد از نام برنامه در سطر اول آکولاد را باز کنید و در سطر آخر برنامه آکولاد را ببندید .

در درسهای بعدی بیشتر به توضیح این سطر می پردازیم اینک بیایید برنامه را کامپایل کرده و آنرا اجرا نماییم .

وارد برنامه commant prompt شوید (start/all programas/Accessibility/commant prompt) یا چنانچه علاقه زیادی به کار در محیط dos ندارید از خط فرمان Run در منوی start خط زیر را تایپ کنید:

Javac exampel1.java

در صورتی که کامپایل برنامه با موفقیت انجام شود ، فایل جدیدی به نام exampel1.class در همان پوشه حاوی exampel1.java  ایجاد خواهد شد . 



سپس عبارت زیر را در خط فرمان تایپ کنید :                                     Java exampel1

با اجرای برنامه مطمئناً چیزی مشاهده نمی کنید چرا که هیچ فرمانی مبتنی بر print به برنامه ندادید اما نگران نباشید در آینده ای نزدیک خروجی را نیز مشاهده خواهید کرد .

----------


## ceramic_meybod

نکته مهمی که در برنامه نویسی جاوا باید به آن توجه کرد آن است که برنامه مورد نظر کجا اجرا می شود.

برنامه های جاوایی که به طور محلی روی کامپیوتر اجرا می شوند،برنامه های کاربردی(Applications) و برنامه هایی که در صفحات وب اجرا می شوند، اپلت (Applet)  نامیده می شوند .

اینک توضیحات ما مربوط به برنامه های کاربردی می باشد ، در درسهای آتی به توضیح اپلتها خواهیم پرداخت.



متغییرها:

در برنامه های جاوا متغییرها با دستورالعملی ایجاد می شوند که مشتمل بر دو بخش است :

نام متغییر 
نوع اطلاعاتی که متغییر در خود ذخیره خواهد کرد .


انواع متغییر

برای نگهداری متغییری از نوع اعداد صحیح (اعداد غیر اعشاری) از نوع int می توان استفاده کرد .int هر عدد صحیح بین 14/2 – میلیارد تا 14/2 میلیارد را نگهداری می کند.



مثال:                             int  max;      یعنی متغییری با نام max و از نوع اعداد صحیح(int)  



و برای ذخیره متغییرهای اعشاری از نوع float استفاده می شود .



مانند:                            float average;     یعنی متغییری با نام average و از نوع اعداد اعشاری(float)  



و اما برای ذخیره متغییرهای غیر عددی اگر متغییر از نوع کاراکتر بود از عبارت char استفاده می شود و اگر متغییر رشته بود نوعString  به کار برده می شود.



مانند:                                             char key=’c’;  یعنی متغییری با نام key با مقدار c  از نوع کاراکتر

و                                     String name=”orbitz”;  یعنی متغییری با نام name با مقدار orbitz  از نوع رشته



توجه داشته باشید هنگامی که از مقادیر کارکتری استفاده می کنید باید در دو طرف کارکتری که به متغییر نسبت داده می شود ، علامت نقل قول منفرد قرار دهید و در مورد مقادیر رشته ای ، از علامت نقل قول دوتایی استفاده کنید در ضمن یادتان نرود که همواره در تایپ کلمه String ، S را با حرف بزرگ چاپ کنید .
(((( خوب از بچه ها در خواست میکنم در مورد توضیحات فوق اگر برنامه ساده ای هست با تو ضیح در همینجا قرار دهد تا هم من هم افراد مبتدی دیگر استفاده کنند.لطفا در مورد برنامتون هم توضیح بدهید.ممنون.))))

----------


## Monster

http://www.dev.ir/articles/list.asp?cat=java

----------


## zehs_sha

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

----------


## ceramic_meybod

لطفا یک نفر باسه تمرین بالا مثال بزنه

----------


## Argonod

همانطور که دوست محترم zehs_sha فرمود بهترین روش آموزش برنامه نویسی شروع از پایه که واقعا از اهم معلومات یک برنامه نویس میباشد توصیه میشه که مفاهیم شی گرا دست کم گرفته نشود.
به عنوان مثال:



> یعنی شما از جمله class برای نامگذاری برنامه ی کامپیوتری خود استفاده می کنید.


اشتباه نشه که نامگذاری برنامه به عهده class نیست. برای دوستان تازه کار عرض میکنم که شاید ممکنه چندین کلاس در یک فایل داشته باشند و باعث سردرگمی آنها شود. ما نام برنامه را مطابق با نام کلاس اصلی یا اولین کلاس استفاده شده در برنامه قرار میدهیم نه اینکه از کلاس برای نام گذاری استفاده کنیم.
به نظر من درک تمام رخدادها و عواملشان برای یک برنامه نویس یک ضرورت مهم و غیر قابل انکار میباشد



> int هر عدد صحیح بین 14/2 – میلیارد تا 14/2 میلیارد را نگهداری می کند.


چرا محدود به این اعداد میشود؟
میدونم که مطالعه این مطالب کمی خسته کننده هست اما وقتی شروع به برنامه نویسی بعد از درک این اطلاعات انجام بشه هم شیرین تر و هم قوی تر برنامه نویسی خواهیم کرد پس خواهشا عجول نباشیم.
با اینهمه کار جالب و قوی رو شروع کردی که امیدوارم زود خسته نشی و ادامه بدی اما سنگین تر.

----------


## ceramic_meybod

خیلی ممنون ولی چه خوب میشه مطالب رو با تمرین بگید اخه چرا به هرفم بیتوجهی میکنید ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟  ؟؟؟؟؟؟؟؟؟؟؟؟

----------


## persianshadow

احتمالا مسیر JDK درست تنظیم نشده . پیشنهاد می کنم که ورژن بالاتری از جی بیلدر رو امتحان 

 کنی . مثل ورژن 9 یا X .

----------


## relyasi25

ممنون مشکل رفع شد

----------


## p_frce

> اشتباه نشه که نامگذاری برنامه به عهده class نیست. برای دوستان تازه کار عرض میکنم که شاید ممکنه چندین کلاس در یک فایل داشته باشند و باعث سردرگمی آنها شود. ما نام برنامه را مطابق با نام کلاس اصلی یا اولین کلاس استفاده شده در برنامه قرار میدهیم نه اینکه از کلاس برای نام گذاری استفاده کنیم.


بهتره بگیم نام برنامه رو مطابق با نام کلاسی که متد main رو داره میذاریم.

----------


## saapr110

سلام به همگي
من يك سايتي را كه به تازگي راه افتاده و داره مقالات خوبي را در زمينه آموزش جاوا ارائه مي ده را مي خواهم در اينجا به همه معرفي كنم. اسم سايته اينه : سايت مرجع برنامه نويسي جاوا آدرس سايت هم :   www.iranjavaref.ir   در ضمن يك كتاب هم در زمينه برنامه نويسي شبكه در جاوا منتشر كردن كه كتاب جالبيه. اسم كتابشون برنامه نويسي شبكه در جاوا   هست. مشخصات كتاب تو سايتي كه لينك شو دادم هستش.  ارزش خوندنش را داره.                                                          موفق باشين

----------


## ghuzebalaghuz

> احتمالا مسیر JDK درست تنظیم نشده . پیشنهاد می کنم که ورژن بالاتری از جی بیلدر رو امتحان 
> 
> کنی . مثل ورژن 9 یا X .


سلام
شما میدونید چه جوری به اطلاعات توی یه تکست فیلد دسترسی کنیم مثلا برای حذف کردن اعداد توش؟ :متفکر:

----------


## ghuzebalaghuz

can u answer me

----------


## ermia2008

> سلام
> شما میدونید چه جوری به اطلاعات توی یه تکست فیلد دسترسی کنیم مثلا برای حذف کردن اعداد توش؟


سلام دوست عزیز.
البته بهتر بود که این سوال رو تو یه تاپیک جدید مطرح می کردید.این کارو با متدهای setText و getText میتونید انجام بدید.

----------


## programmerC

salam aya ketab amuzeshi kamale java ro mitunid pishnahad konid

----------


## MTD_GOLD

سلام چرا ادامه نمیدی 
یا حق

----------


## f.mohamadi

منم موافقم!!!!!میشه بگین چرا ادامه نمیدین؟؟؟نکنه نا امید شدین؟؟؟؟؟؟؟؟

----------


## rroona

لطفا آموزش رو ادامه بدین

----------


## java.source.ir

سلام
یکی از مباحث مهم در برنامه‌نویسی جاوا، برنامه‌نویسی شبکه با کمک سوکت‌ می‌باشد. سوکت به مجموع آدرس IP و شماره پورت گفته می‌شود. پورت یک شماره منطقی است و از آن برای شناسایی برنامه‌ها در سرور استفاده می‌شود، و آدرس IP نیز یک رشته 32 بیتی می‌باشد که از آن برای شناسایی کامپیوترهای موجود در یک شبکه استفاده می‌کنند. در حقیقت سوکت به عنوان قلب ارتباطات کامپیوتری بوده و از آن به عنوان واسطی در ارتباطات بین کامپیوترهای داخل شبکه استفاده می‌کنند. 

برای این منظور مطالعه مطالب زیر را به همه دوستان پیشنهاد می‌نمایم:

1- بررسی مقدمات برنامه‌نویسی سوکت در جاوا

2- همه چیز درباره سوکت‌ها

3- یک کتاب خوب در زمینه برنامه‌نویسی TCP/IP در جاوا

4- یک خود‌آموز سریع درباره ارتباطات مبتنی بر سوکت

موفق و سربلند باشید.

----------


## java.source.ir

> سلام
> یکی از مباحث مهم در برنامه‌نویسی جاوا، برنامه‌نویسی شبکه با کمک سوکت‌ می‌باشد. سوکت به مجموع آدرس IP و شماره پورت گفته می‌شود. پورت یک شماره منطقی است و از آن برای شناسایی برنامه‌ها در سرور استفاده می‌شود، و آدرس IP نیز یک رشته 32 بیتی می‌باشد که از آن برای شناسایی کامپیوترهای موجود در یک شبکه استفاده می‌کنند. در حقیقت سوکت به عنوان قلب ارتباطات کامپیوتری بوده و از آن به عنوان واسطی در ارتباطات بین کامپیوترهای داخل شبکه استفاده می‌کنند. 
> 
> برای این منظور مطالعه مطالب زیر را به همه دوستان پیشنهاد می‌نمایم:
> 
> 1- بررسی مقدمات برنامه‌نویسی سوکت در جاوا
> 
> 2- همه چیز درباره سوکت‌ها
> 
> ...


این هم یک مطلب جالب برای آنانکه می خواهند اطلاعات فارسی در برنامه نویسی سوکت رد و بدل کنند:

حل مشکل فارسی در برنامه نویسی سوکت

----------


## oskar98

سلام بچه ها
منم مثل این دوستمم(مبتدی)
عشق جاوا دارم
کسی که اینو نوشت منو مدیون خودش کرد
ایشالا بتونیم بیشتر با هم همکاری کنیم. :چشمک:

----------


## tbasoft

سلام 
لینک درست NetBeans IDE 7.1.2 Final
http://www.rasekhoon.net/software/show-3182.aspx

----------


## tbasoft

اینم jBuilder 2008 Enterprise R2 که به نظر من از  NetBeans خیلی بهتره
http://www.rasekhoon.net/software/show-6073.aspx

----------


## golalia

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

----------


## spiderman200700

کنسول جاوا استاندارد نیست . به خاطر همین چنین دستوری در جاوا وجود نداره. تنها راه شما استفاده از "\n" به تعداد لازم هست، تا نوشته های بالایی دیده نشن.

----------


## golalia

آیا دستوری در جاوا هست که بگوید به خط دیگری برو؟
اگر هست نامش را بگویید.
و
نحوه ی استفاده از آن را به من بگویید.

----------


## spiderman200700

یعنی ترتیب اجرای کد ها عوض بشه و به خط دیگری بره؟

----------


## golalia

بله
مثلاً
1.------------------------------------------------------------------------------------------------------------------------
2.------------------------------------------------------------------------------------------------------------------------
3.if(.........................){
//go to line 1 
}

----------


## spiderman200700

توی جاوا در شرایط محدودی میتونی این کار رو بکنی.
لینک زیر رو ببین توضیحات خوبی در این مورد داده و یه مثال:

http://stackoverflow.com/questions/2...tement-in-java

----------


## jjlover

> بله
> مثلاً
> 1.------------------------------------------------------------------------------------------------------------------------
> 2.------------------------------------------------------------------------------------------------------------------------
> 3.if(.........................){
> //go to line 1 
> }


 مگه می خواهید اسپاگتی کد بنویسید ؟!
پیشنهاد می کنم اول مفاهیم OO را خوب یاد بگیرید و بعد UML  و بعد سراغ کد زنی با زبان جاوا بروید

----------

