INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE



Podobne dokumenty
Programowanie komputerów

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

Technologie informacyjne - wykład 12 -

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

Wstęp do Informatyki. Program, proces tworzenia programu Środowisko programistyczne Języki programowania

Języki programowania zasady ich tworzenia

Informatyczna Wieża Babel, czyli o różnych językach programowania. Informatyczna Wieża Babel, czyli o różnych językach programowania

Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

Podstawy programowania wykład

Podstawy programowania. Wprowadzenie

Języki i metodyka programowania

PROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.

Komputer nie myśli. On tylko wykonuje nasze polecenia. Nauczmy się więc wydawać mu rozkazy

Programowanie w języku C++ Grażyna Koba

Java EE produkcja oprogramowania

Programowanie I. Wprowadzenie. Proces programowania

Wykład Ćwiczenia Laboratorium Projekt Seminarium

Programowanie w języku Python. Grażyna Koba

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński

Metody Kompilacji Wykład 1 Wstęp

Wstęp do Informatyki dla bioinformatyków

Ryszard Myhan. Wykład 1: Języki programowania

TEST KOŃCOWY DLA KLASY III GIMNAZJUM- POGRAMOWANIE. Szkoła Podstawowa Nr 5. im. Księcia Mazowieckiego Siemowita IV w Gostyninie.

Zapisywanie algorytmów w języku programowania

Nazwa wariantu modułu (opcjonalnie): Laboratorium programowania w języku C++

Algorytmy od problemu do wyniku

Programowanie. Pascal - język programowania wysokiego poziomu. Klasa 2 Lekcja 9 PASCAL

Algorytm. a programowanie -

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

Podstawy programowania. Wykład 1 Wstęp. Krzysztof Banaś Podstawy programowania 1

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

Podstawy i języki programowania

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

Paradygmaty programowania

Translacja wprowadzenie

29. Poprawność składniowa i strukturalna dokumentu XML

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 1. Karol Tarnowski A-1 p.

Definicje. Algorytm to:

Generated by Foxit PDF Creator Foxit Software For evaluation only. System Szablonów

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

Informatyka. Michał Rad

O (o)programowaniu. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski

INFORMATYKA TECHNICZNA Badanie możliwości wykorzystania języka AutoLISP i środowiska VisualLISP w systemie CAx

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

Środowiska programistyczne dla szkoły podstawowej Jak zachęcić uczniów do startu w konkursach informatycznych

KONSTRUKCJA KOMPILATORÓW

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

Programowanie od pierwszoklasisty do maturzysty. Grażyna Koba

Praktyka Programowania

2.8. Algorytmy, schematy, programy

Wprowadzenie do programowania

Tworzenie oprogramowania

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

Od programowania wizualnego do tekstowego

3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki.

Wprowadzenie: języki, symbole, alfabety, łańcuchy Języki formalne i automaty. Literatura

Wprowadzenie. Organizacja pracy i środowisko programistyczne. Mirosław Ochodek

Środowiska i platformy programistyczne

METODY REPREZENTACJI INFORMACJI

Architektura komputerów II - opis przedmiotu

PyPy's Approach to Virtual Machine Construction

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

Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego


biegle i poprawnie posługuje się terminologią informatyczną,

Technologie cyfrowe. Artur Kalinowski. Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15

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

Języki i paradygmaty programowania. I. Wprowadzenie

ECDL Podstawy programowania Sylabus - wersja 1.0

Algorytmy, reprezentacja algorytmów.

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

Programowanie Niskopoziomowe

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU

Podstawy programowania

KARTA KURSU. Wstęp do programowania

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

Matematyczne Podstawy Informatyki

Modelowanie i Programowanie Obiektowe

Kurs MATURA Z INFORMATYKI

Techniki multimedialne

Tworzenie języków specyfikacji dla zagadnień numerycznych

O ALGORYTMACH I MASZYNACH TURINGA

Podstawy Informatyki Języki programowania c.d.

Komputer i urządzenia z nim współpracujące.

Podstawy Programowania Algorytmy i programowanie

STUDIA STACJONARNE I STOPNIA Przedmioty kierunkowe

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).

Programowanie obiektowe zastosowanie języka Java SE

INFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227

Algorytm. Krótka historia algorytmów

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Informacja w perspektywie obliczeniowej. Informacje, liczby i obliczenia

Programowanie. Projektowanie funkcje programu tworzenie algorytmu i struktur danych. Programowanie implementacja algorytmu kompilacja programu

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

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017

Programowanie obiektowo zorientowane. Mirosław Głowacki Wykład w języku C++

Transkrypt:

Studia podyplomowe dla nauczycieli INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Przedmiot JĘZYKI PROGRAMOWANIA DEFINICJE I PODSTAWOWE POJĘCIA Autor mgr Sławomir Ciernicki 1/7

Aby rozwiązać dany problem informatyczny należy przejść przez wiele kroków działań, które określamy terminem algorytmizacja problemu. W uproszczony sposób możemy to przedstawić za pomocą diagramu. Algorytmizacja problemu Problem Określenie zadania Wybór metody rozwiązania Podział na czynności elementarne Specyfikacja rozwiązania Kodowanie Końcowym efektem jest program informatyczny napisany w odpowiednim języku programowania. Program składa się z wielu plików, z których najistotniejszy jest kod źródłowy, który można modyfikować i rozszerzać o kolejne dodatki powstające w miarę ewoluowania programu i dostosowania go do konkretnych potrzeb. Programiści, czyli osoby piszące programy, posługują się w swojej pracy wybranym językiem programowania, który jest najodpowiedniejszy dla danego zagadnienia i platformy sprzętowej. 2/7

Zgodnie z definicją język programowania to zbiór zasad określających, kiedy ciąg symboli tworzy program komputerowy oraz jakie obliczenia opisuje 1 W programie komputerowym możemy wyróżnić dwie składowe: PROGRAM = ALGORYTM + DANE Definicja języka ALFABET litery, cyfry, znaki specjalne. SKŁADNIA zbiór reguł definiujących sposób konstruowania łańcucha symboli. SEMANTYKA określenie jak te łańcuchy symboli należy rozumieć (wykonywać). Wyżej przedstawione elementy języka zostaną opisane w dalszej części kursu. Podobnie jak języki naturalne, język programowania składa się ze zbiorów reguł syntaktycznych oraz semantyka, które opisują, jak należy budować poprawne wyrażenia oraz jak komputer ma je rozumieć. Języki programowania posiadają pisemną specyfikację swojej składni oraz semantyki. Języki programowania w precyzyjny sposób pozwalają zapisać i przetworzyć algorytm na jednoznaczne dla komputera polecenia. Najlepiej gdyby to były polecenia wyboru typu prawda lub fałsz. Języki programowania mogą być zdefiniowane ze względu na swoje cechy takie jak: funkcja, przeznaczenie, konstrukcja i moc. Istnieje grupa języków, w których nie da się realizować obliczeń np. języki znaczników, jak HTML czy XML i dlatego nie powinno się uznawać je za języki programowania. 1 Mordechai Ben-Ari: Understanding Programming Languages. Chichester: John Wiley & Sons, 1996. 3/7

W procesie ewolucji wynalezione zostały nowe techniki tworzenia oprogramowania poprawiające uniwersalność kodów. Opracowano algorytmy pozwalające automatycznie realizować zadania, którymi dotąd musiał zajmować się programista. Skraca to czas tworzenia aplikacji i zmniejsza ilość okazji do popełnienia błędu, lecz w niektórych sytuacjach odbija się to negatywnie na wydajności, czego przykładem jest język Java. Na język programowania składa się kilka elementów: Składnia Aby dany ciąg znaków mógł być rozpoznany jako program napisany w danym języku, musi spełniać reguły składni. Składnia opisuje: Rodzaje dostępnych symboli. Zasady, według których symbole mogą być łączone w większe struktury. Semantyka Semantyka języka programowania definiuje precyzyjnie znaczenie poszczególnych symboli oraz ich funkcję w programie. Semantykę najczęściej definiuje się słownie, ponieważ większość z jej zagadnień jest trudna lub wręcz niemożliwa do ujęcia w jakikolwiek formalizm. Część błędów semantycznych można wychwycić już w momencie wstępnego przetwarzania kodu programu, np. próbę odwołania się do nieistniejącej funkcji, lecz inne mogą ujawnić się dopiero w trakcie wykonywania. Typy danych Każdy język operuje jakimś zestawem danych, dlatego niezbędne jest podzielenie danych na odpowiednie typy, zdefiniowane ich właściwości oraz operacji, jakie można na nich realizować. Większość języków posiada typy danych do reprezentowania: Liczb całkowitych w różnych zakresach. Liczb zmiennoprzecinkowych (reprezentacje liczb rzeczywistych o różnym stopniu dokładności) Ciągów tekstowych. 4/7

Od strony sprzętowej wszystkie te informacje wyrażane są za pomocą sekwencji zer i jedynek. Język programowania nakłada jedynie odpowiednie ograniczenia i zasady ich przetwarzania. Zjawisko konwersji wartości jednego typu na inną nazywa się rzutowaniem. Biblioteki standardowe Dla większości języków zdefiniowana jest także biblioteka standardowa zawierająca podstawowy zestaw funkcji pozwalających realizować wszystkie najważniejsze operacje, np.: Obsługę wejścia-wyjścia. Obsługę plików. Obsługę wielowątkowości. Zarządzanie pamięcią. Podstawowe typy danych oraz funkcje do zarządzania nimi. Operacje na ciągach tekstowych. Wykonywanie kodu Aby program napisany w danym języku mógł być wykonany, niezbędne jest odpowiednie przetworzenie jego kodu źródłowego: Kompilacja kod źródłowy jest tłumaczony do postaci języka maszynowego, czyli sekwencji elementarnych operacji gotowych do bezpośredniego przetworzenia przez procesor komputera. Jeżeli dany język programowania podlega kompilacji, określany jest mianem kompilowanego języka programowania. Interpretacja kod źródłowy jest na bieżąco tłumaczony i wykonywany przez dodatkowy program zwany interpreterem. Jeżeli język podlega interpretacji, nazywany jest interpretowanym językiem programowania. Kompilacja do kodu maszynowego zapewnia najwyższą wydajność programom, lecz wygenerowany kod jest ściśle powiązany z platformą sprzętową. Ponadto kompilowane 5/7

języki są bardziej zbliżone do sposobu funkcjonowania sprzętu, przez co programowanie w nich jest trudniejsze. Języki interpretowane zapewniają większą przenośność programów, które często są niezależne od platformy i systemu operacyjnego. Aby programy wyrażone w języku interpretowanym można było uruchomić na innej platformie, wystarczy napisać dla niej interpreter. Jednak taki sposób wykonywania odbija się negatywnie na wydajności. Alternatywnym rozwiązaniem jest kompilacja programów do postaci pośredniej, tzw. kodu bajtowego. Jest ona wykonywana przez wirtualne maszyny tłumaczące elementarne rozkazy kodu bajtowego na rozkazy procesora. Klasyfikacja języków programowania Języki programowania mogą być podzielone ze względu na: Paradygmat programowania Generację języka programowania Sposób kontroli typów. Sposób wykonywania (kompilacja, interpretacja). Poziom (języki niskopoziomowe są bardziej zbliżone pod względem budowy do działania sprzętu). Przeznaczenie. Najpopularniejsze języki programowania Lista dwudziestu najpopularniejszych języków programowania według TIOBE (stan na czerwiec 2011 r.) Java C C++ C# PHP 6/7

Visual Basic Objective-C Python Perl Lua JavaScript Ruby Delphi Lisp Pascal Asembler Transact-SQL RPG (OS/400) Ada Scheme Na ćwiczeniach będziemy korzystali z języków: JavaScript, PHP, Pascal oraz Delphi. 7/7