Εκμάθηση ASP.NET MVC για αρχάριους: Τι είναι, Archiδομή
Τι είναι το ASP.NET MVC;
MVC ASP.NET είναι ένα πλαίσιο ανάπτυξης ιστού ανοιχτού κώδικα από Microsoft που παρέχει μια αρχιτεκτονική Ελεγκτή Προβολής Μοντέλου. Το ASP.net MVC προσφέρει μια εναλλακτική λύση στις φόρμες ιστού ASP.net για τη δημιουργία εφαρμογών Ιστού. Αποτελεί μέρος της πλατφόρμας .Net για δημιουργία, ανάπτυξη και εκτέλεση εφαρμογών ιστού. Μπορείτε να αναπτύξετε εφαρμογές Ιστού και ιστότοπους με τη βοήθεια HTML, CSS, jQuery, JavascriptΚ.λπ.
Μάθετε MVC με αυτό το σεμινάριο ASP.NET MVC που καλύπτει όλες τις βασικές έννοιες του MVC για αρχάριους:
Γιατί ASP.net MVC;
Αν και οι φόρμες Ιστού ήταν πολύ επιτυχημένες, Microsoft σκέφτηκε να αναπτύξει το ASP.net MVC. Το κύριο πρόβλημα με το ASP.net webForms είναι η απόδοση.
Σε εφαρμογή ιστού, υπάρχουν τέσσερις κύριες πτυχές που καθορίζουν την απόδοση:
- Ζητήματα χρόνου απόκρισης
- Πρόβλημα Δοκιμής Μονάδων
- Προσαρμογή HTML
- Επαναχρησιμοποίηση της κλάσης κώδικα πίσω
Το ASP.net MVC υπερέχει στις παραπάνω παραμέτρους.
Ιστορικό εκδόσεων του MVC
ASP.NET MVC1
- Κυκλοφόρησε στις 13 Μαρτίου 2009
- Λειτουργεί σε.NET 3.5
- Visual Studio 2008
- Αρχιτεκτονική MVC Pattern με WebForm Engine
- Τα κύρια χαρακτηριστικά περιλαμβάνουν Html & Δοκιμή μονάδας, Ajax Helpers, Routing κ.λπ.
ASP.NET MVC2
- Αυτή η έκδοση κυκλοφόρησε στις 10 Μαρτίου 2010
- Λειτουργεί σε .NET 3.5,4.0 και με Microsoft Visual Studio 2008
- Συμπεριλάβετε λειτουργίες όπως Templated helpers, Ul helpers με αυτόματη σκαλωσιά και προσαρμόσιμα πρότυπα
- Υποστηρίζει τα DataAnnotations Attributes για την εφαρμογή επικύρωσης μοντέλου στις πλευρές του πελάτη και του διακομιστή
ASP.NET MVC3
- Κυκλοφόρησε στις 13 Ιανουαρίου 2011
- Λειτουργεί σε .NET 4.0 και με Microsoft Visual Studio 2010
- Χρήση του ΝuGet για την παράδοση λογισμικού και σας επιτρέπει να διαχειρίζεστε εξαρτήσεις σε όλη την πλατφόρμα
- Καλύτερα JavaΥποστήριξη σεναρίων με, jQuery Validation και JSON binding
- Προσφέρει χαρακτηριστικά όπως η μηχανή προβολής Razor. βελτιωμένα χαρακτηριστικά Data Annotations για επικύρωση μοντέλου τόσο από την πλευρά του πελάτη όσο και από την πλευρά του διακομιστή
ASP.NET MVC4
- Αυτή η έκδοση κυκλοφόρησε τον Αύγουστο του 2012
- Τρέχει σε .NET 4.0, 4.5 και με Visual Studio 2010 & Visual Studio 2012
- Βελτιώσεις στα προεπιλεγμένα πρότυπα έργων
- Προσφέρει λειτουργίες όπως πρότυπο έργου για κινητά χρησιμοποιώντας jQuery Mobile, υποστήριξη εργασιών για ασύγχρονους ελεγκτές, ομαδοποίηση, ελαχιστοποίηση κ.λπ.
ASP.NET MVC5
- Κυκλοφόρησε στις 17 Οκτωβρίου 2013
- Εκτελείται σε .NET 4.5, 4.5.1 και με Visual Studio 2012 & Visual OneASP.NET
- Υποστηρίζει τη δρομολόγηση χαρακτηριστικών στο MVC
Χαρακτηριστικά του MVC
- Εύκολη και χωρίς τριβές δοκιμασιμότητα
- Πλήρης έλεγχος του HTML σας, JavaΣενάριο και διευθύνσεις URL
- Μόχλευση που υπάρχει ASP.NET Χαρακτηριστικά
- Μια νέα επιλογή παρουσίασης για το ASP.Net
- Ένας απλούστερος τρόπος προγραμματισμού του Asp.Net
- Σαφής διαχωρισμός λογικής: Μοντέλο, Προβολή, Ελεγκτής
- Δοκιμαστική Ανάπτυξη
- Υποστήριξη για παράλληλη ανάπτυξη
Πράγματα που πρέπει να θυμάστε κατά τη δημιουργία της εφαρμογής MVC
Ακολουθούν μερικά χρήσιμα πράγματα σε αυτό το σεμινάριο ASP.NET MVC που πρέπει να θυμάστε για τη δημιουργία εφαρμογής MVC:
- Πρέπει να θυμάστε ότι το ASP .net MVC ΔΕΝ αντικαθιστά τις εφαρμογές που βασίζονται σε φόρμες ιστού ASP.Net
- Η προσέγγιση της ανάπτυξης εφαρμογών MVC πρέπει να αποφασιστεί με βάση τις απαιτήσεις και τις δυνατότητες εφαρμογής που παρέχονται από το ASP .net MVC για να ταιριάζει στις συγκεκριμένες ανάγκες ανάπτυξης.
- Η διαδικασία ανάπτυξης εφαρμογών με το ASP .NET MVC είναι πιο περίπλοκη σε σύγκριση με εφαρμογές που βασίζονται σε φόρμες Ιστού.
- Η δυνατότητα συντήρησης της εφαρμογής είναι πάντα υψηλότερη με τον διαχωρισμό των εργασιών εφαρμογής.
Το MVC είναι ένα πρότυπο αρχιτεκτονικής λογισμικού που ακολουθεί τη μέθοδο διαχωρισμού ανησυχιών. Σε αυτό το μοντέλο οι εφαρμογές .Net χωρίζονται σε τρία διασυνδεδεμένα μέρη που ονομάζονται Model, View και Controller.
Ο στόχος του μοτίβου MVC είναι ότι καθένα από αυτά τα μέρη μπορεί να αναπτυχθεί, να δοκιμαστεί σε σχετική απομόνωση και επίσης να συνδυαστεί για να δημιουργήσει μια πολύ ισχυρή εφαρμογή.
Ας τα δούμε όλα αναλυτικά:
Μοντέλα
Τα αντικείμενα μοντέλου είναι μέρη της εφαρμογής που υλοποιούν τη λογική για την εφαρμογή τομέα δεδομένων. Ανακτά και αποθηκεύει την κατάσταση του μοντέλου σε μια βάση δεδομένων. Για παράδειγμα, το αντικείμενο προϊόντος μπορεί να ανακτήσει πληροφορίες από το α βάσεις δεδομένων, χειρουργήστε το. Στη συνέχεια, γράψτε τις πληροφορίες πίσω στον πίνακα προϊόντων στον διακομιστή SQL.
Προβολές
Οι προβολές είναι τα στοιχεία που χρησιμοποιούνται για την εμφάνιση της διεπαφής χρήστη (UI) της εφαρμογής που ονομάζεται επίσης μοντέλο προβολής στο MVC. Εμφανίζει την εφαρμογή .Net MVC που δημιουργείται από τα δεδομένα του μοντέλου.
Το συνηθισμένο παράδειγμα θα ήταν μια προβολή επεξεργασίας ενός πίνακα Στοιχείων. Εμφανίζει πλαίσια κειμένου, αναδυόμενα παράθυρα και ελέγχει πλαίσια με βάση την τρέχουσα κατάσταση προϊόντων και αντικειμένων.
ελεγκτής
Οι ελεγκτές χειρίζονται την αλληλεπίδραση του χρήστη, εργάζονται με το μοντέλο και επιλέγουν μια προβολή για την απόδοση αυτής της οθόνης Ul. Σε μια εφαρμογή .Net MVC, η προβολή εμφανίζει μόνο πληροφορίες, ο ελεγκτής διαχειρίζεται και ανταποκρίνεται στην εισαγωγή και την αλληλεπίδραση του χρήστη χρησιμοποιώντας φίλτρα ενεργειών στο MVC.
Για παράδειγμα, ο ελεγκτής διαχειρίζεται τιμές query-string και μεταβιβάζει αυτές τις τιμές στο μοντέλο.
Φόρμες Ιστού έναντι MVC
Παράμετροι | WebFroms | MVC |
---|---|---|
Μοντέλο | Οι Φόρμες Ιστού Asp.Net ακολουθούν το μοντέλο ανάπτυξης που βασίζεται σε συμβάντα. | Το Asp.Net MVC χρησιμοποιεί μοντέλο ανάπτυξης βασισμένο σε μοτίβα MVC. |
Χρησιμοποιείται από | Υπάρχει από το 2002 | Κυκλοφόρησε για πρώτη φορά το 2009 |
Υποστήριξη για κατάσταση προβολής | Το Asp.Net Web Form υποστηρίζει κατάσταση προβολής για διαχείριση κατάστασης στην πλευρά του πελάτη. | Το .Net MVC δεν υποστηρίζει κατάσταση προβολής. |
Τύπος URL | Το Asp.Net Web Form έχει URL που βασίζονται σε αρχεία. Σημαίνει ότι το όνομα αρχείου υπάρχει στα URL και πρέπει να υπάρχουν φυσικά. | Το Asp.Net MVC έχει διευθύνσεις URL που βασίζονται σε διαδρομή που σημαίνει URL που ανακατευθύνονται σε ελεγκτές και ενέργειες. |
Σύνταξη | Το Asp.Net MVC ακολουθεί τη Σύνταξη φορμών Ιστού. | Το Asp.Net MVC ακολουθεί την προσαρμόσιμη σύνταξη. |
Τύπος προβολής | Φόρμα Ιστού, οι προβολές συνδέονται στενά με τον κώδικα πίσω (ASPX-CS), δηλαδή τη λογική. | Το MVC, οι προβολές και η λογική διατηρούνται πάντα χωριστά. |
Συνεπής εμφάνιση και αίσθηση | Διαθέτει κύριες σελίδες για συνεπή εμφάνιση. | Το Asp.Net MVC διαθέτει διατάξεις για συνεπή εμφάνιση. |
Επαναχρησιμοποίηση κώδικα | Η Φόρμα Ιστού προσφέρει στοιχεία ελέγχου χρήστη για επαναχρησιμοποίηση κώδικα. | Το Asp.Net MVC έχει προσφέρει μερικές προβολές για επαναχρησιμοποίηση κώδικα. |
Έλεγχος για HTML | Less έλεγχος του αποδοθέντος HTML. | Πλήρης έλεγχος του HTML |
Κρατική διαχείριση | Αυτόματη διαχείριση κατάστασης των ελέγχων. | Χειροκίνητη διαχείριση κατάστασης. |
Υποστήριξη TDD | Απαιτείται αδύναμο ή προσαρμοσμένο TDD. | Ενθαρρύνει και περιλαμβάνει TDD! |
Πλεονεκτήματα του ASP.NET MVC
- Εφαρμογές με υψηλή δυνατότητα συντήρησης από προεπιλογή
- Σας επιτρέπει να αντικαταστήσετε οποιοδήποτε στοιχείο της εφαρμογής.
- Καλύτερη υποστήριξη για Test Driven Development
- Η διαχείριση των σύνθετων εφαρμογών είναι εύκολη λόγω των τμημάτων Model, View και Controllers.
- Προσφέρει στιβαρό μηχανισμό δρομολόγησης με μοτίβο μπροστινού ελεγκτή
- Προσφέρει καλύτερο έλεγχο της συμπεριφοράς της εφαρμογής με την εξάλειψη της κατάστασης προβολής και των φορμών που βασίζονται σε διακομιστή
- Οι εφαρμογές .Net MVC υποστηρίζονται από μεγάλες ομάδες προγραμματιστών και σχεδιαστών Ιστού
- Προσφέρει περισσότερο έλεγχο στις συμπεριφορές της εφαρμογής. Χρησιμοποιεί επίσης ένα βελτιστοποιημένο εύρος ζώνης για αιτήματα που γίνονται στον διακομιστή
Μειονεκτήματα του ASP.NET MVC
- Δεν μπορείτε να δείτε την προεπισκόπηση της σελίδας σχεδίασης όπως η σελίδα .aspx.
- Πρέπει να εκτελείτε το πρόγραμμα κάθε φορά για να δείτε την πραγματική του σχεδίαση.
- Η κατανόηση της ροής της εφαρμογής μπορεί να είναι δύσκολη
- Είναι αρκετά περίπλοκο στην εφαρμογή του, επομένως δεν είναι ιδανική επιλογή για εφαρμογές μικρού επιπέδου
- Είναι δύσκολο να μάθετε MVC για ASP.NET, καθώς απαιτεί μεγάλη κατανόηση του μοτίβου MVC
Καλυτερα εξασκούνται κατά τη χρήση του ASP.Net MVC
- Δημιουργήστε μια ξεχωριστή διάταξη για το MODEL σε περίπτωση μεγάλου και πολύπλοκου κώδικα για να αποφύγετε οποιαδήποτε ανεπιθύμητη κατάσταση o
- Το μοντέλο πρέπει να περιλαμβάνει επιχειρηματική λογική, συντήρηση συνεδρίας, τμήμα επικύρωσης και τμήμα λογικής δεδομένων.
- Το VIEW δεν πρέπει να περιέχει καμία επιχειρηματική λογική και συντήρηση περιόδου σύνδεσης, χρησιμοποιήστε το ViewData για πρόσβαση σε δεδομένα στο View
- Η επιχειρηματική λογική και η πρόσβαση σε δεδομένα δεν πρέπει ποτέ να εμφανίζονται στο ControllerViewData
- Ο ελεγκτής θα πρέπει να είναι υπεύθυνος μόνο για την προετοιμασία και την επιστροφή μιας προβολής, την κλήση μοντέλου, την ανακατεύθυνση σε δράση κ.λπ.
- Διαγράψτε τον κώδικα επίδειξης από την εφαρμογή όταν τον δημιουργήσετε Διαγραφή AccountController
- Χρησιμοποιήστε μόνο συγκεκριμένη μηχανή προβολής για να δημιουργήσετε σήμανση HTML από την προβολή σας, καθώς είναι ο συνδυασμός HTML και κώδικα προγραμματισμού.
Περίληψη
- Το ASP.NET MVC είναι ένα πλαίσιο ανάπτυξης ιστού ανοιχτού κώδικα από Microsoft που παρέχει ένα Αρχιτεκτονική του ελεγκτή προβολής μοντέλου.
- Το ASP.net MVC προσφέρει μια εναλλακτική λύση στις φόρμες ιστού ASP.net για τη δημιουργία εφαρμογών Ιστού.
- Το κύριο πρόβλημα με το ASP.net webForms είναι η απόδοση.
- Το ASP.net MVC προσφέρει Εύκολη και χωρίς τριβή δυνατότητα δοκιμής με πλήρη έλεγχο του HTML και των URL σας.
- Πρέπει να θυμάστε ότι το ASP .net MVC ΔΕΝ αντικαθιστά τις εφαρμογές που βασίζονται σε φόρμες ιστού ASP.Net.
- Η προσέγγιση της ανάπτυξης εφαρμογών MVC ή του Κύκλου Ζωής του ASP.NET MVC πρέπει να αποφασίζεται με βάση τις απαιτήσεις και τις δυνατότητες εφαρμογής που παρέχονται από το ASP .net MVC για να ανταποκρίνεται στις συγκεκριμένες ανάγκες ανάπτυξης.
- Το ASP.NET MVC προσφέρει εφαρμογές με υψηλή δυνατότητα συντήρησης από προεπιλογή.
- Με το ASP.net δεν μπορείτε να δείτε προεπισκόπηση σελίδας σχεδίασης όπως η σελίδα .aspx.
- Ως βέλτιστη πρακτική, το μοντέλο θα πρέπει να περιλαμβάνει επιχειρηματική λογική, συντήρηση συνεδρίας, τμήμα επικύρωσης και τμήμα λογικής δεδομένων.