Informatyczna Wieża Babel, czyli o różnych językach programowania
Wstęp
Aplikacje i programy, jakich dziś używamy, ukryte dla nas pod postacią miłej dla oka ikonki, zawierają tysiące linii kodu.
Wszystkie programy, którymi się dziś posługujemy, napisano w jednym z wielu języków programowaniajęzyków programowania.
Obecnie na świecie istnieją tysiące języków programowania i każdego roku powstają nowe.
Języki programowania odróżniają się od języków naturalnych większą dokładnością oraz jednoznacznością.
Komputer nie wie, co programista miał na myśli. Nie ma czasu ani miejsca na niedomówienia.
Wiele języków programowania zostało zaprojektowanych od zera, lecz powszechna jest praktyka rozwijania już istniejących rozwiązań oraz celowego upodobniania jednego języka do drugiego. Pozwala to na szybsze opanowanie nowego języka przez programistów mających już doświadczenie w tworzeniu aplikacji.
1. zasad, jakie obowiązują w językach programowania.
Cele edukacyjne zgodne z etapem kształcenia
dokonuje podziału języków programowania;
wymienia najbardziej popularne języki programowania;
charakteryzuje wybrane języki programowania: HTML, PHP, Java, Python, C++;
omawia tendencje w rozwoju informatyki.
INFORMATYCZNA WIEŻA BABEL, CZYLI O RÓŻNYCH JĘZYKACH PROGRAMOWANIA - audiobook
Rozdziały audiobooka:
Początki programowania
Składnie i instrukcje
Podsumowanie
Przed rozpoczęciem pracy z audiobookiem, możesz skorzystać z przygotowanego scenariusza lekcji, który pokazuje, jak wdrożyć materiały multimedialne w tok lekcji.
Podczas odsłuchiwania audiobooka, zwróć uwagę na najważniejsze osoby, które miały wpływ na programowanie.
Postaraj się zapamiętać, z czego składa się język programowaniajęzyk programowania.
Znamy i kojarzymy Adę LovelaceAdę Lovelace - pierwsza programistkę. Czy zastanawiałeś/aś się ile kobiet miało wpływ na programowanie? Czy znasz kobiety, które na co dzień zajmują się programowaniem?
Pomyśl, ile znasz języków programowania. Czy kojarzysz do czego służą? Poszukaj w Internecie informacji na temat podziału i klasyfikacji języków programowania.
Podsumowanie
„Nauka pisania programów to gimnastyka dla mózgu. Pozwala wypracować umiejętność efektywnego myślenia o rzeczach niezwiązanych z informatyką.” – słowa te wypowiedział Bill Gates.
W dzisiejszych czasach komputery zdominowały prawie każdą dziedzinę życia, a programowanie staje się jedną z kluczowych umiejętności.
Niech ta lekcja będzie dla Was początkiem Waszej przygody z programowaniem.
Kilka ważnych informacji na koniec:
Język programowaniaJęzyk programowania = zasady składni + instrukcje
Język programowania jest językiem formalnym, czyli podlega jednoznacznym regułom.
Postać instrukcji, w tym słów kluczowych, musi być bardzo precyzyjna - zgodna z zasadami składni. W programie nie może zabraknąć ani jednego znaku.
Program jest wykonywany zgodnie z zapisem: kolejność zapisywania instrukcji powinna odpowiadać kolejności operacji realizujących dany algorytm.
Języki programowania można podzielić ze względu na:
Poziom języka programowania:
języki niskiego poziomu (poziom maszynowy),. np Assemblery;
języki wysokiego poziomu, języki uniwersalne służące do rozwiązywania szerokiego zakresu problemów (Pascal, C, Logo, Basic, itd.);
języki zorientowane problemowo, nastawione na wąski zakres problemów (HTML, PHP, VBA, dBase).
Paradygmat programowania - wzorzec programowania:
liniowe - BASIC, Fortran;
strukturalne - Pascal, C;
zdarzeniowe - Visual Basic;
obiektowe - C++, Object Pascal, Java.
Sposób wykonania:
kompilacja - kod źródłowy tłumaczony jest do języka maszynowego, tak aby był gotowy do bezpośredniego przetworzenia przez procesor komputera;
interpretacja - kod źródłowy na bieżąco jest tłumaczony i wykonywany przez program zwany interpreterem.
Języki niestrukturalne, strukturalne, obiektowe:
języki niestrukturalne - FORTH, BASIC;
języki strukturalne (program budowany jest z mniejszych elementów: procedur, funkcji itp.), np. Pascal, C, FORTRAN;
języki obiektowe (program składa się z obiektów, które posiadają właściwości i potrafią wykonywać operacje), np. C++, Java - języki zorientowane obiektowo.
Generację języków programowania:
języki pierwszej generacji - języki maszynowe, czyli języki procesorów; instrukcje zapisane są w postaci liczb binarnych; przykładowy kod programu:
11101010000000000000111111111111111110001001110 1100000000010100000001
języki drugiej generacji - języki symboliczne, asemblery. Języki niskiego poziomu, pod względem składni tożsame z maszynowymi; przykładowy kod programu:
jmp ffff:0
movax, bx
add ax, 1języki trzeciej generacji - języki wysokiego poziomu, proceduralne (imperatywne); w tych językach jedna instrukcja jest tłumaczona na kilka instrukcji procesora; do tej grupy należą między innymi: FORTH, BASIC - języki niestrukturalne, Pascal, C, FORTRAN - języki strukturalne, C++, Java - języki zorientowane obiektowo; przykładowy kod programu:
If(!x)
{
printf("Nie wolno dzielić przez zero\n");
return 1;
}języki czwartej generacji - języki bardzo wysokiego poziomu, nieproceduralne (deklaratywne); korzystając z tych języków programista skupia się na problemie, a nie na sposobie jego rozwiązania; przykład - język SQL; przykładowy kod programu:
SELECT Towar FROM "Faktura" WHERE Cena>=500
języki piątej generacji - języki sztucznej inteligencji, najbardziej zbliżone do języka naturalnego; przykład - język PROLOG.
Języki wewnętrzne i zewnętrzne
języki wewnętrzne (binarne lub asemblery),
języki zewnętrzne (FORTRAN, COBOL, PASCAL, C, BASIC, CLIPPER …).
Przeznaczenie efektów pracy
tworzenie aplikacji internetowych - Java, JavaScript, PHP, Ruby, Python, Asp.Net;
dostęp do baz danych – SQL;
obliczenia matematyczne – Fortran;
dydaktyczne – LOGO;
inne (uniwersalne) - Pascal, C/C++;
programowanie wizualne - Visual C, Visual Basic, Delphi;
tworzenie aplikacji komputerowych - C, C++, C#, Java, Python, Visual Basic;
przetwarzanie tekstu - PERL, REXX, Python;
programowanie sztucznej inteligencji - LISP, Prolog;
programowanie grafiki – OpenGL;
tworzenie aplikacji na urządzenia mobilne: C/C++/C#, Objective‑C, Java, HTML5;
tworzenie prostszych w wykonaniu stron internetowych: HTML, JavaScript, CSS;
tworzenie gier komputerowych: C/C++/C#, Java.
Wypisz języki programowania służące do:
tworzenia gier komputerowych,
tworzenia aplikacji komputerowych,
tworzenia aplikacji na urządzenia mobilne,
tworzenia stron internetowych,
obliczeń matematycznych,
programowania sztucznej inteligencji
Zadania
Zaznacz czy informacja jest prawdziwa czy fałszywa.
Prawda | Fałsz | |
Za pierwszą programistkę w historii uważa się Adę Lovelace. | □ | □ |
Ada Lovelace była lwowską chemiczką. | □ | □ |
Od imienia Ady Lovelace powstała pierwsza na świecie gra komputerowa. | □ | □ |
Pierwszą osobą, która stworzyła i uruchomiła program na komputerze był Konrad Zuse. | □ | □ |
Maszynę Turinga stworzono w 1963 r. | □ | □ |
Konrad Zuse, był niemieckim inżynierem, konstruktorem i pionierem informatyki. | □ | □ |
Pierwszy komputer osobisty powstał w I poł. XX wieku. | □ | □ |
Komputer ENIAC był używany m.in. do obliczeń związanych z balistyką, wytwarzaniem broni jądrowej. | □ | □ |
Słowniczek
brytyjska matematyczka i poetka, uważana za pierwszą programistkę w historii. W 1842 r. napisała program komputerowy dla maszyny analitycznej Charlesa Babbage’a.
ENIAC, czyli Elektroniczny Numeryczny Integrator i Komputer (poł. XX w.) stworzony przez Johna Eckerta i Johna Mauchly’ego.
Maszyna używana do obliczeń związanych z balistyką, wytwarzaniem broni jądrowej, prognozowaniem pogody, projektowaniem tuneli aerodynamicznych i badaniem promieniowania kosmicznego.
zbiór zasad określających, kiedy ciąg symboli tworzy program komputerowy oraz jakie obliczenia opisuje.
https://pl.wikipedia.org/wiki/J%C4%99zyk_programowania
maszynę tę wymyślił w 1936r. brytyjski matematyk Alan M. Turing. Urządzenie algorytmiczne, które pozwala na wykonanie złożonych algorytmów, abstrakcyjny model komputera.
język programowania umożliwiający zapis rozkazów maszynowych za pomocą stosunkowo prostych oznaczeń symbolicznych.
https://pl.wikipedia.org/wiki/J%C4%99zyk_niskiego_poziomu