idealize you

42
IDEALIZE YOU @mumoshu

Upload: yusuke-kuoka

Post on 21-May-2015

4.915 views

Category:

Documents


3 download

DESCRIPTION

IntelliJ IDEA入門。一番最初に覚えてほしいオススメ機能とか、IDEAを使う理由の考察。

TRANSCRIPT

Page 1: IDEALIZE YOU

IDEALIZE YOU@mumoshu

Page 2: IDEALIZE YOU

自己紹介

九岡 佑介(クオカ ユウスケ)

twitter: @mumoshu

Page 3: IDEALIZE YOU

福井県出身

東京でWebエンジニア(2年)

京都でSNS、iPhoneアプリ開発、    ログ解析とか(3年)

Page 4: IDEALIZE YOU

趣味ではPlay framework 2.xやUnity

もちろんIntelliJ IDEAも!

Page 5: IDEALIZE YOU

Topics

お話すること

Page 6: IDEALIZE YOU

これだけは覚えてほしい!

オススメ機能

Page 7: IDEALIZE YOU

時間があれば

操作デモ

Page 8: IDEALIZE YOU

少しだけ

IDEに何を期待する?

Page 9: IDEALIZE YOU

Features

IntelliJ IDEAの機能

Page 10: IDEALIZE YOU

Git IntegrationSubversion IntegratoinGitHub IntegrationLocal HistoryPlay framework 2.0 supportVelocityA lot of pluginsDarcula is coolOverride methodsImplement methodsRename refactoringMove refactoringExtract variables

Extract methodsType HierarchyCode CompletionSmart Type CompletionGenerate CodeJavaScalaRubyPHPJavaScriptCoffeeScriptTypeScriptHTMLXHTML

CSSLESSSCSSSASSXMLSBTMavenAntDocumentation PopupCode formattingCopyrightCode generationDatabaseJIRA

Page 11: IDEALIZE YOU

この中から

選べと言われても…

Page 12: IDEALIZE YOU

そうだ

IDEAに訊いてみよう

Page 13: IDEALIZE YOU

PRODUCTIVE GUIDE生産性ガイド

Page 14: IDEALIZE YOU

IDEAの利用状況と使い方を一望できます

Productive Guide

Page 15: IDEALIZE YOU

機能名 分類 利用回数

説明

Page 16: IDEALIZE YOU

Productive Guide

たまに振り返ることが上達への近道?

達人のProductive Guide見せてもらうと参考になるかも

今回はProductive Guideで上位にあった機能を紹介します

Page 17: IDEALIZE YOU

Frequently used

よく使う機能

Page 18: IDEALIZE YOU

Basic code completionFinish lookup by special charactersSyntax aware selectionGo to declarationSmart type completionGo to classComment/Uncomment current lineGo to implementationRename

Quick definition lookupGo to fileReplace By when using lookupShow usagesVariable name completionGo to symbol....

Page 19: IDEALIZE YOU

Basic code completionFinish lookup by special charactersSyntax aware selectionGo to declarationSmart type completionGo to classComment/Uncomment current lineGo to implementationRename

Quick definition lookupGo to fileReplace By when using lookupShow usagesVariable name completionGo to symbol....

1.コードナビゲーション2.コード補完3.コーディング支援

Page 20: IDEALIZE YOU

よく使っていたのは

コードナビゲーション

Page 21: IDEALIZE YOU

Code Navigation

コードナビゲーション

Page 22: IDEALIZE YOU

コードナビゲーションGo to

Line

File

Class

Symbol

Show Usages

Type Declaration

Super Method

Implementation

File Structure

Page 23: IDEALIZE YOU

ファイル内の指定行にジャンプ(Go to Line)

ファイル名を検索してジャンプ(Go to File)

クラス名を検索してジャンプ(Go to Class)

変数名、メソッド名などを検索してジャンプ(Go to symbol)

Go to ...

Page 24: IDEALIZE YOU

使用回数上位は

ほとんどGo toでした

Page 25: IDEALIZE YOU

しかしNavigationには

他にもオススメ機能が

Page 26: IDEALIZE YOU

変数、メソッド、クラスなどの利用箇所を全て検索する

例)あるクラスのメンバ変数hogeの利用箇所を全て検索する

Show usages

Page 27: IDEALIZE YOU

変数の型を検索して、型の定義にジャンプ

例)Stringの変数にカーソルを合わせて発動したら、Stringクラスのコードにジャンプする

Type declaration

Page 28: IDEALIZE YOU

サブクラスのメソッドから、スーパークラスのメソッドへジャンプ

Super method

Page 29: IDEALIZE YOU

あるクラスのサブクラス、あるインタフェースの実装クラスなどを検索してジャンプ。

実装が複数ある場合、その場でジャンプ先の選択肢が表示される

Implementation

Page 30: IDEALIZE YOU

ファイル内のクラスやそのメンバをツリー表示する

巨大なクラスのコードを読む場合などに便利

File Structure

Page 31: IDEALIZE YOU

Navigating code in IDEA

操作デモ

Page 32: IDEALIZE YOU

Motivation to use IDE

IDEに期待すること?

Page 33: IDEALIZE YOU

コードナビゲーションって

重要?

Page 34: IDEALIZE YOU

コードを書く速さ?

Page 35: IDEALIZE YOU

コードを読む速さ?

Page 36: IDEALIZE YOU

プログラマの作業時間の8割は

コードを読むことに費やされている?

参考http://blogs.msdn.com/b/peterhal/archive/2006/01/04/509302.aspxhttp://architects.dzone.com/articles/what-you-dont-spend-most-your

Page 37: IDEALIZE YOU

IDEAの対応言語Java

Groovy

XML

Scala

Clojure

Ruby/JRuby

Python

PHP

SQL

HTML/XHTML/CSS

JavaScript

and more

Page 38: IDEALIZE YOU

IDEAはコードナビゲーションの機能が充実

対応言語が多い

プログラマの作業時間の8割はコード読解

ということは、生産性は?

Page 39: IDEALIZE YOU

IntelliJ IDEA

お試しください!

Page 40: IDEALIZE YOU

Closing

まとめ

Page 41: IDEALIZE YOU

まとめこれだけは覚えてほしい!オススメ機能

Productive Guide

コードナビゲーション

IntelliJ IDEAは生産性高い?

プログラマの作業時間、IDEA機能と対応言語

Page 42: IDEALIZE YOU

Thank you!