Zajęcia, rok akademicki 2014/2015, semestr 2
Programowanie pod Windows
Regulamin pracowni i zasady zaliczania
Regulamin pracowni:
- warunkiem uzyskania zaliczenia przedmiotu jest uzyskanie odpowiedniej liczby punktów
za rozwiązywanie zadań ogłoszonych w zeszycie zaadń
- na kolejnych zajęciach, studenci na specjalnych formularzach deklarują numery rozwiązanych zadań;
prowadzący sprawdza w czasie zajęć minimum jedno zadanie każdemu studentowi
Uwagi:
- zeszyt zadań zawiera zadania, których suma to 100 punktów - wartość referencyjną dla
limitów punktowych (patrz niżej).
- brak rozwiązania lub rozwiązanie niekompletne, w przypadku gdy
zadanie to zostanie
wybrane przez prowadzącego do wglądu, oznacza utratę co najmniej połowy zgromadzonych
do danej chwili punktów
- zadania można deklarować i oddawać w czasie trwania całych zajęć;
można więc ewentualne wątpliwości skonsultować z prowadzącym i dopiero wtedy zadeklarować
zadanie jako rozwiązane
Zasady zaliczania:
punkty |
ocena |
< 25 |
ndst |
25-50 |
dst |
50-75 |
db |
> 75 |
bdb |
Zeszyt zadań
Pobierz, wersja 2014.01.01
Notatki do wykładu
Windows oczami programisty
Wydawnictwo Mikom, Warszawa 2003
Wersja akademicka Programowanie pod Windows
Materiały do pobrania
Kody źródłowe programów z podręcznika (komplet)
Obowiązujące zadania
Do kiedy | Zestaw zadań | Uwagi |
10.03.2015 | 1.1 | |
17.03.2015 | 1.2 | |
24.03.2015 | 1.3 | |
14.04.2015 | 2.1 | |
21.04.2015 | 2.2 | |
28.04.2015 | 2.3 | |
05.05.2015 | 2.4,2.5 | |
19.05.2015 | 3.2 | |
26.05.2015 | 3.1 | |
02.06.2015 | 3.3 | |
09.06.2015 | 3.4 | |
09.06.2015 | 3.5 | |
Uwaga! Po terminie z kolumny "Do kiedy" zadania ze wskazanych rozdziałów nie będą przyjmowane.
Uwaga! Data obowiązywania dotyczy pracowni wtorkowych. Dla pracowni odbywających się w inne dni tygodnia terminem
obowiązującym jest dzień tygodnia w tym samym tygodniu co podany wtorek.
Punktowe rankinigi cząstkowe (grupa WZY)
Punktacja na 2015-05-15
Wykłady
- 2015.02.24
- Wykład organizacyjny
- Omówienie środowiska i narzędzi programowania
- Wprowadzenie do Win32 - okna, uchwyty, komunikaty
- 2015.03.03
- Obsługa komunikatów
- Tworzenie okien potomnych
- Komunikacja między oknami
- GDI
- 2015.03.10
- Biblioteki natywne
- Biblioteki COM
- Tworzenie biblioteki COM w C++
- Konsumowanie biblioteki COM w VBA
- Środowisko uruchomieniowe .NET - wprowadzenie
- 2015.03.17
- Środowisko uruchomieniowe .NET - historia
- CIL, JIT
- Dekompilacja
- Weryfikacja
- C#1 - model obiektowy, system typów
- Pola, metody, konstruktory, polimorfizm, przeciążanie metod
- 2015.03.24
- Propercje (właściwości)
- Indeksery
- Delegacje (funkcje jako first-class citizens
- Nazwane delegacje
- Anonimowe delegacje
- Lambda wyrażenia
- 2015.03.31
- Zdarzenia (events)
- Refleksja
- Atrybuty
- Współpraca z kodem niezarządzanym
- 2015.04.14
- Dynamiczne tworzenie kodu
- Enumeratory
- Yield (enumeracje przez kontynuacje)
- C#2 Typy generyczne, ograniczenia typowe
- Typy generyczne w C++ vs C# vs Java - specyfika implementacji, plusy/minusy
- 2015.04.21
- C#3 rozszerzenia języka - metody rozszerzające, obiekty anonimowe, niejawne typowanie (var, tablice)
- C#3 LINQ - uniwersalne, funkcyjne podejście do dostępu do danych
- LINQ - Linq2Objects vs Linq2SQL, delegacje vs drzewa wyrażeń
- C#4, DLR, współpraca z COM early vs late binding vs dynamic
- 2015.04.28
- C#4, DLR
- System.Windows.Forms - przegląd materiału
- Model zdarzeniowy
- Przekazywanie parametrów między formularzami
- 2015.05.05
- System.Windows.Forms - ciąg dalszy
- Podstawowe formanty interfejsu użytkownika
- Formanty do reprezentacji zbiorów elementów - ComboBox/ListBox vs ListView/TreeView
- Zarządzanie layoutem aplikacji - kotwice/dokowanie
- Leniwe ładowanie dużych zbiorów danych do formantu TreeView
- System.Windows.Forms - architektura aplikacji MDI
- 2015.05.12
- Wykład nie odbył się z powodu godzin rektorskich
- 2015.05.19
- System.Windows.Forms - tworzenie własnych formantów
- WPF - omówienie głównych pojęc
- WPF - dwukierunkowy data-binding, interfejs INotifyPropertyChanged
- 2015.05.27
- System.Data - podsystem dostępu do danych
- SELECT, INSERT, UPDATE, obsługa relacji jeden-wiele
- kwerendy parametryczne, zagrożenie SQL Injection
- Dapper.NET - przykład lekkiej technologii automatyzującej typowe operacje bazodanowe
- 2015.06.02
- Linq2SQL jako przykład technologii ORM w podejściu Database First
- Entity Framework jako przykład technologii w podejściu Code First
- 2015.06.10
- Entity Framework Code First Migrations
- Xml - przegląd
- Xml - model DOM, język XPath
- Xml - strumieniowanie
- Xml + Xsd, modele, serializacja
Literatura
- Charles Petzold, Programming Windows 5th Edition
- Mark Russinovich, David Solomon, Windows Internals
- Bruce Eckel, Thinking in C#
- Andrew Troelsen, Język C# i Platforma .NET
- Daniel Solis, Illustrated C#