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


Semestr 1

Konsultacje: wtorek, 1415 - 1545

Projektowanie aplikacji ASP.NET + ADO.NET

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
Materiał wykładu:
  1. 08.10.2013 Wprowadzenie Zestaw 1 (do 29-10-2012), uwaga, dłużej o tydzień
  2. 15.10.2013 Infrastruktura ASP.NET Zestaw 2 (do 05-11-2013), uwaga, dłużej o tydzień
  3. 22.10.2013 Infrastruktura ASP.NET (2)
  4. 29.10.2013 WebForms Zestaw 3 (do 26-11-2013), uwaga, dłużej o tydzień
  5. 05.11.2013 WebForms(2)
  6. 12.11.2013 Autentykacja/autoryzacja Zestaw 4 (do 10-12-2013)
  7. 19.11.2013 Autentykacja/autoryzacja (2)
  8. 26.11.2013 MVC Zestaw 5 (do końca 2013)
  9. 03.12.2013 MVC (2) Przykład z wykładu
  10. 10.12.2013 MVC (3)
  11. 17.12.2013 WebServices (1) Zestaw 6 (do 21-01-2014)
  12. 14.01.2014 WebServices (2): WCF vs WebAPI Przykład
  13. 21.01.2014 WebServices (3): WCF vs WebAPI Zestaw 7 (do końca semestru)
  14. 28.01.2014 AJAX
  15. 04.02.2014 Javascript

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 08.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. Maciej Nędza 2013-10-22 Omówienie języka F#
2. Karol Kotny 2013-10-29 XNA Studio, MonoGame
3. Wojciech Kulik 2013-11-05 Omówienie platformy Windows Phone
4. Michał Stempkowski 2013-11-12 Omówienie i porównanie jednego lub więcej narzędzi testowania i ewaluacji aplikacji
5. Michał Wojnar 2013-11-19 Przegląd narzędzi generowania dokumentów PDF
6. Krzysztof Waszak 2013-11-26 Script# i inne technologie automatycznego tworzenia kodu Javascript
7. Grzegorz Gąsior 2013-12-03 Omówienie Entity-Framework
8. Mateusz Jany 2013-12-10 Dependency Injection - Castle Windsor
9. Rafał Hejna 2013-12-17 Omówienie IronPython, porównanie z oryginalną implementacją języka
10. Łukasz Domański 2014-01-14 Współpraca platform przemysłowych .NET i Java
11. Michał Krasowski 2014-01-21 Narzędzia do refaktoringu kodu
12. Tomasz Pawlak 2014-01-28 SharpDx, SlimDx, silniki graficzne dla .NET
(seminarium odwołane z powodu choroby prelegenta)
13. Tomasz Sołtysik 2014-02-04 Windows PowerShell - obiektowy język skryptów powłoki systemu
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)