基于HTML5Geolocation考勤管理系统_第1页
基于HTML5Geolocation考勤管理系统_第2页
基于HTML5Geolocation考勤管理系统_第3页
基于HTML5Geolocation考勤管理系统_第4页
基于HTML5Geolocation考勤管理系统_第5页
已阅读5页,还剩71页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 摘 要 随着互联网技术的不断发展和计算机性能的不断提升,用户享受互联网的方式也开始不断的变化,越来越多的应用可以直接以浏览器打开的方式使用,数据则是存储在云端,更加的安全可靠,方便用户共享数据。在各种应用不断的趋于更加网络话的同时,一种新的技术标准也随之产生,那就是html5(html是一种标记语言也是一种标准,互联网开发居于此)。html5是近十年来web(互联网)标准最巨大的飞跃,和以前的版本不同,html5并非仅仅用来表示web内容,它的使命是将web带入一个成熟的应用平台,在这个平台上,视频、音频、图象和动画,以及同电脑的交互都被标准化。也就是说html5是通过开放的技术和标准来实现

2、一个无插件模式的富客户端,这个客户端可以在移动终端、pc(个人计算机)或者其他可以有网络的地方轻松的运行。所以此时研究html5,并且大胆的实践有着重要的意义。 本文完成了一个基于html5 geolocation api的考勤管理系统软件的设计与实现。本文的研究工作主要是运用软件工程原理,对这个系统进行需求分析、设计、代码实现和测试。本文的前两部分介绍了课题背景和相关技术。在第三部分需求分析中,以用例模型为工具,分析了本系统的功能需求和非功能需求。第四部分介绍了本系统的设计与实现,是本文的重点,所有内容都是围绕这个主题来展开论述的。在这一部分中,详细介绍了基于基于html5 geolocat

3、ion api的考勤管理系统软件的设计、实现和各个过程中存在的问题与解决方法。本文的第五部分,完成了对该应用的测试,并列出了在测试过程中发现的一些不足。最后介绍了html5 geolocation 应用的前景展望。 通过对基于html5 geolocation考勤管理系统开发过程的介绍,可以了解到一个html5应用的开发过程。近年来,由于html5 geolocation定位迅速崛起,针对html5应用的开发将有着广阔的前景。【关键词】 html5 geolocation 考勤iabstractwith the continuous development of internet techno

4、logy and computer performance continues to increase, users have begun to enjoy the way the internet is constantly changing, more and more applications can be opened directly in the browser's use of the data is stored in the cloud, more safe, reliable, user-share data. in a variety of application

5、s continue to become more networks of the session and a new technical standards attendant that html5 (html is a markup language is a standard, internet development living here). html5 is the decade web (internet) standard greatest leap, and previous versions, html5 is not just used to represent web

6、content, its mission is to bring a mature web application platform, on this platform, video , audio, images and animations, as well as interaction with the computer have been standardized. that html5 is through open technologies and standards to achieve a free plug-in model rich client, the client c

7、an be in the mobile terminal, pc (personal computer) or any other place where the network can be easily run. so in this case study html5, and bold practice of great significance. this completed a html5 geolocation api-based time and attendance management system software design and implementation. th

8、e research work is mainly using software engineering principle, this system needs analysis, design, code and test. the first two parts of this article describes the background and related technical issues. in the third part of the demand analysis, use case model as a tool to analyze the functional r

9、equirements of the system and non-functional requirements. the fourth section describes the design and implementation of this system is the focus of this article, all content is around this theme to expand discussed. in this section, described in detail based on html5 geolocation api attendance mana

10、gement system software design, implementation, and various process problems and solutions. the fifth part of this article, complete the application of the test, the testing process and lists some of the deficiencies found. finally introduces html5 geolocation application prospect. by html5 geolocati

11、on based attendance management system development process is described, you can learn a html5 application development process. in recent years, the rapid rise of html5 geolocation positioning for html5 application development will have a broad prospect.【key words】 html5 geolocation attendance目 录前 言-

12、 1 -第一章 绪论- 2 -第一节 课题的研究背景- 2 -第二节 课题的研究目的和意义- 2 -第二章 相关技术分析与介绍- 4 -第一节 html5- 4 -一、html5简介- 4 -二、html5 geolocation api 介绍- 4 -第二节 html5 geolocation api 的使用- 9 -一、检查浏览器的支持特性- 9 -二、位置请求- 9 -第三节 开发集成环境- 13 -一、c# 简介- 13 -二、系统架构:b/s架构- 15 -三、数据库软件:sql server 2005- 16 -第四节 百度地图- 17 -第三章 基于html5 geolocati

13、on的考勤管理系统需求分析- 18 -第一节 概述- 18 -一、考勤管理- 19 -二、考勤查询- 19 -三、公 告- 19 -四、考勤报表- 19 -五、考勤设置- 19 -第三节 非功能性需求- 20 -一、环境需求- 20 -二、界面需求- 20 -三、通用性需求- 20 -四、可靠性需求- 20 -五、可扩展性需求- 20 -六、异常处理- 20 -第四节 可行性分析- 21 -一、经济可行性分析- 21 -二、运行可行性分析- 22 -三、法律可行性分析- 22 -第五节 本章小结- 23 -第四章 基于html5 geolocation考勤管理系统的设计- 24 -第一节 功能

14、框架设计- 24 -一、系统总体结构设计- 24 -二、管理员管理模块功能结构- 24 -三、其它功能模块- 25 -四、业务流程图- 26 -五、e-r图- 26 -六、用户管理表实体图及属性- 28 -七、考勤查询表的实体图及属性- 28 -第二节 系统功能详细设计- 29 -一、数据库表的设计- 29 -二、登陆模块设计- 30 -第三节 员工角色模块- 31 -一、员工登录- 31 -二、web考勤- 31 -三、个人信息- 32 -四、考勤记录- 33 -五、公告通知- 33 -第四节 管理员角色模块- 34 -一、考勤管理- 34 -二、通知公告- 37 -三、人事管理- 37 -

15、四、系统设置- 38 -第五章 系统维护和改进- 39 -第一节 系统测试- 39 -一、举例测试- 39 -二、测试项目- 40 -三、项目测试方法- 41 -四、系统优势- 42 -结 论- 43 -参考文献- 45 -附 录- 46 -一、关键代码:- 46 -二、英文原文:- 55 -三、英文翻译:- 65 -v前 言 随着互联网的不断发展,互联网对人们的生活也在不断地变化和加强,人们渐渐地已经开始习惯于互联网所带来的各类服务与应用,并且享受着它带来的便利和丰富。当然随着互联网的基础用户和开发者不断增多,人们不断地去创造和完善它的速度也越来越快,无论从技术层面还是商业层面,新的模式和方

16、法层出不穷,整个行业新陈代谢不断加速,新的应用和新的公司不断地挑战着新的技术和新的模式,由于整个行业存在创业成本很低、技术成本门槛却较高等特点,大公司也不断地推动着新的技术,基于此来创建一定的技术壁垒,同时基于此建立全新的服务和技术。但是毕竟整个互联网是一个开放的环境,大家需要一种标准,而不是一家独大的竞争下去,这样就一定会失去民心,所以 html5 这种更加新的标准和技术体系在不断地革新中发展壮大。 html5 是近十年来 web 标准发展巨大的一个跨越,与以前的版本相比较,html5不仅用来表示 web 内容,而是将 web 引入一个比较成熟的应用平台,在这个平台上,视频、音频、图象和动画

17、,以及标准化与电脑的交互。尽管 html5 的实现还有很长的路要走,但 html5 正在改变 web。另外,目前的互联网不仅仅是传统意义上面的互联网,所有的传统应用和模式正在向着更加移动和便捷发展,人们可能通过手机、平板电脑等各类移动设备来获取信息和使用更加丰富的应用,如物理位置定位信息等新的数据采集和多点触控、重力感应等新的交互方式的应用,未来必将也会改变人们生活的方方面面。 html5 中也加入了以上各类新的元素和功能, 同时也考虑到了非健全人事使用互联网时可能带来的问题。 所以, 研究 html5 这种技术体系来尝试做一些应用是一个千载难逢的机遇,而基于这个变革的年代去使用类似的技术来创

18、造更多新的应用更是能够改变这个世界的一次机会。 该课题是基于 html5 来做一个最佳实践, 完成之前不可能使用 web 技术来完成的功能,性能照比之前的技术体系要高出很多,而且有足够的前瞻性和创新性。互联网和其他的行业最大的区别就是这是一个创新驱动并且快速变化的行业,一种新的技术可能就会创造出新的应用、新的商业模式,该课题是基于 html5 技术在 web 环境中实现的一个考勤系统,通过使用 html5中的 geolocation来实现实时性,这无疑是对最新技术的一次最佳实践和学习,也是对自己的能力的一次历练。第一章 绪论随着互联网技术和信息技术的日益成熟,人类社会开始进入信息时代。信息时代

19、的到来给社会生活的各个方面带来了巨大的变化,这些变化同样也影响到了网络办公平台的建设。信息技术和信息系统几乎渗透到了网络办公的每一个细节,对网络办公平台的各个层次均产生了不容忽视的影响。第一节 课题的研究背景 随着计算机技术的飞速发展,计算机在管理中的广泛应用,利用计算机实现基于html5 geolocation考勤管理势在必行。对于基于html5 geolocation考勤管理来说,其中会员管理等是在随时变化的。利用计算机支持完成基于html5 geolocation考勤管理事务,是适应现代企业制度要求的必要条件。然而基于html5 geolocation考勤管理是一项繁琐而又细致的工作,一

20、般不允许出错,计算机进行管理工作,不仅能够保证信息核对准确无误,而且还可以利用计算机对各种信息进行有效统计处理。基于html5 geolocation考勤管理系统能够为管理员和用户提供充足的信息和快捷的查询手段。使用计算机对基于html5 geolocation考勤进行管理,帮助用户更加快捷应用电脑搜寻所需相册信息,这些优点能够极大地提高查询的效率,同时,这也是移动客户服务管理科学化、正规化管理以及与世界先进管理技术接轨的重要条件。因此,建立起高效的基于html5 geolocation考勤管理系统,能真正提升信息应用的效益。第二节 课题的研究目的和意义 基于html5 geolocation

21、考勤管理实质是信息技术的高效处理,以计算机为基础的现代信息处理的产生和发展,正是基于html5 geolocation考勤管理现代化的客观要求。随着计算机在中国的普遍应用,越来越多的基于html5 geolocation考勤管理者意识到基于html5 geolocation考勤管理系统对管理自身发展的重要作用,投入大量的人力、物力、财力进行基于html5 geolocation考勤管理系统的建设。 现代科技的飞速发展,基于html5 geolocation考勤管理系统处理从根本上可以为更多的管理者减少多方面的经济资源,在实际操作上也是提高用户与管理的效率捷径,能够很好地做到基于html5 ge

22、olocation考勤管理信息的有效共享和协同。可以说,有效的基于html5 geolocation考勤管理系统是实现良好的整合关系的重要保证。第2章 相关技术分析与介绍第1节 html5一、html5简介html标准从1999年12月发布的html4.01后,后继的html5和其它标准被束之高阁,为了推动web标准化运动的发展,一些公司联合起来,成立了一个叫做 web hypertext application technology working group(web超文本应用技术工作组 -whatwg)的组织。whatwg 致力于 web 表单和应用程序,而w3c(world wide w

23、eb consortium,万维网联盟)专注于xhtml2.0。在 2006 年,双方决定进行合作,来创建一个新版本的 html。html5草案的前身名为 web applications 1.0,于2004年被whatwg提出,于2007年被w3c接纳,并成立了新的 html 工作团队。html 5 的第一份正式草案已于2008年1月22日公布。html5 仍处于完善之中。然而,大部分现代浏览器已经具备了某些 html5 支持。2012年12月17日,万维网联盟(w3c)正式宣布凝结了大量网络工作者心血的html5规范已经正式定稿。根据w3c的发言稿称:“html5是开放的web网络平台的奠

24、基石。” 支持html5的浏览器包括firefox(火狐浏览器),ie9及其更高版本,chrome(谷歌浏览器),safari,opera等;国内的傲游浏览器(maxthon),以及基于ie或chromium(chrome的工程版或称实验版)所推出的360浏览器、搜狗浏览器、qq浏览器、猎豹浏览器等国产浏览器同样具备支持html5的能力。 二、html5 geolocation api 介绍地理位置(geolocation)是html5的重要特性之一,提供了确定用户位置的功能,借助这个特性能够开发基于位置信息的应用程序。1、html5 geolocation api 使用概述html5 geo

25、location api的使用方法。请求一个位置信息,如果用户同意,浏览器返回该位置信息,该位置是通过html5地理定位功能的底层设备(例如:笔记本电脑和手机)提供给浏览器的。位置由经度、纬度坐标和其他元素数据组成。有这些位置数据信息构建出位置感知类应用程序。2、位置数据信息 位置信息由纬度、经度坐标和一些其他元数据组成。例如北京故宫的位置信息主要由一对纬度和经度坐标组成:纬度:北纬 39.9,经度:东经 116.4。经纬度坐标有两种表示方式:十进制格式(例如 39.9)和 dms(degree minute second,角度)格式(例如 39 ° 54 20 )。html5 ge

26、olocation api 返回的坐标格式为十进制格式。除了纬度和经度坐标,html5 geolocation 还提供位置坐标的准确度。除此之外,它还会提供其他一些元数据,比如海拔、海拔准确度、行驶方向和速度等,具体情况取决于浏览器所在的硬件设备。3、位置信息来源及比较 html5 geolocationa api 不指定设备用哪种底层技术来定位应用程序的用户。它只用于检索位置信息的api,而且通过该api检索到的数据只具有某种程度的准确性。它并不保证设备返回的实际位置是精确的。 位置信息一般从如下数据源获得: (1)ip 地址 (2)三维坐标 (3)gps(global positionin

27、g system,全球定位系统) (4)wi-fi (5)手机信号 (6)用户自定义数据 它们各有优缺点如表 1.1 所示,为了保证更高的准确度,许多设备使用多个数据源组合的方式。 ip地址地理定位数据。以前,基于ip地址的地理定位是获取位置的唯一方式,其返回的位置信息通常并不靠谱。基于ip地理位置的定位方式是:自动查找用户的ip地址,然后检索其注册的物理地址。因此,如果用户的地址是isp提供的,位置就会由服务器供应商的物理地址决定,而地址可能距离用户数千米。 gps地理定位数据。能看到天空的地方,gps就可以提供精确的定位结果。gps定位是通过地球周围多个卫星的gps卫星的信号实现的。gps

28、定位的时间比较长,所以不适合快速相应的应用程序。 wi-fi地理定位数据。基于wi-fi地理定位信息是通过三角距离计算得出,三角距离指的是用户当前位置到已知的多个wi-fi(大多是在城市)接入点的距离。与gps不同的是,wi-fi在室内也非常精确。 手机地理定位数据。基于手机的地理定位信息是通过用户到一些基站的三角距离确定位置结果。经常与wi-fi和基于gps的地理定位信息结合使用。 用户自定义的地理定位数据。除去通过编程计算出用户的位置外,也可以通过用户自定义其位置。应用程序可以允许用户输入他们的地址、邮政编码和其他的一些关于位置的详细信息。应用程序通过这些数据信息来提供位置的感知服务。表

29、1.1 位置信息获取方式对比数据源优点缺点ip 地址任何地方都可用在服务器端处理不精确(经常出错,一般精确到城市级)运算代价大gps很精确定位时间长,耗电量大室内效果差需要额外硬件设备支持wi-fi精确可在室内使用简单、快捷在乡村这些 wi-fi 接入点少的地区无法使用手机信号相当准确可在室内使用简单、快捷需要能够访问手机或其 modem 设备用户自定义可获得比程序定位服务更准确的位置数据用户自行输入可能比自动检测更快可能很不准确,特别是当用户位置变更后4、浏览器支持情况各个浏览器对 html5 geolocation 的支持程度不同,并且还在不断更新中。在 html5 的所有功能中,html

30、5 geolocation 是第一批被全部接受和实现的功能之一,相关规范已经达到一个非常成熟的阶段,不大可能做太大改变。如表 2.2 所示,很多浏览器已经支持 html5 geolocation:表 2. 2 浏览器对 html5 geolocation 的支持情况浏览器支持情况firefox3.5 及以上版本支持chrome在带有 gears 的第 2 版 chrome 中被支持internet explorer通过 gears 插件支持opera在版本 10 中支持safari在版本 4 中支持以实现在 iphone 上可用5、隐私机制 html5 geolocation 规范提供了一套保

31、护用户隐私的机制。只有得到用户的许可,否者不可获取用户的地理位置。这个合理的隐私机制同样解释了用户一直对html5应用程序中的难题。从html5 geolocation的例子中可以看到,通常会鼓励用户共享这些信息。例如:用户在咖啡厅喝咖啡,如果应用程序可以让他们得知该咖啡店附近的商店在打折,那么用户就可以共享他们的位置信息是完全可以接受的。其中步骤如下:(1)用户浏览器打开应用程序的位置感应程序。 (2)应用程序web页面加载,通过geolocation 函数调用请求。浏览器拦截请求,请求用户授权。如果同意继续执行,否则停止。 (3)浏览器从宿主设备中检索坐标信息。例如:ip地址,wi-fi或

32、gps坐标。浏览器内部具有的功能。(4)浏览器将坐标发送给受信任的外部定位服务,返回一个详细的位置信息,病将该位置发回给html5 geolocation 应用程序。6、隐私机制触发 触发访问使用html5 geolocation api的页面时,会触发隐私保护机制。下图显示了在firefox3.5中触发隐私保护机制的页面:图2.1在firefox3.5中触发隐私保护机制的页面: 程序调用html5 geolocation代码时后出发这一机制。仅仅添加html5 geolocation 代码,而不被任何方法调用,则不会触发隐私保护机制。只要所添加的html5 geolocation代码被执行,

33、浏览器就会提示应用程序需要共享他们的位置。执行html5 geolocation 的方发很多,如调用navigation.geolocation.getcurrentpostion方法等。第二节 html5 geolocation api 的使用本小节详细讨论html5 geolocation api 的使用方法。通过创建一个简单的浏览器页面,让读者更加了解其使用方法。一、检查浏览器的支持特性 在调用html5 geolocation api 函数前,需要确保支持所要完成的工作。在当前浏览器不支持的时候就可以提供一些代替文本,以提示用户升级所用的浏览器或者安装插件来增强现有浏览器的功能,以下代

34、码是浏览器检查的一种途径。 清单1. 检查浏览器支持特性: function testsupport() if (navigator.geolocation) document.getelementbyid(“support”).innerhtml = "支持 html5 geolocation。" else document.getelementbyid(“support”).innerhtml = "该浏览器不支持 html5 geolocation !建议升级浏览器或安装插件(如 gears)。" 在此例子中,testsupport函数测试了浏览器

35、的支持情况,该函数功能是在调用该函数时候如果存在地理定位的对象,navigator.geolocation) 调用将返回该函数对象,否则触发错误。页面上会根据检测结果显示支持情况的提示信息。二、位置请求在 html5 geolocation 功能中,位置请求有两种:单次定位请求重复性位置更新请求1、单次位置请求在许多应用中,只检索或请求一次用户位置即可。例如前面提到的,午餐时间到了,要查询用户附近餐馆的特色菜及其价格和评论,就可以使用清单 2 所示的 html5 geolocation api。 清单 2. 单词定位请求 api void getcurrentposition(in posit

36、ioncallback successcallback, in optional positionerrorcallback errorcallback, in optional positionoptions options ); 该函数调用的详细分析。 首先,因这个函数是通过navigatar.geolocation对象的调用。所以在本代码中需要爱获取次对象。因确保有一个后备函数,来对应不支持html5 geolocation 的情况。这个函数接受一个必选参数和两个可选参数。函数参数successcallback为浏览器指明位置数据可用时应调用的函数。因为像获取位置数据这样的操作可能需要长

37、时间才能完成,所以这个参数很重要。没有用户希望在检索位置时浏览器被锁定,也没有开发人员希望他的程序无限期暂停(特别是要成功取得位置信息,经常必须等待用户的许可)。successcallback是收到实际位置信息并进行处理的地方。跟绝大多数编程场景一样,最好提前准备出错处理。位置信息请求很可能因为一些不可控因素失败,对于这些情况,你可能需要提供一个用于跟用户解释或者提示其重试的successcallback函数。虽然此函数时可选的,不过建议选用。最后,options对象可以调整html5 geolocation()的javascript函数,它使用最新的位置数据更新页面内容。同样地,也创建了一个

38、handlelocationerror()函数来处理错误情况。接下来,我们将研究这些函数的细节,而请求访问用户位置的核心代码如下所示:navigator.geolocation.getcurrentposition(updatelocation,handlelocationionerror);updatelocation()函数 updatelocation()函数是做什么的呢?实际上非常简单。只要浏览器具备访问位置信息的条件,就会调用updatelocation()函数,该函数只接受一个参数:位置对象。这个对象包含坐标(corrds特性)和一个获取位置数据时的时间戳。在实际开发中不一定需要时

39、间戳,重要的位置都包含在了coords特性中。坐标总是有多个特性,但是浏览器和用户硬件设备会决定这些特性值是都有意义。以下是 三个特性: (1)latitude(纬度) (2)longitude(经度) (3)accuracy(准确度) 毋庸置疑,这些特性的数据时必须的。latitude和longitude将包含html5 geolocation服务测定得到最佳的十进制用户位置。 accurarcy将以m为制定纬度和经度值与实际位置间的差距,置信度为95%。局限于html5geolocation的实现方式,位置只能粗略的近似值。在呈现返回值钱请一定要检查返回值的准确度。如果推荐的所谓的“附件的

40、”鞋店,其实要耗费用户几小时的路程,可能会产生意想不到的后果。 坐标还有一些其他特性,不能保证浏览器都为其提供支持,但如果不支持就会返回null: latitude 用户位置的海拔高度,以m 为单位; altitudeaccuracy 海拔高度的准确度,也是以m为单位,如果不支持altitude特性也会返回null; heading 行进方向,相对于正北而言; speed 地面速度,以m/s为单位。 除非确定用户的设备能够访问这些信息,否则建议应用程序不要过于依赖它们。全球定位设备可能提供这种细节信息,而网络三角定位则不会。现在,让我们了解一下updatelocation()函数的实现代码(参

41、见代码清单3),该函数依据坐标信息执行具体的更新操作。 清单 3. updatelocation()函数function updatelocation(position) var latitude = position.coords.latitude; var longitude = position.coords.longitude; var accuracy = position.coords.accuracy; document.getelementbyid(“纬度”).innerhtml = latitude; document.getelementbyid(“经度”).innerht

42、ml = longitude; document.getelementbyid(“准确度”).innerhtml = accuracy + “米”; 清单 3 给出了 updatelocation() 函数的常用实现代码,该函数根据坐标信息执行具体的更新操作:用获得的位置信息分别更新 html 页面上三个空间元素的文本。 可选参数 handlelocationerror 为浏览器指明出错处理函数。位置信息请求可能因为一些不可控因素失败,这时,您需要在这个函数中提供对用户的解释。幸运的是,该 api 已经定义了所有需要处理的错误情况的错误编号。错误编号 code 设置在错误对象中,错误对象作为

43、error 参数传递给错误处理程序。这些错误编号有: unknown_error (0):不包括在其它错误编号中的错误,需要通过 message 参数查找错误的详细信息。 permission_denied (1):用户拒绝浏览器获得其位置信息。 position_unvailable (2):尝试获取用户信息失败。 timeout (3):在 options 对象中设置了 timeout 值,尝试获取用户位置超时。在这些情况下,您可以通知用户应用程序运行出了什么问题,如清单 4 所示 清单 4. 使用错误处理函数function handlelocationerror(error) swit

44、ch (error.code) case 0: updatestatus(“尝试获取您的位置信息时发生错误:” + error.message); break; case 1: updatestatus(“用户拒绝了获取位置信息请求。”); break; case 2: updatestatus(“浏览器无法获取您的位置信息。”); break; case 3: updatestatus(“获取您位置信息超时。”); break; 可选参数 options 对象可以调整 html5 geolocation 服务的数据收集方式。该对象有三个可选参数: enablehighaccuracy:如果启

45、动该参数,浏览器会启动 html5 geolocation 服务的高精确度模式,这将导致机器花费更多的时间和资源来确定位置,应谨慎使用。默认值为 false;timeout:单位为 ms,告诉浏览器获取当前位置信息所允许的最长时间。如果在这个时间段内未完成,就会调用错误处理程序。默认值为 infinity,即无穷大(无限制);maximumage:以 ms 为单位,表示浏览器重新获取位置信息的时间间隔。默认值为 0,这意味着浏览器每次请求时必须立即重新计算位置。使用可选参数 options 更新我们的位置请求,让其包含一个使用 json 对象表示的可选参数,如下所示: 清单 5. 包含 opt

46、ions 的更新位置请求 navigator.geolocation.getcurrentposition(updatelocation, handlelocationerror, timeout: 10000); 这个调用告诉 html5 geolocation,当获取位置请求的处理时间超过 10s(10000ms)时触发错误处理程序,这时,error code 应该是 3。3、重复性位置更新请求有时候,仅获取一次用户位置信息是不够的。比如用户正在移动,随着用户的移动,页面应该能够不断更新显示附近的餐馆信息,这样,所显示的餐馆信息才对用户有意义。幸运的是,html5 geolocation

47、服务的设计者已经考虑到了这一点,应用程序可以使用如下 api 进行重复性位置更新请求,当监控到用户的位置发生变化时,html5 geolocation 服务就会重新获取用户的位置信息,并调用 updatelocation() 函数处理新的数据,及时通知用户。 清单 6. 重复性位置更新请求 api void watchposition(updatelocation, optional handlelocationerror, optional options); 这个函数的参数跟前面提到的 getcurrentposition 函数的参数一样,不再重复介绍。关闭更新也很简单,如果应用程序不需要

48、再接收用户的位置更新消息,只需要使用 clearwatch() 函数。 清单 7. watchposition 和 clearwatch 的使用 var watchid = navigator.geolocation.watchposition(updatelocation, handlelocationerror); / 基于持续更新的位置信息实现一些功能 / 停止接收位置更新消息 navigator.geolocation.clearwatch(watchid); 第三节 开发集成环境一、c# 简介c#是微软公司发布的一种面向对象的、运行于.net framework之上的高级程序设计语言

49、。并定于在微软职业开发者论坛(pdc)上登台亮相。c#是微软公司研究员anders hejlsberg的最新成果。c#看起来与java有着惊人的相似;它包括了诸如单一继承、接口、与java几乎同样的语法和编译成中间代码再运行的过程。但是c#与java有着明显的不同,它借鉴了delphi的一个特点,与com(组件对象模型)是直接集成的,而且它是微软公司 .net windows网络框架的主角。c#最初它有个更酷的名字,叫做cool。微软从1998年12月开始了cool项目,直到2000年2月,cool被正式更名为c#。在1998年,delphi语言的设计者hejlsberg带领着microsof

50、t公司的开发团队,开始了第一个版本c#语言的设计。在2000年9月,国际信息和通信系统标准化组织为c#语言定义了一个microsoft公司建议的标准。最终c#语言在2001年得以正式发布。c#是一种安全的、稳定的、简单的、优雅的,由c和c+衍生出来的面向对象的编程语言。它在继承c和c+强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承)。c#综合了vb简单的可视化操作和c+的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.net开发的首选语言。c#是面向对象的编程语言。它使得程序员可以快速地编写各种基于microsoft .net

51、平台的应用程序,microsoft .net提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。正是由于c#面向对象的卓越设计,使它成为构建各类组件的理想之选无论是高级的商业对象还是系统级的应用程序。使用简单的c#语言结构,这些组件可以方便的转化为xml网络服务,从而使它们可以由任何语言在任何操作系统上通过internet进行调用。c#使得c+程序员可以高效的开发程序,且因可调用由 c/c+ 编写的本机原生函数,因此绝不损失c/c+原有的强大的功能。因为这种继承关系,c#与c/c+具有极大的相似性,熟悉类似语言的开发者可以很快的转向c#。c#是微软公司在2000年6月发布的一种新的编程

52、语言,主要由安德斯·海尔斯伯格(anders hejlsberg)主持开发,它是第一个面向组件的编程语言,其源码会编译成msil再运行。它借鉴了delphi的一个特点,与com(组件对象模型)是直接集成的,并且新增了许多功能及语法糖,而且它是微软公司.net windows网络框架的主角。原broland公司的首席研发设计师安德斯·海尔斯伯格(anders hejlsberg)在微软开发了visual j+ 1.0,很快的visual j+由1.1版本升级到6.0版。sun公司认为visual j+ 违反了java开发平台的中立性,对微软提出了诉讼。2000年6月

53、26日微软在奥兰多举行的“职业开发人员技术大会”(pdc 2000)上,发表新的语言c#。c#语言取代了visual j+,语言本身深受 java、c 和 c+ 的影响。c#是兼顾系统开发和应用开发的最佳实用语言,并且很有可能成为编程语言历史上的第一个“全能”型语言。看过这篇简史,不要把c#看成年轻后生了只要是“马拉多纳”,就早晚当“球王”。c#1.0,纯粹的面向对象。1998年底,微软正在忙于新一代com的设计工作,com一直是组件化开发中非常成功的一种技术;但由于它仅提供了二进制层面上的统一,因此无法将类型信息和用于支持基础平台和开发工具的信息放到组件中,java逐步走向成熟。微软学习ja

54、va的做法,将虚拟机的概念引入到了com领域;同时,微软提出了“元数据”的概念,用于描述组件的类型信息和工具支持信息,并决定将其放入到组件当中。1998年12月,微软启动了一个全新的语言项目cool,这是一款专门为clr设计的纯面向对象的语言,也正是本文的主角c#的前身。1999年7月份,微软完成了cool语言的一个内部版本。2000年2月份,微软才正式将cool语言更名为c#。据说起这个名字是因为c#开发小组的人很讨厌搜索引擎,因此把大部分搜索引擎无法识别的“#”字符作为该语言名字的一部分;还有一种说法是在音乐当中“#”是升调记号,表达了微软希望它在c的基础上更上一层楼的美好愿望当然这些都只

55、是传说,无从考证。又是历经了一系列的修改,微软终于在2000年7月发布了c#语言的第一个预览版。c#旨在设计成为一种“简单、现代、通用”,以及面向对象的程序设计语言,此种语言的实现,应提供对于以下软件工程要素的支持:强类型检查、数组维度检查、未初始化的变量引用检测、自动垃圾收集(garbage collection,指一种自动内存释放技术)。软件必须做到强大、持久,并具有较强的编程生产力。此种语言为在分布式环境中的开发提供适用的组件开发应用。为使程序员容易迁移到这种语言,源代码的可移植性十分重要,尤其是对于那些已熟悉c和c+的程序员而言。对国际化的支持非常重要。c#适合为独立和嵌入式的系统编写

56、程序,从使用复杂操作系统的大型系统到特定应用的小型系统均适用。在java中,一个接口是一组方法集合的抽象定义.当一个类或结构体实现一个接口的时候,它必须实现这个接口中定义的所有方法.一个单一的类可以实现几个接口.也许以后会出现一些微妙的差别,但是这个特点看起来与java相比没有变化。布尔运算:条件表达式的结果是布尔数据类型,布尔数据类型是这种语言中独立的一种数据类型.从布尔类型到其他类型没有直接的转换过程.布尔常量true和false是c#中的关键字.错误处理:如java中那样,通过抛出和捕捉异常对象来管理错误处理过程.内存管理:由底层.net框架进行自动内存垃圾回收。二、系统架构:b/s架构 浏览器/服务器结构(browser/server,缩写为b

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论