(nil): Nikos Tsekhs (ntsekhs(@)gmail.com)
Ημερομηνία: Κυρ 10 Ιουλ 2005 - 11:09:32 EEST
- Μηνύματα ταξινομημένα ανά: [ ημερομηνία ] [ thread ] [ θέμα ] [ συγγραφέα ] [ Επισυναπτόμενο ]
- Mail ενέργειες: [ Απάντησε σε αυτό το μήνυμα ] [ Στείλε ενα καινούριο μήνυμα ]
ΕΠΕΙΣΟΔΙΟ 2: Ο κατηραμένος IFης
Μια συνηθισμένη μέρα στο γραφείο. Ο πρώτος κουβάς καφέ έχει ήδη καταναλωθεί, και ο Ζαχαρίας βρίσκεται στο στάδιο της ενδοσκόπησης. Αυτοσυγκεντρώνεται προκειμένου να έχει άλλη μια αποδοτική και δημιουργική ημέρα, εξερευνώντας το ασφυκτικά γεμάτο mailbox του, το οποίο αποτελείται κατά κύριο λόγο από σοβαρά, άκρως επείγοντα επαγγελματικής φύσεως μηνύματα: "StocholmClubbing.pps", "AnIdiotWithASillyBear.wmv", "HolidayCalculator.xls". Ωπ, τι είναι αυτό; Μήνυμα από τον αρχι-δηβέλοπερ! (no? pun intented - Βοήθειά μας).
________________________________________
From: Απόλυτος Ξερόλας [mailto:tapairnoxontra(@)triakilakodika.gr]
Sent: Monday, May 23, 2005 09:00 AM
To: zaxariasdtf(@)triakilakodika.gr
Subject: URGENT FUNCTIONALITY ENHANCEMENT
Ζαχαρία,
σου επισυνάπτω τον κώδικα του project "FTYS'TA" που υλοποιήσαμε πρόπερσι για τον όμιλο ξενοδοχείων ASYLLIPTIMPIXLA AE. Θα έχεις ακούσει για αυτό. Ειχαν κάποια προβλήματα με τα συνεργεία καθαριότητας (κυρίως μικροαπάτες στη διαχείριση από την εταιρία που ανέλαβε την υπηρεσία) και ήθελαν να παρακολουθούν έσοδα/έξοδα και τα συναφή λεπτομερώς.
Ομως λόγω της συγχώνευσης με τον όμιλο BETADINE SA χρειάζονται αλλαγές στον τρόπο υπολογισμού των εσόδων τους, και συγκεκριμένα σε ο,τι αφορά τις δαπάνες καθαρισμού. Σε παρακαλώ εντόπισε το συναφές functionality και υλοποίησε τις παρακάτω αλλαγές:
(ακολουθούν οι αλλαγές)
Θα πρέπει να είναι up and running ASAP. Οσο πιό ASAP τόσο μεγαλύτερο bonus θα πάρω. Θα σε κεράσω, το υπόσχομαι.
Τακης
ΔΤΦ: (Σκέφτεται) Χα! Piece of cake. Θα το τελειώσω σε κανα μισάωρο και μετά θα έχω όλη τη μέρα να απαντάω σε αυτόν τον Patrick στο dotnetzone.gr που αρέσκεται να ακολουθεί όλο τη μέθοδο 1.β....θα τον κάνω να γίνει παλαιοπώλης σήμερα....για να δούμε τον βρωμοκώδικα αυτόν....
(κλικ κλικ κλικ open? yes, κλικ κλικ....χμ, ενα αρχείο μόνο, everything.vb? ΠΩΣ; 89333 γραμμές κώδικα; )
Στο σημείο αυτό ο Ζαχαρίας χρειάστηκε να βγεί επειγόντως για να αγοράσει χάπια για την πίεση (και ενα jack daniels). Ωσπου να γυρίσει, σας παραθέτουμε ένα απόσπασμα από τον κώδικα για να περάσει η ώρα.
'----------------------------------------
'THIS IS FUNCTION CALCULATEREVENUE
'----------------------------------------
Friend Function CalculateRevenue( _
ByVal strRevenue as int64, ByRef blnResult as int32) As Boolean
'-----------------------------
' HANDLE SITUATIONS
'-----------------------------
If m_str15a = "1" andalso m_str13b = "true" or m_int8c = -1 Then
Try
'Return 10000
blnResult=Convert("10000", int32)
'Return TRUE
Return (true)
'--------------------------
' ERROR HANDLING (EXCEPTION)
'--------------------------
Catch ex as Exception
'If something goes wrong, give error
Throw New Exception ("Exception Occured")
Finally
'Try something to fix problems. See code.
Try
'Call SuperComponent.TryToAdjustEverything
SuperComponent.TryToAdjustEverything()
'--------------------------
' ERROR HANDLING (EXCEPTION)
'--------------------------
Catch Ex as Exception
'If something goes wrong, give error
Throw New Exception ("Exception Occured Inside")
End Try
End Try
Else IF m_str67z = "none" Then
'Make m_redVariable equal to 1
m_redVariable = 1
'If m_redVariable is not zero
If m_redVariable<>0 Then
'Do nothing
'If m_redVariable is zero
Else
'If nothing ok check those
If m_intAllOk = "no" andalso blnString = 546 Then
'Call SuperComponent.DieWithSomething
If SuperComponent.DieWithAnAwfulSound(m_objAlwaysOpenConnection) Then
'Call me recursively. Everything will be allright then
CalculateRevenue (-5, m_greenVariable)
End If
End If 'End inner if
End If 'End outer if
End If 'End outer-outer if
End Function
ΔΤΦ: ....(γκλουπ)....
(σηκώνει το τηλέφωνο)
ΔΤΦ: Απόλυτε;
ΑΠΞ: Ελα Ζαχαρία. Το πηρες; Δεν είναι τίποτα, ετσι; Piece of cake.
ΔΤΦ: Εχμ, (βαθιά αναπνοή). Ποιος το έχει φτιάξει αυτό;
ΑΠΞ: (Βαθειά αναπνοή). Ζαχαρία, δεν χρειάζεται να σκαλίζουμε το παρελθόν τώρα. Ο γέγοναι γέγοναι.
ΔΤΦ: ΠΟΙΟΣ το έχει φτιάξει αυτό Απόλυτε;
ΑΠΞ: Ζαχαρία, δεν εχει σημασία. Σημασία έχει τώρα να γίνει η δουλειά
ΔΤΦ: Απόλυτε, το comment 'TODO: (c) Apolytos "Supercoder" Kserolas - I don't know WTF is going on here σου λέει τίποτα;
ΑΠΞ: Ζαχαρία! Ολοι περάσαμε από αυτά! Ολοι κάναμε λαθάκια! Τωρα μπορείς να συγκεντρωθείς στην επέκταση;
ΔΤΦ: Θα χρειαστεί refactoring. Πολύ. Παρα πολύ.
ΑΠΞ: .....
ΔΤΦ: Εξωφρενικά πάρα. Πολύ. Πολύ.
ΑΠΞ: .....
ΔΤΦ: Απιστευτα και χυδαία πολύ. Refactoring. Απίστευτα.
ΑΠΞ: .....
ΔΤΦ: .....
ΑΠΞ: .....
ΔΤΦ: Refactoring είναι η επανασυγγραφή του κώδικα σε απλούστερη και πιό συντηρήσιμη μορφή.
ΑΠΞ: Ζαχαρία....μπορεί να έκανα μερικά λαθάκια αλλα ΣΕ ΔΙΑΒΕΒΑΙΩΝΩ ΟΤΙ ΞΕΡΩ τι ειναι rifactouring. Λοιπον...
ΔΤΦ: REfactOring.
ΑΠΞ: Ναι, whatever. Λοιπον δεν προλαβαίνουμε. Ακολουθησε την πεπατημένη και γράψε νέο functionality ως έχει.
ΔΤΦ: Δεν υπάρχει πεπατημένη.
ΑΠΞ: Μα ακολουθείται σαφώς ένα design pattern.
ΔΤΦ: Σαφως. Λεγεται "πλυσιμο χρωματιστών στους 90 βαθμούς μαζί με τα λευκά".
ΑΠΞ: Διακρίνω ειρωνεία;
ΔΤΦ: (γκουχ) οχι Απόλυτε, είναι ευφημισμός για το Observer Strategy of Abstract Factory Decorators που σαφώς ακολουθεί ο κώδικας. Σου.
ΑΠΞ: Φυσικά. Ειναι δοκιμασμένο Gang of Five Design Pattern. Διαβασε και κανενα βιβλίο.
ΔΤΦ: (Σκεφτεται) μανα γιατί με γέννησες και με άφησες να γίνω developer....
ΔΤΦ: Φυσικά, φυσικά....
ΔΤΦ: Απόλυτε;
ΑΠΞ: Παρακαλώ.
ΔΤΦ: Γκουχ. Θα χρειαστεί πολύ δουλειά. Για το νέο functionality θα πρέπει να αφαιρέσω το κομμάτι των Factories και να το αντικαταστήσω με τα Satisfactories. Επίσης οι Observers θα πρέπει να αποκτήσουν πιό ενεργό ρόλο και να γίνουν Executives. Τελος οι Decorators θα αντικατασταθούν από Gardeners. Μονο έτσι θα λειτουργήσει το πράγμα. Θα χρειαστώ δύο μήνες και πίτσα στο τέλος κάθε βάρδιας. Με διπλό τυρί.
ΑΠΞ: Χαίρομαι που το βλέπεις θετικά και που έχεις τόσο καλό motivation. Καπου έχω διαβάσει και εγώ για τους Gardeners, πραγματικά πολύ λειτουργικό. Θα εισηγηθώ 3 μήνες και ένα καλό bonus στο τέλος του project. Σε ευχαριστώ πολύ για την αφοσίωσή σου Ζαχαρία!
ΔΤΦ: Παντα, μα ΠΑΝΤΑ στη διάθεσή σου Απόλυτε.......
(κλικ)
ΔΤΦ: ΜΑΝΟΥΛΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑΑ
http://www.dotnetzone.gr/forums/ShowForum.aspx?ForumID=45
-- Η Έβελυν (Jokes-Robot(@)ceid.upatras.gr) γράφει : Μικρός μου έλεγε η μάνα μου: Φάε το φαΐ σου να μεγαλώσεις να πας και σχολείο. Και εγώ το έτρωγα... ________________________________________________________________________ Joke of the Day ... Ελληνική Λίστα Ανεκδότων https://anekdota.duckdns.org ___ Η JotD βγαίνει σε Ελληνικά και Greeklish ___ ________________________________________________________________________
- Επόμενο μήνυμα: Nikos Tsekhs: "Οι περιπέτειες του Ζαχαρία Δεντοφτιάχνω: Επεισόδιο 3: Πελατοκεντρική προσέγγιση"
- Προηγούμενο μήνυμα: Nikos Tsekhs: "Οι περιπέτειες του Ζαχαρία Δεντοφτιάχνω: Επεισόδιο 1: Η σχετικότητα του χρόνου"
- Μηνύματα ταξινομημένα ανά: [ ημερομηνία ] [ thread ] [ θέμα ] [ συγγραφέα ] [ Επισυναπτόμενο ]
- Mail ενέργειες: [ Απάντησε σε αυτό το μήνυμα ] [ Στείλε ενα καινούριο μήνυμα ]