Unified governance for all data, analytics and AI assets
![Data Lakehouse Architecture | Databricks](https://cdn-ak-scissors.b.st-hatena.com/image/square/f0e631b011e6ff3f32b47365cb9f8c206c8aa20b/height=288;version=1;width=512/https%3A%2F%2Fwww.databricks.com%2Fsites%2Fdefault%2Ffiles%2F2023-11%2Fdatabricks-og-universal.png)
Effective Scala Marius Eriksen, Twitter Inc. marius@twitter.com (@marius) [translated by Yuta Okamoto (@okapies) and Satoshi Kobayashi (@scova0731)] Table of Contents 序章 書式: ホワイトスペース, 命名, インポート, 中カッコ, パターンマッチ, コメント 型とジェネリクス: 戻り型アノテーション, 変位, 型エイリアス, 暗黙 コレクション: 階層, 使う, スタイル, 性能, Java コレクション 並行性: Future, コレクション 制御構造: 再帰, Return, forループと内包, require と assert 関数型プログラミング: 代数的データ型としてのケースクラス, Option, パターンマ
米Typesafeは6月2日、Java/Scala向けアプリケーション開発フレームワーク最新版「Play Framework 2.3」をリリースした。Java 8のサポートなど多数の新機能が導入されている。 Play FrameworkはJavaおよびScalaに対応するWebアプリケーション開発フレームワーク。生産性向上にフォーカスし、CPU、メモリなどのリソースを最小限に抑えた、高性能で拡張性に優れたモダンなアプリケーションを開発できるという。 Play Framework 2.3ではクライアント側のツールを強化、ビルドツール「sbt」のWeb向けプラグインである「sbt-web」が導入された。クライアントサイドのアセット処理ではエンジンとしてRhinoもしくはNodeを選択できるようになり、LESS、CoffeeScript、RequireJSといったツールの性能を改善するという。s
This article shows how Scala adopts and transforms the classical software design patterns. The content of the article is also (independently) translated into Russian and Chinese. Design pattern is a general reusable solution to a commonly occurring problem in software design. A design pattern is not a finished code, but rather a template for how to solve a problem that can be used in many differen
米Typesafeは3月20日、Scala開発向けのEclipseプラグイン「Scala IDE for Eclipse 3.0」を公開した。デバッガ統合、エディタの改善、プラグイン機構の導入など多数の機能が加わっている。 Scala IDE for Eclipseは、EclipseにScala開発用の機能を追加するEclipseプラグイン。ScalaとJavaが混在したプロジェクトをサポートし、各プロジェクトの依存性追跡や両言語間での相互参照が可能という。ライセンスはBSDスタイルのScala License。 Scala IDE for Eclipse 3.0は、2011年12月に公開されたバージョン2.0以来のメジャーリリースとなる。大きな変更点としてはセマンティックハイライトや型表示、ソースジェネレーターなどエディタの強化が挙げられている。シンタックスハイライト、リファクタリングな
Java開発者がScalaでPlay frameworkのビューを作るには:Javaの常識を変えるPlay framework入門(3)(1/3 ページ) Play frameworkのWebページ生成の流れ 前回の記事「Play frameworkのDB操作を楽にするEBeanの基礎知識」では、Play frameworkとDBとの接続方法や操作方法を紹介しました。今回はビューに焦点を当て、Java開発者にとって役立つPlay frameworkの使い方を紹介します。 まず、Play frameworkでのWebページ生成の全体像を簡単に説明します。Play frameworkを利用したアプリケーションでは、次の流れでWebページを生成します。 クライアントからHTTPリクエストを受け取る conf/routesファイルの定義に基づいて、処理を行うJavaメソッドを特定 処理を実行(DB
Javaの常識を変える「Play framework」とは 「Play framework」は、サーバサイドJavaとScalaのためのMVCフレームワークです。この連載では、主にJavaのフレームワークとしてのPlay frameworkを紹介していきます。でも「Javaで、Web向けで、MVCで……」なんて、ありふれた感じですよね。それなら「Scalaで、どう作るのか」という話の方が興味あるという方もいるでしょう。 しかし、Play frameworkはバージョン1まではJavaのフレームワークとして作られていました。また、ScalaはJavaVM上で動作するプログラミング言語です。つまり現在の最新バージョンの2でも基礎の部分で動いているのはJavaです。Play frameworkを知るためには、まず基礎から固めていくのが正攻法だと思います。Scalaについて知りたい読者は、以下の記
EclipseでScalaプログラミングを始めるための基礎知識:スケーラブルで関数型でオブジェクト指向なScala入門(1)(1/3 ページ) 人気の「Scala」を一から学ぼう 最近、私の周りでもScalaに関する話題が増えてきました。Twitterやブログ、技術系のニュースサイトでは毎日のようにScalaに関連する話を見かけます。 また、筆者が現在携わっているプロジェクトでも実際にScalaを用いて開発しています。いままではJavaで開発をすることが多かったのですが、それよりも簡潔で柔軟性のある記述が可能であり、Scalaでの開発は非常に生産性が高いと感じています。 本連載は、Scalaの特徴を紹介し、基本構文や関数、クラスなど、Scalaの基本的な機能について解説していきます。何らかのプログラミング言語を学んだことがあり、プログラミングの基本的なことが分かる人を対象としています。特に
XMLリテラル ScalaではXMLをプログラム中に直接書くことが出来る(XMLリテラル)。 また、波括弧でくくったブロックを作ることにより、XMLリテラルの外の変数や演算を記述することも出来る。 val x1 = <sample>hoge</sample>val x2 = <sample> <zzz>test</zzz> <foo/> </sample>x1: scala.xml.Elem = <sample>hoge</sample> x2: scala.xml.Elem = <sample> <zzz>test</zzz> <foo></foo> </sample> Scala 内容 備考
なぜ、いまScalaなのか? TwitterがScalaを利用しているのは有名ですが、他にも位置情報を利用したfoursquareはScalaで構築されたLiftというWebフレームワークを利用していますし、GTDツールとして有名なRemember The MilkもScalaの利用を検討しているようです。 Scalaは、Java Virtual Machine(以下JVM)上で動くオブジェクト指向+関数型言語です。簡潔で柔軟な記述が可能であり、マルチコアを意識したライブラリがあり、JVMでのスケールメリットを享受できることが、これらの企業で採用に踏み切った理由であると考えられます。 Scalaは、非常にバランスの取れたプログラミング言語です。本連載では、Scalaの基本的な文法を解説しながら、オブジェクト指向と関数型言語を組み合わせたプログラミングスタイルについて、解説したいと思います。
はじめに 前回の「Google App Engine/JavaでのScala/Liftアプリケーション開発(前編)」では、Google App Engine(GAE)JavaでLiftアプリケーションを利用する基本的な方法を解説しました。 後編である本稿では、前回作成したイベント管理アプリケーションに機能追加を行いながら、Googleが提供するemailサービスやスケジュールサービス(cron)、TaskQueue(非同期バックグラウンド処理)などを利用してアプリケーションを構築する方法について説明します。 また、これまで説明していなかったLiftViewによるテンプレートを利用しないレスポンスの生成や、カスタムディスパッチで任意のURLの処理を行う方法も紹介します。 対象読者 Javaは知っているが、Scalaも学んでみたいと思っている方 ScalaでのWebアプリケーション開発に興味が
http://d.hatena.ne.jp/nazoking/20100514/1273774142 の続き 細かいというか解説がいらないのいろいろ すべてがオブジェクト オブジェクト指向型言語javaにおいてObjectではないものがある。int,long,floatなど。 たとえば 1.toString() はコンパイルできない。 しかし! scalaでは「すべてがオブジェクト」なので、上のコードはなんの問題もなくコンパイルできる。javaではいろんなところでintとIntegerの変換をしてやる必要があるが、scalaではそれは全部コンパイラが面倒を見てくれる。 クラス階層はこんな感じ Any +--AnyVal | +-Int | +-Byte | +-: | +--AnyRef <=Object +- String +- 普通のクラス +- : デフォルト値付き引数 scala2
Java仮想マシン上で動くオブジェクト指向+関数型言語として、Scala(スカラ)が最近注目を集めています。Scalaで構築されたWebアプリケーションフレームワークはいくつかありますが、 本連載ではその中で比較的歴史のある(といっても2年程度ですが) フレームワークである、Lift(リフト)を紹介したいと思います。 はじめに Java仮想マシン(以下JVM)上で動くオブジェクト指向+関数型言語として、Scala(スカラ)が最近注目を集めています。 Scalaで構築されたWebアプリケーションフレームワークはいくつかありますが、 本稿ではその中で比較的歴史のある(といっても2年程度ですが) フレームワークである、Lift(リフト)を紹介したいと思います。 対象読者 Javaは知っているが、Scalaも学んでみたいと思っている方 ScalaでのWebアプリケーション開発に興味がある方 必要な
Starting up the project (Scala version)IntroductionIn this tutorial you will learn the play framework by coding a real web application, from start to finish. In this application, we will try to use everything you would need in a real project, while introducing good practices for play application development.We have split the tutorial into several independent parts. Each part will introduce more co
Bloggerを始めるにあたり、SmartDocが生成したHTMLをBlogger用に変換するScalaプログラムsdoc2bloggerを書いた。Scalaで、XML、DOM、XSLT、NekoHtmlを使う実例として参考になるかもしれない。 Scalaでは極めて簡単にXMLを扱うことができる。まず、XMLリテラルが使えるのが極めて大きい。プログラム内で生成したXMLデータ(scala.xml.Node, scala.xml.Elem)をtoStringで文字列に変換できるのも便利。さらに、XMLリテラル中に「{}」を使って式を埋め込むことができる。XMLを処理するプログラムを書くのにScalaは手離せない。 ただ、ScalaのXML操作系は独自体系(scala.xml.Node, scala.xml.Elem)になっているので、既存のDOMベースのコンポーネントを利用するにはscala
Monday, May 11, 2009 Scala and XML - Part 1 As you know, Scala has a great syntax for XML. Here are some lessons from working with it. Here is a yet another Scala XML sample which creates html.import scala.xml.XML._ import scala.xml.NodeBuffer import scala.xml.dtd.{DocType, PublicID} object ScalaHtml { val words = List("one", "two", "three") val url = "http://www.scala-lang.org/" def main(args : A
Scalaとは Scalaは、2003年にJavac(コンパイラ)やJavaのGenericsの設計/開発貢献者であるMartin Odersky氏(スイス・ローザンヌ工科大学教授)によって、開発が開始された比較的新しいプログラミング言語です。Javaは実用言語として幅広いシステムで使用されてきましたが、下位互換性を保つという要請の中、言語としての機能強化がなかなか進まないといった限界も見えてきています。そのような現状もあることから、ScalaはJavaの後継として実用的な言語を目指して開発されています。 Scala最大の特徴は、Javaの良さを最大限継承しつつ、スクリプト言語や関数型言語の良いところも吸収し、先進的な機能/文法を取り入れている点です。また、今後のハードウェアのマルチコア化を見据え、簡易に並列処理プログラミングを行うことができるライブラリが付属しています。 Scalaのメリ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く