Πληροφορική: Διαφορά μεταξύ των αναθεωρήσεων

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
Περιεχόμενο που διαγράφηκε Περιεχόμενο που προστέθηκε
JohnMad (συζήτηση | συνεισφορές)
JohnMad (συζήτηση | συνεισφορές)
Γραμμή 67: Γραμμή 67:
ο συγγραφέας του οποίου ζητούσε την ίδρυση «Σχολής Επιστημών Υπολογιστών» (''School of Computer Sciences''), κατ' αναλογία με τη «Σχολή Διοίκησης Επιχειρήσεων» του [[Πανεπιστήμιο Χάρβαρντ|Πανεπιστημίου του Χάρβαρντ]] που είχε ιδρυθεί το 1921. Το προτεινόμενο όνομα δικαιολογούνταν με το σκεπτικό ότι αυτή η «''επιστήμη υπολογιστών''», όπως η «''επιστήμη διαχείρισης''» (η σημερινή [[επιχειρησιακή έρευνα]]) είναι εφαρμοσμένος και διεπιστημονικός γνωστικός τομέας, αλλά με όλα τα χαρακτηριστικά ενός διακριτού ακδημαϊκού πεδίου. Οι εν λόγω προσπάθειες ευοδώθηκαν και αρκετά Πανεπιστήμια στις ΗΠΑ άρχισαν να ιδρύουν Τμήματα Πληροφορικής υπό τον τίτλο «Επιστήμης Υπολογιστών», με πρώτο το [[Πανεπιστήμιο Περντιού]] το [[1962]]<ref name="FirstCSDeptm">[http://www.stanford.edu/dept/ICME/docs/history/forsythe_knuth.pdf ''George Forsythe and the Development of Computer Science'']</ref>.
ο συγγραφέας του οποίου ζητούσε την ίδρυση «Σχολής Επιστημών Υπολογιστών» (''School of Computer Sciences''), κατ' αναλογία με τη «Σχολή Διοίκησης Επιχειρήσεων» του [[Πανεπιστήμιο Χάρβαρντ|Πανεπιστημίου του Χάρβαρντ]] που είχε ιδρυθεί το 1921. Το προτεινόμενο όνομα δικαιολογούνταν με το σκεπτικό ότι αυτή η «''επιστήμη υπολογιστών''», όπως η «''επιστήμη διαχείρισης''» (η σημερινή [[επιχειρησιακή έρευνα]]) είναι εφαρμοσμένος και διεπιστημονικός γνωστικός τομέας, αλλά με όλα τα χαρακτηριστικά ενός διακριτού ακδημαϊκού πεδίου. Οι εν λόγω προσπάθειες ευοδώθηκαν και αρκετά Πανεπιστήμια στις ΗΠΑ άρχισαν να ιδρύουν Τμήματα Πληροφορικής υπό τον τίτλο «Επιστήμης Υπολογιστών», με πρώτο το [[Πανεπιστήμιο Περντιού]] το [[1962]]<ref name="FirstCSDeptm">[http://www.stanford.edu/dept/ICME/docs/history/forsythe_knuth.pdf ''George Forsythe and the Development of Computer Science'']</ref>.


Το 1962 επινοήθηκε επίσης ο ομόηχος με το γερμανικό ''informatik'' όρος ''informatique'', από τον [[Γαλλία|Γάλλο]] Φιλίπ Ντρέυφους<ref>Dreyfus, Phillipe. ''L’informatique.'' Gestion, Paris, Jun 1962, pp. 240–41</ref>, ως συνδυασμός των λέξεων ''information'' (=πληροφορία) και ''automatic'' (=αυτόματη), προκειμένου να περιγραφεί η επιστήμη της αυτόματης επεξεργασίας πληροφοριών. Από τα γαλλικά ο όρος πέρασε στις υπόλοιπες [[λατινογενείς γλώσσες]] και, τελικά, στα ελληνικά ως ''πληροφορική''. Η κατάληξη (-ique στα γαλλικά, -ics στα αγγλικά, -ική στα ελληνικά) επιλέχθηκε ώστε να ταιριάζει με προϋπάρχοντα ονόματα επιστημονικών πεδίων αλλά και πρακτικών εφαρμογών (π.χ. [[φυσική]], [[πολιτική]], [[τακτική]] κλπ).
Το 1962 επινοήθηκε επίσης ο ομόηχος με το γερμανικό ''informatik'' όρος ''informatique'', από τον [[Γαλλία|Γάλλο]] Φιλίπ Ντρέυφους<ref>Dreyfus, Phillipe. ''L’informatique.'' Gestion, Paris, Jun 1962, pp. 240–41</ref>, ως συνδυασμός των λέξεων ''information'' (=πληροφορία) και ''automatic'' (=αυτόματη), προκειμένου να περιγραφεί η επιστήμη της αυτόματης επεξεργασίας πληροφοριών. Από τα γαλλικά ο όρος πέρασε στις υπόλοιπες [[λατινογενείς γλώσσες]], στις [[σλαβικές γλώσσες]] και, τελικά, στα ελληνικά ως ''πληροφορική''. Η κατάληξη (-''ique'' στα γαλλικά, -''ics'' στα αγγλικά, -''ική'' στα ελληνικά) επιλέχθηκε ώστε να ταιριάζει με προϋπάρχοντα ονόματα επιστημονικών πεδίων αλλά και πρακτικών εφαρμογών (π.χ. [[φυσική]], [[πολιτική]], [[τακτική]] κλπ). Το [[1966]], ο [[Δανός]] επιστήμονας [[Πέτερ Νάουρ]] πρότεινε εναλλακτικά τον όρο ''datalogy'' (ελεύθερη απόδοση: ''δεδομενολογία'') για να περιγράψει την πληροφορική, δίνοντας έτσι λεκτική έμφαση όχι στους ίδιους τους υπολογιστές αλλά στην αξιοποίησή τους για αυτοματοποιημένη επεξεργασία δεδομένων<ref>
{{cite journal
|author=Peter Naur
|year=1966
|title=The science of datalogy
|journal=Communications of the ACM
|volume=9 |issue=7 |page=485
|doi=10.1145/365719.366510
}}</ref>, όμως η προσπάθεια αυτή δεν είχε απήχηση και ο όρος περιορίστηκε στις [[Σκανδιναβια|σκανδιναβικές]] χώρες.


Το γαλλογερμανικό ''informatik'' / ''informatique'' πολύ γρήγορα μετά την εμφάνισή του, ύστερα από μία αρχική περίοδο σύγχυσης, άρχισε να γίνεται αντιληπτό ως συνώνυμο του αγγλοσαξονικού όρου ''computer science''<ref>[http://www.uni-forst.gwdg.de/~wkurth/cb/html/cs1_v01.pdf «''What is "Computer Science" / "Informatics"? "Computer Science" – science about a tool? Better names would be: "science of computing" or "data processing science" (focuses on activity instead of tool). "Informatics": continental-European for "computer science" - French: "Informatique" (since 1960s) - German: "Informatik" Definition: "Science of the systematical processing of information, especially the automatic processing by use of digital computers".''»]</ref>. Ωστόσο η επιστήμη υπολογιστών κατανοείται εναλλακτικά και ως ένα πιο περιορισμένο επιστημονικό πεδίο, προσανατολισμένο μόνο στη θεωρητική πληροφορική και στα μαθηματικά της θεμέλια (όπως συμβαίνει στο διάσημο απόφθεγμα του Έντσγκερ Ντάικστρα). Σε κάθε περίπτωση, στα γερμανικά η λέξη ''informatik'' συνιστά την ορθή μετάφραση του αγγλικού ''computer science''.
Το γαλλογερμανικό ''informatik'' / ''informatique'' πολύ γρήγορα μετά την εμφάνισή του, ύστερα από μία αρχική περίοδο σύγχυσης, άρχισε να γίνεται αντιληπτό ως συνώνυμο του αγγλοσαξονικού όρου ''computer science''<ref>[http://www.uni-forst.gwdg.de/~wkurth/cb/html/cs1_v01.pdf «''What is "Computer Science" / "Informatics"? "Computer Science" – science about a tool? Better names would be: "science of computing" or "data processing science" (focuses on activity instead of tool). "Informatics": continental-European for "computer science" - French: "Informatique" (since 1960s) - German: "Informatik" Definition: "Science of the systematical processing of information, especially the automatic processing by use of digital computers".''»]</ref>. Ωστόσο η επιστήμη υπολογιστών κατανοείται εναλλακτικά και ως ένα πιο περιορισμένο επιστημονικό πεδίο, προσανατολισμένο μόνο στη θεωρητική πληροφορική και στα μαθηματικά της θεμέλια (όπως συμβαίνει στο διάσημο απόφθεγμα του Έντσγκερ Ντάικστρα)<ref>{{Cite doi|10.1023/A:1018949113292}}, σελ. 19: «''Rather than treat software engineering as a subfield of computer science, I treat it as an element of the set, Civil Engineering, Mechanical Engineering, Chemical Engineering, Electrical Engineering, [...]''»</ref>. Σε κάθε περίπτωση, στα γερμανικά η λέξη ''informatik'' συνιστά την ορθή μετάφραση του αγγλικού όρου ''computer science''.


== Φιλοσοφία της πληροφορικής ==
== Φιλοσοφία της πληροφορικής ==

Έκδοση από την 13:16, 4 Αυγούστου 2013

Αυτό το λήμμα αφορά τον γνωστικό κλάδο της «επιστήμης υπολογιστών». Για το γνωστικό πεδίο που σχετίζεται με τη «βιβλιοθηκονομία», δείτε: Βιβλιοθηκονομία και επιστήμη της πληροφόρησης. Για το γνωστικό πεδίο που σχετίζεται με τα «εφαρμοσμένα μαθηματικά», δείτε: Θεωρία πληροφορίας.
Γραφικά υπολογιστή Θεωρία υπολογισμού
Θεωρία γλωσσών προγραμματισμού Επικοινωνία ανθρώπου-μηχανής
Η πληροφορική ερευνά τα θεωρητικά θεμέλια των εννοιών της πληροφορίας και του υπολογισμού, καθώς και τις τεχνολογικές εφαρμογές τους σε αυτοματοποιημένα υπολογιστικά συστήματα. Τα εν λόγω συστήματα είναι κατασκευές σχεδιασμένες με γνώμονα και στόχο την αποδοτική, μηχανική εκτέλεση αλγορίθμων.

Πληροφορική ή επιστήμη υπολογιστών ονομάζεται η θετική και εφαρμοσμένη επιστήμη η οποία ερευνά τα θεωρητικά θεμέλια των εννοιών της πληροφορίας και του υπολογισμού, καθώς και τις τεχνολογικές εφαρμογές τους σε αυτοματοποιημένα υπολογιστικά συστήματα, από τη σκοπιά της σχεδίασης, της ανάπτυξης, της υλοποίησης, της διερεύνησης, της ανάλυσης και της προδιαγραφής τους[1][2][3][4]. Τα εν λόγω συστήματα συνήθως είναι ηλεκτρονικά και ψηφιακά, όμως αυτό δεν είναι απαραίτητο αφού έχουν υπάρξει και μηχανικοί ή κβαντικοί υπολογιστές. Καθώς η είσοδος και η έξοδος κάθε υπολογισμού συνιστούν πληροφορία, η πληροφορική ερευνά επίσης μεθόδους ανάλυσης, συλλογής, επεξεργασίας, αποθήκευσης, ανάκτησης, κωδικοποίησης και μετάδοσης αναπαραστάσεων πληροφοριών[5]. Οι ρίζες της πληροφορικής ως διακριτής επιστήμης ανιχνεύονται στη δεκαετία του 1940, αμέσως μετά την εύρεση των μαθηματικών ιδιοτήτων του υπολογισμού και την κατασκευή ηλεκτρονικών υπολογιστικών μηχανών. Η ακαδημαϊκή αναγνώρισή της ως ανεξάρτητου επιστημονικού τομέα συνέβη κατά τη δεκαετία του 1960[6], ενώ η διάχυση των προϊόντων της στην κοινωνία (τεχνολογία πληροφοριών και επικοινωνίας) άρχισε να λαμβάνει χώρα ευρέως μετά το 1970, με αποτέλεσμα σημαντικές κοινωνικές, οικονομικές και τεχνολογικές αλλαγές σε διεθνές επίπεδο[7].

Η αυτοματοποιημένη υλοποίηση των μεθόδων της πληροφορικής βασίστηκε από την πρώτη στιγμή στους ηλεκτρονικούς υπολογιστές. Ωστόσο, αυτή έχει έναν ευρύτερο σκοπό που δεν περιορίζεται σε συγκεκριμένες τεχνολογικές επιλογές. Για παράδειγμα, ο αλγόριθμος της δυαδικής αναζήτησης μπορεί να εφαρμοστεί και σε τηλεφωνικό κατάλογο χειρωνακτικά, ενώ ένα πρωτόκολλο επικοινωνίας μπορεί να εφαρμοστεί ακόμη και σε σήματα καπνού. Η πληροφορική επομένως, αναλόγως με το επίπεδο αφαίρεσης, μπορεί να μελετηθεί είτε ανεξάρτητα από τις τεχνολογικές της συνιστώσες, είτε ως ένα ενιαία με αυτές επιστήμη. Με την πληροφορική σχετίζεται επιπροσθέτως και η διερεύνηση φυσικών διεργασιών επεξεργασίας πληροφοριών (βλ. γνωσιακή επιστήμη).

Από ορισμένους έχει υποστηριχθεί ότι η πληροφορική, με κεντρικό άξονα τις έννοιες της πληροφορίας, του υπολογισμού και της αυτοματοποίησης, συνθέτει σε ένα διακριτό σύνολο τις μεθοδολογικές παραδόσεις των θετικών επιστημών («μαθηματική» προσέγγιση), των φυσικών επιστημών («εμπειρική» προσέγγιση) και των επιστημών μηχανικών (προσέγγιση «μηχανικού»)[6]. Ακόμα έχει διατυπωθεί η άποψη πως η έρευνα για τον φυσικό κόσμο, η οποία κατά παράδοση διακρίνεται μεθοδολογικά σε «θεωρητικές» προσεγγίσεις (κομψές, αφηρημένες, στηριγμένες σε απλουστευτικές υποθέσεις και λογικούς κανόνες) και σε «πειραματικές» προσεγγίσεις (εστιασμένες στον θόρυβο, στην τυχαιότητα και στα σφάλματα του πραγματικού κόσμου), με την πληροφορική συμπληρώνεται από μία τρίτη προσέγγιση βασισμένη στην in silico προσομοίωση φυσικών φαινομένων. Η προσέγγιση αυτή συνθέτει τις ιδιότητες και ενσωματώνει τα χαρακτηριστικά και των δύο προηγούμενων[8].

Η πληροφορική δεν πρέπει να συγχέεται με τη θεωρία πληροφορίας, ένα πεδίο των εφαρμοσμένων μαθηματικών, ή τη βιβλιοθηκονομία και επιστήμη πληροφόρησης, έναν σύνθετο και πολύ διαφορετικό γνωστικό κλάδο που σχετίζεται με την οργάνωση και διαχείριση βιβλιοθηκών και αυτόματων συστημάτων πληροφόρησης, αξιοποιώντας ορισμένα από τα τεχνολογικά εργαλεία που παρέχει η πληροφορική. Τέλος, η ιδιότητα του επιστήμονα της πληροφορικής δεν πρέπει να συγχέεται με την επαγγελματική ιδιότητα του προγραμματιστή, δηλαδή ατόμου βιοποριζόμενου από την ανάπτυξη λογισμικού υπολογιστών, εφόσον η πληροφορική δεν συνίσταται στον ίδιο τον προγραμματισμό μα στην επιστημονική μελέτη των αλγορίθμων και της σχεδίασης, ανάλυσης και κατασκευής υλικού ή λογισμικού υπολογιστών και αποδοτικών, αυτοματοποιημένων υπολογιστικών υποδομών για τη μηχανική εκτέλεση αλγορίθμων[9]. Η πληροφορική αξιοποιεί επομένως τον προγραμματισμό όχι ως αυτοσκοπό, μα ως ένα από τα βασικά εργαλεία της και από τα κύρια αντικείμενα μελέτης της[4]. Ωστόσο, είναι σύνηθες ένας επαγγελματίας προγραμματιστής να έχει σπουδάσει σε κάποιον βαθμό την επιστήμη της πληροφορικής.

Ο υπολογιστής είναι το κυριότερο τεχνολογικό εργαλείο της πληροφορικής. Ως επιστήμη, μελετά τη λειτουργία του, τους περιορισμούς του, την κατασκευή του, τον προγραμματισμό του και τις μεθόδους βέλτιστης αξιοποίησής του.

Ορισμός και συγγενείς επιστήμες

Γλυπτό του Άλαν Τούρινγκ, του «πατέρα της πληροφορικής και της τεχνητής νοημοσύνης».

Η πληροφορική συσχετίζεται στενά με άλλους επιστημονικούς κλάδους οι οποίοι, παρά τις σημαντικές διαφορές όσον αφορά την έμφαση και τις ιστορικές ρίζες, επικαλύπτονται με επιμέρους πεδία της.

Η επιστήμη υπολογιστών, όρος καταγόμενος από την αγγλική γλώσσαcomputer science»), με την ευρεία έννοια ταυτίζεται με την πληροφορική (αγγλ.: «informatics»)[10], ωστόσο χρησιμοποιείται εναλλακτικά και με μια πιο στενή έννοια η οποία εννοεί αποκλειστικά τη θεωρητική πληροφορική και τα συναφή μαθηματικά της θεμέλια. Σε αυτή την περίπτωση μόνο, συνήθως θεωρείται πως η πληροφορική συμπεριλαμβάνει τη μηχανική λογισμικού, τα υπολογιστικά συστήματα και τη μηχανική υπολογιστών, ενώ η επιστήμη υπολογιστών όχι. Τελείως αντίστοιχα, ενώ στην Ελλάδα έχει επικρατήσει ο όρος πληροφορικός για την περιγραφή του κατάλληλα καταρτισμένου επιστήμονα, στον αγγλοσαξονικό κόσμο επικρατεί ο όρος επιστήμονας υπολογιστών. Ο Έντσγκερ Ντάικστρα (Edsger Dijkstra), αναφερόμενος στη δεύτερη, στενότερη έννοια της επιστήμης υπολογιστών, έχει πει:

Η επιστήμη υπολογιστών έχει τόση σχέση με τους υπολογιστές, όση έχει η αστρονομία με το τηλεσκόπιο.

Ο φυσικός Ρίτσαρντ Φάινμαν (Richard Feynman) έχει πει:

Η επιστήμη υπολογιστών δεν είναι τόσο παλιά όσο η φυσική, υστερεί χρονικά μερικούς αιώνες. Ωστόσο, αυτό δεν σημαίνει ότι υπάρχουν λιγότερα στο πιάτο του επιστήμονα των υπολογιστών απ' ότι σε αυτό του φυσικού: μπορεί να είναι νεότερη αλλά είχε μια πολύ πιο έντονη γέννηση!

Η πληροφορική περιέχει πολλά γνωστικά πεδία, κάποια εκ των οποίων δίνουν έμφαση στον υπολογισμό συγκεκριμένων αποτελεσμάτων (όπως τα γραφικά υπολογιστών), κάποια σχετίζονται με ιδιότητες υπολογιστικών προβλημάτων (όπως η θεωρία πολυπλοκότητας), ενώ άλλα επικεντρώνονται στις προκλήσεις που παρουσιάζονται κατά την υλοποίηση υπολογισμών από τη σκοπιά του υλικού και του λογισμικού. Για παράδειγμα, η θεωρία γλωσσών προγραμματισμού μελετά προσεγγίσεις για την περιγραφή υπολογισμών, ο προγραμματισμός υπολογιστών εφαρμόζει συγκεκριμένες γλώσσες προγραμματισμού για να λύσει προκαθορισμένα υπολογιστικά προβλήματα, ενώ τα λειτουργικά συστήματα ενδιαφέρονται για τη σχεδίαση και κατασκευή αποδοτικών υποδομών λογισμικού για την εκτέλεση υπολογισμών με όσο το δυνατόν καλύτερη αξιοποίηση του διαθέσιμου υλικού. Ο κλάδος της αλληλεπίδρασης ανθρώπου-υπολογιστή ασχολείται με το ζήτημα της ευχρηστίας και προσβασιμότητας των υπολογιστών, όσον αφορά το ευρύ κοινό. Σχεδόν όλα τα πεδία της πληροφορικής μπορούν να ταξινομηθούν σε έναν από τους πέντε βασικούς κλάδους της:

  1. Θεωρητική πληροφορική
  2. Λογισμικό και μηχανική λογισμικού
  3. Μηχανική υπολογιστών
  4. Υπολογιστικά συστήματα
  5. Εφαρμογές υπολογιστών

Ορισμένοι, κυρίως στις αγγλοσαξονικές χώρες, διαχωρίζουν την πληροφορική σε επιμέρους επιστήμες, κάνοντας διάκριση μεταξύ επιστήμης υπολογιστών και μηχανικής υπολογιστών, με την τελευταία να αποτελεί έναν συναφή κλάδο ασχολούμενο με τη σχεδίαση και υλοποίηση υλικού υπολογιστών. Στον βαθμό που το υλικό αυτό είναι ηλεκτρονικής φύσης, η μηχανική υπολογιστών μελετάται και από την ηλεκτρονική μηχανική. Με παρόμοια λογική έχει προταθεί και η διάκριση μεταξύ επιστήμης υπολογιστών και μηχανικής λογισμικού, όπου ο κλάδος αυτός επικεντρώνεται στη συστηματική ανάπτυξη λογισμικού για συγκεκριμένες εφαρμογές με τυποποιημένες μεθόδους. Ωστόσο δεν υπάρχει καθολικά αποδεκτή διαφοροποίηση μεταξύ προγραμματισμού υπολογιστών και μηχανικής λογισμικού, ενώ τα περισσότερα πανεπιστημιακά τμήματα Πληροφορικής εφαρμόζουν στην πράξη ένα ενιαίο πρόγραμμα σπουδών το οποίο συμπεριλαμβάνει και τους πέντε κλάδους της επιστήμης[11].

Ιστορικό της πληροφορικής

Η Άντα Λάβλεϊς έγραψε το πρώτο πρόγραμμα υπολογιστή κατά τον 19ο αιώνα για την Αναλυτική Μηχανή του Μπάμπατζ, πολύ πριν από την εμφάνιση ηλεκτρονικών υπολογιστών. Η γλώσσα προγραμματισμού Ada έχει ονομαστεί έτσι προς τιμήν της.

Η προϊστορία της πληροφορικής εντοπίζεται τόσο στη μαθηματική μελέτη των αλγορίθμων, όσο και σε ποικίλες απόπειρες κατασκευής υπολογιστικών μηχανών με στόχο την αυτοματοποίηση αριθμητικών υπολογισμών. Αποσπασματικές προσπάθειες ενταγμένες στα δύο αυτά εγχειρήματα μπορούν να ανιχνευθούν από την Αρχαιότητα μέχρι και τον 19ο αιώνα, πολύ πριν από την ανάπτυξη των σύγχρονων ψηφιακών υπολογιστών. Σημαντικοί σταθμοί στην εν λόγω ιστορική διαδρομή υπήρξαν η κατασκευή του μηχανισμού των Αντικυθήρων, του πρώτου μηχανικού υπολογιστή (περιορισμένων βεβαίως δυνατοτήτων) ο οποίος κατασκευάστηκε ποτέ και διασώζεται μέχρι σήμερα, η διατύπωση αλγορίθμων σε φυσική γλώσσα από τον Ευκλείδη και τον Ερατοσθένη, η πρώιμη μελέτη της έννοιας του αλγορίθμου από τον Πέρση μαθηματικό του Μεσαίωνα Αλ Χουαρίζμι στο πλαίσιο της πρώτης πλήρους πραγματείας περί άλγεβρας, η κατασκευή της πρώτης μηχανικής αριθμομηχανής από τον Μπλεζ Πασκάλ το 1645, καθώς και ο μηχανικός υπολογιστής του Τσαρλς Μπάμπατζ στα μέσα του 19ου αιώνα, πρόγονος των καθολικών υπολογιστών γενικού σκοπού, ο οποίος όμως απέτυχε να επηρεάσει σημαντικά την τεχνολογία της εποχής του. Στη συνέχεια, προτού γίνει ξεχωριστή επιστήμη, η πληροφορική εμφανίστηκε σαν πεδίο των διακριτών μαθηματικών κατά τη δεκαετία του 1930, μετά την αυστηρή μαθηματική τυποποίηση των εννοιών του αλγορίθμου και του υπολογισμού από τους μαθηματικούς Άλαν Τούρινγκ και Αλόνζο Τσερτς.

Ο ENIAC (1946) υπήρξε ο πρώτος επαναπρογραμματιζόμενος ηλεκτρονικός υπολογιστής γενικού σκοπού, ικανοποιώντας τα κριτήρια του Τούρινγκ περί καθολικής επιλυσιμότητας (ήταν δηλαδή θεωρητικά σε θέση να εκτελέσει κάθε δυνατό αλγόριθμο), δίνοντας μια αρχική ώθηση στην επιστημονική ανεξαρτητοποίηση της πληροφορικής[6]. Οι υπολογιστές που είχαν προηγηθεί του ENIAC ήταν είτε μηχανικές κατασκευές ειδικού σκοπού (π.χ. ο μηχανισμός των Αντικυθήρων), είτε ηλεκτρομηχανολογικές κατασκευές (π.χ. Ζ3), είτε ηλεκτρονικές συσκευές που δεν είχαν όμως καθολικές δυνατότητες υπολογισιμότητας (π.χ. Colossus). Από τα τέλη της δεκαετίας του 1950, οπότε καθιερώθηκε η αρχιτεκτονική φον Νόιμαν των σύγχρονων ψηφιακών υπολογιστών, η αυτονομημένη πλέον πληροφορική άρχισε να αναπτύσσεται σε μεγάλο βαθμό ανεξάρτητα από τις ίδιες τις μηχανές, με την πλήρη ακαδημαϊκή αναγνώρισή της ως ξεχωριστής επιστήμης, χαρακτηριζόμενης από τη δική της παράδοση και ιδιότητες, να συμβαίνει σταδιακά κατά τη δεκαετία του 1960[12]. Η πολύ μεγάλη επιρροή της, ακολούθως, στην ανάδυση των ρηξικέλευθων τεχνολογιών πληροφοριών και επικοινωνίας (ΤΠΕ), έχει οδηγήσει διεθνώς μετά το 1970 σε κοινωνικές εξελίξεις που πολλοί εκλαμβάνουν ως «επανάσταση της πληροφορίας», «παγκόσμιο χωριό» και «κοινωνία της γνώσης»[7]. Ταυτόχρονα, η πληροφορική αποτέλεσε το επιστημονικό υπόβαθρο επί του οποίου στηρίχθηκε η σύγχρονη βιομηχανία ανάπτυξης και συντήρησης λογισμικού, κυρίως μετά την καθιέρωση των προσωπικών υπολογιστών[13], φτάνοντας σήμερα να αποτελεί έναν ευμεγέθη τομέα της οικονομίας[14].

Σήμερα η πληροφορική ασχολείται επιστημονικά με ένα ευρύ φάσμα θεμάτων, όπως η ανάπτυξη αλγορίθμων για την αποτελεσματική επίλυση προβλημάτων, η κατασκευή και βελτίωση συστημάτων λογισμικού και υλικού υψηλής απόδοσης, η ταχεία και ασφαλής διακίνηση πληροφοριών μέσω τηλεπικοινωνιακών δικτύων, η δημιουργία συστημάτων διαχείρισης δεδομένων, η διερεύνηση του τρόπου με τον οποίο ο άνθρωπος διατυπώνει συλλογισμούς, η προσομοίωση της λειτουργίας του ανθρώπινου εγκεφάλου κλπ. Έτσι, η πληροφορική συνδέεται άμεσα με όλες τις θετικές επιστήμες, αλλά και με τη φιλοσοφία, την ψυχολογία, τη γλωσσολογία, τη νομική, την ιατρική, τα οικονομικά και τη διοίκηση επιχειρήσεων. Προς τιμήν του Άλαν Τούρινγκ, κάθε έτος από το 1966 κι έπειτα ο διεθνής «Σύλλογος Μηχανημάτων Υπολογισμού» (Association for Computing Machinery, ACM) απονέμει το Βραβείο Τούρινγκ σε έναν επιστήμονα του χώρου με αναγνωρισμένη σημαντική συνεισφορά. Το Βραβείο Τούρινγκ έχει αποκληθεί «Βραβείο Νόμπελ της πληροφορικής»[15].

Ετυμολογία της πληροφορικής

Το 1957 επινοήθηκε ο όρος informatik από τον Γερμανό επιστήμονα Καρλ Στάινμπουχ (Karl Steinbuch), ο οποίος εξέδωσε μία εργασία με τίτλο Informatik: Automatische Informationsverarbeitung («Πληροφορική: Αυτόματη Επεξεργασία Πληροφοριών»)[16]. Από εκεί προέκυψε κατόπιν, ως δάνειο, η αγγλική λέξη informatics (=πληροφορική). Την ίδια περίοδο στις ΗΠΑ, ο όρος computer science (=επιστήμη υπολογιστών) εμφανίστηκε γραπτώς το 1959 σε επιστημονικό άρθρο[17] ο συγγραφέας του οποίου ζητούσε την ίδρυση «Σχολής Επιστημών Υπολογιστών» (School of Computer Sciences), κατ' αναλογία με τη «Σχολή Διοίκησης Επιχειρήσεων» του Πανεπιστημίου του Χάρβαρντ που είχε ιδρυθεί το 1921. Το προτεινόμενο όνομα δικαιολογούνταν με το σκεπτικό ότι αυτή η «επιστήμη υπολογιστών», όπως η «επιστήμη διαχείρισης» (η σημερινή επιχειρησιακή έρευνα) είναι εφαρμοσμένος και διεπιστημονικός γνωστικός τομέας, αλλά με όλα τα χαρακτηριστικά ενός διακριτού ακδημαϊκού πεδίου. Οι εν λόγω προσπάθειες ευοδώθηκαν και αρκετά Πανεπιστήμια στις ΗΠΑ άρχισαν να ιδρύουν Τμήματα Πληροφορικής υπό τον τίτλο «Επιστήμης Υπολογιστών», με πρώτο το Πανεπιστήμιο Περντιού το 1962[12].

Το 1962 επινοήθηκε επίσης ο ομόηχος με το γερμανικό informatik όρος informatique, από τον Γάλλο Φιλίπ Ντρέυφους[18], ως συνδυασμός των λέξεων information (=πληροφορία) και automatic (=αυτόματη), προκειμένου να περιγραφεί η επιστήμη της αυτόματης επεξεργασίας πληροφοριών. Από τα γαλλικά ο όρος πέρασε στις υπόλοιπες λατινογενείς γλώσσες, στις σλαβικές γλώσσες και, τελικά, στα ελληνικά ως πληροφορική. Η κατάληξη (-ique στα γαλλικά, -ics στα αγγλικά, -ική στα ελληνικά) επιλέχθηκε ώστε να ταιριάζει με προϋπάρχοντα ονόματα επιστημονικών πεδίων αλλά και πρακτικών εφαρμογών (π.χ. φυσική, πολιτική, τακτική κλπ). Το 1966, ο Δανός επιστήμονας Πέτερ Νάουρ πρότεινε εναλλακτικά τον όρο datalogy (ελεύθερη απόδοση: δεδομενολογία) για να περιγράψει την πληροφορική, δίνοντας έτσι λεκτική έμφαση όχι στους ίδιους τους υπολογιστές αλλά στην αξιοποίησή τους για αυτοματοποιημένη επεξεργασία δεδομένων[19], όμως η προσπάθεια αυτή δεν είχε απήχηση και ο όρος περιορίστηκε στις σκανδιναβικές χώρες.

Το γαλλογερμανικό informatik / informatique πολύ γρήγορα μετά την εμφάνισή του, ύστερα από μία αρχική περίοδο σύγχυσης, άρχισε να γίνεται αντιληπτό ως συνώνυμο του αγγλοσαξονικού όρου computer science[20]. Ωστόσο η επιστήμη υπολογιστών κατανοείται εναλλακτικά και ως ένα πιο περιορισμένο επιστημονικό πεδίο, προσανατολισμένο μόνο στη θεωρητική πληροφορική και στα μαθηματικά της θεμέλια (όπως συμβαίνει στο διάσημο απόφθεγμα του Έντσγκερ Ντάικστρα)[21]. Σε κάθε περίπτωση, στα γερμανικά η λέξη informatik συνιστά την ορθή μετάφραση του αγγλικού όρου computer science.

Φιλοσοφία της πληροφορικής

Η φιλοσοφία της πληροφορικής, ή φιλοσοφία της επιστήμης υπολογιστών, σχηματίστηκε σταδιακά ως τομέας ακαδημαϊκής μελέτης κατά το δεύτερο ήμισυ του 20ου αιώνα, παράλληλα με την ίδια την πληροφορική, αλλά μόνο μετά την αλλαγή της χιλιετίας, το 2000, άρχισε να αποτελεί διακριτό γνωστικό αντικείμενο, στα πρότυπα άλλων κλάδων της φιλοσοφίας της επιστήμης. Εξαίρεση αποτελεί το επιμέρους πεδίο της ονόματι φιλοσοφία της τεχνητής νοημοσύνης, το οποίο είχε αναδυθεί ταυτόχρονα με την ίδια την τεχνητή νοημοσύνη ήδη από τη δεκαετία του '50, σε επικάλυψη με την προϋπάρχουσα φιλοσοφία της νόησης και παράλληλα με τον διακλαδικό τομέα της γνωσιακής επιστήμης (συμβατικά αποδεκτό έτος εμφάνισης: 1956[22]). Παρακάτω, επομένως, εξετάζεται συνοπτικά η φιλοσοφία της πληροφορικής χωρίς να περιλαμβάνεται στην εν λόγω περιγραφή η φιλοσοφία της τεχνητής νοημοσύνης, λόγω της διαφορετικής ιστορικής διαδρομής, αν και στην πραγματικότητα πρόκειται για το πιο πλούσιο και θεωρητικά μελετημένο πεδίο της φιλοσοφίας της πληροφορικής.

Η ταυτότητα των προγραμμάτων

Ένα στιγμιότυπο πηγαίου κώδικα σε γλώσσα προγραμματισμού Java.

Η οντολογική όψη της διάκρισης μεταξύ υλικού και λογισμικού, καθώς και ο εγγενώς διττός χαρακτήρας των προγραμμάτων, συνιστούν ένα βασικό αντικείμενο διερεύνησης στον τομέα. Υλικό και λογισμικό είναι λογικά ισοδύναμα: οτιδήποτε μπορεί να γραφεί ως λογισμικό (σύνολο εντολών προς το υλικό) μπορεί να υλοποιηθεί εναλλακτικά απευθείας σε υλικό, και αντιστρόφως[23]. Ακόμα, ένα πρόγραμμα μπορεί να ιδωθεί είτε ως επεξεργάσιμο κείμενο (πηγαίος κώδικας) είτε ως αφηρημένη, μηχανική διαδικασία υπολογισμού (υλοποίηση αλγορίθμου εκτελούμενη στον υλικό επεξεργαστή). Έτσι, ένα σημαντικό μέρος του τομέα αφιερώνεται στη θεωρητική εξέταση των οντολογικών ερωτημάτων που προκύπτουν από αυτές τις ισοδυναμίες και διττότητες[24]. Μία δυνατότητα επίλυσης του δυϊσμού των προγραμμάτων είναι η αναγόρευση της «διαδικαστικής» όψης ενός προγράμματος σε υλοποίηση της «κειμενικής» του όψης, όμως τότε το ερώτημα απλώς μετατοπίζεται στο ποια είναι η οντολογική φύση μίας σχέσης υλοποίησης και ποια είναι η διαφορά μεταξύ της υλοποίησης πηγαίου κώδικα σε εκτελέσιμο κώδικα (από έναν μεταγλωττιστή) και της υλοποίησης λογισμικού σε υλικό (από έναν μηχανικό υπολογιστών). Μία ενδεχόμενη απάντηση είναι η θέαση του λογισμικού ως αφηρημένης οντότητας, η οποία εκφράζει μία συγκεκριμένη αλληλουχία διατάξεων του υλικού (διαδικαστική όψη / μέσον εκτέλεσης) και ταυτόχρονα περιγράφεται συνοπτικά από μία ισοδύναμη αλληλουχία γλωσσικών συμβόλων (κειμενική όψη / μέσον περιγραφής). Η υλοποίηση, τότε, δεν είναι παρά η απεικόνιση ενός μέσου περιγραφής στο κατάλληλο μέσον εκτέλεσης. Όμως, σε αυτή την περίπτωση, εγείρεται το ερώτημα του πότε δύο προγράμματα θεωρούνται ταυτόσημα: όταν η κειμενική τους όψη ταυτίζεται ή όταν συμπίπτουν λειτουργικά στη διαδικαστική τους όψη; Πρόκειται για ένα σύνθετο ζήτημα διότι δύο διαφορετικοί πηγαίοι κώδικες μπορούν να μεταγλωττίζονται στην ίδια γλώσσα μηχανής, ή εναλλακτικά να παράγουν στη διαδικαστική τους όψη αλγοριθμικά τελείως ισοδύναμες συμπεριφορές.

Έτσι το πρόβλημα μετατοπίζεται εκ νέου, στη φύση της σχέσης μεταξύ προγράμματος και αλγορίθμου. Θα μπορούσε να διατυπωθεί πως οι αλγόριθμοι είναι αφηρημένες μαθηματικές κατασκευές, ενώ τα προγράμματα στέρεες υλοποιήσεις τους. Η θέση αυτή συνδέεται με ορισμένες πλατωνικής φύσης αντιλήψεις στη φιλοσοφία των μαθηματικών, σχετικά με την οντολογική κατάσταση των μαθηματικών αντικειμένων, και ενισχύει τη θέαση της κειμενικής όψης των προγραμμάτων ως απλών γλωσσικών περιγραφών: όχι πια της διαδικαστικής τους όψης, αλλά ενός μαθηματικού αλγοριθμικού κατασκευάσματος. Εναλλακτικά, μια μη πλατωνική οπτική αντιλαμβάνεται τους αλγορίθμους όχι ως αυθύπαρκτα αφηρημένα αντικείμενα μα ως απλή λεκτική σύνοψη των ιδεών οι οποίες περιέχονται στη διαδικαστική όψη ενός προγράμματος και περιγράφονται αναλυτικά στον πηγαίο κώδικα. Έτσι, από αυτή την οπτική γωνία, ο αλγόριθμος δεν είναι παρά μία σύνοψη της κειμενικής όψης ενός προγράμματος, επικεντρωμένη στις βασικές ιδέες της: στο εν λόγω σκεπτικό θεμελιώνεται το νομικό επιχείρημα κατά της δυνατότητας κατοχύρωσης πνευματικών δικαιωμάτων επί αλγορίθμων, τη στιγμή που παντού στον πλανήτη ορίζονται πνευματικά δικαιώματα επί πηγαίου κώδικα.

Μία συγγενής διένεξη αφορά τη διάκριση μεταξύ τυπικών προδιαγραφών και προγραμμάτων. Συμβατικά, θεωρείται πως οι προδιαγραφές ορίζουν μόνο ποιες είναι οι δυνατές είσοδοι και οι αντίστοιχες κατάλληλες έξοδοι ενός προγράμματος, ενώ το τελευταίο περιέχει ένα πλήρες σύνολο βήμα-προς-βήμα εντολών προς τον επεξεργαστή. Ο ορισμός αυτός έχει πράγματι ισχύ για τη γλώσσα μηχανής (τη διαδικαστική όψη των προγραμμάτων) και για τις προστακτικές γλώσσες προγραμματισμού, καταρρέει όμως τελείως όταν ως «πρόγραμμα» θεωρούμε τον πηγαίο κώδικα πιο σύγχρονων δηλωτικών γλωσσών προγραμματισμού. Πράγματι, υπάρχει μία διαχρονική τάση στην ιστορία του προγραμματισμού ώστε η σύνταξη κώδικα να μοιάζει όλο και περισσότερο με σύνταξη τυπικών προδιαγραφών. Μία θεωρητική λύση στο θέμα της διάκρισης μεταξύ των δύο, δίνει η θέση πως οι γλώσσες προγραμματισμού συνοδεύονται κατ' αρχήν από μία υλοποίηση (δηλαδή μπορεί να γραφεί ένας μεταγλωττιστής για αυτές), ενώ οι γλώσσες προδιαγραφών όχι, διότι είναι εφικτό με αυτές να εκφραστούν έννοιες μη επιλύσιμες κατά Τούρινγκ (δηλαδή μη αλγοριθμίσιμες). Το ζήτημα ωστόσο παραμένει ανοικτό στη φιλοσοφία της πληροφορικής, αφού μοιάζει τουλάχιστον ιδιόρρυθμο να ορίζονται οι γλώσσες προδιαγραφών με γνώμονα το ότι μπορούν να περιγράψουν μη επιλύσιμα υπολογιστικά προβλήματα[24].

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

Η τυπική σημασιολογία μίας γλώσσας προγραμματισμού ορίζει, με βάση προκαθορισμένες συμβάσεις, το νοηματικό περιεχόμενο ενός πηγαίου κώδικα, ώστε κάθε αντίστοιχος μεταγλωττιστής να μπορεί να τον μεταφράσει σε γλώσσα μηχανής χωρίς αμφισημίες. Η σημασιολογία όμως μπορεί να περιγραφεί σε διαφορετικά επίπεδα αφαίρεσης με διαφορετικούς στόχους, όπως π.χ. στο επίπεδο της λειτουργικής σημασιολογίας (όπου ο κώδικας ερμηνεύεται ως αλληλουχία εντολών προς μία αφηρημένη, μαθηματικά ορισμένη «υπολογιστική μηχανή», εφοδιασμένη με ένα εικονικό σύνολο εντολών υψηλού επιπέδου) ή της δηλωτικής σημασιολογίας (όπου ο κώδικας ερμηνεύεται ως σύνολο από δομές κάποιου μη μηχανικής υφής μαθηματικού φορμαλισμού, βασισμένου π.χ. στη θεωρία πεδίων). Η θεωρητική πληροφορική εξετάζει τις τυπικές διαδικασίες και τις ιδιότητες αυτών των μηχανισμών, όμως ερωτήματα όπως το κατά πόσο οι εν λόγω εναλλακτικές σημασιολογίες μίας γλώσσας διαφέρουν ή ταυτίζονται σε θεμελιώδες επίπεδο, έχουν περισσότερο φιλοσοφικό παρά επιστημονικό χαρακτήρα[24].

Ένα κύριο ζήτημα αφορά το αν και ποια σημασιολογία τοποθετείται εγγύς της πραγματικής υλοποίησης (της τελικής, διαδικαστικής όψης του προγράμματος) και ποια είναι περισσότερο ένα αφηρημένο μαθηματικό κατασκεύασμα. Από μία σκοπιά, όλες οι τυπικές σημασιολογίες δεν είναι παρά αφηρημένα μαθηματικά κατασκευάσματα, αλλά ακόμα και η δηλωτική σημασιολογία, φαινομενικά πολύ απομακρυσμένη από το υλικό μηχανικό υπόστρωμα, είναι σε θέση να εκφράσει αρκετές λεπτομέρειες της πραγματικής υλοποίησης[24] - ως αποτέλεσμα δεν υπάρχει ευρεία συναίνεση σε αυτό το θέμα. Μία εναλλακτική προσέγγιση στο ίδιο ζήτημα αξιοποιεί την έννοια της σύνθεσης: μία τυπική σημασιολογία καλείται συνθετική αν η σημασιολογική τιμή μίας σύνθετης έκφρασης σ' αυτήν αποτελεί συνάρτηση των σημασιολογικών τιμών των συστατικών της μερών. Ωστόσο, αν και η δηλωτική σημασιολογία είναι σχεδιασμένη ως συνθετική (γεγονός που εξηγεί τη μεγάλη της εκφραστική δύναμη), μία λειτουργική σημασιολογία επίσης μπορεί να φέρει τα χαρακτηριστικά της σύνθεσης. Επομένως, ένας ευδιάκριτος θεμελιώδης εννοιολογικός διαχωρισμός μεταξύ λειτουργικών και δηλωτικών σημασιολογιών, έχει αποδειχθεί μέχρι στιγμής ανέφικτος.

Η καθιερωμένη αντίληψη θεωρεί πως η διαδικασία της υλοποίησης ενός προγράμματος, η μεταγλώττιση του πηγαίου κώδικα σε γλώσσα μηχανής, δεν είναι παρά μία απεικόνιση από το πεδίο της σύνταξης στο σημασιολογικό πεδίο, με βάση ένα σύνολο κανόνων. Η εν λόγω θέση όμως υπόρρητα εκλαμβάνει την υλική μηχανή (το λειτουργικό σύνολο επεξεργαστή, κύριας μνήμης κλπ.) ως τελικό φορέα της σημασιολογίας, και άρα του νοήματος του προγράμματος, καθώς αυτή εκτελεί το λογισμικό του μεταγλωττιστή: η μηχανή φέρει εις πέρας την απεικόνιση της κειμενικής σε διαδικαστική όψη κι έτσι νοηματοδοτεί τον κώδικα. Η προσέγγιση αυτή έχει δειχθεί ως ανεπαρκής[24]: π.χ. σε περίπτωση ηλεκτρικής δυσλειτουργίας του επεξεργαστή ενώ εκτελείται η μεταγλώττιση, ο παραχθείς κώδικας έχει μεγάλη πιθανότητα να είναι εσφαλμένος. Σύμφωνα με ποια κριτήρια όμως μπορεί να κριθεί εσφαλμένος αν η υλοποίηση έχει γίνει από την ίδια τη μηχανή που «έσφαλλε»; Άρα, απαιτείται μία πηγή νοημοτοδότησης του πηγαίου κώδικα εξωτερική της υλικής υπολογιστικης μηχανής η οποία φέρει εις πέρας τη μεταγλώττιση.

Εκπαίδευση και επαγγελματικά ζητήματα

Το Τμήμα Πληροφορικής στο Πολυτεχνείο της Δρέσδης.

Ελλάδα

Στην Ελλάδα, σε επίπεδο ανώτατης εκπαίδευσης, τα πανεπιστημιακά τμήματα με τίτλο «Επιστήμης Υπολογιστών», «Πληροφορικής» και «Μηχανικών Πληροφορικής» έχουν παρόμοιο πρόγραμμα σπουδών, μπορούν όμως να ανήκουν σε διαφορετικές σχολές (Θετικών Επιστημών, Οικονομικών ή Πολυτεχνεία). Η διάρκεια σπουδών είναι τέσσερα ή πέντε έτη (πέντε στο Πολυτεχνείο), με τους αποφοίτους των πενταετούς διάρκειας τμημάτων να αποκαλούνται μηχανικοί πληροφορικής. Ορισμένα τμήματα έχουν πιο διακλαδικό χαρακτήρα, όπως π.χ. τα τμήματα «Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής» τα οποία εστιάζουν στην τομή πληροφορικής και ηλεκτρονικής μηχανικής, τα τμήματα «Πληροφορικής και Τηλεπικοινωνιών» ή «Μηχανικών Πληροφορικής και Τηλεπικοινωνιών» τα οποία εστιάζουν στην τομή πληροφορικής και τηλεπικοινωνιών κοκ. Τα τμήματα σε σχολές Οικονομικών (με τίτλους όπως «Εφαρμοσμένης Πληροφορικής») συνήθως επικεντρώνονται στην ανάπτυξη και εφαρμογή προϊόντων πληροφορικής για την αντιμετώπιση επιχειρηματικών αναγκών (πληροφοριακά συστήματα).

Η εμφάνιση πανεπιστημιακών τμημάτων «Πληροφορικής» στην Ελλάδα έγινε το 1980, με την ίδρυση του Τμήματος Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών και, στη συνέχεια, το 1984, με το Τμήμα Επιστήμης Υπολογιστών της Σχολής Θετικών Επιστημών του Πανεπιστημίου Κρήτης. Τμήματα με παρόμοιους ή πανομοιότυπους τίτλους υπάρχουν και σε ΑΤΕΙ, συνήθως σε Σχολές Τεχνολογικών Εφαρμογών, ενώ μία λίστα των ανάλογων τμημάτων μπορεί να βρεθεί στην κατάλληλη ενότητα του άρθρου κατάλογος ελληνικών τμημάτων ανώτατης εκπαίδευσης. Τα περισσότερα από αυτά τα τμήματα διαθέτουν και μεταπτυχιακό πρόγραμμα σπουδών, ενώ σε άλλες χώρες υπάρχουν και ομοειδή τμήματα ανώτατης εκπαίδευσης με τριετή προπτυχιακή φοίτηση.

Στην Ελλάδα, σύμφωνα με το ΦΕΚ 58Α-2009 ΠΔ44, οι διπλωματούχοι ή πτυχιούχοι απόφοιτοι των ΑΕΙ με τίτλο «Πληροφορικής» ή συναφή, αναγνωρίζεται πως έχουν την ικανότητα να ασχοληθούν ενδεικτικά με δραστηριότητες όπως μελέτη, σχεδίαση, ανάλυση, υλοποίηση, εγκατάσταση, επίβλεψη, λειτουργία, αξιολόγηση, διενέργεια πραγματογνωμοσύνης και πιστοποίηση στους επιστημονικούς τομείς:

Ακόμα, από τους ανωτέρω αποφοίτους οι διπλωματούχοι (απόφοιτοι τμημάτων πενταετούς φοίτησης) καθώς και οι πτυχιούχοι των (τετραετούς φοίτησης) Τμημάτων «Επιστήμης και Τεχνολογίας Τηλεπικοινωνιών» και «Πληροφορικής και Τηλεπικοινωνιών», δύνανται επιπροσθέτως να απασχοληθούν και στον επιστημονικό τομέα των τηλεπικοινωνιακών συστημάτων και δικτύων.

Όλοι οι απόφοιτοι των ΑΕΙ με τίτλο «Πληροφορικής» ή συναφή, έχουν επίσης τη δυνατότητα να απασχοληθούν επαγγελματικά στην επιστημονική έρευνα (σε δημόσια ή ιδιωτικά ιδρύματα), στη διδασκαλία σε δευτεροβάθμια ή τριτοβάθμια εκπαιδευτικά ιδρύματα, καθώς και στην παροχή υπηρεσιών σε μονάδες πληροφορικής, δικτύων υπολογιστών, μηχανοργάνωσης και τεχνικών υπηρεσιών στον δημόσιο και στον ιδιωτικό τομέα. Για τη διδασκαλία στη Δευτεροβάθμια Εκπαίδευση ωστόσο, απαιτείται επιπροσθέτως και λήψη πιστοποίησης παιδαγωγικής επάρκειας, σύμφωνα με το ΦΕΚ 71A-2010 Ν.3848.

Όλες οι ανωτέρω ρυθμίσεις ισχύουν και για τους διπλωματούχους ηλεκτρολόγους ή ηλεκτρονικούς μηχανικούς, καθώς η πληροφορική και η επιστήμη ηλεκτρονικού μηχανικού επικαλύπτονται σε σημαντικό βαθμό[25].

Πέρα από τους εν λόγω κανονισμούς, στην Ελλάδα δεν υφίσταται κάποιο αυστηρό νομοθετικό πλαίσιο ρύθμισης των τεχνολογιών πληροφοριών και επικοινωνίας, ούτε κάποιο επαγγελματικό επιμελητήριο ειδικά για τους επαγγελματίες του κλάδου. Υφίστανται ωστόσο οι επιστημονικές ενώσεις Ένωση Πληροφορικών Ελλάδας[26] και Ένωση Μηχανικών Πληροφορικής και Επικοινωνιών Ελλάδας[27].

Κλάδοι της πληροφορικής

Η πληροφορική συνίσταται σε πέντε βασικούς κλάδους. Τα επιμέρους πεδία τους παρατίθενται παρακάτω, από κοινού με τα θεμελιώδη πεδία των μαθηματικών στα οποία η πληροφορική εν πολλοίς στηρίζεται (ενότητα «Μαθηματικά θεμέλια»).

Σημαντικοί επιστήμονες

Πρόδρομοι

Πρόσωπο Επίτευγμα
Ραμόν Λουλ (Ramon Llull): Για τις πολλαπλές μηχανές συμβολικής αναπαράστασης, την εργασία του Ars Combinatoria, και τις πρωτοποριακές του ιδέες της συμβολικής αναπαράστασης και χειρισμού των συμβόλων αυτών για την παραγωγή γνώσης. Επηρέασε σημαντικά τον Λάιμπνιτς.
Γκότφριντ Βίλχελμ Λάιμπνιτς (Gottfried Wilhelm Leibniz): Η μεγάλη συνεισφορά του στη συμβολική λογική, κυρίως με την εργασία του Calculus Ratiocinator, επηρέασε σημαντικά τον Γκότλομπ Φρέγκε, του οποίου η ανάπτυξη του κατηγορηματικού λογισμού πρώτης τάξης ήταν κρίσιμη για τη θεωρητική θεμελίωση της πληροφορικής.
Τσαρλς Μπάμπατζ (Charles Babbage): Σχεδίασε και κατασκεύασε το πρωτότυπο ενός μηχανικού υπολογιστή, ενώ στη συνέχεια σχεδίασε την, ακόμα πιο ισχυρή, Αναλυτική Μηχανή.
Άντα Λάβλεϊς (Ada Lovelace): Κόρη του Λόρδου Βύρωνα και βοηθός του Τσαρλς Μπάμπατζ. Μελέτησε επιστημονικά την έννοια του υπολογισμού και με την εργασία της Προσχέδιο μιας αναλυτικής μηχανής ανέλυσε το έργο του Μπάμπατζ. Η γλώσσα προγραμματισμού Ada ονομάστηκε έτσι προς τιμήν της.
Γκότλομπ Φρέγκε (Friedrich Ludwig Gottlob Frege): Η ανάπτυξη του κατηγορηματικού λογισμού πρώτης τάξης από τον Φρέγκε αποτέλεσε σημαντικό προαπαιτούμενο για την ανάπτυξη της θεωρίας υπολογισμού.
Κούρτ Γκέντελ (Kurt Gödel): Ιστορική υπήρξε η απόδειξή του (1931) ότι η αριθμητική βασισμένη σε αξιώματα του Πεάνο δεν μπορεί να είναι και λογικά συνεπής και πλήρης στον κατηγορηματικό λογισμό πρώτης τάξης. Ο Βιττγκενστάιν στην ύστερή του περίοδο ανέπτυξε ισχυρή κριτική στο έργο του.
Αλόνζο Τσερτς (Alonso Church): Συνεισέφερε στη θεμελίωση της θεωρίας υπολογισμού, ιδιαίτερα με την ανάπτυξη του λογισμού-λ και τη διερεύνηση μέσω αυτού του προβλήματος της μη-αποφασισιμότητας.
Στίβεν Κολ Κλέινι (Stephen Cole Kleene): Πρωτοποριακή δουλειά με τον Αλόνζο Τσερτς στον λογισμό-λ, με τον οποία τέθηκαν τα θεμέλια της θεωρίας υπολογισμού.
Άλαν Τούρινγκ (Alan Turing): Θεμελιώδεις υπήρξαν οι συνεισφορές του στη θεωρία υπολογισμού, κι επομένως στην αυτονόμηση της πληροφορικής από τα μαθηματικά, στην αυστηρή διατύπωση των εννοιών του υπολογισμού και του αλγορίθμου μέσω της Μηχανής Τούρινγκ, καθώς και στον σχεδιασμό του Pilot ACE. Ο Τούρινγκ θεωρείται ο «πατέρας της πληροφορικής και της τεχνητής νοημοσύνης».
Μόρις Γουάιλκς (Maurice Wilkes): Κατασκεύασε τον πρώτο υπολογιστή με αποθηκευμένο πρόγραμμα, ενώ του αποδίδονται και πολλές ιδέες δομών υψηλού επιπέδου γλωσσών προγραμματισμού.
Κόνραντ Τσούζε (Konrad Zuse): Κατασκεύασε τον ψηφιακό υπολογιστή Z3, τον πρώτο που λειτούργησε με το δυαδικό σύστημα αρίθμησης, για τον οποίο επινόησε επίσης και τη γλώσσα προγραμματισμού υψηλού επιπέδου, Plankalkül.
Τζον Βίνσεντ Ατανάσοφ (John Vincent Atanasoff): Κατασκεύασε τον πρώτο ηλεκτρονικό ψηφιακό υπολογιστή, τον ABC. Αντίθετα με τον ENIAC, ο οποίος θεωρείται ο πρώτος πλήρης ηλεκτρονικός υπολογιστής που σχεδιάστηκε να είναι Τούρινγκ-πλήρης, ο ABC δεν ήταν προγραμματίσιμος.
Τζον Μάκλεϊ και Τζέι Πρέσπερ Έκερτ (John Mauchly και J. Presper Eckert): Σχεδίασαν και κατασκεύασαν τον ENIAC, τον πρώτο ηλεκτρονικό Τούρινγκ-πλήρη υπολογιστή και τον UNIVAC I, τον πρώτο διαθέσιμο εμπορικά υπολογιστή στις Η.Π.Α.. Η εργασία τους στον ENIAC στο Πανεπιστήμιο της Πενσυλβάνια επηρέασε σημαντικά τον Τζον φον Νόιμαν στο Ίδρυμα Προηγμένων Ερευνών, καθώς η εργασία τους στην αρχιτεκτονική υπολογιστών ήταν πρωτοποριακή.
Τζον φον Νόιμαν (John von Neumann): Επινόησε την αρχιτεκτονική φον Νόιμαν, πάνω στην οποία βασίζονται οι σύγχρονοι υπολογιστές. Ακόμα, εφηύρε τα κυτταρικά αυτόματα.
Κλοντ Σάνον (Claude E. Shannon): Υπήρξε ο θεμελιωτής της θεωρίας πληροφορίας και το έργο του βοήθησε στην έναρξη της σύγχρονης εποχή των τηλεπικοινωνιών. Επίσης επηρέασε την πρώιμη κυβερνητική.

Επιστήμονες υπολογιστών

Πρόσωπο Επίτευγμα
Άλαν Πέρλις (Alan Jay Perlis): Επινόησε προηγμένες μεθόδους προγραμματισμού υπολογιστών και κατασκευής μεταγλωττιστών. Υπήρξε ο πρώτος επιστήμονας που τιμήθηκε με Βραβείο Τούρινγκ (το 1966).
Γκρέις Μάρει Χόπερ (Grace Murray Hopper): Η Χόπερ έκανε πρωτοποριακή δουλειά στην υποστήριξη της αναγκαιότητας των γλωσσών προγραμματισμού υψηλού επιπέδου, που αποκάλεσε αυτόματο προγραμματισμό. Έγραψε επίσης τον μεταγλωττιστή Α-0 που επηρέασε την COBOL (Commercial Business Oriented Language).
Ρίτσαρντ Χάμινγκ (Richard Hamming): Συνεισέφερε στην αριθμητική ανάλυση και στην ανάπτυξη κωδίκων ανίχνευσης και διόρθωσης σφαλμάτων (απόσταση Hamming).
Τζέιμς Γουίλκινσον (James Wilkinson): Συνεισέφερε σημαντικά, με αποτελεσματικούς αλγορίθμους, στην αριθμητική ανάλυση και στην εφαρμοσμένη γραμμική άλγεβρα.
Τζον Μπάκους (John Backus): Επινόησε τη FORTRAN (Formula Translation), την πρώτη υψηλού επιπέδου γλώσσα προγραμματισμού, καθώς και τη μορφή Μπάκους-Νάουρ, ένα μετασυντακτικό για γραμματικές χωρίς συμφραζόμενα, με το οποίο περιέγραψε τη σύνταξή της.
Ντόναλντ Κνουθ (Donald Knuth): Για την πολύτομη σειρά βιβλίων Η τέχνη του προγραμματισμού υπολογιστών, τη θεωρητική συνεισφορά του στην ανάλυση αλγορίθμων και για το λογισμικό ψηφιακής τυπογραφίας TeX.
Τζον Μακάρθι (John McCarthy): Επινόησε τη LISP (List Programming), μια συναρτησιακή γλώσσα προγραμματισμού, και συνεισέφερε τα μέγιστα στη διαμόρφωση και εξέλιξη της πρώιμης τεχνητής νοημοσύνης.
Μάρβιν Μίνσκυ (Marvin Minsky): Υπήρξε πρωτοπόρος και επηρεαστικός ερευνητής και θεωρητικός της τεχνητής νοημοσύνης.
Ρόμπερτ Φλόιντ (Robert Floyd): Συνεισέφερε στην εξέλιξη της τυπικής επαλήθευσης, της σχεδίασης μεταγλωττιστών και στη θεωρία γράφων.
Άλεν Νιούελ και Χέρμπερτ Σάιμον (Allen Newell και Herbert Simon): Η από κοινού συμβολή τους στη διαμόρφωση και εξέλιξη της τεχνητής νοημοσύνης και της γνωσιακής επιστήμης, υπήρξε ανυπολόγιστη.
Έντσγκερ Ντάικστρα (Edsger Dijkstra): Σημαντική είναι η προσφορά του στην ανάλυση αλγορίθμων, στην απαξίωση της προγραμματιστικής εντολής goto, στην επινόηση των σημαφόρων κλπ. Ονομάσθηκε «πατέρας του παράλληλου προγραμματισμού» και υπήρξε πρωτοπόρος στη μελέτη των λειτουργικών συστημάτων.
Μάικλ Ράμπιν και Ντέινα Σκοτ (Michael Rabin και Dana Scott): Η από κοινού συνεισφορά τους στη θεωρία υπολογισμού, εφόσον υπήρξαν οι εισηγητές της έννοιας του μη πεπερασμένου αυτομάτου, είναι πολύ σημαντική.
Νίκλαους Βιρτ (Niklaus Wirth): Επινόησε τη γλώσσα προγραμματισμού Pascal, την οποία ονόμασε έτσι προς τιμήν του Γάλλου πρωτοπόρου Μπλεζ Πασκάλ (Blaise Pascal).
Τζέιμς Κούλεϊ και Τζον Τάκει (James W. Cooley και John W. Tukey): Επινόησαν έναν τρόπο για τον υπολογισμό του Ταχέως Μετασχηματισμού Φουριέ.
Τσαρλς Μπάκμαν (Charles Backman): Από τη θέση του ερευνητή σε ιδιωτικές βιομηχανίες και όχι ως ακαδημαϊκός, συνεισέφερε σημαντικό θεωρητικό και πρακτικό έργο στην εξέλιξη των βάσεων δεδομένων.
Όλε-Γιόχαν Ντάαλ και Κρίστεν Νίγκαρντ (Ole-Johan Dahl και Kristen Nygaard): Επινόησαν την πρώτη αντικειμενοστρεφή γλώσσα προγραμματισμού Simula (Simulation Language).
Κεν Τόμσον και Ντένις Ρίτσι (Ken Thomson και Dennis Ritchie): Σχεδίασαν τη γλώσσα προγραμματισμού C και το λειτουργικό σύστημα Unix, με ανυπολόγιστες συνέπειες στους σύγχρονους υπολογιστές.
Τόνυ Χόαρ (Tony Hoare): Ανέπτυξε την τυπική γλώσσα Επικοινωνούσες Ακολουθιακές Διεργασίες (CSP) και τον αλγόριθμο γρήγορης ταξινόμησης (Quicksort).
Άιβαν Σάδερλαντ (Ivan Sutherland): Είχε σημαντική επιρροή και καινοτόμες συνεισφορές στον τομέα των γραφικών υπολογιστών.
Φρέντερικ Μπρουκς (Frederick Brooks): Είχε σημαντική συνεισφορά, από τη δεκαετία του 1960, στην αρχιτεκτονική υπολογιστών, στα λειτουργικά συστήματα και στη μηχανική λογισμικού.
Κένεθ Άιβερσον (Kenneth Iverson): Επινόησε τη γλώσσα προγραμματισμού APL (A Programming Language) και συνεισέφερε στον κλάδο της αλληλεπίδρασης ανθρώπου-υπολογιστή.
Έντγκαρ Κοντ (Edgar Codd): Επινόησε το επικρατές σχεσιακό μοντέλο στις βάσεις δεδομένων.
Ντάγκλας Ένγκελμπαρτ (Douglas Engelbart): Για τη συνεισφορά του στον χώρο της αλληλεπίδρασης ανθρώπου-υπολογιστή, με πρωτοποριακές τεχνολογίες όπως το ποντίκι, τα γραφικά περιβάλλοντα χρήστη και το υπερκείμενο, το οποίο αξιοποιήθηκε κατόπιν στο Διαδίκτυο.
Τζάσεκ Καρπίνσκι (Jacek Karpinski): Ανάπτυξε τον πρώτο διαφορικό αναλυτή που χρησιμοποιούσε τρανζίστορ, και επίσης ανέπτυξε έναν από τους πρώτους αλγόριθμους αναγνώρισης εικόνων και χαρακτήρων. Τέλος, είναι ο εφευρέτης του πρώτου μίνι-υπολογιστή, του K-202.
Στίβεν Κουκ (Steven Cook): Συνεισέφερε σημαντικά στη σύγχρονη θεωρία υπολογισμού.
Ρίτσαρντ Καρπ (Richard Karp): Είχε σημαντική συμβολή στη θεωρία της ανάλυσης αλγορίθμων και στη μελέτη προβλημάτων συνδυαστικής βελτιστοποίησης.
Τζον Χόπκροφτ και Ρίτσαρντ Τάρτζαν (John Hopcroft και Richard Tarjan): Τα επιτεύγματά τους κινούνται στον χώρο της σχεδίασης και ανάλυσης αλγορίθμων και της μελέτης των δομών δεδομένων.
Χρήστος Παπαδημητρίου Συνεισέφερε σημαντικά στη θεωρία υπολογισμού και, ευρύτερα, στη θεωρητική πληροφορική.
Ουίλιαμ Κάαν (William Kahan): Επινόησε καινοτόμες μεθόδους στην αριθμητική ανάλυση και στην αριθμητική κινητής υποδιαστολής.
Τζον Κοκ (John Cocke): Συνεισέφερε στη σχεδίαση και θεωρία των μεταγλωττιστών, καθώς και στην ανάπτυξη των αρχιτεκτονικών RISC στη μηχανική υπολογιστών.
Μπιάρνε Στρούστρουπ (Bjarne Stroustrup): Εφηύρε τη γλώσσα προγραμματισμού C++, εξοπλίζοντας τη C με ισχυρά χαρακτηριστικά αντικειμενοστρέφειας.
Άντριου Τάνενμπαουμ (Andrew Tanenbaum): Επίβλεψε την κατασκευή του λειτουργικού συστήματος Minix (μία δωρεάν παραλλαγή του Unix για διδακτικούς σκοπούς, σχεδιασμένη για το IBM PC) και συνεισέφερε σημαντικά στην έρευνα επί των υπολογιστικών συστημάτων.
Τιμ Μπέρνερς-Λι (Tim Berners-Lee): Επινόησε τον Παγκόσμιο Ιστό ως υπηρεσία του Διαδικτύου.

Αναφορές

  1. Department of Computer and Information Science, Guttenberg Information Technologies: «Computer science is the study of information»
  2. Computer Science Department, College of Saint Benedict, Saint John's University: «Computer science is the study of computation»
  3. Massey University: «Computer Science is the study of all aspects of computer systems, from the theoretical foundations to the very practical aspects of managing large software projects»
  4. 4,0 4,1 Εγκυκλοπαίδεια Φιλοσοφίας του Στάνφορντ: «Computer science would be better described as being concerned with the meta-activity that is associated with programming. More generally, and more precisely, it is occupied with the design, development and investigation of the concepts and methodologies that facilitate and aid the specification, development, implementation and analysis of computational systems. »
  5. Merriam-Webster and American Heritage Dictionary.
  6. 6,0 6,1 6,2 Know your Discipline: Teaching the Philosophy of Computer Science
  7. 7,0 7,1 «Globalization, information and communcation technologies, and the prospect of a "Global Village": Promises of inclusion or electronic colonization?»
  8. Flake Gary William, The Computational Beauty of Nature, 2000, The MIT Press
  9. Κολλέγιο Swarthmore: «Computer science is the study of algorithms and their implementation. This includes the study of computer systems; methods to specify algorithms (for people and computer systems); and the formulation of theories and models to aid in the understanding and analysis of the properties of algorithms, computing systems, and their interrelationship.»
  10. Netherlands Institute for Advanced Study in the Humanities and Social Sciences: «Informatics has been called the science of the 21st century, but can we predict its future? Let me reflect a little on the field which we also call Computer Science or, more elaborately, Information and Computing Sciences. Some may even prefer the term ICT, although this only covers the applied side of the field.»
  11. «Η Πληροφορική ως επιστήμη οριοθετείται, σε επίπεδο σπουδών, από 36 βασικά αντικείμενα (http://review.epe.org.gr/doc.php?q=4) κατά τα διεθνή πρότυπα (ACM, AIS, IEEE, Computing Curricula 2005 http://www.acm.org/education/curricula-recommendations) τα οποία ακολουθούμε και τα χρησιμοποιούμε για την αξιολόγηση των προγραμμάτων σπουδών των Ελληνικών τμημάτων Πληροφορικής (http://review.epe.org.gr/doc.php?q=5&d=al).»
  12. 12,0 12,1 George Forsythe and the Development of Computer Science
  13. Ωστόσο, η πρώτη επιχείρηση κατασκευής και πώλησης λογισμικού είχε εμφανιστεί ήδη από το 1955, βλ. Elmer C. Kubie (Summer 1994). Recollections of the first software company IEEE Annals of the History of Computing (IEEE Computer Society).
  14. Το 2008 η βιομηχανία εμπορικού λογισμικού είχε διεθνώς αξία 288 δισεκατομμυρίων δολαρίων, βλ. Business Software Alliance: Software Industry Facts and Figures
  15. «Widely known as the 'Nobel Prize' of computing, the Turing Award recognizes individuals for contributions of lasting and major technical importance to the computing field.»
  16. Karl Steinbuch Eulogy - Bernard Widrow, Reiner Hartenstein, Robert Hecht-Nielsen
  17. Louis Fine (1959). «The Role of the University in Computers, Data Processing, and Related Fields». Communications of the ACM 2 (9): 7–14. doi:10.1145/368424.368427. 
  18. Dreyfus, Phillipe. L’informatique. Gestion, Paris, Jun 1962, pp. 240–41
  19. Peter Naur (1966). «The science of datalogy». Communications of the ACM 9 (7): 485. doi:10.1145/365719.366510. 
  20. «What is "Computer Science" / "Informatics"? "Computer Science" – science about a tool? Better names would be: "science of computing" or "data processing science" (focuses on activity instead of tool). "Informatics": continental-European for "computer science" - French: "Informatique" (since 1960s) - German: "Informatik" Definition: "Science of the systematical processing of information, especially the automatic processing by use of digital computers".»
  21. doi:10.1023/A:1018949113292
    , σελ. 19: «Rather than treat software engineering as a subfield of computer science, I treat it as an element of the set, Civil Engineering, Mechanical Engineering, Chemical Engineering, Electrical Engineering, [...]»
  22. J. Johnston, The Allure of Machinic Life, εκδ. MIT Press, 2008
  23. A. Tanenbaum, Η αρχιτεκτονική των υπολογιστών: Μια δομημένη προσέγγιση, εκδ. Κλειδάριθμος, 2000
  24. 24,0 24,1 24,2 24,3 24,4 Εγκυκλοπαίδεια Φιλοσοφίας του Στάνφορντ: The Philosophy of Computer Science
  25. Πανεπιστήμιο του Έξετερ: «Electronic Engineering and Computer Science are both concerned with enhancing our experience of the world and shaping the convenience of our future in terms of solving problems and developing products and systems which will increase the accuracy, speed and quality of information sources and technology. These disciplines are closely linked and specifically interweave in the manufacture of equipment such as pocket computer products like mobile phones or e-books.»
  26. Ιστοσελίδα της Ένωσης Πληροφορικών Ελλάδας
  27. Ιστοσελίδα της Ένωσης Μηχανικών Πληροφορικής και Επικοινωνιών Ελλάδας
CC-BY-SA
Μετάφραση
Στο λήμμα αυτό έχει ενσωματωθεί κείμενο από το λήμμα computer science της Αγγλικής Βικιπαίδειας, η οποία διανέμεται υπό την GNU FDL και την CC-BY-SA 4.0. (ιστορικό/συντάκτες).

Εξωτερικοί σύνδεσμοι