官术网_书友最值得收藏!

An effective study practices case study

Whenever I'm teaching a new programming concept to students, I try to draw a fitting analogy to a real-world concept. This process is called reification and I view it as one of my most important tasks as a teacher.

Let's imagine that you are learning about the MVC (Model, View, Controller) design pattern in software development. You could take the approach of trying to memorize each of the roles of the Model, View, and Controller. However, that strategy wouldn't help you answer questions related to how each of the components work together. And if you memorize quiz questions and answers, you probably will have issues answering anything that you haven't memorized.

The reification example

What if instead of trying to memorize key terms about the MVC pattern you focused on drawing a real-world analogy to the process? My favorite way to understand this type of architecture is comparing it to a restaurant:

  • Model: The model is the chef in the kitchen. In the same way that a chef prepares the meal for customers, the model works directly with the data for the application.
  • Controller: The controller works like a restaurant waiter. In an application, the controller's role is based on taking requests and managing communication between the model and the view. This is much like a waiter who takes customer orders, communicates with the chef, and eventually brings the food out to the table.
  • View: The view is like the table that a customer is sitting at. It doesn't do much besides provide a platform for placing the food on. This is exactly like how the view should operate in an application. If built properly, a view should simply be a place where data is shown to users.

Do you see what we just did? We learned about the MVC design pattern in a way that our minds can actually comprehend. I could fall out of bed and recite back the role of each component of the MVC architecture, not because I spent countless hours trying to memorize them, but because I connected the concept to my real-world experiences.

主站蜘蛛池模板: 洪雅县| 岐山县| 桓仁| 台中市| 临漳县| 河北区| 乌鲁木齐县| 辽阳市| 壶关县| 宝坻区| 华亭县| 南江县| 富顺县| 共和县| 和顺县| 曲周县| 衡阳县| 禹州市| 乐东| 海盐县| 汾西县| 鄢陵县| 馆陶县| 新丰县| 萝北县| 黔江区| 麦盖提县| 邓州市| 黄大仙区| 磐石市| 南投县| 炎陵县| 白河县| 徐州市| 湄潭县| 平遥县| 邯郸县| 本溪市| 浙江省| 马龙县| 油尖旺区|