Quick C# Documentation using XML]]
XML Comments Let You Build Documentation Directly From Your Visual Studio .NET Source Files
XML Comments
Pomocne narzędzia: VSdocman NDoc GhostDoc * Wsparcie dla programowania obiektowego: ClassDiagram i generowanie kodu, ClassViewer, Nawigacja pomiędzy klasami/metodami, Diagramy UML (tylko Ultimate)
* Tworzenie aplikacji web
* Profilowanie kodu (tylko ultimate)
* Testowanie : Testy jednostkowe (TestUnit)
* inne: [[http://msdn.microsoft.com/en-us/library/ms173063%28v=VS.100%29.aspx|Using the Visual C# Development Environment - MSDN]],
* Team Foundation Server (VS2010, czy wirtualna maszyna to pociągnie?)
* Netbeans
* przegląd, tworzenie projektów, dostępne narzędzia i pluginy
* Projektowanie GUI + SWING, mniej więcej to samo co dla VS +
* profilowanie kodu
* NetBeans i wsparcie dla C++, tworzenie aplikacji na system Linux.
* Valgrind wykrywanie wycieków pamieci (Cygwin, ferm lub virtualna maszyna)
* Doxygen lub/i javadoc (ferm (?), virtualna maszyna)
* Systemy kontroli wersji
* SVN - konfiguracja serwera (sprawdzić czy czy potrzebne uprawnienia administracyjne?)
* SVN - użytkowanie, rozwiązywanie konfliktów, (zdalna maszyna)
* Eclipse - przegląd narzędzi, wsparcie dla C++ (do zainstalowania na pracowni)
* Kompilator gcc (Linux/Cygwin), najważniejsze opcje + narzędzie make (Linux/ferm/Cygwin)
* GDB - debuuger
* Tworzenie i używanie statycznych i/lub dynamicznych bibliotek:
* VS2010 (C++)
* Linux (gcc/g++, ar, ranlib, ldconfig, ld, ldd, nm) \\ [[http://www.yolinux.com/TUTORIALS/LibraryArchives-StaticAndDynamic.html|Tutorial - Static, Shared Dynamic and Loadable Linux Libraries]] \\ [[http://www.tldp.org/HOWTO/Program-Library-HOWTO/|Program Library HOWTO]]
* Autotools (Linux/Cygwin)
* Systemy raportujące błędy (Trac , Bugzilla)
* Trac - Wsparcie dla programowania zespołowego (harmonogramy, śledzenie wykonania zadań, itp.)
* gettext - lokalizacja programów w Linuxie
* Profilowanie kodu za pomocą GNU gprof + grafy wywołań (GraphViz) (Linux/ferm)
* UML (Dia, dia2code, MS Visio, umbrello, argouml, bouml, ...)\\
UML i inżynieria wstecz/wprzód na przykładzie diagramów klas/use case przy użyciu programu [[http://argouml.tigris.org/|ArgoUML]]\\ W miarę potrzeb moźna rozszerzyć temat o inne dostępne w programie diagramy lub uwzględnić inne narzędzia: [[http://alexdp.free.fr/violetumleditor/page.php|VioletUML]] (brak generowania kodu), [[http://staruml.sourceforge.net/en/|StarUML]] (brak wersji portable), VS2010 Ultimate (widomo, na pracowni jest professional), [[http://uml.sourceforge.net/download.php|umbrello]] (wymaga KDE), dia (wymaga GTK), inne (?)...
* Wdrażanie aplikacji (deployment)
* Wdrażanie aplikacji w VS2010 \\ [[http://msdn.microsoft.com/en-us/library/bb384837.aspx| Deploying Your Program (C++) - MSDN]] \\ [[http://msdn.microsoft.com/en-us/library/zebw5zk9.aspx|http://msdn.microsoft.com/en-us/library/zebw5zk9.aspx]] \\ [[http://msdn.microsoft.com/en-us/library/e2444w33.aspx|Choosing a Deployment Strategy]]| | |
* Inne: jakich narzędzi używacie? Pochwalcie się!
Warunki zaliczenia laboratorium:
* Prezentacja wybranych narzędzi programistycznych (ok. 20 min.) + przykłady demonstracyjne (ćwiczenia) do wykonania na zajęciach.
* Obecność. Ponieważ rezygnujemy ze sztywnego podziału na wykład i laboratorium obecność sprawdzana będzie dla każdej grupy niezależnie.