Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Κοντεύει η επόμενη έκδοση του Smart Client Software Factory!

Îåêßíçóå áðü ôï ìÝëïò Παναγιώτης Καναβός. Τελευταία δημοσίευση από το μέλος Παναγιώτης Καναβός στις 09-04-2007, 20:46. Υπάρχουν 0 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  09-04-2007, 20:46 28355

    Κοντεύει η επόμενη έκδοση του Smart Client Software Factory!

    Είπα να ρίξω μία ματιά πριν το Πάσχα, να δω τί γίνεται με τα διάφορα Software Factories της Microsoft και είδα ότι το επόμενο Smart Client Software Factory όχι μόνο έχει ξεκινήσει, αλλά πρόκειται να βγει τον Απρίλιο! Και να φανταστεί κανείς, ότι μόλις βγάλανε το Enterprise Library v3! Καλά, από τότε που το Patterns and Practices group της Microsoft αποφάσισε να χρησιμοποιήσει agile μεθόδους, δεν τους προλαβαίνεις πλέον!

    Χονδρικά, τα νέα στοιχεία του SCSF είναι η υποστήριξη Workflow, WCF και WPF. Ειδικά η προσθήκη του workflow θα κάνει πολύ ευκολότερη την ανάπτυξη εφαρμογών smart client. Τα σημεία στα οποία μπορεί να διευκολύνει τις εφαρμογές είναι πάρα πολλές. Η απλούστερη περίπτωση είναι η αυτοματοποίηση απλών φορμών σε στυλ wizards. Λίγο πιο περίπλοκη είναι η υλοποίηση state machines για φόρμες ή αντικείμενα, π.χ. μία φόρμα μπορεί να ζητάει έγκριση προϊσταμένου αν το ποσό ενός δανείου ξεπερνάει ένα ορισμένο ποσό, ή να ζητήσει επιπλέον στοιχεία. Αντίστοιχα, μπορεί να οριστεί ένα workflow το οποίο θα εμφανίζει κοινά μηνύματα λάθους όταν συμβεί λάθος σε μία φόρμα.
    Η μαγεία όμως έρχεται όταν υπάρχουν πιο περίπλοκα σενάρια. Ένα workflow μπορεί να σταματήσει και να ξαναξεκινήσει αργότερα. Επίσης, περιέχει τον απαραίτητο κώδικα για να αντιστρέψει τις ενέργειες του. Έτσι μπορούμε επιτέλους να έχουμε long transactions χωρίς να κλειδώνουμε εγγραφές για ώρες, ή να αναρωτιώμαστε τί θα γίνει αν χρησιμοποιήσουμε optimistic concurrency. Μπορούμε επίσης να απλοποιήσουμε φοβερά περίπλοκες διαδικασίες, οι οποίες μπορεί να απαιτούν την τροποποίηση στοιχείων σε διαφορετικούς πίνακες, την αποστολή ειδοποιήσεων, την δημιουργία αρχείων ... και να τα βάλουμε όλα αυτά σε ένα αρχείο το οποίο θα μπορούμε να στείλουμε στον πελάτη, κάθε φορά που είναι απαραίτητη μία αλλαγή!
    Άλλο φοβερά ενδιαφέρον κομμάτι είναι η δυνατότητα του Workflow να δουλέψει και ως rule engine. Το Enterprise Library v3 μας επιτρέπει ήδη να ορίσουμε validation rules σε επίπεδο αντικειμένων και των ιδιοτήτων τους, έχει όμως τον περιορισμό ότι δεν μπορούν να δημιουργηθούν κανόνες που να αφορούν πολλαπλά αντικείμενα διαφορετικών τύπων. Με το Workflow όμως, μπορεί κανείς να ορίσει όσο περίπλοκους κανόνες θέλει, και μάλιστα μπορεί να ορίσει συνθήκες βάση των οποίων θα χρησιμοποιούνται διαφορετικά σετ κανόνων. Αυτό είναι πολύ ωραίο, ειδικά για χρηματοοικονομικές εφαρμογές οι οποίες έχουν μεγάλο αριθμό κανόνων που πρέπει να ικανοποιηθούν.

    Όταν συνδυάσει κανείς το workflow με την ήδη υπάρχουσα υποστήριξη για use cases του Composite UI Application Block, και κατ' επέκταση του SCSF, πετυχαίνει ένα καταπληκτικό συνδυασμό. Κυριολεκτικά, μπορεί κανείς πλέον να αναπαραστήσει ένα use case απευθείας στον κώδικα, να το εκτελέσει και να το τροποποιήσει, με μικρές αποκλίσεις από την αρχική σχεδίαση στο χαρτί. Μέχρι πρόσφατα, τα Use Cases χρησιμοποιούνταν καθαρά στη σχεδίαση. Δεν υπήρχε εύκολος τρόπος να αντιστοιχιστεί ένα use case με κάποια οντότητα του κώδικα. To CAB, με τις κλάσεις WorkItems και WorkItem Controllers επιτρέπει την αναπαράσταση των use cases, των σχέσεων include και extend και την μετάβαση από το ένα στο άλλο. Η μετάβαση αυτή γίνεται τώρα πολύ ευκολότερη χρησιμοποιώντας το Workflow, και όπως αναφέρθηκε και νωρίτερα, μπορεί να τροποποιηθεί ακόμα και αφού εγκατασταθεί η εφαρμογή στον πελάτη.

    Για όποιον έχει ενθουσιαστεί όσο και εγώ με όλα αυτά, το project του Smart Client Software Factory βρίσκεται στο http://www.codeplex.com/smartclient . Η τελευταία έκδοση του project είναι η Alpha Drop 7 η οποία βγήκε στις 6 Απριλίου. Όπως και με όλα τα Software Factories, υπάρχουν δύο τραπεζικές εφαρμογές ως reference και διάφορα Hands On Labs για να ξεκινήσει κανείς να δουλεύει με το SCSF πρωτού ακόμα βγει η τελική έκδοση.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems