Επιστήμη υπολογιστών: Διαφορά μεταξύ των αναθεωρήσεων
| Γραμμή 38: | Γραμμή 38: | ||
{{Multicol-break}} | {{Multicol-break}} | ||
=== Μαθηματικά θεμέλια === | === Μαθηματικά θεμέλια === | ||
[[Αρχείο:6n-graf.svg| | [[Αρχείο:6n-graf.svg|thumb|220px]] | ||
* [[Αριθμητική ανάλυση]] | * [[Αριθμητική ανάλυση]] * [[Άλγεβρα Μπουλ]] * [[Διακριτά μαθηματικά]] * [[Θεωρία γράφων]] * [[Μαθηματική λογική]] * [[Θεωρία πεδίων]] * [[Πιθανότητες]] * [[Στατιστική]] * [[Επεξεργασία σήματος]] * [[Θεωρία πληροφοριών]] | ||
* [[Άλγεβρα Μπουλ]] | |||
* [[Διακριτά μαθηματικά]] | |||
* [[Θεωρία γράφων]] | |||
* [[Μαθηματική λογική]] | |||
* [[Θεωρία πεδίων]] | |||
* [[Πιθανότητες]] | |||
* [[Στατιστική]] | |||
* [[Επεξεργασία σήματος]] | |||
* [[Θεωρία πληροφοριών]] | |||
=== [[Θεωρητική πληροφορική]] === | === [[Θεωρητική πληροφορική]] === | ||
[[Αρχείο:DFAexample.svg|120px]] | [[Αρχείο:DFAexample.svg|120px]] | ||
Αναθεώρηση της 23:20, 27 Νοεμβρίου 2025
Ως επιστήμη υπολογιστών (computer science) ορίζεται ως η μελέτη αλγορίθμων, δεδομένων και υπολογιστικών διαδικασιών, με ιστορική εξέλιξη από θεωρητικά μοντέλα σε πρακτικές εφαρμογές[1]. Από τον 17ο αιώνα, μαθηματικοί όπως ο Napier εισήγαγαν λογαρίθμους για απλοποίηση υπολογισμών[2]. Η ακαδημαϊκή της μορφή εμφανίστηκε στα μέσα του 20ού αιώνα, επηρεασμένη από στρατιωτικές ανάγκες[3].
Θεωρητικά θεμέλια
Τα θεμέλια της ΕΥ βασίζονται σε μαθηματικά μοντέλα. Ο άβακας, εφευρεθείς περίπου το 2400 ΠΚΕ στη Βαβυλώνα, ήταν το πρώτο εργαλείο υπολογισμού[4]. Στον 3ο αιώνα ΠΚΕ ο Pingala ανέπτυξε το δυαδικό σύστημα, βάση για τη σύγχρονη λογική[5]. Το 1930 ο Church εισήγαγε τον λ-λογισμό για λειτουργικό προγραμματισμό[6]. Ο Turing, το 1936, πρότεινε τη Μηχανή Turing, θεωρητικό μοντέλο που ορίζει την υπολογισιμότητα[7].
Πρώιμοι υπολογιστές και μηχανική εποχή
Η μηχανική εποχή (1623-1945) χαρακτηρίστηκε από μηχανικές συσκευές. Το 1823, ο Babbage σχεδίασε τη Μηχανή Διαφορών για πολυωνυμικούς υπολογισμούς[8]. Το 1842, η Analytical Engine εισήγαγε προγραμματισμό με κάρτες, με την Ada Lovelace ως πρώτη προγραμματίστρια[9]. Το 1890 ο Hollerith χρησιμοποίησε διάτρητες κάρτες για την απογραφή των ΗΠΑ[10] Αυτές οι καινοτομίες έθεσαν βάσεις για αυτοματισμό[11].
Ηλεκτρονική εποχή και πρώτες γενιές
Η μετάβαση σε ηλεκτρονικούς υπολογιστές ξεκίνησε με τον Β' ΠΠ. Το 1941, ο Atanasoff ολοκλήρωσε το ABC, τον πρώτο ηλεκτρονικό υπολογιστή[12] Το 1945, το ENIAC, με λυχνίες κενού, χρησιμοποιήθηκε για βαλλιστικούς υπολογισμούς[13]. Η πρώτη γενιά (1937-1953) βασίστηκε σε λυχνίες, ενώ η δεύτερη (1954-1962) σε τρανζίστορ[14]. Το 1952 το UNIVAC ήταν το πρώτο εμπορικό σύστημα[15].
==Εξέλιξη λογισμικού και γλωσσών προγραμματισμού Το λογισμικό εξελίχθηκε από πρωτόγονο σε δομημένο. Το 1956, η FORTRAN ήταν η πρώτη υψηλού επιπέδου γλώσσα[16]. Το 1959 η COBOL χρησιμοποιήθηκε για επιχειρήσεις[17] Το 1972, γεννήθηκε η C από τον Ritchie για λειτουργικά συστήματα όπως το UNIX[18] Η λογισμική μηχανική εμφανίστηκε στα τέλη 1960 λόγω κρίσης σε μεγάλα έργα[19]. Σήμερα, παράδειγμα όπως η Python (1991) υποστηρίζουν μεγάλα δεδομένα[20].
Σύγχρονες τάσεις και προκλήσεις
Από το 1980, η τέταρτη γενιά εισήγαγε VLSI και μικροεπεξεργαστές[21]. Το 1965 ο Νόμος του Moore προέβλεψε διπλασιασμό τρανζίστορ ανά 18 μήνες[22], ενώ τα δίκτυα, όπως το ARPANET (1960), οδήγησαν στο Internet[23] Προκλήσεις περιλαμβάνουν ασφάλεια (ιούς από 1970) και ηθική σε μεγάλα δεδομένα[24] Μελλοντικά, αναμένονται οι κβαντικοί υπολογιστές και neuromorphic computing[25]
| Περίοδος | Γεγονός | Σημασία |
|---|---|---|
| 2400 ΠΚΕ | Άβακας | Πρώτο εργαλείο υπολογισμού[26] |
| 1823 | Μηχανή Διαφορών (Babbage) | Βάση προγραμματισμού[27] |
| 1945 | ENIAC | Πρώτος ηλεκτρονικός υπολογιστής[28] |
| 1956 | FORTRAN | Πρώτη υψηλού επιπέδου γλώσσα[29] |
| 1965 | Νόμος Moore | Διπλασιασμός τρανζίστορ[30] |
| 1991 | Python | Σύγχρονη γλώσσα για δεδομένα[31] |
Κλάδοι
Η επιστήμη υπολογιστών συνίσταται σε πέντε βασικούς κλάδους. Τα επιμέρους πεδία τους παρατίθενται παρακάτω, από κοινού με τα θεμελιώδη πεδία των μαθηματικών στα οποία η επιστήμη υπολογιστών εν πολλοίς στηρίζεται (ενότητα «Μαθηματικά θεμέλια»).Πρότυπο:Multicol Πρότυπο:Multicol-break
Μαθηματικά θεμέλια

- Αριθμητική ανάλυση * Άλγεβρα Μπουλ * Διακριτά μαθηματικά * Θεωρία γράφων * Μαθηματική λογική * Θεωρία πεδίων * Πιθανότητες * Στατιστική * Επεξεργασία σήματος * Θεωρία πληροφοριών
- Θεωρία τυπικών γλωσσών
- Θεωρία υπολογισμού
- Ανάλυση αλγορίθμων
- Δομές δεδομένων
- Θεωρία γλωσσών προγραμματισμού
- Κατανεμημένος υπολογισμός
- Υπολογιστική γεωμετρία
- Κρυπτολογία
- Θεωρία ουρών αναμονής
- Κβαντικός υπολογισμός
- Ολοκληρωμένα κυκλώματα
- Λογική σχεδίαση
- Αρχιτεκτονική υπολογιστών
- Μικροπρογραμματισμός
- Μικροεπεξεργαστές
- Ψηφιακές επικοινωνίες
Πρότυπο:Multicol-endΠρότυπο:Multicol Πρότυπο:Multicol-break
- Δίκτυα υπολογιστών
- Παράλληλα συστήματα
- Λειτουργικά συστήματα
- Ενσωματωμένα συστήματα
- Συστήματα πραγματικού χρόνου
- Κινητά συστήματα
- Ασφάλεια υπολογιστικών συστημάτων
Εφαρμογές υπολογιστών
- Γραφικά υπολογιστών
- Αλληλεπίδραση ανθρώπου-υπολογιστή
- Τεχνητή νοημοσύνη
- Βιοπληροφορική
- Επεξεργασία ήχου
- Επεξεργασία εικόνας και βίντεο
- Συμπίεση δεδομένων
Συμπεράσματα
Η ΕΥ εξελίχθηκε από θεωρητικό εργαλείο σε κινητήρια δύναμη της κοινωνίας, με ιστορικές φάσεις που δείχνουν συνεχή καινοτομία[32].
Παραπομπές
- ↑ Mahoney 1988, 5.
- ↑ OpenStax 2024, 10.
- ↑ Aspray and Akera 2004, 3.
- ↑ Hendricks n.d., 1.
- ↑ Hendricks n.d., 3.
- ↑ OpenStax 2024, 337.
- ↑ Onifade n.d., 6.
- ↑ Onifade n.d., 8.
- ↑ Hendricks n.d., 4.
- ↑ OpenStax 2024, 10.
- ↑ Mahoney 1988, 6.
- ↑ Onifade n.d., 9.
- ↑ Hendricks n.d., 8.
- ↑ Onifade n.d., 10.
- ↑ Aspray and Akera 2004, 109.
- ↑ Onifade n.d., 10.
- ↑ OpenStax 2024, 355.
- ↑ Onifade n.d., 11.
- ↑ Mahoney 1988, 10.
- ↑ OpenStax 2024, 355.
- ↑ Onifade n.d., 12.
- ↑ OpenStax 2024, 176.
- ↑ OpenStax 2024, 426.
- ↑ OpenStax 2024, 860.
- ↑ OpenStax 2024, 801.
- ↑ Hendricks n.d., 1.
- ↑ Onifade n.d., 8.
- ↑ OpenStax 2024, 30.
- ↑ Onifade n.d., 10.
- ↑ OpenStax 2024, 176.
- ↑ OpenStax 2024, 355.
- ↑ Haigh 2004, 19.
Βιβλιογραφία
- Aspray, William and Atsushi Akera (eds.). 2004. Using History to Teach Computer Science and Related Disciplines. https://archive.cra.org/reports/using.history.pdf
- Haigh, Thomas. 2004. The History of Computing: An Introduction for the Computer Scientist. https://tomandmaria.com/Tom/Writing/HistoryOfComputingIntro.pdf
- Hendricks, E. Braden. n.d. History of Computer Science. https://courses.cs.duke.edu/summer07/cps001/Lectures/History_CS.pdf
- Onifade, Adebowale. n.d. HISTORY OF COMPUTER. https://ethw.org/w/images/5/57/Onifade.pdf
- OpenStax. 2024. Introduction to Computer Science. https://assets.openstax.org/oscms-prodcms/media/documents/Introduction_To_Computer_Science_-_WEB.pdf