Το Στέκι των Πληροφορικών

Επαγγελματικό Λύκειο => Γενικά => Προγραμματισμός Υπολογιστών => Μήνυμα ξεκίνησε από: theoni στις 05 Ιουν 2023, 07:02:17 ΜΜ

Τίτλος: Αντικειμενοστραφή προγραμματισμος
Αποστολή από: theoni στις 05 Ιουν 2023, 07:02:17 ΜΜ
Καλησπέρα  να κάνω μια ερώτηση γιατί έχω δει διαφορετικές απαντήσεις και έχω μπερδευτεί όταν μας δίνεται μια κλάση και μας ζητούν τον κατασκευαστή της γράφουμε σκέτο __init__ ή ολόκληρη την πρώτη γραμμή def __init__ και τις παραμέτρους που έχει μέσα στην παρένθεση?????
Τίτλος: Απ: Αντικειμενοστραφή προγραμματισμος
Αποστολή από: NIKOS_KALYVAS στις 05 Ιουν 2023, 10:57:16 ΜΜ
Πράγματι αυτό που αναφέρεις συμβαίνει και σε πολλές ενδεικτικές λύσεις υπάρχει παρανόηση.

Από το σχολικό βιβλίο σελ. 199
"Οπότε, όταν καλούμε την κλάση, έχουμε φροντίσει να καλείται η μέθοδος-συνάρτηση αρχικοποίησης __init__  η οποία κατασκευάζει αντικείμενα, λόγος για τον οποίο η μέθοδος __init__ ονομάζεται κατασκευαστής."

Άρα αναφέροντας μόνο τη μέθοδο __init__ είσαι ΟΚ.
Βέβαια και κάποιος μαθητής που θα γράψει def __init__(self ....κλπ) και αυτό πιάνεται σωστό.
Τίτλος: Απ: Αντικειμενοστραφή προγραμματισμος
Αποστολή από: evry στις 06 Ιουν 2023, 07:46:02 ΠΜ
Δεν κατάλαβα την ερώτηση.
Όταν ορίζεις την __init__ πρέπει να έχεις και def μπροστά, όταν θέλεις να την καλέσεις όχι.
Που ακριβώς είναι το πρόβλημα;
Τίτλος: Απ: Αντικειμενοστραφή προγραμματισμος
Αποστολή από: theoni στις 06 Ιουν 2023, 10:55:50 ΠΜ
Το πρόβλημα είναι στην ερώτηση που σου κάνουν όταν σου δίνουν μια κλάση και σε ρωτάνε ποιος είναι ο κατασκευαστής άλλοι απαντούν σκέτο init και άλλοι βάζουν ολόκληρη την πρώτη γραμμη
Τίτλος: Απ: Αντικειμενοστραφή προγραμματισμος
Αποστολή από: evry στις 06 Ιουν 2023, 11:06:01 ΠΜ
Αν κάποιος στην ερώτηση "ποιος είναι ο κατασκευαστής" βάζει μαζί και το def τότε θα έλεγα ότι δεν έχει καταλάβει και δεν μπορεί να πάρει όλες τις μονάδες.
Τίτλος: Απ: Αντικειμενοστραφή προγραμματισμος
Αποστολή από: theoni στις 06 Ιουν 2023, 11:36:22 ΠΜ
Υπάρχουν όμως απαντήσεις με το def μπροστά και αν δεν κάνω λάθος πρέπει να το είδα και στην τράπεζα θεματων
Τίτλος: Απ: Αντικειμενοστραφή προγραμματισμος
Αποστολή από: theoni στις 06 Ιουν 2023, 11:38:58 ΠΜ
Το επιβεβαίωσα σίγουρα υπάρχει σαν απάντηση στην τράπεζα θεμάτων το πρόβλημα είναι ότι για κάποιους από εμάς που ερχόμαστε πρώτη φορά σε επαφή με το μάθημα υπάρχουν πολλές ασάφειες με αποτέλεσμα να έχουμε αμφιβολίες για αυτά που διδάσκουμε 
Τίτλος: Απ: Αντικειμενοστραφή προγραμματισμος
Αποστολή από: evry στις 06 Ιουν 2023, 11:42:53 ΠΜ
Δεν έχω δει την τράπεζα θεμάτων αλλά φαντάσου να σε ρωτήσει κάποιος :
Ποια συνάρτηση υπολογίζει το ημίτονο στη ΓΛΩΣΣΑ ?
και αντί να απαντήσεις η ΗΜ(χ) ή η ΗΜ
να απαντήσεις η
ΣΥΝΑΡΤΗΣΗ ΗΜ(Χ) : ΑΚΕΡΑΙΑ

Αν υπάρχει κάτι τέτοιο στην τράπεζα θεμάτων θα πρέπει να το διιορθώσουν.
Δεν είναι δυνατόν επειδή υπάρχει στην τράπεζα να το δεχόμαστε ως σωστό.
Υποτίθεται ότι έχουμε σπουδάσει πληροφορική και τα γνωρίζουμε αυτά.

Μπορείτε να μου στείλετε ποιο ακριβώς θέμα είναι στην τράπεζα θεμάτων ώστε να το δω και αν έχει πρόβλημα να επικοινωνήσω μαζί τους, μήπως μπορεί να διορθωθεί?
Τίτλος: Απ: Αντικειμενοστραφή προγραμματισμος
Αποστολή από: NIKOS_KALYVAS στις 06 Ιουν 2023, 12:20:18 ΜΜ
Από την Τράπεζα Θεμάτων Προγραμματισμός Γ ΕΠΑΛ..
ενδεικτικα τα θέματα :
27800
29529
Τίτλος: Απ: Αντικειμενοστραφή προγραμματισμος
Αποστολή από: evry στις 06 Ιουν 2023, 12:37:38 ΜΜ
Το είδα.
Η σωστή απάντηση είναι να πεις απλά __init__ και τέλος. Δεν χρειάζεται κάτι άλλο.
Άντε να βάλεις και τις παραμέτρους αν θέλεις, αλλά όχι και το def.
Το def δεν είναι μέρος του ονόματος της συνάρτησης.

Θα πρέπει να το διορθώσουν.

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