~~NOCACHE~~ ~~REVEAL theme=simple&size=1024x800~~ ====== Analiza kodu w ReSharper ====== {{zajecia:znd_2014_1:resharper-log.png?400|}} ===== ===== * 2200 reguł dla C#, VB.NET, XAML, XML, ASP.NET, ASP.NET MVC, JavaScript, TypeScript, HTML, CSS * inspekcja kodu na żywo, //quick fixes// * podział na błędy (//errors//), ostrzeżenia (//warnings//), wskazówki (//suggestions//, //hints//) * inspekcja całego projektu/rozwiązania * konfiguracja priorytetów błędów oraz możliwość definiowania własnych reguł * śledzenie wywołań metod oraz zmian wartości zmiennych * //inspect this// * osobna aplikacja konsolowa do analizy kodu ===== Analiza kodu w edytorze ===== {{zajecia:znd_2020_1:code_analysis_sample.png?800}} * ''Alt + Enter'' - szybka naprawa (// Quick Fix//) \\ ponad 1200 możliwych akcji naprawy ===== Rodzaje zgłoszeń ===== | błędy \\ //errors// | ostrzeżenia \\ //warnings// | |{{zajecia:znd_2020_1:errors.png?500|}}|{{zajecia:znd_2020_1:warrnings.png?500|}}| | wskazówki \\ //hints// | sugestie \\ //suggestions// | |{{zajecia:znd_2020_1:hints.png?500|}}|{{zajecia:znd_2020_1:suggestion.png?500|}}| ===== Znaczniki w pasku przewijania ===== | ''F12'' | przejście do następnego problemu, | | ''Shift + F12'' | powrót do poprzedniego problemu | {{zajecia:znd_2020_1:navigate_between_inspections.png|}} \\ //Źródło: [[www.jetbrains.com/resharper/features/screenshots]]// ===== Konfiguracja reguł ===== Bogata możliwość konfiguracji zachowania oraz dodawania własnych reguł |{{zajecia:znd_2020_1:code_inspection_configuring.png?500|}}|{{zajecia:znd_2020_1:solution-wide_inspections.png?500}} | **Resharper -> Options -> Code Inpection -> Inspection Severity** ===== Wykrywanie błędów i ostrzeżeń bez kompilacji ===== **Solution-Wide Analysis** {{zajecia:znd_2020_1:errors_in_solution.png}} //Źródło: [[www.jetbrains.com/resharper/features/screenshots]]// ===== Inspekcja kodu ==== * ** ReSharper -> Inspect -> Code Issues in Solution** {{zajecia:znd_2020_1:find_code_issues.png?800|}} ===== Automatyczne czyszczenie ===== **Resharper -> Tools -> Cleanup Code** \\ ''Ctrl + Alt + F'' {{zajecia:znd_2020_1:code_cleanup_config.png?800|}} ===== Śledzenie wywołań metod ===== **ReSharper -> Inspect -> Outgoing Calls** \\ **ReSharper -> Inspect -> Incoming Calls** {{zajecia:znd_2020_1:call_tracking.png?800}} //Źródło: [[www.jetbrains.com/resharper/features/screenshots]]// ===== Śledzenie wartości zmiennych ===== **ReSharper -> Inspect -> Value Origin** \\ **ReSharper -> Inspect -> Value Destination** {{zajecia:znd_2020_1:value_tracking.png?800}} //Źródło: [[www.jetbrains.com/resharper/features/screenshots]]// ===== Inspect this ===== ''Ctrl + Shift + Alt + A'' \\ akcje inspekcji zależne od kontekstu, śledzenia wywołań, śledzenia wartości zmiennych, badania hierarchii typów {{zajecia:znd_2020_1:inspect_this.png}} \\ //Źródło: [[www.jetbrains.com/resharper/features/screenshots]] // ===== Command line tools ===== * [[https://www.jetbrains.com/resharper/features/command-line.html|Darmowe narzędzia konsolowe]] do inspekcji kodu * dupFinder * InspectCode * Windows/Linux/Mac OS {{zajecia:znd_2020_1:dotnet-cleanup-no-parameters.png?500}} //Źródło: [[www.jetbrains.com/resharper/features/screenshots]]// ===== Integracja z Azure DevOps ===== [[https://marketplace.visualstudio.com/items?itemName=alanwales.resharper-code-analysis|Resharper Code Quality Analysis]] \\ darmowe rozszerzenie {{ https://alanwales.gallerycdn.vsassets.io/extensions/alanwales/resharper-code-analysis/1.0.60/1474455260769/Images/taskconfiguration.png }} //Źródło: [[https://alanwales.gallerycdn.vsassets.io/]]//