2017-12-14 23 views
0

경험 많은 스칼라/플레이 프로그래머에게 조언을 구합니다.Play 2.6 + Slick 3.x 경험 및 샘플

나는 Play Framework 2.x를 Java와 함께 수년간 행복하게 사용해 왔습니다. 이제는 Play보다 스칼라 버전을 배우고 싶습니다. Play는 Java보다 Scala에서 훨씬 뛰어납니다.

저는 실제로 언어 자체에 깊은 인상을 받았으며 스칼라와 플레이의 연결을 이해합니다. 그러나 나는 스칼라에서 사용되는 데이터베이스 라이브러리에 채택 할 때 몇 가지 문제를 안고있다.

나는 그 중 일부를 시도해 보았고, 결국 스컬 (Slick)과 함께 스칼라 언어에 관한 아이디어로 가장 유망 해 보였습니다. 자바 세계에서 ORM, 특히 Play Ebean에 익숙했습니다. 개체 그래프로드에 대한 아이디어가 좋았으므로 DB에서 Customer 엔터티를로드하고 고객의 계약, 티켓 및 기타 실제 엔터티를 트래버스 할 수있었습니다. 모든 SQL select와 조인은 ORM에 의해 수행되었습니다.

지금 ... 나는 슬릭이 ORM이 아니라는 것을 충분히 이해합니다. 그리고 나는 그걸로 살 수 있습니다. 그러나 Play/Slick/Scala로 작성된 실제 응용 프로그램을 찾고자 Slick 사용에 대한 모범 사례를 볼 수 있습니다. 인터넷에서 찾을 수있는 모든 것은 데이터베이스에 연결하고 기본 삽입/업데이트/삭제 작업을 수행하는 매우 기본적인 예제입니다.

하나의 테이블에서 행을 저장 /로드하는 것보다 복잡한 테이블과 다른 것들 간의 관계를 사용하는 복잡한 예제를 찾을 수 없습니다.

배우는 방법에 대한 아이디어가 있으십니까?

답변

1

몇 점 - 당신은 재생의 스칼라 버전을 배우는 것이 아니라

예 스칼라

를 작성하는 법을 배워야하지 않습니다, 당신은 관계 매핑 라이브러리와 관련하여 올바른 선택을했다 - 슬릭. 그러나 Quill이라는 라이브러리는 아직 준비가되지 않았지만 Slick보다 훨씬 앞선 것 같습니다.

https://github.com/getquill/quill

나는 플레이와 슬릭 사용하는 몇 가지 기본 예제가 있습니다. 복잡한 결합을 수행하지는 않지만 여기에 도움이 될 샘플이 있습니다!

https://github.com/joesan/plant-simulator/blob/master/app/com/inland24/plantsim/services/database/DBSchema.scala

는 스칼라를 처음 사용하는 경우, 당신이 플레이, 슬릭 및 기타 스칼라 기반 라이브러리에 들어가기 전에 먼저 언어를 배우는 것을 조언한다.

+0

감사합니다. 저는 여러분이 몇 가지 프로그래밍 언어를 사용하여 경험을 쌓은 경우, 다른 언어를 아주 쉽게 배울 수 있다고 생각합니다. 나는 실제로 무언가를 써서 언어를 배우는 것을 선호한다. 어쨌든, 나는 https://twitter.github.io/scala_school/의 수업을 통해 몇 가지 기본 사항을 배우고 다른 언어와 비교하여 차이점을 발견했습니다. – spidla