12.07.2015 Views

Wykład 5: Rzut oka na języki i systemy programowania..

Wykład 5: Rzut oka na języki i systemy programowania..

Wykład 5: Rzut oka na języki i systemy programowania..

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Studia Podyplomowe INFORMATYKAPodstawy InformatykiWykład V<strong>Rzut</strong> okiem <strong>na</strong> języki<strong>programowania</strong>1dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Kompilacja vs. interpretacjaKOMPILACJAProces, który przetwarzaprogram zapisany wjęzyku <strong>programowania</strong>,zwany również programemźródłowym lub kodemźródłowym, <strong>na</strong> językmaszynowy <strong>na</strong>zywamykompilacją.Źródło: P. Fulmański, Ś. Sobieski, Wstęp doinformatyki, Podręcznik, WydawnictwoUniwersytetu Łódzkiego, 20052dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Kompilacja vs. interpretacjaInterpretacja W celu uruchomienia programuinterpretowanego, musimyposiada¢ dla niego środowiskouruchomieniowe zwaneinterpreterem. Interpreter jest podobnie jakkompilator programem, któryumożliwia <strong>na</strong>m uruchomienieprogramu. Różnicą jest to, żeinterpreter nie produkujeprogramu wykonywalnego wpostaci pliku wykonywalnego, atłumaczy program „w locie” <strong>na</strong>kod maszynowy i wykonuje go <strong>na</strong>bieżąco.Źródło: P. Fulmański, Ś. Sobieski, Wstęp doinformatyki, Podręcznik, WydawnictwoUniwersytetu Łódzkiego, 20053dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Krótki przegląd języków <strong>programowania</strong>1. Języki kompilowane (samodzielne programy):• Delphi (Pascal),• C, C++.2. Języki częściowo kompilowane (powstaje kod bajtowy (postać pośrednia)wymagający platformy uruchomieniowej):• Java - JVM (Java Virtual Machine),• JRE (Java Runtime Environment),• C# - .NET Framework.Wymienione platformy są bezpłatne.4dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Krótki przegląd języków <strong>programowania</strong>3. Języki interpretowane (wymagany jest interpreter):• JavaScript (interpreterem jest przeglądarka),• Perl (Practical Extraction and Report Language, praktyczny językekstrakcji i raportowania),• PHP (obecnie PHP Hypertext Preprocessor (akronim rekurencyjny),pierwotnie Perso<strong>na</strong>l Home Page) stosowany głównie dody<strong>na</strong>micznego tworzenia stron internetowych,• Python (stworzony w 1990 roku przez Holendra Guido Van• Ruby (stworzony w 1995 roku przez Japończyka Yukihiro Matsumoto),• VBA (Visual Basic for Aplications), interpretatorem jest pakiet MicrosoftOffice, <strong>na</strong>jbardziej przydatny w arkuszu kalkulacyjnym.5dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Krótki przegląd języków <strong>programowania</strong>Podział ze względu <strong>na</strong> tzw. paradygmat <strong>programowania</strong> (wzorzec<strong>programowania</strong>).1. Programowanie strukturalne - to paradygmat <strong>programowania</strong> zalecającyhierarchiczne dzielenie kodu <strong>na</strong> bloki, z jednym punktem wejścia ijednym lub wieloma punktami wyjścia. Chodzi przede wszystkim onieużywanie (lub ograniczenie) instrukcji skoku (goto).,2. Programowanie proceduralne - paradygmat zalecający dzielenie kodu<strong>na</strong> procedury, czyli fragmenty wykonujące ściśle określone operacje.Procedury nie powinny korzystać ze zmiennych globalnych (w miaręmożliwości), lecz pobierać i przekazywać wszystkie dane (czy teżwskaźniki do nich) jako parametry wywołania.6dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Krótki przegląd języków <strong>programowania</strong>Podział ze względu <strong>na</strong> tzw. paradygmat <strong>programowania</strong> (obowiązujący,modny, ceniony wzorzec <strong>programowania</strong>).3. Programowanie obiektowe - programy definiuje się za pomocą obiektów- elementów łączących stan (przechowywany w tzw. polach) izachowanie (opisane przez metody). Obiektowy program komputerowywyrażony jest jako zbiór takich obiektów, komunikujących się pomiędzysobą w celu wykonywania zadań.4. Programowanie deklaratywne - jest to paradygmat <strong>programowania</strong>, wktórym programista zamiast definiowania sposobu rozwiązania, czylisekwencji kroków prowadzących do uzyskania wyniku (zob. algorytm),opisuje samo rozwiązanie. Innymi słowy programowanie w tych językachpolega <strong>na</strong> opisywaniu tego co <strong>na</strong>s interesuje a nie jak to zrobić.Z<strong>na</strong>lezienie odpowiedniego sposobu <strong>na</strong> obliczenie rozwiązania oraz wyko<strong>na</strong>nieobliczeń jest zadaniem środowiska uruchomieniowego lub interpretera danegojęzyka. Do języków deklaratywnych zaliczamy między innymi SQL, Prolog i LISP.7dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Krótki przegląd języków <strong>programowania</strong>Źródło: http://www.fizyka.umk.pl/~duch/books-fsk/adr-fspk04.html8dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Krótki przegląd języków <strong>programowania</strong>Źródło: http://www.fizyka.umk.pl/~duch/books-fsk/adr-fspk04.html9dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Ewolucja języków <strong>programowania</strong>Kolum<strong>na</strong> LOC zawiera numer adresu pod którym z<strong>na</strong>jduje się instrukcja,OP zawiera kod operacji, DATA dane, INST adres instrukcji, która ma byćwyko<strong>na</strong><strong>na</strong> jako <strong>na</strong>stęp<strong>na</strong>.Źródło: P. Fulmański, Ś. Sobieski, Wstęp do informatyki,Podręcznik, Wydawnictwo Uniwersytetu Łódzkiego, 200510dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Ewolucja języków <strong>programowania</strong>W listopadzie 1954 roku została ogłoszo<strong>na</strong> pierwsza specyfkacja języka FORTRAN,<strong>na</strong>zwa jest akronimem słów the IBM Mathematical FORmula TRANslating system.Moż<strong>na</strong> zauważyć, że program ten jest dużo czytelniejszy od poprzedniego.Źródło: P. Fulmański, Ś. Sobieski, Wstęp do informatyki, Podręcznik, Wydawnictwo Uniwersytetu Łódzkiego, 200511dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Ewolucja języków <strong>programowania</strong>W latach 60-tych antidotum <strong>na</strong> brak czytelności stał się język Algol-60. Wprowadzono wnim pętlę for oraz możliwość dzielenia programu <strong>na</strong> podprocedury.Źródło: P. Fulmański, Ś. Sobieski, Wstęp do informatyki, Podręcznik, Wydawnictwo Uniwersytetu Łódzkiego, 200512dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Ewolucja języków <strong>programowania</strong>Pierwsza wersja (16-bitowa)Delphi ukazała się w 1995 rokui przez<strong>na</strong>czo<strong>na</strong> była do pracyw Microsoft Windows 3.1 Byłoto jedno z pierwszych <strong>na</strong>rzędzitypu Rapid ApplicationDevelopment (szybkietworzenie aplikacji).Obecnie króluje (poza niewielkimi wyjątkami) programowanie wizualne, gdzieprogramista modyfikuje do swoich potrzeb gotowe komponenty API i „składa” z nichprogram.Źródło: P. Fulmański, Ś. Sobieski, Wstęp do informatyki, Podręcznik, Wydawnictwo Uniwersytetu Łódzkiego, 200513dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Ewolucja języków <strong>programowania</strong>14dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


I. Języki <strong>programowania</strong>Ewolucja języków <strong>programowania</strong>15dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11


Literatura:W prezentacji wykorzystano fragmenty i zadania z książek iprezentacji:• Piotr Fulmański, Ścibór Sobieski, Wstęp do informatyki,Podręcznik, Wydawnictwo Uniwersytetu Łódzkiego, 2005• http://www.inf.sgsp.edu.pl/• http://deuter.am.put.poz<strong>na</strong>n.pl/zwm/• http:// wikipedia.org16dr Artur Bartoszewski - WYKŁAD: Podstawy informatyki; Studia Podyplomowe INFORMATYKA, Edycja 11

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!