ΑΕΠΠ - Εισαγωγή στον Προγραμματισμό (Μέρος Α)

Post on 24-Jun-2015

4.392 Views

Category:

Education

5 Downloads

Preview:

Click to see full reader

DESCRIPTION

Μία παρουσίαση που καλύπτει την ενότητα 6.2 του βιβλίου "Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον".

TRANSCRIPT

Σαρημπαλίδης Ιωάννης

Γλώσσες Προγραμματισμού

Γλώσσα μηχανής

Συμβολική γλώσσα

Γλώσσα υψηλού

επιπέδου

Η εξέλιξη των γλωσσών προγραμματισμού

Μεταγλωττιστής

Συμβολομεταφραστής

Οι εντολές προγράμματος

αποτελούνται από ακολουθίες 0 και 1

Γλώσσα μηχανής

Οι εντολές αποτελούνται από

συμβολικά ονόματα που αντιστοιχούν σε

εντολές της γλώσσας μηχανής

Συμβολική Γλώσσα

MOV AX,1234HPUSH AXMOV AH,09INT 21HPOP AX

Ας δούμε τώρα καιτην ιστορική εξέλιξη

των γλωσσών προγραμματισμού υψηλού επιπέδου

FORTRAN (FORmula TRANslator)

John Backus

Κατάλληλη για την επίλυση μαθηματικών

και επιστημονικών προβλημάτων

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

27

LISP (LISt Processor)

John McCarthy

Συνδέεται στενά με τον χώρο της τεχνητής

νοημοσύνης και προσανατολίζεται σε χειρισμό λιστών από

σύμβολα

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

13

ALGOL (ALGOrithmic Language)

Friedrich L. Bauer

Είναι ο πρόγονος των περισσότερων

σύγχρονων δομημένων γλωσσών

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

Hermann Bottenbruch

Heinz Rutishauser

Klaus Samelson >50

COBOL (COmmon Business Oriented Language )

Grace Hopper

Κατάλληλη για ανάπτυξη εμπορικών εφαρμογών

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

34

BASIC (Beginner’s All-purpose Symbolic Instruction Code)

Αναπτύχθηκε ως γλώσσα για την εκπαίδευση

αρχαρίων στον προγραμματισμό.

Εξελίχθηκε στην Visual Basic.

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

5

Thomas Kurtz John Kemeny

PL/I (Programming Language 1)

Απέτυχε να καλύψει όλους τους τομείς του

προγραμματισμού

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

>50

PASCAL (προς τιμή του Blaise Pascal)

Niklaus Wirth

Γλώσσα γενικής χρήσης που είναι κατάλληλη για

την δημιουργία δομημένων

προγραμμάτων

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

15

PROLOG (PROgramming LOGic)

Χρησιμοποιείται κυρίως στον χώρο της τεχνητής

νοημοσύνης

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

43

Alain Colmerauer

Philippe Roussel

Robert Kowalski

C (σαν συνέχεια της γλώσσας B)

Χρησιμοποιήθηκε για την συγγραφή του

λειτουργικού συστήματος Unix

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

2Dennis Ritchie Kenneth Thompson

SQL (Structured Query Language)

Σχεδιάστηκε για την διαχείριση δεδομένων σε

ένα DBMS

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

14

C++ (C με κλάσεις)

Είναι μία αντικειμενοστραφής

γλώσσα προγραμματισμού

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

3Bjarne Stroustrup

ADA (προς τιμή της κόρης του Λόρδου Βύρωνα)

Η επίσημα γλώσσα ανάπτυξης στρατιωτικών εφαρμογών από το Υπ.

Άμυνας των ΗΠΑ

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

17Jean Ichbiah

JAVA (από το όνομα αγαπητού καφέ των δημιουργών του)

Σχεδιάστηκε για να καλύψει τις ανάγκες του προγραμματισμού για

τον παγκόσμιο ιστό

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

1

C# (Μία C-style γλώσσα που είναι ένα βήμα μετά τις C/C++)

Είναι μία γλώσσα που μοιάζει στην C και η

οποία σχεδιάστηκε για την πλατφόρμα .NET

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 2009

6

GO

Μία νέα γλώσσα προγραμματισμού από

την Google που έχει πολλά κοινά στοιχεία με

την C

1955 1958 1959 1964 1970 1972 1978 1980 1983 1995 2001 200920

1 JAVA 18,166 %2 C 17,177 %3 C++ 9,802 %4 PHP 8,323 %5 VISUAL BASIC 5,650 %6 C# 4,963 %7 PYTHON 4,860 %8 OBJECTIVE – C 3,706 %9 PERL 2,310 %

10 RUBY 1,941 %

Οι 10 πιο διάσημες γλώσσες(Οκτώβριος 2010)

Πηγή : http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Ορισμένα από τα πλεονεκτήματα των γλωσσών υψηλού επιπέδου

είναι τα εξής :

Ο φυσικότερος και πιο «ανθρώπινος» τρόπος έκφρασης των προβλημάτων

Φωτογραφία από Cuba Gallery - Now on Twitter! στο Flickr

Η δυνατότητα μεταφερσιμότητας των προγραμμάτων

Φωτογραφία από Uros Petrovic στο Flickr

Η ευκολία εκμάθησηςκαι εκπαίδευσης

Φωτογραφία από mattward στο Flickr

Ευκολότερη διόρθωση λαθών και συντήρηση των προγραμμάτων

Φωτογραφία από Odense Bys Museer στο Flickr

Είναι ένα στυλ προγραμματισμού με το οποίο προσεγγίζουμε την λύση ενός προβλήματος με συγκεκριμένες μεθόδους

Προγραμματιστικό παράδειγμα

Βασίζεται στην έννοια της κλήσης διαδικασίας

Δομημένος προγραμματισμός

Ο χειρισμός σχετιζόμενων δεδομένων και διαδικασιών που επενεργούν σε

αυτά γίνεται από κοινού

Αντικειμενοστραφής προγραμματισμός

Η ροή του προγράμματος καθορίζεται από γεγονότα όπως π.χ. είναι το κλικ

του ποντικιού

Οδηγούμενος από το γεγονός προγραμματισμός

Επιτρέπει την δημιουργία προγραμμάτων με γραφικό τρόπο(π.χ. δημιουργία ενός παραθύρου)

Οπτικός προγραμματισμός

Με βάση το στυλ προγραμματισμού

που χρησιμοποιούν οι γλώσσες προγραμματισμού

ταξινομούνται σε …

Διαδικασιακές C, BASIC, PASCAL

Αντικειμενοστραφείς JAVA, C++, ADA

Συναρτησιακές LISP

Μη διαδικασιακές PROLOG

Ερωταπαντήσεων SQL

Με βάση την περιοχή χρήσης

οι γλώσσες προγραμματισμού ταξινομούνται σε …

Γενικής χρήσης BASIC, PASCAL

Επιστημονικής κατεύθυνσης FORTRAN

Εμπορικής κατεύθυνσης COBOL

Προγραμματισμού συστημάτων C

Τεχνητής νοημοσύνης LISP, PROLOG

Ειδικής χρήσης VHDL

Ένα ερώτημα που ίσως να έχετε είναι το εξής :

Ποια είναι η καλύτερη γλώσσα προγραμματισμού;

Η απάντηση είναι ότι δεν υπάρχει καλύτερη

γλώσσα προγραμματισμού.

Υπάρχουν γλώσσες που είναι κατάλληλες για μία συγκεκριμένη

κατηγορία προβλημάτων

ΣΑΣ ΕΥΧΑΡΙΣΤΩ

Περισσότερα μπορείτε να βρείτε στο http://pliroforikiatschool.blogspot.com

top related