نکته:
ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:
آموزش جامع برنامه نویسی جاوا: از مقدماتی تا مدیریت حافظه پیشرفته
با این دوره جامع، بهترین دوره آموزشی جاوا 23 از مبتدی تا متخصص، اصول برنامهنویسی شیءگرا را بیاموزید. در این دوره به موضوعات کلیدی زیر پرداخته میشود:
مباحث کلیدی دوره آموزش جاوا:
- مبانی برنامه نویسی جاوا (Java programming fundamentals)
- برنامه نویسی شیء گرا (Object oriented programming - OOP)
- مدیریت حافظه در جاوا (Memory management - stack and heap memory)
- جمع آوری زباله و مدیریت حافظه در جاوا (Garbage collection)
- کار با استریمها در جاوا (Java Streams)
- استفاده از Generics در جاوا
- برنامه نویسی چند نخی و نخهای مجازی (Multithreading and virtual threads)
پیشنیازهای دوره آموزشی جاوا:
- اتصال به اینترنت (Internet connection)
این دوره به زبان برنامهنویسی جاوا میپردازد و شما را از سطح مبتدی به سطح متخصص ارتقا میدهد.
بخش 1: مبانی جاوا (Java Basics)
- متغیرها، انواع داده و تبدیل نوع (variables, data types and type casting)
- حلقهها و دستورات شرطی (loops and conditionals)
- متدها و عملگرها (methods and operators)
- چرخه حیات یک ترد (life cycle of a thead)
بخش 2: برنامهنویسی شیءگرا (Object Oriented Programming - OOP)
- کلاسها و اشیاء (classes and objects)
- متدهای کلاس و بستهها (class methods and packages)
- تعدیلکنندهها و سازندهها (modifiers and constructors)
- ارسال با مقدار و ارسال با ارجاع (pass by value and pass by reference)
- وراثت (inheritance)
- ترکیب (composition)
- چندریختی و انتزاع (polymorphism and abstraction)
- کپسولهسازی (encapsulation)
- اینترفیسها، رکوردها و کلاسهای مهر و موم شده (interfaces, records and sealed classes)
بخش 3: مدیریت حافظه (Memory Management)
- حافظه پشته و هیپ (stack and heap memory)
- جمعآوری زباله (garbage collection)
- ZGC و جمعآوری زباله نسلبندی شده (ZGC and generational garbage collection)
بخش 4: استثناها (Exceptions)
- استثناها و خطاها (exceptions and errors)
- بلوکهای try-catch
- کلمات کلیدی throws و throw
بخش 5: کار با فایلها و سریالسازی (File Handling and Serialization)
- فایلها در جاوا (Files in Java)
- FileReader و FileWriter
- FileInputStream, DataInputStream و مدیریت فایلها
بخش 6: رشتهها (Strings)
- استخر رشتههای ثابت (intern pool)
- مقایسه رشتهها (string comparison)
- متد intern()
بخش 7: Generics
- متدها و کلاسهای عمومی (generic methods and classes)
بخش 8: چارچوب مجموعههای جاوا (Java Collection Framework)
- آرایهها و لیستها (arrays and lists)
- هشمپها و هشستها (hashmaps and hash sets)
- مقایسه زمان اجرای ساختارهای داده (running time comparison of data structures)
بخش 9: عبارات لامبدا (Lambda Expressions)
- عبارات لامبدا (lambda expressions)
- ارجاع به متد (method references)
بخش 10: استریمها (Streams)
- API استریم جاوا (Java stream API)
- تکرار خارجی و داخلی (external and internal iteration)
- کوتاه کردن و ادغام حلقه (short-circuiting and loop fusion)
- آپشنالها (optionals)
- موازیسازی (parallelization)
بخش 11: چندنخی و نخهای مجازی (Multithreading and Virtual Threads)
- نخها و پردازشها (threads and processes)
- چرخه حیات نخ (thread lifecycle)
- همگامسازی (synchronization)
- نخهای مجازی (virtual threads)
در این دوره، تئوری پشت هر مفهوم را بررسی کرده و سپس به پیادهسازی عملی آن در جاوا میپردازیم.
شما دسترسی مادامالعمر به بیش از 180 سخنرانی به همراه اسلایدها و کدهای منبع خواهید داشت!
این دوره با ضمانت بازگشت وجه 30 روزه ارائه میشود! اگر به هر دلیلی رضایت نداشتید، وجه شما بازگردانده خواهد شد.
پس منتظر چه هستید؟ جاوا را به گونهای بیاموزید که حرفه شما را پیش ببرد و دانش شما را افزایش دهد، همه اینها به روشی سرگرم کننده و عملی!
سرفصل ها و درس ها
مقدمه
Introduction
محیط و تنظیمات
Environment & Settings
-
مقدمه معماری جاوا - JDK، JRE و JVM
Java architecture introduction - JDK, JRE and JVM
-
آزمون معماری جاوا
Java architecture quiz
-
نسخههای جاوا
Java versions
-
نصب JDK جاوا 23
Installing Java JDK 23
-
نصب IntelliJ
Installing IntelliJ
-
اجرای برنامههای جاوا از خط فرمان
Running Java applications from command line
مبانی جاوا و متغیرها
Java Basics & Variables
-
گامهای اول
First steps
-
استفاده از توضیحات (comments)
Using comments
-
متغیرها
Variables
-
انواع دادهها
Data types
-
تبدیل نوع (Type casting)
Type casting
-
رشتهها (Strings)
Strings
-
مقادیر بولی (Booleans)
Booleans
-
آرایهها در جاوا
Arrays in Java
-
مبانی جاوا
Java Basics
شرطها
Conditionals
-
مقدمه دستور if
If statement introduction
-
دستور if-else
If-else statement
-
دستور if-else تودرتو
Nested if-else statement
-
دستور switch
Switch
-
دستور switch با رویکرد جدید
Switch with the new approach
-
تمرین شرطها I
Conditionals exercise I
-
راه حل
Solution
-
تمرین شرطها II
Conditional exercise II
-
راه حل
Solution
-
آزمون شرطها
Conditionals Quiz
حلقهها
Loops
-
حلقهها در جاوا چه هستند؟
What are loops in Java?
-
حلقههای for
For loops
-
حلقههای for با آرایهها
For loops with arrays
-
حلقههای for تودرتو
Nested for loops
-
دستورات break و continue
Break and continue
-
حلقههای while
While loops
-
حلقههای do-while
Do-while loops
-
تمرین حلقهها I
Loops exercise I
-
راه حل
Solution
-
تمرین حلقهها II
Loops exercise II
-
راه حل
Solution
-
آزمون حلقهها
Loops Quiz
متدها
Methods
-
متدها در جاوا چه هستند؟
What are methods in Java?
-
پارامترها در متدها
Parameters in methods
-
بازگرداندن مقدار (Return)
Return
-
اضافه بار متد (Method overloading)
Method overloading
-
محدوده (Scopes)
Scopes
-
استفاده از varargs
Using var
-
تمرین متدها I
Method exercise I
-
راه حل
Solution
-
تمرین متدها II
Method exercise II
-
راه حل
Solution
-
تمرین متدها III
Methods exercise III
-
راه حل
Solution
-
تمرین متدها IV
Methods exercise IV
-
راه حل
Solution
-
تمرین متدها V
Methods exercise V
-
راه حل
Solution
-
آزمون متدها
Methods Quiz
آرایهها
Arrays
-
مروری بر آرایههای یک و چند بعدی
One and multi-dimensional arrays overview
-
مثال آرایهها
Arrays example
-
کلاس Arrays در جاوا
Arrays class in Java
-
تمرین آرایهها I
Arrays exercise I
-
راه حل
Solution
-
تمرین آرایهها II
Arrays exercise II
-
راه حل
Solution
-
تمرین آرایهها III
Arrays exercise III
-
راه حل
Solution
-
آزمون آرایهها
Arrays Quiz
عملگرها
Operators
-
عملگرهای جاوا چه هستند؟
What are Java operators?
-
عملگرهای حسابی و شرطی
Arithmetic and conditional operators
-
عملگرهای منطقی
Logical operators
-
عملگرهای سهگانه (Ternary operators)
Ternary operators
-
تمرین عملگرها
Operators exercise
-
راه حل
Solution
-
آزمون عملگرها
Operators Quiz
مبانی برنامه نویسی شیء گرا (OOP)
Object Oriented Programming (OOP) Fundamentals
-
برنامه نویسی شیء گرا (OOP) چیست؟
What is object oriented programming (OOP)?
-
کلاسها و اشیاء در جاوا
Classes and objects in Java
-
ویژگیهای کلاس (Class attributes)
Class attributes
-
متدهای کلاس (Class methods)
Class methods
-
پکیجها و وارد کردن (Packages and import)
Packages and import
-
اصلاح کنندهها (Modifiers)
Modifiers
-
مثال دنیای واقعی
Real world example
-
سازندهها (Constructors)
Constructors
-
متغیرهای محلی و نمونه (Local and instance variables)
Local and instance variables
-
null چیست؟
What is null?
-
مسئله pass-by-value و pass-by-reference
Pass-by-value and pass-by-reference problem
-
تمرین مبانی OOP I
OPP Fundamentals exercise I
-
راه حل
Solution
-
تمرین مبانی OOP II
OOP Fundamentals exercise II
-
راه حل
Solution
-
آزمون مبانی OOP
OOP Fundamentals Quiz
اصول برنامه نویسی شیء گرا (OOP)
Object Oriented Programming (OOP) Principles
-
وراثت (Inheritance)
Inheritance
-
ترکیب (Composition)
Composition
-
بازنویسی (Override)
Override
-
چندریختی (Polymorphism)
Polymorphism
-
انتزاع (Abstraction)
Abstraction
-
کپسولهسازی (Encapsulation)
Encapsulation
-
رابطها (Interfaces)
Interfaces
-
تغییرناپذیری (immutability) در جاوا چیست؟
What is immutability in Java?
-
تفاوت بین == و equals()
Difference between == and equals()
-
رکوردها (Records)
Records
-
کلاسها و رابطهای مهر و موم شده (Sealed classes and interfaces)
Sealed classes and interfaces
-
عملگر instanceof
Instanceof operator
-
تمرین اصول OOP I
OOP Principles exercise I
-
راه حل
Solution
-
تمرین اصول OOP II
OOP Principles exercise II
-
راه حل
Solution
-
آزمون اصول OOP
OOP Principles Quiz
نکات بیشتر درباره کلاسها
More About Classes
-
کلاسهای تودرتو (nested classes) چیستند؟
What are nested classes?
-
کلاسهای داخلی عضو (Member inner classes)
Member inner classes
-
کلاسهای داخلی محلی (Local inner classes)
Local inner classes
-
کلاسهای داخلی ناشناس (Anonymous inner classes)
Anonymous inner classes
-
کلاسهای تودرتو ثابت (Static nested classes)
Static nested classes
-
آزمون کلاسهای تودرتو
Nested Classes Quiz
کلاسهای wrapper، autoboxing و unboxing
WrapperClasses, Autoboxing & Unboxing
-
کلاسهای wrapper چیستند؟
What are wrapper classes?
-
autoboxing و unboxing
Autoboxing and unboxing
-
متدهای اصلی کلاسهای wrapper
Wrapper classes main methods
-
کلاسها و متدهای عددی wrapper
Number wrapper classes and methods
-
کلاسها و متدهای کاراکتر wrapper
Character wrapper classes and methods
-
آزمون کلاسهای wrapper
Wrapper Classes Quiz
اضافه بار و بازنویسی
Overloading & Overriding
-
نکات بیشتر درباره سازندهها - اضافه بار
More about constructors - overloading
-
اضافه بار سازنده
Constructor overloading
-
اضافه بار متد
Method overloading
-
تمرین اضافه بار متد
Method overloding exercise
-
راه حل
Solution
-
اضافه بار در مقابل بازنویسی در جاوا
Overloading vs. overriding in Java
-
آزمون اضافه بار و بازنویسی
Overloading & Overriding Quiz
مدیریت حافظه
Memory Management
-
مقدمه حافظه پشته (Stack) و حافظه هیپ (Heap)
Stack memory and heap memory introduction
-
تصویرسازی حافظه پشته و حافظه هیپ
Stack memory and heap memory visualization
-
مثال حافظه هیپ
Heap memory example
-
جمع آوری زباله (garbage collection) چیست؟
What is garbage collection?
-
جمع آوری زباله ZGC و جمع آوری زباله نسل بندی شده
ZGC and generational garbage collection
-
جمع آوری زباله - متد finalize()
Garbage collection - finalize() method
-
آزمون مدیریت حافظه
Memory Management Quiz
استثناها (Exceptions)
Exceptions
-
استثناها و خطاها چه هستند؟
What are exceptions and errors?
-
استفاده از بلوکهای try-catch
Using try-catch blocks
-
استفاده از بلوکهای try-catch متعدد
Using multiple try-catch blocks
-
کلمات کلیدی throws و throw
Throws and throw keywords
-
throws با وراثت
Throws with inheritance
-
تفاوتهای بین final، finally و finalize
Differences between final, finally and finalize
-
آزمون استثناها
Exceptions Quiz
مدیریت فایل و سریال سازی (Serialization)
File Handling & Serialization
-
مروری بر مدیریت فایل در جاوا
File handling overview in Java
-
FileReader و FileWriter - مدیریت متن
FileReader and FileWriter - handling texts
-
FileInputStream - مدیریت دادههای باینری
FileInputStream - handling binary data
-
DataInputStreams - مدیریت انواع دادههای اولیه
DataInputStreams - handling primitive data types
-
سریال سازی اشیاء I
Serializing objects I
-
سریال سازی اشیاء II
Serializing objects II
-
آزمون مدیریت فایل
File Handling Quiz
رشتهها
Strings
-
مخزن رشته ثابت (Intern Pool) چیست؟
What is the Constant String Pool (Intern Pool)?
-
مقایسه رشتهها
String comparison
-
متد intern() رشته
String intern() method
-
متدهای رشته
String methods
-
StringBuilder و StringBuffer
StringBuilder and StringBuffer
-
مثالهای StringBuilder
StringBuilder examples
-
مقایسه زمان اجرای عملیات رشتهها
Running time comparison of string operations
-
تمرین رشتهها
Strings exercise
-
راه حل
Solution
-
آزمون رشتهها
Strings Quiz
Enumها، تاریخ و زمان
Enums, Dates & Time
-
Enumerations (enums) چیستند؟
What are enumerations (enums)?
-
مثال Enumها I
Enums example I
-
مثال Enumها II
Enums example II
-
مروری بر تاریخ و زمان
Dates and time overview
-
تاریخ و زمان - روش کلاسیک
Dates and time - classic way
-
تاریخ و زمان - روش جدید I
Dates and time - new way I
-
تاریخ و زمان - روش جدید II
Dates and time - new way II
Generics
Generics
-
برنامه نویسی Generic در جاوا چیست؟
What is generic programming in Java?
-
متدهای Generic
Generic methods
-
کلاسهای Generic
Generic classes
-
مروری بر Wildcards
Wildcards overview
-
Wildcards با کران بالا در Generic
Generic upper bounded wildcards
-
Wildcards با کران پایین در Generic
Generic lower bounded wildcards
-
Wildcards بدون کران در Generic
Generic unbounded wildwards
-
تمرین Wildcards
Wildcards exercise
-
راه حل
Solution
-
آزمون Generics
Generics Quiz
Java Collection Framework
Java Collection Framework
-
Java Collection Framework چیست؟
What is the collection framework in Java?
-
مقدمه ArrayList
ArrayList introduction
-
مثال ArrayList
ArrayList example
-
تمرین ArrayList
ArrayList exercise
-
راه حل
Solution
-
مقدمه LinkedList
LinkedList introduction
-
مثال LinkedList
LinkedList example
-
تمرین LinkedList
LinkedList exercise
-
راه حل
Solution
-
مقایسه زمان اجرای آرایهها و لیستهای پیوندی
Running time comparison of arrays and linked lists
-
مقدمه صفها و پشتهها (Queues and Stacks)
Queues and Stacks introduction
-
مثال صفها و پشتهها
Queues and Stacks example
-
مقدمه Mapها
Maps introduction
-
مثال HashMap، LinkedHashMap و TreeMap
HashMap, LinkedHashMap and TreeMap example
-
مقایسه عملکرد TreeMap و HashMap
TreeMap and HashMap performance comparison
-
متدهای equals() و hashCode()
equals() and hashCode() methods
-
مثال Set
Set example
-
تمرین HashMap
HashMap exercise
-
راه حل
Solution
-
آزمون Java Collection Framework
Java Collection Framework Quiz
کلاس Collections
Collections Class
-
مروری بر متدهای Collections
Collections methods overview
-
کالکشنهای غیرقابل تغییر (Unmodifiable collections)
Unmodifiable collections
-
کالکشنهای همزمان (Synchronized collections)
Synchronized collections
-
مرتب سازی آرایهها
Sorting arrays
-
مرتب سازی کالکشنها
Sorting collections
-
رابط Comparable
Comparable interface
-
رابط Comparator
Comparator interface
-
تمرین Collections
Collections exercise
-
راه حل
Solution
-
آزمون Collections
Collections Quiz
Lambda Expressions & Lambda References
Lambda Expressions & Lambda References
-
Lambda expression و functional interface
Lambda expression and functional interface
-
Lambda expression
Lambda expression
-
Functional interfaces (Consumer, Supplier, Function و Predicate)
Functional interfaces (Consumer, Supplier, Function and Predicate)
-
تمرین Lambda expressions
Lambda expressions exercise
-
راه حل
Solution
-
تمرین Lambda expressions
Lambda expressions exercise
-
راه حل
Solution
-
مروری بر Method reference
Method reference overview
-
مثال Method references I
Method references example I
-
مثال Method references II
Method references example II
-
forEach با lambda و method reference
forEach with lambda and method reference
-
آزمون Lambda Expressions و Method References
Lambda Expressions and Method References Quiz
Streams
Streams
-
Stream API چیست؟
What is the Stream API?
-
Streams با اعداد
Streams with numbers
-
Streams با رشتهها
Streams with strings
-
کالکشنها و streams
Collections and streams
-
Streams با اشیاء سفارشی - بخش اول
Streams with custom objects - part 1
-
Streams با اشیاء سفارشی - بخش دوم
Streams with custom objects - part 2
-
تمرین فیلتر کردن
Filtering exercise
-
راه حل
Solution
-
تکرار خارجی و داخلی
External and internal iteration
-
پردازش فایلها با streams
Processing files with streams
-
Short-circuiting و loop fusion
Short-circuiting and loop fusion
-
map() و flatMap()
map() and flatMap()
-
تمرین mapping
Mapping exercise
-
راه حل
Solution
-
Optionalها و سایر مفاهیم مهم
Optionals and other important concepts
-
OptionalInt، OptionalFloat و OptionalDouble
OptionalInt, OptionalFloat and OptionalDouble
-
allMatch()، noneMatch()، findFirst() و findAny()
allMatch(), noneMatch(), findFirst() and findAny()
-
موازی سازی - مثال شماره ۱
Parallelization - example #1
-
موازی سازی - مثال شماره ۲
Parallelization - example #2
-
موازی سازی - مثال شماره ۳
Parallelization - example #3
-
آزمون Streams
Streams Quiz
Multithreading و Concurrency
Multithreading and Concurrency
-
چرا به multithreading در جاوا نیاز داریم؟
Why do we need multithreading in Java?
-
درک پروسهها و threadها
Understanding processes and threads
-
چگونه thread ایجاد کنیم؟
How to create threads?
-
مثال multithreading
Multithreading example
-
درک چرخه عمر thread
Understanding thread lifecycle
-
همگام سازی (synchronization) چیست؟
What is synchronization?
-
دستور synchronized
Synchronized
-
بلوک synchronized
Synchronized block
-
همگام سازی - wait، notify
Synchronization - wait, notify
-
آزمون Multithreading
Multithreading Quiz
Virtual Threads (Project Loom)
Virtual Threads (Project Loom)
-
Virtual threads چیستند؟
What are virtual threads?
-
درک virtual threads و OS threads
Understanding virtual threads and OS threads
-
ایجاد virtual threads
Creating virtual threads
-
مقایسه: platform در مقابل virtual threads
Comparison: platform vs virtual threads
-
استفاده از ExecutorService برای ایجاد virtual threads
Using ExecutorService to create virtual threads
-
پین کردن virtual thread (Virtual thread pinning)
Virtual thread pinning
-
درک Futures
Understanding Futures
-
درک CompletableFutures I
Understanding CompletableFutures I
-
درک CompletableFutures II
Understanding CompletableFutures II
-
Structured concurrency چیست؟
What is structured concurrency?
-
StructuredTaskScope و Subtask
StructuredTaskScope and Subtask
-
ShutdownOnFailure
ShutdownOnFailure
-
ShutdownOnSuccess
ShutdownOnSuccess
-
Continuations و coroutines
Continuations and coroutines
-
مقیاس بندی با virtual threads
Scaling with virtual threads
ChatGPT
ChatGPT
-
چگونه از ChatGPT برای برنامه نویسی استفاده کنیم I
How to use ChatGPT for programming I
-
چگونه از ChatGPT برای برنامه نویسی استفاده کنیم II
How to use ChatGPT for programming II
مطالب دوره
COURSE MATERIALS
-
کد منبع و اسلایدها را دانلود کنید!
Download the source code and slides!
نمایش نظرات