扫雷最原始的版本可以追溯到1973年一款名为“方块”的游戏。 不久之后,“方块”被改写成了游戏“Rlogic”。在“Rlogic”里,玩家的任务是作为美国海军陆战队队员,为指挥中心探出一条没有地雷的安全路线,如果路全被地雷堵死就算输。两年后,汤姆·安德森在“Rlogic”的基础上又编写出了游戏“地雷”,由此奠定了现代扫雷游戏的雏形。 1981年, 微软公司的罗伯特·杜尔 和卡特·约翰逊两位工程师在Windows 31系统上加载了该游戏,扫雷游戏才正式在全世界推广开来。
自定义游戏区域有个漏洞,可使你在10秒之内必胜。 方法如下:在自定义中输入高度、宽度随意大的数值(因为扫雷区域有限,所以会固定在高度24、宽度30的区域里),雷数自定,越少越容易,随意点击一处,然后按照普通规则继续即可。(当然这样就无聊了)
技巧
排成一行的格中,两个1夹一个2,1底下必有雷;两个2夹一个1,中心的1底下必有雷;两个2夹n个3,2和3底下全有雷;两个2靠边,2底下都有雷;连续的三个1,中间的1有雷;连续四个1两边的1有雷。
学习内容大致可分为以下10点,都是我从动力节点自学教程里学习的时候总结出来的,但java编程日新月异,每天都在变化,即便现在掌握了一些知识也不要骄傲,更要跟上技术发展的步伐,实时更新。
1、Java语言
Java语言体系比较庞大,包括多个模块。从WEB项目应用角度讲有JSP、Servlet、JDBC、JavaBean(Application)四部分技术。
(1)、Java Database Connectivity(JDBC)技术
在Java Web应用开发中,数据库管理系统(RDBMS)的使用是不可缺少的。JDBC(Java Database Connectivity) 是一种用于执行SQL 语句的 Java API。它由一组用 Java 编程语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的API,使他们能够用纯Java API 来编写数据库应用程序。
简单地说,JDBC 可做三件事:
l 与数据库建立连接,
l 发送SQL 语句,
l 处理结果。
(2)、Servlet技术
Servlet是运行在服务器端的程序,可以被认为是服务器端的applet。servlet被Web服务器(例如Tomcat)加载和执行,就如同applet被浏览器加载和执行一样。servlet从客户端(通过Web服务器)接收请求,执行某种 *** 作,然后返回结果。
Servlet的主要优点包括
l Servlet是持久的。servlet只需Web服务器加载一次,而且可以在不同请求之间保持服务(例如一次数据库连接)。
l Servlet是与平台无关的。如前所述,servlet是用Java编写的,它自然也继承了Java的平台无关性。
l Servlet是可扩展的。由于servlet是用Java编写的,它就具备了Java所能带来的所有优点。Java是健壮的、面向对象的编程语言,它很容易扩展以适应你的需求。servlet自然也具备了这些特征。
l Servlet是安全的。从外界调用一个servlet的惟一方法就是通过Web服务器。这提供了高水平的安全性保障,尤其是在你的Web服务器有防火墙保护的时候。
l Servlet可以在多种多样的客户机上使用。由于servlet是用Java编写的,所以你可以很方便地在HTML中使用它们。
(3)、JavaServer Pages(JSP)技术
JSP是从Servlet上分离出来的一小部分,简化了开发,加强了界面设计。JSP定位在交互网页的开发。运用Java语法,但功能较Servlet弱了很多,并且高级开发中只充当用户界面部分。JSP容器收到客户端发出的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式响应给客户端。其中程序片段可以是: *** 作数据库、重新定向网页以及发送 E-Mail 等等,这些都是建立动态网站所需要的功能。所有程序 *** 作都在服务器端执行,网络上传送给客户端的仅是得到的结果,与客户端的浏览器无关,因此,JSP 称为Server-Side Language。
JavaServer Pages的主要优点包括
●一次编写,各处执行(Write Once, Run Anywhere)特性
作为Java 平台的一部分,JavaServer Pages 技术拥有Java语言“一次编写,各处执行”的特点。随着越来越多的供货商将JavaServer Pages 技术添加到他们的产品中,您可以针对自己公司的需求,做出审慎评估后,选择符合公司成本及规模的服务器,假若未来的需求有所变更时,更换服务器平台并不影响之前所投下的成本、人力所开发的应用程序。
● 搭配可重复使用的组件
JavaServer Pages技术可依赖于重复使用跨平台的组件(如:JavaBean或Enterprise JavaBean组件)来执行更复杂的运算、数据处理。开发人员能够共享开发完成的组件,或者能够加强这些组件的功能,让更多用户或是客户团体使用。基于善加利用组件的方法,可以加快整体开发过程,也大大降低公司的开发成本和人力。
● 采用标签化页面开发
Web 网页开发人员不一定都是熟悉Java 语言的程序员。因此,JSP 技术能够将许多功能封装起来,成为一个自定义的标签,这些功能是完全根据XML 的标准来制订的,即JSP 技术中的标签库(Tag Library)。因此,Web 页面开发人员可以运用自定义好的标签来达成工作需求,而无须再写复杂的Java 语法,让Web 页面开发人员亦能快速开发出一动态内容网页。
今后,第三方开发人员和其他人员可以为常用功能建立自己的标签库,让Web 网页开发人员能够使用熟悉的开发工具,如同HTML 一样的标签语法来执行特定功能的工作。
● N-tier 企业应用架构的支持
有鉴于网际网络的发展,为因应未来服务越来越繁杂的要求,且不再受地域的限制,因此,
必须放弃以往Client-Server的Two-tier 架构,进而转向更具威力、d性的分散性对象系统。由于JavaServer Page 技术是Java 2 Platform Enterprise Edition (J2EE)集成中的一部分,它主要是负责前端显示经过复杂运算后之结果内容,而分散性的对象系统则是主要依赖EJB ( Enterprise JavaBean )和JNDI ( Java Naming and Directory Interface )构建而成。
(4)、JavaBean(Application)应用组件技术
Application是Java应用程序,在WEB项目和一些开发中主要应用JavaBean。它就是Application的一部分,逻辑运算能力很强,能极大的发挥Java语言的优点。JavaBean 被称为是Java 组件技术的核心。JavaBean 的结构必须满足一定的命名约定。JavaBean能提供常用功能并且可以重复使用,这使得开发人员可以把某些关键功能和核心算法提取出来封装成为一个组件对象,这样就增加了代码的重用率和系统的安全性。
高级的WEB项目会应用到以上所有技术,它们之间联合使用和协作开发会提高开发的效率和系统的性能。
2、面向对象分析设计思想
Java语言是完全面向对象的语言,所以在项目设计时会有很大的帮助,在设计时应尽量舍弃以往的面向过程的设计方式。
在分析项目业务关系的时候,应用一些UML(Unified Modeling Language)图,例如常用的用例图(use case diagram),类图(class diagram),时序图(sequence diagram)等等,会有很大的帮助,这样能尽快找出业务逻辑主要面对的对象,然后对每个对象进行行为划分,最后再实现对象之间的集成和通信。
3、设计模式和框架结构
Java从语言角度来讲不是很难,但是从整体设计角度来讲我们还需要了解一些高级应用框架。如果要设计一个良好的框架结构,单单只掌握Java语言远远不够。这就涉及到一个设计模式,还有和设计模式相关的一些知识。
设计模式在Java项目实施过程更是重中之重。主要在与两层的设计模式、三层的设计模式和N层的设计模式。它直接决定着项目的应用、部署和实际开发设计。
在普通的WEB项目中很多采用两层的开发结构。JSP+Servlet或JSP+JavaBean。当对开发要求高的项目中使用很多的还是MVC的三层开发结构,也就是JSP+Servlet+JavaBean。它能分有效的分离逻辑开发,使开发人员能专注于各自的开发。同时也能时整个开发结构流程更清晰,但是需要比较高的开发配合度。
在项目中,我们经常使用著名的Model-View-Controller(MVC)架构。MVC架构是随着smalltalk language语言的发展提出的,它是一个著名的用户界面设计架构。经典的MVC架构把一个组件(可认为是整个应用程序的一个模块)划分成三部分组 Model管理这个模块中所用到的数据和业务逻辑。而View 管理模块如何显示给用户,Controller 决定如何处理用户和该模块交互式时候产生的事件如用户点击一个按钮等。
4、XML语言
在服务器和设计模式结构中会应用到自定义文件,而且在应用高级设计时也会定义自用的标签,现在流行的是用XML去定义配置,所以XML语言应该有一定掌握。
当前,Java 2平台企业版(J2EE)架构在厂商市场和开发者社区中倍受推崇。作为一种工具,可扩展标记语言(XML)简化了数据交换、进程间消息交换这一类的事情,因而对开发者逐渐变得有吸引力,并开始流行起来。自然,在J2EE架构中访问或集成XML解决方案的想法也很诱人。因为这将是强大系统架构同高度灵活的数据管理方案的结合。
XML的应用似乎是无穷无尽的,但它们大致上可以分为三大类:
1、简单数据的表示和交换(针对XML的简单API(SAX)和文档对象模型(DOM)语法解析,不同的文档类型定义(DTDs)和概要(schemas))
2、用户界面相关、表示相关的上下文(可扩展样式表语言(XSL),可扩展样式表语言转换(XSLT))
3、面向消息的计算(XML-RPC(远程过程调用),基于SOAP协议的Web 服务(Web Services),电子化业务XML(ebXML))
5、网页脚本语言
为了提高WEB项目的整体性能,提高人机交互的友好界面,网页的脚本语言是很有用处的,有的时候可以解决很大的难题或提高程序的性能和应用性。
网页脚本语言的执行都是在客户端执行的,速度很很快,并且大多的 *** 作与服务器没有交互运算,所以在一些应用中非常理想。在设计WEB项目的应用中,网页的脚本语言起着不能忽视的作用,所以如果设计WEB项目的应用中,对JavaScript应有一定的了解。
JavaScript是一种基于对象(Object Based)和事件驱动(Event Driven)并具有安全性能(Secure)的脚本语言。使用它的目的是与HTML超文本标记语言、Java 脚本语言(Java小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用。从而可以开发客户端的应用程序等。它是通过嵌入或调入在标准的HTML语言中实现的。
最近的steam夏促,很多好玩的 游戏 都出现了不同程度的折扣,而在折扣之外,还有一些没太多人玩的小 游戏 更多的出现在眼前,这不是就见到一个叫做《扫雷地球》(Globesweeper)的 游戏 。
这是经典 游戏 《扫雷》的加强版,相对于2纬平面的扫雷来说,球体的表面积远大于其横截面,所以能提供的 游戏 难度更高一些。本篇就带大家回到很早的时候,说一说关于《扫雷》这款只需要单手 *** 作,就可以玩很久的杀时间神级“ 游戏 ”。
大家也看到了,上面给 游戏 打了双引号。没错,《扫雷》其实算不上一款 游戏 ,更符合一个程序的设定。主要目的是为了让windows31的用户适应鼠标的 *** 作,所以在扫雷 游戏 中,只需要按鼠标左键、右键、双击 就可以完成全部的 游戏 过程。
上图中《Reversi》(黑白棋)是windows30系统自带的 游戏 之一,在win31中,扫累取代了它的位置。包括我们熟知的《纸牌》(Solitaire),这些 游戏 的目的就是让用户更好的接受鼠标的用处,鼠标的拖拽就可以完成GUI(图形用户界面)下很多的命令,因为在早期计算机中,很多指令都是用键盘输入的(TUI,就是满屏幕字符的那种)。
扫雷这个 游戏 是由当时刚进入微软工作的罗伯特·唐纳把科特·约翰逊制作的 游戏 移植到windows,他们或许也没想到1990年正式推出的《扫雷》名气会这么大,在近30年后,依然会有衍生玩法的3D新 游戏 发售。
纸牌 游戏 是为了训练用户鼠标拖拽而设计,所以页面较大,而且有频繁的拖拽动作;扫雷 游戏 则是为了训练精准的点击,所以雷区比较小,不小心点错位置很容易game over。
微软自带 游戏 里最受欢迎的应该有三个:3维d球、纸牌、扫雷。其中三维d球算是微机课里必玩的一款,因为其画面更加绚丽,而且更像是一款“ 游戏 ”,至于资历更老的纸牌和扫雷则并不受青睐,纸牌太无聊而扫雷太难。
但笔者依旧认为,《扫雷》是这三个里面最好玩的 游戏 。
相比来说,《扫雷》比《纸牌》更加益智, 游戏 流程可以很短,但作为休闲来说已经足够在紧张的工作间隙“换换脑子”,三维d球只不过是在秀当时的渲染技术而已,花里胡哨的没有什么 游戏 性, 游戏 全凭随机d。
据说在xp系统上还有一个彩蛋,笔者没有windows xp系统的电脑,所以大家可以试试加载《扫雷》之后,输入“xyzzy”然后按左边Shift键,这样鼠标移到安全方块时会显示白色,反之显示黑色 。
《扫雷》并非一帆风顺。意大利在二战结束后投入了大量人力和资金用于清除境内未爆d和地雷,仍旧造成了大量伤亡,于是在“反地雷运动”中,地雷被改成了花。
作为普通玩家来说,地雷元素不过是为了更好的解释 游戏 动机的一个道具而已,但对于曾受过伤害的人来说,地雷还是痛苦和威胁的象征。
笔者认为可以把 游戏 包装成垃圾分类,玩家化身有害垃圾的分拣工,在垃圾池里分拣有害垃圾,“地雷”换成玻璃碎片等可以伤害到人类的生活垃圾,这样就完美了!
好的继续说意大利的扫花。在Windows 2000中,意大利版在安装《扫雷》的时候会自动替换成“扫花”,不过只是简单的更换了一下UI和音效, 游戏 动机却非常令人疑惑。
最后到了Windows 8,这款经典 游戏 已经几乎消失殆尽,需要到应用商店下载,而且早就不是我们所熟知的样子。
《扫雷》就像其他的经典IP一样,也衍生出很多的变种,包括本文最开头那精美的3D玩法,还有诸如六边形、三角形等等的扫雷形式
游戏 并非越复杂越有游玩价值,相反,保持 游戏 性,保持帧数稳定运行流畅,在游玩的过程中可以感受到一定的难度, 游戏 结束获得及时的反馈(成就感或挫败感)就已经算是一款好 游戏 。
至于 游戏 的动机,“扫雷”的地雷元素虽是无心之举,但确实可能成为某些人的痛苦,被地雷伤害过的人,可能一生都很不想听到这两个字。虽然禁雷运动抵制扫雷有些“矫枉过正”,但笔者不认为这是完全的杠精做法,没经历过战争的人不该妄谈战争。
以上就是关于谁告诉我扫雷游戏是哪个设计的全部的内容,包括:谁告诉我扫雷游戏是哪个设计的、Java开发主要都学些什么内容、《扫雷》只是为了教人用鼠标等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)