質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Scala

ScalaはJava仮想マシンで動作を行うオブジェクト指向型プログラミング言語の1つです。静的型付けの関数型言語で、コンパイルエラーの検出に強みがあります。

Q&A

6回答

2367閲覧

【Scala】Scalaの参考書籍

rossi46hiro

総合スコア992

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Scala

ScalaはJava仮想マシンで動作を行うオブジェクト指向型プログラミング言語の1つです。静的型付けの関数型言語で、コンパイルエラーの検出に強みがあります。

1グッド

4クリップ

投稿2015/08/03 12:46

当方、Rubyを使っており、Scalaを学んでみようと思っております。
Scalaを学習するにあたっておすすめの書籍などありますでしょうか?

また、ネットの情報を見るとJavaプログラマ向けのScala学習情報が多い気がしますが、まずJavaを触ってみるのがいいのでしょうか?
Javaプログラマの方でScalaを使っている方、Rubyプログラマの方でScalaを使っている方などいましたらご意見を伺いたいです。

raccy👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答6

0

私自身Scalaは勉強中の身ですが、水島さんにいい本がないか尋ね、紹介していただいた事があります。
ある程度プログラミングを書いたことがあって、関数型言語を深くは知らない人の取っ掛かりとして、Scala逆引きレシピを紹介されました。確かに、Scalaだと「こう書く」というのが段階的に知ることができました。オススメです。

投稿2015/08/10 13:57

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

関数型プログラミングScala がおすすめです。
最近読んでいるのですが、演習問題があるので読みつつ解きつつ進められて良いです。
Scalaで関数型プログラミングをテーマに学ぶのであればこれが良いかと思います。

もしなにか既に作るものが例えば決まっているのであればコップ本と呼ばれる本を辞書的に読むと良いです。

また、書籍ではないですがScalaで躓いたら http://www.ne.jp/asahi/hishidama/home/tech/scala/ のページを参考にすれば大概のことが解決されるので、こちらも参考にされると良いかと思います。

投稿2015/08/03 16:53

ara_ta3

総合スコア82

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

スケーラブルで関数型でオブジェクト指向なScala入門

Java、Rubyはすでに使っていて、Scalaは学習中です。

ご質問は参考書籍ということですが、「これ!」と
自信を持って推薦できる書籍をまだ見つけてないので、
とりあえず上記の入門サイトを紹介しておきます。

まずJavaを触ってみるのがいいのでしょうか?

ScalaはJavaの後継的なポジションでしょう。

これと似ているのがCに対するC++(またはC#)の立場で、
Cからやる派と、最初からC++(C#)をやる派に分かれます。
私はCからやる派(やった派)です。

というのも段階的学習のほうが、万人向けだと思うからです。
逆に過程を飛ばすのは飛び級と同じで、つまずく人も出るでしょう。

だから、Javaも触ってみるのが良い、と個人的には思います。

けっきょくScalaもライブラリはJavaのを使ったりするので、
すごい回り道をさせられる、というわけでもないと思います。

ただScalaの難しさは、Java(と似た部分)よりも関数型にあると思います。
それはC++(C#)の難しさが、Cよりオブジェクト指向にあるようなものです。

ですからScalaを攻略するのは、関数型プログラミングを学ぶのが良いと思います。
ただ関数型はどれも難しいので、どの言語かまでは指定しかねます。

私の場合はLispを学んでいますが、難解なのでにわかにおすすめできません。
ただなぜ選んだかといえば、そもそもRubyがLispの流れを汲んでいるからです。

投稿2015/08/03 13:51

LLman

総合スコア5592

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

書籍でしたら実践Scala入門、webサイトでしたらドワンゴScala研修テキストが初心者にはおすすめかと思います。
実践Scala入門はScalaを書くのに最低限の知識がコンパクトにまとまっており、なおかつ実践的な内容まで網羅されているので、とりあえず書き始めたいのでしたらこの本を読むのがいいかと思います。
また、ドワンゴのテキストは文法の基本からScalaの有名webフレームワークであるplayを使ったサンプルプロジェクトまでありますので、playについて学びたい場合はこちら勉強するのがいいと思われます。

上の2つが読み終わればScalaのバイブルであるコップ本を読むのがいいでしょう。

他の回答者様が挙げられている関数型ScalaやScala逆引きレシピも良著ではあるのですが、いかんせんScala習熟者向けまたは辞書的な本ですので初心者にはあまり向かないかと思います。

投稿2020/05/02 23:36

kazchimo

総合スコア172

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

入門書は他の回答者の方々が推薦されているのであげません。
Scalaの前にHaskell入門をやっておくと見通しが良くなるでしょう。

Coursera - Functional Programming in Scala
CourseraのScalaコースを受講されることをお勧めします。Functional Programming in Scala

5コース構成です。最初の2コースはScalaの生みの親、Martin Odersky教授がレクチャーします。
教材はScalaスケーラブルプログラミング第3版です。

レクチャーでは、Odersky教授のさりげない一言が実に興味深かったりします。
2コース目の途中2コマになぜかHaskellの研究者Erik Meijerが登場します。

残りの3コースは並行コンピューティングの解説、Sparkの解説と演習です。
5コースすべてを受講すると最短でも3ヶ月、仕事をこなしながらだと1年程度かかるでしょう。

最初のコースだけでも受講する価値はあると思います。受講実績をみると日本人が多数います。

投稿2020/05/09 09:45

xebme

総合スコア1081

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

書籍でなく web ページですが、次のページを読んでみては?
(java や他の言語で 素数の列挙をエラトステネスの篩で書いたことがあることが前提です。)

scala だとこんな風にかくことができるのかということを知ることができます。

お勧めの書籍は、 amazon.co.jp や amazon.com で scala で検索して、レビューの評価が高いもの、人気があるものを立ち読みしたりサンプル版を読んだりして、自分が気に入ったものから選ぶのがよいと思います。

投稿2015/08/16 16:01

編集2016/04/07 06:34
katoy

総合スコア22324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問