MVC 패턴의 발전과정
·
Backend/Web
MVC 패턴의 등장배경Servlet이나 JSP만으로 비지니스 로직과 View Rendering 까지 모두 처리하면 너무 많은 역할을 하게 되고 유지보수가 굉장히 어려워져서(책임이 너무 많음) MVC 패턴이 등장했다. Servlet, JSP 구조Servlet, JSP 방식의 문제점Servlet만을 사용한 경우 View를 위한 코드와 비지니스 로직을 처리하는 코드가 Servlet에 모두 존재하여 유지보수가 어려워진다.JSP를 사용하여 View를 분리하였지만 비지니스 로직의 일부가 JSP 파일안에 존재한다. 여전히 책임이 많아 유지보수가 어렵다.템플릿 엔진(Template Engine)MVC 패턴에서 템플릿 엔진(Template Engine)이 등장한 이유는 View와 비즈니스 로직의 역할을 명확히 구분하여 ..
Web Application 및 Servlet
·
Backend/Web
웹 서버(Web Server)웹 서버는 주로 정적인 콘텐츠(Static Content) 제공과 간단한 HTTP 요청 처리를 담당한다. 주로 Apache HTTP Server, Nginx, IIS (Microsoft)와 같은 서버들이 웹 서버 역할을 수행한다.웹 서버 (Web Server) 의 주요 역할✅ 정적 콘텐츠(Static Content) 제공정적 콘텐츠라는 리소스가 이미 완성된 채로 서버에 존재하여 원본 그대로 응답하는 데이터를 의미한다.HTML, CSS, JavaScript, 이미지, 비디오 등의 리소스를 그대로 제공HTML 페이지 요청 (ex. index.html, about.html)정적인 이미지 파일 제공(.jpg, .png)스타일시트(.css), 자바스크립트(.js) 파일 제공✅ HTTP..
HTTP의 모든 것
·
CS
HTTP(HyperText Transfer Protocol)TEXT, IMAGE, FILE, HTML, JSON 등 다양한 형태의 데이터가 HTTP를 통해 전송된다.HTTP에도 버전이 존재하며 그중 대부분 HTTP/1.1 (TCP)을 사용한다. 현대에는 HTTP/2, HTTP/3 (UDP)의 사용량이 급속도로 증가하는 추세이다. HTTP 동작 순서HTTP는 클라이언트와 서버 사이에 이루어지는 요청/응답(request/response) 프로토콜이다. 예를 들면, 클라이언트인 웹 브라우저가 HTTP를 통하여 서버로부터 웹페이지(HTML)나 그림 정보를 요청하면, 서버는 이 요청에 응답하여 필요한 정보를 해당 사용자에게 전달하게 된다.HTTP 특징1️⃣ 클라이언트와 서버 구조클라이언트는 UI(User Inte..
[Java] 스트림
·
Language/Java
스트림(stream)이란 ?스트림이란 이름에서도 알 수 있듯, 데이터를 효율적으로 처리할 수 있는 흐름을 말한다.스트림은 선언형 스타일로 가독성이 굉장히 뛰어나며 데이터 준비 → 중간 연산 → 최종 연산 순으로 처리된다. 스트림은 컬렉션(List, Set 등) 과 함께 자주 이용되기도 한다.스트림의 특징데이터 흐름(데이터 스트림)스트림은 데이터를 한 방향으로 전달하며, 여러 연산을 적용할 수 있음.컬렉션과 다르게 데이터를 직접 저장하지 않음리스트(List), 셋(Set), 맵(Map)과 달리 데이터를 저장하는 구조가 아님.즉, 스트림은 데이터를 "흐르게" 하면서 변형하는 도구.한 번 사용하면 다시 사용할 수 없음스트림은 한 번 실행되면 재사용할 수 없음.중간 연산(Intermediate Operation..
[Java] if-else와 try-catch에 대해서
·
Language/Java
너무나 당연하게 예외처리를 하고 있었던 와중에, 예외처리가 꼭 필요할까 ? 에 대한 생각이 들었다. 그냥 습관적으로 예외 핸들링을 하고 있었던 것 같달까 ….따지고 보면 if-else 와 같은 조건문으로 입력 값을 처리하는거나 try-catch 등을 활용하여 예외를 처리하는 것이 콘솔의 결과창으로 봤을 때는 동일하게 느껴졌기 때문이다.따라서 원초적인 질문에 대해 정리하는 시간을 가졌다. 요즘 개발을 하면서 사소한 것 하나부터 끈질기게 의심하고 “왜” 해야하는지에 대해 치열하게 고민하려고 노력중이다.그래서, 왜 ! 예외처리가 필요할까 ?if-else로 예상되는 잘못된 값을 처리하는 것과 예외를 처리하는 것은 개념적으로 차이가 있다.1. if-else로 예상되는 잘못된 값 처리if-else는 예측 가능한 잘..
[SOPT] 35기 SERVER 파트 합격 후기
·
회고
사실 SOPT 35기를 수료했고, 곧 SOPT 36기를 모집하고 있어서 약간은 뒷북 같지만 35기 서버 파트 합격 후기를 적어보고자 한다. SOPT 35기를 수료하면서 엄청 많이 성장했고, 어떤 부분이 부족한지 잘 알게 되어서 너무너무 좋았던 활동이었다. 나의 대학생활 중에 가장 유의미한 활동이라고 생각한다 !!! 따라서 SOPT 36기에 OB로 활동을 하려고 했으나, 프로젝트를 하는 것보다 개인적으로 부족한 부분을 채우는 것이 더 좋겠다고 판단해서 지원하지 않았다. 실력을 조금 더 키우고 OB에 도전해보고자 한다 !!!! 어쨋든 작년 하반기 내 일상의 전부라고 봐도 무방한 SOPT 지원을 고민하고 있는 분들이 있다면 무조건 !!! 지원하라고 추천하고 싶다 !!지원동기우선 4학년 1학기 재학중이었고, 교..