11:00-12:00 : E 힙어브덕션, 렛풀다운, 사레레,
16:00-18:00 : S
19:00-20:00 : W
20:00-24:00 : R
TODO
일월-여행 (Clarisse postpone)
화-(지라 관련자 옮겨놓기/..)
function createElement(type, props){
switch(type){
case "h1":
return [document.createElement('h1')]
.map(element=>{
Object
.entries({...props,"data-id":"title"})
.forEach([name,value]=>delement.setAttribute(name,value))
return element;
})[0]
case "div":
return [document.createElement("div")]
.map(element=>{
Object
.entries({...props,"data-id":"layout"})
.forEach([name,value]=>element.setAttribute(name,value))
return element;
})[0]
}
}
document.querySelector("#root").appendChild(createElement("h1",{}))
변경용이성 => 변경범위와 테스트 범위 같게 => 소프트웨어의 안정성, 구조적 안정성
어떤 것이 변화했을 때 개별함수만 변경할 수 있도록!!
function createH1(props){}
return [document.createElement('h1')]
.map(element=>{
Object
.entries({...props,"data-id":"title"})
.forEach([name,value]=>delement.setAttribute(name,value))
return element;
})[0]
function createDiv(props){
return [document.createElement("div")]
.map(element=>{
Object
.entries({...props,"data-id":"layout"})
.forEach([name,value]=>element.setAttribute(name,value))
return element;
})[0]
}
const createMap={
h1:createH1,
div:createDiv
}
function createElement(type, props){
return createMap(type)(props);
}