信息技术的不断发展,使得软件开发和实践应用范围逐渐扩张,对内外部计算机设备进行管理与控制,根据用户需求编写指定软件,在深度开发过程中,涉及到算法编码和算法编码等多种方面,主要包括前期调研、功能分析、模块开发、软件测试、系统维护等。这一完整的工作流程可以提升软件开发和应用的可靠性,检测其安全性能。
一、软件深度开发的基本原则与方法
软件深度开发主要采用以下原则:1.高级语言的选择,在计算机软件开发过程中,编写过程虽然清晰明了,但是编写语言是多样化的,给软件开发人员带来一定的工作难度,尤其在深度开发过程中,要想满足用户需求,实现程序的总体功能,就必须利用高级语言对模块与模块之间进行协调设计,促进软件开发和管理模式的标准化;2. 融入代码,完全生成技术与高级语言相互融合,将可利用的片段(代码中)融入到模型中,开发人员对细节进行描述,通过编程语言形成一种新型的代码。这种新的模型从本质上讲就是将原来的部分代码进行完善和修改,将想要插入的代码嵌入模型中,因此该种方法是灵活的[1]。
软件深度开发的方法主要包括以下几个方面:1. 原型化方法,在软件开发初期,开发人员在处理算法效果、系统适用性等方面未能体现很好的执行标准,用户需求往往都是片面的,因此在需求输入时的描述并不准确,所以在深度开发过程中必须建造原始系统,利用原型化方法确定系统基本要求;2. 生命周期法,将整个开发阶段进行分解,根据软件开发总体目标,完善软件的自身特性,在阶段性任务中严格执行标准,最终呈现出完整的软件代码。3.自动生成的开发方式,在第四代技术的应用下,对模型进行自动编码,更好的满足用户需求。
二、常用的软件编程语言
常用的软件编程语言主要有C语言、C++、JaVa与C#、VB、Pascal语言等[2]。本文主要以JaVa与C#编程语言为例,该种编程模式具有独立性特征,被编译之后编程中间码,语言内部结构较为简洁,在一定程度上提升编程成效,增加运算符号,对多功能进行划分,实用性强,并且JaVa与C#编程语言安全性能较强,发展前景更为广阔,尤其在移动端程序的软件使用和开发,市场应用更为广泛。
其主要开发要点为[3]。1. 注重视图设计,通过JAVA编程语言,在计算机软件界面设计的加持下转化结构库元素,整合软件结构,形成对应映射网络体系,科学编辑视图图形,触发实施程序,以数量导航限界线为基础,提升界面调整的实效性。2. 模型基础结构设计,坚持实事求是的理念,在视图界面编辑器中,充分考虑用户需求,之后引进代码内容,基于实质角度,实施模型设计,开发人员采用属性编辑器,修订判断条件,由此完成模型设计;3.重视控制器设计,解决监听器信息,根据实际情况完成完整视图。
三、深度软件开发和应用案例——以动感赛车游戏开发为例
为了探究深度软件开发和应用,笔者以动感游戏软件为例,基于Unity3D游戏引擎,实现人机交互,其中该项游戏的软件语言为JaVa/C#,软件开发过程中模型具有多样性和复杂性,不仅给用户提供听觉/视觉数据信息,还通过虚拟驾驶场景模型,展示出场景特效,提升用户使用舒适度。具体开发程序如下:
(一)游戏赛道设计
在本次游戏中,赛道是必备因素,在软件开发过车中要想将提前排成的数组、图块进行数组或者矩阵排列,技术人员应该先将数组储存在计算机程序中,利用JaVa语言实现这一功能,将赛道图块写成矩阵,存储到bin文件中,有利于程序的保密,之后经过混淆打包生成Java编译后的文件,读到Java源代码,游戏图片也可以做成bin文件。其中部分代码如下:
InputStream inpuststresm:
InputStream=getClass().getResourceAsstresm;
map_Tile_ID=new int[map_tile_h];
int map_Tile_h=dis.readByte();//地图高.行数
int map_Tile_w=dis.readByte();//地图宽.列数
(二)地图绘制
读取资源矩阵,绘制赛道地图,确定赛车的坐标,比如用户正处于第3行,第8列的地图块中,那么他的坐标表示方法为(3*24,8*24),屏幕左上角的坐标为(3*24-屏幕宽/2),(8*24-屏幕高*/2)。
(三)赛道虚拟路径
利用赛车AI算法,获取赛道路径,其中流程为:1. 计算AI赛车行驶方向;2.计算路径点向量间角度;3. 调整AI赛车位置;4.判断赛场是否正常行驶,如果不是则改变AI赛车行驶方向;5.判断路径点与AI赛车之间的距离,应该小于一定阈值;6. 路径点更新,通过脚本放置很多路径点。其中部分代码为:
function GetSteer(){
var inUse: transform = path[currentPath()bj]as transform;//获取点位
var newSteer:= maxSteer *( steerVector.magnitude);// 计算角度
实现了AI赛车的转向功能,根据AI赛车的行驶状态使得动感赛车游戏丰富多彩,判断其是否驶出赛道外,增加了游戏的趣味性。
(四)编写上机程序,交互通信流程
在人机交互过程中,制定128位数字标识符,利用Globally Unique Identifier介入系统并安装,使用HidD_GetHidGuid得到HID设备类信息,使用GetLastError()判断枚举设备接口是否成功,取得VID、PID等信息,其中部分API函数为:
表1:部分API函数
其中需要传输的数据有:加速度、侧倾角、转向角等,字符数组为20个元素,速度传输数据为10ms,每个数据占用4个字符,以此来模拟赛车的运动。
结束语:综上所述,软件深度开发主要包括前期调研、功能分析、模块开发、软件测试、系统维护等多个流程,将可利用的片段(代码中)融入到模型中,可以转化结构库元素,对多功能进行划分,实用性强。从游戏开发案例中我们可以得知该项任务是极其复杂的,因此在今后工作中应该重视开发语言和开发环节的应用,根据用户需求,提升编程的合理性和适用性。
参考文献:
[1]曹嵩. 基于超级计算机的深度学习软件平台系统研发[J]. 数字化用户, 2019, 025(017):134-137,293.
[2]张晓川. 人工智能在益智类计算机软件开发中的应用研究[J]. 微型电脑应用, 2020, 329(009):167-169.
[3]马海凤. 计算机软件的开发与应用实践——评《计算机在矿业中的应用》[J]. 矿业研究与开发, 2020, 244(011):202-202.