Scala 3で変わった機能の背景事情と、現段階でわかっているマイグレーションの話中心です。 2020/1/31 (株)セプテーニ・オリジナル 社内勉強会 資料
Scala 3で変わった機能の背景事情と、現段階でわかっているマイグレーションの話中心です。 2020/1/31 (株)セプテーニ・オリジナル 社内勉強会 資料
マイクロアドのサーバサイドエンジニアの松宮です。少し時間が経ってしまったんですが、今年もScala関西Summitに参加してきましたのでマイクロアドと絡めながらつらつらと感想を書きたいと思います。 ちなみに今年はマイクロアドからも初めてスポンサードさせて頂きました! 今までもマイクロアドではScalaを採用したプロダクトはいくつかありましたが、全体ではJavaがメインだったため、Scala関係のイベントへのスポンサードはしておりませんでした。しかしここ数年でApache Sparkを採用したり、主要プロダクトのScala化をきっかけに社内全体にScalaが浸透していき、その結果、今回のScala関西Summit 2018へのスポンサードができました! Apache SparkやScalaへの変遷については以前のブログ記事で紹介させて頂いていますので、良ければご覧ください。 順序保証型分散ス
、MessagePackを使う利点は、以下の3つ: 様々なデータフォーマットに対応できるコンパクトなバイナリ表現Self-describing format (データ自身が型を持っている)ため、種々のフォーマットからオブジェクトへのマッピングをschema-on-readのテクニックで実装できるまた、オブジェクトデータをデータフォーマットを気にせずに手軽に保存できるというのは、計算の再利用、プログラムの再開などを可能にしてくれるので、複雑なデータ処理において強力な武器になります。 要点その2: AirframeにはDependency Injection (DI)のためのライブラリがありますが、DIを理解するには、「何ができるか」ではなく、プログラミング中に「何を忘れることができるか」が大切です。
Just tried out Dotty 0.2.0-RC1 today and I found it suprising that the following code compiles: def take(b: Boo | Null): Boo = { val z: Boo = b z } I can find some tidbits of discussion on https://gitter.im/lampepfl/dotty, but there doesn’t seem to be an issue on github tracking discussion on this topic. Everything being nullable has always been one of those “yeah but we don’t do that” moments in
こんにちは、かたいなかです。 ScalaMatsuriが東京国際交流館のプラザ平成を会場に、2018年3月16日(金)(Training Day)、3月17日(土)、3月18日(日)の3日間にわたって行われています。 今回は、3月17日(土)の1日目に参加してきましたので、参加したセッションについてレポートします 「Composabilityはなぜ重要か」 中村学(がくぞ)さん @gakuzzzz スライド Scalaの持っている高いComposabilityの重要性についての発表でした。 「問題を分割する方法は、解を合成する方法に依存する」ため、言語機構や標準ライブラリ等の"Composability"が高い(合成の「方法」が多い)ほど、問題を分割しやすくなるという説明にとても深い納得が得られました。 仕事で役立つモナド変換子 Gabriele Petronellaさん @gabro27
Here are my three tips for keep maintaining Scala projects: Use Scala version upgrade as your learning opportunityManage your core libraries in a monorepoFind your Scala NinjaUse Scala Version Upgrade As Your Learning OpportunityUpgrading Scala version is not an easy task, especially if you are using a lot of third-party libraries. Although the syntax of Scala has not been changed so much, librari
The rapidly growing number of interconnected devices confirms the Internet of Things (IoT) is a fast maturing technology. The digital economy has its own currency and that is data. Similar to the standard currencies, data is valuable if you can use it. The IoT is a driver for being data rich. However, having the data is not quite enough; you need to be able to analyze the data and take the appropr
目的 Play2 + Slick / ScalikeJDBCを使ってWebアプリケーションを作成するハンズオンです。 主な目的は以下の通りです。 Scalaに触れてもらう 数時間でとりあえず動くものを作ってみる そのため、なるべくフレームワークが提供する機能をそのまま使います。 内容 ユーザ情報のCRUDを行う簡単なアプリケーションを作成します。また、後半では同様のCRUD処理を行うJSONベースのWeb APIも作成します。 なお、このハンズオンコンテンツはGitHubで管理されています。 リポジトリ内にはハンズオンで作成するWebアプリケーションの完成版も含まれていますので必要に応じて参照してください。 フィードバック ご意見・質問などはGitHubのIssuesにお願いします。 もちろんPull Requestsも歓迎です。
このブログを更新するのも、ちょっと久しぶりですね。今回は宣伝というか、表題の件についてちょっと書こうと思います。 ここ数年、ScalaMatsuriはかなりの規模で開催されています。例年は2日間だったのを、3日間に拡張して、最初の1日を 「Training Day」として、主に、Scala初学者やScalaを普段触っていない人向けのプログラムにすることになりました(プログラムはこちらです)。 さて、このTraining Day、結城清太郎さんによる「Scalaハンズオン」、山本裕介さんによる「IntelliJ ハンズオン」などなど、ハンズオン形式のものや入門的な発表が多数あります。Scalaって最近どうなのよという初学者の方や、昔Scalaを触っていたけど最近は触っていないといった人に楽しんでいただけるイベントになると思います。Training Dayのチケットはこちらからお願いします*1
21. Scalaのコレクション Scalaにはimmutableなコレクションとmutableなコレクションが ある 基本的にはimmutableなコレクションが推奨されている // immutableなシーケンス val langs = Seq("Java", "Scala", "Kotlin") // mutableなシーケンス import scala.collection.mutable.ListBuffer val langs = ListBuffer("Java", "Scala", "Kotlin") 22. mutableコレクションを使いがちなケース ループしながら詰め替えるような処理で使いがち val list = ... val map = mutable.Map("some" -> 0, "none" -> 0) list.foreach { x => if (x
SBT is the default build tool for the Scala programming community: you can build Scala using other tools, but the vast majority of the community uses SBT. Despite that, nobody seems to like SBT: people say it's confusing, complicated, and opaque. This post will deeply analyze what exactly it is about SBT that people don't like, so we can build a consensus around the problems and a foundation for h
社内で『Functional Programming in Scala(邦題: Scala関数型デザイン&プログラミング)』の読書会が始まりそうなので、本書の読み進め方についてまとめておきたいと思います。 実は昨年にも読書会を開催したのですが、その時はがむしゃらに進めた結果、Part1(全体の1/3程度)を読んだところで力尽きました。今回はその経験を踏まえて、心が折れないような進め方を心がけたいと思いますw 本書について 本書を知らない方のために説明すると、本書はScalaを使って関数型プログラミングを学ぶための本です。 本書は実際に手を動かして(プログラミングを書いて)、関数型プログラミングを会得することを目指しており、各章で説明と練習問題が交互に書かれている、いわゆる教科書とドリルをミックスしたような構成になっています。また全体ではPart1から4まであり、基礎的な概念から応用へとステ
Scala is my current favorite general-purpose programming language. However, it definitely has its share of flaws. While some are deep trade-offs in the design of the language, others are trivial, silly issues which cause frustration far beyond their level of sophistication: "warts". This post will explore some of what, in my opinion, are the warts of the Scala programming language, to hopefully ra
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く