프레임워크
라이브러리:빌트인 함수가 아닌 함수들을 만들어서 자기 업무에 필요한것들을 모아놓은 파일
->현대 특정기능을 서포트해줌
프레임워크vs라이브러리
앵귤러vs리액트
프레임워크(강제성이 큼 하라는대로해야됨)vs내가원하는 기능을 가져다씀(자유도높음)
규모가 클수록 유리 vs 규모가 작을수록 유리
러닝커브가 가파름 vs 러닝커브가 가파르지않음
어플리케이션 전체 vs
모바일웹,네이티브모바일,데스크탑애플리케이션vs
용량이큼 vs 작음
전형적인일은 프레임워크가 해준다(로직개발에 집중한다)
html/css는 정적인상태에서 자바스크립트를 변화시킨다
(html/css가 js를 바라보게하자) html/css가 자바스크립가 된다(사실은 js다)
자바스크립트가 html/css를 변화시킨다(js가 html/css에 의존한다)
의존당하면 ->상위 요소가 변화가 생기면 의존당하는 친구에게도 영향을 받는다
{{}} <인터폴레이션 데이터바인딩 , (종류는 이벤트바인딩,클래스바인딩,어트리뷰트바인딩 등등이있다)
프레임워크, 라이브러리 왜쓰는데? 알아야 공부할 마음이 생기지 ㅡ>
안쓴상태에서 호되게 당해본다
공부를할때는 , 일단 바닐라 ->피철철 ㅡ> 리액트,앵귤러 ㅡ> (생산성1.5배) ㅡ>
어떻게 하면 잘 쓸 수 있는가? -> 연습 많이 만들기
앵귤러 -> spa를 위한 웹프레임워크다 ㅡ> 방대하기때문에 다알필요없다 당장써야될것부터
장점)
개발생산성 (공부한만큼 개발생산성↑)
-컴포넌트 기반개발(레고 블록) 재사용하겠다 ->css때문에 어려움
화면에 보이는실체 (html/css/js 묶인것) css를 캡슐화시켜서 어떤 컴포넌트에서 돌아가는
-typescript 사용
-개발 도구 통합, 개발환경 자동구축
-퍼포먼스 저하 해결 ->속도가 빨라졌다
-컴파일 옵션이 생겼다
-lazy loading으로 초기구동느린문제를 해결
-코드최적화
컴포넌트
@Component() 데코레이터 (7~8개 있음) 함수다
-컴포넌트로 동작하기 위한 것(셀렉터,템플릿,스타일)등을 인수로 줘야됨 -메타데이터
내가불려가면 프레임워크 vs 내가 부르면 라이브러리