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ć. ====== Narzędzia programistyczne ====== ===== Semestr letni 2011/2011 ===== Termin zajęć: * Laboratorium + Wykład - każda środa, 8:30 - 10:00, sala PK6, WFAiIS /* * <del>Wykład - każda środa, godz. 9:00 - 10:00, sala PK6, WFAiIS</del> * <del>Laboratorium, grupa nr 1 - każda środa, 10:00 - 11:00, sala PK6, WFAiIS</del> * <del>Laboratorium, grupa nr 2 - każda środa, godz. 11:00 - 12:00 , sala PK6 , WFAiIS</del> * <del>Laboratorium, grupa nr 2 - każda środa, 10.15 - 11:45, sala PK6, WFAiIS</del> <note important>Najbliższe zajęcia odbędą się 11 maja 2011 r. </note> */ ===== Prezentacje ===== ^ Data ^ Temat ^ Prowadzący ^ Źródła/Projekty ^ | 16/02/2011 | [[zajecia:npr:wyklad:plan|Wstęp - plan]] | MG | | | 23/02/2011 | [[vs_wstep|Visual Studio 2010 - wstęp]] Zarządzanie projektami. Kompilatory C++ i C#. | MG | | | 2/03/2011 | [[.:prezentacje:ludwiczak-debugger|Debugger VS2010]] | T. Ludwiczak | {{zajecia:npr_2011_1:ludwiczak-silnia.rar|Silnia (VS2010)}} | | ::: | [[.:prezentacje:fiediuk-vs-rad|Projektowanie wizualne (GUI) VS2010 C#]] | S. Fiediuk | {{zajecia:npr_2011_1:fiediuk-windowsforms.rar|WindowsForms (VS2010)}} | | ::: | Debugger NetBeans (Java) | P. Małłek | ??? | | ::: | {{zajecia:npr_2011_1:bordewicz-projektowanie_gui.ppt|Projektowanie wizualne (GUI) VS2010 C# }} | J. Bordewicz | {{zajecia:npr_2011_1::bordewicz-projektowanie_gui.rar|WindowsForms (VS2010)}} | | 16/03/2011 | {{zajecia:npr_2011_1:skonieczny_jQuery.ppt|jQuery + VS}} ({{zajecia:npr_2011_1:skonieczny_jQuery.pdf|PDF}}) | J. Skonieczny | {{zajecia:npr_2011_1:skonieczny_jQuery_projekt.zip|Projekt VS2010}} | | 23/03/2011 | {{zajecia:npr_2011_1:jurkiewicz-dokumentacja-vs2010.pdf|Tworzenie dokumentacji technicznej w VS (C#)}} | T. Jurkiewicz | [[http://www.fizyka.umk.pl/~229766/dokumentacja/|Dokumentacja HTML]] \\ {{zajecia:npr_2011_1:jurkiewicz-dokumentacja-przyklad.zip|Projekt VS2010}} | | ::: | {{..:npr_2011_1:szyszka-wpf.pptx|WPF + VS2010}} ({{..:npr_2011_1:szyszka-wpf.pdf|PDF}} ) | M. Szyszka | {{..:npr_2011_1:szyszka-wpf.rar|Projekty VS2010}} | | 6/04/2011 | Tworzenie aplikacji web NetBeans | D. Boruta | ??? | | 20/04/2011 | {{zajecia:npr_2011_1:legowski_testy_jednostkowe.pptx|Testowanie jednostkowe - Unit test}} ({{zajecia:npr_2011_1:legowski_testy_jednostkowe.pdf|PDF}}): [[http://www.nunit.org/|NUNIt]] + VS2010 | P. Łęgowski | {{zajecia:npr_2011_1:legowski_testy_projekt.zip|Projekt VS2010}} | | 11/05/2011 | {{zajecia:npr_2011_1:glowacki-workflow.pptx|WorkFlow VS2010}} ({{zajecia:npr_2011_1:glowacki-workflow.pdf|PDF}}) | B. Głowacki | {{zajecia:npr_2011_1:glowacki-workflow.rar| Przykłady w VS2010}} | | ::: | {{zajecia:npr_2011_1:klimas-facebook-api.pdf|Facebook API}} | R. Klimas | {{zajecia:npr_2011_1:klimas-facebook-api.zip|Facebook API - przykład w PHP}} | | 18/05/2011 | [[.:prezentacje:wieckowski-gcc-make|Kompilator gcc + polecenie make, plik Makefile]] | A. Więckowski | {{..:npr_2011_1:wieckowski-make.zip|Przykład}} | | 25/05/2011 | Biblioteki statyczne i dynamoczne Windows - tworzenie, używanie w VS2010 (C++) | P. Wróblewski | | ::: | Profilowanie kodu (czas wywołań/pamięć) za pomocą NetBeans (Java) | M. Fakov | | | ::: | {{..:npr_2011_1:struzynski-doxygen.pptx|Doxygen - tworzenie dokumentacji}} | P. Strużyński | {{..:npr_2011_1:struzynski-doxygen.rar|Przykład}} | | | <del>UML i inżynieria wstecz/wprzód na przykładzie diagramów klas/use case przy użyciu programu [[http://argouml.tigris.org/|ArgoUML]]</del> | <del>J. Kucharski</del> | | ===== Propozycje tematów ===== Inne tematy do przygotowania (niektóre można/należy podzielić na kilka prezentacji): * Visual Studio 2010 Professional (ewentualnie Ultimate) * <del>Zarządzanie projektami. Kompilatory C++ i C#. </del> * <del>Debugger</del> * <del>Projektowanie wizualne (WindowsForms)</del> * Generowanie kodu :kreatory, refaktoryzacja, inne pomocne "sztuczki" (np. for<Tab>) * Generowanie dokumentacji : VS2010 C#, c++ \\ [[http://www.codeproject.com/KB/cpp/TestXMLdoc.aspx|Quick C# Documentation using XML]] \\ [[http://msdn.microsoft.com/en-us/magazine/cc302121.aspx|XML Comments Let You Build Documentation Directly From Your Visual Studio .NET Source Files]] \\ [[http://community.sharpdevelop.net/blogs/mattward/pages/FeatureTourXmlComments.aspx|XML Comments]] \\ Pomocne narzędzia: [[http://www.helixoft.com/vsdocman/overview.html|VSdocman]] [[http://ndoc.sourceforge.net/|NDoc]] [[http://submain.com/products/ghostdoc.aspx|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ę! ===== Zaliczenie zajęć ===== 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.