조종 다음은 개발
article thumbnail
MVC 패턴에 대해, 그리고 이를 지키는 규칙
개발 스토리 2023. 10. 21. 12:36

항상 MVC 패턴에 대해 들어봤는데 제대로 알아본 적이 없던 것 같아서 이번 기회에 제대로 알아보려도 이 글을 작성하게 되었다. MVC 이전 시대 우선 MVC 패턴이 나오게 된 배경에 대해 이해하는 게 좋을 것 같다. MVC 패턴 이전에 어떤 것이 있었고 어떤 문제가 있어서 MVC 패턴이 나오게 되었는지 알아보자. JSP 모델 1 하나의 JSP 나 서블릿이 비즈니스 로직과 뷰 로직을 다루었다. 처음에는 한 곳에 작성해서 편하지만 유지보수 관점에서 매우 안 좋았다. 비즈니스 로직을 수정해야 할 때 JSP 파일을 열어보면 수정하지도 않을 HTML 코드들도 같이 보이게 되고 디버깅할 때 어디에 문제가 발생했는지 찾는 게 상당한 시간이 걸리게 된다. 하나의 JSP 파일이 너무나 많은 책임을 가지고 있게 되는 것..

article thumbnail
레코드(record) 누구냐 넌?
개발 스토리 2023. 10. 20. 19:09

🤨 레코드(record) 누구냐 넌? 레코드(record)란 불변의 데이터를 쉽게 생성할 수 있는 새로운 유형의 클래스이다. JDK14에서 처음 소개되었고, JDK16에서 정식 스펙으로 포함되었다. 백문일불여일견, 우선 간단하게 뭔지 살펴보자. 위와 같이 복잡한 코드를 아래와 같이 코드 한 줄로 간단하게 사용할 수 있게 해주는 마법 같은 존재이다. 그렇기 때문에 데이터를 다루는 모델 클래스나 DTO 로 사용하기 매우 적합할 것 같다. 🧙 레코드가 자동으로 만들어 주는 것들 필드 및 생성자 기본 클래스와는 다르게 레코드는 선언 시 사용할 필드만 넣어주면 자동으로 private final 로 필드를 선언하고 생성자도 선언한다. 별도로 생성자를 정의해주거나 필드값을 적어줄 필요가 없다. getter 레코트는 ..

article thumbnail
Git 의 기본 동작과 Fork vs Clone
개발 스토리 2023. 10. 20. 12:18

Git 이 뭐야?? 🧐 Git 은 소스 코드를 관리하기 위한 분산 버전 제어 시스템이다. 버전 제어 시스템은 사용자가 파일을 수정할 때 변경 사항을 기록하고 저장하므로 언제든 이전 버전의 작업을 복원할 수 있다. 개발자들은 기능을 추가하거나 수정하는 작업이 많기 때문에 Git을 활용하여 편리하게 버전을 관리한다. Git을 사용하면 팀 프로젝트로 여러 팀원들이 동시에 작업을 하여도 누가, 언제, 무엇을 했는지 확인할 수 있기 때문에 문제가 발생하여도 쉽게 파악하여 해결할 수 있다. Git의 버전 관리 이에 대한 내용은 아래 링크에서 그림에 빗대어 너무 잘 설명되어 있어서 참고하면 좋을 것 같다. [GIT] ⚡️ git 개념 & 원리 (그림으로 알기 쉽게 비유 😃) Git 기본 동작 Working Direc..

article thumbnail
JAVA 8 버전으로 변경 (MAC M1, intelij)
개발 스토리 2023. 9. 8. 14:42

Failed to calculate the value of task ':compileJava' property 'javaCompiler'. SystemInfo is not supported on this operating system. 위와 같은 에러가 나오는 이유는 프로젝트의 JAVA 버전과 나의 IDE 가 세팅되어 있는 JAVA 버전이 달라서 생기는 에러이다. 따라서 자바 버전을 변경해줄 필요가 있다. 필자의 경우는 JAVA 8으로 변경 해줘야 했다. JAVA 8 설치 유무 확인 일단 터미널을 열고 /usr/libexec/java_home -V 를 입력해보면 현재 설치되어 있는 자바 버전들이 나온다. 필자의 경우는 18, 17, 13 이 있다고 나오는데 8버전이 없으므로 다운로드를 해줘야한다. JAV..