전체 글 (88) 썸네일형 리스트형 [MYSQL] SELECT 활용 https://www.yes24.com/Product/Goods/106207663?pid=123487&cosemkid=go16427480740880574&gad_source=1&gclid=Cj0KCQiA4NWrBhD-ARIsAFCKwWvoO8x0hg2ZmO7p-bcgN7IiuhmVyXf_TOFbsUV7JSAnf49KC2MOgBYaAp1SEALw_wcB SQL 쿡북 - 예스24 SQL 언어를 마스터하기 위한 마지막 필독서SQL을 유연하게 사용하기 위해서는 기본적인 내용뿐만 아니라 다양한 표현식을 잘 알아야 한다. 『SQL 쿡북: 모든 SQL 사용자를 위한 쿼리 완벽 가이드』 www.yes24.com 공부한것을 정리한 내용입니다. 시나리오 1 예를들어 부서20번에 속한 모든 사원의 급여를 10%인상시키고 싶.. 클로저(closure) 중첩함수 예제코드를 보면 foo()함수 내부에 있는 bar()함수에 Outer environment reference가 담겨져서 리턴된다. foo()함수가 호출스택에 실행되면 내부에 있는 bar()함수에 담겨져 있던 Outer environment reference이 리턴되어서 x=1을 참조해 콘솔을 실행한다. 정리하면 중첩함수인 bar()함수가 외부에 있는 foo()함수를 상위스코프로 결정한다. 그래서 상위스코프인 foo()함수를 참조해서 x=1이 출력된 것 var outer = function() { var a = 1; var inner = function() { return ++a; }; return inner; } var outer2 = outer(); console.log(outer2()); c.. [모던 자바스크립트 Deep Dive] 함수선언부 함수표현식 호이스팅 sub 변수에 함수리터럴 할당 이전에 변수를 참조하면 변수 호이스팅에 의해 undefined로 평가된다. 즉 함수 표현식은 함수 호이스팅이 발생하는게 아니라 변수 호이스팅이 발생하는 것 함수리터럴이 할당되는 시점부터 함수객체로 되어 변수호이스팅이 아닌 함수 호이스팅으로 평가한다.console.dir(add); // f add(x,y) console.dir(sub); // undefined console.log(add(2,5)); // 7 console.log(sub(2,5)); // TypeError: sub is not function // 함수 선언문 function add(x,y){ return x+y; } // 함수 표현식 - 함수호이스팅x 변수호이스팅o // 함수표현식 할당전이라 함수호이스팅이 .. 모던자바스크립트 Deep Dive - this https://www.yes24.com/Product/Goods/92742567 모던 자바스크립트 Deep Dive - 예스24 『모던 자바스크립트 Deep Dive』에서는 자바스크립트를 둘러싼 기본 개념을 정확하고 구체적으로 설명하고, 자바스크립트 코드의 동작 원리를 집요하게 파헤친다. 따라서 여러분이 작성한 코드 www.yes24.com 공부하면서 정리한 글입니다. this는 자신이 속한 객체 또는 자신이 생성할 인스터를 가리키는 자기 참조 변수 self-referencing variable다. this를 통해 자신이 속한 객체 또는 자신이 생성할 인스턴스의 프로퍼티나 메서드(함수)를 참조할 수 있다. 여기서 프로퍼티는 객체의 집합이며 키와 값으로 구성되어 있다. ex) var book = { tit.. 책 내 코드가 그렇게 이상한가요? - 응집도(cohension) 내 코드가 그렇게 이상한가요? - 예스24 (yes24.com) 내 코드가 그렇게 이상한가요? - 예스24예약 판매부터 1만 부 돌파! 일본 아마존 IT 분야 베스트셀러개발자가 직접 선정한 〈IT 엔지니어 도서 대상 2023〉 기술서 부문 대상공감 100% 나쁜 코드 사례로 배우는 지속 가능한 코드 설계 입문www.yes24.com이 책을 읽고 공부한 것들을 올렸습니다. 응집도(cohension)란 모듈 내부에 있는 데이터와 로직 사이의 관계가 얼마나 강한지 나타내는 지표이다. 응집도가 높으면 변경하기 쉽고 응집도가 낮으면 변경시 문제가 발생이 된다. 응집도를 높이는 방법에는 인스턴스 변수와 인스턴스 변수를 사용하는 로직을 같은 클래스에 만드는 것이 있다. 정보처리기사 실기 공부 할 때 응집도는 높게 결.. 책 코어 자바스크립트 - 호이스팅 environmentRecord에는 현재 실행될 컨텍스트의 대상 코드내에 어떤 식별자들이 있는지에만 관심 있고 각 식별자에 어떤값이 할당될 것인지는 관심이 없다. 식별자 a의 인자에 3을 넣든 5를 넣든 결과는 똑같다. function a() { var x; var x; var x; x = 1; console.log(x); console.log(x); x = 2; console.log(x); } a(3); // 답은 1,1,2가 나온다 변수는 선언부만 끌어올린다(호이스팅) 여기서는 변수 b가 밑에서 함수 선언을 한 b를 끌어올린다. function a() { console.log(b); var b = 'bbb'; console.log(b); function b() {} console.log(b); } a.. 헤드퍼스트 디자인패턴 - 상태 패턴(State Pattern) 상태패턴(State Pattern)이란 객체의 내부 상태가 바뀜에 따라서 객체의 행동을 바꿀 수 있다. 마치 객체의 클래스가 바뀌는 것과 같은 결과를 얻을 수 있다. 여기서는 뽑기 기계에 게임기능을 추가하고 (10%의 확률로 알맹이를 하나 더받는 이벤트) 이라는 스티커를 붙여서 광고할 계획이다. 하지만 코드 추가를 하면 점점 복잡해진다 그래서 공통 상태의 별도의 하나의 상태 State라는 인터페이스로 만들고 그것을 구현하는 식으로. 즉 캡슐화로 만들 것이다. 여기서 캡슐화란 ? 객체지향프로그래밍에서의 중요한 특징 중 하나로, 연관된 데이터와 함수를 논리적으로 묶어놓은 것이며, 데이터를 보호하기 위해 다른 객체의 접근을 제한하는 접근 제한 수식자의 기능을 제공한다. (두산백과)상태State들을 클래스로 만.. 헤드퍼스트 디자인패턴 - 데코레이터 패턴(Decorator Pattern) 예를들어 커피주문을 할 때 사용자의 원하는 기호에 따라 시럽을 넣기도 하고 크림을 더 추가할 수 있다 이럴때 클래스를 상속하고 또 상속을 하면 끝이 없다 그래서 클래스를 추상클래스로 만들 필요가 있다.public abstract class Beverage { String description = "제목없음"; public String getDescription() { return description; /* 커피 새 메뉴 이름 description 리턴 */ } public abstract double cost(); /* 커피 새 메뉴 가격 리턴 */ } 추상클래스를 만들어서 새 메뉴가 추가되면 추상클래스와 새메뉴클래스를 하나로 감싸고 메뉴 이름과 가격을 리턴을 한다. 기존 코드를 건드리지 않고 디자인패.. 이전 1 ··· 8 9 10 11 다음