변수를 사용한 Discourse 스타일링: 더 단순한 의미론의 필요성

변수를 사용해야 할 합당한 이유가 있으니, 여기서 그 부분을 자세히 논하진 않겠습니다. 다만 CSS의 본질에 대해 논쟁하지 않는다는 점은 좋은 지적입니다. 제가 더 명확하게 표현했어야 했는데, 이는 CSS의 본질에 관한 문제가 아니라 컴포넌트 기반 프레임워크를 스타일링할 때의 모범 사례에 관한 문제입니다. 그리고 버튼이 이러한 원칙을 적절히 적용하기 어려운 또 다른 좋은 예시라는 점에는 전적으로 동의합니다.

더 큰 그림을 보면, 프론트엔드 프레임워크의 JavaScript 측면을 현대화하기 위한 집중적인 노력이 있어 왔습니다. 그리고 저는 그것이 큰 성공을 거두었다고 생각합니다. 깨끗한 표준과 잘 구조화된 클래스를 다루는 것은 이제 정말로 즐거운 일이 되었습니다. 디자이너인 저에게도 이는 새로운 프론트엔드 컴포넌트를 더 쉽고 효율적으로 구축할 수 있는 기회를 열어주었습니다.

그러나 디자인 시스템을 동일한 표준으로 끌어올리는 데 비슷한 헌신이 없다는 느낌이 떠나지 않습니다. 모든 측면에 CSS 변수를 추가하는 것은 분명히 현재 방식보다 더 성능이 좋고 깔끔하지만, 여전히 더 깊은 수준의 아키텍처 문제를 회피하는 것처럼 느껴집니다: 지나치게 구체적인 선언으로 가득한 코드베이스와 명확한 컴포넌트 스코프 스타일의 부재 말입니다. 이는 더 어려운 문제, 즉 스타일링 아키텍처를 프레임워크의 모듈형 디자인과 완전히 일치시키는 문제를 피하는 “더 쉬운” 해결책처럼 느껴집니다.

이것이 많은 작업량과 하위 호환성 문제를 초래할 것임을 이해합니다. 하지만 팀은 JavaScript 측면에서 이러한 도전에 성공적으로 대응해 왔습니다. JavaScript가 스타일링보다 여전히 훨씬 더 많은 자원을 받게 된다면, 그 격차는 최종 디자인에서 드러날 것입니다. 그리고 사용자는 왜 그런지 설명할 수 없더라도 그 차이를 느끼게 될 것입니다.

저는 개발자 경험과 사용자 경험 모두에 장기적으로 혁신적인 혜택을 가져다줄 것이라고 확신하기 때문에, CSS 아키텍처에도 동일한 현대화 에너지가 적용되기를 진심으로 바랍니다.