강의

멘토링

커뮤니티

BEST
Programming

/

Programming Language

Nền tảng vững chắc! Bắt đầu quyết liệt với Java Phần 3(hạ) : Socket và File I/O

Bắt đầu với java.io, bạn có thể học cách phát triển hệ thống nhập/xuất hiệu năng cao dựa trên NIO và NIO.2. Hơn hết, khi bạn hoàn thành nhập/xuất file, việc phát triển máy chủ hiệu năng cao cũng sẽ hoàn thành theo đó!

(5.0) 14 đánh giá

515 học viên

  • nullnull8537
Java
Network
tcpsocket

Đánh giá từ những học viên đầu tiên

Bạn sẽ nhận được điều này sau khi học.

  • Có thể nhập/xuất tệp bằng Java.

  • Có thể tìm hiểu phát triển hệ thống hiệu năng cao dựa trên NIO (New I/O), AIO (Asynchronous I/O), vượt qua java.io.

  • Có thể phát triển hệ thống máy chủ TCP/IP hiệu năng cao dựa trên AIO.

Bạn sẽ học được những kiến ​​thức cơ bản về I/O tệp không đồng bộ AIO hiệu suất cao và socket.
Khả năng cạnh tranh của một nhà phát triển chỉ dựa trên kỹ năng của người đó. Khóa học này chắc chắn sẽ mang lại cho bạn lợi thế cạnh tranh!

Tại sao chúng ta lại đi sâu vào 'tệp' 🤔

Nếu bạn hoàn thành bài giảng này một cách đúng đắn
Dựa trên trình độ hiểu biết cao tương đương với một chuyên gia
Bạn có thể sử dụng Java .

Nhiều lý thuyết về đầu vào/đầu ra tập tin

Tìm hiểu thêm về hệ thống tập tin một cách chi tiết trong lớp hệ điều hành . Dựa trên điều này, chúng ta có thể biết chính xác về I/O không chặn và I/O không đồng bộ .

Đầu vào/đầu ra tệp dựa trên NIO

Tìm hiểu các phương pháp nhập/xuất bằng NIO (New I/O) ngoài phương pháp nhập/xuất tệp truyền thống dựa trên java.io. Điều này sẽ giúp bạn hiểu tối đa các lý thuyết cốt lõi cần biết để phát triển máy chủ hiệu suất cao trong tương lai .

AIO hiệu suất cao

Việc phát triển một máy chủ hiệu suất cao không chỉ đòi hỏi phải sử dụng các phương pháp tối ưu mà còn phải có khả năng sử dụng các tài nguyên do hệ điều hành cung cấp. Ở trên, Java cung cấp AIO (I/O không đồng bộ) và thông qua lớp này, bạn có thể hiểu được phương pháp sử dụng rõ ràng và nguyên lý hoạt động.

Lập trình Socket TCP/IP

Tài liệu này cung cấp hướng dẫn về cách phát triển máy chủ trò chuyện hiệu suất cao bằng cách áp dụng NIO và AIO. Ngoài ra, bằng cách tìm hiểu các lý thuyết mạng liên quan, bạn có thể viết mã dựa trên sự hiểu biết về các nguyên tắc thay vì chỉ sử dụng chúng.


Đối tượng học tập


Hệ thống hiệu suất cao đang hoạt động
Tôi muốn biết nguyên lý một cách chính xác
Nhà phát triển hiện tại


Bằng cách có sự cạnh tranh khác biệt
Là một nhà phát triển phần mềm phụ trợ
Người tìm việc muốn có việc làm


Chỉ vì nó là một ngôn ngữ được sử dụng rộng rãi
Tôi đã học nó nhưng tôi không biết bản chất
Junior developer có 1~2 năm kinh nghiệm

Lộ trình học tập 🏃🏻

Chuỗi bài học Java, bắt đầu bằng nội dung chính, bao gồm bốn phần.
Bài giảng riêng biệt 1 và 2 là những bài giảng hay để học cùng nhau nhằm phát triển thành một nhà phát triển Spring backend 🙂

  • Phần 1: Ngữ pháp cơ bản, Lập trình thủ tục

  • Phần 2: Lập trình hướng đối tượng + cấu trúc dữ liệu

  • Phần 3: Viết chương trình sử dụng hệ thống

  • Phần 4: Chuẩn bị chuyển sang Spring Framework

  • Riêng 1: Hiểu biết về Công nghệ Cơ sở hạ tầng Web và DB

  • Riêng 2: SQL nâng cao


Phần 3 chứa nhiều nội dung mà bạn phải biết để trở thành một nhà phát triển nâng cao , chẳng hạn như lập trình đa luồng và các kỹ thuật đồng bộ hóa, CAS (So sánh và hoán đổi, Đặt), cấu trúc không khóa, nhập/xuất tệp và lập trình socket. Có rất nhiều nội dung cần đề cập đến nên nó được chia thành phần trên và phần dưới. Phần đầu tiên trình bày sâu về các kỹ thuật lập trình đa luồng dựa trên sự hiểu biết về Mô hình bộ nhớ Java và JVM, trong khi phần thứ hai trình bày về đầu vào/đầu ra tệp không đồng bộ để phát triển hệ thống hiệu suất cao và lập trình socket để phát triển máy chủ như các chủ đề cốt lõi.

Bạn sẽ tìm hiểu về NIO và AIO ngoài java.io để phát triển hệ thống hiệu suất cao hiểu cách phát triển các hệ thống máy chủ hiệu suất cao dựa trên các lý thuyết này.

Sau khi nghe xong bài giảng này...

  • Bạn sẽ hiểu rõ hơn về các khái niệm cốt lõi liên quan đến hệ thống tập tin .

  • Bạn có thể hiểu và sử dụng các kỹ thuật nhập/xuất tệp truyền thống cũng như các kỹ thuật nhập/xuất hiệu suất cao dựa trên NIO (New I/O) .

  • Bạn có thể sử dụng AIO (I/O không đồng bộ) với sự hỗ trợ ở cấp độ hệ điều hành để tối đa hóa hiệu quả đầu vào/đầu ra.

  • Bạn sẽ hiểu được bản chất của socket và có khả năng phát triển các hệ thống máy chủ TCP/IP hiệu suất cao .

Java khởi đầu mạnh mẽ
Đây không chỉ là khóa học Java.

1⃣
Hiểu biết khái niệm về hệ thống tập tin là rất quan trọng!


  • Trước khi tìm hiểu về nhập/xuất tệp, bạn có thể tìm hiểu cấu trúc hoạt động cấp hệ điều hành để xử lý tệp .

  • Bạn có thể hiểu được sự khác biệt bên trong giữa I/O đệm và I/O không đệm và lý do cơ bản tại sao lại xảy ra sự khác biệt về hiệu suất.

  • Thiết lập lý thuyết để hiểu các hệ thống đầu vào/đầu ra hiệu suất cao ngoài đầu vào/đầu ra dựa trên Java.io.

2⃣
Kỹ thuật I/O không đồng bộ để phát triển các hệ thống hiệu suất cao


  • Bạn sẽ học cách đạt được hiệu suất cao thông qua việc nhập/xuất tệp không đồng bộ vượt xa các hệ thống nhập/xuất tệp truyền thống.

  • Nó giúp bạn hiểu và áp dụng các kỹ thuật đầu vào/đầu ra dựa trên ghép kênh I/O vào thực tế.

  • Bạn có thể phát triển các hệ thống hiệu suất cao có thể sánh ngang với hiệu suất của các ứng dụng dựa trên C/C++ bằng cách tận dụng AIO (I/O không đồng bộ) .

3⃣
Hiểu về lập trình socket TCP/IP và mạng


  • Bắt đầu với dịch vụ Echo đầu tiên, chúng tôi sẽ dần cải thiện các chức năng của nó và cuối cùng phát triển nó thành hệ thống máy chủ trò chuyện dựa trên AIO hiệu suất cao .

  • Bằng cách tìm hiểu các lý thuyết mạng thiết yếu mà bạn phải biết liên quan đến lập trình socket, chúng tôi giúp bạn hiểu chúng thay vì chỉ ghi nhớ chúng.

  • Để đảm bảo thực hành đúng, hãy nhận biết các chi tiết cụ thể và sự khác biệt giữa môi trường gia đình thông thường và môi trường máy chủ đơn lẻ nơi sử dụng bộ định tuyến và thực hành theo hướng đó.

4⃣
Tài liệu giảng dạy và bảng được sắp xếp hợp lý 📜


  • Toàn bộ nội dung lớp học đều dựa trên tài liệu PPT, nhưng phần giải thích được đưa ra như thể viết trên bảng trắng .

  • Điều này cho phép sinh viên hiểu toàn diện về dòng chảy của bối cảnh và lý do tạo ra cấu trúc, thay vì chỉ nhìn thấy một kết quả hoàn chỉnh .

5⃣
Mục tiêu là tạo ra sự cạnh tranh và việc làm khác biệt 💼

  • Trước khi học lập trình Java chuyên sâu, tôi muốn làm rõ rằng khóa học này hướng tới mục tiêu là việc làm .

    Dựa trên kinh nghiệm giảng dạy sâu rộng của người hướng dẫn , chúng tôi cung cấp lộ trình học tập rõ ràng và thời gian cần thiết .

  • Chúng tôi khuyến khích bạn thiết lập lịch trình và phân bổ thời gian học tập hợp lý ngay từ đầu để tránh lãng phí thời gian vào những lựa chọn sai lầm.

Môi trường thực hành

  • Hệ điều hành và Phiên bản (OS): Windows 11

  • Công cụ được sử dụng: IntelliJ IDEA 2024.2.3 (Phiên bản cộng đồng)

  • Thông số kỹ thuật PC: Hệ điều hành Windows 11 và IntelliJ có thể chạy mà không có bất kỳ vấn đề nào

Tài liệu học tập

  • Tài liệu PPT sử dụng trong lớp học (được cung cấp dưới dạng tệp PDF)

  • Các ví dụ và câu trả lời đầy đủ cho các bài tập thực hành thiết yếu (được cung cấp dưới dạng tệp zip)

Kiến thức và ghi chú của người chơi

  • Java Phần 1-3 (Phần 1) bắt đầu với nền tảng vững chắc
    (※ Giả sử bạn biết ngữ pháp cơ bản và OOP cũng như đa luồng và đồng bộ hóa)


Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Người muốn phát triển hệ thống backend hiệu năng cao dựa trên Java

  • Người muốn hiểu bản chất của socket và phát triển máy chủ hiệu năng cao có thể áp dụng ngay vào thực tế

  • Người muốn hiểu đúng ý nghĩa của I/O tệp đồng bộ/bất đồng bộ và chắc chắn vượt qua trình độ sơ cấp

Cần biết trước khi bắt đầu?

  • Người hiểu nội dung khóa học "Bắt đầu 'nghiêm túc' Java Phần 2~3 (Thượng)".

Xin chào
Đây là

45,597

Học viên

2,529

Đánh giá

1,143

Trả lời

4.9

Xếp hạng

25

Các khóa học

널널한 개발자 TV 채널 주인장이자
30년 넘게 IT기술의 바다를 항해하고 있는 개발자 입니다.  반갑습니다. ^^  

Chương trình giảng dạy

Tất cả

45 bài giảng ∙ (9giờ 15phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

14 đánh giá

5.0

14 đánh giá

  • twoj님의 프로필 이미지
    twoj

    Đánh giá 31

    Đánh giá trung bình 4.9

    5

    31% đã tham gia

    Khóa học duy nhất vừa học được Java + lý thuyết CS

    • nullnull8537
      Giảng viên

      Cảm ơn bạn vì đánh giá đầu tiên về khóa học. Khi mở khóa học mới, tôi thấy mình thực sự mong ngóng đánh giá đầu tiên. Hơn nữa, việc bạn nhìn nhận tốt khiến tôi cảm thấy lòng mình thật nhẹ nhõm. :)

  • cheetos님의 프로필 이미지
    cheetos

    Đánh giá 12

    Đánh giá trung bình 4.9

    5

    100% đã tham gia

    Kiến thức CS được chia sẻ xen kẽ và việc giải thích liên kết với những kiến thức đó rất hữu ích.

    • nullnull8537
      Giảng viên

      Cảm ơn bạn đã đánh giá tốt. :)

  • rksidksrksi님의 프로필 이미지
    rksidksrksi

    Đánh giá 9

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Tôi từng nghĩ rằng xử lý input/output file không quan trọng vì ít khi phải sử dụng, nhưng đã nhận ra rằng nó rất quan trọng khi biết rằng socket cũng là file. Ngoài ra, việc có thể tối ưu hóa server bằng cách sử dụng multithread và phương thức bất đồng bộ non-blocking mà đã học trong bài trước cũng thật mới mẻ. Đây thực sự là một bài giảng tuyệt vời!

    • nullnull8537
      Giảng viên

      Nhập/xuất file chứa nhiều nội dung quan trọng tập trung vào lý thuyết CS. Như bạn đã cảm nhận được, tôi muốn nhấn mạnh lại tầm quan trọng của nó một lần nữa. Chỉ việc có được nhận thức này thôi cũng đã là một thành tựu tuyệt vời rồi, điều này tôi cũng muốn nhấn mạnh. Giờ đây có vẻ như bạn đã có được tầm nhìn rộng hơn, với tư cách là giảng viên tôi cảm thấy rất vui. :)

  • jw12님의 프로필 이미지
    jw12

    Đánh giá 9

    Đánh giá trung bình 5.0

    5

    33% đã tham gia

    • nullnull8537
      Giảng viên

      Cảm ơn bạn đã đánh giá tốt. :)

  • tjdgns55063964님의 프로필 이미지
    tjdgns55063964

    Đánh giá 16

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    • nullnull8537
      Giảng viên

      Cảm ơn bạn đã đánh giá tốt. :)

1.403.696 ₫

Khóa học khác của nullnull8537

Hãy khám phá các khóa học khác của giảng viên!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!