______ .~ ~. |`````````, .'. ..'''' | | | |'''|''''' .''```. .'' |_________| | | `. .' `. ..' | | `.______.' | `. .' `. ....'' | | 1.0
______ .~ ~. |`````````, .'. ..'''' | | | |'''|''''' .''```. .'' |_________| | | `. .' `. ..' | | `.______.' | `. .' `. ....'' | | 1.0
Eclipse Junoのリリースとともに、Eclipse FoundationはXtendのリリースを高らかに発表した。これはラムダを備えたJava互換の言語で、Javaランタイムに完全な互換性をもつ。XtendはXtextというDSLライブラリおよびエディタ生成のためのプラグインスイートをベースにしている。 ScalaやCeylon、Kotlinと違って、Xtendは独自のバイトコードコンパイラを必要としていない。その代わり、XtendのソースファイルはJavaのソースファイルに変換され、それから通常のJavaコンパイラでコンパイルされる。その結果、Xtendは、標準的なJavaプロジェクトで使えるJavaを生成する、開発時の変換ツールとして利用したり、コンパイル時にJavaソースファイルを生成するのに使うソースモデルとして利用することができる。 Xtendをコンパイルするには2つの方
あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。
GroovyはJavaで開発されている、Java仮想マシン上で動作するスクリプト言語。Javaに似た文法を採用しており、ダイナミックなシェルスクリプトからWebアプリ開発まで幅広く対応している。JCP(Java Community Process)によって2004年に規格化(JSR 241)されている。 Groovy 2.0では、コードが正しいかどうか判断できるように静的型チェッカーの導入や、アプリケーションのパフォーマンス向上を目的として静的コンパイル機能の導入などが行われている。また、モジュール方式を新たに採用し、JARファイルの分割や独自の拡張モジュールを作成できるようにしている。その他、JDK 7の「InvokeDynamic」(JSR 292)の統合や「Project Coin」(JSR 334)のシンタックス強化なども実施されている。 Groovy 2.0はプロジェクトサイトよ
slf4jとlogbackに、魂を売り渡す勢いであります。 と言うのは冗談としても、何だか使い方が分からないけど、 Loggerのメソッドには、引数として存在しているorg.slf4j.Markerについて、考えてみたり。 現段階では、slf4jとlogbackを使ってる大きめのOSSプロダクトにおいて、 どんな使われ方をしてるかちゃんと見てないので、妥当な使い方なのかは、微妙。 まぁ、僕なら、こんな風に使ってみるよ、と言う感じのエントリ。 slf4j使おうって人達が、使い方を考える時のとっかかりになればいいかな…とか。 まず、org.slf4j.Loggerの、Markerを引数に取るメソッドの宣言と、org.slf4j.Markerの宣言を抜粋してみるよ。 public interface Logger { public void debug(Marker marker, String
LOG.debug("nice catch!") - connpass 2012/06/27 java-ja 『LOG.debug("nice catch!")』#java_ja #javaja - Togetterまとめ blogエントリを書くまでがjava-jaだと聞いたのでとりあえず書く。超まとまってません。各スピーカーの話の内容については他の人のblogに(たぶん)書いてあるのでそっちを見るとかTogetterを眺めるとかすればよいのではないでしょうか。 主催のみなさま、および会場提供のGREEさま、ありがとうございました。そういえばGREEでの勉強会って初めて参加した気がする。六本木ヒルズの入館、だいぶ簡単になりましたね。 いってきた どっちかというとアプリケーションのコード書く人が多かったんですかね。という感じで、アプリケーションコードからいかにして例外を投げるか、それをどのよ
例外の勉強会をやるので、是非にというお話を頂いて、 LOG.debug(“nice catch!”) というイベントで発表させていただきました。 当日の資料はこちらでご覧になれます。 エラー処理の抽象化 昨年末頃に社内セミナーで発表した エラー処理を書いてはいけない をもうちょっと抽象的に、あるいは具体的な話を入れて焼き直したような内容です。 今回は java-ja さんの勉強会という事で、 なにやらモヒカンとかマサカリとかが飛んでくるらしい、 とんでもないところに来てしまったとビクビクしていましたが、 この難局も何とか乗り切りました。はい。 皆さんとても真面目にソフトウェアエンジニアリングについて議論していて、楽しかったです。 僕は普段Javaでコードは書かないのですが、 Javaだと普通こうする的なのが垣間見えて、 いろいろJavaのバッドノウハウ(あるいはグッドプラクティス)が学べま
エラー処理の抽象化田中英行 <tanaka.hideyuki@gmail.com> 2012/06/26 @LOG.debug("nice catch!") 自己紹介田中英行 http://tanakh.jpTwitter: @tanakhGithub: https://github.com/tanakh Preferred Infrastracture 勤務のプログラマHaskellと、プログラミングについてあれこれ考えるのが好きHaskell入門書 すごいHaskellたのしく学ぼう! Learn You a Haskell for Great Good! の和訳 java-ja …!?とんでもないところに来てしまったぞ (((´・_・`))) ブルブル 本日のお話なぜ、エラー処理は重要なのか?なぜ、エラー処理の抽象化は重要なのか?なぜ、エラー処理の抽象化は行われて来なかったのか?
java-jaで例外処理の話をしてきました - 西尾泰和のはてなダイアリー を読んで。 Maybe は値があるかないかを型で表すことができます!そう、直和型なんです!とか言われてもイミフだと思うのです(リンク先のエントリがそう説明してるわけではないですが)。 Java の語彙で Maybe の説明をできたら嬉しい人もいるんじゃないかなぁ、とかなんとか。 ただし、書いてたら結構長くなりました。時間がある人はどうぞ。 Maybe? null より安全に「値がないこと」が扱えるものだよ スタート地点としてはこれでいいでしょう。 以降で、「なんで安全なの?」という全うな疑問に答えてみたいと思います。 問題点 int で説明すると煙に巻いてしまうような気がしたので、User クラスを見てみます。 import java.util.*; class User { final String name;
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
ブログを書くまでがjava-jaですが、もう眠いのでとりあえず1行だけ書いて、あとは徐々に書き足す。 会場を無料提供してくれたグリーさん、ありがとうございます! 誰かが検査例外の話をするだろうと思って書かなかったら結局誰も言及しなかった、Javaのコミュニティなのに。 っていうか聴衆が100人もいると、もしかしてそもそも「検査例外ってなに?」って人もいたんじゃないか?「検査例外がOCPを壊す」とか「Liskovの置換原則のLiskov」とか通じてるんだろうか?とりあえず直和型が通じてないことだけはひしひしと感じた。 Twitterの自分の発言を転載しておく。 ちなみにZen of Pythonでも「エラーを握りつぶすな」と書いてあります 禅 of Python: 20の格言 「例外はそもそも何のため」ってところ、ざっくり省いたんだけどもそういうところのほうがニーズあったかね?? 「C#1.
Angry BirdsのHTML5版にも使われた「PlayN」入門:PlayNでクロスプラットフォームのゲーム開発(1)(1/3 ページ) クロスプラットフォームゲームライブラリ「PlayN」とは 近年ゲーム開発の環境は変化し、個人でも手軽に開発できるようになりました。また、スマートフォンの普及により、より手軽にゲームが購入できるようになり、開発者側もGoogle PlayやApp Storeを利用することで多くの人にゲームを届ける環境が出来てきました。ゲームのプラットフォームも多様化し、iOS(iPhone、iPad、iPod touch)、Android、HTML5、Javaアプリケーション、Flashなどさまざまなものがあります。 しかし、多くのプラットフォームがあるということは、1つのゲームをより多くのプラットフォームに対応する場合、それぞれの環境に合わせて開発しなければなりません
Javaアプリでトラブルがあったりすると、アプリケーションのログなどを読んで解析をすると思いますが、パフォーマンスやGC周りでのトラブルについては、JDKに標準付属しているコマンドを使用すると原因究明の手がかりがつかめたりすることがあります。 自分も、ちょっと前にやっていたプロジェクトでは、かなり使うことになりました。どれも有名だとは思いますが、使い方をメモしておくという意味を込めて書いておきます。 まず、今回のサンプルとして、以下のような明らかに問題のあるプログラムを用意。 Monitor.java import java.util.ArrayList; import java.util.List; public class Monitor { public static void main(String[] args) { int busyThreadNum = 3; int spar
jinfoというJDKに付属しているコマンドラインツールを使用すると、Javaの起動オプションやシステムプロパティを確認できたり、「-XX」ではじまる一部の値については実行中に変更できるようです。 詳しい説明は以下に書いてありますが、jstackやjmapなどと同様、使用するには対象のJavaVMのPIDが必要です。 http://java.sun.com/javase/ja/6/docs/ja/technotes/tools/share/jinfo.html 例えば、以下のようなちょっとわざとらしいオプション指定でJavaアプリを起動します。 $ java -Xmx512M -XX:+UseParallelGC -XX:+UseParallelOldGC -XX:ParallelGCThreads=2 -XX:+PrintGCTimeStamps -XX:+PrintGC -XX:+Pr
Scheduled for release in 2013, Java 8 will include language support for lambda functions. Although the specification is still in flux, lambdas are already implemented in JDK 8 binaries. This article takes a tour of the new lambda syntax, the use of lambdas in the Collections API, and related language enhancements. All code snippets were compiled with JDK 8 lambda build b39. Functional interfaces I
java.util.Propertiesを使う J2SE5以降のjava.util.Propertiesは、XMLファイル形式をサポートしている。 日本語などを使う場合も、昔ながらの native2ascii のお世話になる手間がなく、 デコードし直さなくても、ちゃんと人間が読める文字なので修正もらくちんだし、 改行を含む長い文字列だって、末尾の空白に神経質にならずとも簡単に扱える。 今となっては、*.propertiesファイルは過去のデータを引き継ぐ場合以外に有用性はないと思う。 XMLPropertiesTest.java import java.io.IOException; import java.util.Properties; public class XMLPropertiesTest { public static void main(String[] args) thr
前 maven2gradle を使ってみた(メモ) - hd 4.0 で maven2gradle で生成した build.gradle を使って eclipse + wtp で開発できるようにしたのでメモ。 以前の状態だと war 作ったり jettyRun で起動したりはできたけど eclipse + wtp で動かない状態だった。やはり個人的には eclipse で開発できないと辛い。 Gradle STS Support のインストール eclipse で gradle 使うなら多分これが今のところ一番よさそう。まぁコマンドラインでもいい・・というかコマンドラインで十分な気もしないでもないが。 どっかで STS 入れなくても単体で動くとか見たんだけど、 STS がないと認識されてないっぽかったので STS を入れる。重いらしいがまぁ Spring も使うし・・。特に何も考えず Ma
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く