คำถามติดแท็ก model-view-controller

Model – View – Controller (MVC) เป็นรูปแบบสถาปัตยกรรมที่ใช้ในวิศวกรรมซอฟต์แวร์ สำหรับ Microsoft ASP.NET MVC โปรดใช้แท็ก [asp.net-mvc] หรือ [asp.net-core-mvc] แทน สำหรับ Spring MVC โปรดใช้แท็ก [spring-mvc] แทน

4
ความแตกต่างระหว่าง Observer, Pub / Sub และ Data Binding
คือความแตกต่างระหว่างสิ่งที่รูปแบบสังเกตการณ์ , เผยแพร่ / สมัครสมาชิกและการผูกข้อมูล ? ฉันค้นหาใน Stack Overflow เล็กน้อยและไม่พบคำตอบที่ดี สิ่งที่ฉันเชื่อคือการผูกข้อมูลเป็นคำทั่วไปและมีวิธีการใช้งานที่แตกต่างกันเช่นรูปแบบการสังเกตการณ์หรือรูปแบบ Pub / Sub ด้วยรูปแบบ Observer Observable จะอัพเดต Observers ด้วย Pub / Sub ผู้เผยแพร่โฆษณาจำนวนมากสามารถเผยแพร่ข้อความของบางคลาสและสมาชิกจำนวนมากสามารถสมัครสมาชิกข้อความของคลาสที่ต้องการได้ มีรูปแบบอื่น ๆ ของการใช้ "การผูกข้อมูล" หรือไม่?

12
ควรเรียงลอจิกในรูปแบบมุมมองหรือคอนโทรลเลอร์? [ปิด]
ต้องการปรับปรุงโพสต์นี้หรือไม่? ให้คำตอบโดยละเอียดสำหรับคำถามนี้รวมถึงการอ้างอิงและคำอธิบายว่าทำไมคำตอบของคุณถึงถูกต้อง คำตอบที่ไม่มีรายละเอียดเพียงพออาจแก้ไขหรือลบออกได้ ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันมีรายการแบบหล่นลงที่แสดงค่าจากตารางไปยังผู้ใช้ปลายทาง ฉันต้องการให้ค่าเหล่านี้เรียงตามลำดับตัวอักษร ตามการออกแบบ MVC ที่เหมาะสมฉันควรวางตรรกะการเรียงลำดับของชั้นใด: แบบจำลองมุมมองหรือตัวควบคุม แก้ไข : เพื่อตอบสนองต่อคำถามของ LarsH "คุณหมายถึงรหัสที่กำหนดว่าต้องการเรียงลำดับหรือไม่หรือรหัสที่เรียงลำดับได้หรือไม่" ฉันเดิมอ้างถึงรหัสที่กำหนดเรียงลำดับที่ต้องการ

10
Rails Model, View, Controller และ Helper: เกิดอะไรขึ้น?
ใน Ruby on Rails Development (หรือ MVC โดยทั่วไป) ฉันควรทำตามกฎอย่างรวดเร็วว่าจะวางตรรกะไว้ที่ใด กรุณาตอบด้วยการยืนยัน - ด้วยอย่าใส่สิ่งนี้ไว้ที่นี่แทนที่จะทำอย่างนั้น

7
จำกัด จำนวนผลลัพธ์ที่แสดงเมื่อใช้ ngRepeat
ฉันพบว่าบทเรียน AngularJSยากที่จะเข้าใจ อันนี้ฉันกำลังเดินผ่านการสร้างแอพที่แสดงโทรศัพท์ ฉันอยู่ในขั้นตอนที่ 5และฉันคิดว่าเป็นการทดลองฉันพยายามอนุญาตให้ผู้ใช้ระบุจำนวนที่ต้องการให้แสดง มุมมองมีลักษณะดังนี้: <body ng-controller="PhoneListCtrl"> <div class="container-fluid"> <div class="row-fluid"> <div class="span2"> <!--Sidebar content--> Search: <input ng-model="query"> How Many: <input ng-model="quantity"> Sort by: <select ng-model="orderProp"> <option value="name">Alphabetical</option> <option value="age">Newest</option> </select> </div> <div class="span10"> <!--Body content--> <ul class="phones"> <li ng-repeat="phone in phones | filter:query | orderBy:orderProp"> {{phone.name}} <p>{{phone.snippet}}</p> </li> …

12
MVC Vs n-tier สถาปัตยกรรม
ฉันสงสัยว่าอะไรคือความแตกต่างระหว่าง MVC (ซึ่งเป็นรูปแบบสถาปัตยกรรม) และสถาปัตยกรรมระดับ n สำหรับแอปพลิเคชัน ฉันค้นหามัน แต่หาคำอธิบายง่ายๆไม่ได้ ฉันอาจเป็นคนไร้เดียงสาเล็กน้อยเกี่ยวกับแนวคิด MVC ดังนั้นหากใครสามารถอธิบายความแตกต่างได้ ไชโย

30
มี JavaScript MVC (micro-) framework หรือไม่? [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา มีเฟรมเวิร์กJavaScript MVC (micro-) ฝั่งไคลเอ็นต์หรือไม่ ฉันมีรูปแบบ HTML ที่ค่อนข้างซับซ้อนและจะได้รับประโยชน์จากรูปแบบ MVC ฉันคิดว่าทางออกที่ดีจะให้สิ่งต่อไปนี้: โมเดลและมุมมองอัปเดตคอนโทรลเลอร์เมื่อค่าเปลี่ยนแปลง (รูปแบบผู้สังเกตการณ์) เติมข้อมูลโมเดลจากข้อมูลฟอร์มเมื่อเพจโหลด เติมแบบฟอร์มจากโมเดลเมื่อโมเดลเปลี่ยนแปลง Ajax, ดาวหาง, JSONPและแจ๊สทั้งหมดนั้นเป็นสิ่งที่เกินความจริง

10
วิธีการแสดงผลและผนวกมุมมองย่อยใน Backbone.js
ฉันมีการตั้งค่ามุมมองที่ซ้อนกันซึ่งสามารถเข้าถึงแอปพลิเคชันของฉันได้ค่อนข้างลึก มีหลายวิธีที่ฉันสามารถคิดเริ่มต้นแสดงผลและต่อท้ายมุมมองย่อยได้ แต่ฉันสงสัยว่าแนวทางปฏิบัติทั่วไปคืออะไร นี่คือสองสามข้อที่ฉันคิดไว้: initialize : function () { this.subView1 = new Subview({options}); this.subView2 = new Subview({options}); }, render : function () { this.$el.html(this.template()); this.subView1.setElement('.some-el').render(); this.subView2.setElement('.some-el').render(); } ข้อดี:คุณไม่ต้องกังวลเกี่ยวกับการรักษาคำสั่ง DOM ที่ถูกต้องด้วยการต่อท้าย มุมมองจะเริ่มต้นในช่วงต้นดังนั้นจึงไม่มีสิ่งที่ต้องทำทั้งหมดพร้อมกันในฟังก์ชันการแสดงผล จุดด้อย:คุณถูกบังคับให้มอบหมายงานใหม่ () ซึ่งอาจมีค่าใช้จ่ายสูง? ฟังก์ชันการแสดงผลของมุมมองพาเรนต์ยุ่งเหยิงกับการแสดงผลมุมมองย่อยทั้งหมดที่ต้องเกิดขึ้น? คุณไม่มีความสามารถในการตั้งค่าtagNameองค์ประกอบดังนั้นเทมเพลตจำเป็นต้องดูแล tagNames ที่ถูกต้อง อีกวิธีหนึ่ง: initialize : function () { }, render : function () { …

1
แนวคิด DTO และ DAO และ MVC [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดขึ้นมาใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา 1) เหตุใดเราจึงใช้DTOและDAOและเมื่อใดที่เราควรใช้ ฉันกำลังพัฒนาGUIซอฟต์แวร์ Java เพื่อทำเกี่ยวกับการแทรกแก้ไขลบข้อมูล แต่ผมกำลังดิ้นรนที่จะแยกแยะระหว่างDTO/DAOและModel, View, Controller(MVC) โครงสร้าง? พวกเขามีความคล้ายกันซึ่งจะดีกว่าที่จะใช้เมื่อมีปฏิสัมพันธ์กับฐานข้อมูลผ่าน GUIJava 2) สิ่งหนึ่งที่ฉันอยากรู้มากคือการมีแบบฝึกหัดที่ดีviewหรือไม่Controllerในชั้นเรียนเดียว หากเราคิดถึงNetbeansคุณสามารถสร้างGUIFrame Class และเพิ่มส่วนประกอบต่างๆเช่นJButtonลงในเฟรมได้โดยการดับเบิลคลิกที่ปุ่มจะนำคุณไปยังactionListenermethod (Controller) ซึ่งดูเหมือนว่าจะอยู่ในเฟรมข้อมูลที่จะแสดงต่อผู้ใช้ (View) . พวกเขาอยู่ในคลาสเดียวกัน นั่นขัดกับแนวคิดนี้อย่างสิ้นเชิงหรือไม่? นี่คือสิ่งที่ฉันกำลังพูดถึง การปฏิบัติที่ไม่ดีในการมีมุมมองและควบคุมในชั้นเรียนเดียว?

7
วิธีรวมมุมมอง / สไตล์เฉพาะบางส่วนใน AngularJS
อะไรคือวิธีที่เหมาะสม / ได้รับการยอมรับในการใช้สไตล์ชีตแยกต่างหากสำหรับมุมมองต่างๆที่แอปพลิเคชันของฉันใช้ ตอนนี้ฉันกำลังวางองค์ประกอบลิงก์ใน html ของมุมมอง / บางส่วนที่ด้านบน แต่ฉันได้รับแจ้งว่านี่เป็นการปฏิบัติที่ไม่ดีแม้ว่าเบราว์เซอร์ที่ทันสมัยทั้งหมดจะรองรับ แต่ฉันสามารถเห็นได้ว่าทำไมจึงขมวด ความเป็นไปได้อื่น ๆ คือการวางสไตล์ชีตแยกต่างหากใน index.html ของheadฉัน แต่ฉันต้องการให้มันโหลดสไตล์ชีตก็ต่อเมื่อมุมมองถูกโหลดในชื่อของประสิทธิภาพ นี่เป็นการปฏิบัติที่ไม่ดีเนื่องจากการจัดรูปแบบจะไม่มีผลจนกว่าจะโหลด css จากเซิร์ฟเวอร์ทำให้เกิดการแฟลชของเนื้อหาที่ไม่ได้ฟอร์แมตอย่างรวดเร็วในเบราว์เซอร์ที่ทำงานช้าหรือไม่ ฉันยังไม่เห็นสิ่งนี้แม้ว่าฉันจะทดสอบในพื้นที่ก็ตาม มีวิธีโหลด CSS ผ่านวัตถุที่ส่งไปยัง Angular $routeProvider.whenหรือไม่? ขอบคุณล่วงหน้า!

7
ไม่สามารถตั้งค่าแอตทริบิวต์ข้อมูลโดยใช้ jQuery Data () API
ฉันมีฟิลด์ต่อไปนี้ในมุมมอง MVC: @Html.TextBoxFor(model => model.Course.Title, new { data_helptext = "Old Text" })</span> ในไฟล์ js ที่แยกจากกันฉันต้องการตั้งค่าdata-helptextแอตทริบิวต์เป็นค่าสตริง นี่คือรหัสของฉัน: alert($(targetField).data("helptext")); $(targetField).data("helptext", "Testing 123"); การalert()โทรใช้งานได้ดีโดยจะแสดงข้อความ "Old Text" ในกล่องโต้ตอบการแจ้งเตือน อย่างไรก็ตามการเรียกเพื่อตั้งค่าdata-helptextแอตทริบิวต์เป็น "การทดสอบ 123" ไม่ทำงาน "ข้อความเก่า" ยังคงเป็นค่าปัจจุบันของแอตทริบิวต์ ฉันใช้การโทรไปยัง data () ไม่ถูกต้องหรือไม่? ฉันได้ค้นหาสิ่งนี้ในเว็บแล้ว แต่ฉันไม่เห็นว่าฉันทำอะไรผิด นี่คือมาร์กอัป HTML: <input data-helptext="Old Text" id="Course_Title" name="Course.Title" type="text" value="" />

7
การทดสอบและความปลอดภัยในฤดูใบไม้ผลิ: วิธีจำลองการตรวจสอบสิทธิ์
ฉันพยายามหาวิธีทดสอบหน่วยว่า URL ของคอนโทรลเลอร์ของฉันมีการรักษาความปลอดภัยอย่างเหมาะสมหรือไม่ ในกรณีที่มีคนเปลี่ยนแปลงสิ่งต่างๆรอบตัวและลบการตั้งค่าความปลอดภัยโดยไม่ได้ตั้งใจ วิธีการควบคุมของฉันมีลักษณะดังนี้: @RequestMapping("/api/v1/resource/test") @Secured("ROLE_USER") public @ResonseBody String test() { return "test"; } ฉันตั้งค่า WebTestEnvironment ดังนี้: import javax.annotation.Resource; import javax.naming.NamingException; import javax.sql.DataSource; import org.junit.Before; import org.junit.runner.RunWith; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.web.FilterChainProxy; import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.ContextConfiguration; …

2
GUI ไม่ทำงานหลังจากเขียนใหม่เป็น MVC
ฉันกำลังฝึกเขียนโปรแกรมสไตล์ MVC ฉันมีเกม Mastermind ในไฟล์เดียวใช้งานได้ดี (อาจจะนอกเหนือจากที่ปุ่ม "ตรวจสอบ" จะมองไม่เห็นเมื่อเริ่มต้น) http://paste.pocoo.org/show/226726/ แต่เมื่อฉันเขียนใหม่เป็นโมเดลดูไฟล์คอนโทรลเลอร์ - และเมื่อฉันคลิกที่พินว่าง (ซึ่งควรได้รับการอัปเดตและทาสีใหม่ด้วยสีใหม่) การสังเกตจะเกิดขึ้น ใครสามารถเห็นปัญหาที่นี่? ฉันได้ลองทาสีใหม่ () ในที่ต่างๆแล้ว แต่ก็ไม่ได้ผลเลย: / หลัก: public class Main { public static void main(String[] args){ Model model = new Model(); View view = new View("Mastermind", 400, 590, model); Controller controller = new Controller(model, view); view.setVisible(true); …

4
Django เทียบกับ Model View Controller [ปิด]
ตามที่กล่าวไว้ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ใครช่วยอธิบายหน่อยได้ไหมว่าความแตกต่างระหว่าง Django กับรูปแบบ Model View Controller ตามหน้าที่แล้วเราคาดหวังอะไรจากความแตกต่างเหล่านั้นนั่นคือสิ่งที่ทำงานแตกต่างกันเมื่อเปรียบเทียบ Django กับตัวอย่างเช่น Ruby on Rails

10
MVC เป็นรูปแบบการออกแบบหรือรูปแบบสถาปัตยกรรม
ตามที่SunและMsdnเป็นรูปแบบการออกแบบ ตามวิกิพีเดียเป็นรูปแบบสถาปัตยกรรม เมื่อเปรียบเทียบกับรูปแบบการออกแบบลวดลายสถาปัตยกรรมจะมีขนาดใหญ่กว่า (Wikipedia - รูปแบบสถาปัตยกรรม ) หรือเป็นรูปแบบสถาปัตยกรรมที่มีรูปแบบการออกแบบด้วย? อันไหนจริง?

6
ทำไม Qt จึงใช้คำศัพท์เกี่ยวกับโมเดล / มุมมองในทางที่ผิด?
ฉันคิดว่าคำศัพท์ที่ใช้ใน Qt กับ model / view controls นั้นมีข้อบกพร่อง ในหน้าคำอธิบายพวกเขาระบุว่าพวกเขาทำให้ MVC เป็น MV ง่ายขึ้นโดยการรวม View และ Controller และให้ภาพต่อไปนี้: อย่างไรก็ตามฉันคิดว่าพวกเขาตั้งชื่อบทบาทของวัตถุผิดและฉันคิดว่า สิ่งที่พวกเขาเรียกว่า View with merged Controller นั้นเป็น View only สิ่งที่พวกเขาเรียกว่า Model คือตัวควบคุมเท่านั้น หากคุณต้องการมีโมเดลจริงๆก็น่าจะเป็นที่ "ข้อมูล" ของพวกเขา ฉันกำลังพูดถึงวิธีปกติและมีเหตุผลที่คุณจะใช้องค์ประกอบ Qt model / view ในแอปของคุณ นี่คือเหตุผล: โดยทั่วไปจะเป็นคอมโพเนนต์ Qt ซึ่งใช้ตามที่เป็นอยู่โดยไม่ต้องเพิ่มลอจิกคอนโทรลเลอร์เฉพาะสำหรับอ็อบเจ็กต์ของคุณ) นี่ไม่ใช่ Model เพียงเพราะคุณควรใช้วิธีการ Qt หลายอย่างเช่น rowCount, columnCount, data …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.