inflearn logo

Lộ trình dành cho nhà phát triển Backend mới bắt đầu

Giới thiệu các kiến thức cơ bản mà một nhà phát triển backend cần biết như web, CI/CD, cách viết API, DB, và xử lý batch.

(4.8) 102 đánh giá

3,920 học viên

Độ khó Nhập môn

Thời gian Không giới hạn

Thumbnail

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

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

4.8

5.0

김소진

100% đã tham gia

Thật tốt khi bạn đã giải thích lượng kiến ​​thức khổng lồ một cách ngắn gọn. Là một người muốn trở thành nhà phát triển back-end và bắt đầu lại từ đầu, có rất nhiều điều tôi chưa biết và tôi đã bối rối. , Thật tốt khi bạn đã giải thích rõ về lộ trình dành cho nhà phát triển back-end. Cảm ơn bạn.

5.0

초명(Daniel Y)

100% đã tham gia

Dù đã gần một năm rồi Một lần nữa những kiến ​​thức tôi đã biết Chúng tôi đã có thể thiết lập nó. Sẽ thật tuyệt nếu được nhìn thấy nó trước. Thật đáng tiếc khi nhìn thấy nó bây giờ.

5.0

장기채널화이팅

100% đã tham gia

Không phải chuyện đùa đâu, nhưng khi tôi nghe sau khi học mọi thứ, tôi hiểu rõ điều tôi đang nói và cho tôi biết mình nên học những lĩnh vực nào trong tương lai để có được kiến ​​thức mình còn thiếu hoặc kiến ​​thức mà tôi muốn. gợi ý

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

  • Kiến thức phát triển Backend

  • HTTP

  • CI/CD

  • Cách viết API

  • Cách biểu diễn dữ liệu

  • Lệnh Linux

  • Cơ sở dữ liệu

  • Xử lý theo lô

  • Kiểm soát phiên bản

Nếu bạn không biết nên bắt đầu học backend từ đâu?
Lộ trình phát triển backend tóm tắt những nội dung cốt lõi ⭐️

⭐️ Cuốn sách <Trở thành nhà phát triển backend Node.js> do tôi biên soạn đã được xuất bản. Rất mong nhận được sự quan tâm của các bạn. ⭐️ 

Link mua hàng

yes24 http://www.yes24.com/Product/Goods/118379776 
Kyobo https://product.kyobobook.co.kr/detail/S000201457949
Aladin https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=314774905

 

Tổng hợp kiến thức cơ bản phức tạp trong một lần 
Lộ trình dành cho nhà phát triển Backend mới bắt đầu

“Tại sao lập trình viên lại có nhiều thứ phải học đến thế?
Đã bao giờ bạn từng nghĩ rằng ‘Giá như có ai đó tổng hợp lại những thứ cần thiết để trở thành một lập trình viên thì tốt biết mấy...’ chưa?”

Tất nhiên là nếu bạn truy cập vào roadmap.sh/backend, bạn sẽ thấy lộ trình dành cho nhà phát triển backend đã được soạn sẵn, nhưng nội dung quá nhiều nên không dễ để tham khảo.

Dựa trên kinh nghiệm mười mấy năm của tôi cùng với lời khuyên từ những người khác, tôi đã tổng hợp [Lộ trình dành cho nhà phát triển Backend mới bắt đầu] như sau.

 Nắm vững các khái niệm nhất định phải biết
 Lộ trình cho nhà phát triển Backend mới bắt đầu


Trong lộ trình phát triển của nhà phát triển backend

💡 Nó bao gồm nhiều chủ đề đa dạng cần thiết cho việc phát triển backend như Internet, kiểm soát phiên bản, ngôn ngữ lập trình, phương pháp biểu diễn dữ liệu, lệnh Linux, máy chủ web, xác thực và ủy quyền, framework, cơ sở dữ liệu, API, xử lý hàng loạt (batch processing), triển khai, v.v. Vì có quá nhiều nội dung để có thể đi sâu vào từng chủ đề, nên tôi sẽ giới thiệu từng lĩnh vực và cách học tập chúng sao cho hiệu quả. Dưới đây là phần giới thiệu sơ lược về nội dung của một số chương.

Internet

Internet là một mạng lưới khổng lồ cho phép các máy tính trên toàn thế giới trao đổi thông tin với nhau. Trên Internet, dữ liệu được truyền nhận thông qua giao thức TCP/IP và cần có địa chỉ IP để làm địa chỉ truyền nhận dữ liệu. Vì địa chỉ IP rất khó nhớ đối với con người, nên chúng thường được chuyển đổi sang các địa chỉ bằng tiếng Anh hoặc tiếng Hàn dễ nhớ hơn. Điều này được gọi là DNS. 

Kiểm soát phiên bản

Kiểm soát phiên bản (Version Control) đúng như tên gọi của nó, cho phép bạn quản lý các phiên bản của mã nguồn và cũng được sử dụng khi cộng tác với người khác. Có nhiều hệ thống quản lý phiên bản khác nhau, nhưng bạn chỉ cần học git là đủ. GitHub là một hệ thống lưu trữ cho phép bạn sử dụng git trên web. Bạn có thể sử dụng Pull Request để gửi yêu cầu thay đổi mã nguồn đến người sở hữu kho lưu trữ đó. 

Ngôn ngữ lập trình

Các ngôn ngữ lập trình backend tiêu biểu tại Hàn Quốc là Java, JavaScript và Python. Bạn chỉ cần thành thạo một trong ba ngôn ngữ này là được.

Java là một ngôn ngữ kiểu tĩnh với đặc trưng là các mã rườm rà, nhưng vì đã được sử dụng trong thực tế suốt một thời gian dài nên tính ổn định đã được công nhận và tất cả các công ty hàng đầu trong nước (Hàn Quốc) như Na-Ka-Ra-Ku-Bae đều sử dụng. JavaScript sử dụng môi trường thực thi Node.js và hầu hết các trường hợp đều sử dụng TypeScript để kiểm tra kiểu dữ liệu. Python là ngôn ngữ được sử dụng ở nhiều nơi nhờ cú pháp dễ học và tính ứng dụng cao. Ngay cả khi không phải là phát triển backend, đây cũng là một ngôn ngữ tốt nên học qua.

Xác thực và Ủy quyền

Cả Xác thực (Authentication) và Ủy quyền (Authorization) đều bắt đầu bằng chữ Auth. Nhiều lập trình viên mới bắt đầu thường sử dụng hai khái niệm này mà không nhận biết chính xác chúng là gì, nhưng việc phân biệt rõ ràng là rất cần thiết.

Xác thực (Authentication) là việc xác minh danh tính của người dùng. Nói cách khác, đó là việc kiểm tra xem "bạn là ai". Nếu không đúng, bạn sẽ bị chặn ngay từ cửa. Ủy quyền (Authorization) là việc kiểm tra "quyền hạn của bạn đến đâu" sau khi đã được xác thực. Quyền hạn của khách hàng, VIP và quản trị viên sẽ khác nhau. Việc tạo ra sự khác biệt này chính là ủy quyền.

Cách viết API

Cách viết API sẽ không nằm ngoài REST và GraphQL. Cũng có gRPC, nhưng nơi sử dụng còn ít. Trong hầu hết các trường hợp, bạn sẽ sử dụng phương thức REST và GraphQL. Hiện tại, vì GraphQL vẫn chưa ở giai đoạn hoàn toàn trưởng thành nên cả hai đều đang được sử dụng.

CI/CD

CI/CD có các từ như "Continuous" đứng trước, tương tự như xác thực (Authentication) và ủy quyền (Authorization). CI có nghĩa là tích hợp liên tục, và CD có nghĩa là triển khai liên tục. Mặc dù là tiếng Hàn (dịch sang tiếng Việt) nhưng hoàn toàn không thể hiểu được ý nghĩa của chúng là gì.

Cũng đúng thôi, vì CI có nghĩa là "tự động hóa" mọi thứ từ sau khi viết code cho đến trước khi triển khai. Thay vì dùng từ "liên tục", nếu chúng ta thay bằng từ "tự động hóa" thì cũng không có gì lạ lẫm. Còn CD chính là "tự động hóa" việc triển khai.

Hãy kiểm tra nội dung chi tiết trong bài giảng nhé!

Chúng tôi sẽ truyền đạt một cách dễ hiểu những khái niệm mà các nhà phát triển backend mới bắt đầu nhất định phải biết như cách biểu diễn dữ liệu, câu lệnh Linux, framework, xử lý theo lô (batch processing), v.v. 😊

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

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

  • Dành cho những ai thắc mắc phát triển backend là gì

  • Những ai đang băn khoăn không biết nên học gì để trở thành nhà phát triển backend

Xin chào
Đây là gyul

5,434

Học viên

252

Đánh giá

3

Trả lời

4.9

Xếp hạng

3

Các khóa học

Xin chào~ Tôi là Seung-gyul, một nhà phát triển với 1x năm kinh nghiệm.

Tôi đã từng kinh nghiệm qua quản lý hạ tầng, phát triển nền tảng, máy chủ web, máy chủ trò chơi, phát triển công cụ vận hành, phát triển hệ thống CRM,
và hiện tại tôi đang phát triển các ứng dụng sử dụng mô hình AI tại Kakao Entertainment.

Tôi học chuyên ngành Thống kê, nhưng khi còn là sinh viên năm nhất, tôi đã từng mạnh dạn đăng ký học môn C dành cho sinh viên Công nghệ thông tin.
Chính trải nghiệm đó đã dẫn dắt tôi trở thành một nhà phát triển.
Trong tình thế không biết một chút gì, tôi đã phải thực hiện bài tập lớn là tạo ra một trò chơi,
và sau 3 tuần vật lộn với cuốn sách dày cộp, tôi đã thấy được thành quả ra đời.
Cảm giác tự hào đó lớn đến mức ngay cả bây giờ, khi đã làm nghề phát triển hơn 10 năm, mỗi khi gặp phải điều gì khó khăn hay mệt mỏi, tôi vẫn giữ được tinh thần lạc quan rằng rồi mọi chuyện cũng sẽ ổn thôi.

Mặc dù thời đại học lập trình khó khăn như tôi trước đây đã qua rồi, nhưng tôi nghĩ vẫn còn nhiều người coi lập trình là một điều gì đó mơ hồ, khó khăn và đáng sợ, vì vậy tôi muốn truyền tải những kinh nghiệm của mình để hướng dẫn các bạn một cách dễ hiểu nhất có thể.

Tôi muốn cho nhiều người biết rằng lập trình không chỉ khó khăn mà còn rất thú vị và xứng đáng để theo đuổi.

Thêm

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

Tất cả

14 bài giảng ∙ (1giờ 7phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

102 đánh giá

4.8

102 đánh giá

  • mtsaurus님의 프로필 이미지
    mtsaurus

    Đánh giá 2

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Tôi sẽ quay lại sau khi trở thành một nhà phát triển phụ trợ giỏi. Cảm ơn!

    • ilco님의 프로필 이미지
      ilco

      Đánh giá 23

      Đánh giá trung bình 5.0

      5

      100% đã tham gia

      Nó cho phép tôi chuyển từ trạng thái không biết những gì tôi không biết sang trạng thái biết những gì tôi không biết ^^ Sẽ rất hữu ích nếu tóm tắt các lĩnh vực liên quan khác nhau, những lĩnh vực này có vẻ to lớn theo quan điểm của một nhà phát triển back-end mới vào nghề, thành các từ khóa ở cấp độ lộ trình. Tôi chỉ biết ơn vì những lớp học này miễn phí ^^

      • gyul
        Giảng viên

        Cảm ơn bạn đã đánh giá chi tiết ~ Tôi hy vọng nó hữu ích~

    • darklight0418님의 프로필 이미지
      darklight0418

      Đánh giá 1

      Đánh giá trung bình 4.0

      4

      100% đã tham gia

      Đó là một bài giảng ngắn nhưng đầy thông tin. Tuy nhiên, có những lúc tôi cảm thấy hơi khó khăn, có lẽ vì kiến ​​thức của tôi còn nhiều thiếu sót, tôi nghĩ quan điểm của mình sẽ rõ ràng hơn nếu tích lũy thêm kiến ​​thức và ôn lại sau này. Cảm ơn bạn đã tạo ra một khóa học tuyệt vời!!

      • naver199906023590님의 프로필 이미지
        naver199906023590

        Đánh giá 27

        Đánh giá trung bình 4.9

        5

        100% đã tham gia

        Cảm ơn bạn đã nghe miễn phí!!

        • chaemaa00님의 프로필 이미지
          chaemaa00

          Đánh giá 1

          Đánh giá trung bình 5.0

          5

          100% đã tham gia

          Thật tuyệt vời khi có thể tìm ra hướng đi cho việc nghiên cứu back-end tổng thể của mình!

          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!

          Miễn phí