nds36 java7&java8

Post on 31-May-2015

1.943 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

http://nagaoka.techtalk.jp/no36

TRANSCRIPT

Java7やJava8が僕らの目に優しくなってきているNkzn 2014.3.15 長岡開発者勉強会 #36

自己紹介名前:中川幸哉 a.k.a なかざん(@Nkzn)

先日27歳になりました(あらさー!)

アグリノート社ウォーターセル社の人

Androidアプリエンジニアです

最近はコーディングよりマネージャー業務とかアーキテクト業務が多めです

Javaつらい勢

Javaの話Write Once, Run Anywhere

Java Language1995年登場

2010年1月、開発元のSunがOracleに買収された

最新バージョンはJava SE 7u51

3日後くらいにJava8がリリースされるらしい

強い静的型付け

C++などからの派生言語

Duke

Java Overview

Hardware

Operating System (Windows, OS X, Linux, others)

Java Virtual Machine(JVM)

Java Code (.java)

Byte Code (.class)

compiler (javac)

Type Checking

Javaと一言に言っても言語としてのJava(今回はこれ)

動作環境としてのJava

Java Virtual Machine (JVM)

Java Runtime Environment (JRE)

JavaScriptの言い間違えとしてのJava(やめろ)

見た目の特徴名前空間(package)

クラスベース

前置の型宣言

セミコロン必須

型付きのコンテナ(Generics)

ドットによるフィールドやメソッドの呼び出し

自身のインスタンスは「this」

テキスト

Java7でGenericsが賢くなったお話ダイヤモンドは砕けない

Java6まで

Java7から

型推論代入式の左辺で型が確定しているジェネリクスは、右辺で型パラメータを指定しなくてもよくなりました

<>のことをダイヤモンド演算子 (Diamond Operator)と呼びます

どうせIDEが補完してくれる部分だったので、正直タイプ数はそんなに変わらなくて、嬉しいかと言われると微妙

コードがある程度ごちゃごちゃしなくなったので、見やすくなった点はだいぶ嬉しい

いちおーJava8では、代入だけではなく引数に入れるときにもダイヤモンド書いていいことになったらしいです(特に嬉しくはない)

テキスト

Java8でコールバックが書きやすくなったお話() -> {}

Java7までのinterfaceの匿名実装インターフェースの定義

匿名クラスを実装してセット

–Yukiya Nakagawa (1987~)

“だるい。”

Java8から

ラムダ、はじめました

省略の過程原型

処理が1行の時、ブロックとreturnは省略可

引数の型が自明であるときは省略可

引数が1つのときは括弧を省略可

まとめ

最近のJava言語(特にJava8)は、ScalaなどのJava派生言語が持つ良いところを積極的に取り込もうとしている感じが好ましいです。

Java8には他にも色々と新機能が追加されているので、調べてみるといいと思います。

最後に業務連絡

AndroidのVMにはJava7の一部の機能(型推論とか)しか実装されませんでした

Java8にはJava7で追加されたinvokeDynamicを踏まえた新機能が結構あるっぽいので、AndroidにはJava8は来ないと思ったほうがいいです

ご清聴ありがとうございました 。゚(゚´Д`゚)゚。

top related