부트스트랩은 미리 정의된 HTML, CSS JS를 모아서 버튼, 캐러셀 등의 많은 것들이 만들어져 있는 것이다. 부트스트랩의 클래스를 활용하여 빠르게 디자인 할 수 있다.
Tailwind CSS는 Utility-First 컨셉을 가진 CSS 프레임워크로 클래스에 m-1, flex 등의 다양한 이름을 붙여 HTML 내에서 개발하는 방식이다.
Scss는 CSS 전처리기로 CSS를 편리하게 사용할 수 있도록 하며 추가 기능이 있는 확장판 언어이다. 변수, 중첩, mixin사용이 추가되어 더 쉽게 스타일링 할 수 있다.
styled-components는 CSS in JS 개념으로 JS의 장점을 취하면서 CSS로 스타일링할 수 있는 방식이다.
CSS만을 사용하면 글로벌 네이밍을 신경써야 하므로 큰 프로젝트 일수록 겹치게 클래스를 만들면 안되어 불편하고 코드 유지보수에 이점이 없다.
JS상에서 CSS를 적용하면 JS코드에서 사용하고 있던 상수나 변수를 CSS코드에 쉽게 사용할 수 있고 컴포넌트내에서 props로 받을 수도 있다. 또한 조건부 스타일링이 쉽다.
Bootstrap vs Tailwind CSS
둘 다 CSS프레임워크이지만 Bootstrap은 사전정의된 디자인 템플릿을 사용해서 편리하지만 사용자 정의된 스타일을 만들기에는 Tailwind CSS가 더 낫다.
미리 디자인이 정의되어 있는지 안되어 있는지 차이가 가장 크다.
styled-components vs Tailwind CSS
styled-components는 자바스크립트를 사용하여 사용자 정의 CSS를 작성할 수 있는 React CSS in JS 프레임워크이다. Tailwind CSS를 사용하면 클래스가 아닌 축약된 클래스를 사용하여 UI를 만들 수 있다.
React에서 개발할 때에는 styled-components를 사용하는 것이 좋다.
styled-components는 props를 넘겨서 디자인을 할 수 있고 만든 컴포넌트를 재사용할 수 있다.
Tailwind CSS는 빠르고 간결하게 표현할 수 있다.
Sass vs Tailwind CSS
Sass는 CSS를 작성하는 간결한 방법을 목표로 하고 Tailwind CSS는 사용자 지정 CSS를 작성하는 대신 클래스를 사용하여 직접 스타일을 적용한다.
CSS로 많은 부분을 작성하면 Sass를 사용하는 것이 좋고 디자인을 빠르고 간결하게 만들고 싶다면 Tailwind CSS가 좋다.
Sass vs styled-components
Sass는 일반 CSS로 컴파일되는 언어기에 디버깅하기 쉽다. styled-components는 재사용성이 가능한 컴포넌트를 만들수 있지만 자바스크립트로 CSS를 작성하기 때문에 디버깅이 다소 어렵다.
Sass는 CSS in Css문법으로 JS 파일과 분리되어 있고 컴포넌트의 상태값이 변하더라도 반응하기 쉽지 않다.
styled-components는 CSS in JS방식으로 컴포넌트가 렌더링 될 때만 해당 스타일 정보를 읽는다. 동적인 이벤트가 많은 사이트라면 컴포넌트가 자주 렌더링될 때마다 스타일도 다시 읽어와야 한다. 그렇기에 동적인 이벤트가 많다면 CSS in CSS방식이 나을 수도 있다.
Bootstrap vs Sass
Bootstrap은 사전 설계된 UI를 가져다가 사용할 수 있어서 빠르게 디자인 할 수 있다. 중첩, 상속과 같은 점을 사용하여 CSS를 유지관리하기 쉽도록 하고 싶다면 Sass를 사용하면 좋다.
뭐가이렇게 많아영...이게 도대체 뭐에영