Język programowania
Spis treści
· 1 Rodzaje języków programowania
o 1.1 Poziom wysoki a poziom niski
o 1.2 Programowanie deklaratywne a obowiązkowe
o 1.3 Funkcjonalne vs. proceduralne
o 1.4 Stack based
o 1.5 Zorientowanie na obiekt
o 1.6 Zorientowanie na przepływ
· 2 Zasady
· 3 Programowanie ukierunkowane na obiekt (Object-Oriented Programming)
· 4 Przykłady
o 4.1 Przykład Visual Basic
o 4.2 Przykład Pythona
o 4.3 Przykład C#
o 4.4 Przykład Haskella
· 5 Powiązane strony
Język programowania to rodzaj języka pisanego, który mówi komputerom, co mają robić, aby pracować. Języki programowania są używane do tworzenia wszystkich programów komputerowych i oprogramowania komputerowego. Język programowania jest jak zestaw instrukcji, które komputer wykonuje, aby coś zrobić.
Programista zapisuje tekst kodu źródłowego w języku programowania w celu utworzenia programów. Zazwyczaj język programowania używa prawdziwych słów do niektórych poleceń, dzięki czemu język ten jest łatwiejszy do odczytania przez człowieka. Wiele języków programowania używa interpunkcji tak samo jak normalny język. Wiele programów jest teraz "kompilowanych". Oznacza to, że komputer tłumaczy kod źródłowy na inny język (taki jak język zespołu lub język maszyny), który jest znacznie szybszy i łatwiejszy do odczytania przez komputer, ale znacznie trudniejszy do odczytania przez człowieka.
Programy komputerowe muszą być napisane bardzo ostrożnie. Jeśli programista popełnia błędy, lub program próbuje zrobić coś, czego nie zaprojektował, program może wtedy "zawiesić się" lub przestać działać. Gdy program ma problem z powodu tego, jak został napisany, nazywa się to "błędem". Bardzo mały błąd może spowodować bardzo duży problem.
Rodzaje języków programowania
Istnieje wiele rodzajów języków programowania. Większość języków programowania nie opiera się tylko na jednym typie, więc trudno jest przypisać jeden typ do każdego z nich. Przykłady każdego typu są podane w każdej sekcji poniżej, ponieważ są one najlepiej znanymi przykładami tego typu.
High-level vs. low-level
| Ta sekcja potrzebuje więcej informacji. (sierpień 2018) |
Języki programowania wysokopoziomowego wymagają mniejszej wiedzy na temat sprzętu w porównaniu z językami programowania niskopoziomowego. Języki programowania wysokopoziomowego wymagają tłumacza do konwersji kodu źródłowego na niskopoziomowe języki programowania.
Programowanie deklaratywne vs. obowiązkowe
Deklaratywne języki programowania opisują "problem", ale zwykle nie mówią, w jaki sposób problem powinien być rozwiązany. W opisie problemu używa się logiki, a "rozwiązanie" problemu często wygląda jak automatyczne udowodnienie systemu aksjomatów logicznych. Przykładami takich języków programowania są Prolog, XSLT, LISP i SQL.
Obowiązkowe języki programowania opisują system zmian stanu. Na początku program znajduje się w określonym stanie, a komputer otrzymuje instrukcje, które należy wykonać w celu wykonania czynności. Wykonanie tych kroków powoduje, że program "zmienia stan".
Ogólnie rzecz biorąc, deklaratywne języki programowania są bezpieczniejsze i krótsze. Języki programowania deklaratywnego są bardziej powszechne, ponieważ są łatwiejsze w użyciu.
Funkcjonalne vs. Proceduralne
Programowanie funkcjonalne patrzy na programowanie jak na funkcję w matematyce. Program odbiera dane wejściowe wraz z pewnymi informacjami i wykorzystuje te informacje do utworzenia wyjścia. Nie będzie miał stanu pomiędzy nimi, nie zmieni też rzeczy, które nie są związane z obliczeniami.
Programy proceduralne określają lub opisują zestawy kroków lub zmiany stanu.
Na podstawie stosu
Języki oparte na stosie wyglądają w pamięci programu jak stos kart. Jest bardzo mało rzeczy, które można zrobić ze stosem. Pozycja danych może być umieszczona na wierzchu stosu. Ta operacja jest zazwyczaj nazywana "pchaniem". Pozycja danych może być usunięta z górnej części stosu. Nazywa się to "pop". Pozycję na górze stosu można obejrzeć bez jej wyjmowania. Nazywa się to "zerknięciem".
Jeśli program jest napisany jako "wciśnij 5; wciśnij 3; dodaj; pop;", umieści 5 na górze stosu, umieści 3 na górze 5, doda dwie górne wartości (3 + 5 = 8), zastąpi 3 i 5 na 8 i wydrukuje górną (8). Przykładami języków programowania, które są oparte na stosie są języki Postscript i Forth.
Obiektowy
Obiektowe języki programowania umieszczają dane i funkcje, które zmieniają dane w jednym urządzeniu. Jednostka ta nazywana jest "obiektem". Obiekty mogą oddziaływać na siebie wzajemnie i zmieniać dane innego obiektu. Zwykle nazywa się to enkapsulacją lub ukrywaniem informacji. Większość nowoczesnych języków programowania jest zorientowana obiektowo, lub przynajmniej dopuszcza ten styl programowania. Przykładami tego są Java, Python, Ruby, C++, C# i inne języki C.
Flow-oriented
Programowanie zorientowane na przepływ postrzega programowanie jako łączenie różnych komponentów. Komponenty te wysyłają wiadomości tam i z powrotem. Pojedynczy komponent może być częścią różnych "programów", bez konieczności wewnętrznej zmiany.
Zasady
Każdy język programowania ma zasady dotyczące tego, co może, a czego nie może robić. Obejmują one:
- Prawidłowe liczby (rodzaje liczb, oraz jak duże lub małe mogą być liczby)
- Słowa (słowa zastrzeżone, rozróżnienie wielkości liter)
- Ograniczenia co może zrobić język programowania
Większość języków posiada oficjalne standardy, które określają zasady pisania kodu źródłowego. Niektóre języki programowania mają dwa lub więcej standardów. Może się to zdarzyć, gdy nowy standard zastąpi stary. Na przykład, standard Perl 5 zastąpił Perl 4 w 1993 roku. Może się to zdarzyć, ponieważ dwie osoby tworzyły dwa standardy jednocześnie. Na przykład, istnieje kilka standardów dla APL.
Programowanie zorientowane obiektowo
Programowanie obiektowe (czasem skrócone do OOP) jest formą programowania, w której wszystkie części programu są obiektami. Obiekty są kawałkami pamięci o tej samej strukturze, które mogą być wielokrotnie używane. Konto bankowe, bitmapa, lub bohater z gry wideo mogą być obiektami w programie. Obiekty składają się z właściwości (informacji, które przechowuje obiekt) i metod, które są rzeczami, które obiekt może robić. Obiekt psa może mieć takie właściwości jak wzrost i kolor włosów. Jego metody mogą obejmować korę() i wagTail().
Wszystkie obiekty są tworzone z szablonów zwanych klasami. Możesz myśleć o klasie jako o formie, z której tworzone są obiekty. Klasa definiuje wszystkie właściwości i metody, które będą posiadały jej obiekty. Obiekty utworzone z klasy są nazywane instancjami klasy. Klasa może rozszerzyć inną klasę, co oznacza, że bierze wszystkie jej właściwości i metody, ale może dodać swoje własne.
Oto przykład, jak może wyglądać klasa w języku programowania:
klasa Dog rozszerza Mammal{ //To są właściwości : String breed = "Collie" String type = "Herding Dog" // Są to metody void wagTail(){ //Do some wagging } void bark(){ //Do the szczekanie tutaj } }Zauważ, że klasa psa rozszerza klasę ssaków, więc wszystkie psy będą miały właściwości ssaka, jak włosyDługość, i metody, jak jedzenie() lub spanie().
Programowanie obiektowe jest używane w wielu najpopularniejszych współczesnych językach programowania, takich jak Java, C#, Objective-C, C++, Python, Ruby, Javascript i ActionScript.
Przykłady
Przykład Visual Basic
Oto prosty program napisany w Visual Basic:
Ten program pyta użytkownika o jego wiek i odpowiada na podstawie tego, co wpisał. Jeśli użytkownik wpisał coś, co nie jest liczbą, program mówi. Jeśli użytkownik wpisał liczbę mniejszą od zera, program to powie. Jeśli użytkownik mówi, że ma więcej niż 100 lat, program mówi "To jest stare!". Jeśli użytkownik wpisał prawidłowy wiek, program mówi mu, ile ma lat.
Przykład Pythona
Oto program, który robi to samo, co program powyżej, ale w Pythonie:
Przykład C#
To samo, co program powyżej, ale w C#:
Przykład Haskella
Znowu to samo, ale w Haskell:
Powiązane strony
- Lista języków programowania
- Programista
- Kompilator
- Programowanie komputerowe
Pytania i odpowiedzi
P: Co to jest język programowania?
O: Język programowania to rodzaj języka pisanego, który mówi komputerom, co mają robić. Jest to zestaw instrukcji, które komputer wykonuje, aby coś zrobić, i zazwyczaj używa prawdziwych słów dla niektórych poleceń, aby były łatwiejsze do zrozumienia dla ludzi.
P: Jakie są przykłady języków programowania?
O: Przykładami języków programowania są Python, Ruby, Java, JavaScript, C, C++ i C#.
P: Jak pisze się programy w języku programowania?
O: Programy pisze się poprzez zapisywanie tekstu w kodzie źródłowym języka programowania. Zazwyczaj stosuje się również interpunkcję.
P: Co się dzieje po napisaniu programu w języku programowania?
O: Po napisaniu programów w języku programowania muszą one zostać skompilowane, co oznacza, że komputer zmienia lub tłumaczy kod źródłowy na inny język (np. asemblerowy lub maszynowy), który może być odczytywany przez komputery, ale który jest znacznie trudniejszy do odczytania przez ludzi.
P: Co może się stać, jeżeli podczas pisania programów popełni się błędy?
O: Jeżeli podczas pisania programów popełni się błędy lub jeżeli program będzie próbował zrobić coś, do czego nie został zaprojektowany, może przestać działać, co nazywa się "crashowaniem". Jeżeli dzieje się tak z powodu tego, jak został napisany kod, nazywa się to "błędem". Nawet małe błędy mogą powodować duże problemy.
P: Dlaczego programy komputerowe muszą być starannie napisane?
O: Programy komputerowe muszą być starannie napisane, ponieważ nawet małe błędy mogą powodować duże problemy i prowadzić do awarii lub błędów.