티스토리 뷰
SMACSS의 개념
SMACSS는 "Scalable and Modular Architecture for CSS"의 약어로, CSS를 보다 확장 가능하고 모듈화된 방식으로 구성하는 CSS 아키텍처 방법론이다.
SMACSS는 CSS 코드를 다양한 모듈로 분리하고, 각 모듈을 일관성있게 작성하고 관리하는 방식을 제안한다. 이를 통해 CSS 코드의 유지보수성과 재사용성을 향상시키며, 프로젝트 규모가 커져도 일관된 코드 작성이 가능해진다.
SMACSS는 5가지 유형의 모듈을 정의한다.
- Base: 기본적인 스타일을 정의하는 모듈
- Layout: 레이아웃을 정의하는 모듈
- Module: 기능을 가진 모듈
- State: 상태를 정의하는 모듈
- Theme: 디자인 테마를 정의하는 모듈
각 모듈은 적절한 접두사를 사용하여 클래스를 작성하고, 선택자의 중첩을 최소화하고 가독성을 높이도록 권장된다. SMACSS는 또한 코드의 구조화와 주석을 통해 코드의 가독성을 향상시키는 것을 강조한다.
SMACSS의 장점과 단점은?
SMACSS의 장점
- 유지보수성: SMACSS는 CSS 코드를 모듈화하고 일관성있게 작성하도록 유도하여, 코드 유지보수성을 향상시킨다.
- 확장성: SMACSS는 스케일러블한 CSS 아키텍처로서, 프로젝트 규모가 커져도 일관된 코드 작성이 가능하다.
- 재사용성: SMACSS는 모듈화된 CSS 코드를 작성하도록 유도하여, 재사용성을 향상시킨다.
- 가독성: SMACSS는 적절한 선택자의 사용과 코드 구조화, 주석 등을 통해 가독성을 향상시킨다.
SMACSS의 단점
- 초기 학습 비용: SMACSS는 새로운 개념과 규칙을 도입하기 때문에, 초기 학습 비용이 발생할 수 있다.
- 엄격한 규칙: SMACSS는 일관성있는 코드 작성을 위해 엄격한 규칙을 제공하기 때문에, 개발자가 유연한 코드 작성에 대한 자유도가 떨어질 수 있다.
- 과도한 분리: SMACSS는 모듈화된 CSS 코드를 분리하도록 유도하기 때문에, 모듈 간의 상호작용이 불편할 수 있다.
- 낮은 호환성: SMACSS는 최신 CSS 기술을 사용하여 작성된 코드에 대해 높은 호환성을 보장하지만, 오래된 브라우저에서는 일부 기능이 제대로 작동하지 않을 수 있다.
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- javascript
- gulp-sass
- Container queries
- JS Function
- 도커설치
- 컨테이너쿼리
- CSS방법론
- websquare
- gulp-autoprefixer
- CSS
- oocss
- gulp task
- at()
- CSS Level 4
- JS
- 객체지향CSS
- Intl API
- gulp비동기
- Internationalization API
- Object Oriented CSS
- gulp
- CSS선택자
- gulp-ejs
- 웹스퀘어
- smacss
- 도커
- Gulp.js
- CSS 우선순위
- browser-sync
- docker desktop
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함