Docker部署monorepo项目

发表于 | 分类于 前端/前端工程

最近在使用pnpm和monorepo搭建一个前后端项目,为了方便部署,决定统一走Docker环境,本文主要记录整个过程中遇到的一些问题。

在markdown中支持可交互组件

发表于 | 分类于 技术原理

编写markdown文档时,有时候希望直接展示一个可交互的组件,类似于ElementUIAntd等主流的组件库的文档交互。由于vite已经逐渐取代webpack称为组件库开发的流行方式,本文将研究一种使用vite插件实现在markdown中实现可交互组件的思路。

富文本编辑器Quill源码分析

发表于 | 分类于 源码分析

最近在产品中遇到了定制富文本编辑器的场景,发现quill比较符合业务需求。在后续的开发中发现quill的使用体验和扩展性都比较好,源码也比较简洁,因此决定看一下quill的源码。

浅谈各种MVX架构

发表于 | 分类于 编程技术

在Android、iOS以及Web前后端开发中,总是会接触到MVC、MVP、MVVM等术语,虽然很早以前就查阅了相关的概念并牢记于心(面试专用),但对于其中的设计思想实际上并没有很好的理解。本文尝试记录自己关于各种MV*架构的一点思考。

关于TailwindCSS的一些思考

发表于 | 分类于 前端/CSS

tailwindcss是一个工具类(原子类)优先的 CSS 框架,与bootstrapbulma等组件类框架不同,tailwind 自身并没有提供可以直接使用的组件类如.btn-primary.table,而是提供了诸如px-4text-sm等原子类,由开发者通过组合的形式构建页面样式。

本文将先介绍样式类的编写变化,然后介绍 tailwind 的使用体验,以及关于现在是否能够将原子类用在生产项目中的一些思考。

游戏AI的一些概念

发表于 | 分类于 游戏

游戏AI是游戏开发中非常重要的一环,在很大程度上也决定了游戏性。

这里的AI并不是深度学习、强化学习等理论AI,而是游戏中非玩家控制的角色,在游戏运行时自动做出某些看起来比较智能的行为。

比如笔者比较喜欢的《孤胆枪手》这款游戏,游戏中形形色色的外星怪物,会源源不断地朝玩家涌来,试图攻击并杀死玩家,在玩家控制角色移动位置后,怪物也会自动调整行动路线并继续攻击。这些怪物就是比较典型的游戏智能体。

因此,本文主要研究游戏AI中涉及到的概念,以及一些基础功能的研究和实现。

记一次CI构建优化

发表于 | 分类于 前端/前端工程

目前的前端项目是在gitlab CI中进行构建和部署。最近发现整个CI的构建时间比较长,比较影响开发体验,因此需要优化一下。

使用vite加载远程模块

发表于 | 分类于 前端/低代码

在上一篇文章中提到了在线预览Vue组件,后面思考了一下,如果能在现有项目中加载远程模块,可以更方便地解决低代码编辑自定义组件的问题。本文沿着这个思路,尝试实现在vite中加载远程模块

初识SwiftUI

发表于 | 分类于 客户端/iOS

最近几年声明式UI的风在客户端也非常流行,Android有jetpack compose,iOS有Swift UI,本文决定尝试使用一下SwiftUI,看看开发体验如何,稍作记录

一种在线预览Vue组件的思路

发表于 | 分类于 前端/低代码

最近在研究一些低代码平台,设想了一种面向开发者的低代码编辑器,本文是印证这个想法的第一步,即在线预览单个组件文件。本文以Vue技术栈为例,尝试实现一个可以在线预览Vue组件的功能。

关于低代码平台的思考

发表于 | 分类于 技术原理

最近两年前端低代码平台的流行趋势越来越明显,本文是我关于低代码平台的实现原理、应用场景等方面的思考。

前端开发环境热更新实现原理

发表于 | 分类于 技术原理

热更新是现代前端开发环境中必不可少的一项,本文整理了一些打包工具parcelwebpackvite热更新的使用机制,同时了解热更新的实现原理。

游戏开发中的数学和物理基础知识

发表于 | 分类于 游戏

游戏开发中需要掌握一些基础的数学、物理等知识,本文将对这些知识进行整理

游戏开发中的长地图和摄像机

发表于 | 分类于 游戏

在一些横版游戏中,需要搭建超过一个屏幕的长地图,然后控制角色在整个地图中进行移动。本文主要讨论通过 tiled map 实现长地图场景,然后通过控制摄像机的方式访问整个地图。

使用cocos实现flappybird

发表于 | 分类于 游戏

打算梳理一下自己的游戏开发技能(虽然并没有什么技能),于是打算从易到难去实现一些比较完整的游戏案例。flappybird是一个比较精简的游戏,游戏玩法和规则都很简单,但是包含的内容比较丰富,能涉猎到不少知识点,因此用来入门是比较不错的。本文整理了使用 cocos creator 开发 flappy bird 的一些收获。

从dark-slash中学习游戏动画

发表于 | 分类于 游戏

最近在学习游戏开发中的动画效果(主要是技能效果),苦于找不到合适的资料,发现cocos官方提供了一个dark-slash暗黑斩的教学项目,这是一个比较完整的游戏项目,也包含了不少动画项目,很适合新手学习,本文主要整理了阅读该项目的一些收获。

一种易扩展游戏技能系统的实现方案

发表于 | 分类于 游戏

最近在实现一个卡牌类游戏,因此研究了一下卡牌游戏的核心玩法:卡牌技能,并给出一种比较通用的技能系统设计实现,稍作总结。

开发独立游戏需要解决的一些问题

发表于 | 分类于 游戏

做游戏一直是我的夙愿,也是我转行进入软件开发的动机。如今,当我已经有5年的开发经验,准备开发自己的独立游戏的时候,发现这件事远比我想的复杂,本文记录了我关于独立游戏开发的一些思考,以及对未来的展望。

petite-vue源码分析

发表于 | 分类于 源码分析/Vue

最近发现Vue增加了一个petite-vue的仓库,大概看了一下,这是一个无虚拟DOM的mini版Vue,前身貌似是vue-lite(瞎猜的~),主要用于在服务端渲染的HTML页面中上"sprinkling"(点缀)一些Vue式的交互。颇有意思,于是看了下源码(v0.2.3),整理了本文。

React中封装组件的一些方法

发表于 | 分类于 前端/React

最近参与了一个基于Raact技术栈的项目,距离我上一次在工作中React已经过去了挺长一段时间,因此打算整理在React中封装组件的一些方法。