🕹️ Programming

이번 글에서는 소프트웨어 디자인 패턴 중 하나인 MVC 패턴에 대해 기록해보려고 한다. MVC 패턴이란 MVC는 Model-View-Controller의 약자로, 애플리케이션을 3가지 역할로 구분하는 디자인 패턴이다. 이렇게 역할을 분리하는 이유는 무엇일까? 화면과 데이터 처리를 분리해 코드 간의 종속성을 줄이고 구성 요소 간의 역할을 명확하게 함으로써 코드 분리가 쉽고 유지보수가 용이하기 때문이다. 이해하기 쉽도록 실생활로 예를 들어보자면, 하나의 회사에서 마케팅 업무를 하는 직원, 디자인 업무를 하는 직원, 개발 업무를 하는 직원, 기획 업무를 하는 직원이 모두 한 공간에서 작업을 진행한다고 생각해보자. 만약 특정 디자인에 수정이 필요할 때, 그 복잡한 환경에서 해당 디자인 업무를 담당하는 직원들을 ..
인텔리제이에서 클래스를 열었을 때 다음과 같이 자동으로 메서드를 한줄로 접어주는 기능이 있다. 맥을 사용하는 나는 매번 command + shift + plus 단축키를 사용해 펼쳐서 확인했는데, 이게 갑자기 너무너무 번거롭게 느껴졌다. 나처럼 자동 접기 기능이 오히려 방해가 된다면 아래 설정을 만져주자. Settings > Editor > General > Code Folding imports, one-line methods 체크 박스 해제
git 명령어를 잘못쳐서 작업 내용이 다 날아가 멘붕이 온 경험이 한번쯤 있을 것이다. git은 우리의 실수를 예견하고... 친절하게 지난 명령어의 history를 기록하고 다시 되돌아갈 수 있도록 기능을 제공한다. 이전 명령어 확인하기 git reflog 지난 git history를 확인하는 명령어이다. 명령어를 치기 전 상태로 되돌아가기 git reset --hard HEAD@{1} 만약 가장 마지막으로 한 명령어가 잘못되었다면, 돌아가야할 위치는 HEAD@{1} 이다. 이렇게 지난 로그를 확인하고 돌아가야할 위치를 확인해 reset을 해주면, 명령어를 치기 전 상태로 다시 되돌아갈 수 있다. 앞으로 명령어를 잘못 쳤다면, 당황하지 말고 reflog와 reset을 사용해 해결해보자.
1장. 협력하는 객체들의 공동체 객체지향이란 시스템을 상호작용하는 자율적인 객체들의 공통체로 바라보고 객체를 이용해 시스템을 분할하는 방법이다. 자율적인 객체란 상태와 행위를 함께 지니며, 스스로 자기 자신을 책임지는 객체를 의미한다. 객체는 시스템의 행위를 구현하기 위해 다른 객체와 협력한다. 각 객체는 협력 내에서 정해진 역할을 수행하며, 역할은 관련된 책임의 집합이다. 객체는 다른 객체와 협력하기 위해 메세지를 전송하고, 메시지를 수신한 객체는 그것을 처리하는 데 적합한 메서드를 자율적으로 선택한다. 객체지향의 핵심은 적절한 책임을 수행하는 역할 간의 유연하고 견고한 협력 관계를 구축하는 것이다. 클래스는 협력에 참여하는 객체를 만드는 데 필요한 구현 메커니즘일 뿐 클래스가 객체 지향의 중심이 아니..
PR 템플릿 사용하기 프로젝트 최상단에 .github 폴더를 만든다. mkdir .github .github 폴더 내에 PULL_REQUEST_TEMPATE 이름으로 md 파일을 만든다. 📁 PULL_REQUEST_TEMPLATE.md ## 👀 관련 이슈 close #이슈번호 ## ✨ 작업 내용 - ## 🙏 리뷰 요구 사항 - ## 📢 논의하고 싶은 내용 - ## 🎸 기타 사항 - [링크]() ISSUE 템플릿 사용하기 .github 폴더 내에 ISSUE_TEMPLATE 폴더를 만든다. ISSUE_TEMPLATE 내에 이슈 타입에 맞는 md 파일을 만든다. 📁 ISSUE_TEMPLATE/feat.md --- name: ✨ Feature about: feature 관련 이슈입니다. title: '' lab..
에러 원인 MySQL에서 row를 삭제하려고 하는데 다음과 같은 에러가 발생했다. Error Code: 1451. Cannot delete or update a parent row: a foreign key constraint fails 현재 삭제하려고 하는 row를 다른 테이블에서 참조하고 있기 때문에 삭제하거나 변경할 수 없다는 것이다. 에러 해결 방법1) 참조하는 데이터를 먼저 삭제하고 삭제하기 FK로 참조하는 row를 삭제한 뒤 에러가 발생했던 row를 다시 삭제해주면된다. 이 방법이 가장 안전한 방법으로, 기존 DB 설계자가 의도한 대로 데이터의 관계를 유지할 수 있다는 장점이 있다. 방법2) 외래키 체크 설정을 해제하기 -- 외래키 체크 해제(0)/설정(1) set foreign_key_che..
🔥 문제 발생 상황 com.amazonaws.SdkClientException: Failed to connect to service endpoint: at com.amazonaws.internal.EC2ResourceFetcher.doReadResource(EC2ResourceFetcher.java:100) ~[aws-java-sdk-core-1.11.792.jar:na] at com.amazonaws.internal.EC2ResourceFetcher.doReadResource(EC2ResourceFetcher.java:70) ~[aws-java-sdk-core-1.11.792.jar:na] at com.amazonaws.internal.InstanceMetadataServiceResourceFetche..
🔥 문제 발생 상황 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by s..
an2z
'🕹️ Programming' 카테고리의 글 목록