-
Notifications
You must be signed in to change notification settings - Fork 7
[0주차] 배한준 학습 PR 제출합니다. #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
This file was deleted.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,48 @@ | ||
| # [WEEK 0] 온보딩 (기간 : 9/16 ~ 9/22) | ||
|
|
||
| ## COW SPRING 6기 PRE-ONBOARDING 학습 과제 | ||
|
|
||
| 본격적으로 Spring 학습에 들어가기 전에 여러분은 객체지향 코드에 대해 학습하고 이해하는 시간을 가지실겁니다! | ||
|
|
||
| 객체지향 코드를 짜기 위해서는 우리가 사용할 언어인 JAVA에 대해 이해하고 있어야합니다. | ||
|
|
||
| 이 온보딩 과제는 이번 COW Server 파트에 함께 하시는 7분의 개개인의 역량이 다르기 때문에 가장 최소한으로 알고 계셔야 할 내용을 중심으로 선정해봤어요! | ||
|
|
||
| 많은 양의 정리를 요구하지 않는 과제이니 이해하신 내용을 토대로 간단하게 정리해주시면 됩니다. (1, 2, 3, 4기의 학습자료가 github에 나와있으니 참고하셔도 좋아요☺️) | ||
|
|
||
| 개인적으로, 분명 학습했던걸 다 기억하실 수 없으실거예요! 저도 마찬가지이고요.. 공부했던 것을 잘 정리해두는 습관을 가지는 것은 분명 큰 도움으로 돌아올 것이라 생각합니다. 그런 의미로 다들 파이팅해봐요! | ||
|
|
||
| --- | ||
|
|
||
| # 필수 | ||
| ## www.google.com을 치면 일어나는일 | ||
| Keywords : DNS, TCP/IP프로토콜, WS, WAS | ||
| <br> | ||
| www.google.com을 주소창에 입력하면 먼저 DNS 조회를 통해 도메인 주소를 IP 주소로 변환하고 이후 TCP/IP 프로토콜을 이용해 서버와 3-way handshake로 연결을 맺는다. 연결이 성립되면 브라우저는 서버로 HTTP 요청을 보내고 웹 서버(WS)는 정적 자원을 응답하며 웹 애플리케이션 서버(WAS)는 동적인 로직을 처리한다. 그 결과 브라우저는 받은 데이터를 해석해 사용자 화면에 페이지를 출력한다. | ||
|
|
||
| --- | ||
|
|
||
| ## API, HTTP통신 | ||
| API는 프로그램 간의 데이터 교환 규칙이며 주로 HTTP 통신을 통해 이루어진다. HTTP 요청은 메서드(GET, POST 등)와 URL, 헤더, 바디로 구성되고 서버는 이에 대한 응답을 상태코드와 헤더, 바디로 돌려준다. 이를 통해 클라이언트와 서버는 정보를 주고받으며 동작한다. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. POST, PUT의 차이가 뭘까요? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 클라이언트-서버 환경에서 어떤 데이터 포맷(JSON, XML 등)이 널리 쓰일까요? |
||
|
|
||
| --- | ||
|
|
||
| ## 백엔드가 하는 일 | ||
| 백엔드는 클라이언트의 요청을 처리하고 데이터베이스와 연결해 데이터를 조회하거나 수정하며 비즈니스 로직을 실행한다. 또한 인증과 보안을 담당하고 서버 자원과 성능을 관리하며 사용자가 원하는 결과를 안정적으로 제공하는 역할을 한다. | ||
|
|
||
| --- | ||
|
|
||
| ## 객체지향 특징 및 장점 | ||
| 객체지향 프로그래밍은 추상화, 캡슐화, 상속, 다형성을 특징으로 한다. 이러한 특징 덕분에 코드의 재사용성이 높아지고 유지보수가 쉬워진다. 또한 확장성과 유연성이 좋아지며 현실 세계의 개념을 코드로 모델링하기에 적합하다. | ||
|
|
||
| --- | ||
|
|
||
| ## 코드 컨벤션이란 | ||
| 코드 컨벤션은 코드를 작성할 때 지켜야 하는 규칙으로 들여쓰기, 변수명과 클래스명 작성 규칙, 주석 작성 방식 등을 포함한다. 코드 컨벤션을 지키면 코드의 가독성이 좋아지고 협업 효율성이 높아지며 버그를 줄이고 유지보수를 편리하게 할 수 있다. | ||
|
|
||
| --- | ||
|
|
||
| ## MVC 패턴 | ||
| MVC 패턴은 Model, View, Controller로 구성된다. Model은 데이터와 비즈니스 로직을 담당하고 View는 사용자에게 보여지는 화면을 처리하며 Controller는 사용자의 요청을 받아 Model과 View를 연결한다. 이 구조는 역할이 명확히 분리되어 유지보수와 확장성이 뛰어난 장점을 가진다. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. MVC 패턴에 대한 개념을 정리하는 것도 중요하지만, 실제로 구현해보면서 훨씬 잘 이해되실겁니다! 레이싱카 과제를 하면서 Controller, Model, View에 대해 한번 더 고민해보시면 더 많이 배우실 수 있을거에요! |
||
|
|
||
| --- | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
HTTP 상태코드는 어떤 종류가 있는지 알고 계신가요?? 모르신다면 한번 찾아보시면 좋을거 같습니다!