Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.

Podobne dokumenty
Paradigmata programování 2

Martin Pergel. 26. února Martin Pergel

Úvodní informace. 18. února 2019

B0B99PRPA Procedurální programování

Kombinatorika a grafy I

Univerzita Palackého v Olomouci

B0B99PRPA Procedurální programování. Stanislav Vítek

ggplot2 Efektní vizualizace dat v prostředí jazyka R Martin Golasowski 8. prosince 2016

Numerické metody minimalizace

Podstawy programowania. Wprowadzenie

VISUAL STUDIO 2008 I.NET 3.5 NOWOŚCI. Bartłomiej Filipek

Metodyka programowania. Podstawy C#

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

Platformy programistyczne:.net i Java WYKŁ AD 3: WPROWADZENIE DO PL ATFORMY.NET / JĘZYK C#

Projekt współfinansowany przez Unię Europejską z Programu Operacyjnego Innowacyjna Gospodarka na lata ZAMAWIAJĄCY:

Matematika 2, vzorová písemka 1

Narzędzia RAD (wykład 1)

Platformy programistyczne:.net i Java WYKŁ AD 3: WPROWADZENIE DO PL ATFORMY.NET / JĘZYK C#

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Internet a zdroje. (Zdroje na Internetu) Mgr. Petr Jakubec. Katedra fyzikální chemie Univerzita Palackého v Olomouci Tř. 17.

Plan zajęć studium podyplomowego PSPiZK-NET na rok

Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski

Microsoft IT Academy kurs programowania

Numerické metody 8. května FJFI ČVUT v Praze

Programowanie w środowiskach graficznych. Wykład 1 OS, Podstawy Windows API

DelighTech Fitness App

C# /.NET. Copyright by 3bird Projects 2018,

Języki i paradygmaty programowania - 1

CENNIK I TERMINARZ SZKOLEŃ

Poznaj ASP.NET MVC. Kamil Cieślak Microsoft Student Partner

RESTful WCF Services. Autor ćwiczenia: Piotr Ostrowski. Kroki ćwiczenia : 1. Utworzenie nowego projektu RESTful WCF.

Zásuvný modul QGISu. QGIS plugin pro práci s katastrálními daty

Projekt: Mikro zaprogramowane na sukces!

Praktykant Programista ios/android/windows Phone/Windows 8/PHP/.NET (do wyboru) Biuro w Warszawie

B0B99PRPA Procedurální programování

Programowanie obiektowe

Kod NAZWA SZKOLENIA DNI/GODZ. CENA NETTO ECDL

Zaawansowane aplikacje internetowe laboratorium REST

Windows Mobile. Andy Wigley, Daniel Moth, Peter Foot, Microsoft Mobile Development Handbook, Microsoft Press 2007

T O M A S Z N I T K A

Instalacja SQL Server Konfiguracja SQL Server Logowanie - opcje SQL Server Management Studio. Microsoft Access Oracle Sybase DB2 MySQL

Robert Szmurło. Projektowanie Graficznych Interfejsów Użytkownika

Programowanie w środowiskach graficznych. Wykład 1 OS, Podstawy Windows API

MATEMATIKA 3. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

Informatyka I : Tworzenie projektu

1. Informace o předmětu, úvod do programování

#line #endif #ifndef #pragma

Język C# 2010 i platforma.net 4 / Andrew Troelsen ; tł. Maciej Baranowski. Warszawa, Spis treści

(1) Derivace. Kristýna Kuncová. Matematika B2 17/18. Kristýna Kuncová (1) Derivace 1 / 35

Programowanie obiektowe

Metodyki zwinne wytwarzania oprogramowania

Podyplomowe Studium Programowania i Zastosowań Komputerów. Szczegółowe programy modułów tematycznych

Standardy programowania protokołów komunikacyjnych Laboratorium nr 5 komunikacja multicastowa IPv6

1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1

Terminarz Szkoleń II kwartał 2013 ACTION CE

Microsoft Visual Studio 2010 / Mike Snell, Lars Powers. Gliwice, cop Spis treści. O autorach 21

Rys. 1. Struktura środowiska.net 3.5. S. Fraser, Pro Visual C++/CLI and the.net 3.5 Platform, Apress, 2009.

TGH01 - Algoritmizace

Technologie Komponentowe. Piotr Łukasik p /

PA152,Implementace databázových systémů 2 / 25

Wykład IX. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Wykłady 1, 2. Wstęp do programowania w środowisku Visual C++ Autor: Zofia Kruczkiewicz

Metodyka programowania. Podstawy C#

CENNIK I TERMINARZ SZKOLEŃ

Poznaj środowisko Visual Studio 2010 Professional i naucz się tworzyć mistrzowskie aplikacje

Edita Pelantová, katedra matematiky / 16

Studia podyplomowe. Programowanie na platformie Microsoft Visual Studio.NET

Programowanie obiektowe

Programowanie 2. Język C++. Wykład 1.

1 Wprowadzenie do J2EE

IB047. Pavel Rychlý. 21. února

CENNIK I TERMINARZ SZKOLEŃ SZKOLENIA OTWARTE DLA UŻYTKOWNIKÓW SYSTEMÓW INFORMATYCZNYCH

TERMINY SZKOLEŃ W WARSZAWIE: wrzesień - grudzień 2012

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Obsah. Zobrazení na osmistěn. 1 Zobrazení sféry po částech - obecné vlastnosti 2 Zobrazení na pravidelný konvexní mnohostěn

Podstawy wzorca MVC MODEL KON- TROLER WIDOK. Odpowiada za wyświetlenie danych użytkownikowi. Zawiera dane aplikacji oraz jej logikę.

Instrukcja tworzenia aplikacji bazodanowej opartej o technologię Oracle i platformę.net

Projekt: Autoryzowane kompetencje podstawą rozwoju śląskich MŚP Opis autoryzowanych szkoleń Microsoft planowanych do realizacji w ramach projektu

Środowiska i platformy programistyczne

Załącznik nr 1 do zapytania ofertowego nr 1/POKL/2015

Zastosowanie emulatorów w rozbudowie systemów wbudowanych

Geometrická nelinearita: úvod





Komplexní analýza. Martin Bohata. Katedra matematiky FEL ČVUT v Praze Martin Bohata Komplexní analýza Mocninné řady 1 / 18

TGH01 - Algoritmizace

Reprezentace dat. BI-PA1 Programování a Algoritmizace I. Ladislav Vagner

Wielowarstwowe aplikacje internetowe. Web Services. Autorzy wykładu: Maciej Zakrzewicz Marek Wojciechowski. Web Services

Bazodanowe usługi sieciowe w technologii ASP.NET. dr inż. Tomasz Tatoń

Kierunek: Informatyka rev rev jrn Stacjonarny EN 1 / 6

IMPLEMENTATION OF MULTI-TIER APPLICATIONS WITH.NET TECHNOLOGY

Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych

Programowanie Komputerów

Programista aplikacji internetowych. Junior Web Developer z certyfikatem Programming in HTML5 with JavaScript and CSS3

ISBN

Cwiczenie nr 1 Pierwszy program w języku C na mikrokontroler AVR

Wykład 12. Programowanie serwera MS SQL 2005 w C#

Transkrypt:

Základy programování 4 - C# Radek Janoštík Univerzita Palackého v Olomouci 13.2.2018 Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 1 / 18

Úvod Předmět navazuje na Základy programování 3 - C# Jedna dvouhodina týdně! výklad + samostatná práce Doporučeno MS Visual Studio (na verzi netrvám) Uživatelé Mono vítáni (viz. níže) Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 2 / 18

Konzultace, kontakt Email: radek.janostik@upol.cz Pracovna: 5.076 Telefon: 585 634 715 (nepreferován) Web: http://apollo.inf.upol.cz/ janostik/ Konzultace: Čtvrtek 13:00-14:30 nebo dohodou Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 3 / 18

Podmínky zápočtu Účast na semináři není povinná Z každého semináře bude úkol Úplné splnění úkolu na semináři ) 4 body Úplné splnění úkolu do 23:59:59 olomouckého času dva dny před následujícím seminářem ) 3 body, tedy: I Úterní seminář ) před nedělní půlnocí I Středeční seminář ) pondělní půlnocí Chyby, neúplnost, bad practice budou penalizovány Celkem 11 úkolů ) maximálně 33 bodů, pro zápočet potřeba 26:4 bodů Alternativa: Menší projekt zahrnující probranou látku odevzdaný do měsíce od schválení Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 4 / 18

Odevzdávání úkolů Osobně na cvičení ) 4 body Emailem ) 3 body I Emailem na: radek.janostik@upol.cz I Předmět: ZP4CS - úkol č. n př.: ZP4CS - úkol č. 1 I Tělo: klidně prázdné, případně nějaké doplnění I Příloha: zip archiv celého projektu bez adresářů bin a obj (antispam), pojmenovaný vaším příjmením bez diakritiky. Př.: janostik.zip I Přijetí emailu do výše zmíněného termínu před následujícím seminářem Nedodržení tvaru předmětu, pojmenování zip archivu == neodevzdání úkolu Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 5 / 18

Doporučená literatura (1/2) Andrew Troelsen. Pro C# 5.0 and the.net 4.5 Framework. (6. vydání). 2012. ISBN 978-1-4302-4233-8. Jay Glynn a kol., C# Programujeme profesionálně. COMPUTER PRESS - dostupné v knihovně, starší A spousta dalších... Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 6 / 18

Doporučená literatura (2/2) - zdroje legálně na webu Aleš Keprt. Softwarová laboratoř v jazyce C#. 2008. http://phoenix.inf.upol.cz/esf/ucebni/softlab.pdf Aleš Keprt. Systémové programování v jazyce C#. 2008.http://phoenix.inf.upol.cz/esf/ucebni/sysprog.pdf Sice starší, ale pro základ dostačující Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 7 / 18

Jízdní řád (1/2) 12.2.2019 Úvodní hodina, opakování, direktivy preprocesoru, konfigurace aplikace, rozhraní IComparable 19.2.2019 Práce se soubory, souborovým systémem 26.2.2019 XML, JSON 5.3.2019 Základy paralelizace vlákna 12.3.2019 LINQ 19.3.2019 Práce s databázemi SQL 26.3.2019 Entity Framework Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 8 / 18

Jízdní řád (2/2) 2.4.2019 GUI, formuláře 9.4.2019 GUI kreslení 16.4.2019 ASP.MVC 23.4.2019 WebServices 30.4.2019 rezerva 7.5.2019 Zápočty, předvedení projektů, dodělávky, rezerva Změny v plánu vyhrazeny Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 9 / 18

Anketa Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 10 / 18

Co byste měli znát Seznámení s vývojovým prostředím Visual Studio. Úvod do programování v C#. Platforma.NET. Proměnné, operátory, výrazy, datové typy, metody, rozsah platnosti. Řízení toku. Rozhodovací příkazy. Složené příkazy a opakování. Chyby a výjimky. Pole, kolekce, generické typy. Procházení kolekcí. Třídy a objekty. Hodnoty a reference. Hodnotové typy (enum, struct). Dědičnost. Vlastnosti (properties). Indexery. Delegáty a události. Překrytí operátorů. Základní třídy standardní knihovny. Programování okenních aplikací. Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 11 / 18

Projekt mono Projekt mono: http://www.mono-project.com/ Cross platform, open source.net framework Open-source implementace.net frameworku Kompatibilita vše v.net 4.7 až na: I WPF (framework pro GUI) I WWF Windows Workflow Foundation I Omezeně WCF (Windows Communication Foundation) a asynchronní ASP.NET I Vynechány OS-specifické (=Windows-only) funkce Více na: http://www.mono-project.com/docs/about-mono/compatibility/ Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 12 / 18

Monodevelop Multiplatformní IDE pro C# http://www.monodevelop.com/ Komplexní a funkční IDE (pro naše účely dokáže nahradit MSVS) Unity engine Grafické aplikace v GTK# Podpora Linux, Mac OS X, Windows Zdarma Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 13 / 18

Direktivy preprocesoru Začínají # #define a #undef musí být na začátku souboru. Nastavení / zrušení symbolu #if, #elif, #else, #endif #error, #warning #region, #endregion Konstanta DEBUG v debug režimu Konstanty: NET20, NET35, NET40, NET45, NET451, NET452, NET46, NET461, NET462, NET47, NET471, NET472 pro verze frameworku NETSTANDARD1 0, NETSTANDARD1 1, NETSTANDARD1 2, NETSTANDARD1 3, NETSTANDARD1 4, NETSTANDARD1 5, NETSTANDARD1 6, NETSTANDARD2 0 pro verze standardu NETCOREAPP1 0, NETCOREAPP1 1, NETCOREAPP2 0, NETCOREAPP2 1, NETCOREAPP2 2 pro.net Core Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 14 / 18

Konfigurace aplikace Project! Properties! Settings Access Modifier - Iternal a Public udává viditelnost nastavení Scope Application a User read-only vs. měnitelné Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 15 / 18

Rozhraní IComparable https://msdn.microsoft.com/cs-cz/library/system.icomparable(v= vs.110).aspx public interface IComparable { int CompareTo(object obj); } CompareTo(object obj) 8 >< >: < 0 Pokud je v řazení před obj = 0 Pokud je v řazení na stejném místě > 0 Pokud je v řazení za obj Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 16 / 18

Úkol (1/2) Vytvořit třídu Tuple reprezentující n-tici celých čísel a definovat na ní standardní uspořádání I Přetížit metodu ToString() I Implementovat rozhraní IComparable pro třídu Tuple Napsat QuickSort pro kolekce IComparable I Inicializovat kolekci Tuple a tu pomocí QuickSortu setřídit I Pře DEBUG režimu vypisovat zvolené pivoty Nakonec vypsat do konzole nějaký řetězec z konfigurace aplikace Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 17 / 18

Úkol (2/2) Náznak volání Tuple[] tuples = {new Tuple({5, 8, 2}), new Tuple({3, 7, 9}),new Tuple({7, 5, 9})}; PrintArray(tuples); ComparableQuickSort(tuples); PrintArray(tuples); Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.2018 18 / 18