분류 전체보기

이번 3주차에도 어김없이 수요일날 과제메일이 도착했다. 메일을 쭉 읽다가 잘 이해가 가지 않았다. 클래스(객체)를 분리하는 연습??????????? 클래스를 어떤 기준으로 분리하지 ? 함수처럼 분리하는 것인가 ? 명확하게 이해가 되지않아서 일단 무작정 찾아보았다. 그런데 그중에서도 아래 영상에서 해답을 찾을 수 있었다. 이 아래의 글은 "[OKKYCON: 2018] 박재성 - 의식적인 연습으로 TDD, 리팩토링 연습하기" 영상을 정리한 글 입니다. 의식적인 연습이란 ? 연습을 많이 하면 실력이 높아질 것이라고 생각 끊임없이 연습, 연습, 연습 하지만 무조건 연습한다고 실력 늘지 않는다. 1차 프로그래머와 10년차 프로그래머가 있을 때 진짜 10년차 프로그래머가 프로그램 역량이 더 뛰어나다고 장담할 수 있..
TDD Test-deriven development (테스트 주도 개발) 1. 개념 개발(코드 작성)전 테스트 코드를 먼저 작성하는 개발 방식 또는 개발 방법론중 하나 2. TDD하는 방법 코드를 작성하기 전에 특정한 기능에 한해서 기능을 조금 더 세분화 해서 딱 하나의 케이스의 대해서 테스트를 코드를 먼저 작성한다. 테스트 수행하는데 당연히 실패함 왜냐 ? 아직 기능을 구현하지 않았기 때문이다. 따라서 이 실패한 테스트가 성공할 정도의 조금의 양만 하는 코드를 작성해서 테스트를 다시 수행해서 성공하도록 만든다. 이렇게 하나의 테스트가 완성이되면 다음 기능으로넘어가서 그 기능에 해당하는 테스트를 작성하고 테스트를 수행해서 실패하면 이 실패한 코드가 성공할 수 있을 만큼의 코드를 작성해서 다시 테스트를 수..
우아한테크코스의 자바스크립트 스타일 가이드는 Airbnb 자바스크립트 스타일 가이드를 기준으로 하기에 Airbnb 자바스크립트 스타일 가이드 기준을 보고 이해를 바탕으로 필사하였으며 경중에따라 가감하였습니다. 처음 프로젝트 시작하기전 module.exports를 오랜만에봐서 정말 생소했다. 원래 import / default export 만써서 그런 것 같다. 그래서 이틀전에 module에 대해 다시한번 정리하니 확실히 이해가 잘 되었고 그 이해한 상태에서 style guide를 보니 훨씬 편했다. Module 정리 모듈 (Modules) 1) 항상 모듈(import/ export)을 비표준 모듈 체계 대신 사용하세요. 언제든 선호하는 모듈 시스템으로 트랜스파일할 수 있습니다. why? 모듈은 미래입니다..
우테코 프리코스 과제를 하다가 기능요구사항에 이런 조건이 있었다. 사용자가 잘못된 값을 입력한 경우 throw문을 사용해 예외를 발생시킨후 애플리케이션은 종료되어야 한다. if 문과 return으로 함수를 끝내면 되지 않나 ? throw는 뭐가 다른걸까? 라는 생각이들었다. 먼저 공식문서를 찾아보았다. 1. Throw 개념 throw문은 사용자 정의 예외를 발생(throw)할 수 있습니다. 예외가 발생하면 현재 함수의 실행이 중지되고 throw 이후의 명령문은 실행되지 않습니다. 제어 흐름은 콜스택의 첫 번째 catch 블록으로 전달됩니다. 호출자 함수 사이에 catch 블록이 없으면 프로그램이 종료됩니다. function getRectArea(width, height) { if (isNaN(width)..
우아한테크코스의 자바스크립트 스타일 가이드는 Airbnb 자바스크립트 스타일 가이드를 기준으로 하기에 Airbnb 자바스크립트 스타일 가이드 기준을 보고 이해를 바탕으로 필사하였으며 경중에따라 가감하였습니다. 클래스 & 생성자 (Classes & Constructors) 1) prototype 을 직접 조작하는것을 피하고 항상 class 를 사용하세요. 왜? class 구문은 간결하고 의미를 알기 쉽기 때문입니다. // bad function Queue(contents = []) { this.queue = [...contents]; } Queue.prototype.pop = function () { const value = this.queue[0]; this.queue.splice(0, 1); retur..
피드백이란 항상 어렵다. 직장에서도 친구끼리도 심지어 가족끼리도 말이다. 정말 말의 힘이 강하기 때문에 항상 조심해야한다. 남을 위한다고 한 말이 그 사람의 평생 상처로 남을 수 도 있기에 정말 조심해야한다. 특히 피드백이란 더 어렵다 . 어떤 피드백을 줄지 고민하는 것 이전에 피드백을 잘 주는 방법을 먼저 배워야한다. 이런 고민을 하던중 좋은 글을 보아서 공유하고자 글을 남겨본다. 상처 받지 않으면서 피드백 주고 받기 - 매일경제 미라클레터 피드백이 지나야 하는 두 관문 세스 베스머트닉은 컨덕터라는 마케팅 회사를 창업한 사람이에요. 2018년 이 회사를 위워크에 팔았다가 위워크의 리더십에 문제가 발생했을 때 다시 회사를 사들인 특이한 경력을 가지고 있어요. 세스는 2008년부터 CEO로 일했는데 직원들..
우아한테크코스의 자바스크립트 스타일 가이드는 Airbnb 자바스크립트 스타일 가이드를 기준으로 하기에 Airbnb 자바스크립트 스타일 가이드 기준을 보고 이해를 바탕으로 필사하였으며 경중에따라 가감하였습니다. 객체(Objects) 1) 객체를 생성할 때는 리터럴 문법을 사용하세요. // bad const item = new Object(); // good const item = {}; 2) 동적 속성을 갖는 객체를 생성할 때는 속성 계산명을 사용하세요. why? 이렇게 하면 객체의 모든 송석을 한 곳에서 정의할 수 있습니다. function getKey(k) { return `a key named ${k}`; } // bad const obj = { id: 5, name: 'San Francisco', ..
우아한테크코스의 자바스크립트 스타일 가이드는 Airbnb 자바스크립트 스타일 가이드를 기준으로 하기에 Airbnb 자바스크립트 스타일 가이드 기준을 보고 이해를 바탕으로 필사하였으며 경중에따라 가감하였습니다. 함수/변수/클래스명 등 이름만 보고 이해할 수 있을 정도로 의미있는 이름으로 명명하고 최대한 주석은 지양해야하지만 꼭 필요한 경우는 적재적소에 사용해야한다 그렇다면 그런 상황이 온다면 어떻게 사용해야 할까 ? 주석 (Comments) 1) 여러 줄에 걸친 주석을 쓸 때는 /** .... */ 을 사용하세요. // bad // make()는 전달된 태그명을 기반으로 // 새로운 요소를 반환한다. // // @param {String} tag // @return {Element} element func..
우아한테크코스의 자바스크립트 스타일 가이드는 Airbnb 자바스크립트 스타일 가이드를 기준으로 하기에 Airbnb 자바스크립트 스타일 가이드 기준을 보고 이해를 바탕으로 필사하였으며 경중에따라 가감하였습니다. 과연 우리가 함수를 사용할 때 올바르게 쓰고 있는지 의문을 가진적이있다. 기명함수? 무기명함수 알고는 있지만 정확히 언제쓰고 어떻게 쓰면 사이드 이펙트가 생길확률이 높은지 등등 함수를 어떻게 하면 효율적으로 사용할 수 있는지 기본적인 것들이 정리되어있어서 참 유용해서 기록을 남겨본다. 1. 함수 1) 함수선언식 대신 기명 함수표현식을 사용하세요 why? 더보기 why? // bad function foo() { // ... } // bad const foo = function () { //... }..
개발자성장기
'분류 전체보기' 카테고리의 글 목록 (16 Page)