티스토리 뷰
퍼사드 패턴은 API에 최소한의 정보만 보여주는 것이다.
따라서 함수이름만 가지고도 무슨 기능을 하는지 알 수 있게 하는 게 중점이다.
import { getWelcomeTemplate, isValidEmail, sendEmail2DB } from "./email.js";
function createUser({name, age, school, email}){
// 1. email이 정상인지 확인(eamil 존재 여부, @포함여부)
if(isValidEmail())){ // <----- 함수이름만 봐도 역할을 안다.
console.log("이메일 다시 쓰세요");
}else{
getWelcomeTemplate({name, age, school});// <----- 함수이름만 봐도 역할을 안다.
sendEmail2DB();// <----- 함수이름만 봐도 역할을 안다.
}
}
//----------------------------------------------------------------
const myuser = {
name :"철수",
age : 8,
school : "람쥐초등학교",
email : "a@a.com"
}
createUser(myuser);
반면 추상화는 자식객체를 만들 때 원형을 다시 특정하지 않고 부모와 같은 추상클래스를 쓴다. (JAVA)
// 동물 추상 클래스
public abstract class Animal {
public String kind;
public void breath(){
System.out.println("숨 쉰다.");
}
//추상메서드
public abstract void sound();//구체적인 구현부는 없음!
}
// 동물 추상클래스를 부모로 하는 개 클래스
package ABSTRACTCLASS;
public class Dog extends Animal{
public Dog(){
this.kind = "포유류";
}
@Override
public void sound() {
System.out.println("왈왈!");
}
}
// 동물 추상클래스를 부모로 하는 고양이 클래스
package ABSTRACTCLASS;
public class Cat extends Animal{
public Cat(){
this.kind = "포유류";
}
@Override
public void sound() {
System.out.println("야옹!");
}
}
참고 링크
What is the difference between an Abstraction and a Facade?
What is the difference between an 'Abstraction' and a 'Facade'? Is there a difference at all? Or are the terms interchangeable?
stackoverflow.com
'개발자 > 그냥 js' 카테고리의 다른 글
구조분해할당, Destructuring assignment (0) | 2022.01.12 |
---|---|
var let const 차이점 그리고 호이스팅 (0) | 2022.01.12 |
선언, 초기화, 할당 차이 (0) | 2022.01.12 |
reduce란 (0) | 2022.01.12 |
Filter란 (0) | 2022.01.11 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Callback
- 백틱
- elasticsearch
- axios
- js
- arrow
- 독커
- Spread
- 콜백
- NPM
- error
- 도커
- 프로그래머스
- 공부법
- yarn
- GraphQL
- typeorm
- Rest
- 에러
- 코드캠프
- nodemon
- 호이스팅
- arrowfunction
- function
- 코딩습관
- Playground
- docker
- postman
- Console
- 명령어
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
글 보관함