Dinos_12345 Δημοσ. 27 Αυγούστου 2016 Δημοσ. 27 Αυγούστου 2016 (επεξεργασμένο) Καλησπέρα! Έχω στα χέρια μου κάποια pdf της σχολής όπου βρήκα μία εργασία που ήταν για τον Ιούνιο και με την οποία λόγω χρόνου δεν ασχολήθηκα. Τώρα με έπιασε περιέργεια να την κοιτάξω λίγο, και έχω σκάσει. Το Spec είναι μία κάκιστη μετάφραση από το ίδιο ενός Αμερικάνικου πανεπιστήμιου, και δεν έχει σαφή σκοπό. Ο κώδικας ελλειπής και clopy paste. Καταλαβένετε εσείς κάτι από αυτό το πράγμα; Μπορώ να δώσω 3-4 διαφορετικές ερμηνίες στο τι θέλει, αλλά δεν μπορώ να γράψω 3-4 διαφορετικές εφαρμογές. Επεξ/σία 27 Αυγούστου 2016 από Dinos_12345
kaliakman Δημοσ. 27 Αυγούστου 2016 Δημοσ. 27 Αυγούστου 2016 Καλησπέρα, λίγο που το κοίταξα δεν βλέπω αυτό που λες για 2-3 ερμηνείες και ο σκοπός είναι trivial απλά να δουλέψεις oop χωρις νόημα όπως είναι σχεδόν όλες αυτές που έχω βρει και εγώ. 1
Dinos_12345 Δημοσ. 27 Αυγούστου 2016 Μέλος Δημοσ. 27 Αυγούστου 2016 Ναι αλλά δεν μπορεί να σταθεί έτσι, πρέπει να βγεί εκτελέσιμο και καλά που να παίζει όπως περιγράφει. Αυτά που βλέπω εγώ. Μιλάει για αρχεία αλλά δεν λέει πως θέλει να τα χρησιμοποιήσουμε. Να γράφουν τι; Το πρόγραμμα του γιατρού; Το πρόγραμμα του ασθενούς, που ο ασθενής εκτός από το ραντεβού δεν ξέρω τι έχει στο πρόγραμμα του; Άλλο, το point της κλάσης patient είναι να ρωτάει ονοματεπώνυμα κλπ, και μόνο αυτό, αφού στην ουσία δεν το χρησιμοποιω πουθενά μετά. Άλλο, το IsScheduled() method, τι κάνει; Δίνει feedback για το αν το ραντεβού έχει κανονιστεί την τάδε ώρα; Ψάχνει αν η συγκεκριμένη ώρα είναι κλεισμένη; Η SetAppointment του DailySchedule γιατί να είναι εκεί; and the list goes on. Δεν λέει ξεκάθαρα τι θέλει να κάνουμε, ας το έλεγε και να μην έδινε καθόλου "βοήθεια" για το σχεδιασμό των κλάσεων. Δηλαδή αν πάρω 10 διαφορετικές εργασίες, κάθε μία θα έχει τελείως διαφορετικό take στην ιδέα.
Apoll Δημοσ. 27 Αυγούστου 2016 Δημοσ. 27 Αυγούστου 2016 Θα συμφωνήσω μαζί σου, γράφουν 5 μλκς και περιμένουν ο άλλος να κάτσει να γράψει κάτι τέτοιο σε C++ και C# για command line / powershell κιόλας; Πάντως απ' ό,τι κατάλαβα ο ασθενης κάνει "αίτηση" για ραντεβού και ο κατι άλλο κάνει την έγκριση (IsScheduled = true) για το ραντεβού αυτό; Επίσης η τελευταία πρόταση στην ανάλυση, είναι γραμμένη από κάποιον που μόνο μέσα στο κεφάλι του, υπάρχει η ακριβής περιγραφή του προβλήματος. Πως κάνει ο scheduler επιβεβαίωση, αν έχει γίνει η εγγραφή; Μήπως τρίτο άτομο (π.χ γραμματέας) κάνει την δουλειά αυτή, και χάθηκε στην μετάφραση και πετσόκομμα των αρχικών απαιτήσεων από τα Αγγλικά; 1
Dinos_12345 Δημοσ. 27 Αυγούστου 2016 Μέλος Δημοσ. 27 Αυγούστου 2016 Θα συμφωνήσω μαζί σου, γράφουν 5 μλκς και περιμένουν ο άλλος να κάτσει να γράψει κάτι τέτοιο σε C++ και C# για command line / powershell κιόλας; Πάντως απ' ό,τι κατάλαβα ο ασθενης κάνει "αίτηση" για ραντεβού και ο κατι άλλο κάνει την έγκριση (IsScheduled = true) για το ραντεβού αυτό; Επίσης η τελευταία πρόταση στην ανάλυση, είναι γραμμένη από κάποιον που μόνο μέσα στο κεφάλι του, υπάρχει η ακριβής περιγραφή του προβλήματος. Πως κάνει ο scheduler επιβεβαίωση, αν έχει γίνει η εγγραφή; Μήπως τρίτο άτομο (π.χ γραμματέας) κάνει την δουλειά αυτή, και χάθηκε στην μετάφραση και πετσόκομμα των αρχικών απαιτήσεων από τα Αγγλικά; Το πρόβλημα πηγάζει και από το αρχικό στα αγγλικά. Εκεί φυσικά έχει και ολόκληρη τη λύση αλλά δεν καταλαβαίνω τίποτα. Χάνομαι στο ποσό περίπλοκο κώδικα έχει γράψει αυτός και στα άπειρα const και unsigned που έχει μπροστά από κάθε πράγμα.
Apoll Δημοσ. 27 Αυγούστου 2016 Δημοσ. 27 Αυγούστου 2016 Καλά ο κώδικας είναι άθλιος και δεν βγάζεις νόημα. Δεν χρειάζεται καν να τον κοιτάς. Πίστεψέ με, έχω δει χειρότερο στο υπάρχον project, και μάλιστα σε πρόγραμμα τράπεζας γραμμένο από contractors. 1
dimitrisOP Δημοσ. 27 Αυγούστου 2016 Δημοσ. 27 Αυγούστου 2016 Κάκιστη και ελλιπείς περιγραφή , το κομμάτι "ανάλυση" είναι για τα πανηγύρια. Εργασία για εξάσκηση πάνω σε OOP ηταν (μαλλον) Στην ουσία - από ότι κατάλαβα εγώ- ο ασθενής κλείνει ένα ραντεβού δίνοντας τα στοιχειά και επιλεγεί γιατρό , το πρόγραμμα τον καταχωρεί μέσα στην class apointment σε ένα collection. Η scheduler (με χρήση timer?) διαμορφώνει τα ραντεβού του γιατρού?, εν ολιγης εκτυπώνει το καθημερινό πρόγραμμα με τα ραντεβού από την class apointments με το όνομα κάθε ασθενή και γιατρού ανά 15 λεπτά? Η τελευταία πρόταση " ο χρονοπρογραμματιστης επιβεβαιώνει την επίσκεψη " δεν καταλαβαίνω τι θέλει, το ίδιο και κώδικας Την επιβεβαίωση του ραντεβού η αν εκτελεστικέ δεν έπρεπε να το κάνει κάποιος γραμματέας πχ? Μπορεί και να κάνω λάθος , δεν ξέρω 2
defacer Δημοσ. 27 Αυγούστου 2016 Δημοσ. 27 Αυγούστου 2016 Το πώς θα μπορούσε να λειτουργεί η φάση βάσει των slides δεν είναι τόσο δύσκολο να το εξάγουμε από τα ονόματα των classes και methods, αλλά γενικά μιλώντας η εργασία είναι άθλια. Και είναι άθλια επειδή ξεφεύγει από τα πλαίσια του "φτιάξε καμια class" και μπαίνει στα χωράφια του OO design, το οποίο είναι τεράστιο και πολύ δύσκολο κεφάλαιο. Εδώ έχει δοθεί σα δεδομένο ένα πάρα πολύ κακό design σε ανθρώπους που δεν ξέρουν αρκετά για να καταλάβουν ότι είναι κακό, μάντεψε τι αποτέλεσμα θα έχει όταν μαθαίνουν έτσι. 1
Dinos_12345 Δημοσ. 27 Αυγούστου 2016 Μέλος Δημοσ. 27 Αυγούστου 2016 μάντεψε τι αποτέλεσμα θα έχει όταν μαθαίνουν έτσι.For starters, το δίνουν κυριολεκτικά πάνω από 600 άτομα στο ΤΕΙ το μάθημα, σε κάθε εξεταστική με το 1-2% να περνάει. Βασίζεται μόνο στο OOD η καθηγήτρια και γράφει εξίσου κακές εκφωνήσεις. Για όλα τα υπόλοιπα, απλά δεν βγαίνει. Αν το πας μαντεύοντας από τα ονόματα των μεθόδων και κλάσεων κάτι μπορεί να βγάλεις αλλά σίγουρα δεν θα είναι το ζητούμενο και σίγουρα αυτό το κάτι το μπερδεύει πολύ η εκφώνηση στο κεφάλι σου, κάθε φορά που το διαβάζεις. Χαίρομαι που δεν το βλέπω μόνο εγώ έτσι πάντως. 1
defacer Δημοσ. 27 Αυγούστου 2016 Δημοσ. 27 Αυγούστου 2016 Καλά ναι, δεν το συζητώ. "Δεν είναι δύσκολο να το εξάγουμε" με δικά μου κριτήρια, όχι με κριτήρια καημένου φοιτητή που βλέπει πρώτη φορά C++. Το πρόβλημα με τη διδασκαλία του OOD είναι ότι προσωπικά όλοι οι διδάσκοντες που έχω πετύχει είναι άσχετοι στο συγκεκριμένο κεφάλαιο. Επειδή αυτοί είναι ακαδημαϊκοί, και το αντικείμενο δεν είναι καθόλου ακαδημαϊκό. 3
googlebro Δημοσ. 27 Αυγούστου 2016 Δημοσ. 27 Αυγούστου 2016 Γι' αυτό @Dinos_12345 έπρεπε να ασχοληθείς τότε που βγήκε η εργασία. Γιατί θα ρωτούσες τους συμφοιτητές σου και την καθηγήτρια και όχι το insomnia. Η όλη δουλειά είναι στον scheduler. Κάθε φορά που εκτελείται ένα ραντεβού, θα πρέπει για τα επόμενα 15 λεπτά να μην μπορεί να εκτελεστεί αλλο ραντεβού γιατί ο γιατρός εξετάζει ασθενή. Επίσης αυτό θα ληφθεί υπόψιν από τον scheduler, όταν κάποιος προσπαθεί να κλείσει ραντεβού. Δλδ όταν κλείσει ένα ραντεβού ένας πελάτης στις 17.00, το επόμενο διαθέσιμο ραντεβού που θα μπορεί να κλείσει ο επόμενος πελάτης είναι στις 17.15 Ερώτηση: Τι θα γίνει αν εκτελεστεί ένα script όπου δύο πελάτες θα προσπαθούν να κλείσουν ταυτόχρονα ένα ραντεβού την ίδια ώρα?
moukoublen Δημοσ. 27 Αυγούστου 2016 Δημοσ. 27 Αυγούστου 2016 Το πρόβλημα με τη διδασκαλία του OOD είναι ότι προσωπικά όλοι οι διδάσκοντες που έχω πετύχει είναι άσχετοι στο συγκεκριμένο κεφάλαιο. Επειδή αυτοί είναι ακαδημαϊκοί, και το αντικείμενο δεν είναι καθόλου ακαδημαϊκό. Ακριβώς. Και εδώ ξεκινάει να γίνεται κάπως προβληματική αυτή η κατάσταση (τουλάχιστον στην Ελλάδα, για το εξωτερικό δεν έχω άποψη). Δηλαδή η μεγάλη ροή των "μέσων" software developer που βγαίνουν απο τα πανεπιστήμια τείνουν να έχουν πάρει πολύ λάθος εικόνα για το τι είναι OOD και τι ανάγκες καλύπτει. Τείνουν να το θεωρούν ένα "βίτσιο" των "ψαγμένων". Κάτι σαν τέχνη για την τέχνη. Το οποίο είναι τέρμα λάθος. (Και λέω των "μέσων" προγραμματιστών γιατί αυτοί που είναι πραγματικά πωρωμένου θα βρουν την άκρη και το path που χρειάζονται. Ωστόσο αυτό το μεγάλο μέρος των "μέσων" προγραμματιστών δεν παύει να είναι αναγκαίο από την αγορά του σήμερα λόγω της μεγάλης ζήτησης λογισμικού) 1
Dinos_12345 Δημοσ. 27 Αυγούστου 2016 Μέλος Δημοσ. 27 Αυγούστου 2016 Γι' αυτό @Dinos_12345 έπρεπε να ασχοληθείς τότε που βγήκε η εργασία. Γιατί θα ρωτούσες τους συμφοιτητές σου και την καθηγήτρια και όχι το insomnia. Η όλη δουλειά είναι στον scheduler. Κάθε φορά που εκτελείται ένα ραντεβού, θα πρέπει για τα επόμενα 15 λεπτά να μην μπορεί να εκτελεστεί αλλο ραντεβού γιατί ο γιατρός εξετάζει ασθενή. Επίσης αυτό θα ληφθεί υπόψιν από τον scheduler, όταν κάποιος προσπαθεί να κλείσει ραντεβού. Δλδ όταν κλείσει ένα ραντεβού ένας πελάτης στις 17.00, το επόμενο διαθέσιμο ραντεβού που θα μπορεί να κλείσει ο επόμενος πελάτης είναι στις 17.15 Ερώτηση: Τι θα γίνει αν εκτελεστεί ένα script όπου δύο πελάτες θα προσπαθούν να κλείσουν ταυτόχρονα ένα ραντεβού την ίδια ώρα? Δεν την έκανε και κανείς τότε. Όλοι είχαμε αφοσιωθεί στο project του εργαστηρίου που είχε δομή, αξία και φυσικά εξασφάλιζε βαθμό αν κατάφερνε κάποιος να το κάνει όπως ακριβώς ήθελε ο καθηγητής. Ή κατάληξη ήταν να έχω 9 εργαστήριο και sub-3 θεωρία.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα