آموزش جاوا 17: یادگیری و غواصی عمیق در جاوا

Java 17: Learn and dive deep into Java

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: Java 17 Fundamentals، OOP، Lambdas، Generics، Stream API، Collections، IO، و JUnit 5 با مثال های واقعی جاوا را از نحو پایه تا موضوعات پیشرفته یاد بگیرید. نمونه های زیادی مشابه آنچه در شغل خود به عنوان مهندس نرم افزار با آن مواجه خواهید شد، خواهید دید. شما می‌توانید بهترین شیوه‌ها، کنوانسیون‌ها و دستورالعمل‌های صنعت را پیاده‌سازی کنید. توانایی پاسخگویی به سوالات مصاحبه جاوا و چالش های کد. برای مقابله با چالش های کد، خلاقانه فکر کنید. شما عمیقاً در اصول برنامه نویسی شی گرا فرو خواهید رفت. درک عمیقی از چارچوب مجموعه ها داشته باشید و بتوانید ساختار داده مناسب را انتخاب کنید. پیش نیازها: لپ تاپ ترجیحا با دو نمایشگر یکی برای دوره و دیگری برای تمرین. دانش اولیه برنامه نویسی IntelliJ IDEA Community Edition نسخه استاندارد جاوا (SE) نسخه 17 یا بالاتر. این دوره برای چه کسانی است:دانشجویان علوم کامپیوتر علاقه مند به یادگیری و استفاده از جاوا هستند. توسعه دهندگان خودآموخته می خواهند دانش خود را به سطح بعدی برسانند. فارغ التحصیلان جاوا بوت کمپ/توسعه دهندگان جاوا برای مصاحبه شغلی آماده می شوند. توسعه دهندگان جاوا که می خواهند با آخرین ویژگی ها و به روز رسانی های جاوا به روز بمانند.

به دوره آموزشی یادگیری و غواصی عمیق در جاوا خوش آمدید.


این دوره برای:

است
  • دانش آموزان.

  • فارغ التحصیلان

  • مهندسین نرم افزار خودآموخته

  • فارغ التحصیلان بوت کمپ.

  • آماده سازی مصاحبه.

  • مدیران فنی.

  • مهندسین نرم افزار با 0-3 سال تجربه

  • یا اگر می خواهید همیشه به روز بمانید (این دوره به طور مرتب به روز می شود تا آخرین ویژگی های جاوا را پوشش دهد)


پیش نیاز دوره:

  • شما به یک لپ‌تاپ نیاز دارید که ترجیحاً به دو صفحه متصل باشد، یکی برای دوره و دیگری برای تمرین.

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

  • هیچ تجربه برنامه نویسی قبلی کاملاً خوب نیست. من در اینجا همه مفاهیم را به روشی بسیار ساده و سرراست توضیح می دهم.

  • من از IntelliJ IDEA Community Edition برای نوشتن کد جاوا در این دوره استفاده خواهم کرد. این رایگان، مدرن و در بین توسعه دهندگان جاوا ترجیح داده شده است.


من جاوا را برای این دوره به دلایل زیادی انتخاب کردم:

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

  • با استفاده از جاوا، می‌توانید انواع بی‌شماری از برنامه‌ها را توسعه دهید که روی هر سیستم عاملی اجرا می‌شوند.

  • جاوا دومین زبان برنامه نویسی ترجیحی در میان 25 غول برتر فناوری است.


اهداف کلی دوره:

  • مطالب دقیق و منظمی را ارائه دهید که باعث می شود شغلی پیدا کنید و از همان روز اول شروع به کار کنید.

  • این دوره بیشتر موضوعات جاوا، ساختار داده ها و برخی الگوریتم ها را پوشش می دهد تا بتوانید مصاحبه های شغلی را پشت سر بگذارید.

  • بخش پرسش و پاسخ برای پاسخ به سؤالات دانش آموزان وجود خواهد داشت.


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

من در عرض 48 ساعت به همه سؤالات شما پاسخ خواهم داد و برخی سؤالات پاسخ ویدیویی دریافت خواهند کرد.


این دوره به طور مفصل به موضوعات زیر پرداخته است:

  1. اصول جاوا (انواع داده، شرط، تکرار، آرایه، رشته، مدیریت استثنا).

  2. برنامه نویسی شی گرا (کلاس ها، روش ها، استاتیک، ارث، رکورد، کلاس های انتزاعی، رابط ها).

  3. عبارات Lambda، Generics، Stream API.

  4. چارچوب مجموعه ها (عمیق).

به زودی Multithreading، ساختار داده در جاوا و موارد دیگر.




سرفصل ها و درس ها

به دوره خوش آمدید Welcome to the Course

  • مقدمه دوره Intro to the Course

مقدمه ای بر جاوا Introduction to Java

  • JDK (کیت توسعه جاوا) را دانلود و نصب کنید Download and Install JDK (Java Development Kit)

  • کجا کد جاوا بنویسیم Where to Write Java Code

  • IntelliJ IDEA را دانلود و نصب کنید Download and Install IntelliJ IDEA

  • IntelliJ IDEA نگاه اول IntelliJ IDEA First Look

  • سازماندهی کد در جاوا Organizing the Code in Java

  • کد کامپایل شده چیست؟ What is Compiled Code?

  • کد کامپایل شده در IntelliJ IDEA Compiled Code in IntelliJ IDEA

  • JDK، JRE، و JVM در عمق JDK, JRE, and JVM in Depth

  • آیا جاوا کند است؟ Is Java Slow?

  • متدهای print() و println() در جاوا print() and println() methods in Java

  • مقدمه ای بر نظرات در جاوا Introduction to Comments in Java

  • آزمون بخش Section Quiz

انواع داده های اولیه Primitive Data Types

  • مقدمه ای بر متغیرها Introduction to Variables

  • قراردادهای نامگذاری متغیرها Variables Naming Conventions

  • مقدمه ای بر انواع داده های اولیه Introduction to Primitive Data Types

  • انواع داده های یکپارچه Integral Data Types

  • عملگرهای حسابی قسمت 1 Arithmetic Operators Part 1

  • عملگرهای حسابی قسمت 2 Arithmetic Operators Part 2

  • اپراتورهای واگذاری Assignment Operators

  • بولی ها و عملگرهای رابطه ای booleans and Relational Operators

  • نوع داده char char Data Type

  • نوع استنتاج Type Inference

  • Escape Sequences و روش printf Escape Sequences and printf method

  • ورودی کاربر User Input

  • روش‌های اسکنر و نمونه‌های بیشتر Scanner Methods and More Examples

  • کلاس های لفاف دار Wrapper Classes

  • آزمون بخش Section Quiz

شرایط Conditionals

  • اگر-دیگر بیانیه if-else Statement

  • Nested-If مثال Nested-If example

  • بیانیه if-else (مثال) if-else Statement (Example)

  • ورزش - زوج یا فرد Exercise - even or odd

  • عملگرهای منطقی (AND & OR) Logical Operators (AND & OR)

  • ورزش - وزوز Exercise - fizz-buzz

  • منطقی نیست (نفی مقادیر بولی) Logical Not (Negating boolean Values)

  • اپراتورهای سه تایی (اپراتور الویس) Ternary Operators (Elvis Operator)

  • ورزش - نرخ بیمه Exercise - insurance rate

  • سوئیچ بیانیه Switch Statement

  • مقدمه ای بر اشکال زدایی Introduction to Debugging

  • آزمون بخش Section Quiz

تکرار در جاوا Iterations in Java

  • در حالی که حلقه While Loop

  • حلقه do-while do-while Loop

  • برای حلقه For Loop

  • بیانیه های پرش و اشکال زدایی شرطی Jump Statements and Conditional Debugging

  • تمرین در مورد تکرارها در جاوا قسمت 1 Exercise on Iterations in Java Part 1

  • تمرین در مورد تکرارها در جاوا قسمت 2 Exercise on Iterations in Java Part 2

  • حلقه های تو در تو Nested Loops

  • تمرین حلقه های تودرتو قسمت 1 Nested Loops Exercise Part 1

  • تمرین حلقه های تودرتو قسمت 2 Nested Loops Exercise Part 2

  • آزمون بخش Section Quiz

آرایه ها و رشته ها Arrays and Strings

  • مقدمه ای بر آرایه ها قسمت 1 Introduction to Arrays Part 1

  • مقدمه ای بر آرایه ها قسمت 2 Introduction to Arrays Part 2

  • پیمایش آرایه ها Traversing Arrays

  • روی آرایه ها تمرین کنید Exercise on Arrays

  • آرایه های دو بعدی Two-dimensional Arrays

  • تمرین آرایه های دو بعدی Two-dimensional Arrays Exercise

  • تغییرناپذیری رشته ها Strings Immutability

  • رشته جدید new String

  • رشته ها آرایه هایی از کاراکترها هستند Strings are Arrays of Characters

  • پیمایش رشته ها Strings Traversal

  • روش های رشته ها Strings Methods

  • StringBuilder StringBuilder

  • آزمون بخش Section Quiz

OOP قسمت 1 (کلاس ها، روش ها، کلمه کلیدی ثابت) OOP Part 1 (classes, methods, static keyword)

  • کلاس ها و اشیاء Classes and Objects

  • مواد و روش ها Methods

  • امضای روش و اضافه بار روش Method Signature and Method Overload

  • از Value VS عبور کنید. از مرجع عبور کنید Pass by Value VS. Pass by Reference

  • سازنده کلاس Class Constructor

  • دسترسی به اصلاح کننده ها Access Modifiers

  • این کلمه کلیدی this Keyword

  • متغیر استاتیک Static Variable

  • بلوک استاتیک Static Block

  • روش استاتیک Static Method

  • کلاس های تودرتو ایستا و کلاس های داخلی Static Nested Classes and Inner-Classes

  • آزمون بخش Section Quiz

OOP قسمت 2 (کلاس وراثت و رکورد) OOP Part 2 (Inheritance and record class)

  • مقدمه ای بر وراثت Introduction to Inheritance

  • اصلاح کننده دسترسی محافظت شده Protected Access Modifier

  • نادیده گرفتن روش (چند شکلی زمان اجرا) Method Overriding (Runtime Polymorphism)

  • کلمات کلیدی نهایی و مهر و موم شده final and sealed Keywords

  • کپسولاسیون (گیرنده و ستتر) Encapsulation (getters and setters)

  • روش‌های شی (getClass) Object Methods (getClass)

  • روش‌های شی (هش کد، برابر، toString) Object Methods (hashCode, equals, toString)

  • کلاس رکورد (حامل داده) Record Class (data carrier)

  • آزمون بخش Section Quiz

OOP قسمت 3 (کلاس ها و رابط های انتزاعی) OOP Part 3 (Abstract classes and Interfaces)

  • مشکل الماس The Diamond Problem

  • کلاس ها و روش های چکیده Abstract classes and Methods

  • رابط ها در جاوا Interfaces in Java

  • وراثت چندگانه با استفاده از رابط ها Multiple Inheritance using Interfaces

  • رابط در مقابل کلاس انتزاعی Interface vs. Abstract Class

  • اصول OOP OOP Principles

  • اصول شی گرایی Object Oriented Principles

  • نمونه اپراتور instanceOf Operator

  • شمارش ها Enumerations

رسیدگی به استثنا Exception Handling

  • مقدمه ای بر رسیدگی به استثناها Introduction to Exception Handling

  • try-catch و Checked Exceptions try-catch and Checked Exceptions

  • try-with-resource و Exception Propagation try-with-resource and Exception Propagation

  • استثنای سفارشی Custom Exception

عبارات لامبدا Lambda Expressions

  • مقدمه ای بر عبارات لامبدا Introduction to Lambda Expressions

  • مثال هایی در مورد عبارات لامبدا Examples on Lambda Expressions

  • مزایای عبارات لامبدا و گرفتن متغیر Advantages of Lambda Expressions and Variable Capturing

  • مرجع روش Method Reference

ژنریک ها Generics

  • مقدمه (چرا Generics) Introduction (Why Generics)

  • مقدمه ای بر ژنریک Introduction to Generics

  • روش عمومی و رابط عمومی Generic Method and Generic Interface

  • عجایب Wildcards

چارچوب مجموعه ها Collections Framework

  • مقدمه ای بر مجموعه ها Introduction to Collections

  • مقدمه ای بر ArrayList Introduction to ArrayList

  • روش های رابط مجموعه Collection interface methods

  • فهرست روش های رابط List interface methods

  • فهرست مرتب سازی Sorting List

  • مثالی در مورد استفاده از ArrayList Example on Using ArrayList

  • معرفی لینکدلیست Introduction to LinkedList

  • LinkedList LinkedList

  • ArrayDeque (تلفظ Array Deck) ArrayDeque (pronounced Array Deck)

  • صف اولویت PriorityQueue

  • مقدمه ای بر هش مپ Introduction to HashMap

  • HashMap HashMap

  • چرا به آن HashMap و Example در HashMap گفته می شود Why is it called HashMap and Example on HashMap

  • LinkedHashMap LinkedHashMap

  • نقشه درختی TreeMap

  • HashSet HashSet

  • LinkedHashSet LinkedHashSet

  • مجموعه درختی TreeSet

Stream API Stream API

  • مقدمه ای بر Java Stream API Introduction to Java Stream API

  • مقدمه ای بر عملیات ترمینال و کلمه کلیدی اختیاری Introduction to Terminal Operations and Optional Keyword

  • بیشتر در مورد روش های عملیات ترمینال (کاهش) More on Terminal Operations Methods (Reduce)

  • آشنایی با کلکسیونرها Introduction to Collectors

  • عملیات میانی Intermediate Operations

APIهای تاریخ و زمان و ریاضی Date Time and Math APIs

  • مقدمه ای بر Date Time APIs قسمت 1 Introduction to Date Time APIs Part 1

  • مقدمه ای بر Date Time APIs قسمت 2 Introduction to Date Time APIs Part 2

  • LocalDate قسمت 1 LocalDate Part 1

  • LocalDate قسمت 2 LocalDate Part 2

  • LocalTime و LocalDateTime LocalTime and LocalDateTime

  • کلاس های ZoneId، ZoneOffset و OffsetDateTime ZoneId, ZoneOffset, and OffsetDateTime classes

  • آشنایی با کلاس ریاضی Introduction to Math class

  • ایجاد اعداد تصادفی Generate Random Numbers

  • بازی شماره را حدس بزنید Guess the Number game

دستکاری فایل (I/O & NIO) File Manipulation (I/O & NIO)

  • مقدمه ای بر Java IO Introduction to Java IO

  • کلاس های FileInputStream، FileOutputStream، FileReader، FileWriter FileInputStream, FileOutputStream, FileReader, FileWriter Classes

  • کلاس های ByteArrayInputStream، ByteArrayOutputStream، CharArrayReader/Writer ByteArrayInputStream, ByteArrayOutputStream, CharArrayReader/Writer Classes

  • BufferedInputStream BufferedOutputStream، BufferedReader، BufferedWriter Class BufferedInputStream BufferedOutputStream, BufferedReader, BufferedWriter Classes

  • مقدمه ای بر سریال سازی Introduction to Serialization

  • کد سریال سازی با استفاده از کلاس های ObjectInputStream، ObjectOutputStream Serialization Code using ObjectInputStream, ObjectOutputStream Classes

  • مدیریت فایل/پوشه (کلاس فایل) File/Folder Handling (File class)

  • فهرست کردن فایل ها و فهرست ها (به صورت بازگشتی با استفاده از کلاس فایل) Listing Files and Directories (recursively using File class)

  • مقدمه ای بر رابط مسیر NIO Introduction to NIO Path Interface

  • با استفاده از رابط مسیر NIO و کلاس فایل ها، فایل ها/دایرکتوری ها را ایجاد کنید Create Files/Directories Using NIO Path Interface and Files Class

  • خواندن ویژگی های فایل (مسیر و فایل های NIO) Read File Attributes(NIO Path and Files)

  • با استفاده از کلاس NIO Files فایل های خواندنی/نوشتنی بنویسید Write Read/Write Files using NIO Files Class

  • عادی سازی، نسبی سازی، پیوستن و مقایسه مسیرها Normalizing, Relativizing, Joining, and Comparing Paths

  • فهرست کردن فایل ها و دایرکتوری ها با استفاده از کلاس NIO Files Listing Files and Directories using NIO Files Class

  • کپی، انتقال، حذف فایل ها با استفاده از کلاس NIO Files Copy, Move, Delete files using NIO Files Class

  • Watch Service API Watch Service API

تست واحد با استفاده از JUnit 5 Unit Testing Using JUnit 5

  • مقدمه ای بر JUnit 5 Introduction to JUnit 5

  • @Test @assertEquals @Test @assertEquals

  • @DisplayName @DisplayName

  • assertThrows @TestMethodOrder @Order assertThrows @TestMethodOrder @Order

  • چرخه حیات تست جونیت 5 Junit 5 Test LifeCycle

  • assertAll assertTrue assertFalse assertAll assertTrue assertFalse

  • assertNull assertNotNull assertNull assertNotNull

  • @ParameterizedTest @CsvSource @ParameterizedTest @CsvSource

  • @ValueSource @ValueSource

  • @CsvFileSource @Disabled با شکست مواجه شد @CsvFileSource @Disabled fail

  • @RepeatedTest assertTimeout @RepeatedTest assertTimeout

  • assertArrayEquals assertIterableEquals assertArrayEquals assertIterableEquals

پرسش و پاسخ دانش آموزان Students Question and Answers

  • گسترش و باریک شدن انواع اولیه Widening and Narrowing of Primitive Types

نمایش نظرات

آموزش جاوا 17: یادگیری و غواصی عمیق در جاوا
جزییات دوره
24 hours
159
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
6,625
4.6 از 5
دارد
دارد
دارد
Ryan Gonzalez
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Ryan Gonzalez Ryan Gonzalez

سرپرست تیم فنی

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


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


دریغ نکنید که با من در مورد هرگونه نظر، پیشنهاد، درخواست یا سؤال تماس بگیرید.


موفق باشید در حرفه خود و کدنویسی شاد،

رایان گونزالس