Павел Фатин и Александр Подхалюзин «Scala plugin for IntelliJ IDEA»

  • 780 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
780
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
1
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Scala plugin for IntelliJ IDEA Pavel Fatin Alexander Podkhalyuzin ScalaDay Spb, 2011
  • 2. Agenda IntelliJ Scala Plugin  Why do we need it  Whats inside  Whats next
  • 3. Do we need an IDE for Scala?
  • 4. Rationale Cant we just use Notepad?
  • 5. Rationale Cant we just use Notepad? 
  • 6. Rationale Is it always the right tool? ?
  • 7. Rationale What makes us more productive?  Highlighting  Inspections  Code formatting  Auto-completion  Information look-up  Navigation  Refactoring  Integration
  • 8. Whats already available?
  • 9. Features Syntax highlighting
  • 10. Features Syntax highlighting Implicit conversion
  • 11. Features Syntax highlighting By-name argument Implicit conversion
  • 12. Features Syntax highlighting By-name argument Implicit conversion Deprecated method
  • 13. Features Syntax highlighting Injected language By-name argument Implicit conversion Deprecated method
  • 14. Features Error highlighting  Ordinary:  Type-aware:  Quick-fixes:
  • 15. Features Inspections  Unused symbol  Variable could be value  Redundant return  Syntactic sugar  Method signature inspections
  • 16. Features Language injection  Pattern-based:  Via parameter annotation:  Via value annotation:
  • 17. Features Dark color schemes
  • 18. Features Language-aware editor  Brace balancing:  Entities selection:  Code folding:
  • 19. Features Formatting
  • 20. Features Code completion  Basic  Class name  Expected-type based  «Some»  Global member  Anonymous function
  • 21. Features Information look-up  Type info  Parameter info  Documentation look-up  Definition look-up
  • 22. Features Type Info
  • 23. Features Type Info
  • 24. Features Parameter info
  • 25. Features Documentation look-up
  • 26. Features Definition look-up
  • 27. Features Imports management  Import entity on completion  Auto-import unresolved symbol  Highlight unused imports  Optimize imports  Paste imports
  • 28. Features Refactoring  Rename  Introduce variable  Inline variable  Extract method  Introduce parameter
  • 29. Features Rename
  • 30. Features Introduce variable
  • 31. Features Inline variable
  • 32. Features Extract method
  • 33. Features Introduce parameter
  • 34. Features Java-to-Scala conversion
  • 35. Features Integrations  Java  JUnit / Specs / ScalaTest  Maven  Spring  Lift  SBT  FSC
  • 36. TODO
  • 37. Roadmap Tasks  Fix move refactoring  Smart Step in debugger  Evaluate Expression in debugger  Scalate support  Scaladoc support
  • 38. Thank you!