莫相离 发表于 2015-1-18 11:18:48

ASP.NET网页设计利用WPF开辟的扫雷游戏,双体系主题复刻版仓酷云

一般的指的.net就是跟net网页编程相对的那种,主要是做企业级应用的。你如果想学这个,主要就是学C#和数据库。(ASP.NET好像很重要的,应该也要学的,ASP.NET上好像可以结合VB和C#等多种语言,但是微软主推C#)平常有人问我专业工夫会做点儿甚么?
我说:用WPF写个游戏玩玩。
:写的甚么?
我:扫雷。
:……
我:想一想都写了快两年了。
:orz
纯真地讲扫雷游戏城市以为很复杂,都欠好意义当个事儿,我一入手下手也是如许以为。写着写着才发明,事变实在没有设想中的那末复杂。先给人人上个图看看效果吧。

写这个扫雷程序的次要目标,并非实习WPF,也不是用WPF复刻Windows自带的这个游戏。这两件事儿实在都不至于做两年。(固然不是延续的两年,一连讲的话,是三个月的早晨吧。)
写这个扫雷程序,是想探求桌面使用程序开辟的最好理论和形式,也能成为本人这几年WPF事情的一个沉淀。而扫雷,只由于其功效绝对复杂却对照完全而被我选为一个载体。
想经由过程这个程序到达的方针



[*]计划计划发展过程的纪录回忆起本人方才进修WPF第一个岁首,单是日历控件就前后做了三遍。从第一遍的拿Button当日期,翻月都卡;到最初思索利用者的便当度、主题的撑持、模板的利用。真的是一个很分明的发展的历程。这个扫雷程序,固然是我事情的沉淀,可是我其实不寻求一入手下手的完善,反而我会但愿他一入手下手其实不完善,从而能展示出越变越好的一个历程。而这个历程,才是最可贵的。假如偶然间,大概我会写个体系博客,报告本人开辟这个游戏的心路过程。

[*]自行发明、制造、理论计划形式的游乐场固然从年夜学入手下手就入手下手看计划形式如许的书,可是我不能不供认,谁人时分看了也是白看。没有直面过严格的成绩的磨练,没有本人探索着真正利用形式,是不成能真正了解形式的。大概能熟悉这个形式,可是不晓得这个形式应当在甚么时分用,用在甚么中央,用的符合分歧适。而入手下手开辟扫雷这个程序的时分,我排空了本人一切的形式、计划上的常识,基础靠感到写。但愿能够再次体验那种,发明成绩、办理成绩、笼统成形式的美好感到。以是在这个项目里,你看不就任何第三方的库,第三方库在帮我们办理成绩同时,也带走了我们本人进修、发明的时机。这个扫雷做到如今,已前后两年工夫,都是在时代有了新的灵感,又从头入手下手了这个项目标开辟。好比进修完Android开辟以后,以为内里的Intent和Broadcast都是不错的计划,就引进了这个扫雷项目里。

[*]WPF程序开辟手艺特征的展现台既然把这个扫雷当做是事情的沉淀,固然还要保存它应有的功效。在这个程序里,我尽量多地引进一些WPF的特征或功效。好比自界说Effect甚么的。但愿本人在今后无机会再用到WPF的时分,在这个扫雷游戏的匡助下,可以回想起这些细节,并能把内里的代码或是框架举行征用。

今朝的近况

这个游戏还没有写完,按这个进度,要完成我设想中的功效大概还要5年工夫吧。今朝已完成的功效包含。


[*]基础游戏逻辑和用户交互。你能够了解为XP版的扫雷复刻。甚么好汉榜啦,选项界面啦。不外有改善。
[*]主题撑持。如今已完成的主题是Ubuntu作风的扫雷,你能够经由过程一个XAML,完整自界说一个。
[*]多言语撑持。
[*]模块化。
[*]插件框架。今朝完成了一个复杂的插件体系,内里就一个配音插件。因为我今朝并没有往懂得过其余插件体系是怎样完成的,以是大概你会以为这完整不是插件。而这就是我想要的,本人进修、发明的历程。
[*]匡助文档,还没有写完。
[*]安装包。利用NSIS剧本编写,还很原始。
上面是插件对话框的截图。

上面是改善的好汉榜。

在这个好汉榜上能够看到每次游戏的了局。
Roadmap

今后假如偶然间,我是但愿这个扫雷能够撑持以下的几个功效。


[*]AISDK,我晓得扫雷是个NP成绩,以是这才对照有应战嘛。何况Codeplex上已有人在做了。
[*]AI对战形式。有了AI,就能够让两个AI一同解一个游戏。手艺宅们的最爱。
[*]录制游戏视频。扫雷但是正儿八经的国际赛事,从网上能够找到很多玩家录制的游戏视频,好比26秒中级甚么的。有需求就要有功效。
[*]联网对战。MSN就有扫雷游戏。
[*]……
这个项目如今放在了codeplex上,人人有乐趣能够玩玩看啊。不外编译起来大概会对照贫苦,内里的自界说Effect大概会默许Build不外,除非你安装了ShaderBuildTask。不外Effect内里有Readme,先容了两种Build的办法,一步步来应当没有成绩的。
捆绑编译器。用户不需要受制于厂家,自己就能将程序在新平台上编译运行。除了牛B轰轰的linux,估计也没有系统捆绑c/c++的编译器,而且许多新平台都无法支持复杂的c/c++编译器在上面直接运行。

灵魂腐蚀 发表于 2015-1-20 19:59:39

我觉得什么语言,精通就好,你要做的就是比其他80%的人都厉害,你就能得到只有20%的人才能得到的高薪。

愤怒的大鸟 发表于 2015-1-22 21:55:11

ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp)。

深爱那片海 发表于 2015-1-25 18:45:12

这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。

若天明 发表于 2015-1-25 22:50:16

JSP/Servlet虽然在国内目前的应用并不广泛,但是其前途不可限量。

柔情似水 发表于 2015-2-4 07:15:37

对于中小项目来说.net技术是完全可以胜任,但为什么现在大型公司或网站都选择php或java呢?就是因为微软不够开放,没有提供从硬件到应用服务器再到业务应用的整套解决方案。

乐观 发表于 2015-2-9 18:38:56

在一个项目中谁敢保证每天几千万甚至几亿条的数据不丢失?谁敢保证应用的高可靠性?有可以借签的项目吗?

admin 发表于 2015-2-18 03:06:50

对于中小项目来说.net技术是完全可以胜任,但为什么现在大型公司或网站都选择php或java呢?就是因为微软不够开放,没有提供从硬件到应用服务器再到业务应用的整套解决方案。

精灵巫婆 发表于 2015-3-1 09:13:34

关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。

莫相离 发表于 2015-3-3 19:39:58

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象。

若相依 发表于 2015-3-11 12:32:53

ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。

冷月葬花魂 发表于 2015-3-18 11:14:48

可以看作是VC和Java的混合体吧,尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性。

小妖女 发表于 2015-3-25 18:38:55

PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。
页: [1]
查看完整版本: ASP.NET网页设计利用WPF开辟的扫雷游戏,双体系主题复刻版仓酷云