آموزش زبان برنامه نویسی جاوا

آموزش زبان برنامه نویسی جاوا

ریال18/000/000
دسته بندی:
امتیاز کاربران:
آموزش زبان برنامه نویسی جاوا

درباره این کلاس

آموزش زبان برنامه نویسی جاوا(JAVA)

فصل اول

مبانی برنامه نویسی Programming Basics

مباحث مشترک انواع زبانهای برنامه نویسی

مفاهیم و ساختار برنامه نویسی

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

چرا باید برنامه نویسی بدانیم؟                         

Compute=Hardware+Software                                

یعنی این دو بخش دوجز،ِ جدا نشدنی و وابسته به یکدیگرند و مانند انسان که دارای جسم و روح می با شد با هم کار می کنند.

از آن جایی که کامپیوترها بر خلاف ما انسانها خسته نمی شوند و میتوانند کارهارا به صورت تکراری و بدون خطا انجام دهند(اگر خطای سخت افزاری نباشد) سرعت و عدم فراموشی از مزایای استفاده از کامپیوتر است بنابر این ما نیازمند به استفاده از کامپیوتر هستیم.

البته انسان دارای ذهن خلاق می باشد که کامپیوتر فاقد آن خواهد بود.بنا بر این سخت افزار بدون نرم افزار بی مصرف است.

Software:OS(Operating System)-APP(Application)

APP:یا باید آنهارا بخریم.یا باید آن را خودمان بنویسیم.

معمولا نرم افزار های سیستمی را شرکتهای بزرگ می نویسند و کاربران عادی نرم افزار های معمولی و کاربردی را مینویسند. مانند: CorelDrawوofficeوphotoshopو…

البته ذکر این نکته لازم است که هر دستگاهی دارای:ورودی←پردازش|حافظه←خروجی

باشد یک کامپیوتر است،مانند ساعت های هوشمند،تبلت،گوشی های هوشمند و …

که همۀ موارد فوق نیاز به  نرم افزار هایی جهت اجراء دارند.

کامپیوتر از دو کلمه Comput+erتشکیل شده یعنی محاسبه گر.در واقع اگر مابتوانیم روی هر ماده و جنسی الگویی را طراحی کنیم که عملیات مورد نظر مارا اجراء کند پس آن یک کامپیوتر است.مانند کامپیوتر های مکانیکی قدیمی،استرلاب یا DNAانسان که دارای برنامه طبیعت است.

Programs=Software

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

    • فرآیند ساخت یک نرم افزار را برنامه نویسیProgrammingمی گویند.

برنامه نویسی یعنی اینکه،ما ایده ای که در ذهن داریم را با روشهایی(برنامه نویسی)به کامپیوتر منتقل کنیم و کامپیوتر وظیفه اجراء آن را بر عهده دارد.

بنابراین انسان ایده خود را|Programmingبه کامپیوتر می فرستد.

نیازها با برنامه نویسی توسط کامپیوتر مرتفع میشود.

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

در ابتدا انسان مجبور بود که به زبان ماشین برنامه بنویسند و زبان سخت افزار به دلیل استفاده از بردهای الکترونیکی صفر یا یک می باشد(برد های الکترونیکی تنها دارای دو حالت قطع و وصل هستند)و زبان ماشین رشته ای از صفر ها و یک ها بود که بسیار سخت بود.در ادامه زبان اسمبلی ایجاد شد که یکسری از دستورات را نام گذاری کرد که کار ها کمی اسان تر شد،در ادامه زبان های برنامه نویسی سطح بالا به وجود امد که دستورات این زبان ها به زبان انسان بسیار نزدیک تر و قابل فهم شد.

1:برنامه نویسی به زبان ماشین (0و1)

2:زبان بین المللیAssembly

3:زبان های برنامه نویسی سطح بالا

مثال:شناخت یک نمونه از برنامه به زبان اسمبلی:

WWW.Wikipedia/Assembly-language

«زبانهای برنامه نویسی سطح بالا»Wikipedia-Basic

Basic:یک زبان برنامه نویسی همه منظوره برای افراد مبتدی می باشد.که اساسا برای آموزش در نظر گرفته شد.

Qbasic-Gwbasic-VBscript-VB-VB.net-Microsoft small Basic

که همه اینها برای اهداف مختلف طراحی شده و موفق هستند.زبان برنامه نویسی بعدی زبانCمیباشد که  در خیلی از زبانهای برنامه نویسی دیگر میباشد و مهم ترین زبان برنامه نویسی تاریخ است.

Many later languages have Borrowed directly from c,Including c++,D,Go,Rust,Java,JavaScript,Limbo,Lpc,C#,objective c part,PHP,Pyton,Verilog and unixs c shell.

یکی از مدرن ترین زبانهای برنامه نویسی C#است.

JavaوJavaScript باهم تفاوت دارند ولی خویشاوند نزدیک یکدیگرند و ارتباطهای نزدیکی بین این زبانها ایجاد شده است.

C++:پر استفاده ترین زبان در حوزه تولید نرم افزار تا امروز بوده است.

PHP:پر استفاده ترین زبان در حوزه تولید صفحات وب می باشد.

Java:زبان برنامه نویسی است که برنامه های آن بر روی بیشترین دیوایس ها در حال اجراء هست.تلویزین ها،ماشینهای لباسشویی و دستگاه های خودپرداز،دستگاه های کارتخوان،کامپیوتر ها،پرینتر ها واسکنر ها به تعداد خیلی زیادی از جاوا استفاده میکنند.(رکورد دار تعداد دیوایس ها) ضمن اینکه با آمدن اندروید،امروزه پراستفاده ترین سیستم عامل در دستگاه های موبایل میباشد،جاوا نقش بی نظیری را در حوزه برنامه نویسی بر عهده دارد.

بعضی از زبانهای برنامه نویسی دیگری هم وجود دارد که نقش علمی دارند مانند پایتون python

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

زبان برنامه نویسی متلب وRهم اینگونه می باشد.

البته این بدین معنا نیست که با java نمیشود برنامه علمی نوشت ولی با برنامه های گفته شده بهتر و دقیق تر میشود اینکار را کرد.

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

کامپایلر  خودش یک نرم افزار است.

ترجمه برنامه ها ← آفلاین:کامپایل کردن compile(cوc++وc#وjava)   

                            آنلاین:تفسیرIntupret(phpوmatlabوjavascript)

C#,Java→IL→ML                                C→ML                                                  

java→IL(offline)     IL→ML(online)        IL(زبان میانی)  ML(زبان ماشین)

                                                         

جاوا یکبار کامپایل میشود و فقط کافیست که بگوییم این زبان میانی چه طور بر روی محل جدید اجراء شود،یعنی اگر برنامه ای به زبان جاوا برای ویندوز  بنویسیم همان را میتوانیم برای لینوکس هم استفاده کنیم.C#وjavaهمان قدر که آفلاین هستند،آنلاین هم هستند.

زبان ماشین→ترجمه کننده→سورس کد→نیاز

جاوا و سی شارپ با هم در تعاملند.روی هم اثر میگذارند.ازبین همه زبان های برنامه نویسی زبان Cرا آموزش ببینید.برای مبتدیان زبان Basic و یا زیر شاخه های آن توصیه میشود.البته VB.netیاSmall Basic اینها باعث می شوند که یک آمادگی اولیه خوب از برنامه نویسی را پیدا کنید.

یکی دیگر  از زبان های برنامه نویسی خوب برای شروع java scriptمی باشد که ساختار ساده ای دارد و به جز مرورگر محیط دیگری برای اجراء نیاز ندارد.

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

فصل دوم

اجزای سازنده برنامه ها و انواع دستورها

بررسی اجزای سازنده برنامه ها

برنامه ها به طور کلی از دستورات(command)تشکیل میشوند.

انواع دستور ها

1)فراخوانی عملیات(operation call)

مثلا با یک کلمه امری انجام می شود:بنشین،برو،یک صدای بیب پخش کن،کامپیوتر را خاموش کن.بعضی از فراخوانی ها ادامه دارد مثلا کدام کامپیوتر،چه راهی،کجا و… که در ادامه باید مشخص بشود.

1.1)عملیات ورودی و خروجی

دستورات ←ورود داده ها ،کلیک بر روی گزینه

                  نمایش نتیجه در مانیتور،چاپ

2)تعریف و تخصیص(Definition Assignment)

عدد 10 را به نسبت nبده.10←n         n=10 و بنابراین nهم تعریف می شود.

مثلا میگوییم nرا برابر 10 قرار دهید،این حالتها تنها جایی که درگیر هستیم حافظه است ولی چیزی برای نمایش ندارد.

3)دستورات ساده(بازگشت  Return)

در این حالت ما منتظر نتیجه هستیم که یک عملیات بازگشت است.برنامه نویسی به این شکل

است که یک بدنه اصلی(برنامه اصلی)داریم و تعدادی زیر برنامه که هر کدام پس از اجرای نتایج زیر برنامه ها به برنامه اصلی بازگزدانده می شود.

4)رفتن به Go toانشعاب و تکرار

در زبان های برنامه نویسی مدرن به صورت مستقیم استفاده نمی شود ولی به طور غیر مستقیم استفاده می شود.ولی بهتر است تا امکان دارد ازین دستور استفاده نشود البته به صورت مستقیم.

بنابراین 4 دستور پایه ای در زبان برنامه نویسی مدرن هستند.

دستورات ترکیبی

1)بلوک کد یا دستور ها

مثلا در زبان Cهر چیزی بین آکولاد باز و بسته قرار گیرد یک بلوک است.

2)تصمیم گیری و انشعاب

مثلا دستوری بنویسیم که بر اساس زمانهای مختلف در روز در برنامه پیغام مناسب برای کاربران نمایش دهد.        صبح بخیر=(10≥t     AND     6≤t)if

دستورات پیچیده تری هم دارند مانند switch©وselect(basic)که اگر این دستور نباشد بسیاری از برنامه ها قابل پیاده سازی نیستند و همچنین این دستور گذاره های مختلفی دارند.

حالتهای چندگانه را باswitch نمایش میدهیم اما اگر حالتهای ساده تری داشته باشد ازelse استفاده میکنیم.                                                        (دستور)else      (دستور)if

3)تکرار(repetition):کامپیوتر ها بدون اشتباه و خسته شدن کارهارا به صورت تکراری انجام میدهند که برای ما بسیار مهم است.

For ←به ازای یک محدودۀ معین و مشخص استفاده می شود .

For each ←به ازای هر ماه در از ماه ها.

While ←تکرار تا زمانی که یک شرایط برقرار است ممکن است که یک شرط بعد از 10 بار یا 1 بار از بین برود یعنی برای زمانهایی که تعداد تکرار مشخص نیست استفاده می شود.هر کاری که با for میشود انجام داد با while هم میشود ولی برعکس آن برقرار نیست.

4)مدیریت حالات استثنایی (exception handeling)

انواع خطا

الف)خطای گرامری(syntax error):زمان نوشتن برنامه و قبل کامپایل رخ می دهد.این نوع خطاها مشخص است.

ب)خطای همزمان با ترجمه(compile-time error):لوازم کامپایل وجود ندارد.

ج)خطای زمان اجرا(run time error):یعنی فایل یا فایلهایی بعد از کامپایل از بین برود.

د)خطای منطقی(logical error): این نوع خطاها،خطرناک ترین نوع خطاها هستند.با هوش انسانی باید حل شود.Bug→DeBuging

کامپیوتر ها همان دستوراتی که ما میدهیم را انجام می دهند. مثال دیگری که در این زمینه بیان میکنیم این است  ما باید پیش بینی های لازم را برای خطاهای احتمالی و حالتهای استثناء در نظر بگیریم.

برای مثال برنامه محاسباتی را انجام داده و باید فایلی را باز کند که به هر دلیل آن فایل در دسترس نباشد.

مثال:تقصیم بر صفر(Divition by zero)

#شرایط مورد نیاز برای کامل بودن زبان برنامه نویسی(از نظر اجرایی)

1-ترتیب اجرایی(Order of Execution)

2-شرط،انشعاب و انتخاب if

3-تکرار

با موارد فوق می توان هر الگوریتمی را در رایانه اجراء کرد.

    • وجود دستور(GO TO) اشکال زدایی برنامه ها را سخت و گاهی اوقات غیرممکن میکند.بنابر این از آن استفاده میکنیم.

فصل سوم

انواع داده ها و ساختار های ذخیره سازی

مدیریت اطلاعات

انواع داده ها

1)داده های عددی:صحیح،گویا،مختلط

2)داده منطقی:{1,0}یا{false , true}

3)داده متنی:کاراکتر←’A’,’B’,’a’,’b’

                 رشته(string)←آرایه ای از کاراکتر ها

تبدیل انواع(Type Casting)

فرض کنید شما عددی دارید که مقدرا آن از صفر تا 255 باشد.

{0,…,255}→256=28→byte=int8

Type Castingیعنی ما میتوانیم بعضی از انواع داده هارا به انواع دیگر تبدیل کنیم و باید دقت کنیم که همواره نوع دادۀ کوچک تر به نوع دادۀ بزرگتر تبدیل می شود ولی برعکس آن نمیشود.

php

C,c++,java,c#

$n=10;

$n=$n+1;

$n=10.5;

$n=’A’;

Matlab,javascript,smallbasic

Int  n=10;

N=n+1;

N=10.5;خطا

N=’A’;خطا

Type Safety(امنیت نوع داده):در این حالت خود برنامه کنترل میکند که نوع داده ها به جای نوع دادۀ مناسب استفاده نشود.

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

بخشهای تعریفی برنامهساختار های پیچیده

متغیر ها(variable)

تابع      function ←زیربرنامه

آرایه ها(Arrays)    دارای اندیس هستند. X;     y;

(x یک آرایه است از اعداد صحیح)               x[5]; int[] x;

X[i]→اندیس →عدد   int[5]x;   x[1]=1

ساختار (structure):ساختار یک نوع آرایه است،بسیار شبیه آرایه است.

X[‘name’] یا  x.name اینها هر دو به یک معنی هستند.                                           

ساختار یک نوع آرایه است که اعضای آن میتوانند اولا انواعشان با هم فرق داشته باشند و ثانیا به جای اندیس با عدد میتوانند اندیس با نام داشته باشند.

در php مفهومی به نام ساختار نداریم و ارایه ها اینگونه تعریف میشنود.x.name=’Ali’

این یعنی اینکه nameداخل xقرار دارد و میتوانند مقادیر مختلفی داشته باشند.آرایه میتواند بُعد بدهد یعنی میتوانیم هزاران نقطه را پوش دهیم.

کلاس(class)

یک نوع داده پیچیده ای است که برای بیان حقیقت های فیزیکی به راحتی میتوان از آن استفاده کرد.

مثال:notepad 2 بار برنامۀ notepad را اجرا می کنیم.میبینیم که هر دو کاملا شبیه هم هستند،روی هر کدام از پنجره ها کلیک کنید.focus روی آن قرار میگیرد ولی میتوانیم یکی از آنهارا کوچکتر کنیم و دیگری را بزرگتر ،با این حال رفتار آنها یکسان است.(صفحه متنی،5 منو،ابعاد دارد و…)همۀ اینها ویژگیهای notepadهستند.

حالا اگر برنامه notepad را ببندیم و از شما بخواهیم در مورد آن صحبت کنید یک مفهومی را بیان خواهید کرد که آن مفهوم کلاس نامیده میشود.کلاس note pad

خوده کلاسها دارای زیر کلاسهای دیگری هستند مثلا منویfile دارای  رفتار و ویژگیهایی است که در کلاس notepad قرار دارد.

    • انسان خودش یک نمونه instance از کلاس Human است.
    • یک بار برنامۀ menuرا نوشته اند و همه جا از آن استفاده میشود فقط کافیست از آن نمونه برداری شود.

شئ object=یعنی یک تحقق از یک مفهوم

همۀ ما انسانها جزئی از کلاس انسان هستیم ولی هر کدام ا زما،یک شئ یا objectهستیم.

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

برنامه نویسی شئ گراء OOP

Object-oriented programming

یک متد برنامه نویسی میباشد که در دهه های اخیر متداول شده است.نمونه هایی از اینگونه زبانها←c#,java,c++

با توجه به نیاز به کار با داده های واقعی مفهوم برنامه نویسی شئ گراء بوجود آمد.پاسخگویی به رویداد های اتفاق افتاده را در برمیگیرد. داده+کنترل+عملیات+رویداد

Basic,Cobol.PHP,Matlab→Command دستور

PRINT 1+2 به همین سادگی

C,pascal→Function حتما باید تابعی به نام main() داشته باشیم.

C#,java→classحتما باید کلاس داشته باشد.

    • البته در phpهم کلاس و هم تابع قابل تعریف است اما حداقل نیاز برنامه برای اجراء یک دستور است و بنابراین در سطح برنامه های دستوری قرار می گیرد.

پایان دورۀ پیش نیاز برنامه نویسی

آموزش زبان برنامه نویسی java

درس اول

آشنایی با جاوا و مباحث مقدماتی

Javaیکی از مهم ترین زبانهای برنامه نویسی در دنیا میباشد.

از نظر نصب بر روی دستگاه ها و دیوایس ها پر کاربرد ترین زبان برنامه نویسی و از این نظر جاوا،پر استفاده ترین زبان برنامه نویسی در سیستم های کامپیوتری می باشد.

هم اکنون علاوه بر کامپیوتر ها،بر روی موبایل ها،تبلت ها،ساعت های هوشمند،تلوزیون های هوشمند،لوازم خانگی هوشمند،پرینتر ها و اسکنر ها،دستگاه های خود پرداز،کارت های پرداخت، سیستم های پرداخت،عوارضی ها،و…کاربرد دارند.

از منظر اینکه برنامه های جاوا در محدوده ی وسیعی از سیستم ها و سخت افزار ها قابل اجرا هست،از این نظر جاوا رکورد دار هست و هیچ زبان برنامه نویسی دیگری این رکورد را ندارد.

++c پر استفاده ترین زبان برنامه نویسی در عرصه ی نرم افزار هست اما برنامه ای که با ++c نوشته می شود،برای اجراء در کامپیوتر های شخصی یا صنعتی پیاده سازی می شوند،اما برنامه هایی که با جاوا نوشته می شوند،می توانند محدوده ی وسیعی از دیوایس ها را در بر گیرند و از این دیدگاه زبان جاوا زبان شاخصی است.

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

خیلی از زبان های برنامه نویسی دیگر از جاوا الهام گرفته اند مانند #c که تلاش ماکروسافت بوده که رقیب مستقیم برای جاوا باشد.

تاریخچه جاوا

1991 ←Jemes Gosling,Make Sheridan,Patric Nanghton

Sun Micro systems

1995 ←Oak بلوط←Green ←java

این تیم چون از قهوۀ جاوا استفاده می کردند  از آن قهوه خاص الهام گرفته و جاوا را انتخاب کردند و لوگوی شرکت به شکل فنجان قهوه شده است.

هدف از ایجاد جاوا این بود که با توجه به اینکه c++,c وجود داشت و با آن برنامه نویسی انجام میشد و تاثیرات زیادی هم در محیط برنامه نویسی گذاشته بودند اما فقط برروی یک کامپیوتر که کامپایل شده بود اجراء می شد و این اتحادی که بین معماریهای کامپیوتر وجود دارد  آن زمان وجود نداشت و یک برنامه واحد باید چندین بار کامپایل میشد و این یک معضل بود.بویژه برای دستگاهایی که شبه کامپیوتر بودند مثل تلوزیون کابلی،یکی از اهداف این گروه نوشتن برنامه برای همین تلوزیونها بود یا مثل پرینتر که یک نوع کامپیوتر است.

WORA write once,Run Anywhere  برنامه را یکبار بنویس و همه جا آن را اجراکن

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

خیلی سریعفبسیاری از وبسایت هایی که امکان استفاده از اپهای جاوا را داشتند همان سال 1995 که نسخه1 جاوا ارائه شد از این زبان استفاده کردند و تا سال 1998 کمتر سیستم و دیوایسی بود که از جاوا استفاده نکند.

در سال 1998،جاوا نسخه دوم معرفی شد.java 2.0→1998                                 

Java SE(standard edition):جهت برنامه های Desktopارائه شده بود که ما هم با همین نگارش کار خواهیم کرد.

Java EE(Enterprise Edition):جهت تولید نرم افزار های تجاری و روی سرور و وبسایتهای تحت جاوا و برنامه هایی که در مقیاس بزرگ قرار هست تولید شوند.

JavaME(Mobile Edition):یک نسخه بهینه شده و ساده شده برای موبایل ها طراحی شد که هم سبکتر و بهینه شده و برای اجراء روی موبایلها طراحی شده و از نظر حجم سبک ترین هستند.

همۀ نسخه ها از نظر ساختار و گرامری شبیه هم هستند ولی تفاوت درliberaryهست.

بنابراین هر مدلی که بخواهید برنامه نویسی را شروع کنید باید SEرا آموزش ببینید.

نسخه های جاوا در سالیان مختلف

1995 ←1.0 java

1997 ←1.1

1998 ←2.0play around  java

2000 ←3.0

2002 ←4.0

2004 ←5.0{     2006 تا 2011

2006 ←6.0{     *شرکت sunتوسطoracle خریداری شد.

2011 ←7.0 java  ازین به بعد javaرا متعلق به oracle میدانیم.

2014 ←8.0 java   ارائه شد و ما هم،این نسخه را آموزش می دهیم.

Java8ویژگیهایی دارد که کاملا مسیر را عوض کرده.

برنامه هایی که در نسخه 7و8 نوشته میشوند شبیه هم هستند ولی در برخی موارد تفاوتهایی در نوشتن برنامه ها و پیاده سازی و… در نسخه 8 وجود دارد  که تفاوت آن بیان خواهد شد.تمام برنامه هایی که در نسخه 7 نوشته با کامپایلر نسخه8 قابل اجرا می باشد.

 

مدرس : مهندس میثم نظری

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

آموزشگاه فنی و حرفه ای آزاد معین

مرکزی – ساوه – خیابان شریعتی

4247 4247 086

نقد و بررسی

0 امتیاز 0 از 0 امتیاز

5ستاره 0

4ستاره 0

3ستاره 0

2ستاره 0

1ستاره 0

اعضا

تعداد کل دانشجویان این دوره