基于iOS的Web客户端的设计与实现外文翻译资料

 2022-10-27 03:10

英语原文共 5 页,剩余内容已隐藏,支付完成后下载完整资料


基于iOS的Web客户端的设计与实现

摘要

对于目前的体检和医疗机构,很多医务项目需要很长时间才能得到结果,这样会浪费用户的大量时间。为了解决这一问题,本文提出了一种方案,以实现在手机应用软件的帮助下在任何时间和任何地点查看检查的结果。传统的程序使用电子邮件,短信或是邮寄报告单通知用户结果,用户必须花费很长一段时间等待医疗检验结果,造成了时间的浪费,本程序在提升效率的同时,也更好地满足了用户和医疗机构的需求。此外,为了测试程序的实用性和可行性,基于iOS设备构建一个Web客户端系统,基于GPRS技术,我们可以实现Web服务器与这个iOS设备上客户端之间的数据通信。随着体检机构越来越受欢迎,我们可以通过测试证明该Web客户端系统具有一定的实用和开发价值。我相信本系统的设计思路将在医疗系统中广泛使用,也将为每个人带来更多的方便。

关键词:Web客户端系统; iOS; 医疗机构; C/S模式; ASIHTTPRequest

1 绪论

根据国家医疗网络的安排,2007年以来,越来越多的企业开始专注于自己的工人的健康问题,越来越多的工人被要求进行体检。这也使得在医疗行业中的医疗机构迅速发展,各种可以表明身体状况的设备越来越流行。然而众所周知的是,在医疗项目中,在许多项目的检查需要很长一段时间,体检者不得不花上大量的时间等待检查结果。对于用户来说,这不仅带来了浪费时间,无聊的等待也不利于他们的身体和心理健康。对于这个问题,我们设计了一个新的解决方案,这需要医疗机构充分利用自身的网站,及时地将用户的个人信息和检查结果发送到网站数据库。然后,医疗机构应当给用户(在医疗机构进行健康检查的人)提供Web API接口,通过这个接口,用户可以在医疗机构的网站上注册,注册完成的用户可以使用用户名和密码进入应用软件,在任何时间任何地点都可以查看检测结果。

为了测试程序的可行性和实用性,本文构建了Web客户端系统,该系统本质上是手机应用软件,支持GPRS技术,已经实现了客户端(iOS设备)和服务器端的数据通信,并使保存在服务器的测试结果重现在iOS设备的屏幕。

2 原理分析及系统价值

iOS和iPhone迅速在全球走红,就像老史蒂夫·乔布斯的独特魅力一样无法言喻。iPhone的第四代产品市场价格稳固,这足够让我们发现iOS是多么成功得手机操作系统[1]。调查发现对于如此成功的手机操作系统其相应的应用软件的发展也是同样的情况,更多更优质的应用也将会提升手机的功能和易用性。

纵观智能手机现有的软件,其广泛的应用范围是非常明显的。然而,将手机软件功能与体检相结合的想法至今还未有人提出。重视此想法,无论是对移动端开发者,还是对医疗机构,都有巨大的影响。

两个大的计算模式B/S和C/S都有各自的优势和劣势,如何结合并提高它们开发技术,并集成各自的性能优势,是系统应用程序开发的研究热点。在以往的研究中,为了提高B/S系统处理复杂问题的能力,很多人都在考虑如何将物体技术和组件技术应用到Web开发[2]中去,但是,这并不能完全解决B/S系统的服务器过载和客户端的性能不强,缺乏个性化美化服务等问题。但是,如果我们将B/S结构的HTTP协议和Web服务器技术应用在C/S系统中,我们将开发出一个客户功能丰富,系统开放和运行效率高的应用系统。基于这一原理,本文构建了一个iOS平台的Web客户端系统,这个系统将移动设备的便利性应用到医疗机构中,并为医疗用户提供一个在任何时间任何地点查看检测结果的平台,对于医疗机构来说,相比利用手机短信、电子邮件和快递邮件通知检测者结果,使用这种设计更加方便和高效,不仅成本低,而且易于管理和运行。工作人员需要做的只是及时上传检测结果到网站数据库,并将体检数据保存在相应的数据库中。并且相对于用户本身,该方案提供一个在任何时间任何地点查看考试成绩的平台,同时避免了很多麻烦,比如在医院花费大量的时间等待结果,或是为了医疗化验单频繁前去医院。

3 Web客户端系统接口设计与实现

该系统的用户界面主要包括三个部分,即登录界面、用户信息显示界面,以及新用户注册链接界面。下面将对每个部分的设计和实施的原则进行简要介绍。

3.1 登录界面的设计

当我们打开应用软件,登录界面是第一个窗口。对于登录界面的设计,我们应该首先考虑到是的简单界面,才能给用户带来舒适的感觉,同时,我们必须确保实现它的功能和作用,在界面上显示的内容不宜太多,而对于颜色选择,应该是令人耳目一新,不能有太多的色彩。

详细阐述界面设计过程之前,我们首先应该明白的是,界面在Xcode中的专业名称为视图。在视图的设计过程中,技巧和灵活性特别高。在一个视图中,仅存在一个父视图,我们可以添加多个子视图到父视图中,并且在显示过程中,先加入到父视图的子试图将在底部,最后加入的视图将会在顶部[3]。下面将简要介绍登录界面的设计过程中的各个部分。

首先,我们要加入一个全尺寸的UIScrollView进入视图作为子视图。这种视图属于一个可以滚动的数据视图,在其滚动过程中,本质上是修改视图坐标原点,当手指触摸屏幕,滚动视图将会捕获触摸事件,同时使用一个计时器,如果计时器完成计时后无手指运动事件,那么“滚动视图”会向被点击的子视图发送“跟踪事件”,如果手指运动事件发生在计时器达到设定点之前,那么“滚动视图”将取消“跟踪”。

在各种iOS设备中都有虚拟键盘,当用户需要输入的时候,设备会自动弹出一个虚拟键盘,用户通过敲击虚拟键盘输入自己的内容。虚拟键盘的出现解释了为什么要使用UIScrollView。在登录界面中,根据外观和功能的要求,用户名和密码输入框被放置在界面的底部。当用户点击输入框,虚拟键盘就会弹出并会挡住输入框。添加一个UIScrollView之后,程序可以自动检测虚拟键盘是否弹出,并通过访问键盘的大小来确定的UIScrollView滚动的大小,从而达到使输入框随键盘同时弹出的效果。显示效果如图1。

图1 进入软件后的效果 图2 登录界面

我们添加了两个UIImageViews,一个是作为系统的标识图标,考虑到显示效果该图标被放置在登录屏幕的中部的下方,而另一个则作为视图的背景,并尽可能实现雅观的效果,这里选择了冷色调的花作为背景。

最后,我们使用UITableView设计登录框。UITableView就是所谓的目录视图或表视图(英文名称为table view),此视图以列表视图的形式显示或编辑一行或多行信息。通过垂直滚动方式,用户可以找到自己想要的信息,可以自定义每行的数据显示方式。在登录屏界面中,登录框包括四行,有用户名的输入框,密码输入框,登录框,和新用户注册框。为了实现当用户点击登录按钮或新用户注册按钮时会自动切换到一个新的界面的效果,我们增加了一个按钮,并设计了他们的控制事件[4]

值得一提的是,每次向View加入新视图时,要妥善处理层与层之间的关系,以达到设计所要求的效果,在这里首先向父视图添加一个UIScrollView,然后向视图添加一个存储背景图片的UIImageView,并将背景图片放在视图的底部。当我们加载标识图标和登录框时,由于它们位置不重叠,因此将他们添加到滚动视图中时,对添加顺序没有要求,但我们必须确保它们在背景图中成功加载,这是为了确保该图标和输入框被放置在背景图像上层,而不是被背景图像所覆盖[5]。登录界面的模拟器如图2。

3.2 信息显示界面的设计

通过上面的内容我们已经知道,当用户在登录界面上输入用户名和密码后,点击登录按钮,则界面将切换到用户信息显示界面,在这个界面中,将会显示用户的个人信息,如姓名,性别,年龄,这可以让用户很容易地检查自己的信息并确认显示的信息是否正确。下面将对信息显示界面设计的过程做简要说明。

与登录屏界面不同,在这个界面中,我们不需要输入任何东西,所以不会有虚拟键盘阻挡输入框的情况,这意味着在此视图中,我们不需要向界面添加UIScrollView,首先,我们需要添加背景图片,并且背景图片的颜色应以冷色调为基础。显然对存储背景图像的UIImageView应该最先被加载,并放置在视图的底部[6]

考虑到我们有很多信息需要显示,并且无法在一个屏幕上显示,所以我们选择UITableView设计信息显示框。这是因为,这个视图是具有滚动功能的UIScrollView的一个子类,当视图有多个单元时,它可以实现滚动或翻页效果,所以不用担心它不能在单个视图中显示多个项目。

设计信息显示框时,每一行的内容是不同的,可以设置不同的“是否可以选择”属性,所以我们选择通过设置每个单元设置UITableView。在信息显示框,前四行显示用户的个人信息,后面​​11行显出测试结果。对于个人信息,用户不需要做任何处理,因此,这四行和结果显示设定为不可选中。但对于各个测试结果显示行[7],我们添加了按钮,考虑到添加按钮后的美观问题,该按钮被设置为隐藏,使得每一行添加的按钮看上去不发生变化,变化的只是在该行点击时,该按钮会触发相应的事件。

根据这种设计理论,UITableView的顶端显示内容“欢迎来到健康监测系统”,尾端显示“东北大学的嵌入式实验室。”考虑到美观因素,每个单元格的背景都被设定为一个颜色渐变的图像,这可以为用户提供深度感。同时,每一个检测参数行将被加载相应图标。图3是信息显示界面的模拟图。

图3 信息显示界面设计

从前面的章节中,我们知道,在信息显示界面,每个检测参数的单元格都有一个按钮,每个单元的按钮被触发后都会切​​换到一个相同的界面,根据这种观点,我们添加了两个UIImageView,一个用于显示参数的波形,另一个用于显示由医疗机构提供一个的文本框控件UITextField,这个区域信息来自服务器端,它存储医疗机构提供的各种检测参数的详细解释,当然,如果有用户的测试项目结果异常,医疗机构可​​以给用户提出意见或建议,用户点击相应的按钮后其中的内容将在另一个界面中显示。

应该说明的是,对于不同的视图,它们各自的参数不能相互使用,如果一个视图要使用另一个视图的数据,你需要首先解决在两个不同的视图之间传递参数的问题。在此设计中,我们使用一个NSUserDefault数据来解决这个问题。也就是说,我们首先在一个界面中定义一个NSUserDefault和要被传递的内部数据,然后在其他接口,我们只需从NSUserDefault直接调用数据即可。

4 Web客户端与服务器的数据连接的实现

从服务器读取需要的数据是系统的关键。这意味着该系统需要实现与服务器的数据连接。在现有的技术下我们可以通过很多方式,如使用UDP层,或者基于HTTP层协议来实现客户端和服务器之间的数据连接。在此设计中,我们选择HTTP协议层实现该功能。服务器为用户界面提供了一个Web API,通过此接口,用户可以与服务器实现数据连接,并从服务器获得需要的数据[8]

我们在第三方开源组件ASIHTTPRequest的帮助下设计本系统,它是CFNetwork的一个开源项目,它提供了比官网更方便更强大的HTTP包,很容易使用,而且也封装了CFNetwork的API,使得与Web服务器的通信变得更容易。此外,它采用objective-C编写,可以在MAC OS X和iPhone应用中使用,也适合用于进行基本的HTTP请求和交互。

作为一个非常强大的HTTP开源项目,ASIHTTPRequest可以用一个简单的API来完成一些复杂的功能,比如异步请求,请求队列,GZIP压缩,缓存,HTTP,进度跟踪,上传文件,HTTP认证等。在新版本中,它也加入了对Objective-C的闭包Block的支持,这让我们的代码变得更加简单,灵活。

在项目中,在加入ASIHTTPRequest包后,用户可以直接调用各种方法和功能来实现客户端与服务器的数据通信。例如,用户可以直接调用post方法,来加载从用户界面到服务器的登录用户名和密码信息,服务器会接收用户名和密码,然后它会遍历它的数据库中的所有文件,并根据与客户端的协商内容确定需要返回到客户端的数据。因为是使用HTTP层协议,服务器返回给客户端的文件只能是xml或JSON格式,这意味着客户端从服务器接收的数据不能直接使用,需要先进行解析。完成解析后,客户端才可以使用从服务器返回的数据内容[9]

毫无疑问的是,除非iOS设备连接到WIFI,否则需要运用GPRS技术,然后就可以最终实现Web客户端系统和服务器之间数据通信[10]。在添加此功能后,在信息显示接口,当用户点击登录按钮时,系统将自动跳转到信息显示界面,实现与服务器的数据通信进程,并最终从服务器获取自己所需数据内容。如图4所示,模拟器上面的旋转白圈表明iPhone正在进行网络连接。在数据采集成功后,图3的信息显示界面会变成图5。

图4 iPhone网络连接状态 图5 访问数据信息显示界面

5 总结

目前,Web客户端系统还没有被付诸实践,但测试表明,该系统具有稳定性和较强的实用性。在此系统的帮助下,手机用户可以在任何时间任何地点查看测试结果。同时,该系统可以实现客户端(iOS的设备)和支持GPRS技术的网络服务器之间的数据通信,该技术解决了由中国目前Wi-Fi覆盖范围较小导致的不便。此外,另外一个设计特性是成功地将HTTP协议、B/S架构和Web服务器

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[153505],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。