Programowanie obiektowe

Podobne dokumenty
Programowanie obiektowe

Wprowadzenie do programowania i programowanie obiektowe

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk. Wydział Inżynierii Metali i Informatyki Przemysłowej

Podstawy informatyki

Wprowadzenie do programowania i programowanie obiektowe

Systemy operacyjne. Informatyka Stosowana - Zajęcia 1. Wydział Inżynierii Metali i Informatyki Przemysłowej

Materiał Typy zmiennych Instrukcje warunkowe Pętle Tablice statyczne Wskaźniki Tablice dynamiczne Referencje Funkcje

Zarządzanie kodem projektu. Tworzenie i utrzymywanie czystego kodu Paweł Stroiński,

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk. Wydział Inżynierii Metali i Informatyki Przemysłowej

Programowanie Obiektowew języku C++ Zadania L2

Programowanie proceduralne w języku C++ Podstawy

Programowanie Obiektowew języku C++ Zadania L4

Programowanie Obiektowew języku C++ Zadania L4

I - Microsoft Visual Studio C++

Programowanie Obiektowew języku C++ Zadania L9

Programowanie Obiektowo Zorientowane w języku c++ Przestrzenie nazw

Podstawy Programowania

Podstawy programowania w języku C++ Zadania

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 1. Wprowadzenie, środowisko programistyczne, pierwsze programy

Programowanie komputerowe. Zajęcia 1

Wprowadzenie do programowania i programowanie obiektowe

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk. Wydział Inżynierii Metali i Informatyki Przemysłowej

Siecikomputerowe-laboratorium. Wstęp-zasady zaliczenia przedmiotu

AKADEMIA GÓRNICZO - HUTNICZA IM. STANISŁAWA STASZICA w KRAKOWIE

Paostwowa Wyższa Szkoła Zawodowa w Płocku Dariusz Wardowski

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk

Aby uzyskać zaliczenie w pierwszym terminie (do 30 stycznia 2018) rozliczyć trzeba co najmniej 8 projektów, po 4 z każdej z części: C++ oraz Python.

wykład IV uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C, a C++. wykład IV dr Jarosław Mederski Spis Język C++ - wstęp

Programowanie Obiektowew języku C++ Zadania L8

Podstawy programowania w języku C++ Zadania - dziedziczenie i polimorfizm

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

Laboratorium 1 - Programowanie proceduralne i obiektowe

AKADEMIA GÓRNICZO - HUTNICZA IM. STANISŁAWA STASZICA w KRAKOWIE

wykład V uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C++ klasy i obiekty wykład V dr Jarosław Mederski Spis Język C++ - klasy

Materiał. Typy zmiennych Instrukcje warunkowe Pętle Tablice statyczne Funkcje Wskaźniki Referencje Tablice dynamiczne Typ string Przeładowania funkcji

Programowanie Obiektowew języku C++ Zadania L2

dr inż. Jarosław Forenc

KLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany

Rok akademicki: 2016/2017 Kod: JFT s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Język C++ Różnice między C a C++

Rodzaj zajęć: ćwiczenia audytoryjne/laboratoryjne, Liczba godzin: 18,

Programowanie proceduralne w języku C++ Pętle, tablice

Zajęcia nr 5 Algorytmy i wskaźniki. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Sieci komputerowe - laboratorium. Wstęp - zasady zaliczenia przedmiotu

Programowanie - wykład 4

Laboratorium 1. Programowanie II - Kierunek Informatyka. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej

Klasy i obiekty cz II

Semestr letni Brak Tak

Programowanie obiektowe 1 - opis przedmiotu

Prof. Danuta Makowiec Instytut Fizyki Teoretycznej i Astrofizyki pok. 353, tel danuta.makowiec at gmail.com

Języki Programowania. Prowadząca: dr inż. Hanna Zbroszczyk. tel: Konsultacje: Piątek: 14:15-15:30

Programowanie, algorytmy i struktury danych

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

Wstęp do informatyki- wykład 12 Funkcje (przekazywanie parametrów przez wartość i zmienną)

Zajęcia trwają 15 tygodni (2 godziny wykładu, 2 godziny laboratorium tygodniowo) Zaliczenie zajęć jest uwarunkowane zaliczeniem zajęć laboratoryjnych

Z-ETI-0611 Język Programowania C++ Programming Language C++

Część 4 życie programu

Rozwiązanie. #include <cstdlib> #include <iostream> using namespace std;

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

Sieci komputerowe - laboratorium. Wstęp - zasady zaliczenia przedmiotu

Opisy efektów kształcenia dla modułu

Język C++ wykład VIII

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

PRZEWODNIK PO PRZEDMIOCIE

Podstawy Programowania

Informacje wstępne #include <nazwa> - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char

Zasady wystawiania oceny z przedmiotu Zarządzanie jakością studia stacjonarne

Systemy Czasu Rzeczywistego (SCR)

Programowanie i struktury danych

Rodzaj zajęć: ćwiczenia audytoryjne/laboratoryjne, Liczba godzin: 18,

Spis treści PROGRAMOWANIE OBIEKTOWE W JĘZYKU C++: FUNKCJE ZAPRZYJAŹNIONE Z KLASĄ, PRZEŁADOWANIE OPERATORÓW. Informatyka 2

Informatyka 2. Informatyka 2. Wykład nr 1 ( ) Dane podstawowe. - Wydział Elektryczny. Politechnika Białostocka. Program wykładu (1/2)

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

Programowanie w C++ Wykład 1. Katarzyna Grzelak. 26 luty K.Grzelak (Wykład 1) Programowanie w C++ 1 / 28

S Y L A B U S P R Z E D M I O T U

Podstawy programowania skrót z wykładów:

Programowanie obiektowe i C++ dla matematyków

Języki programowania II - opis przedmiotu

Programowanie obiektowe Wykład 1. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20

Wydział Informatyki, Elektroniki i Telekomunikacji

Zasady zaliczenia przedmiotu Synteza i technologia środków leczniczych rok 2018/19

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

Metody numeryczne. dr hab inż. Tomasz Chwiej. Syllabus:

Programowanie I C / C++ laboratorium 01 Organizacja zajęć

INFORMATYKA PLAN STUDIÓW NIESTACJONARNYCH. Podstawy programowania Systemy operacyjne

Programowanie proceduralne w języku C++ Pojęcia podstawowe - kod źródłowy

Regulamin Wydziału Lekarskiego 2016/2017

Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.

Przedmioty/moduły. informatycznych. suma 4,0 3,0 4,0 2,0 0,0 0,0 0,0 0,0 0,0 0,0

Podstawy algorytmiki i programowania - wykład 6 Sortowanie- algorytmy

Pracownia Elektroniczna mieści się w sali nr F-1-17 (I piętro). Pracownia jest pod opieką Zakła du Fizyki Gorącej Materii.

Regulamin zajęć audytoryjnych Sieci elektryczne

Podstawy algorytmiki i programowania - wykład 5 C-struktury cd.

KLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany

E-1IZ3-06-s6. Inżynieria Programowania. Informatyka. I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Informatyka I stopień ogólnoakademicki niestacjonarne Teleinformatyka Zakład Informatyki dr inż. Adam Krechowicz mgr inż.

2. NAZWA JEDNOSTKI (jednostek) realizującej przedmiot: Katedra i Zakład Informatyki i Statystyki

Wstęp do programowania

Wstęp do Informatyki

Transkrypt:

Programowanie obiektowe IS/IO - Zajęcia 1 zasady zaliczenia przedmiotu Wydział Inżynierii Metali i Informatyki Przemysłowej Akademia Górniczo Hutnicza im. Stanisława Staszica Kraków

Prowadzący: mgr inż. Grzegorz Smyk KATEDRA INFORMATYKI STOSOWANEJ I MODELOWANIA PRACOWNIA MODELOWANIA SYMULACJI PROCESÓW www.isim.agh.edu.pl B5 p. 605 grzegorz.smyk@agh.edu.pl www.galaxy.agh.edu.pl/~gsmyk/ http://skos.agh.edu.pl

1 godzina zegarowa dla wszystkich wtorek 7:00 8:00

Zajęcia PROGRAMOWANIE OBIEKTOWE Typ: LABORATORIA Kierunki: Informatyka Stosowana Inżynieria Obliczeniowa

Egzamin z przedmiotu Prowadzący: Prof. dr hab. inż. Mirosław Głowacki WYDZIAŁ INŻYNIERII METALI I INFORMATYKI PRZEMYSŁOWEJ KATEDRA INFORMATYKI STOSOWANEJ I MODELOWANIA PRACOWNIA INFORMATYKI HTTP://HOME.AGH.EDU.PL/~IP/INDEX.PHP?LANG=PL&GO=3&ID=2 Zasady przystąpienia: - pozytywne zaliczenie ćwiczeń laboratoryjnych

Polecane materiały Materiały online: http://www.cplusplus.com http://cpp0x.pl/ Literatura Symfonia C++ Tom II, III - Jerzy Grębosz Pasja C++ Jerzy Grębosz Thinking in C++ Bruce Eckel

Zasady zaliczenia laboratoria Obecność na zajęciach obecność na zajęciach jest obowiązkowa, możliwa jest jedna nieobecności nieusprawiedliwione, nieobecność nieusprawiedliwiona wymaga pisemnego zwolnienia lekarskiego na następnych zajęciach, STUDENT, MUSI MIEĆ CO NAJMNIEJ 80% OBECNOŚCI USPRAWIEDLIWIONYCH W SKALI SEMESTRU

Zasady zaliczenia laboratoria Praca na laboratoriach studentów obejmuje harmonogram przedstawiony przez prowadzącego, student jest oceniany indywidualnie na każdych zajęciach, student musi przygotować pisemny konspekt na każde zajęcia odnośnie omawianego zagadnienia, ocena końcowa jest procentowym wynikiem punktów uzyskanych przez studenta z wagami x1 zajęcia, x2 kolokwia, uzyskane oceny są przekazywane prowadzącemu przedmiot 0 BRAK PRZYGOTOWANIA DO ZAJĘĆ +1 PRZYGOTOWANIE TYLKO KONSPEKTU +2 PRACA NA ZAJĘCIACH NA PODSTAWIE KONSPEKTU

Kolokwia Zasady zaliczenia laboratoria w czasie semestru odbędą się trzy kolokwia w czasie wykładu, niezaliczone kolokwia nie będą poprawiane w trakcie semestru, kolokwia liczone są podwójnie do oceny końcowej z laboratoriów, możliwe jest dodatkowe kolokwium w trakcie ćwiczeń, ocena końcowa jest pozytywna, jeśli średnia jest równa lub większa od 3.0. Student, który uzyskał ocenę średnią niższą niż 3.0 może w czasie sesji dwukrotnie przystąpić do kolokwium poprawkowego (kolokwium poprawkowe obejmuje materiał z całego semestru), pod warunkiem, ze uczęszczał na zajęcia.

Zasady zaliczenia laboratoria Laboratoria Zakaz spożywania jedzenia oraz napojów, Kurtki, płaszcze oraz parasole zostawiamy w szatni na parterze budynku B5 (jeśli szatnia jest otwarta), Dopuszczalne spóźnienie wynosi maksymalnie 15 min, Zakaz modyfikowania istniejącej sieci Ethernet, Zakaz instalowania oprogramowania niezwiązanego z tematyką zajeć, Możliwa jest praca na własnym sprzęcie komputerowym uwzględniając w/w ograniczenie (można korzystać tylko z wolnych gniazdek zasilających), W trakcie semestru korzystamy z tego samego stanowiska komputerowego (wyjątkiem są grupy powyżej 15 osób), Wszelkie usterki i nieprawidłowości w funkcjonowaniu sprzętu i oprogramowania natychmiast zgłaszamy prowadzącemu.

Creative - informatyczne koło naukowe Jak do Działalność nas dotrzeć: koła: WYSTĄPIENIA NA KONFERENCJI STUDENCKICH KÓŁ NAUKOWYCH - SEKCJA INFORMATYKI Zacieśnianie więzów współpracy z pracownikami - SEKCJA METALOZNAWSTWA naukowymi I INŻYNIERII katedry ISIM POWIERZCHNI - SEKCJA PRZERÓBKI PLASTYCZNEJ możesz wysłać pkustra@agh.edu.pl do nas. przyjść na zebranie koła Stworzenie grup projektowych studentów różnych (informacje roczników, odnośnie terminów w celu rozwiązywania spotkań znajdują złożonych się w gablotce problemów naukowych. Koła: B-4 1 piętro obok sali 101 lub na stronie :) ) Podnoszenie specjalistycznych kwalifikacji zawodowych poprzez nawiązanie kontaktów z zapytać się o nas w laboratoriach komputerowych przedsiębiorstwami różnych sektorów. (B-4 s.101 i B-5 s.601)

Zajęcia I zaczynamy! Nazwa projektu: IS_GRXX_ImięNazwisko File -> New -> Project Visual C++ -> Empty Procject Dodajemy plik: main.cpp

Zajęcia I Hello World! Nagłówek: Standard Input/Output Library Typ zwracany przez funkcję #include <iostream> using namespace std; Przestrzeń nazw Zakres funkcji int main() { Funkcja main cout<< Hello World! <<endl; } Console-output stream Znak nowej linii oraz czyszczenie strumienia

Czysty kod! Robert C. Martin

Dobre nazwy w kodzie przedstawiają intencje bez mylących i fałszywych wskazówek bez zbyt subtelnych różnic są spójne i dobrze się sortują w IDE można je wymówić! łatwo je wyszukać bez kodowania typów bez przedrostków składników bez kodowania interfejsów bez jedno-literówek nazwy klas mają rzeczowniki nazwy metod mają czasowniki zamiast przeciążonych konstruktorów stosujemy metody fabryk dowcipne nazwy mogą nie być zrozumiane spójny leksykon bez przesady ze spójnością używamy terminologii informatycznej w drugiej kolejności używamy terminologii klienta dodajemy znaczący kontekst bez nadmiarowego kontekstu zmiana nazwy na czytelniejszą to nic złego

Nazwy zmiennych Przedstawiają intencje int c; int studentscount; List<int> list1 = new List<int>(); List<int> temperaturevalues = new List<int>();

Nazwy zmiennych Brak mylących i fałszywych wskazówek int hp; // hiperprzelicznik Student[] studentlist; List<Student> studentlist; List<Student> students; Student[] students;

Nazwy zmiennych Brak zbyt subtelnych różnic w nazewnictwie Student VeryGoodStudentInThisCourseOfPhysics; Student VeryGoodStudentInThatCourseOfPhysics; void copystudents(student[] a1, Student[] a2) void copystudents(student[] source, Student[] destination) Student student; Student astudent; Student thestudent;

Nazwy zmiennych Zrozumiałe dla mózgu Umożliwiają dyskusję o kodzie Nowe osoby w zespole szybciej zrozumieją kod class SdntRcrd126 { private DateTime admymdhms; private const string pszqint = "126"; } class Student { private DateTime admissiontimestamp; private const string recordid = "126"; }

Nazwy zmiennych Łatwość wyszukania Wartości stałe zamiast liczb Brak kodowania typów if (s.count > 9) const int MAX_STUDENTS_PER_YEAR = 9; if (students.count > MAX_STUDENTS_PER_YEAR) int securitycodestring; //kiedyś ta zmienna może i była typu string

Nazwy zmiennych Brak jedno-literówek Profesjonalny kod to czytelny i zrozumiały kod Wyjątkiem są liczniki pętli Uri r = new Uri("http://www.agh.edu.pl"); for (int i = 0; i < 4; i++) for (int j = 0; j < 4; j++) for (int k = 0; k < 4; k++)

Nazewnictwo w obrębie klas Nazwy klas mają rzeczowniki Nazwy metod mają czasowniki get przed akcesorami, set przed mutatorami, is przed predykatami class CourseAdvisor counter.submit(); class Advise class Advice if (course.iscompleted()) totalcompletedhours += course.gettotalhours(); counter.settotal(totalcompletedhours);

Terminologia Możemy swobodnie stosować terminy informatyczne takie jak: nazwy algorytmów wzorców bo czytelnicy kodu programiści je znają! Zmiana nazwy na czytelniejszą to nic złego!! (refactoring)

Zajęcia I 1. Napisz program, który umożliwi na wczytanie dwóch zmiennych typu całkowitego z przedziału <10,90>, a następnie wyświetli liczby od mniejszej do większej z krokiem 0.5 przy pomocy pętli: for, while, do while 2. Napisz program, w którym zaalokowana będzie tablica dynamiczna o rozmiarze zadanym przez użytkownika. Przekaż tablicę uzupełnioną losowymi wartościami z przedziału <5, 15> do funkcji. Funkcja oblicza sumę elementów w tablicy i ją zwraca. 3. Napisz strukturę student, w której będą przechowywane informacje: 1. Imię 2. Nazwisko 3. Kierunek 4. Rok studiów Stwórz i uzupełnij tablicę pięcioelementową typu student.

Zajęcia I 1. Napisz program, który umożliwi na wczytanie dwóch zmiennych typu całkowitego z przedziału <10,90>, a następnie wyświetli liczby od mniejszej do większej z krokiem 0.5 przy pomocy pętli: for, while, do while 2. Napisz program, w którym zaalokowana będzie tablica dynamiczna o rozmiarze zadanym przez użytkownika. Przekaż tablicę uzupełnioną losowymi wartościami z przedziału <5, 15> do funkcji. Funkcja oblicza sumę elementów w tablicy i ją zwraca. 3. Napisz strukturę student, w której będą przechowywane informacje: 1. Imię 2. Nazwisko 3. Kierunek 4. Rok studiów Stwórz i uzupełnij tablicę pięcioelementową typu student.