X



プログラミング言語 Scala 11冊目 [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2015/08/28(金) 07:25:25.39ID:YozprJV9
The Scala Programming Language
ttp://www.scala-lang.org/

日本Scalaユーザーズグループ
ttp://jp.scala-users.org/

■前スレ
プログラミング言語 Scala 10冊目
http://peace.2ch.net/test/read.cgi/tech/1390629242/

■Scalaの紹介文(さわり)
Scalaは簡潔かつ優雅で型安全な方法でよくあるプログラミングパターンを表現できるように
設計された汎用プログラミング言語です。
Scalaはオブジェクト指向と関数型言語の特徴をスムーズに統合しておりJavaやその他の言語を扱う
プログラマをより生産的にすることができます。(以下略)
ttp://www.scala-lang.org/node/25

■Scalaに関する書籍(英語)
ttp://www.scala-lang.org/node/959
リファレンスマニュアルや草稿のPDFなども充実しているのでそちらも参照してください。
日本語の資料には、チュートリアルの訳やIBM dW、IT Pro, @ITの連載記事、各々で開かれた勉強会の資料などがあります。
0003デフォルトの名無しさん
垢版 |
2015/08/28(金) 09:50:34.42ID:mlMaKCXO
0005デフォルトの名無しさん
垢版 |
2015/09/01(火) 00:23:55.23ID:H7nGKkKw
Scalaって普及するの?
0006デフォルトの名無しさん
垢版 |
2015/09/01(火) 06:42:11.97ID:i/COrQBd
今のままでは絶対に普及しない
仕様とライブラリの大掃除を行ってカオスを脱しない限り
0007デフォルトの名無しさん
垢版 |
2015/09/02(水) 05:36:10.75ID:HFo8iL3L
ナウなヤングにバカ受けと話題のScalaを勉強しようと思ったけど、なんだこの言語
仕様から文法からとんでもない煩雑具合に見える
これって脳に回復不能なダメージを与えるんじゃないか?引き返すべきか?
0011デフォルトの名無しさん
垢版 |
2015/09/05(土) 00:14:13.88ID:6hpz7z/s
Java8あればScalaいらないや
0012デフォルトの名無しさん
垢版 |
2015/09/05(土) 00:22:53.21ID:FwcsIAPo
あとはJavaにcase classとパターンマッチさえあれば完全に用無しだね
まあ今のJava8と比べても色々犠牲にしてカオスに飛び込むほどの魅力がScalaにあるかというと
一般的な感覚では割に合わないだろうね
0013デフォルトの名無しさん
垢版 |
2015/09/05(土) 01:24:41.13ID:9u1zKCQd
型推論すらないJavaにいくらラムダがついたところでまったく食指は動かないなぁ…
0014デフォルトの名無しさん
垢版 |
2015/09/05(土) 14:11:41.46ID:bTyiI7IW
Java8使ってて不満なのは通常使われるデータ構造が関数的じゃないところかなぁ。
構文の煩雑さは心頭滅却して我慢できないこともないが。
0016デフォルトの名無しさん
垢版 |
2015/09/12(土) 01:23:26.08ID:aCbsGJVM
一度Scalaを堪能したらもうJavaには戻れない
0017デフォルトの名無しさん
垢版 |
2015/09/12(土) 01:32:52.14ID:csMUybtY
不人気な言語採用すると保守のコストが上がってしまうんだよね
Javaなら10年後でも普通にいる
しかしScalaは果たしているのかどうか…
近年いろんな言語出て来てるけど無意味な競争で何れ元に戻る未来しか見えない
0018デフォルトの名無しさん
垢版 |
2015/09/12(土) 11:21:43.63ID:/sFVAJJ4
Scalaぐらいまで普及すれば気にするほどのことでは
言語の将来なんて誰も読めないんだし

今、COBOLerやFORTRANerを探そうとしたら苦労するでしょ?
0019デフォルトの名無しさん
垢版 |
2015/09/12(土) 11:42:12.27ID:omKMHbt/
COBOLやFORTRANなんか経験無くても誰にでも使えるよ
オブジェクト指向になると誰でも簡単にというわけには行かないが、
ドカタワールドの偉大な発明である「Javaの姿をしたCOBOL」スタイルを採用すればJavaでも難易度は低い
もちろんScalaでもCOBOLのようなコードは書けるけど、そういう形で普及させることに意味があると思う?
0020デフォルトの名無しさん
垢版 |
2015/09/12(土) 12:21:44.46ID:csMUybtY
>>18
本屋に行けばわかるけど全然ない
今のままだと一部で使われて10年後に何それ状態だと思う
0021デフォルトの名無しさん
垢版 |
2015/09/12(土) 12:29:23.68ID:csMUybtY
>>18
CやCOBOLはそれぞれ確実に普及した時期があったからね
それを経て今は活躍の場を縮小し各分野に特化して地位を確保してる
Scalaにそれができるかと言ったら無理と思う
Java採用すれば技術者は数多な訳だし
0022デフォルトの名無しさん
垢版 |
2015/09/12(土) 12:33:49.51ID:/sFVAJJ4
>>20
プログラミングの本なんて今はamazonでポチる時代だからねぇ
コップ本なんて特にクソ高いから本屋になんて置けないよね…
0023デフォルトの名無しさん
垢版 |
2015/09/12(土) 12:38:38.51ID:/sFVAJJ4
>>21
そのJavaもCOBOLなどと同様の流れになってきてるしね

安い技術者を確保したいという経営者目線に技術者が乗っかる必要はないよ
乗っかったところで安く使われるだけ
0025デフォルトの名無しさん
垢版 |
2015/09/12(土) 12:49:33.29ID:omKMHbt/
>>23
マイナーな言語でもそれでなきゃいけない分野があるならマイノリティになるのは美味しいが、
問題はScalaじゃなきゃいけない分野というのが特に無いことだよ
マイナーな言語の利用を、生産性の向上だけを理由にして正当化するのは難しい
0026デフォルトの名無しさん
垢版 |
2015/09/12(土) 13:09:54.35ID:/sFVAJJ4
>>25
生産性の向上だけって、他に何があるの?
やっぱり経営者目線で語ってるだけじゃん

技術屋はそういう目線に乗っかる必要はないんだよ
どこでもいいから安くてもいいから雇われたい、ってのならJavaでもPHPでもやってれば?

技術屋は興味のある言語を好きなだけ勉強すれはいい
その勉強に割くリソースがもったいないとか言い出すのならそれは技術屋に向いてないから
別の業種を探せってこと
0027デフォルトの名無しさん
垢版 |
2015/09/12(土) 13:21:00.05ID:HOLpd5HQ
>>26
その技術とやらが「Scala言語に詳しい」だけじゃあまりにも弱すぎる
で、それで何ができるの? と考えるのは経営者に限ったことか?
そんなもん学会の研究発表でも突っ込まれるぞw
0028デフォルトの名無しさん
垢版 |
2015/09/12(土) 13:27:03.57ID:/sFVAJJ4
>>27
Scalaスレに来てScalaは覚えても無駄だからやめとけってネガキャンする奴らって
結局何が言いたいんだろう?

リソースの無駄ってことなのかなぁ?
0029デフォルトの名無しさん
垢版 |
2015/09/12(土) 13:42:05.05ID:csMUybtY
言語が普及するかは市場が決める
それは上流の各SEにその権限あるわけだがネット時代とはいえ本屋にろくにないからどう思ってるか気になってね
俺は本はネットよりまとまって入門に必須と思ってるからさ
0030デフォルトの名無しさん
垢版 |
2015/09/12(土) 13:43:05.19ID:/sFVAJJ4
>>29
だから何が言いたいのかな?
「わざわざ」ScalaスレにきてScalaを貶めようする動機って何?
0031デフォルトの名無しさん
垢版 |
2015/09/12(土) 13:54:09.85ID:csMUybtY
>>30
貶めるつもりはないそれは誤解
言語を学ぶ上でいくつかに絞る材料としてScalaの展望どうなのと思って聞いただけ
それは勉強した人間に聞くのが一番早い
SEやってる人間が大半で現場の採用推移とか肌で感じてるだろうし
0032デフォルトの名無しさん
垢版 |
2015/09/12(土) 13:56:40.83ID:HOLpd5HQ
>>30
普及しない理由を言ってるだけであって、Scalaを貶めてるわけでもないし
覚えるなと言ってるわけでもないだろう
普及率とその言語を覚えるべきかどうかは別問題じゃなかったのか?
普及率にコンプレックス持ってるのは君自身じゃないのかな
0034デフォルトの名無しさん
垢版 |
2015/09/12(土) 14:06:48.44ID:csMUybtY
一つ余談だけどかつてDelphiという言語と統合環境が存在した(今も存命w
当時のVCと比べてVBよりも遥かにGUIの生産性が高くライブラリの敷居も低かった
今のC#の開発環境が当時あったと考えてもらえばいい
しかし残念ながら認知度や先行きの不透明性から生産性の低いVB敷居の高いVCが採用され淘汰された
認知されていくこと本が出回ることは今でも重要と考えてる根拠ね
0035デフォルトの名無しさん
垢版 |
2015/09/12(土) 14:08:50.34ID:csMUybtY
>>33
外から見ると参考書が皆無で劣勢
じゃあ中にいる人間なら根拠を持って反論するかなと思って
0037デフォルトの名無しさん
垢版 |
2015/09/12(土) 19:20:27.11ID:jucMfRSe
Scala最近よく聞くけど、
開発案件とかあるの?

なんか、普及にはまだまだ時間がかかりそうな気がする。
0038デフォルトの名無しさん
垢版 |
2015/09/12(土) 21:28:00.25ID:aCbsGJVM
アドテクではそこそこ使われてる
0039デフォルトの名無しさん
垢版 |
2015/09/12(土) 22:58:48.76ID:nIIcX26n
PlayFrameworkの開発案件がほんの少し流れてる
これはJavaでも開発できるんだが、Scalaを採用している所の方が多いようだ
Scalaのフレームワークはほとんどないから、
従来のJavaのフレームワークたちに勝てれば、もしかしたら時代が来るかもな
0041デフォルトの名無しさん
垢版 |
2015/09/14(月) 20:03:56.74ID:nW8KHDe7
TypeSafeはreactive programming/systmを推してるな。
穿った見方をすると、Scala単体の魅力がそこまでじゃないってのが
まあわかってきて、次なるネタとしてリアクティブを推していって、
(Scalaである必然性はそこまでないけど)Scalaならライブラリあるし
みんなやってるからScala使いましょうみたいなマーケティングに
シフトしている気がするな。
Javaがサーバーサイドに転換したときと同じ気配を感じる
Javaの転換は(普及という意味では)潮流の変化にうまく乗って
成功だったと思うがScalaはどうだろうかね
0042デフォルトの名無しさん
垢版 |
2015/09/14(月) 21:04:46.83ID:geV2gEFM
Sparkみたいな特定の小さなドメインに限れば勝機はある
「オーバーヘッドの比較的少ないスクリプティング言語」という位置付けなので
Scalaでないといけない必然性は全く無いが
0043デフォルトの名無しさん
垢版 |
2015/09/18(金) 22:20:55.14ID:8olUjSlI
IDE次第
0046デフォルトの名無しさん
垢版 |
2015/10/02(金) 08:14:55.22ID:N4XR7XzX
scalaってscalaなんたらとかscaなんたらみたいなライブラリ名多いよな
だから何って訳じゃないけどさ
0052デフォルトの名無しさん
垢版 |
2015/10/06(火) 22:24:43.07ID:lFTBB0ra
キラーアプリがないとね
あれだけなんだかんだ言われてるRubyだってRailsのおかげで現状のシェアなわけだし

playも悪くはないんだけど、ここそこにこなれてない感が拭えない部分があるからなー
0053デフォルトの名無しさん
垢版 |
2015/10/06(火) 22:31:18.67ID:7FNxeZR/
Playはimplicit多すぎ型にうるさすぎ
Scalaに必要なのはASP.NET MVCやSpringみたいな素直で普通なフレームワークだよ
0054デフォルトの名無しさん
垢版 |
2015/10/06(火) 22:35:22.96ID:lFTBB0ra
implicit は慣れれば別にどうってことないし、型にうるさいのは型安全を目指してるんだから
当たり前の話

それよか貧弱なi18n対応とか、validation がそこかしこに散らばってるのとかそういう
部分だと思うけどなー
0055デフォルトの名無しさん
垢版 |
2015/10/06(火) 23:56:49.22ID:vBJoGM4q
それ以前になんでScalaを選択するのと聞かれたときに説得力のある根拠を用意できない
0056デフォルトの名無しさん
垢版 |
2015/10/07(水) 19:59:13.36ID:Xqh9D43e
Playのバリデーションは各フォームのエラーメッセージの順番を保持しない
入力項目の数だけviewにfor文を書くはめになって、俺の怒りが有頂天になった

>>55
それはどんな言語でも一緒じゃね?
0057デフォルトの名無しさん
垢版 |
2015/10/07(水) 20:13:45.80ID:llAC6hpJ
選ぶ理由なんて「好きだから」でいいよね
node.jsとの2択になったとき「Scala好き。JavaScript嫌い」で押し通したし
0058デフォルトの名無しさん
垢版 |
2015/10/23(金) 09:32:07.72ID:I0uni5nx
☆ 日本の核武装は早急に必須ですわ。☆
総務省の『憲法改正国民投票法』、でググってみてください。
日本国民の皆様方、2016年7月の『第24回 参議院選挙』で、日本人の悲願である
改憲の成就が決まります。皆様方、必ず投票に自ら足を運んでください。お願い致します。
0059デフォルトの名無しさん
垢版 |
2015/10/27(火) 01:21:29.59ID:WHklDbdU
2015 給料ランキング一位だったから覚えようと思うんですが
javaの知識無しでscalaの学習しても問題ないですか?
0061デフォルトの名無しさん
垢版 |
2015/10/27(火) 01:38:37.84ID:sV0GHDSB
覚えても実務で使うことはないだろうけどな
0062デフォルトの名無しさん
垢版 |
2015/10/27(火) 07:47:25.51ID:AF18ul7Z
実務で使うつもりならJavaできないと全く意味ないし
教養としてならHaskellやったほうがいい
0064デフォルトの名無しさん
垢版 |
2015/10/27(火) 11:04:15.63ID:E3aIwwtM
実務で使いたいならそういう方向に誘導する力は必要だろうね
力とは別に権力だけじゃなくて、実行力とか説得力とか「Scalaに対する熱い心」とか
色々あると思うよ
0067デフォルトの名無しさん
垢版 |
2015/10/27(火) 12:23:58.52ID:Ay4zuTZ6
>>59
Javaの方が汎用性高いからJavaからやったほうがいい
Scalaは新しいモノ好きな会社が手を出してる段階だから単価高いだけで数年で他と一緒になる
もしくは消えてる可能性もある
まだ情報多くないからScalaからやるのは時期尚早
0068デフォルトの名無しさん
垢版 |
2015/10/27(火) 12:31:21.26ID:AF18ul7Z
たかが開発言語ごときがスキルセットの重要な位置を占めてる時点で、Scalaみたいな意識高い系ワールドはまだ早い
いくつかメジャーな言語を経験して、言語なんてどうでもいいと思えるようになったらおいで
0069デフォルトの名無しさん
垢版 |
2015/10/27(火) 13:07:15.04ID:E3aIwwtM
JavaやらないでScalaやっても楽しさはわからないだろうしね
Javaやってなにこれめんどくせーと感じるようになって、node.jsとかスクリプトやってなにこれ
型欲しいーって感じるようになって、それから来ると楽しさが分かるようになるんじゃないかな

どっちにしてもScalaを実務でやるには自分で主体的に動けないとなかなか機会はないだろう
から、給料目当てでやってるうちは意味ないだろうね
0070デフォルトの名無しさん
垢版 |
2015/10/28(水) 11:21:43.14ID:8s7NCB3J
尖ったものを現場で使いたいなら、俺の技術で会社をリードしてやる、くらいの強烈な主体性が必要
それがなければ、新しいものを使える環境へ入ったとしても
技術的な裁量を持てず言われたとおりにやるだけでCOBOL工と何も変わらん
もしくは技術評価部門(笑)という名の社内ニートが関の山
0071デフォルトの名無しさん
垢版 |
2015/10/28(水) 15:06:06.74ID:UQfxGWP/
>>69-70
Scalaの給料が高いという記事についても、

X Scalaが使える→給料高い
O Scalaを使おうとするぐらい主体性があり技術力もある→給料高い

なんだよね、きっと

俺は「何使ってもいいよ」って言われたときはScalaを推すぐらいの程度だけどねw
0073デフォルトの名無しさん
垢版 |
2015/10/28(水) 20:16:02.75ID:UQfxGWP/
>>72
初期はRubyOnRailsでやってScalaに移行ってのが実は一番合ってるのかもね
ScalaはJavaエンジニアよりはむしろRubyなどのスクリプトエンジニアからの移行の方が
抵抗が少ないって言うしね
0074デフォルトの名無しさん
垢版 |
2015/10/28(水) 23:15:21.56ID:ATSoBway
いつまでもC言語とかC++のような低レベルで危険な言語が普通の開発で
使われつつけている現在の状況が改まらない限りは、世の中は安全に
ならないし、プログラミングの生産性も低いままだ。
0080デフォルトの名無しさん
垢版 |
2015/11/01(日) 15:20:24.23ID:m5dOP02q
(javaより安全性が高い  型安全的な意味で)
つーか日本だけでもはてなやドワンゴみたいな大企業が使ってて普及してないとか言われると
微妙な気がするんだけど
アドテクでも最近流行ってるし
スピードと安全性と生産性 両立したい!みたいなところから需要がある
0081デフォルトの名無しさん
垢版 |
2015/11/01(日) 15:28:30.60ID:m5dOP02q
>>35
日本語の本だけに限ったって
scala逆引き
コップ本
fp in scala
オライリーのscala本
とかあるじゃん!

英語の本だったらライブラリやフレームワークの本含め
沢山でてるし
0082デフォルトの名無しさん
垢版 |
2015/11/01(日) 15:52:33.27ID:NUcI8Hig
Scalaの生産性が高いというのは大多数に当てはまらない虚言だろ
いくらコードが短くなると言っても覚えることが半端な量じゃない
まともに使いこなせるまで相当な学習コストがかかる
生産性が高いと言う触れ込みに飛びついて開発言語にScalaを選定し、大炎上してるプロジェクトを知ってるぞ
0083デフォルトの名無しさん
垢版 |
2015/11/01(日) 16:41:51.55ID:ZaupeU+S
Scalaは「生産性の高いJava」という方向で採用すると失敗例が多い
「型安全なPHP(もしくはnode.js、Ruby)」という方向での採用の方がしっくりくる例が多い
0084デフォルトの名無しさん
垢版 |
2015/11/01(日) 16:51:21.20ID:m5dOP02q
学習コスト

生産性
は違う気がする
生産性が高い(javaと比べて)って感じかもわからんから生産性だけを重視するならスクリプト言語の方がいい気がする
学習コストは確かに高いと思う 
特にjvmの変なところを埋めようとしてるところとか(型消去や配列周りは罠)、残念な型推論やimplicitは鬼門
うちではrubyやってた人はわりとすんなりできるようになってる印象
0085デフォルトの名無しさん
垢版 |
2015/11/01(日) 17:04:12.82ID:m5dOP02q
後 sbtがとっつきにくい 
というかアレscala結構できるようになってもキツイし初心者死ぬのにscalaやる上でほぼ必須という
<+=とか止めろ

dsl力が高いのは結構な事だけどマクロとimplicit使いまくるとすごい事になるわ
0086デフォルトの名無しさん
垢版 |
2015/11/03(火) 00:13:48.22ID:uxlxeY86
HListって色んなところで使われてるんだな
なんやねんこれ
0087デフォルトの名無しさん
垢版 |
2015/11/03(火) 01:57:08.35ID:SGr3OV6d
      ☆ チン     マチクタビレタ〜
                        マチクタビレタ〜
       ☆ チン  〃 ∧_∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
        ヽ ___\(\・∀・) < Play2.5まだぁー?
            \_/⊂ ⊂_ )  \__________
          / ̄ ̄ ̄ ̄ ̄ ̄ /|
       | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |
       | 愛媛みかん  |/
0089デフォルトの名無しさん
垢版 |
2015/11/06(金) 06:23:06.91ID:qFwSJApb
>>73
当たるか当たらないか分からないサービスに最初からscalaで書いたり、
保守性が重要な業務アプリでscalaとか違和感しか感じない
Rails, PHP, nodeで書いて、パフォーマンスが足りないような事情でもない限り、
scalaを積極的に使うだけの理由なんてないんじゃないの
0090デフォルトの名無しさん
垢版 |
2015/11/06(金) 07:18:12.28ID:Jbsw4Wxa
>>89
ええとー、nodeはどうなんだろ?
普及度はScalaよりマシって程度だし、できあがるコードはお世辞にも保守性が
高いとはいえないし
0091デフォルトの名無しさん
垢版 |
2015/11/06(金) 07:55:46.24ID:J1IjfUsv
>>90
Node.jsは敷居が低いだろう
基本的にマイクロフレームワーク使うから小さいものを素早く作る分には非常に覚えやすく見通しもいい。
Scalaは言語やフレームワークを学習するオーバーヘッドが非常に大きい上にそれらの変化も無駄に激しい。
実務で使うならそれらを受け入れるのに見合ったリターンが必要なわけ。
求められる基準点が違うんだよ。
0093デフォルトの名無しさん
垢版 |
2015/11/06(金) 08:22:39.00ID:J1IjfUsv
>>92
だから求められる基準点が違うと言っている
expressなんかサンプルコードチラ見したら使える
変わったところで大したことじゃない
0094デフォルトの名無しさん
垢版 |
2015/11/06(金) 14:25:45.36ID:rTGTpM5t
おれは型なし言語がscalaより保守性あるってのが理解できないわ。
とくにレールズなんて変化しまくりやんか
0096デフォルトの名無しさん
垢版 |
2015/11/06(金) 15:18:05.81ID:4lrqdnT0
型システムが強力なのはビジネスロジックには非常に有効だけど、
HTTPリクエストの中身を必死に型付けしようとするみたいにフロントエンドの近くで型遊びやるのは生産性下がるだけの阿呆
0097デフォルトの名無しさん
垢版 |
2015/11/06(金) 15:49:02.90ID:51omasux
そもアプリケーションがサーバーからクライアントに移っていってるんで5年10年前とは違うのだよ
0098デフォルトの名無しさん
垢版 |
2015/11/07(土) 10:17:41.48ID:kqClzOIN
>>95
ちょっとテーブルの列を追加/削除みたいな時に割りとコンパイルエラーになるのは嬉しい
保守性というより安全性か
>>96
sprayとかはHTTPリクエストの型付けを自然な感じで記述できるよ
レスポンスはjson返す事が多いからそんなに負担に感じない
0099デフォルトの名無しさん
垢版 |
2015/11/07(土) 10:23:53.11ID:kqClzOIN
scala 普通に使いこなす分にはそんなに学習コスト高いとは思わない
javaしか書いた事ないって人にはきついかも知れんけど
0100デフォルトの名無しさん
垢版 |
2015/11/07(土) 20:18:41.44ID:3iwKiLGj
数年前にもここで同じこと書いたけど
マクロやら内部DSLバリバリ使ったライブラリ書こうと思ったらしんどいけど
普通に書く分にはそんな難しいことないよな
よく言われる淫プリ嫉妬もIDE使えばどこからインスタンス供給されてるかすぐ分かるし
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況