728x90

분류 전체보기 430

[JavaScript] 깔끔한 조건문을 작성하는 방법

코드를 작성하다보면 조건문이 복잡해지는 (깊이가 깊어지는) 경우가 있다. 예를 들면 다음과 같은 경우이다. if( c { if (isOnline) { // 온라인시의 처리 makeReservation(); ... ... } else { // 오프라인시의 처리 alert('오프라인입니다.'); } } After const checkConnection = (isOnline) => { if (!isOnline) { alert('오프라인입니다.'); return; } // 온라인시의 처리 makeReservation(); ... ... } 삼항연산자 사용하기 삼항연산자 사용하여 가독성을 높일 수 있다. Before const checkAge = (age) => { if (age > 18) { console.lo..

IT/언어 2023.02.27

[Vue.js/Vuetify] v-select 사용법

Vuetify(Vue UI 라이브러리)를 이용해서 셀렉트 박스를 구현하는 경우 v-select 컴포넌트를 사용한다. 사용법은 간단하며, 셀렉트 박스를 두고 싶은 곳에 v-select 컴포넌트를 기재하면 된다. 위의 select 요소라는 option 요소나 Vuretify의 속성을 추가하는 것으로 셀렉트 박스를 구현해나간다. v-select로 셀렉트 박스 구현하기 실제로 v-select 컴포넌트로 셀렉트 박스를 구현해보자. 여기서는 v-select에서 자주 사용되는 옵션 리스트의 설정, 라벨의 설정, 스타일의 변경, input의 높이를 낮게 하는 방법 등에 대해서 소개하도록 하겠다. 옵션 리스트를 설정하기 옵션 리스트는 v-select의 items 속성의 값에 배열을 지정하여 설정한다. select 요소에..

IT/언어 2023.02.20

[Vue.js] props의 데이터를 변경하는 방법(Avoid mutating a prop directly에러)

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. 부모 컴포넌트에서 props으로 건내 받은 변수를 자식 컴포넌트에서 갱신하고 싶을 때 대처법에 대해서 기록하고자 한다. 인트로 Vue.js는 부모 컴포넌트에서 전달된 변수를 자식 컴포넌트에서 갱신하려고 하면 아래와 같은 경고가 발생한다. [Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or computed property based on the prop's value. Prop..

IT/언어 2023.02.19

클린 아키텍처2

※ 일본의 블로그 글을 번역한 포스트입니다. 오역 및 직역, 의역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. 지난 클린 아키텍처1에 이어서 두 번째 그림에 대해 해설하기 위한 포스팅이다. 클린 아키텍처1에서 만든 코드를 위와 같은 그림으로 표현하자면 다음과 같다. 박스 위에 글자가 있는 것이 있는데 는 Interface고, 는 Data Structure(데이터구조체)이다. 대체로 그림대로 재현하고 있지만 유일하게 외부쪽 환경에서 UserCreateViewModel에 의존하는 View가 재현되지 못 했다. 이번 스크립트는 Presenter가 ViewModel를 다뤄, Consol 표현을 하고 있으므로 원래 View의 역할을 Presenter가 하고 있는 형상이 됐다. 이 부분을 어떻게 하면..

IT/WEB 2023.02.15

클린 아키텍처1

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주면 감사하겠습니다. 클린 아키텍처의 가장 추정적인 것이라고 한다면 바로 이 그림일 것이다. 따라서 이번 포스팅에서는 샘플코드와 함께 이 그림에 대해 해설해보고자 한다. 샘플 코드 https://github.com/nrslib/CleanArchitecture 언어는 C#이다. 프로젝트 구성등 실제의 제품과 동일한 형식으로 기재되어 있기 때문에 괜찮다면 참고하길 바란다. 원 그림의 해설 원 그림은 레이어를 의미한다. 레이어의 이름은 이 위치에 기재되어 있다. 그럼 하나 하나 설명하도록 하겠다. Enterprise Business Rules 노란색 레이어인 Enterprise Business Rules는..

IT/WEB 2023.02.13

[Java] setter, getter

※ 일본의 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. setter, getter이란? setter, getter이란 java 개발자들 사이에 널리퍼진 암묵적 코드 규약으로, 클래스 안에 변수를 세팅, 획득하기 위한 전문 메소드를 의미한다. 즉, 변수를 세팅하기 위한 메소드가 setter 메소드, 변수를 획득하기만 하는 메소드는 getter 메소드이다. 실제 코드 작성 방법, 명명 규약에 대해서는 입문 서적에 잘 설명되어 있지만, 다음과 같이 쓰는 것이 setter/getter이다. public class sample { private String name; // gettter public String getName() { return..

IT/언어 2023.02.11

[Java] Java에서 쓰는 Builder 패턴 종류

※ 일본의 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 직역해주시면 감사하겠습니다. Builder 패턴이란? 컨스트럭터에 대해 수 많은 파라미터를 세팅할 필요가 있을 때에 대신해서 사용하도록 추전되는 구현 방법이다. 그러나 이것이 추천되는 것은 컨스트럭터에 설정되어 있는 파라미터 중 필수인 요소가 적을 때에 한정되는 것 같다. 아무튼 용도에 따라 몇 가지 패턴이 있으므로, 여기에서 정리하고자한다. 생성하는 오브젝트의 조건 클래스명 : People 필드 : String name(필수), Integer age(필수), String hobby(옵션) 필수 요소는 null 금지 People 클래스는 String을 반환값으로 하는 hello메소드가 존재 이번에는 Build..

IT/언어 2023.02.10

Mac의 Termianl에서 "ssh 접속명"으로 ssh 접속하기

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. 시작하기에 앞서 서버에 접속할 때 매번 아래와 같이 커맨드를 입력하여 접속하는 것은 매우 불편하다. $ ssh 유저명@호스트명 -i 비밀키 파일 경로 -p 포트번호 따라서 아래의 짧은 커맨드만으로도 ssh 접속이 되도록 설정하는 방법에 대해 설명하고자 한다. $ ssh 접속명 전제 조건 접속 정보(호스트명, 유저명, 포트 번호)를 알고 있을 것 SSH 비밀키를 가지고 있을 것 둘 중 하나라도 충족되지 않으면 이 방법을 설정할 수 없다. 접속하기 1. ~/.ssh 디렉토리 생성 # 디렉토리 생성하기(이미 있다면 skip) $ mkdir ~/.ssh # 소유자에 읽기, 쓰기, 실행..

IT/기초 지식 2023.02.08

[JavaScript] Map 오브젝트와 map 메소드의 사용법

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 의역, 직역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. JavaScript에 있어서 여러 개의 값을 다룰 때에 쓸 수 있는 것이 "배열"이다. 그러나 배열에서는 항목에 이름을 붙이고 싶은 경우가 있을 것이다. 그럴 때 사용할 수 있는 것이 "Map 오브젝트(연관 배열)"이다. 또한, JavaScript의 배열을 다루기 위한 편리한 메소드로는 "map" 메소드가 있다. 양쪽 모두 이름에 "map"이 있으므로, 프로그래밍 초심자의 경우 혼동하기 쉽다. 이번 포스트에서는 map메소드와 Map오브젝트의 차이나 사용법을 포함해 상세하게 해설하고자한다. Map 오브젝트 JavaScript에 있어서 Map 오브젝트는 키와 그에 대응하는 값을 보..

IT/언어 2023.02.06

[JavaScript] Promise의 사용법 ( + asycn / await의 사용법 )

※ 일본의 한 블로그 글을 번역한 포스트입니다. 오역 및 직역, 의역이 있을 수 있으며 틀린 내용은 지적해주시면 감사하겠습니다. JavaScript의 async/await는 Promise를 사용한 비동기 코드를 동기 처리처럼 해주지만, async/await를 이해하기 위해서는 Promise를 먼저 알아둬야할 필요가 있다. 따라서 Promise에 대해서 알아보자. 구문 먼저 기본적인 구문이다. 어떻게 Promise를 작성하는 것일까? function 비동기함수(성공시의 콜백, 실패시의 콜백) { if (...) { 성공시의 콜백(성과) } else { 실패시의 콜백(문제) } } // ↓executor new Promise(function (resolve, reject) { 비동기 함수( (성과) => r..

IT/언어 2023.02.05
728x90