分类
标签
Bash C/C++ CI/CD CMU Cookie CS231n CS50 CSS CTF Diffie-Hellman Emmet Floyd算法 FPGA GitHub Actions Github Pages golang GOT表 Hexo HTML HTTP Java JavaScript Jupyter LeetCode Linux logrus MIT Missing Semester NumPy OpenSSL PLT表 Python RSA Session Shell sing-box socket SQL SQLite SQL注入 SVD SymPy TCP/IP Verilog Web开发 writeup XPath ZJU校巴 主定理 代理 信息安全 内存 前端 动态规划 动态链接 博客 压缩 参考 后端 命令行 国际交流 图像处理 图解 堆 堆排序 复杂度分析 密码学 开发 归并排序 微积分 心得 快速排序 抽象代数 搜索 操作系统 数字电路 数字逻辑 数学 数据库 数据结构 数论 文件系统 时间戳 有限状态自动机 机器学习 正则表达式 汇编 游戏开发 爬虫 物理 环境配置 科学计算 竞赛 笔记 算法 线性代数 编程语言 编译 网络 网络安全 背包DP 计算机基础 计算机视觉 计算机网络 课程 课程推荐 谱定理 踩坑 逆向 逆向工程 逻辑电路 非对称加密 题解 高斯消元法 魔塔
381 字
2 分钟
我用JavaScript写了一个小游戏!
WARNING黑历史慎入,游戏不好玩,而且代码也写的烂。
链接
我写了一个简单的小游戏。
游戏链接(可能需要加载一段时间)
CAUTION此链接现已下线,不可访问
Waiting for api.github.com...
简介
前几天我在玩 Emoji Kitchen(一个可以混合emoji变成新的emoji的东西) 的时候,突然想到,有那么多的emoji,这不就是免费的图片素材库嘛,于是就使用纯js和emoji素材写了了这个小游戏。
非常简陋的小游戏,完成度很低,但是这应该是我接触的第一个比较需要代码架构能力的项目,因为之前参加算法竞赛,写的代码都是“一次性”,提交题目通过后就不会再维护,为了在规定时间内完成题目,变量名都是很短的a
、b
、c
,从来没注意可读性和可维护性,也很少写OOP的代码。
写这个小游戏让我学到很多,比如面向对象程序设计、游戏的ECS(Entity Component System)架构(尽管我的游戏里没有用到Component)、代码之间如何解耦、怎么写规范的Commit Message等等。开发过程中也经历了数次痛苦的重构,让我知道了 “Think twice, code once”这句话 有多么的重要。
这还只是一个简陋的demo,可能想起来了就会偶尔加点功能?在代码变成屎山之前我会物尽其用的(笑)。
我用JavaScript写了一个小游戏!
https://cyrus28214.github.io/posts/my-first-game-with-javascript/