바닐라 자바스크립트란 "외부 라이브러리나 프레임워크를 쓰지 않는 순수 JavaScript"를 이르는 말
외부 도구에 의존하지 않기 때문에, 다른 라이브러리나 프레임워크를 사용했을 때보다 성능이 빠르며 호환성이 우수.
* 바닐라 스크립트의 장점
1. 디버깅
바닐라 JS로 작성된 코드는 디버그 시 "해당 코드만을 조사"함. 즉, 라이브러리 종속성으로 인한 복잡성이 줄어든다. 라이브러리를 통해 만든 구문은 디버그를 할 때 해당 구문뿐 아니라 라이브러리 파일 안을 몇 바퀴 돌고 오는 일도 있다.
2. 연산시간
불필요한 라이브러리 호출이 없기 때문.
3. 종속성 없음
외부 라이브러리나 프레임워크에 의존하지 않기 때문에, 해당 라이브러리나 프레임워크의 업데이트나 변경에 영향을 받지 않음.
4. 빠른 로딩 시간
추가적인 라이브러리나 프레임워크를 로드할 필요가 없으므로 로딩 시간이 단축됨.
* 바닐라 스크립트의 단점
1. 코드 양
복잡한 웹 애플리케이션을 개발하는 경우 많은 코드를 작성해야 할 수도 있음.
2. 특정 기능을 구현하기 위한 방법을 처음부터 찾아야 함.
라이브러리나 프레임워크는 빠르게 프로토타이핑이나 개발을 할 수 있게 도와줌.
* 라이브러리/프레임워크의 장점
1. 대부분의 라이브러리나 프레임워크는 이미 많은 테스트를 거쳐 안정성이 검증.
2. 코드 재사용
라이브러리나 프레임워크는 반복적인 작업을 간소화하고 효율성을 높임.
3. 커뮤니티 지원
문제 해결이나 새로운 기능 구현에 지원을 받기 쉬움
* 라이브러리/프레임워크의 단점
1. 새로운 라이브러리나 프레임워크를 학습하는데 시간이 필요.
2. 종속성 관리
라이브러리나 프레임워크의 업데이트 또는 변경사항이 프로젝트에 영향을 줄 수 있으며, 종속성 간의 충돌 문제도 발생할 수 있음.
3. 과도한 추상화
때로는 라이브러리나 프레임워크의 추상화 레벨이 너무 높아져, 사용자가 실제로 어떤 작업이 수행되는지 파악하기 어려움.
-> 각각의 장단점들을 고려해 효율성, 유지보수성, 확장성, 장기적인 비용 등에 맞게 사용하면 된다.
'개인공부 > etc' 카테고리의 다른 글
네이밍 문법(camelCase, snake_case, kebab-case) (0) | 2023.09.09 |
---|---|
Optimistic UI 란? (0) | 2023.08.27 |
이미지 스프라이트 형식 활용법 (0) | 2023.07.31 |
이미지 스프라이트(image sprite) ? (0) | 2023.07.24 |
favicon(파비콘)이란 ? (클론코딩 시 파비콘 다운, 적용 방법) (0) | 2023.07.24 |