Εργαλεία Χρήστη

Εργαλεία ιστότοπου


oopython

Σύγκριση εκδόσεων

Εδώ βλέπετε τις διαφορές μεταξύ της επιλεγμένης έκδοσης και της τρέχουσας έκδοσης της σελίδας.

Σύνδεσμος σε αυτή την προβολή διαφορών.

Προηγούμενος έλεγχος και από τις δύο πλευρές Προηγούμενη αναθεώρηση
Επόμενη αναθεώρηση
Προηγούμενη αναθεώρηση
oopython [2010/07/28 09:52]
chiossif
oopython [2023/02/08 12:09] (τρέχουσα)
chiossif [1ο Παράδειγμα]
Γραμμή 1: Γραμμή 1:
 ===== Αντικειμενοστραφής προγραμματισμός σε Python  ===== ===== Αντικειμενοστραφής προγραμματισμός σε Python  =====
  
-=== Εισαγωγή ===+==== Εισαγωγή ====
  
 Η python είναι μια γλώσσα αντικειμενοστραφούς προγραμματισμού. Αντικειμενοστραφής προγραμματισμός είναι ο προγραμματισμός με την χρήση τάξεων - κατηγοριών - κλάσεων και των εμφανίσεών τους των αντικειμένων. Η ιστορική αναδρομή η οποία ακολουθεί βοηθάει στην κατανόηση αυτών των όρων (αν οι όροι σας είναι οικείοι προχωρήστε στα παραδείγματα εκμάθησης). Η python είναι μια γλώσσα αντικειμενοστραφούς προγραμματισμού. Αντικειμενοστραφής προγραμματισμός είναι ο προγραμματισμός με την χρήση τάξεων - κατηγοριών - κλάσεων και των εμφανίσεών τους των αντικειμένων. Η ιστορική αναδρομή η οποία ακολουθεί βοηθάει στην κατανόηση αυτών των όρων (αν οι όροι σας είναι οικείοι προχωρήστε στα παραδείγματα εκμάθησης).
  
-=== Ιστορική αναδρομή στις μεθόδους προγραμματισμού ===+==== Ιστορική αναδρομή στις μεθόδους προγραμματισμού ====
  
-Στην αρχή (έως την δεκαετία του 1960) κυριαρχούσε ο γραμμικός τρόπος προγραμματισμού (http://en.wikipedia.org/wiki/Spaghetti_code). Οι προγραμματιστές έγραφαν τις εντολές τους στην σειρά και όποτε χρειαζόταν μια διακλάδωση τότε χρησιμοποιούσαν την εντολή GOTO. Ο κώδικας ήταν συμπαγής εξαιρετικά γρήγορος αλλά είχε τεράστια μειονεκτήματα ιδίως στην δυνατότητα διαχείρισης, συντήρησης και εκσφαλμάτωσης του. Κύριες γλώσσες γραμμικού προγραμματισμού είναι η Assembly και άλλες γλώσσες της εποχής όπως η Basic και η Fortran V.+Στην αρχή (έως την δεκαετία του 1960) κυριαρχούσε ο γραμμικός τρόπος προγραμματισμού ( http://en.wikipedia.org/wiki/Spaghetti_code ). Οι προγραμματιστές έγραφαν τις εντολές τους στην σειρά και όποτε χρειαζόταν μια διακλάδωση τότε χρησιμοποιούσαν την εντολή GOTO. Ο κώδικας ήταν συμπαγής εξαιρετικά γρήγορος αλλά είχε τεράστια μειονεκτήματα ιδίως στην δυνατότητα διαχείρισης, συντήρησης και εκσφαλμάτωσης του. Κύριες γλώσσες γραμμικού προγραμματισμού είναι η Assembly και άλλες γλώσσες της εποχής όπως η Basic και η Fortran V.
  
-Την δεκαετία του 1970 επικράτησε ο δομημένος προγραμματισμός (http://en.wikipedia.org/wiki/Structured_programming) ο οποίος κατάργησε την χρήση του GOTO. Αυτό επετεύχθη με την δημιουργία των προγραμματιστικών μονάδων δηλαδή των δομών και των υποπρογραμμάτων. Κάθε φορά που απαιτείται μια πρόσθετη εργασία αντί της διακλάδωσης επιλέγεται η χρήση μιας ομάδας εντολών σαφώς διακριτών από τις υπόλοιπες. Αυτές οι ομάδες είτε είναι τμήματα εντολών ελέγχου ή επανάληψης είτε είναι υποπρογράμματα. Περιέχουν δε οποιοδήποτε πλήθος ή συνδυασμό άλλων εντολών. Γλώσσες δομημένου προγραμματισμού οι οποίες παραμένουν έως σήμερα είναι η C και η Pascal.+Την δεκαετία του 1970 επικράτησε ο δομημένος προγραμματισμός ( http://en.wikipedia.org/wiki/Structured_programming ) ο οποίος κατάργησε την χρήση του GOTO. Αυτό επετεύχθη με την δημιουργία των προγραμματιστικών μονάδων δηλαδή των δομών και των υποπρογραμμάτων. Κάθε φορά που απαιτείται μια πρόσθετη εργασία αντί της διακλάδωσης επιλέγεται η χρήση μιας ομάδας εντολών σαφώς διακριτών από τις υπόλοιπες. Αυτές οι ομάδες είτε είναι τμήματα εντολών ελέγχου ή επανάληψης είτε είναι υποπρογράμματα. Περιέχουν δε οποιοδήποτε πλήθος ή συνδυασμό άλλων εντολών. Γλώσσες δομημένου προγραμματισμού οι οποίες παραμένουν έως σήμερα είναι η C και η Pascal.
  
-Τέλος από την δεκαετία του 1990 και μετά άρχισε να κυριαρχεί ο αντικειμενοστραφής προγραμματισμός (http://en.wikipedia.org/wiki/Object-oriented_programming). Τώρα οι "ομάδες" του δομημένου ονομάστηκαν κατηγορίες-τάξεις-κλάσεις και εκτός από εντολές (αλγόριθμους) περιέχουν και μεταβλητές (δεδομένα). Στο πλαίσιο λειτουργιών ενός αντικειμένου (ή καλύτερα μιας κατηγορίας) συμπεριλαμβάνονται τόσο οι μέθοδοι (αλγόριθμοι) που το αφορούν με την μορφή υποπρογραμμάτων όσο και τα δεδομένα (μεταβλητές) που το περιγράφουν. Κάθε αντικείμενο είναι η στιγμιαία έκφραση μιας κατηγορίας και περιλαμβάνει το δικά του χαρακτηριστικά στις μεταβλητές της κατηγορίας του και δικαίωμα χρήσης των υποπρογραμμάτων-μεθόδων της. Σήμερα κύριες γλώσσες αντικειμενοστραφούς προγραμματισμού είναι η C++, η Python και η Java. +Τέλος από την δεκαετία του 1990 και μετά άρχισε να κυριαρχεί ο αντικειμενοστραφής προγραμματισμός ( http://en.wikipedia.org/wiki/Object-oriented_programming ). Τώρα οι "ομάδες" του δομημένου ονομάστηκαν κατηγορίες-τάξεις-κλάσεις και εκτός από εντολές (αλγόριθμους) περιέχουν και μεταβλητές (δεδομένα). Στο πλαίσιο λειτουργιών ενός αντικειμένου (ή καλύτερα μιας κατηγορίας) συμπεριλαμβάνονται τόσο οι μέθοδοι (αλγόριθμοι) που το αφορούν με την μορφή υποπρογραμμάτων όσο και τα δεδομένα (μεταβλητές) που το περιγράφουν. Κάθε αντικείμενο είναι η στιγμιαία έκφραση μιας κατηγορίας και περιλαμβάνει το δικά του χαρακτηριστικά στις μεταβλητές της κατηγορίας του και δικαίωμα χρήσης των υποπρογραμμάτων-μεθόδων της. Σήμερα κύριες γλώσσες αντικειμενοστραφούς προγραμματισμού είναι η C++, η Python και η Java. 
  
-=== 1ο Παράδειγμα αντικειμενοστραφούς προγραμματισμού με Python ===+==== 1ο Παράδειγμα  ====
  
 == Ορισμός κατηγοριών με χαρακτηριστικά και μεθόδους. Δήλωση αντικειμένων και χρήση τους. == == Ορισμός κατηγοριών με χαρακτηριστικά και μεθόδους. Δήλωση αντικειμένων και χρήση τους. ==
Γραμμή 22: Γραμμή 22:
   # -*- coding: UTF-8 -*-   # -*- coding: UTF-8 -*-
   #Filename: cycle.py - 1ο/3 μέρη - 1η έκδοση   #Filename: cycle.py - 1ο/3 μέρη - 1η έκδοση
 +  
 +  from math import pi # θα το χρειαστούμε στον υπολογισμό περιμέτρου
 +  
   class cycle:   class cycle:
   '''Αυτή είναι η κατηγορία του κύκλου'''   '''Αυτή είναι η κατηγορία του κύκλου'''
Γραμμή 86: Γραμμή 89:
   print('Η περίμετρος του κύκλου είναι:', Βήτα.Περίμετρος())   print('Η περίμετρος του κύκλου είναι:', Βήτα.Περίμετρος())
  
-=== 2ο Παράδειγμα αντικειμενοστραφούς προγραμματισμού με Python ===+==== 2ο Παράδειγμα  ====
  
 == Κληρονομικότητα και Πολυμορφισμός == == Κληρονομικότητα και Πολυμορφισμός ==
Γραμμή 99: Γραμμή 102:
  self.τίτλος=Όνομα  self.τίτλος=Όνομα
  print('Αρχικοποιήθηκε το ίδρυμα :',self.τίτλος)  print('Αρχικοποιήθηκε το ίδρυμα :',self.τίτλος)
 +  
  def Όνομα(self):  def Όνομα(self):
  return self.τίτλος  return self.τίτλος
 +  
  def Τίτλος(self): # Ίδια με την προηγούμενη αλλά ορατή από την κατηγορία Σχολή  def Τίτλος(self): # Ίδια με την προηγούμενη αλλά ορατή από την κατηγορία Σχολή
  return self.τίτλος  return self.τίτλος
Γραμμή 119: Γραμμή 122:
  self.τίτλος=ίδρυμα.τίτλος  self.τίτλος=ίδρυμα.τίτλος
  print('Αρχικοποιήθηκε η σχολή :',self.όνομα, 'του ιδρύματος',self.τίτλος)  print('Αρχικοποιήθηκε η σχολή :',self.όνομα, 'του ιδρύματος',self.τίτλος)
 +  
  def Όνομα(self): # ΠΟΛΥΜΟΡΦΙΣΜΟΣ: Μέθοδος με ίδιο όνομα με αυτό μητρικής κατηγορίας  def Όνομα(self): # ΠΟΛΥΜΟΡΦΙΣΜΟΣ: Μέθοδος με ίδιο όνομα με αυτό μητρικής κατηγορίας
  return self.όνομα  return self.όνομα
oopython.1280310726.txt.gz · Τελευταία τροποποίηση: 2020/11/21 09:52 (εξωτερική τροποποίηση)