Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Narzędzia współczesnego programisty Wrocławska Grupa.NET Paweł Hofman Wrocławska Grupa.NET Software Engineer Silicon & Software.

Podobne prezentacje


Prezentacja na temat: "Narzędzia współczesnego programisty Wrocławska Grupa.NET Paweł Hofman Wrocławska Grupa.NET Software Engineer Silicon & Software."— Zapis prezentacji:

1 Narzędzia współczesnego programisty Wrocławska Grupa.NET Paweł Hofman Wrocławska Grupa.NET http://wroc.net.isvclub.com Software Engineer Silicon & Software Systems (S3) www.s3group.com

2 Agenda Wstęp Visual Studio i Extensibility Narzędzia typu R#, Refactor!, Visual Assist X Możliwości: Asystowanie przy edycja kodu (C#, VB, C++, XML…) Testowanie kodu Dodatki Czego brakuje ? Inne narzędzia: Reflektor.NET, Paint.NET Demo Pytania

3 - Sekcja - Wstęp Visual Studio i Extensibility Narzędzia typu R#, Refactor!, Visual Assist X Możliwości: Asystowanie przy edycja kodu (C#, VB, C++, XML…) Testowanie kodu Dodatki Czego brakuje ? Inne narzędzia: Reflektor.NET, Paint.NET Demo Pytania

4 Wstęp Visual Studio ciągle NIE jest tym, co tygrysy lubią najbardziej mnogość asystentów do edycji i upiększania (refactoring) kodu R# - JetBrains.com Refactor!, CodeRush – DevExpress.com Visual Assist X - WholeTomato.com Eclipse (Java / C / C++)

5 Korzyści Większa produktywność programisty Większy zysk firmy, rekompensujący wydatki na narzędzie Mniejsza harówka i frustracja programisty Czytelniejszy kod

6 - Sekcja - Wstęp Visual Studio i Extensibility Narzędzia typu R#, Refactor!, Visual Assist X Możliwości: Asystowanie przy edycja kodu (C#, VB, …) Testowanie kodu Dodatki Czego brakuje ? Inne narzędzia: Reflektor.NET, Paint.NET Demo Pytania

7 Visual Studio Extensibility zmiana wyglądu IDE nowe okna narzędziowe nowi dostawców usług od wersji VisualStudio 2005: brak bezpośredniej interakcji z obiektami COM atrybuty, interfejsy i klasy bazowe w kodzie zarządzanym.NET

8 - Sekcja - Wstęp Visual Studio i Extensibility Narzędzia typu R#, Refactor!, Visual Assist X Możliwości: Asystowanie przy edycja kodu (C#, VB, C++, XML…) Testowanie kodu Dodatki Czego brakuje ? Inne narzędzia: Reflektor.NET, Paint.NET Demo Pytania

9 R# - Edycja Asystent: modyfikuje edytory kodu tworzy podgląd struktury pliku sprawdza poprawność kodu podczas edycji automatycznie sugeruje pożądane akcje dla aktualnego położenia kursora ułatwia nawigację i wyszukiwanie zależności monitoruje całe rozwiązanie (Solution) w poszukiwaniu potencjalnych błędów i niespójności

10 R# On-the-fly Error Checking ReSharper instantly detects and highlights errors in code, without you having to compile it first. Warnings Besides errors and warnings detectable by the compiler, ReSharper also prompts you about additional warnings that may represent real coding errors. źródło: www.jetbrains.com/resharperwww.jetbrains.com/resharper

11 R# Code Suggestions A deeper level of code analysis is available with Code Suggestions. Code suggestions provide insights into code structure, drawing your attention to things that aren't necessarily bad or wrong, but probably useful to know. Quick-Fixes ReSharper provides Quick-fixes for most errors, helping you solve problems instantly. You can see the list of available quick-fixes for a given error. Then simply select the appropriate quick-fix from the list, and it will implement the automatic error correction. źródło: www.jetbrains.com/resharperwww.jetbrains.com/resharper

12 R# - Wsparcie platformy.NET Przydatny przy pracy z językami: C# VB.NET Dodatkowo: ASP.NET XML XAML skrypty MS Build (.Proj) skrypty NAnt

13 R# - Refactoring Using Code Refactorings Rename Symbol Move Type Copy Type Change Method Signature Extract Method Extract type to a new file Introduce Variable Introduce Field Introduce Parameter Inline Variable Extract Interface Extract Superclass Extract Class from Method Parameters Make Method Static Make Method Non-Static Use Base Type where Possible Pull Members Up Push Members Down Safe Delete Convert Method to Property Convert Property to Method(s) Convert Abstract Class to Interface Convert Interface to Abstract Class Encapsulate Field Move type to outer scope Move Static Members źródło: www.jetbrains.com/resharperwww.jetbrains.com/resharper

14 R# - Testy jednostkowe Przeglądanie Uruchamianie Historia sesji testów … dostępne wewnątrz Visual Studio Wspiera NUnit Framework Możliwa integracja także z innymi

15 Niedosyt ? Brak sprawdzania pisowni!!! Brak wykrywania i przenoszenia stałych z kodu do zasobów Brak porównywania publicznego API dwóch wersji tego samego assembly Brak wsparcia dla programistów C/C++

16 R# - Publiczne API Zwykły projekt DLL używający atrybutów, klas i interfejsów z assemblies JetBrains.*.dll Pisanie dodatków do R# jest dużo prostsze niż bezpośrednio w VisualStudio Instalacja dodatku: All Users - /Bin/Plugins Current User - /ReSharper/v /vs /Plugins Dostępne dodatki: RGreatEx (odpłatnie) Agent Smith MbUnit

17 - Sekcja - Wstęp Visual Studio i Extensibility Narzędzia typu R#, Refactor!, Visual Assist X Możliwości: Asystowanie przy edycja kodu (C#, VB, C++, XML…) Testowanie kodu Dodatki do R# Czego brakuje ? Inne narzędzia: Reflektor.NET, Paint.NET Demo Pytania

18 Refactor! Pro - Możliwości IntellAssist 150+ Refactorings w tym przenoszenie stałych / napisów do zasobów wykrywanie i definiowanie stałych Wspiera: C# Visual Basic *) C++ *) ASP.NET *) XML XAML HTML JavaScript *) = dostępna wersja darmowa

19 Refactor! Pro - Możliwości metryki kodu ciekawe dodatki wizualne możliwość pisania dodatków pomocny przy korzystaniu z NUnit

20 Refactor! Pro Demo Filmiki instruktażowe: - CodeRush! Big Picture - Refactor! 3-minutes - Refactor! Pro Big Picture źródło: www.devexpress.comwww.devexpress.com

21 - Sekcja - Wstęp Visual Studio i Extensibility Narzędzia typu R#, Refactor!, Visual Assist X Możliwości: Asystowanie przy edycja kodu (C#, VB, C++, XML…) Testowanie kodu Dodatki do R# Czego brakuje ? Inne narzędzia: Reflektor.NET, Paint.NET Demo Pytania

22 Visual Assist X - Możliwości Wspiera: C# VB.NET C++ dostępny nawet dla VisualC++ 6.0 oraz eMbedded Visual Tools 4.0 wbudowany słownik (spellchecker dla komentarzy, zasobów i napisów)

23 Visual Assist X - Możliwości wykrywa błędy przed kompilacją wyszukuje referencje do klas niezależnie od użytego języka zmiana nazwy elementu odświeża także zasoby i napisy rozbudowana nawigacja po kodzie bardzo rozbudowane kolorowanie kodu

24 Visual Assist X Enhanced Syntax Coloring Make code easy to read and debug by viewing it with enhanced syntax colors. Local Symbols in Bold Distinguish local from non-local symbols as you read code. Stable Symbols in Italics Display stable symbols in italics and know when you reference a method from a base class versus an overriding variant. źródło: www.wholetomato.comwww.wholetomato.com

25 Visual Assist X Underline Spelling Errors Spell check comments and strings as-you-type, or run spell check in batch mode. Underline Mistyped Symbols Underline mistyped symbols as- you-type so you know immediately if you're mistaken about a symbol name, or you're using a symbol out-of-context. Repair Case Type a symbol with improper case and watch it get repaired immediately. źródło: www.wholetomato.comwww.wholetomato.com

26 - Sekcja - Wstęp Visual Studio i Extensibility Narzędzia typu R#, Refactor!, Visual Assist X Możliwości: Asystowanie przy edycja kodu (C#, VB, C++, XML…) Testowanie kodu Dodatki do R# Czego brakuje ? Inne narzędzia: Reflektor.NET, Paint.NET Demo Pytania

27 Inne narzędzia FxCop.NET Reflector.NET Paint.NET Dependency Walker Test Driven Development: NUnit MbUnit Visual Studio.NET for Software Testers

28 Inne narzędzia (2) mrówki (NAnt) MS Build TeamCity (JetBrains) CruiseControl.NET pomoce od sysinternals monitory: rejestru, plików, ruchu sieciowego programy diagnostyczne pomoce od wintellect.com

29 Visual Studio + R# w akcji Demo Przykładowy projekt - asystent - szybka edycja i poprawianie kodu - testy jednostkowe - wyszukiwanie i nawigacja po projekcie

30 Podsumowanie VisualStudio 2005 nie jest narzędziem wystarczającym do wszystkiego. Istnieją liczne narzędzia, które można zintegrować z VisualStudio, aby uczynić swoją pracę przyjemniejszą.

31 Pytania ?

32 Koniec Dziękuję za uwagę

33 Źródła i odnośniki JetBrains – R#: www.jetbrains.com/resharper Developer Express - Refactor!, CodeRush www.devexpress.com Whole Tomato Software - Visual Assist X www.wholetomato.com

34 Źródła Dodatki: RGreatEx - www.safedevelop.comwww.safedevelop.com Agent Smith - www.agentsmithplugin.comwww.agentsmithplugin.com www.codeproject.com NUnit: www.nunit.org MbUnit: www.mbunit.com Visual Studio Extensibility: msdn.microsoft.com/vsx msdn.microsoft.com/vstudio/dsltools blogs.msdn.com/vsxteam/

35 Rozwinięcia skrótów CTC = Command Table Configuration DTE = Development Tools Environment MPF = Managed Package Framework TT = Text Templates VSCT = Visual Studio Command Table


Pobierz ppt "Narzędzia współczesnego programisty Wrocławska Grupa.NET Paweł Hofman Wrocławska Grupa.NET Software Engineer Silicon & Software."

Podobne prezentacje


Reklamy Google