get em before they get you

19

Click here to load reader

Upload: vaclav-pech

Post on 29-Jan-2018

775 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Get em before they get You

1www.jetbrains.com

Get 'embefore they get you

Václav Pech

Software Developer, Technology EvangelistJetBrains, s.r.o.

Page 2: Get em before they get You

2www.jetbrains.com

Agenda

Static Code Analysis

Duplicate Detection

Stacktrace Analysis

Dataflow Analysis

Dependency Analysis

DSM

Page 3: Get em before they get You

3www.jetbrains.com

Static Code Analysis

Searches AST for bug patterns

On demand

On the fly

Page 4: Get em before they get You

4www.jetbrains.com

Abstract Syntax Tree

Page 5: Get em before they get You

5www.jetbrains.com

A quick peek into the sources

Page 6: Get em before they get You

6www.jetbrains.com

Advanced capabilities

Quick fixesProfilesSuppressing false positivesSpell-checkerCommand-line and CI integration

Page 7: Get em before they get You

7www.jetbrains.com

There’s more than Java out there

JavaScriptCSS, HTML, XMLGWT, StrutsEE, ME

Page 8: Get em before they get You

8www.jetbrains.com

722

Page 9: Get em before they get You

9www.jetbrains.com

Page 10: Get em before they get You

10www.jetbrains.com

Create your own bug patterns

Define

an AST sub-tree to search for

an AST sub-tree to replace it with

Page 11: Get em before they get You

11www.jetbrains.com

Helper annotations - JSR 305 & 308

@Nullable, @NotNull, @Nls, @NonNls

@PropertyKey, @Pattern, @Language

@ThreadSafe, @GuardedBy

@Immutable

Page 12: Get em before they get You

12www.jetbrains.com

@Pattern

Page 13: Get em before they get You

13www.jetbrains.com

Language injection

Page 14: Get em before they get You

14www.jetbrains.com

Stacktrace Analysis

Page 15: Get em before they get You

15www.jetbrains.com

Dataflow Analysis

From / To here

Page 16: Get em before they get You

16www.jetbrains.com

Duplicate detection

Page 17: Get em before they get You

17www.jetbrains.com

Dependency Structure Matrix

Page 18: Get em before they get You

18www.jetbrains.com

Summary

CustomizeUse permanentlyRun continuously

So that you can sleep better!

Page 19: Get em before they get You

19www.jetbrains.com

Questions