在日常的程序开发中,使用开发语言的特性是不可避免了,这里就简单的说明下JS中的值类型与引用类型,以及其中一些不为明知的特点。
用puppeteer写一个自动化的日报提交脚本
在我们日常的工作中,尤其是工作很忙的时候,如果项目组要求每天都要写日报,这真的是一件令人很难受的事情。因为我们老是忘记这件事情。而且,每天打开日志,输入帐号密码,然后敲一堆文字,保存日志…,像这样的重复劳动也很是让人恼火。既然我们是程序员,那么肯定会有办法来解决这个问题。于是乎,哈哈,是时候祭出今天我们要使用的神器了:puppeteer。
2017年总结
感觉今年啥都没干,时间就匆匆的从指尖溜走了。
远离回调地狱,聊聊promise与async
从大学到工作,写了差不多4年的javascript了,经常听到人们谈论起js时,总离不开几个常规吐槽:”写一个类真是太痛苦了,连继承的函数都得自己写”,”我靠,怎么这个地方的this指的不是当前对象啊??”,”回调写起来简直就是噩梦”。前几个问题要么在新的ES规范中得到了解决,要么是需要自己认真了解js的相关特性,不过最后关于回调的吐槽是每个jser确实难以忍受的噩梦。
聊聊JS中的遍历
遍历算法在我们日常编程过程中算是使用得最多的了。这里我们就简单的聊聊,在JS中关于各种基本数据结构的遍历方式以及其相关的坑。
白鹭引擎初用感受
最近一直在用白鹭引擎写游戏,棋牌类的h5游戏。早在开工之前,公司里面就有同事劝我说,别用这东西,这玩意就是一骗子,坑死人了。但是鉴于目前市面上的h5棋牌案例,可以说十有八九是出自白鹭,而且各种h5游戏招聘中也是总要加上”最好有白鹭开发的经验”这样的句子。所以,不信邪的我,就正面怼一怼这个白鹭,看看到底是好东西还是坑东西。
使用hash来控制浏览器的前进与后退状态
问题
在web开发的过程中,我们或多或少都会遇到和浏览器前进或者后退事件的问题。像ajax的表单的提交,当用户填完表单后条转到另外页面时,退回上一个页面会看到自己填写的东西都变成了空白。或者我们想让用户进入另外一个页面之后,不要在用浏览器回退回之前的页面。然而,浏览器并没有暴露类似回退以及前进这样的事件接口给我们,所以,这里我们打算用html5规范中最新出的hash值来解决这样的麻烦。
KNN邻近算法
从年初开始,笔者开始对机器学习做出初步的了解与学习,初衷是为了解决游戏开发中AI的算法问题,但是由于其数学门槛和我工作方面的原因,进度一直都是断断续续。这里开始重新对机器学习方面的知识做出一些学习后的理解总结,以方便日后的学习。
目前笔者看的书是《机器学习实战》。这是一本用python实现的,以案例为主,比较基础的学习书。代码的思路也主要是来自该书。有兴趣的同学可以去了解下。
使用Phaser来开发我的炉石传说(三 最终篇)
4.战斗逻辑
战斗逻辑可以说是我们游戏核心中的核心了。实现起来也不是很复杂,这里先交待一下思路。
战斗,无非就是战场上随从之间和玩家英雄之前的属性数据的一些结算而已。我的鳄鱼攻击你的鱼人宝宝,那么我的鳄鱼生命值就减去你的鱼人宝宝随从的攻击力,如果为负,说明鳄鱼人宝宝的攻击力大于我们的鳄鱼随从的攻击力,那么鳄鱼就会阵亡。鱼人宝宝同样要做相同的结算,如果鱼人宝宝的生命值大于鳄鱼的攻击力,那么承受这次攻击之后,鱼人宝宝并不会阵亡,但要将生命值进行更新,也就是鱼人宝宝的最新生命值应该是之前生命值减去鳄鱼的攻击力才对。如果攻击的目标是英雄,直接用英雄的血量去减去攻击者的攻击力。当英雄的血量降到1点以下时(不包含1点),那么英雄也就阵亡,游戏的胜负也就分出来了。
使用Phaser来开发我的炉石传说(二)
五.游戏主逻辑
接下来我们要做的就是整个游戏的关键了。整个游戏能不能跑起来,就看我们这主逻辑写得咋样了。
游戏主逻辑我们这里分为几个部分:
- 卡牌的生成与渲染
- 战斗随从的生成
- 敌人的AI
- 战斗结算
- 水晶费用管理
- 剩余卡牌的管理
使用Phaser来开发我的炉石传说(一)
作为一位骨灰级的炉石玩家,本人在上个月最终还是脱坑了。因为各个版本的改动,卡组的各种退环境,导致这个游戏的平衡性已经一塌糊涂。所以,这里我们自己来试着开发一款属于自己的炉石游戏,缅怀下当年初入坑时的心情。
聊聊微信小程序
最近因为项目需要,算是完完整整体验了一把微信小程序的开发。整体的感觉还算不错,这里稍微谈谈使用心得。
Redux第一课
React火了这么久了,但是因为其门槛,很多希望了解它的前端后端都因为其繁杂的配置,或者学习成本望而却步,这里我就简单的总结下,怎么样入门这一高大上的技术栈。就算工作中不使用,了解其运行原理也是很好的。
反沉迷,我亲爱的轮子
在读书和刚毕业的时候,我是很迷信各种工具的。写代码,一定要那种提示齐全,语法检查机制完备的ide,为此,在念书的最后一年,为了开发一款h5游戏,花了很大量的时间在寻找ide上面。因为是用js来写,所以世面上很难找到代码提示和语法检查的ide,当时能够勉强达到要求的一个是aptana另一个是webstorm。因为找不到像vs或者eclipse那样猛的ide,我还经常吐槽,js真是难搞,连个像样的ide也没有。
后来在工作的过程中,这种迷恋工具的情节,被一步一步的削弱,最后竟然发现,远离这种功能完备的开发工具,竟然对我们自身开发水平的提高会有很大的帮助。
Gulp的简单入门
2017年的一开始就把我忙的够呛,各种亲戚结婚酒估计还要持续一段时间。而且最近因为刚吃饭马上就追公交让我好好吐了几天。现在终于是好了。写一点关于gulp的简单使用入门。