آنچه یاد خواهید گرفت:
یادگیری عمیق مفاهیم بنیادین JAVA
یادگیری عمیق مباحث Multithreading
یادگیری عمیق کالکشن ها
آموزش JAVA همراه با جلسات عملی
پیشنیازهای دوره:
اشتیاق به یادگیری
توضیحات دوره:
اصول:
کلاسها (Classes)
شیء (Object)
Constructor و غیره
4 ستون اصلی
وراثت
پلی مورفیسم
انتزاع
کپسولهسازی
مرور کلی بر Java:
برنامهنویسی رویهای در مقابل شیءگرا (OOPs)
Java چیست و چه چیزی آن را مستقل از پلتفرم میکند؟
مقایسه JDK, JRE و JVM
نصب و راهاندازی
تنظیم متغیرهای محیطی Class path
بررسی عمیقتر:
نوشتن اولین برنامه Java
درک کلاسها، انواع مختلف آنها و اشیاء
کلاسهای انتزاعی (Abstract Classes)
کلاسهای داخلی (Inner Classes) و غیره.
درک متغیرها
متغیرهای Static
متغیرهای Final
متغیرهای Primitive
ارجاع به اشیاء (Object references)
پوشش تفاوت Big decimal و Double
درک مفهوم String
String Pool
تغییرناپذیری String
سطوح دسترسی (Access Specifiers)
تبدیل نوع (Type Casting)
تبدیل نوع ضمنی (Implicit)
تبدیل نوع صریح (Explicit)
درک متد و انواع مختلف آن
بررسی نوع بازگشتی (Return Type)
بررسی متد static
پارامترهای متد
ارسال با مقدار (Pass by value) در مقابل ارسال با ارجاع (pass by reference)
Overloading و غیره.
مدیریت حافظه در Java چگونه انجام میشود؟
درک حافظه heap و stack
جمعآوری زباله (Garbage Collector)
درک Constructor
Private Constructor
Constructor پیشفرض
Constructor پارامترسازی شده
مقایسه Constructor و متد
فایلها و دایرکتوریها در Java
خواندن و نوشتن در فایل با استفاده از Scanner
درک Package و import
درک POJO و غیره
عملگرها:
عملگر حسابی
عملگر رابطهای
عملگر اتصال کوتاه (Short Circuit)
عملگر انتساب
عملگر منطقی
عملگر سهتایی (Ternary)
عملگر بیتی (Bitwise)
Enum و کاربردهای پیشرفته آن
دستورات کنترل جریان:
دستور if
دستور if-else
ساختار if-else-if
دستور switch و زمان استفاده از آن
حلقه for
حلقه while
حلقه do-while
دستور break
دستور continue
Multithreadingو همزمانی
بررسی عمیق ThreadPool Executors و همزمانی
مدیریت استثناها (Exception Handling):
مدیریت خطاهای زمان کامپایل
مدیریت خطاهای زمان اجرا
استثناهای Checked و Unchecked
برنامهنویسی جنریک در Java:
درک نحوه نوشتن کلاسها و متدهای جنریک (generic) در Java و زمان استفاده از آنها
کالکشنهای Java:
List:
ArrayList
LinkedList
Stack
Queue:
PriorityQueue
Dequeue
Set:
HashSet
TreeSet
LinkedHashSet
Map:
TreeMap
HashMap و غیره.
ویژگیهای Java 8:
Functional Interface
عبارت لامبدا
Stream API
Predicate
متد forEach
متدهای default و static در interface
این دوره برای چه کسانی مناسب است؟
مهندسان نرمافزار Backend