当前位置: 首页 > news >正文

阿里云服务器创建网站wordpress开发商

阿里云服务器创建网站,wordpress开发商,创意界面,福清市住房和城乡建设局网站• 关于前后端分离 当前流行的一种常见的前后端分离模式是vueflask,vueflask模式的前端和后端之间进行数据的传递通常是借助 API(应用程序编程接口)来完成的。vue通过调用后端提供的 API 来获取或提交数据。例如,前端可能通过发送…

• 关于前后端分离 

        当前流行的一种常见的前后端分离模式是vue+flask,vue+flask模式的前端和后端之间进行数据的传递通常是借助 API(应用程序编程接口)来完成的。vue通过调用后端提供的 API 来获取或提交数据。例如,前端可能通过发送 HTTP 请求到后端的 API 来获取数据,后端则通过 API 响应这些请求并返回数据给前端。     

        而本项目的主体框架是基于pyside的,所有的数据交互都是在pyside主程序内部流动。pyside的数据交互的载体主要就是信号与槽,前后端通过发射信号到槽函数来实现数据交互和显示刷新。这一点与vue+flask模式区别很大,vue+flask模式是天生自带前后端分离,pyside如果不用心去做,不太容易做到前后端分离。看过很多的博主提供的demo都是课后作业水平的,只能说实现了基本功能,前后端分离不彻底,移植困难,修改困难,信号、变量、槽函数分布层级不清,引用和定义盘根错节(好吧我承认,其实我开始做的项目也是这样的),当需要修改或者增减画面时牵一发而动全身。所以本项目尽力探索,怎样实现前后端的彻底分离。原则上所有显示特征的描述都在前端的designer中实现,而后端的功能和计算脚本只提供触发的信号和更新的逻辑,无须关心任何显示特征,这样就实现了前后端分离,分工种协作。

 • 关于信号和槽 

        特别强调的一点:必须要坚持一个原则,除非是画面的初始化,所有的前端部件的所有刷新都必须通过槽函数来实现,信号的发射触发槽函数的执行。因为pyside的线程管理和刷新机制会根据信号和槽的连接定义以及信号触发自动安排部件的显示刷新,如果出现了计划外的部件刷新,就会破坏程序的刷新节奏和引发读写竞争,程序就有跑死的风险。在我初学的阶段就犯过这个错误,前端画面有一个显示系统时间的text_label,没有使用信号与槽,而是用python自带的定时器定时重写text_label的显示内容,结果程序每过几个小时就死机,需要重启程序才能恢复。花费了很大力气来排除这个BUG,最后做成了秒周期的信号,发射信号到槽函数来重写显示内容,解决了这个问题。

• 关于项目的层级

        有一些变量和信号、槽需要做成全局层级的,比如系统时间、用户名、系统参数等等,这些变量和信号、槽的定义和操作不依赖前端界面,就是说无论怎样切换前端界面,它们都是单独存在的。为达到这个目的,一个方法是在前端界面的代码中将它们声明为global(全局级),但是如果将本项目移植到更高一级的项目时,就有可能会遇到global级别上的混淆。所以一些python的使用教程中建议谨慎使用global声明是有道理的。为了实现全局信号,在项目中设一个全局的信号对象(QObject),在分画面中导入全局信号并为之编写和连接槽函数。(在更大型和更复杂的应用程序中,会使用事件总线,事件总线作为中央枢纽的类,负责管理和分发事件。这样,发送者和接收者之间不需要直接引用彼此,从而降低了耦合度。在后面的范例中会有用到事件总线)

        而另一些变量和信号、槽是局部的,比如某个画面的某个部件的显示刷新函数,这些就要做在画面的代码中,这样做的好处是可以简化程序和实现模块化结构,当删除画面的同时,变量和信号、槽随之删除;增加画面的同时,增加新的变量和信号、槽。

        层级一个典型的应用就是系统时间的显示,在所有的窗口的时间显示部件上的显示内容,都是由同一个全局的变量提供,把这个变量用一个全局的信号每秒发射一次,在需要使用这个信号的窗口编写接收信号的槽函数,对窗口内的时间显示部件进行刷新。

        至此,项目的整体规划基本完成,下面进入实际的编程阶段。

        在pycharm中新建项目,并构建如下的文件目录:     

├── AI/    # AI相关的内容
│   ├── media/    #  图像文件和其他媒体文件
│   │   ├── mark/   #  标注得到的图像,用来训练
│   │   ├── predict/   #  预测后的图像
│   │   └── source/   #  原始图像
│   └── models/       #  模型
├── database/     # 数据库相关
├── gui/          # 界面文件
│   ├── ui_src/   #  界面需要的源文件,比如图标、背景资源、颜色定义等
│   └── uis/   # 界面文件
│       └── __init__.py   #  有了这个文件就可以把文件夹变为包,在这个文件中还可以定义import *的范围
├── main.py     # 主脚本
└── settings/     # 设置项
    └── __init__.py

        

        

http://www.15wanjia.com/news/177038.html

相关文章:

  • 杭州西湖区抖音seo方案新建网站怎么优化
  • 哪里网站书最全培训机构网站制作
  • 网站建设问卷做网站有哪些费用
  • 下载个网上销售网站昆明网站建设猫咪科技
  • 企业建站模板多少钱商城版网站建设
  • 海宁高端高端网站设计网站地区分站系统
  • 免费网站建设服务电影网站建设目的
  • 东莞专业全网推广建站公司自己制作动漫的软件
  • dw网站设计作品wordpress vantage premium
  • 淄博网站优化服务信息查询系统
  • 设计师网站有哪些销售定制家具兰州网站建设科技公司
  • 怎样联系自己建设网站微信怎么弄自己的小程序
  • 宁夏建设工程造价网站电子游戏十大正规官方网址
  • 网站seo推广软件网站通cms
  • 做搜狗网站排名软管理咨询的主体包括哪些
  • 河南开封网站建设西安网站设计建设公司 交通
  • 域名注册后怎么建设网站旅游网站色彩搭配
  • 无水印做海报的网站网站推广服务外包
  • 最好建网站系统的软件在本地搭建wordpress
  • 高性能网站开发500亿网站建设
  • 公司开发网站流程wordpress虚拟主机安装
  • 佛山移动网站建设公司wordpress最新中文版下载
  • 国外有哪些设计网站导购网站怎么做的
  • 做美食网站的目的中华网军事
  • 网络实施方案大连网站优化多少钱
  • 网站建设 域名 服务器wordpress 媒体库地址
  • 系统那个网站好交城有做网站的吗
  • 商业网站是怎么做的wordpress电影资源网站
  • 株洲做网站需要多少钱房屋设计找什么公司
  • 泽国镇规划建设局网站如何做一款app