您的位置:首页 > 财经 > 产业 > 企业宣传片常用背景音乐_免费企业宣传片制作软件_磁力屋 最好用_网站域名怎么注册

企业宣传片常用背景音乐_免费企业宣传片制作软件_磁力屋 最好用_网站域名怎么注册

2024/11/16 4:05:21 来源:https://blog.csdn.net/qq_36303853/article/details/142377754  浏览:    关键词:企业宣传片常用背景音乐_免费企业宣传片制作软件_磁力屋 最好用_网站域名怎么注册
企业宣传片常用背景音乐_免费企业宣传片制作软件_磁力屋 最好用_网站域名怎么注册

文章目录

  • 什么是MVC?
  • MVC眼花缭乱设计图
  • MVP和MVC
  • 最经典的MVC的业务流程
  • Unity MVC 框架示例
        • 1. 创建项目结构
        • 2. 实现模型
        • 3. 实现视图
        • 4. 实现控制器
        • 5. 使用示例
  • 总结
  • 参考
  • 完结

什么是MVC?

MVC自1982年被设计出来,至今都有着很大比重的使用率,特别是目前软件及游戏迭代如此之快的情况下。高效的增删功能,低耦合又小巧灵活的框架MVC,深受广大ProgramDesigner的喜爱。

MVC框架相信大部分程序员(尤其做前后端的)都不会陌生。MVC的全称是Model-View-Controller(模型-视图-控制器),比如php非常火的thinkphp和laravel框架就是典型的MVC架构。

MVC(Model-View-Controller)是一种软件架构模式,MVC 背后的一般思想是将软件的逻辑部分 与数据 和UI(显示窗口) 分开。这有助于减少不必要的依赖关系。将应用程序分为三部分:

  1. Model(模型):负责数据和业务逻辑。它管理应用程序的状态和数据。
  2. View(视图):负责用户界面和用户交互。它展示数据并响应用户输入。
  3. Controller(控制器):处理用户输入并更新模型和视图。

MVC眼花缭乱设计图

我们从网上搜索mvc相关资料时,如果你多看几篇文章的话可能会发现,好像他们介绍的设计图都不太一样,这里罗列了大部分的设计图
在这里插入图片描述
到底上面列出的设计图哪个才是对的。其实都是对的。为什么这么说呢,这得从mvc的发展说起。
MVC框架模式最早由Trygve Reenskaug 于1978年在Smalltalk-80系统上首次提出。经过了这么多年的发展,当然会演变出不同的版本,但核心没变依旧还是三层模型Model-View-Control。

MVP和MVC

看了不少的文章,发现每个人对MVC/MVP看法都不一样。

我觉得可以这样简单的总结一下,MVP原本是MVC的一种模式变体,随着时间推移,MVC和MVP的边界确实越来越模糊。现在其实已经很难区分出MVP了,许多开发者根据项目需求和个人经验灵活调整这两种模式,形成了各自的“MVC”版本。

但是MVC的底层逻辑是不变的,都是为了实现关注点分离,提升代码的可维护性和可测试性。通过将数据、业务逻辑和用户界面分开,开发者能够更容易地管理复杂性、进行单元测试和实现代码复用。

这种灵活性使得架构设计更具适应性,但也可能导致代码风格不一致,因此在团队中保持一致性和沟通很重要。

最经典的MVC的业务流程

在这里插入图片描述

Unity MVC 框架示例

下面是一个简单的 Unity MVC 框架实现。

1. 创建项目结构
/Assets/Scripts/ModelGameModel.cs/ViewGameView.cs/ControllerGameController.cs
2. 实现模型
// GameModel.cs
using System;[Serializable]
public class GameModel
{public int Score { get; private set; }public void IncreaseScore(int amount){Score += amount;OnScoreChanged?.Invoke(Score);}public event Action<int> OnScoreChanged;
}
3. 实现视图
// GameView.cs
using UnityEngine;
using UnityEngine.UI;public class GameView : MonoBehaviour
{public Text scoreText;public void UpdateScore(int score){scoreText.text = "Score: " + score;}
}
4. 实现控制器
// GameController.cs
using UnityEngine;public class GameController : MonoBehaviour
{private GameModel model;private GameView view;private void Start(){model = new GameModel();view = GetComponent<GameView>();model.OnScoreChanged += view.UpdateScore;// 示例:增加分数model.IncreaseScore(10);}private void Update(){// 示例:监听输入增加分数if (Input.GetKeyDown(KeyCode.Space)){model.IncreaseScore(1);}}
}
5. 使用示例
  1. 创建一个新的 Unity 场景。
  2. 创建一个空 GameObject,命名为 GameController,并添加 GameController 脚本。
  3. 创建一个 UI Text 元素并命名为 ScoreText,将其拖放到 GameView 脚本的 scoreText 字段。
  4. GameView 脚本附加到 GameController GameObject 上。
  5. 运行场景,按空格键以增加分数。

总结

这个简单的 Unity MVC 框架示例展示了如何将模型、视图和控制器分离,使得项目结构清晰,易于维护。在更复杂的项目中,可以扩展这个框架来处理更复杂的逻辑和交互。

MVC只是程序框架中的其中一种,其实每个架构师脑子里都存着很多说不出名字的框架,这就是为什么人家叫架构师,你叫程序员的原因。有一个好的程序框架,比糊里糊涂的写代码强千万倍,灵活迭代、高效编码,只要你想,你就可以。

参考

https://unity.com/cn/how-to/build-modular-codebase-mvc-and-mvp-programming-patterns
https://blog.csdn.net/qq_39574690/article/details/80757261
https://www.jianshu.com/p/acc689be52f9
https://blog.csdn.net/milu_ELK/article/details/139920815
https://blog.csdn.net/singwhatiwanna/article/details/80904132

完结

赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注,你的每一次支持都是我不断创作的最大动力。当然如果你发现了文章中存在错误或者有更好的解决方法,也欢迎评论私信告诉我哦!

好了,我是向宇,https://xiangyu.blog.csdn.net

一位在小公司默默奋斗的开发者,闲暇之余,边学习边记录分享,站在巨人的肩膀上,通过学习前辈们的经验总是会给我很多帮助和启发!如果你遇到任何问题,也欢迎你评论私信或者加群找我, 虽然有些问题我也不一定会,但是我会查阅各方资料,争取给出最好的建议,希望可以帮助更多想学编程的人,共勉~
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com