목록Study/DEVELOP (4)
DevYGwan
회사에서 flyway을 도입하려 했는데 저희가 사용하는 DB가 flyway를 지원하지 않는 문제를 발견했습니다. 해당 공식 Repository에서 지원하는 DB 목록을 볼 수 있습니다. (https://github.com/flyway/flyway) 따라서 이 문제를 해결하기 위해 flyway 지원 코드를 작성했고 테스트를 완료했습니다. 이에 대한 설명은 다음 장에서 설명드리도록 하겠습니다. 그렇게 해서 flyway 지원을 성공적으로 했고, 공식 레포에 문의하여 PR을 통해 지원할 수 있게끔 요청을 남겼습니다. 하지만 문제가 PR이 언제 될지 모르고, 응답도 빨리 오지 않아 당장 사용하기가 힘들었습니다. 그래서 이 문제를 해결하기 위해 "우리가 작성한 코드를 라이브러리로 배포해보자" 라는 생각이 들었습니..
이번 주제는 github actions로 CICD를 적용하는 과정에서 발생한 문제를 공유하려고 합니다. 저는 서버를 배포하기 위해 AWS EC2 인스턴스를 사용해서 배포를 진행했습니다. CICD를 적용하는 방식에는 여러가지 방식이 있는데, 저는 SSH 방식으로 서버 내에서 빌드 & 배포를 진행하는 방식을 사용했습니다. 간단하게 SSH란, SSH는 Secure Shell의 줄임말로, 원격 호스트에 접속하기 위해 사용되는 보안 프로토콜입니다. 배포를 진행하면서 배포에는 필요하지만 외부에 공개되면 안되는 값들은 변수로 설정해 다른사람에게는 공개가 안될 수 있도록 처리해야 합니다. 제가 생각하기에 이러한 값들은 크게 2가지로 나눌 수 있다고 생각합니다.github actions가 CICD 동작 시에 기본적으로..
개발을 진행하다보면 팀 프로젝트를 하는 경우가 많다. 이때 혼자할때와는 다르게 팀원들간의 코딩 스타일을 맞추는 작업이 사전에 필요하다. 코딩 스타일이란 코드를 작성하는 방식에 대한 개인적인 기호를 뜻한다. 물론 코딩 스타일에 정답은 없지만, 이러한 스타일을 사전에 맞추는 것이 안정적으로 코딩하는데에 있어서 아주 중요하다. 저는 여러가지 코딩 스타일중 이번 장에서는 Case style(Naming Convention)에 대하여 다뤄볼 예정이다. Case Style ( 케이스 스타일) 이란? 케이스 스타일이란 코딩 스타일 중 일부로써 작명 규칙을 의미한다. 변수, 메서드, 클래스 등의 식별자의 작명 스타일을 의미한다. 대부분 언어마다 정해진 케이스 스타일이 존재한다. 대표적인 표기법으로는 다음의 5가지가 있..
요즘 실제 개발론으로 MVC 패턴을 많이 사용하고 있습니다. 그렇다면 왜 MVC 패턴을 많이 사용하는 것일까에 대한 의문이 들었고 그래서 이번 기회에 MVC 패턴에 대해서 공부를 해보고 정리하려고 합니다. MVC 패턴의 사전적 정의는 모델-뷰-컨트롤러(model–view–controller, MVC)는 소프트웨어 공학에서 사용되는 소프트웨어 디자인 패턴이다. 이 패턴을 성공적으로 사용하면, 사용자 인터페이스로부터 비즈니스 로직을 분리하여 애플리케이션의 시각적 요소나 그 이면에서 실행되는 비즈니스 로직을 서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있다. MVC에서 모델은 애플리케이션의 정보(데이터)를 나타내며, 뷰는 텍스트, 체크박스 항목 등과 같은 사용자 인터페이스 요소를 나타내고, 컨트..