タグ付けされた質問 「scala」

Scalaは、主にJava仮想マシンを対象とする汎用プログラミング言語です。一般的なプログラミングパターンを簡潔、エレガント、タイプセーフな方法で表現するように設計されており、命令型プログラミングと関数型プログラミングのスタイルを融合しています。その主な機能は次のとおりです。型推論を持つ高度な静的型システム。関数タイプ; パターンマッチング; 暗黙的なパラメータと変換。演算子のオーバーロード。Javaとの完全な相互運用性。並行性


4
ScalaのオプションでJavaのnullを返すメソッドをラップする?
私がメソッドを持っているとしsession.get(str: String): Stringましょう。それはJavaから来ているので、それがあなたに文字列またはnullを返すかどうかわかりません。 代わりにScalaでこれを処理する簡単な方法はありsession.get("foo") == nullますか?たぶんいくつかの魔法がのように適用されToOption(session.get("foo"))、私はそれをScalaのように扱うことができます ToOption(session.get("foo")) match { case Some(_) =>; case None =>; }
107 java  scala  scala-option 

5
機能的なデザインパターン[終了]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 4年前休業。 この質問を改善する モナド、アプリケーション、矢印など、機能的なイディオムはたくさんあります。それらはさまざまな記事に記載されていますが、残念ながら、それらが1か所にまとめられている本や記事はありません(Typeclassopediaがありますが、たくさんあります十分にカバーされていない領域の)。誰かが1か所で十分にカバーし、FPの中間スキルを持つプログラマーがアクセスできる記事/本を推薦できますか?

1
Scalaz 7のzipWithIndex / group列挙子によるメモリリークの回避
バックグラウンド この質問で述べたように、私はScalaz 7反復を使用して、一定のヒープスペースでデータの大規模な(つまり、制限のない)ストリームを処理しています。 私のコードは次のようになります: type ErrorOrT[M[+_], A] = EitherT[M, Throwable, A] type ErrorOr[A] = ErrorOrT[IO, A] def processChunk(c: Chunk, idx: Long): Result def process(data: EnumeratorT[Chunk, ErrorOr]): IterateeT[Vector[(Chunk, Long)], ErrorOr, Vector[Result]] = Iteratee.fold[Vector[(Chunk, Long)], ErrorOr, Vector[Result]](Nil) { (rs, vs) => rs ++ vs map { case (c, i) => processChunk(c, i) …
106 scala  scalaz  iterate 

6
かっこ、ドット、中かっこ、=(関数)などを省略できる正確な規則は何ですか?
括弧、ドット、中括弧、=(関数)などを省略(省略)できる場合の正確な規則は何ですか? 例えば、 (service.findAllPresentations.get.first.votes.size) must be equalTo(2). service 私の目的は def findAllPresentations: Option[List[Presentation]] votes 戻り値 List[Vote] 仕様の機能である必要があります なぜ行けないのですか: (service findAllPresentations get first votes size) must be equalTo(2) ? コンパイラエラーは次のとおりです。 「タイプOption [List [com.sharca.Presentation]]のRESTServicesSpecTest.this.service.findAllPresentationsはパラメーターを取らない」 パラメータを渡そうとしているのはなぜですか?すべてのメソッド呼び出しにドットを使用する必要があるのはなぜですか? (service.findAllPresentations get first votes size)equalTo(2)にする必要がある理由: 「見つかりません:最初に値」 しかし、「equalTo 2で(service.findAllPresentations.get.first.votes.size)なければならない」はequalTo 2で なければなりません。つまり、メソッドチェーンは正常に機能しますか?-オブジェクトチェーンチェーンチェーンパラメータ。 Scalaの本とWebサイトを調べましたが、包括的な説明は本当に見つかりません。 実際、Rob HがStack Overflowの質問で説明しているように、Scalaではどの文字を省略できますか?、「。」を省略できる唯一の有効なユースケース 「オペランド演算子オペランド」スタイルの操作用であり、メソッドチェーン用ではありませんか?
106 syntax  scala 

3
WebSphere MQやTibco Rendezvousなどのメッセージングソリューションの代わりにアクターを使用するのはいつですか?
JMSの代わりにScalaのアクターを支持する設計上の決定についての質問と回答をすでに読みました。。 通常、私たちは何年も前から存在しているメッセージングソリューションを使用します。WebSphereMQやApache ActiveMQなどのJMS実装がポイントツーポイント通信に使用されるか、Tibco Rendevousがマルチキャストメッセージングに使用されます。 それらは非常に安定しており、実績があり、高い可用性とパフォーマンスを提供します。それにもかかわらず、設定とセットアップはAkkaよりもはるかに複雑に見えます。 前述の製品(WebSphere MQまたはActiveMQ)がこれまで正常に使用されてきたいくつかのユースケースでAkkaを使用する必要があるのはなぜですか。今後のプロジェクトで、WebSphere MQまたはTibco RVの代わりにAkkaを使用することを検討する必要があるのはなぜですか? そして、いつアッカを避けるべきですか?他のソリューションと同じ高可用性とパフォーマンスを提供していますか?それとも、Akkaを他のメッセージングミドルウェアと比較することさえ悪い考えですか? たぶん、JVM(Point-to-Point)、TibcoRV(マルチキャスト)、Akka以外に検討する必要がある別のメッセージングソリューションもJVM環境にありますか?
106 java  scala  jms  actor  akka 

3
なしをリストから除外する方法[オプション]?
私が持っている場合はList[Option[A]]Scalaで、フィルタリングするための慣用的な方法何であるNoneの値は? 1つの方法は、以下を使用することです。 val someList: List[Option[String]] = List(Some("Hello"), None, Some("Goodbye")) someList.filter(_ != None) もっと「慣用的な」方法はありますか?これはかなり簡単に見えます。
105 scala  option 

7
Rest APIサーバー用のScalaフレームワーク?[閉まっている]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 4年前休業。 この質問を改善する Rest APIサーバー(Symfony PHPではWebサービス内にあります)をScalaに移動することを考えています:速度、オーバーヘッドがない、CPUが少ない、コードが少ない、スケーラビリティーなど。いくつかまでScalaを知りませんでした数日前ですが、Scalaブックとすべてのブログ投稿および質問で、最近学んでいることを楽しんでいます(それほど醜くはありません!) 次のオプションがあります。 Rest APIサーバーを一から構築する Scalatraのような小さなScala Webフレームワークを使用する リフトを使用する HTTPリクエスト、JSON出力、MySQL(データ)、OAuth、Memcache(キャッシュ)、ログ、ファイルのアップロード、統計(おそらくRedis)。 あなたは何をお勧めします?
105 api  rest  scala  lift 

5
java.util.ListをScalaリストに変換する方法
このScalaメソッドには以下のエラーがあります。Scalaリストに変換できません。 def findAllQuestion():List[Question]={ questionDao.getAllQuestions() } 型の不一致; 見つかりました:java.util.List[com.aitrich.learnware.model.domain.entity.Question]必須: scala.collection.immutable.List[com.aitrich.learnware.model.domain.entity.Question]

5
Scalaケースクラスを宣言することの欠点は何ですか?
多くの美しく不変のデータ構造を使用するコードを記述している場合、caseクラスは天の恵みのように見え、1つのキーワードだけで以下のすべてを無料で提供します。 デフォルトではすべて不変 自動的に定義されたゲッター まともなtoString()実装 準拠するequals()およびhashCode() マッチングのためのunapply()メソッドを持つコンパニオンオブジェクト しかし、不変のデータ構造をケースクラスとして定義することの欠点は何ですか? クラスまたはそのクライアントにはどのような制限がありますか? ケース以外のクラスを優先する必要がある状況はありますか?
105 scala  case-class 


4
sbtはどのようにgitから依存関係のアーティファクトをプルできますか?
sbtgitリポジトリから依存関係を取得できると聞いたことがあります(また、どこかを思い出せば、例も見ました)。 依存関係harrah / upをgithub から取得したいと考えています。リポジトリはアーティファクトJARファイルを提供せず、を使用して構築するように設定されたソースツリーのみを提供しsbtます。私が想像しているプロセスはsbt、ソースリポジトリをダウンロードしてビルドし、それを依存関係のアーティファクトとして使用することです。 私はsbt実際にこのようなことができると想像しているかもしれません。それをできる?もしそうなら、どうやって?

9
Scalaにはどのような自動リソース管理の選択肢がありますか?
ScalaのWebでARM(自動リソース管理)の多くの例を見てきました。それを書くのは慣習のようですが、ほとんどは互いに似ています。私がやったものの、継続を使ってかなりクールの例を参照してください。 とにかく、そのコードの多くにはあるタイプまたは別のタイプの欠陥があるので、ここでStack Overflowにリファレンスを用意して、最も適切で適切なバージョンに投票できるようにするとよいと思いました。

5
Scalaタイプのプログラミングリソース
この質問によると、Scalaの型システムはチューリング完全です。初心者がタイプレベルのプログラミングの力を利用できるようにするために、どのようなリソースが利用できますか? これまでに見つけたリソースは次のとおりです。 Daniel SpiewakのScalaの土地にある高い魔法使い ScalaでのApocalispの型レベルのプログラミング JesperのHList これらのリソースは素晴らしいですが、基本が足りないように感じるので、構築するための確固たる基盤がありません。たとえば、型定義の概要はどこにありますか?タイプに対してどのような操作を実行できますか? 優れた紹介リソースはありますか?
102 scala  types 

4
Scalaのリストを2つのフィールドでソートする方法は?
Scalaのリストを2つのフィールドで並べ替える方法。この例では、lastNameとfirstNameで並べ替えます。 case class Row(var firstName: String, var lastName: String, var city: String) var rows = List(new Row("Oscar", "Wilde", "London"), new Row("Otto", "Swift", "Berlin"), new Row("Carl", "Swift", "Paris"), new Row("Hans", "Swift", "Dublin"), new Row("Hugo", "Swift", "Sligo")) rows.sortBy(_.lastName) 私はこのようなことを試します rows.sortBy(_.lastName + _.firstName) しかし、それは機能しません。だから私は良い簡単な解決策に興味があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.