分类 随笔 下的文章

整理11月

11月已逝,月常反思。

关于Canvas游戏的编写

10月末和11月上旬,一直在编写两个移动端的canvas休闲小游戏。
依旧用的熟悉的CreateJS,之前用过这个去实现动画,这次直接进行游戏开发,难免力不从心。
开发过程中遇见的几个坑:

  • 低级错误:在移动端的触碰兼容事件中,很难处理触碰事件点击事件滑动事件等。
    • 体现:拖动事件
    • 处理:使用框架hammer.js
  • 低级错误:在整体游戏的图形显示中,图片的层级错乱。
    • 体现:后添加的游戏元素理所应当会显示在之前的上面,影响视觉效果
    • 处理:分图层,在图层内添加新的游戏元素
  • 低级错误:不能很好的复用代码
    • 体现:相似的代码出现了多次
    • 处理:封装函数,复用代码,返回对象
  • 低级错误:游戏效率低下
    • 体现:逻辑错乱,导致游戏计算量过大
    • 处理:重构游戏逻辑,减少刷新和遍历操作
  • 常见问题:多次需求修改
    • 体现:需求多次修改,成本偏高
    • 处理:尽量降低部分与部分之间的耦合性,增强可修改性,不过重构代价低的时候尽量重构得更清晰好用

关于前端工程化的新认识

之前使用jade的过程中,只是简单作为了一个工程化的一部分,没有合理利用它。
在这个月的开发中,感受到了一个很重要的点就是,要把jade的template做得尽量的灵活。
之前,一个jade的基础template中,我们会留出这样几个代码块:

  • title - 页面标题
  • content - 页面内容
  • ??? - 页面内容中的特殊模块,如登录模块、nav

而现在,为了让一个template能应对更多特殊情况,我是这样划分的:

  • title - 页面标题
  • special-src - 页面特殊引用,这部分主要针对特殊的页面,应用场景举例:
    1. 页面中包含一个大型的js用来处理一个图标
    2. 页面中需要使用一个特殊的css文件来显示某一部分的样式
    3. 等等
  • content - 页面内容
  • footer-script - 页面特殊脚本,通常这个的下面只是一个script标签,针对小型的js引用

以及在目录划分上,现在我采用了分文件夹的内容处理方式,对于页面整体的组成有了更明显的展示,也更加便于引用。

关于物联网工程的“实习”(校方所组织的)

并不是什么正规的实习,但是有幸听到了杨正辉先生很好的一次讲座,有很多感受,会在之后的文章中详细叙述自己对于讲座内容等的理解和认识,对于先生所说的“互联网 与 互联网+”、“感知 - 传输 - 应用”等的一个个人理解。

关于IDE

自己比较懒,不喜欢折腾插件,所以最终放弃了Sublime Text。现在使用的是WebStorm。
在使用IDE上,之前一直坚持的一个理论是一直使用默认主题(懒),近期发现自己对于主题进行部分DIY是很有必要的,因为不同的人对于颜色的感知都有不同,所以要尽量去选择一个自己看着顺眼的配色,至少也要去官方主题库去斟酌一番。

关于后端

之前挖坑打算写后端,对GitHub项目 - Node_blog_V2进行了一个抄袭和研究循序并进的过程。

这个项目使用了一个标准的MVC结构,在学习过程中,发现了其中几个优缺点,优点:

  • 项目结构清晰
  • 数据处理方式很有借鉴意义

缺点:

  • 可修改之处很多
  • 没留出路由中间件的可行入口

后端的结构对于我一个一直在做前端的人来说是很新鲜的,这个坑基本是要弃了,打算带着这份新的理解去完成一个实际的后端项目用作自己的博客的一部分。

月常瞎扯

这个月,感谢玉酱带来的正能量,感谢强哥推荐的项目让我的毛爷爷越来越多,感谢Bilibili重新带给我的乐趣。
以及,费玉清的嘿嘿嘿的梗已经把我的室友洗脑了!!!
卸载了手机和电脑的炉石,更多的时间要用来休息和学习。
口琴方面,可以吹完千本樱了,换气又强了不少。
人生漫漫,仍需早睡早起,尚要不忘初心,如此。

整理这个十月

随着对于新一个月份的流量和生活费的热忱期盼。
十月份过去啦。
月初的时候有几单不错的企业网络平台,以为商量好了,结果却因为价格问题被放弃了。
赚钱很不容易。
现在是十一月月初,翻开账本和日记,想想也该写几个字记录一下自己的一个月了。

《平凡的世界》

借着一股热情,一口气读完了平凡的世界。对于小说而言,这部写得很文艺,那种接地气的文艺,不会总用华丽的词却还是很有意境感。
每个人都被困囿于自己的生活圈子里,这是一种平衡,显然有些平衡值得被打破。孙少平读了很多书,有着很强大的精神,虽然他的爱情是道不完美的疤痕,可他却真正地在风雨中活成了一个挺拔的男人。
这本书有很多很有意思的细节。孙少安和田润叶,那一曲也不知道什么时候就会传来的信天游,缩小的世界,人与人的关系交织、打散、再交织,徐老的黑猫,农村与城市,面子功夫与实干项目,“懂事”的政治套路,那个时代独有的“信仰”,等等。
有机会我会买成正版书收藏起来的,感谢作者以及让我想起这本书的刘小静。

跑步

提速跑过一次30min以内的5km之后,减慢速度开始尝试7min+/km的速度进行万米的尝试,也成功了。
这个月跑了很多,总里程50km左右。对于一个胖子,慢跑确实是一种很好的休闲方式,也能很好地消耗自己的卡路里。

学习与技术

太浮躁。
学swift的时候太过浮躁,不好好看书。一开始感觉swift跟canvas有点像吧,这还不分分钟上手,结果装逼被雷劈(所以这个月闲下来还是要继续)。
给项目排bug的时候,状态也不好。在技术方面的浮躁导致盲目自信,基础不稳定,很多东西没搞懂就直接上手,导致一些项目架构不合理。
十一月,好好做点该做的,看看什么结构才能够开发友好。
自己给自己想了很多坑没有去实现,很多想学的还没学。
还有好多书没看呢。
从之前很久一直拖到现在的一些事情,总归还是要尝试着去完成。


很多想说的但是却写不出什么东西。

有些话不要只是说说,有些话也只能够说说,有些话想要表达却不必说。还在路上,还在烦恼,尽人事,去特么的天命。

切换博客系统为Typecho

换博客系统了咩哈哈

主要是wp总觉得哪里怪怪的加上它本身有点重很嫌弃就换成了轻量级的Typecho。
折腾了一会儿把博客系统迁移到了Typecho上,还好之前的文章里面没有很多文件的东西,迁移还算方便。

貌似以后要学学markdown语法了

切换之后编辑文章发现写作语法不能像之前那样了,要换成牛逼闪闪的MD语法,果然新技能还是要点。

切到Typecho的二三事

  • 安装的时候可以先把目录chmod成777的权限之后再改回755或者644去
  • 如果除了主页都是500提示,那就修改服务器配置。(关键词“location”)
  • 如果除了主页都是404提示,还是修改服务器配置。(关键词“伪静态地址”)
  • 如果之前用的wordpress,可以在官网文档下载WordpressToTypecho插件

然后瞎逼逼几句

折腾了一个月,做了一些页面学了一些css知识,挣了几百感觉完全不够看的样子。因为没有完备的作品库和简历,在很大程度上没有一个完整的web应用架构能力,缺少团队经验。设计上因为切换到了OS X端,也在尝试使用很火的sketch进行设计。慢慢熟悉了OS X的操作和MBA的手感,回到我的大神船上多少会有些不适。
作为一个大学生总会面对校组织这个话题。我在大一上学期期末的时候,完成了所有我应该完成的东西后,离开了校学生会。在离开之后,这半年多一点的时间里,深深的感受到了学校的局限性。一个校组织能够给你的东西不多,但是它能给你个环境,这个环境一旦利用好了你能为自己创造很多的经历和价值。只是作为二十多岁的小青年,加上朋友们最为看重的劳动价值观,我更愿意把时间奉献给更Geek或者说更有经济价值的方向上。
web前端这个坑很难填,越走越难,我喜欢它,我想从事于它,所以现在我需要更加完备的知识。
下一步打算设计一个Typecho的主题用给自己的博客,困囿于渣设计能力深感蛋疼。
不忘初心,脚踏实地,来日方长吧。

移动端和createjs的那点事。

入了MacBook Air,努力还贷中,有什么前端的单子请叫上我么么哒!

移动端小游戏,点击开始,天上会掉下来小人,然后让小人掉到背景里面的时候给它拍照。

游戏地址

canvas07二维码

因为移动端响应click事件会有延迟,我就把事件换成了移动端的touchstart,电脑不能使用请见谅,手机扫码即可。

做完这个主要研究了以下内容。

1.createjs的旋转

对于createjs的Bitmap对象Shape对象Sprite对象等图形对象,都有一个旋转属性rotation,这个指的是旋转的角度,可以取正负数,当然正数是顺时针旋转度数。

旋转的中心设定,是用regX和regY两个属性。顾名思义。

2.移动端点击事件

移动端的点击事件,不应该用click。手指触摸和鼠标点击并不相同,在移动端,要把响应点击的onclick换成ontouchstart,不然会产生0.x秒的延迟。

3.加载问题

考虑到傻逼的柴犬君经常要使用一些框架,傻逼的柴犬君把框架整合到服务器的一个固定文件夹里面,方便一点加载是一点吧。

 

CSSLab:踏踏实实的给css做实验

一个小点子。

很多时候一些css属性想测试一下,都是F12在开发者工具里面弄的。这么弄没有保留性,也不方便展示。

看张鑫旭大牛的博客感觉自己做一个css的小实验室插件还不错,于是就弄了这么个小插件:CSSLab,项目用gulp构建。

总功能代码才几十行而已= =。

原理是,在内容模板(content.jade)上写好你需要的内容,需要控制的部分赋一个id(较规范的话要以 lab- 开头),然后 new一个CSSLab,参数为id值。

之后是功能函数,你需要绑定一个需要修改的值的话,只需要使用addVar这个函数就行。

addVar : function(info,attr,type,options)

info:绑定变量的信息,比如“父元素背景色”,“子元素字体大小”

attr:绑定的属性,css在DOM的style属性里面的参数,如“backgroundColor”,“fontSize”

type:如何控制这个属性值,滚动条的话就range,文字域就text,下拉菜单就options(此处应该会改成select

options:控制参数。

options根据不同的type有不同的写法:
range:{
u : "计量单位如%/px/em,没有就不填",
min : "最小值",
max : "最大值"
}
text:{
u : "计量单位如%/px/em,随意就不填"
}
options:{
u : "计量单位如%/px/em,没有就不填"
o : ["选项1","选项2","选项3"]
}

我在仓库的example里面做好了一个案例,目前就是这样。

有一个想法,整合起这些奇怪的小问题做更多的实验,然后真的弄一个CSSLab出来。

如果真的弄了这个,我会给它买域名CSSLab.wang,站点名就是汪君的CSS实验室哈哈哈哈。