Zajęcia, rok akademicki 2012/2013, semestr 1


Semestr 1

Konsultacje: wtorek, 1015 - 1145

Projektowanie aplikacji ASP.NET + ADO.NET + Silverlight

Zasady zaliczania
Spotykamy się na pracowni, oglądając rozwiązania zadań z zestawów i rejestrując rozwiązania zadania na paskach deklaracji. Podstawą zaliczenia jest uzyskanie odpowiedniej liczby punktów (w tabelce niżej podano procentowo):
  1. > 75% bdb
  2. 50%-75% db
  3. 25%-50% dst
  4. < 25% ndst
Wykłady/ćwiczenia
  1. 02.10.2012 Zestaw 1 (do 16-10-2012)
  2. 09.10.2012 Zestaw 2 (do 30-10-2012) (Uwaga! Nowy termin przedłużony o tydzień!)
  3. 16.10.2012
  4. 23.10.2012 Zestaw 3 (do 20-11-2012) (Uwaga! Zmiana terminu z 13 na 20 w związku z zamianą wtorku 13-tego na czwartek)
  5. 30.10.2012 Zestaw 4 (do 27-11-2012)
  6. 06.11.2012 Zestaw 5 (do 04-12-2012)
  7. 20.11.2012
  8. 27.11.2012
  9. 04.12.2012 Zestaw 6 (do 08-01-2013)
  10. 11.12.2012 Przykład z wykładu
  11. 18.12.2012 Przykład z wykładu
  12. 08.01.2013 Zestaw 7 (do 22-01-2013)
    Ranking na 2013-01-15
  13. 15.01.2013 Zestaw 8 (do końca semestru, w tym pierwszy tydzień sesji czyli do 05.02.2013)
  14. 22.01.2013 Ranking na dzień 10.01.2012
  15. 29.01.2013

Seminarium: Zawansowane techniki programowania .NET

Zasady zaliczania
Zaliczenie zajęc możliwe jest po przedstawieniu referatu na jeden z poniższych tematów lub temat własny, skonsultowany z prowadzącym. Referaty powinny być przygotowane w formie prezentacji z użyciem dowolnych dostępnych narzędzi i materiałów. Obowiązkową częścią referatu jest odniesienie się do przykładów "na żywo", tzn. niedopuszczalne jest omówienie jakiejś technologii/wzorca wyłącznie na slajdach bez zaprezentowania go.

Zasady zaliczania są następujące - poprawny formalnie i treściowo referat plus co najmniej połowa obecności na seminariach to jest ocena bardzo dobra. Mniej niż połowa obecności na seminariach (7 i mniej) - ocena dobra. Mniej niż jedna czwarta (3 i mniej) - ocena dostateczna. Obniżenie oceny możliwe jest za niepoprawny formalnie/treściowo referat. Należy liczyc się więc z tym, że za słaby referat i 3 lub mniej obecności na zajęciach nie dostanie się zaliczenia.

Referaty dwuosobowe możliwe są wyłącznie po konsultacji z prowadzącym w przypadku "dużych" tematów.

Harmonogram prezentacji
Na zajęciach 02.10 odbędzie się losowanie numerów slotów prezentacji. Przypisanie terminów kalendarzowych do kolejnych slotów będzie odbywac się na bieżąco. Osoby, które nie wzięły udziału w losowaniu będą przypisywane do wolnych slotów w kolejności (a nie do ostatnich slotów w kolejce). Oznacza to, że osoba, której nie ma na liście, może referowac nawet jako druga w kolejności (slot z numerem jeden został zarezerwowany)!

Nr. Osoba Termin Temat
1. Marek Kusy 2012-10-16 Prezentacja języka F#
2. Mateusz Bulajski 2012-10-23 Wybrane technologie typów udawanych (ang. mock objects)
3. Adam Kaczmarek 2012-10-30 Windows Azure
4. Paweł Kimel 2012-11-13 Programowanie aspektowe
5. Paweł Schmidt 2012-11-20 PowerShell
6. Adrian Chudziński 2012-11-27 seminarium nie odbyło się z powodu nieobecności prelegenta
7. Michał Flendrich 2012-12-04 seminarium nie odbyło się z powodu nieobecności prelegenta
8. Robert Mielnik 2012-12-11 Programowanie urządzeń mobilnych z wykorzystaniem technologii .NET
9. Waldemar Bira 2012-12-18 Wybrane implementacje LINQ dla różnych źródeł danych
10. Jan Walczyński 2013-01-08 Frameworki Nancy oraz Simple.Data, czyli alternatywne podejście do tworzenia aplikacji WWW na platformie .NET
11. Michał Flendrich 2013-01-15 Claims-Based Identity, WS-Federation, WS-Trust
12. Rafał Łukaszewski 2013-01-22 Reactive Extensions
13. Ewelina Grotowska 2013-01-29 Omówienie i porównanie wybranych bibliotek mapowania obiektowo-relacyjnego.
Lista propozycji tematów do przygotowania
  1. Przegląd wybranych języków platformy .NET. Porównanie wydajności z innymi istniejącymi implementacjami
  2. Omówienie i porównanie jednego lub więcej narzędzi testowania i ewaluacji aplikacji.
  3. Narzędzia do testów interfejsu użytkownika aplikacji webowych.
  4. Narzędzia do testowania interfejsu użytkownika dowolnych aplikacji
  5. Omówienie i porównanie wybranych bibliotek mapowania obiektowo-relacyjnego.
  6. Programowanie aspektowe na platformie .NET.
  7. Wybrane wzorce aplikacyjne.
  8. Internet Explorer jako edytor tekstów i kontener wydruku w aplikacji .NET.
  9. Przegląd technologii zarządzania danymi w formacie PDF. Generowanie dokumentów od podstaw i uzupełnianie gotowych szablonów dokumentów. Dynamiczne generowanie dokumentów PDF w locie w aplikacjach WinForms i ASP.NET
  10. Lekkie, osadzalne w aplikacji silniki baz danych. Przykłady aplikacji z bazami osadzonymi. Porównanie wydajności i ograniczeń różnych silników.
  11. Castle Project - framework dla rozległych aplikacji .NET (w zakresie wybranych fragmentów, np. Windsor Container czy MonoRail)
  12. Prism2 (Composite Application Guidance) - framework dla budowy modularnych aplikacji WPF/Silverlight
  13. Porównanie implementacji kontenerów Inversion of Control / Dependency Injection.
  14. Windows PowerShell - obiektowy język skryptów powłoki systemu
  15. LINQ for ___ - wybrane implementacje LINQ dla róznych źródeł danych: LINQ to Hibernate, Entity Framework, MetaLinQ (LINQ to Expressions) itd.
  16. Platforma .NET a multimedia. Zarządzany DirectX i XNA. XNA Studio.
  17. VisualWebGUI - framework dla server-side AJAX. Zasada działania, formanty, własne formanty. Analiza ruchu klient-serwer. Autentykacja i autoryzacja. Skalowalność - VWG a farma serwerów aplikacji. Pojęcie Gateway.
  18. Współpraca platform przemysłowych .NET i Java (za Enterprise Interoperability: .NET and J2EE )
  19. Alternatywne implementacje platformy .NET. Porównanie z .NET Framework. Przykłady aplikacji. Przenośne biblioteki do tworzenia interfejsu użytkownika (Gtk#, wx.NET).
  20. Script#, odpowiedź platformy .NET na GWT
  21. Wybrane technologie typów udawanych (ang. mock objects)
  22. Wybrane technologie przemysłowych szyn danych (Enterprise Service Bus)
  23. Narzędzia do automatycznego generowania kodu
  24. Enterprise Single Sign-on (WS-Federation)
  25. Enterprise Single Sign-on (OAuth2)