|
W cyklu 2022/23Z:
Odpowiedzi na "często zadawane pytania":
Pytanie: Pod jakim systemem operacyjnym będziemy pracować? Odpowiedź: Najogólniej mówiąc pod stacjonarną wersją systemu Windows bazującego na jądrze systemu wywodzącego się z systemu OS2, ale napjprawdopodobniej jeszcze nie Windows 11. W uproszczeniu: Windows 10 lub ewentualnie Windows 7 (ten ostatni ma tę zaletę, że trudnej go popsuć, ale z drugiej strony trudniej będzie zainstalować i skonfigurować na nim właściwe środowisko programistyczne).
Pytanie: Jakie będzie podstawowe środowisko programistyczne (z znaczeniu IDE - Integrated Development Environment)? Odpowiedź: Visual Studio 2022 lub Visual Studio 2019 w wariancie przynajmniej Community (które jest do tego typu zastosowań darmowe). Przypominam, że jako studenci mogą Państwo pobrać z programu Azure Dev Tools for Teaching wersję Enterprise i z powodu niektórych dodatkowych funkcjonalności nawet preferowałbym tę wersję (Enterprise). Zalecam instalowanie tego środowiska z angielskim pakietem językowym (bo tłumaczenia w domyślnie ustawianym polskim pakiecie nadal czasami są mocno nieintuicyjne i mylące).
Pytanie: JJakie będzie podstawowe środowisko programistyczne (z znaczeniu API - Application Programming Interface)? Odpowiedź: .NET Framework
Pytanie: Dlaczego .NET Framework, a nie .NET (dawniej .NET Core)? Odpowiedź: Bo .NET Framework obsługuje mechanizmy potrzebne m.in. do implementowania usług windowsowych (przyp. Windows Services), a .NET Core (dawniej .NET Core) na obecną chwilę ich nie obsługuje. Oczywiście poza .NET Frameworkiem będzie można użyć też innych mechanizmów (więcej szczegółów będzie na zajęciach), ale opakowywanie .NET (dawniej .NET Core) w .NET Framework (ew. .NET Standard) bywa karkołomne. Jeśli ktoś będzie bardzo biegły w C i będzie znał podstawy Win API, to będzie mógł stworzyć implementację w kodzie natywnym, ale nie spodziewam się, że ktoś się o to pokusi. W końcowej części wykładu planuję wprowadzenie (w frameworku .NET) zadań działających w tle (z nowego modelu), ale .
Pytanie: Z jakich języków programowania będziemy korzystać? Odpowiedź: Na wykładzie będę się posługiwał niemal wyłącznie językiem C#, ale jeśli ktoś będzie chciał (i umiał), to równie dobrze może używać jakiegoś innego języka wspieranego przez środowisko programistyczne, np. Visual Basic.
Pytanie: Nie udało mi się zapisać na przedmiot w USOS-ie. Czy mógłby Pan mnie dopisać? Czy będzie utworzona dodatkowa grupa? Odpowiedź: - Aktualnie mamy już dwie grupy więc sądzę, że miejsc dla wszystkich wystarczy. Dla każdej z grup limit osób wynosi 16, ale w pracowni mamy 20 miejsc przy komputerach + 20 miejsc w ławkach, więc wydaje się, że w tej sali doałby się też przeprowadzić wykład, co w miarę możliwości postaram się zrobić.
- Zaznaczam, że przedmiot nie jest odpowiedni dla osób które jeszcze nie zaliczyły przedmiotu Programowanie III. Co prawda zakładam, że nie wszyscy uczestnicy koniecznie muszą na początku znać C# i pierwsze zajęcia będą poświęcone w uproszczeniu temu jak przestawić się z Javy na C#, ale znajomość podstaw programowania obiektowego w języku typowo obiektowym (jak Java) będzie absolutnie niezbędna. Mam złe doświadczenia z osobami, które wybierały sobie ten przedmiot, będąc na drugim roku I stopnia studiów - przed poznaniem języków Java lub C# (Programowanie III), a nawet C++ (Programowanie II). Część z tych osób zrezygnowała po kilku tygodniach (uznając, że sobie nie poradzą lub będą musiały zbyt dużo czasu poświęcić na wcześniejszą naukę wymaganych podstaw), część pod koniec, sporo osób zaliczyło go dopiero we wrześniu (po zaliczeniu Programowania III), niektórzy (nieliczni) w kolejnym cyklu lub wcale. W 2-4 godziny nie da się przeprowadzić 60-godzinnego kursu, a zaległości miały tendencję do lawinowego narastania. Dlatego prosiłbym osoby z drugiego roku studiów pierwszego stopnia, aby w tym roku nie wybierały tego przedmiotu (chyba, że przekonają mnie, że potrafią już programować w jakimś silnie typowanym i typowo obiektowym języku programowania, najlepiej wywodzącym się z C, jak Java, C#, D, Objective C, czy C++ z GC; nie będę brał pod uwagę języków takich jak PHP, Perl czy Ruby).
|
W cyklu 2023/24Z:
Odpowiedzi na "często zadawane pytania":
Pytanie: Pod jakim systemem operacyjnym będziemy pracować? Odpowiedź: Najogólniej mówiąc pod stacjonarną wersją systemu Windows bazującego na jądrze systemu wywodzącego się z systemu OS2, ale napjprawdopodobniej jeszcze nie Windows 11. W uproszczeniu: Windows 10 lub ewentualnie Windows 7 (ten ostatni ma tę zaletę, że trudnej go popsuć, ale z drugiej strony trudniej będzie zainstalować i skonfigurować na nim właściwe środowisko programistyczne).
Pytanie: Jakie będzie podstawowe środowisko programistyczne (z znaczeniu IDE - Integrated Development Environment)? Odpowiedź: Visual Studio 2022 lub Visual Studio 2019 w wariancie przynajmniej Community (które jest do tego typu zastosowań darmowe). Przypominam, że jako studenci mogą Państwo pobrać z programu Azure Dev Tools for Teaching wersję Enterprise i z powodu niektórych dodatkowych funkcjonalności nawet preferowałbym tę wersję (Enterprise). Zalecam instalowanie tego środowiska z angielskim pakietem językowym (bo tłumaczenia w domyślnie ustawianym polskim pakiecie nadal czasami są mocno nieintuicyjne i mylące).
Pytanie: Jakie będzie podstawowe środowisko programistyczne (z znaczeniu API - Application Programming Interface)? Odpowiedź: .NET Framework aktualizacja: z możliwością używania .NET (dawniej .NET Core), w niektórych miejscach stosownie opakowywanego lub uzupełnianego kodem natywnym pisanym w Visual C++.
Pytanie: Dlaczego .NET Framework, a nie .NET (dawniej .NET Core)? Odpowiedź: Bo .NET Framework obsługuje mechanizmy potrzebne m.in. do implementowania usług windowsowych (przyp. Windows Services), a .NET Core (dawniej .NET Core) na obecną chwilę ich nie obsługuje, lub wymaga karkołomnego opakowywania własnych mechanizmów (np. opakowanie Backgroud Service do Windows Service). Oczywiście poza .NET Frameworkiem będzie można użyć też innych mechanizmów (więcej szczegółów będzie na zajęciach), ale opakowywanie .NET (dawniej .NET Core) w .NET Framework (ew. .NET Standard) bywa karkołomne. Jeśli ktoś będzie bardzo biegły w C i będzie znał podstawy Win API, to będzie mógł stworzyć implementację w kodzie natywnym, ale nie spodziewam się, że ktoś się o to pokusi. W końcowej części wykładu planuję wprowadzenie (w frameworku .NET) zadań działających w tle (z nowego modelu), ale spodziewam się problemów...
Pytanie: Z jakich języków programowania będziemy korzystać? Odpowiedź: Na wykładzie będę się posługiwał niemal wyłącznie językiem C#, ale jeśli ktoś będzie chciał (i umiał), to równie dobrze może używać jakiegoś innego języka wspieranego przez środowisko programistyczne, np. Visual Basic.
Pytanie: Nie udało mi się zapisać na przedmiot w USOS-ie. Czy mógłby Pan mnie dopisać? Czy będzie utworzona dodatkowa grupa? Odpowiedź: - Mam nadzieję, że w tym roku fizycznych miejsc dla wszystkich wystarczy. Dla każdej z grup limit osób wynosi 16, ale w pracowni mamy 20 miejsc przy komputerach + 20 miejsc w ławkach, więc wydaje się, że w tej sali dałby się przeprowadzić wykład nawet dla większej liczby osób.
- Zaznaczam, że przedmiot nie jest odpowiedni dla osób które jeszcze nie zaliczyły przedmiotu Programowanie III. Co prawda zakładam, że nie wszyscy uczestnicy koniecznie muszą na początku znać C# i pierwsze zajęcia będą poświęcone w uproszczeniu temu jak przestawić się z Javy na C#, ale znajomość podstaw programowania obiektowego w języku typowo obiektowym (jak Java) będzie absolutnie niezbędna. Mam złe doświadczenia z osobami, które wybierały sobie ten przedmiot, będąc na drugim roku I stopnia studiów - przed poznaniem języków Java lub C# (Programowanie III), a nawet C++ (Programowanie II). Część z tych osób zrezygnowała po kilku tygodniach (uznając, że sobie nie poradzą lub będą musiały zbyt dużo czasu poświęcić na wcześniejszą naukę wymaganych podstaw), część pod koniec, sporo osób zaliczyło go dopiero we wrześniu (po zaliczeniu Programowania III), niektórzy (nieliczni) w kolejnym cyklu lub wcale. W 2-4 godziny nie da się przeprowadzić 60-godzinnego kursu, a zaległości miały tendencję do lawinowego narastania. Dlatego prosiłbym osoby z drugiego roku studiów pierwszego stopnia, aby w tym roku nie wybierały tego przedmiotu (chyba, że przekonają mnie, że potrafią już programować w jakimś silnie typowanym i typowo obiektowym języku programowania, najlepiej wywodzącym się z C, jak Java, C#, D, Objective C, czy C++ z GC; nie będę brał pod uwagę języków takich jak PHP, Perl czy Ruby).
|
W cyklu 2024/25Z:
Odpowiedzi na "często zadawane pytania":
Pytanie: Pod jakim systemem operacyjnym będziemy pracować? Odpowiedź: Najogólniej mówiąc pod stacjonarną wersją systemu Windows bazującego na jądrze systemu wywodzącego się z systemu OS2, ale najprawdopodobniej jeszcze nie Windows 11 (większość wydziałowych komputerów nie spełnia wymagań tego systemu operacyjnego). W uproszczeniu: Windows 10 lub ewentualnie Windows 7 (ten ostatni ma tę zaletę, że trudnej go popsuć, ale z drugiej strony trudniej będzie zainstalować i skonfigurować na nim właściwe środowisko programistyczne).
Pytanie: Jakie będzie podstawowe środowisko programistyczne (z znaczeniu IDE - Integrated Development Environment)? Odpowiedź: Visual Studio 2022 lub Visual Studio 2019 w wariancie przynajmniej Community (które jest do tego typu zastosowań darmowe). Przypominam, że jako studenci mogą Państwo pobrać z programu Azure Dev Tools for Teaching wersję Enterprise i z powodu niektórych dodatkowych funkcjonalności nawet preferowałbym tę wersję (Enterprise). Zalecam instalowanie tego środowiska z angielskim pakietem językowym (bo tłumaczenia w domyślnie ustawianym polskim pakiecie nadal czasami są mocno nieintuicyjne i mylące).
Pytanie: Jakie będzie podstawowe środowisko programistyczne (z znaczeniu API - Application Programming Interface)? Odpowiedź: .NET Framework oraz .NET (dawniej .NET Core), w niektórych miejscach stosownie opakowywanego lub uzupełnianego kodem natywnym pisanym w Visual C++.
Pytanie: Dlaczego jeszcze będzie używaniy .NET Framework, a nie wyłącznie .NET (dawniej .NET Core)? Odpowiedź: Bo w .NET Framework-u od początku i w dużo prostszy sposób można obsługiwać mechanizmy potrzebne m.in. do implementowania usług windowsowych (przyp. Windows Services), a w .NET (dawniej .NET Core) "pełną" ich obsługę wprowadzono dopiero w ostatnich miesiącach (mniej niż rok od czasu przed rozpoczęciem cyklu) i na obecną chwilę w wielu miejscach wymaga ona karkołomnego opakowywania własnych mechanizmów (np. opakowanie Backgroud Service do Windows Service, czy dużo bardziej skomplikowane tworzenie instalatora do takiej usługi). Ponadto niektóre mechanizmy (oparte na rejestrze systemu) w związku ze swoją specyfiką nie mogą być w prosty sposób implementowane bezpośrednio we Frameworku .NET (dawniej .NET Core) (i na obecną chwilę jeszcze nie są). Oczywiście poza .NET Frameworkiem i frameworkiem .NET będzie można użyć też innych mechanizmów (więcej szczegółów będzie na zajęciach). Przykładowo jeśli ktoś będzie bardzo biegły w C i będzie znał podstawy Win API, to będzie mógł stworzyć implementację w kodzie natywnym (ale nie spodziewam się, że ktoś się o to pokusi). W końcowej części wykładu planuję wprowadzenie (we frameworku .NET) zadań działających w tle (z nowego modelu), ale spodziewam się problemów...
Pytanie: Z jakich języków programowania będziemy korzystać? Odpowiedź: Na wykładzie będę się posługiwał niemal wyłącznie językiem C#, ale jeśli ktoś będzie chciał (i umiał), to równie dobrze może używać jakiegoś innego języka wspieranego przez środowisko programistyczne, np. Visual Basic. Na wykładzie pojawią się też elementy "natywnego" Visual C++ (przy dwóch zagadnieniach: "Interoperability" oraz alternatywnych sposobach implementacji usług).
Pytanie: Nie udało mi się zapisać na przedmiot w USOS-ie. Czy mógłby Pan mnie dopisać? Czy będzie utworzona dodatkowa grupa? Odpowiedź: - Mam nadzieję, że w tym roku fizycznych miejsc dla wszystkich wystarczy. Dla każdej z grup limit osób wynosi 16, ale w pracowni mamy 20 miejsc przy komputerach + 20 miejsc w ławkach, więc wydaje się, że w tej sali dałby się przeprowadzić wykład nawet dla większej liczby osób.
- Zaznaczam, że przedmiot nie jest odpowiedni dla osób które jeszcze nie zaliczyły przedmiotu Programowanie III. Co prawda zakładam, że nie wszyscy uczestnicy koniecznie muszą na początku znać C# i pierwsze zajęcia będą poświęcone w uproszczeniu temu jak przestawić się z Javy na C#, ale znajomość podstaw programowania obiektowego w języku typowo obiektowym (jak Java) będzie absolutnie niezbędna. Mam złe doświadczenia z osobami, które wybierały sobie ten przedmiot, będąc na drugim roku I stopnia studiów - przed poznaniem języków Java lub C# (Programowanie III), a nawet C++ (Programowanie II). Część z tych osób zrezygnowała po kilku tygodniach (uznając, że sobie nie poradzą lub będą musiały zbyt dużo czasu poświęcić na wcześniejszą naukę wymaganych podstaw), część pod koniec, sporo osób zaliczyło go dopiero we wrześniu (po zaliczeniu Programowania III), niektórzy (nieliczni) w kolejnym cyklu lub wcale. W 2-4 godziny nie da się przeprowadzić 60-godzinnego kursu, a zaległości miały tendencję do lawinowego narastania. Dlatego prosiłbym osoby z drugiego roku studiów pierwszego stopnia, aby w tym roku nie wybierały tego przedmiotu (chyba, że przekonają mnie, że potrafią już programować w jakimś silnie typowanym i typowo obiektowym języku programowania, najlepiej wywodzącym się z C, jak Java, C#, D, Objective C, czy C++ z GC (garbage collector); nie będę brał pod uwagę języków takich jak PHP, Perl czy Ruby).
|
W cyklu 2025/26Z:
Odpowiedzi na "często zadawane pytania":
Pytanie: Pod jakim systemem operacyjnym będziemy pracować? Odpowiedź: Najogólniej mówiąc pod stacjonarną wersją systemu Windows bazującego na jądrze systemu wywodzącego się z systemu OS2, najprawdopodobniej Windows 11 (choć większość wydziałowych komputerów nie spełnia wymagań tego systemu operacyjnego). W uproszczeniu: Windows 11 (Edu, Pro, Enterprise lub w ostateczności Home) lub Windows 10 lub ewentualnie Windows 7 (ten ostatni ma tę zaletę, że trudnej go popsuć, ale z drugiej strony trudniej będzie zainstalować i skonfigurować na nim właściwe środowisko programistyczne).
Pytanie: Jakie będzie podstawowe środowisko programistyczne (z znaczeniu IDE - Integrated Development Environment)? Odpowiedź: Visual Studio 2022 lub Visual Studio 2019 w wariancie przynajmniej Community (które jest do tego typu zastosowań darmowe). Przypominam, że jako studenci mogą Państwo pobrać z programu Azure Dev Tools for Teaching wersję Enterprise i z powodu niektórych dodatkowych funkcjonalności nawet preferowałbym tę wersję (Enterprise). Zalecam instalowanie tego środowiska z angielskim pakietem językowym (bo tłumaczenia w domyślnie ustawianym polskim pakiecie nadal czasami są mocno nieintuicyjne i mylące).
Pytanie: Jakie będzie podstawowe środowisko programistyczne (z znaczeniu API - Application Programming Interface)? Odpowiedź: .NET Framework oraz .NET (dawniej .NET Core), w niektórych miejscach stosownie opakowywanego lub uzupełnianego kodem natywnym pisanym w Visual C++.
Pytanie: Dlaczego jeszcze będzie używaniy .NET Framework, a nie wyłącznie .NET (dawniej .NET Core)? Odpowiedź: Bo w .NET Framework-u od początku i w dużo prostszy sposób można obsługiwać mechanizmy potrzebne m.in. do implementowania usług windowsowych (przyp. Windows Services), a w .NET (dawniej .NET Core) "pełną" ich obsługę wprowadzono dopiero stosunkowo niedawno i na obecną chwilę w wielu miejscach wymaga ona karkołomnego opakowywania własnych mechanizmów (np. opakowanie Backgroud Service do Windows Service, czy dużo bardziej skomplikowane tworzenie instalatora do takiej usługi). Ponadto niektóre mechanizmy (oparte na rejestrze systemu) w związku ze swoją specyfiką nie mogą być w prosty sposób implementowane bezpośrednio we Frameworku .NET (dawniej .NET Core) (i na obecną chwilę jeszcze nie są). Oczywiście poza .NET Frameworkiem i frameworkiem .NET będzie można użyć też innych mechanizmów (więcej szczegółów będzie na zajęciach). Przykładowo jeśli ktoś będzie bardzo biegły w C i będzie znał podstawy Win API, to będzie mógł stworzyć implementację w kodzie natywnym (ale nie spodziewam się, że ktoś się o to pokusi). W końcowej części wykładu planuję wprowadzenie (we frameworku .NET) zadań działających w tle (z nowego modelu), ale spodziewam się problemów...
Pytanie: Z jakich języków programowania będziemy korzystać? Odpowiedź: Na wykładzie będę się posługiwał niemal wyłącznie językiem C#, ale jeśli ktoś będzie chciał (i umiał), to równie dobrze może używać jakiegoś innego języka wspieranego przez środowisko programistyczne, np. Visual Basic. Na wykładzie pojawią się też elementy "natywnego" Visual C++ (przy dwóch zagadnieniach: "Interoperability" oraz alternatywnych sposobach implementacji usług).
Pytanie: Nie udało mi się zapisać na przedmiot w USOS-ie. Czy mógłby Pan mnie dopisać? Czy będzie utworzona dodatkowa grupa? Odpowiedź: - Mam nadzieję, że w tym roku fizycznych miejsc dla wszystkich wystarczy. Dla każdej z grup limit osób wynosi 16, ale w pracowni mamy 20 miejsc przy komputerach + 20 miejsc w ławkach, więc wydaje się, że w tej sali dałby się przeprowadzić wykład nawet dla większej liczby osób.
- Zaznaczam, że przedmiot nie jest odpowiedni dla osób które jeszcze nie zaliczyły przedmiotu Programowanie III. Co prawda zakładam, że nie wszyscy uczestnicy koniecznie muszą na początku znać C# i pierwsze zajęcia będą poświęcone w uproszczeniu temu jak przestawić się z Javy na C#, ale znajomość podstaw programowania obiektowego w języku typowo obiektowym (jak Java) będzie absolutnie niezbędna. Mam złe doświadczenia z osobami, które wybierały sobie ten przedmiot, będąc na drugim roku I stopnia studiów - przed poznaniem języków Java lub C# (Programowanie III), a nawet C++ (Programowanie II). Część z tych osób zrezygnowała po kilku tygodniach (uznając, że sobie nie poradzą lub będą musiały zbyt dużo czasu poświęcić na wcześniejszą naukę wymaganych podstaw), część pod koniec, sporo osób zaliczyło go dopiero we wrześniu (po zaliczeniu Programowania III), niektórzy (nieliczni) w kolejnym cyklu lub wcale. W 2-4 godziny nie da się przeprowadzić 60-godzinnego kursu, a zaległości miały tendencję do lawinowego narastania. Dlatego prosiłbym osoby z drugiego roku studiów pierwszego stopnia, aby w tym roku nie wybierały tego przedmiotu (chyba, że przekonają mnie, że potrafią już programować w jakimś silnie typowanym i typowo obiektowym języku programowania, najlepiej wywodzącym się z C, jak Java, C#, D, Objective C, czy C++ z GC (garbage collector); nie będę brał pod uwagę języków takich jak Python, PHP, Perl czy Ruby).
|