Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

ReSharper SDK

774 visualizaciones

Publicado el

18 May 2013, OrenConf
Orenburg, Russia

=====

Sorry about code style

Publicado en: Tecnología
  • Inicia sesión para ver los comentarios

  • Sé el primero en recomendar esto

ReSharper SDK

  1. 1. R# SDK: Overview Зюбанов Ярослав .NET Developer yaroslav.zyubanov@softline.ru
  2. 2. ReSharper is a renowned productivity tool that makes Microsoft Visual Studio a much better IDE http://jetbrains.com/resharper/
  3. 3. Oh, GOD, why?
  4. 4. Supported Languages • • • • • • • • • C# Visual Basic .NET JavaScript CSS HTML ASP.NET Razor XAML XML
  5. 5. Features • Code Analysis • Navigation and Search • Coding Assistance (Context Actions, Code Completion, Complete Statement etc.) • Refactorings • Code Generation • Code Templates • Code Cleanup
  6. 6. SDK • • • • • • • Project Templates Project Item Templates Bunch of binaries Targets (MSBuild) Tools (used for developing support for new languages) Examples Help
  7. 7. Releases • ReSharper 6.1.x SDK (January 2012) • ReSharper 7.0 SDK (October 2012) • ReSharper 7.0.1 SDK (March 2013)
  8. 8. Wait a minute, SDK is for plugin development?
  9. 9. Win-Win Situation
  10. 10. `Problem` public void Foo() { // correct use of string.Format() string str = string.Format(“Name: {0}”, name); // unnecessary method call string str = string.Format(“string without markers”); // much better string str = “string without markers”; } // even more better? actually it’s not const string str = “string without markers”;
  11. 11. PSI (Program Structure Interface)
  12. 12. PSI (Program Structure Interface)
  13. 13. Availability
  14. 14. Get selected element
  15. 15. Check #1
  16. 16. Check #2
  17. 17. Create literal expression
  18. 18. Action
  19. 19. Replace
  20. 20. Tests: Convention-based approach +src | OrenConf.Plugin | OrenConf.Plugin.Tests | OrenConf.Plugin.sln +test +data +Intentions +ContextActions +InlineString | availability01.cs | execute01.cs | execute01.cs.gold
  21. 21. Availability Test
  22. 22. Availability Test
  23. 23. Execution Test
  24. 24. Execution Test
  25. 25. Resources ReSharper Plugin Development http://bit.ly/resharpersdk JetBrains TV http://tv.jetbrains.net OrenConf.Plugin https://github.com/antigravity/OrenConf.Plugin
  26. 26. Thanks

×