CSE(58)
-
[Java Script] 함수와 프로토타입 체이닝 4
1. 프로토타입의 두 가지 의미 - 자바스크립트는 프로토타입 가븐의 객체지향 프로그래밍을 지원한다 - 자바스크립트는 클래스 개념이 없기 때문에 객체 리터럴이나 생성자 함수로 객체를 생성한다. => 이 때, 생성된 객체의 부모 객체가 '프로토타입' 객체이다. => 모든 객체는 프로토타입 객체를 가리키는 '암묵적 프로토타입 링크'([[Prototype]] 링크)가 있다 => 객체지향의 상속처럼 부모 객체가 가진 프로퍼티나 메서드 사용 가능 - 함수 객체의 prototype 프로퍼티와 객체의 숨은 프로퍼티인 [[Prototype]]을 구분해야 한다 => 이를 위해 자바스크립트의 객체 생성 규칙을 알아야 한다. => 모든 객체는 자신을 생성한 생성자 함수의 prototype 프로퍼티가 가리키는 프로토타입 객체를..
2021.08.05 -
[Java Script] 함수와 프로토타입 체이닝 3
- arugments 객체 뿐만 아니라 this 인자가 함수 내부로 암묵적으로 전달됨 - 함수가 호출되는 방식인 호출 패턴에 따라 this가 다른 객체를 참조한다 (this 바인딩) 1. 객체의 메서드 호출할 때, this 바인딩 - 메서드 : 객체의 프로퍼티가 함수인 경우 - 메서드를 호출할 때, 해당 메서드 내부의 this는 메서드를 호출한 객체가 된다. var myObject= { name : 'foo', sayName:function(){ console.log(this.name); } }; var otherObject = { name : 'bar' }; otherObject.sayName = myObject.sayName; myObject.sayName(); //foo otherObject.say..
2021.08.05 -
[Spring5입문] 의존 자동 주입
1. @Autowired 애노테이션을 이용한 의존 자동 주입 - 스프링의 자동 주입 기능을 사용하면 스프링이 알아서 의존 객체를 찾아서 주입한다. import org.springframework.beans.factory.annotation.Autowired; public class ChangePasswordService { @Autowired //의존을 주입할 대상에 @Autowired 애노테이션 추가 private MemberDao memberDao; public void setMemberDao(MemberDao memberDao) { this.memberDao = memberDao; } } //스프링 설정 파일 @Configuration public class AppCtx{ @Bean public M..
2021.08.04 -
[Spring5입문] 스프링 DI
1. 의존이란? - 의존 : 객체 간의 의존, 한 클래스가 다른 클래스의 메서드를 실행할 때, 이를 '의존'한다고 표현한다 ex) MemberRegisterService 클래스가 MemberDao 클래스의 메서드를 실행하면, MemberRegisterService 클래스가 MemberDao 클래스에 의존한다고 표현한다 - 가장 쉬운 방법은 의존 대상의 객체를 직접 생성하여 의존대상.메서드() 형식으로 사용하는 것 => 유지보수 관점에서 문제점 유발 가능 2. DI를 통한 의존 처리 - DI (Dependency Injection) : 의존 주입, 의존하는 객체를 직접 생성하는 대신 의존 객체를 전달받는 방식 사용 public class MemberRegisterService{ private MemberD..
2021.08.03 -
[Java Script] 함수와 프로토타입 체이닝 2
1. 함수의 다양한 형태 (1) 콜백 함수 - 익명함수의 대표적인 용도 - 개발자는 단지 함수를 등록하기만 하고, 어떤 이벤트가 발생하거나 특정 시점에 도달 시, 시스템에서 호출되는 함수를 말함 - 특정 함수의 인자로 넘겨서, 코드 내부에서 호출되는 함수를 말하기도 함 (2) 즉시 실행 함수 (immediate functions) - 익명함수를 사용함 - 이 경우, 해당 함수를 다시 호출할 수 없다 => 최초 한 번의 실행만을 필요로 하는 초기화 코드 부분 등에 사용 (function(name){ console.log('This is the immediate function => ' + name); })('foo'); - 대표적인 예시 : jQuery와 같은 자바스크립트 라이프러리나 프레임워크 소스들 =..
2021.08.02 -
[Java Script] 함수와 프로토타입 체이닝 1
- 자바스크립트에서 함수는 모듈화 처리나 클로저, 객체 생성 등 많은 기능을 제공한다. => 자바스크립트에서 가장 중요한 개념이기 때문에 제대로 된 이해가 필요하다. 1. 함수 정의 (1) 함수 리터럴 - 자바 스크립트에서는 함수도 객체처럼 값으로 취급된다. => 함수도 리터럴 방식으로 생성 가능 function add(x,y){ return x+y; } - 함수명은 선택사항이다. 함수명이 없는 함수는 익명 함수이다. (2) 함수 선언문 방식 - 반드시 함수명이 정의되어 있어야 한다. - 형태는 앞의 함수 리터럴 방식과 동일하다 (3) 함수 표현식 방식 - 함수 리터럴로 함수를 만들고, 해당 함수를 변수에 할당하는 방식 - 함수 이름은 선택사항이며, 보통 사용하지 않는다. - 익명 함수 표현식 var a..
2021.07.30