10000 GitHub - jong-hui/clarly: framework for building declarative UI
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

jong-hui/clarly

Repository files navigation

Clary

Clarly는 선언적을 뜻하는 Declarative에서 따온 말입니다.
더 선언적인 UI를 구성하기 위한 프레임워크를 뜻합니다.

Why building “Clary”

UI를 구성하기 위한 현대 도구들은 많습니다. React나 Vue, Svelte 같은 것들 말이죠.
하지만, 이 도구들은 치명적인 약점들을 가지고 있습니다.
Clarly는 이 도구들이 가진 약점을 해결하고, 더 선언적으로 UI를 구성하기 위한 프레임워크입니다.

Clarly는 개발자가 UI에만 집중하고, 로직에만 집중할 수 있게 도와줍니다. useEffect를 여러개 설정하며 많은 side effect를 생각하지 않게 도와줄 수 있죠. 결합도와 응집도에 대해 고민할 수 있게, 컴포넌트를 사용합니다. 배우기 어렵고 이해하기(정확히 말하면 예측하기)도 어려운 Virtual DOM에 대해서도 생각할 시간은 현대 개발자들에게는 필요하지 않은 시간입니다.

Concepts of Clarly

Clarly를 이해하기 위한 개념들은, 현대 UI 도구들에서 영감을 받은 개념들이 많습니다. 동시에 현대 UI에서 단점이라고 생각하는 부분들을 해결하고자 하는 개념들도 있죠, 이런 개념들은 우리가 무엇을 만들고, 무엇이 중요한지 알 수 있게 해줍니다.

선언적

Clary에서 가장 중요한 개념은 선언적인 코드입니다. UI는 선언적입니다. 당장 앞에 있는 키보드에 경우 누구도 “머신에게 정보를 전달해주기 위한 I/O 장치”라고 부르지 않습니다. 그저 “키보드”일 뿐입니다. 우리는 <키보드 />로 보여지길 원하지 몇줄씩이나 되는 코드로 보여지길 원하지 않습니다.

적은 sideEffect

부작용은 코드베이스를 이해하기 어렵게 만듭니다. 키보드에 F8을 눌러 에어컨을 조작할 수 있다고 하면, 당사자는 편할겁니다. 하지만, 다른 사람들도 편할까요? 우리는 혼자 일하지 않습니다.

그냥 돼

제목이 우스꽝스럽지만, 사실 직관에 대한 얘기입니다. 에어컨을 조작하기 위해서 여러 모듈들을 붙일 필요가 없다는 말입니다. 사람이 이해할 수 있게, 쓸모없는 고민을 하지 않기위해 우리는 직관적으로 UI를 구성할 필요가 있습니다.
이 말이 위험할 수 있다는 걸 압니다. 개발자가 신경쓸 필요가 없다는 얘기는 아닙니다. 개발자가 더 중요한 문제를 고민하기 위해 노력한다는 의미입니다.

About

framework for building declarative UI

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0