Podstawy programowania Wprowadzenie Proces tworzenia programu Sformuowanie problemu
Podstawy programowania Wprowadzenie
Proces tworzenia programu Sformułowanie problemu • funkcje programu • zakres i postać danych • postać i dokładność wyników Wybór / opracowanie metody rozwiązania • znaleźć matematyczne metody rozwiązania • wybrać najbardziej odpowiednią Opracowanie algorytmu
Algorytm - przepis postępowania, którego wykonanie prowadzi do rozwiązania określonego problemu • określa czynności, jakie należy wykonać • wyszczególnia wszystkie niezbędne czynności oraz kolejność ich wykonania • precyzyjny na tyle, aby posługiwanie się nim polegało na automatycznym wykonaniu czynności
Języki programowania Maszynowy (0 -1) Asembler Języki interpretowane (Basic) Języki wysokiego poziomu, kompilowane (Ada, Pascal, C, C++, Java, C#, …) Języki skryptowe (PHP)
Podstawy programowania Prowadzący • dr inż. Piotr Kaczorek C-341, p. kaczorek@we. am. gdynia. pl • dr inż. Damian Bisewski • mgr inż. Marcin Waraksa
Podstawy programowania Strona www: ktm. am. gdynia. pl/~pik/prokom - materiały z wykładu - instrukcje do ćwiczeń - przykładowe pytania na sprawdziany
Program zajęć • Proces tworzenia programu komputerowego, algorytm, języki programowania, programy narzędziowe • Platforma. NET: języki programowania, CLR, biblioteki, IL, JIT MS VS: zarządzanie projektami, struktura programu, debuger • Typy i zmienne: CTS, typy wartościowe i referencyjne, alokacja, realokacja, GC; typy proste, wyliczeniowe, struktury, tablice, operatory i wyrażenia, hierarchia i wiązanie, konwersje; • Programowanie strukturalne: instrukcje wyrażeniowa, pusta, grupująca, warunkowa, instrukcje iteracyjne • Tablice: tworzenie tablic, operator indeksowania
Program zajęć • Przykłady algorytmów i ich implementacja: wyszukiwanie (liniowe, binarne), sortowanie (bąbelkowe, gnoma, sekwencyjne, szybkie • Funkcje: definicja funkcji, przekazywanie argumentów, dostarczanie rezultatu, wywołanie funkcji, funkcje przeciążone, rekurencja, funkcje statyczne, funkcje rozszerzające; DRY • Znaki i łańcuchy: reprezentacja znaków i łańcuchów, funkcje do przetwarzania łańcuchów, lokalizacja • Pliki: dane a ich reprezentacja, pliki tekstowe i binarne, standardowe formaty plików, mechanizmy obsługi plików
Program zajęć • Wprowadzenie do programowania obiektowego: klasy, pola, metody i właściwości, obiekty; hermetyzacja, dziedziczenie i polimorfizm, klasy abstrakcyjne i interfejsy; Standardowe klasy do przetwarzania danych: listy i kolejeki • Aplikacje z GUI, EDP, RAD
Podręczniki • Jacek Matulewski i inni Visual Studio 2010 dla programistów C# (ebook)
Podręczniki • Jacek Matulewski Visual Studio 2017. Tworzenie aplikacji Windows w języku C#
Narzędzia Środowisko programistyczne • Microsoft Visual Studio Comunity https: //visualstudio. microsoft. com/vs/community/ • Microsoft Visual Studio Professional Microsoft Imagine (MSDN AA), opiekun: dr inż. Andrzej Rak informacje http: //we. umg. edu. pl/
Platforma. NET (. NET Framework) • Platforma programistyczna Microsoft, • Obejmuje - środowisko uruchomieniowe CLR (Common Language Runtime) - biblioteki klas • Programy mogą być pisane w jednym z wielu języków (C++, C#, F#, J#, Delphi, Visual Basic) • Umożliwia uruchamianie programów na serwerze IIS (Internet Information Services) oraz na systemach z implementacją. NET • Zgłoszony standard EMCA, powstają niezależne wdrożenia, np. Mono (UNIX, Linux, Android, …)
Platforma. NET Struktura. NET Biblioteki Windows. Forms ADO. NET Web. Services ASP. NET XML, SQL BCL (Base Class Library) Środowisko uruchomieniowe CLR (Common Language Runtime)
Platforma. NET Środowisko uruchomieniowe CLI C# J# C++ Biblioteki. NET Kod IL Obsługa wykonywania Kompilator JIT (Just in Time) Bezpieczeństwo Zarządzanie pamięcią Kod maszynowy Procesor
Platforma. NET Wersje. NET • 1. 0 • 2. 0 • 3. 5 • 4. 0 • 4. 5 • 4. 6 • 4. 7 (2002 (2005 (2006 (2007 (2010 (2012 (2015 (2017 r. ), r. ), Windows VS 2010 Windows VS 2017 Server 2003 Server 2008, Windows Vista 7 Server 8, Windows 8, VS 2012 10, VS 2015
C# Najważniejsze cechy C# • Obiektowość kod programu jest zbiorem klas; typy proste (int, double, itd. ) również są strukturami • Odśmiecanie pamięci zarządzaniem pamięcią zajmuje się środowisko uruchomieniowe • Wiele nowoczesnych rozwiązań właściwości, indeksery, delegacje, zdarzenia, refleksje, … (wiele zapożyczonych z języka Java) • Bogate biblioteki klas dla aplikacji konsolowych (System), okienkowych (Windows. Forms), bazodanowych (ADO. NET), sieciowych (System. Net), w architekturze rozproszonej (Web. Services), dynamicznych aplikacji internetowych (ASP. NET) oraz multimediów (Silverlight) • Narzędzia wbudowane Narzędzia pracy grupowej, wbudowany system kontroli wersji, wsparcie dla tworzenia aplikacji mobilnych, kreator instalacji
MS Visual Studio
MS Visual Studio
MS Visual Studio
MS Visual Studio
MS Visual Studio
- Slides: 22