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

陕西做网站电话装饰工程公司属于什么行业

陕西做网站电话,装饰工程公司属于什么行业,怎样在工商局网站做申请登记,网站建设发展情况一、通信的数据传递 在开发程序中,无可避免的会进行数据的传递。这种传递方式有很多种,字节流、消息、Json、参数以及对象甚至可能的方法。那么在传递这些数据时,如何正确的采用更合适的方法,就成为了一个设计的首选的问题。 二…

一、通信的数据传递

在开发程序中,无可避免的会进行数据的传递。这种传递方式有很多种,字节流、消息、Json、参数以及对象甚至可能的方法。那么在传递这些数据时,如何正确的采用更合适的方法,就成为了一个设计的首选的问题。

二、数据传递形式选择的原则

在面对复杂的应用场景和多种多样的传递方式的前提下,如何正确的确定自己的通信传递形式,是有一些原则可以参考的:
1、准确性
这是选择的首要原则,即准确,不能因为因为选择一种方式导致过多的中间环节产生问题。最简单的一种例子就是在函数参数的通信中,把有符号和无符号互相传递,这极有可能出现问题,而且不容易发现。另外,不能让开发者产生歧义,这也是准确性的一种表现即表义要准确。
2、简单性
在准确的基础上,用最少的工作量即可实现最为可取。这种简单不只是普通的简单,如果有成熟的框架或者有现成的库、类等,也称之为简单。

3、可扩展性
也就是灵活性,最好这种数据传递起来不会因为一个轻微的新需求,导致很复杂或很大量的修改。

4、可维护性
这种其实是前边几种的一种综合要求,一般来说,简单的就容易维护,可扩展性好也容易维护。但又简单又可扩展,就不一定好维护了。比如用了一个现有的框架,那维护性就未必多高。毕竟一个框架还是需要付出较多的人力成本和时间去学习掌握的。

三、数据传递常见的形式

1、函数间
函数间的数据通信是最常见的,一般来说,开发者都会采用基本数据类型(如int,string等)进行数据传递。但这种方式有限制,一个是无法传递太多的参数,另外一个无法传递一些对象或特定的数据类型(如图像等)。
那么就可以使用类或结构体来进行传递,这种方式可以传递多个对象,但编写有些复杂,维护成本有所增加。如果需要传递多个相同的基础类型或对象,可以使用STL中的一些std::array、std::vector、std::list等进行传递。它们很重,而且效率也不多高,操作起来相对直接使用对象或基础数据类型要麻烦一些(此处不讨论值或引用传递,只讨论形式)。
但此时又会出现一些问题,比如有一些数据是有关联的,怎么办?可以使用std::pair,std::tuple或者使用std::map等。这种应用就复杂一些,而且还有不少细节的小坑,如果没有文档辅助可能让后续开发者有些难以入手。
而对于图像或视频、文件这种大的数据类型,可以使用二进制流(可以用指针操作)或者使用json字符串传递(一用不建议使用xml进行传递了)。这就相当麻烦了,除了涉及到数据的流式转换和流的处理外,还得考虑内存的分配等额外的情况。所以就得权衡一下利弊了。
2、进(线)程间
在多进程间,一般来说,函数间的方法都可以使用,但是要注意数据的安全性和生命周期的问题。在早期的程序中,还可以通过强制指针的转换通过二进制字节的方式传递(void*),而大家都知道,强制转换是有风险的。而如果采用内存映射等传递的话基本就是二进制字节流的形式了(很少时候可以看到以文件的形式进行传递数据,其实也是二进流的方式)。
3、库接口间
库接口间通信一般也如上面所述,但需要注意的是,库接口之间可能存在着数据类型不一致的情况,转换的一方要保证转换的准确性。
4、框架间
框架间的通信除了上面所述的情况外,大多使用的是协议,而在协议中,一般普通的数据传递都会采用Json字符串或直接传递参数,但大数据(文件、图像等)都会使用流式传递。
5、分布式通信间
分布式通信好多使用的是序列化,而序列化本质其实也是二进制流通信。二进制流的缺点导致了序列化的出现,即把对象与二进制流间进行正确的互转。同时,序列化的成本相当高。而序列化无论是自己开发还是使用框架都使得维护成本大大增加。

四、总结

杀鸡用牛刀,这是人们常说的大材小用。可还有一句话叫“狮子搏兔”,要尽全力一击。这两个都对,其实就是面对不同的场景下,开发者的选择问题。既要又要还要,那种好事儿谁都想要。结合实际情况,哪个更合适自己,就用哪个。毕竟,有的时候开发程序不单纯是一个技术问题。

http://www.yayakq.cn/news/628597/

相关文章:

  • 广西建设监理协会官方网站网站数据库怎么建立
  • 溧阳常州做网站美观网站建设哪家好
  • 中企动力做网站5个月了北京专业制作网站
  • 商丘柘城做网站wordpress 主题 排名
  • 太原新站优化建设网站所需资料
  • 网站建设 计划书免费网络推广软件
  • 汽车电商网站建设建站优化推广
  • 米各庄有做网站的吗网站主机租用
  • 网站怎么做免费推广方案自定义页面wordpress
  • 网站维护济南企业做网站
  • 宁波企业网站搭建特点wordpress图像缩放插件
  • 网站上传到虚拟空间郴州公司做网站
  • 网站收费标准网上购物网站模板
  • 搭建网站代码天津智能网站建设费用
  • 柳州 网站推广页面设计师简历
  • 婚纱摄影网站建设方案网站建设用哪种语言好
  • 0基础学做网站教程cdn网站加速有用吗
  • 网站建设的自我总结郑州建设工程招标信息网
  • 微设计公司网站我想网上做网站
  • 代运营公司怎么找客户名词解释seo
  • 手机移动网站建设WordPress用户图片
  • 温州做网站哪里好中企动力设计的网站
  • wordpress站点临时关闭网站开发新技术
  • 国内做家具外贸的网站有哪些如何进行网络营销方式
  • 有口碑的南昌网站制作广西住建局和城乡建设局网站
  • 专业做农牧应聘的网站谷歌seo专员是指什么意思
  • 西安做网站的公司电话自助建站教程
  • 无锡网站服务公司杭州网站建设规划
  • asp做网站上传文件系统做网站需要什么专业方向的员工
  • 免费做网站优化长辛店镇网站建设