본문 바로가기

반응형

분류 전체보기

(52)
Refactoring 아래 내용은 Clean code내용을 주로 기반으로 하였다. 이 책의 저자도 본인이 무조건 옳다고 주장하는 것은 아니므로, 단순히 의견으로만 받아들이고, 고민할 수 있는 내용이 되었으면 한다. Refactoring Reafctoring Introduction What is Refactouring? 외부 동작(소프트웨어의 관찰되는 동작)은 유지한 채, 내부 구조를 변경하는 것이다. 즉, 리팩토링은 사용자들이 몰라도 상관 없다. 개발자가 리팩토링을 하는 목적은 소프트웨어를 이해하기 쉽고, 수정용이하도록 변경하는 것이다. 우선, 무엇인지 알아본 후에 왜 해야하는지 다시 초첨을 맞춰보자. Two Hats - Kent back 이 이론은 하나에만 집중하라는 데, 중점을 두라는 뜻이다. 리팩토링이라는 모자와 기능구..
Design Pattern Design Pattern Introduction Table of Contents 1. What is Design Pattern? 2. Why do we use patterns? 3. Part Rule of Design Pattern 4. Category of GoF Patterns 5. Levels of Patterns [POSA] 6. MVC Pattern 1. What is Design Pattern? 건축학의 개념을 차용하였다. 건축학에서는 도시 계획이나 건물 디자인 절차에 대해서 연구했다. 그리고 전문가들은 자주 발생하는 문제들, 그리고 그것을 해결하기 위한 방법들을 정리하였다. 이는 프로그래밍에서도 똑같이 적용할 수 있다. 그리고 자주 발생하는 문제들에 대해서는 이미 누군가는 겪었던 문제들이다..
[맥] 추가 설치없이(karabiner없이), 오른쪽 커맨드로 한영키 전환 [Mac] Change the right command key to kor/eng function without install files (ex. Karabiner) M1 맥을 사용할 때, 부팅할 때 아래 에러가 계속 발생했다. karabiner 때문이라는 것을 알게되어 앱을 제거하고 다른 방법을 찾아보기로 하였다. 내장 된 앱 hidutil 을 사용하여 별도의 어플리케이션 설치없이도 키맵핑을 변경할 수 있다. 우선, 현재 PC에서 hidutil이 동작하는지 아래 명령어로 확인해보자. Terminal(커맨드라인 어플리케이션) 실행 hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc": 0x7000000E7,"HIDKeybo..
[React] 리액트 빈 프로젝트 만들기 리액트 시작하기 Getting started with React (node@16, TypeScript) React는 무엇인지 알아보고 시작하도록 하자. Javascript 언어를 기반으로 한, 유저 인터페이스를 개발하기 위한 Library Framework가 아닌 Library 이다. Framework라 함은 정해져있는 틀들을 반드시 구성한 다음, 우리가 필요한 기능을 구현해야하지만, React의 경우는 우리가 필요한 기능만 가져다 쓰면 된다. VDOM(Virtual Document Object Model, 이하 VDOM) 사용한다. VDOM은 가상적인 표현을 메모리에 저장하고, 실제 DOM에 동기화하는 프로그래밍의 개념이다. 쉽게 말하면, 복잡한 변화가 있을 때, DOM은 계산하고 리렌더링을 해야한다...
nodenv 이용해서 npm 설치하기 ※ nodenv란? (What is nodenv) 우선 nodenv는 node version control system 이다. 한 피씨에서, 여러 노드 버전을 이용하기 위해서 사용하는 것이다. 한 프로젝트만 진행하는 경우에는 별 상관이 없지만, 여러 프로젝트를 동시에 진행하다보면, npm version dependencies가 생기기 마련이고 이를 해결하기 위함이다. ※ node install --global 에러 해결 방법 Permission error Missing write access to /usr/local/lib/node_modules 1차원적으로는 sudo 권한주면 해결 될 것 같은데, 따로 폴더 만들어서 관리하는 것을 추천 docs.npmjs.com/resolving-eacces-permi..
팀 회식 오늘은 회사에서 신규 서비스 오픈기념 회식이었답니다. 3시에 칼퇴하고 술마시러 고고고 ~_~ 간장 반, 고추장 반 진짜 핵존맛 다이어트 중인데, 멸망으로 가는 중 ㅋㅋㅋ 나도 레시피 받아서, 다음에 해봐야겠다고 생각 저거랑 치킨 두마리 해서 먹었다. 저것도 양이 꽤 되서, 딴 거 못먹겠더라 그리고 새로오신 선배님도 계신데, 처음 같이 술먹었는데 너무 재밌으셨음 ㅋㅋ 그렇게 10시까지 놀다가 다들 파함 집갈 땐 선배님 집가는 길 택시 얻어타고 편하게 왔다.
제주도 여행(210516) 1일차 코로나 시국 제주도 여행 시작합니다. 시작 전에 숙소,렌트 정보만 먼저 공유하면 에어비앤비 (https://abnb.me/fld4msNSpfb) 그린카 (코나 전기차 렌트(반값 쿠폰 적용)) 사실 이 사진 이전에, 공항까지 가다가 비행기를 놓쳤다... 살면서 비행기 놓치는 흑우가 있나라고 생각했는데, 여기 있었음 엌ㅋㅋ 실화냐? 뇌절 오졌다 정말 다시 생각해도 끔찍 다음엔 30분 미리미리 도착해서 이런 일 없도록 하자... 간단히 전체 일정을 소개하면, 우리는 3일 간 제주도에 머무를 계획이며, 서부 지역에만 머무르기로 했다. 둘 둘 씩, 두 팀으로 이동했는데 (내가 늦어서 자동으로 나뉨) 먼저 간 팀은 렌트카(코나 전기차 대여)받은 다음 기다릴 겸 우무 푸딩사러 다녀왔다. 여기 웨이팅 1시간이었음 그리..
[JavaScript] 배열 합치는 방법과 속도 비교 [JavaScript] how to combine array and what is the fastest method 우선 두 배열을 합치는 방법에 대해서 알아보자. 방법은 아래와 같이 3가지 방법이 있다. 1. concat() var existed = [ 1, 2, 3 ]; var params = [ "hello", true, 7 ]; var other = existed.concat(params); 2. spread operator (...) var existed = [ 1, 2, 3 ]; var params = [ "hello", true, 7 ]; var other = [ ...existed, ...params ]; 3. spread operator and push (얘가 젤 빠름, 테스트는 아래 링..