이 두 가지 중 어느 것도 사용해서는 안됩니다.
라이브러리의 크기가 축소되었으며이 진술은 더 이상 사실이 아닙니다.
다른 기술을 사용할 수 있지만 하나를 선택하는 것은 작성하려는 앱의 종류에 따라 다릅니다. 템플릿 기술 (예 : JSP 또는 JSF)을 사용하여 씬 클라이언트를 개발하려는 경우 Play 템플릿, Lift, Scalatra 등의 사용을 고려할 수 있습니다 .
필요 사항을 고려하는 데 도움이되는 몇 가지 생각은 다음과 같습니다.
UI를 디자인하려면 위젯과 물건이 필요하며 이러한 것들은 일반적으로 구성 요소 지향 적이고 이벤트 중심입니다. 이러한 경우 FP는 OOP에 비해 많은 이점을 제공하지 않습니다.
표준 엔터프라이즈 애플리케이션에서 scala.js는 js 코드를위한 깨끗한 기능 라이브러리를 설계하는 데 유용합니다. 이러한 종류의 라이브러리는 확실히 제공 할 것이 많지만 클라이언트 측 코드의 핵심은 아닙니다. 대신 위젯, MVC 인프라 및 백엔드와의 통합을위한 레이어가 작업에 대부분의 시간을 소비하게 될 것입니다.
GWT는 오랫동안 사용되어 왔습니다. 나는 그것이 성숙하고 입증 된 기술이라고 생각합니다. 잠재력을 완전히 활용하려면 몇 가지 조정과 패턴을 배워야하지만 제 생각에는 깨끗하고 유지 관리 가능한 js 코드를 작성하는 데 필요한 것보다 훨씬 적습니다.
GWT는 js를 아는 것을 요구하지 않습니다 (우리 모두가 브라우저에서 일어나는 일에 대해 조금 아는 것이 항상 가장 좋다는 데 동의하지만). 당신이 무엇을 컴파일하는지 모른다면 scala.js로 멀리 가지 않을 것입니다.
이미 자바 스크립트를 잘 알고 있다면 마치 일종의 스칼라 지원 js 인 것처럼 스칼라 코드를 직접 입력하는 것이 더 쉬울 것입니다.
코드를 쉽게 고려하여 코드 테스트와 재사용을 동시에 수행 할 수 있으므로 대규모 팀이 js보다 GWT로 작업하는 것이 훨씬 쉽습니다.
GWT는 확실히 객체 (위젯 / 모델 / 뷰 / 컨트롤러) 지향적이고 이벤트 중심입니다. 완전히 기능적인 방식으로 인터페이스를 디자인 할 계획이 있다면 (게임이나 매우 특정한 앱의 경우) 디자인에 방해가 될 것이라고 생각합니다.
GWT
Scala.js
최종 조언
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다