📣 Please check! This lecture is the third in the "Complete Java Spring Mastery" series . First, check out the Spring Mastery Roadmap from Younghan Kim, the youngest technical director at Woowa Brothers. ( Go to link )
Everything is HTTP based
In today's world, everything is transmitted over HTTP. We use HTTP not only for the HTML, images, videos, and files we're familiar with, but also for APIs, when apps communicate with servers, and even when servers communicate with each other.
Therefore, mobile app developers, web front-end developers, and back-end developers all need to understand and use HTTP. Back-end developers, in particular, use web frameworks and technologies like Spring Web MVC, JSP, PHP, ASP.NET, Node.js, Python Django, and Ruby on Rails, all of which are built on HTTP .
Developers who are learning web technologies for the first time
If you're just starting out with web technologies without a solid understanding of HTTP, it's difficult to grasp the fundamental principles in depth. This is because these technologies assume a strong understanding of HTTP and focus on how to use their features. For example, when you first learn Spring Web MVC, you'll encounter numerous HTTP-related features and terms, making it difficult to clearly understand why these features are necessary or where and why they came from. Consequently, you'll likely focus on how to use these features rather than developing a deep understanding.
Developers who use web technologies in practice
Even after years of working with web technologies, I'm constantly faced with questions. Is this the right way to design API URLs? When should I use POST and when should I use PUT? What HTTP status code should I choose? These are the questions I constantly face.
I want to learn the core HTTP concepts essential for practical development and establish a baseline, but online resources are often fragmented or inaccurate. However, learning from the HTTP specification or commercially available books often involves a lot of content that isn't essential for practical use, and the learning curve is daunting.
Course Objectives
You'll be developing on HTTP for your entire life. Therefore, you should seriously study and understand HTTP at some point. The learning objectives for this course are as follows:
You can understand the entire flow of HTTP.
We will explain the core contents that are essential for practical use.
To make it as easy as possible to explain, I will use many pictures and examples.
This course will provide you with all the essential HTTP fundamentals you need for practical work .
Lecture target audience
Backend Server Developer
Web front-end Client Developer
Mobile front-end Client Developer
Dealing with web technologies All developers
If you're a developer working in a field that uses HTTP technology, such as web or mobile app frontend or backend, this course will provide you with a deep understanding of HTTP. It's especially helpful for backend developers who design and deliver HTTP APIs directly, developing web applications.
Lecture Structure
1. Internet network
The lecture first explains the Internet network.
Since HTTP ultimately operates on top of TCP/IP or UDP, you need to understand very basic Internet networks.
2. URI and web browser request flow
Clearly define the concepts of URI and URL.
It also explains how HTTP messages are transformed into TCP/IP messages, travel across the network to their destination, and receive an HTML response, rendering it in the web browser. This helps you understand the entire cycle of HTTP and networks.
3. HTTP Basics
Learn about the basic operations and features of HTTP. In particular, we'll delve into the concepts of statefulness and statelessness, as well as HTTP messages.
4. HTTP method
First, let's design an HTTP API without any specific requirements. We'll examine the challenges and learn why HTTP methods are necessary.
Learn various HTTP methods and build a foundation of when and how to use key HTTP methods such as GET, POST, PUT, PATCH, and DELETE.
5. Using HTTP methods
You'll learn the basic practical applications commonly used in practice. You'll learn how to send messages via HTML forms and APIs. You'll also learn how to properly design HTTP API URLs through examples. You'll also learn how to overcome the limitations of theory and practice.
6. HTTP status code
Learn about HTTP status codes. Learn which status codes are correct, and the proper meaning and usage of 2xx, 3xx, 4xx, and 5xx.
7. HTTP Headers - General Headers
HTTP has numerous headers. Here, we'll learn about representations, content negotiation, transfer methods, cookies, and more, through examples and case studies, rather than simply explaining their functions.
8. HTTP Headers - Cache
Learn the basics of HTTP caching. Learn why caching is necessary, browser caching, proxy caching, conditional requests, cache invalidation methods, and more.
To be continued in the future Spring Complete Conquest Series
We're preparing a series designed to help you master Spring completely. We'll focus on core Spring features used in real-world applications, boldly omitting obsolete or outdated features, and provide practical know-how.
Objective: This course aims to master all the web technologies required to develop web applications.
From Web Fundamentals to Practice: While it's packed with practical development material, it's also structured so that even developers without web application development experience can adapt.
Java Web Technology Story: Starting with basic Java web technologies such as servlets and filters, we explain why Spring MVC was created.
Focused on practical examples: Learn all the steps required to develop web applications with Spring in a practical way through examples, and learn best practices from the field.
Conciseness: We've boldly excluded outdated features that aren't used in practice. We'll focus on the most current and relevant features.
Thay vì nói “Tự mình học hỏi kiến thức của người chơi”, sẽ là “Tôi sẽ dạy bạn, hãy tin tưởng tôi và làm theo tôi”.
Nếu Bang Jeong-hwan là một người tuyệt vời dành cho trẻ em, thì chẳng phải người tuyệt vời nhất trong số các nhà phát triển back-end Java là Kim Young-han sao?
Cảm ơn bạn như mọi khi vì đã tạo ra những bài giảng có giá trị.
Trong khi nghe Kim Young-han giảng bài, tôi đã chuẩn bị cho việc làm và kết quả là tôi đã thành công khi xin được việc tại một công ty cỡ trung bình.
Lần trước tôi đã nói rằng tôi mơ ước được làm việc với Younghan Kim, nhưng mỗi lần nghe anh ấy giảng bài, tôi lại nghĩ điều đó có thể trở thành hiện thực.
Cảm ơn bạn đã để lại một bài giảng hay. Tôi sẽ đuổi theo bạn thật chăm chỉ.
Wow... Tôi rất mong đợi khóa học này nên tôi đã mua nó ngay khi nó ra mắt! Tôi cũng đang xem các bài giảng mùa xuân mới. Mỗi lần nhìn thấy Younghan, tôi luôn thấy niềm đam mê lập trình của anh ấy nên trong lòng tôi rất kính trọng và muốn noi gương anh ấy.
Tôi luôn hào hứng khi nghe một bài giảng hay và cảm thấy thật tuyệt khi học được điều gì đó mới. Tôi nghĩ thông thường HTTP hoặc mạng là kiến thức thực sự quan trọng đối với các nhà phát triển web. Cảm ơn bạn đã cung cấp một bài giảng tuyệt vời và tôi mong chờ những bài giảng mùa xuân khác trong tương lai.
Cảm ơn bạn đã chờ đợi như thế này ^^! Như bạn đã nói, đây là một kỹ năng cơ bản rất quan trọng để phát triển liên quan đến web, vì vậy tôi nghĩ điều này còn quan trọng hơn bài giảng về web Spring. bow77 Nhờ có Rain mà tôi cũng có sức chuẩn bị cho bài giảng tiếp theo!
Khi nghe tin Younghan khai giảng khóa học mới, suy nghĩ đầu tiên của tôi là "Tại sao khóa học HTTP lại xuất hiện trước thay vì Spring Web MVC?" Đây có thể là tin hơi thất vọng với những ai muốn nghiên cứu nhanh Spring Web MVC theo kiểu hoang dã, nhưng với những người thích phương pháp kiểu học giả như tôi và chưa biết nhiều về HTTP, như Younghan đã nói thì đây là một cơ hội để tổ chức hợp lý về HTTP. Tôi nghĩ nó sẽ hữu ích hơn khi hiểu về Spring Web MVC trong tương lai.
Đúng như dự đoán, tôi hài lòng với bài giảng này khi được xem và nghe các tài liệu bài giảng phong phú cũng như những lời giải thích được chuẩn bị theo cách dễ hiểu cho học sinh. Cảm ơn thầy luôn đưa ra những bài giảng hay.
Omnibus, cám ơn bạn đã hài lòng ^^ Trong bài giảng Spring Web MVC mình sẽ giải thích dựa trên nội dung được giải thích trong HTTP. Sau đó, bạn sẽ có thể học nó một cách nhanh chóng.
Cảm ơn sự kiên nhẫn của bạn.
Trước hết, cảm ơn bạn đã tạo ra một khóa học thực sự tuyệt vời.!!! Lần này cũng vậy, http thật cứng đầu. Tôi gần như biết khái niệm http nên thật tuyệt khi nó được tổ chức tốt như vậy. Tôi cũng đang chờ Spring Web MVC, nhưng tôi cũng sẽ đợi từ từ thôi. Bạn không cần phải làm quá nhanh và thả nó ra nhanh chóng.!! Bởi vì chúng tôi luôn chờ đợi bài giảng hoàn hảo!! Haha một lần nữa cảm ơn bạn vì đã luôn đưa ra những bài giảng tuyệt vời!