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

Podobne dokumenty
Języki i paradygmaty programowania - 1

Podstawy programowania. Wprowadzenie

Środowiska i platformy programistyczne

MATERIAŁY DO ZAJĘĆ I. Podstawowe pojęcia. Algorytm. Spis treści Przepis

Opis. Wykład: 30 Laboratorium: 30

Przegląd i ewaluacja narzędzi do szybkiego tworzenia interfejsu użytkownika (RAD).

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Rok akademicki: 2012/2013 Kod: ZIE s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Język programowania. Andrzej Bobyk

Narzędzia RAD (wykład 1)

Programowanie Komputerów

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Programowanie obiektowe zastosowanie języka Java SE

Microsoft IT Academy kurs programowania

Programowanie obiektowe 2 - opis przedmiotu

KARTA MODUŁU KSZTAŁCENIA

Wykład Ćwiczenia Laboratorium Projekt Seminarium

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

PRZEWODNIK PO PRZEDMIOCIE

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

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

Metodyka programowania. Podstawy C#

Scenariusz lekcji. Scenariusz lekcji 1 TEMAT LEKCJI: 2 CELE LEKCJI: 2.1 Wiadomości: 2.2 Umiejętności: 3 METODY NAUCZANIA: 4 ŚRODKI DYDAKTYCZNE:

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Projekt: Mikro zaprogramowane na sukces!

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

Programowanie obiektowe

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Autor: Bączkowski Karol Promotor: dr inż. Paweł FIGAT

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje w roku akademickim 2012/2013. Przedmioty kierunkowe

PRYWATNA WYŻSZA SZKOŁA BUSINESSU, ADMINISTRACJI I TECHNIK KOMPUTEROWYCH S Y L A B U S

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2012/2013

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2018/2019

Król Łukasz Nr albumu:

Początki Javy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 8

Zacznij Tu! Poznaj Microsoft Visual Basic. Michael Halvorson. Przekład: Joanna Zatorska

Java jako język programowania

- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

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

APLIKACJE KLIENT-SERWER Client-Server Applications Forma studiów: Stacjonarne Poziom kwalifikacji: I stopnia. Liczba godzin/tydzień: 2W, 2L

Wykład 9: Polimorfizm i klasy wirtualne

Krakowska Akademia im. Andrzeja Frycza Modrzewskiego. Karta przedmiotu. obowiązuje studentów, którzy rozpoczęli studia w roku akademickim 2012/2013

Programowanie komputerowe Computer programming

PRZEWODNIK PO PRZEDMIOCIE

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

KARTA PRZEDMIOTU. Programowanie wieloplatformowe, D1_1

Ocenianie ciągłe (praca przy Formująca tablicy oraz przy komputerze) pisemne, końcowe zaliczenie pisemne

SYLABUS/KARTA PRZEDMIOTU

C# 6.0 : kompletny przewodnik dla praktyków / Mark Michaelis, Eric Lippert. Gliwice, cop Spis treści

Programowanie komputerów

WYKŁAD. Jednostka prowadząca: Wydział Techniczny. Kierunek studiów: Elektronika i telekomunikacja. Nazwa przedmiotu: Język programowania C++

KARTA PRZEDMIOTU. Programowanie aplikacji bazodanowych w języku C# D1_2

Programowanie w C. dr inż. Stanisław Wszelak

PRZEWODNIK PO PRZEDMIOCIE

KARTA MODUŁU KSZTAŁCENIA

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.

Przegląd i ewaluacja narzędzi do szybkiego tworzenia interfejsu użytkownika (RAD).

Podstawy programowania wykład

Programowanie obiektowe

4 Web Forms i ASP.NET Web Forms Programowanie Web Forms Możliwości Web Forms Przetwarzanie Web Forms...152

Języki i metody programowania Java. Wykład 2 (część 2)

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

KARTA PRZEDMIOTU. Aplikacje mobilne i wbudowane, D1.8

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.

Programowanie komputerowe. Geodezja i Kartografia I stopień (I stopień / II stopień) akademicki (ogólno akademicki / praktyczny)

WPROWADZENIE DO JĘZYKA JAVA

dr inż. Jarosław Forenc

Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz

KARTA PRZEDMIOTU. 1. NAZWA PRZEDMIOTU: Programowanie obiektowe. 2. KIERUNEK: Matematyka. 3. POZIOM STUDIÓW: I stopnia 4. ROK/ SEMESTR STUDIÓW: II/4

Programowanie obiektowe W1 Wprowadzenie. Dr hab. inż. Lucyna Leniowska, prof. UR Zakład Mechatroniki, Automatyki i Optoelektroniki

Studia podyplomowe. Programowanie na platformie Microsoft Visual Studio.NET

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

Scenariusz lekcji. wymienić elementy projektu w ASP.NET; opisać sposoby tworzenia stron ASP.NET; podać przykłady istniejących stron typu.

Tworzenie i wykorzystanie usług sieciowych

Podstawy programowania - 1

PRZYJĘTE ZASADY GRY...3 ZAŁOŻENIA PROJEKTU...4 CZYM JEST I DLACZEGO QT?...5 DIAGRAM KLAS...7 DIAGRAM GRY SINGLE PLAYER...8 DIAGRAM MULTIPLAYERA...

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD

Java EE produkcja oprogramowania

Java: otwórz okienko. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Specjalnościowy Obowiązkowy Polski Semestr 5

Wprowadzenie. Narzędzia i środowiska programistyczne. Laboratorium 1. Prowadzący: Kierunek: Semestr: Rok: Tomasz Gądek Informatyka Zimowy 2

Podstawy i języki programowania

Podstawy Programowania 2

Programowanie w Javie nazwa przedmiotu SYLABUS A. Informacje ogólne

kierunkowy (podstawowy / kierunkowy / inny HES) nieobowiązkowy (obowiązkowy / nieobowiązkowy) polski semestr V zimowy i letni (semestr zimowy / letni)

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Język JAVA podstawy. wykład 1, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:

Programowanie obiektowe Object programming. Elektrotechnika II stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

Zaawansowane programowanie w języku C++

Programowanie proceduralne w języku C++ Podstawy

Informacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost;

PRZEWODNIK PO PRZEDMIOCIE

Pierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura

Wykład 3 Składnia języka C# (cz. 2)

Laboratorium 1 - Programowanie proceduralne i obiektowe

Transkrypt:

Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski e-mail: t.jeleniewski@neostrada.pl tadeusz.jeleniewski@pwr.wroc.pl http://www.tjeleniewski.wstt.edu.pl

Treści kształcenia: Paradygmaty programowania. Wybrane techniki i narzędzia programowania obiektowego. Student po zaliczeniu tego kursu: - Zna wybrany język programowania obiektowego i związane z nim środowisko programistyczne - Umie rozwiązać podstawowe problemy programistyczne i je poprawnie zaimplementować w wybranym obiektowym języku programowania właściwie wykorzystując cechy tego języka oraz dostarczonych klas na przykładzie języka C# 2

Paradygmat [gr. parádeigma wzór ] ogólnie uznane osiągnięcie naukowe (teoria naukowa), które w pewnym okresie dostarcza modelowych rozwiązań w danej dziedzinie nauki. Inaczej wzór, wzorzec. 3

Literatura Perry S.C. - C# i.net. Wydawnictwo Helion, 2006 Liberty J. Programowanie C#. Wyd. Helion, 2006 Hejlsberg A., Torgersen M., Wiltamuth S., Golde P. Język C#. Programowanie. Wyd. Helion, 2010 Troelsen A. Język C# i platforma.net. Wyd. Mikom, 2006 Hoffman K. Visual C# 2005, księga eksperta. Wyd.Helion, 2007 Liberty J., Hurwitz D., Programowanie ASP.NET. Wyd. HELION, 2007 Wei-Meng Lee C# 2008. Warsztat programisty. Wyd. Helion 2010 4

1 Przegląd i charakterystyka narzędzi RAD do tworzenia oprogramowania użytkowego. 2 Ogólna charakterystyka środowiska Microsoft Visual Studio.NET i języka C# 3 Różnice pomiędzy językiem C++ a C# 4 Struktura programu w języku C#. Program jako obiekt klasy Application 5 Tworzenie programów konsolowych z wykorzystaniem środowiska MS Visual Studio 2010 6 Tworzenie aplikacji windows owych z wykorzystaniem komponentów biblioteki Windows Forms 7 Platforma ADO.NET programowanie aplikacji "bazodanowych" 5

Formy dydaktyczne: -Wykład - termin: soboty B godz. 8:00 10:25, sala 7 -Laboratorium niedziele B (5 X, 9 XI, 7 XII, 11 I) - godz.10:30 12:55-13:00 15.25 Zaliczenie kursu na stopień. Ostateczna ocena będzie średnią arytmetyczną oceny z egzaminu pisemnego w terminie sesji i oceny z laboratorium pod warunkiem, że obydwie te oceny będą pozytywne. 6

Wykład 1 Narzędzia RAD do budowy aplikacji Elementy składowe aplikacji Charakterystyka języka C# Język C# i środowisko IDE 7

Spośród znajdujących się aktualnie na rynku narzędzi wspomagających tworzenie programów użytkowych godne uwagi są systemy oprogramowania: - Borland Delphi, - Borland C++ Builder, - Sybase Power++, - Microsoft Visual C++, - Microsoft Visual C# (wersja 2010) Mówimy o nich, że są to środowiska programistyczne (IDE). Wszystkie te systemy działają w 32/64 bitowym środowisku Windows 95/98/2000/XP/7/Vista i wykorzystują paradygmat obiektowy oraz mechanizmy GUI (Graphic User Interface). Narzędzia tej klasy określa się wspólnym mianem RAD (Rapid Application Developement błyskawiczne tworzenie aplikacji). 8

Elementy składowe aplikacji Podstawowe elementy, z których buduje się aplikacje to: - formularze, - obiekty (komponenty), - zdarzenia. 9

W systemach programowania C++ Builder, Delphi, Power++, C# każdy formularz jest klasą czyli inaczej typem zdefiniowanym przez programistę. Konsekwencje: 1. Formularz jest typem danych, a nie obiektem danych. Jeden z formularzy składających się na aplikację jest formularzem głównym. Jest on tworzony automatycznie w momencie uruchomienia programu i służy jako okienko inicjacyjne. 2. Można utworzyć wiele obiektów tego samego typu formularza. 3. Każda klasa formularza ma związane ze sobą własności. Dotyczą postaci formularza widocznego na ekranie (kolor, wielkość itp.); mają wpływ na zachowanie np. określają, czy wielkość formularza może być zmieniana. 10

Wartości początkowe własności formularza określamy w czasie tworzenia projektu formularza. Zestaw wartości początkowych jest używany zawsze wtedy, gdy program tworzy nowy obiekt klasy formularz. W czasie wykonywania programu wartości niektórych własności można zmieniać. 11

4. Każda klasa formularza ma zbiór związanych z nią metod. Metoda jest funkcją, dzięki której można wykonać akcję z użyciem formularza. Przykładowo, formularz ma metody sprawdzania zmian własności formularza. 5. We wszystkich tych systemach istnieje możliwość dodania własnej metody do klasy formularza. Jest to przydatne wtedy, gdy chcemy zdefiniować procedurę, która może być użyta przez inną funkcję wewnątrz klasy lub gdy chcemy zapewnić kontrolowany dostęp do klasy z obiektów znajdujących się poza klasą. W każdym z tych systemów programowania można tworzyć również aplikacje działające w tzw. trybie konsolowym (właściwym dla systemu DOS, nie angażując mechanizmów interface graficznego. 12

Język C# i środowisko IDE Literatura: Liberty J., Programowanie C#. Wyd.Helion, Gliwice, 2006 Platforma.NET zestaw języków programowania: C++, C#, Visual Basic, Visual J#, Jscript.NET i zestaw narzędzi programistycznych Visual Studio.NET, biblioteka klas i środowisko uruchomieniowe CLR (Common Language Routine) do wykonywania programów przeznaczonych na tą platformę - dwie generacje serwerów.net Enterprise - nowe urządzenia przystosowane do platformy.net (urządzenia mobilne, konsole do gier itp.). Wykonywanie programów na platformie.net możliwe jest po zainstalowaniu w systemie mechanizmu.net Framework. Jego najważniejszym elementem jest środowisko uruchomieniowe CLR, które składa się z tzw. maszyny wirtualnej (podobnej do VM Javy). CLR tworzy obiekty, przydziela im pamięć, sprawdza bezpieczeństwo, wykonuje polecenia i odzyskuje pamięć. Jego częścią jest wspólny dla języków programowania system typów. 13

Kompilator programów na platformę NET nie tworzy plików wykonywalnych przekłada źródła na ciągi instrukcji standardowego języka pośredniego MSIL (Microsoft Intermediate Language). Dopiero w środowisku CLR następuje ich przekształcenie na kod maszynowy i wykonanie. Kompilacja kodu źródłowego na kod pośredni następuje w czasie budowy projektu. Kod pośredni zostaje zapisany na dysku w pliku.exe (nie należy go mylić z plikiem wykonywalnym w innych systemach programowania). W momencie uruchomienia programu następuje ponowna kompilacja programu tzw. "kompilacja w locie" (JIT - Just In Time). W wyniku kompilacji JIT powstaje kod maszynowy, który wykonuje procesor maszyny. 14

15

Charakterystyka języka C# - prosty bo zawiera tylko około 80 słów kluczowych i kilkanaście wbudowanych typów, - zestaw operatorów i instrukcji podobny do C++, reguły składni, leksykalne itp. również zbliżone do C++, - programy w C# budowane są z obiektów klas z bogatej biblioteki oraz z obiektów klas własnych programisty, - wszystkie elementy klasy znajdują się w jej deklaracji, niepotrzebne są pliki nagłówkowe ani pliki definicji interfejsu, - możliwe jest automatyczne tworzenie dokumentacji projektu z wykorzystaniem XML 16

/* Projekt 1 - przeliczanie lat swietlnych na miliony kilometrow */ using System; class LataSwietlne { } public static void Main() { } double lata, km; double prędkość_światła = 0.3; // w mln km na sekunde string str; Console.Write("Podaj odleglosc w latach swietlnych: "); str = Console.ReadLine(); lata = Double.Parse(str); km = prędkość_światła * lata * 365.0 * 24.0 * 3600.0; Console.WriteLine("Odległość w mln kilometrow = " + km); Console.WriteLine("Naciśnij klawisz ENTER..."); Console.Read(); 17

18

Środowisko IDE 19

20

Aplikacja konsolowa - szablon 21

Wybór aplikacji okienkowej 22

23

24

25

26

27

28

29

30

31

32

33

34

35