Edytuj stronę Odnośniki Fold/unfold all ODT export Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić. ====== Zagadnienia NPR 2016 ====== Poniżej znajduje się lista zagadnień wybranych z wykładu, które będą obowiązujące na teście zaliczeniowym. ===== Pojęcia ===== * [[wppl>Kompilator|Kompilator, Kompilacja kodu]] * [[wppl>Interpreter_(program_komputerowy)|Interpreter]] * [[wppl>Język_interpretowany|Język interpretowany]], [[wppl>Język_kompilowany|Język kompilowany]], [[wppl>Język_skryptowy|Język skryptowy]] * [[wppl>System_kontroli_wersji|System kontroli wersji]] * [[wppl>Application_Lifecycle_Management|Application Lifecycle Management (ALM, zarządzanie cyklem życia aplikacji)]] * [[wppl>Ci%C4%85g%C5%82a_integracja|Continuous integration]] * [[wppl>Model_kaskadowy|Model kaskadowy (sekwencyjny)]] * [[wppl>Programowanie_zwinne|Programowanie zwinne]] * [[wppl>Scrum|Scrum]] * [[https://pl.wikipedia.org/wiki/Scrum#Zesp.C3.B3.C5.82_i_role|Role w scrumie]] Product Owner, Scrum master * Artefakty scruma: product backlog, sprint backlog, sprint * [[wppl>Burn_down_chart|Burndown chart]] * [[wppl>Programowanie_ekstremalne|Programowanie ekstremalne]] * [[wppl>Testy_statyczne|Statyczna analiza kodu]] * [[wppl>Metryka_oprogramowania#Metryki_statyczne|Metryki statyczne kodu]] * [[wppl>Refaktoryzacja]] * [[wppl>Test_jednostkowy|Testy jednostkowe]] * [[wppl>Asercja_(informatyka)|Asercja]] * [[wppl>Test-driven_development|Test driven development]] * [[http://sjsi.org/slowo/pokrycie-kodu/|Code coverage]] * [[wppl>Atrapa_obiektu|Atrapa obiektu (mock)]] * [[wppl>Wstrzykiwanie_zale%C5%BCno%C5%9Bci|Wzorzec: wstrzyknięcie zależności]] (ang. Dependency Injection, DI) * [[http://www.testerzy.pl/slownik/testowanie-sterowane-danymi|Data-driven testing]] * [[wp>Memory_debugger|Memory debugger (odpluskwiacz pamięci)]] * [[wppl>Profilowanie_%28in%C5%BCynieria_oprogramowania%29|Profilowanie]] * [[wp>Instrumentation_%28computer_programming%29|Instrumentacja aplikacji]] * [[wp>Profiling_(computer_programming)#Statistical_profilers|Profilowanie statystyczne (próbkowanie)]] * [[wp>Call_graph|Call graph (graf wywołań funkcji)]] * [[wppl>Unified_Modeling_Language]] * [[wppl>Inżynieria_odwrotna|Inżynieria wsteczna (reverse engineering)]] * [[wppl>Diagram_klas]] * [[wppl>Diagram_przypadków_użycia]] * [[wppl>Diagram_czynno%C5%9Bci|diagram aktywnosci (czynności)]] * [[wp>Sequence_diagram|diagram sekwencji]] * [[wp>Component_diagram|diagram komponentów]] ===== Technologie i aplikacje ===== Czym są i do czego wykorzystywane są wymienione aplikacje i/lub technologie? * [[wppl>Visual_Studio|Visual Studio]] * [[https://www.visualstudio.com/pl-pl/products/what-is-visual-studio-online-vs.aspx|Visual Stdio Team Services]] * [[https://trac.edgewall.org/|Trac]] * [[http://www.dobreprogramy.pl/ReSharper,Program,Windows,45583.html|ReSharper]] * [[wppl>CodePlex]] * [[wp>cppcheck]] * [[wppl>FxCop]] * [[wppl>Subversion]] * [[wppl>Git_(oprogramowanie)|Git]] * [[wp>Team_Foundation_Server|Team Foundation Server]] * [[wp>gprof|]] * [[wppl>Valgrind]] * [[wp>NUnit]] * [[http://xunit.github.io/|xUnit.net]] * [[http://www.agile-code.com/blog/mocking-with-moq/|Moq]] ===== Rozszyfruj skróty ===== Podaj polskojęzyczne i angielskojęzyczne rozwinięcie skrótu. | ALM | Application Lifecycle Management \\ //zarządzanie cyklem życia aplikacji// | | API | Application Programming Interface \\ //Interfejs programistyczny aplikacji //| | DLL | Dynamic-Link Library \\ //biblioteka łączona dynamicznie// | | DDT | Data-driven testing \\ //testowanie sterowane danymi// | | GCC | GNU Compiler Collection \\ //zbiór kompilatorów GNU// | | GDB | GNU Debugger \\ //odpluskwiacz GNU// | | GNU | GNU’s Not Unix \\ //GNU to Nie Unix// | | GUI | Graphical User Interface \\ //graficzny interfejs użytkownika// | | IDE | Integrated Development Environment \\ //zintegrowane środowisko programistyczne// | | SAST | Static Analysis Software Testing \\ //statystyczna analiza oprogramowania// | | SDK | Software development kit \\ //zestaw narzędzi dla programistów// | | TDD | Test-driven development \\ //programowanie wspomagane przez testy// | | TFS | Team Foundation Server| | UML | Unified Modeling Language \\ //zunifikowany język modelowania// | | XML | Extensible Markup Language \\ //Rozszerzalny Język Znaczników// | ===== Przykładowe pytania ===== - Czy system kontroli wersji Team Foundation Version Control posiada architekturę: * scentralizowaną, * zdecentralizowaną, * żadne z powyższych - Jeden z programistów zatwierdził własne świeże zmiany w systemie kontroli wersji dotyczące pewnego piku. Drugi programista pracował nad kodem zawartym w tym samym pliku i próbuje zatwierdzić w repozytorium zmiany naniesione w tej samej linii kodu co pierwszy programista. Jaki będzie efekt takiego działania: * system kontroli wersji automatycznie wybierze najbardziej świeżą wersję pliku, tracąc zmiany naniesione przez pierwszego programistę * system kontroli wersji automatycznie scali pliki wybierając umieszczając pokrywające się linie jedna nad drugą * system kontroli wersji zasygnalizuje wystąpienie konfliktu, który musi zostać rozwiązany zanim drugi programista zatwierdzi zmiany - Do czego służy program gprof? - Funkcjonalności systemu można modelować za pomocą: * diagramu przypadków użycia * diagramu klas * diagramu sekwencji