
Memorize and finish the core network theory - Basics
nullnull8537
From TCP/IP to HTTP! This lecture is for those who lack basic network theory and want to understand major theories by memorizing them. You can do it!
입문
Network, Protocol
Starting with java.io, you can learn how to develop high-performance input/output systems based on NIO and NIO.2. Most importantly, the moment you master file I/O, we'll enable you to master high-performance server development as a bonus!
You can perform file input/output using Java.
Learn about high-performance system development methods based on NIO (New I/O) and AIO (Asynchronous I/O), going beyond java.io.
Able to develop high-performance AIO-based TCP/IP server systems.
You will learn the essentials of high-performance AIO asynchronous file I/O and sockets.
A developer's competitiveness is only based on his or her skills. With this course, you will definitely secure a differentiated competitive edge!
Learn in detail about the file system itself , which is covered in the operating system class . Based on this, you will be able to understand Non-blocking I/O and asynchronous I/O .
Learn input/output methods using NIO (New I/O) beyond traditional java.io -based file input/output. This will help you maximize your understanding of the core theories you must know for future high-performance server development .
In order to develop a high-performance server, you need to use optimized methods and utilize the resources provided by the operating system. Java provides AIO (Asynchronous I/O) for this purpose, and through this class, you can understand the clear usage method and operating principles.
It provides directions on how to develop a high-performance chat server by applying NIO and AIO. In addition, by learning related network theories, you can write code based on an understanding of the principles rather than simply utilizing them.
High-performance systems in operation
I want to know the principle properly
Current Developer
By having differentiated competition
As a backend developer
Job seekers who want to get a job
Just because it's a widely used language
I learned it but I don't know the essence well
Junior developer with 1~2 years of experience
The Java series, which starts with a strong focus, consists of four parts.
Separate lectures 1 and 2 are good lectures to take together to grow as a Spring backend developer 🙂
Part 1: Basic Grammar, Procedural Programming
Part 2: Object-oriented programming + data structures
Part 3: Writing a System Utilization Program
Part 4: Preparing to move to Spring Framework
Separate 1: Understanding of Web Infrastructure Technology and DB
Separate 2: SQL Advanced
Part 3 contains a lot of content that you must know to become an advanced developer, such as multi-threaded programming and synchronization techniques, CAS (Compare And Swap, Set), lock-free structure, file input/output, socket programming, etc. There is so much content covered that it is divided into upper and lower parts . The first part covers multi-threaded programming techniques in depth based on an understanding of the Java Memory Model and JVM, while the second part covers asynchronous file input/output for high-performance system development and socket programming for server development as core topics.
You will learn about NIO and AIO beyond java.io for high-performance system development and understand how to develop high-performance server systems based on these theories.
You will gain a clear understanding of core concepts regarding file systems .
You can understand and utilize traditional file input/output techniques as well as high-performance input/output techniques based on NIO (New I/O) .
You can utilize AIO (Asynchronous I/O) with operating system-level support to maximize input/output efficiency.
You will understand the essence of sockets and be able to develop high-performance TCP/IP server systems .
Before learning about file input/output, you can learn the operating system level operation structure for file processing .
You can understand the internal differences between Buffered I/O and Non-buffered I/O and the fundamental reasons why performance differences occur.
Establish a theory for understanding high-performance input/output systems beyond Java.io-based input/output.
You will learn how to achieve high performance through asynchronous file input/output beyond traditional file input/output systems.
It helps you understand and apply I/O multiplexing-based input/output techniques in practice.
You can develop high-performance systems that rival the performance of C/C++-based applications by leveraging AIO (Asynchronous I/O) .
Starting with the initial Echo service, we will gradually improve its functions and ultimately develop it into a high-performance AIO-based chat server system .
By learning the essential network theories that you must know in relation to socket programming, we help you understand them rather than simply memorize them.
To ensure proper practice, be aware of the specifics and differences between a typical home and single-host environment where a router is used and approach the practice with that in mind.
All class content is based on PPT materials, but explanations are given as if writing on a whiteboard .
This allows students to comprehensively understand the flow of the background and reasons for the creation of the structure, rather than just seeing one finished result .
Before learning full-fledged Java programming, I would like to make it clear that this course is aimed at employment . And
Based on the instructor's extensive teaching experience, a clear learning roadmap and required time are presented .
We encourage you to establish a proper study allocation and schedule from the beginning to avoid wasting time with wrong choices.
Operating System and Version (OS): Windows 11
Tools Used: IntelliJ IDEA 2024.2.3 (Community Edition)
PC specifications: Windows 11 OS and IntelliJ can run without any problems
PPT materials used in class (provided as PDF file)
Complete examples and answers to essential practice problems (provided as a zip file)
Java Part 1-3 (Part 1) that starts with a solid foundation
(※ Assuming you know basic grammar and OOP as well as multi-threading and synchronization)
Who is this course right for?
Person who wants to develop high-performance backend systems based on Java
Those who understand the essence of sockets and want to develop high-performance servers immediately applicable in practice.
Those who genuinely understand the meaning of synchronous/asynchronous file I/O and want to definitively move beyond the beginner level.
Need to know before starting?
A person who understands the content covered in the '독하게 시작하는 Java Part2~3(상)' lecture.
45,736
Learners
2,566
Reviews
1,144
Answers
4.9
Rating
25
Courses
All
45 lectures ∙ (9hr 15min)
Course Materials:
All
15 reviews
5.0
15 reviews
Reviews 31
∙
Average Rating 4.9
5
The only lecture to study Java + CS theory together
Thank you for the first course review. When I launch a new course, I feel like I truly thirst for the first review. Moreover, seeing that you reviewed it favorably has put my mind at ease. :)
Reviews 12
∙
Average Rating 4.9
5
The CS knowledge you share intermittently and your explanations connecting it to the relevant concepts are very helpful.
Thank you for the good review. :)
Reviews 9
∙
Average Rating 5.0
5
I thought file I/O wasn't very important since I rarely dealt with it, but I came to realize how crucial it is from the perspective that sockets are also files. Additionally, it was refreshing to learn how servers can be optimized using multithreading and non-blocking asynchronous methods that were covered earlier in the class. It was such a great lecture!
File input/output contains numerous important concepts where CS theory is concentrated. You've probably already felt this, but I want to emphasize its importance once again. I also want to make sure to tell you that just having this awareness is already a great achievement. It seems like you now have a broader perspective, which makes me happy as an instructor. :)
Reviews 9
∙
Average Rating 5.0
Reviews 16
∙
Average Rating 5.0
$51.70
Check out other courses by the instructor!
Explore other courses in the same field!