/ICS

Lectures and computer labs storage for ICS course at FIT BUT.

Primary LanguageC#GNU General Public License v3.0GPL-3.0

Seminář C# - ICS, Organizační pokyny


Aktuality k předmětu


Rozvrh

Přednášky

Typ Místnost Čas
Přednáška D105 Pá 08:00-09:50

+++

Cvičení

Cvičení jsou demonstrační. Pokud možno, přineste si vlastní zařízení, na kterém budete moct cvičení aktivně zúčastnit. Bude potřeba vývojové prostředí ideálně Visual Studio 2022 / Rider / VSCode.

Typ Místnost Čas
Dobrovolné demonstrační cvičení D105 Pá 10:00-11:50

+++

Plán semestru

Datum Typ Téma přednášky
11.02. L01 Úvod do jazyka C# a platformy .NET - základní syntaxe jazyka (verze pro tisk)
E01 Práce s Visual Studio 2022 a Azure DevOps (základy pro zracování projektu)
18.02. L02 Úvod do Objektově Orientovaného Programování (verze pro tisk)
E02 Objektově orientované programování a úvod do Entity Framework
25.02. L03 Představení základních knihovních funkcí (BCL) - dotazování za pomocí vestavěného nástroje LINQ nad datovými zdroji (kolekcemi, XML, MSSQL) (verze pro tisk)
04.03. L04 Propojení aplikace s databází (verze pro tisk)
E03 Entity framework
06.03. P01 Odevzdání první fáze projektu
11.03. L05 Psaní čistého a udržovatelného kódu
18.03. L06 Návrhový vzor Model-View-ViewModel (MVVM)
25.03. L07 Automatizované testování - práce s xUnit, CI

+++

Datum Typ Téma přednášky
01.04. L08 Základní koncepty tvorby uživatelského rozhraní (verze pro tisk)
E04 Základy WPF a návrhový vzor MVVM
08.04. L09 WPF - tvorba komponent a stylování aplikací.
E05 WPF frontend a binding
10.04. P02 Odevzdání druhé fáze projektu
15.04. L10 Velikonoce - Velký Pátek
22.04. L11 Návrhové vzory - vytvářecí, strukturní a chování - Gang of Four (GoF) v kontextu C#
E06 Takto můžete napsat projekt?!
29.04. L12 Paralelní a asynchronní programování - proces, vlákno, úloha z pohledu C# a použitého .NET frameworku (verze pro tisk)
02-03.05 P03 Obhajoby projektu
06.05. L13 Multiplatformní programování - .NET Standard, .NET Core., kontejnerizace aplikací pomocí Docker

LXY - přednáška | EXY - democvičení | P0X - projekt


Projekt

  • Projekt bude vypracovaný v 5ti členném týmu.
Fáze Obsah Body
1 Objektový návrh 20
2 Entity Framework, Repository, Tests 30
3 Finalizace aplikace a následná obhajoba 50
  • Při obhajobě:
    • musí být přítomni všichni členové týmu,
    • obhajovat projekt bude náhodně vybraný člen týmu,
    • nemusíte chodit v obleku...,

Nástroje použity ve cvičeních

Nástroj Typ Popis
Visual Studio 2022 Samostatný program Hlavní vývojové prostředí pro .Net
Resharper Doplněk Nástroje na lepší produktivitu, refaktorování. Studentská licence je k dispozici zdarma zde
Code metrices Doplněk Zobrazování složitosti jednotlivých metod

+++

Nástroj Typ Popis
LinqPad Samostatný program Nástroj na přístup do databáze přes Linq, SQL…
DotPeek Samostatný program Dekompilátor C# kódu
MarkdownEditor Doplněk Handy Markdown editor for VS

  • Q: Connection string používaný v cvičeních.
  • A:
<connectionStrings>
  <add name="TasksContext"
       connectionString="Data Source=(LocalDB)\MSSQLLocalDB;
                         Initial Catalog=TasksDB;
                         MultipleActiveResultSets=True;
                         Integrated Security=True;"
           providerName="System.Data.SqlClient" />
</connectionStrings>

Výuka - bodové rozdělení

Typ výuky Maximální bodový zisk
Projekt 100

Vyučující


Užitečné odkazy


Užitečná literatura

Lokální vývoj

Repozitář používá symlinky, které jsou závislé na nastavení prostředí ve Windows.

Pro clonování použijte explicitní povolné symlinků.

git clone -c core.symlinks=true https://github.com/nesfit/ICS.git

Pokud dojde k chybě s oprávněním vytvořit symlink tak nejsnažší je použít git clone s Admin oprávnění. Alternativně můžete upravit local policy v Windows.


+++