自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

胖蔡叨叨叨

专注与业务实现本身,淡化语言附加的特性!

  • 博客(140)
  • 资源 (12)
  • 收藏
  • 关注

原创 谷歌关闭AOSP开发是“安卓闭源”?警惕科技新闻的标题党陷阱

此次“安卓闭源”乌龙事件,暴露出科技媒体在专业性与公共责任上的集体失范。在信息爆炸时代,读者需要的不是煽动性的标题,而是基于事实的理性分析。正如开源社区的信条:“不要恐慌(Don't Panic)”——在按下转发键前,请先追问一句:“这真的可信吗?参考资料Android Authority原报道:谷歌调整AOSP开发模式AOSP闭源争议的技术真相开发者视角:谷歌如何控制安卓生态(本文部分案例分析引用自《爱范儿》《网易科技》等报道,事实核查基于公开信源)

2025-03-28 09:35:41 1065

原创 如何使用FastAPI开发Serverless应用?

使用FastAPI开发Serverless应用是一种现代且高效的方法,它结合了FastAPI的高性能和Serverless架构的灵活性、可扩展性以及低成本。下面是一个基本指南,帮助你从零开始创建并部署一个FastAPI应用到Serverless环境。

2024-10-18 00:00:23 1145

原创 rollup.js 插件实现原理与自定义

创建插件对象: 首先,你需要定义一个对象,该对象包含你想要实现的钩子函数。每个钩子函数接收特定的参数,并返回处理结果或Promise。name: 'my-plugin', // 插件名称,用于在日志中标识// 解析模块ID的逻辑},load(id) {// 加载模块源码的逻辑},// 转换代码的逻辑},// 输出阶段处理逻辑},注册插件: 在Rollup配置文件中,通过plugins选项注册你的插件。output: {},测试和调试。

2024-10-17 23:41:38 815

原创 Tailwind Starter Kit 一款极简的前端快速启动模板

Tailwind Starter Kit 因为小而灵活,较为适合追求简约、快速、高效开发的开发者。而且我们可以在其基础上对齐进行补充、定制从而形成一整套适合于你自己的开发套件。在我看来,Tailwind Starter Kit 并不追求大而全,万金油式的框架,它提供的就是一个基础工具和一个套件思想,更方便与我们自己去往里面添加属于你自己的东西。特别适合哪些长期进行同质化开发的团队,容易通过不断的积累产生价值。

2024-10-17 13:42:04 442

原创 探索PDF制作新境界:强力推荐开源库pdfmake

pdfmake是一个开源的客户端/服务器端PDF文档生成库,支持运行在浏览器环境及Node.js环境中。它采用纯JavaScript编写,无需任何额外插件或软件支持,即可轻松创建复杂的PDF文档。通过定义JSON结构来描述文档内容与样式,pdfmake大大简化了PDF文档的编程生成过程,即便是非专业前端开发者也能迅速上手。综上所述,pdfmake凭借其简洁的使用方式、强大的功能集以及出色的跨平台性能,成为了PDF文档生成领域的佼佼者。无论您是进行快速原型设计,还是构建企业级应用,pdfmake。

2024-10-17 10:04:03 1980

原创 BPMN-Moddle模型校验指南

定义了一套 BPMN 2.0 元模型,这些元模型描述了BPMN规范中所有允许的元素(如流程、任务、网关等)、属性和关系。元模型是通过JSON格式定义的,详细说明了每个元素的结构、必需和可选属性以及它们之间的关系。为提供了一套核心的元模型定义。这个库是许多BPMN编辑器(如或bpmn-js)的基础,用于处理和操作BPMN模型的数据结构。Moddle"这个名字来源于"",意在提供一个领域特定语言(DSL)来定义复杂数据模型的结构。元素类型定义。

2024-10-17 10:00:53 640

原创 使用Docker部署nextjs应用

最近使用nextjs网站开发,希望使用docker进行生产环境的部署,减少环境的依赖可重复部署操作。我采用的是Dockerfile编写应用镜像方式+实现容器部署的功能。

2024-10-14 11:18:24 1117

原创 使用Rollup.js快速开始构建一个前端项目

Rollup 是一个用于 JavaScript 项目的模块打包器,它将小块代码编译成更大、更复杂的代码,例如库或应用程序。Rollup 对代码模块使用 ES6 模块标准,它支持 Tree-shaking(摇树优化),可以剔除那些实际上没有被用到的代码,从而生成更小的文件,这意味着它非常适合于现代 JavaScript 项目。

2024-10-14 10:45:18 1011

原创 Diagram-js 核心功能分析

Diagram-js是bpmn-js中实现元素绘制、交互、显示的核心依赖,而对于diagram-js来说不同版本其功能和使用可能存在细微差异,为保证版本功能的统一性, 如下对于Diagram-js功能分析均是针对版本进行分析,请先确认使用的diagram-js版本是否一致。我们通过对Diagram-js其核心功能进行分析来理解bpmn-js的绘制原理。

2024-10-14 08:30:00 927

原创 Tailwind Starter Kit 一款极简的前端快速启动模板

Tailwind Starter Kit 因为小而灵活,较为适合追求简约、快速、高效开发的开发者。而且我们可以在其基础上对齐进行补充、定制从而形成一整套适合于你自己的开发套件。在我看来,Tailwind Starter Kit 并不追求大而全,万金油式的框架,它提供的就是一个基础工具和一个套件思想,更方便与我们自己去往里面添加属于你自己的东西。特别适合哪些长期进行同质化开发的团队,容易通过不断的积累产生价值。

2024-10-13 19:36:10 512

原创 fastapi 开始前需要了解哪些了解哪些?

要定义一个依赖,你可以使用Depends对象来标记一个函数作为依赖项。# 这里应该是验证token并返回用户信息的逻辑# 在请求到达路由处理函数之前执行的代码# 可以访问和修改请求对象,比如添加或修改headersresponse = await call_next(request) # 调用下一个中间件或路由处理函数# 在响应返回给客户端之前执行的代码# 可以访问和修改响应对象在这个例子中,函数作为一个中间件注册到FastAPI应用中。每当有HTTP请求到达时,都会先经过这个中间件。

2024-10-13 13:59:13 919

原创 为什么要使用Fastapi进行网站开发?

FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 APIs (应用程序接口)与微服务。它基于 Python 语言,并充分利用了 Pydantic 进行数据验证以及 Starlette 和 Pydantic 这些库来处理异步请求,提供卓越的性能和开发体验。FastAPI 适用于构建各种规模的Web后端服务,特别是那些需要高性能、清晰的API设计以及快速迭代的项目,比如微服务架构中的服务、数据处理API、RESTful web服务等。

2024-10-12 11:14:30 131

原创 bpmn-js 元素与布局渲染

BPMN-JS 是基于 BPMN 2.0来定义元素关联关系,并通过Diagram-js库来实现web可视化的显示和编辑工作。Diagram-js 也是由BPMN.IO组织开发的一个专门用于业务流程建模符号(BPMN)的可视化开源 JavaScript 库。

2024-10-11 23:49:05 284

原创 如何使用bpmn-js实现可视化流程管理

BPMN-JS是一个流行的开源库,用于在Web应用程序中可视化、创建、编辑和分析BPMN(Business Process Model and Notation,业务流程建模与表示法)2.0 图。BPMN是一种国际标准的图形化语言,用于描述企业中的业务流程,包括流程流、任务、事件、网关等元素。BPMN.io。

2024-10-11 21:20:56 718

原创 nginx中单个域名绑定多个端口

因开发的需要,今日了解了监听多个端口访问同一个域名的方法,下面说下两种监听绑定的方式。除了上述的方式也可以通过重写一个新的server配置来实现绑定。

2024-06-18 08:49:03 484

原创 使用docker-compose配置mysql主从备份

经常性的负载过大,想着给服务器分分流,但又想要将数据同步到另外一台数据库(其中一个服务器有效期较短,不想到时候花费过多时间迁移),为此我就想要通过主从数据库的配置来方便数据自动复制备份。主从备份的原理就是主数据库服务将每次修改的sql记录保存日志,并将这些记录发送给从数据库服务,然后从数据库服务将改记录应用到自己的数据库的过程。【我这是因为是不同的服务器上,所以可以用同i一个地址,若是同一台服务器部署,需要区分映射到主机的地址不能与主数据服务覆盖】改下权限,my.cnf 权限不能是777,会被忽略。

2024-06-18 08:45:04 476

原创 Vscode中的行尾序列CRLF/LF不兼容问题

最近开发的的时候,打开项目文件经常会出现爆红错误提示信息,显示如下图:这东西太烦人了,毕竟谁都不希望在遍地都是爆红的代码里写东西,就像能解决这个问题,根据提示可以知道这是vscode中使用的prettier插件导致的,prettier插件常被用在vscodeprettierprettier。

2024-06-18 08:41:15 1948

原创 JS中的延时操作setTimeout()和setInterval()

JS中,给我们提供两种延时操作的内置方法setTimeout()和setInterval()。setTimeout和setInterval方法都是挂载在javascript的window对象下,通过两个参数控制,第一个参数控制运行的表达式或方法,第二个参数表示延时的时间,时间单位为毫秒级。setInterval与seTimeout不同的是,setTimeou定时执行一次结束,setInterval是循环间隔第二个参数时长执行参数一的表达式或方法。

2024-06-16 14:03:11 607 1

原创 修改yarn、npm、pnpm为国内镜像源

国内由于网络的原因,使用官方的npm、yarn、pnpm访问下载依赖库会很慢,有时候还会出现无法访问的情况,这时候就需要我们给npm、yarn、pnpm换一个国内的镜像源的,一般的我们可以将镜像换成淘宝的源,由于平时比较常用到的关系,所以就简单整理记录下,好之后查看。操作相似,替换成淘宝镜像后能极大的提高我们的前端库的访问速度。

2024-06-16 14:02:05 2180

原创 Vite使用unplugin-auto-import实现vue3中的自动导入

是基于写的,支持多个打包工具。我们可以使用unplugin-auto-import实现依赖的自动导入,不用再频繁导入依赖包,从而提交我们的开发效率。如下,以vue3+vite中使用改插件为例。

2024-06-16 13:58:21 10345 4

原创 记录一次基于Vite搭建Vue3项目的过程

Vue2已经于停止维护了,2024年算是vue3的崭新的一年,我们的项目也基本从vue2逐渐向着Vue3过渡,Vue3相较于vue2有更好的开发体验,和ts的自然融合使得项目的结构、功能拆分变得更加的清晰;组合式声明有种MVC向着MVP、MVVM转变的错觉;而Vite的使用使得我们的编译速度产生质的飞跃。总体来说,Vue3是一个不错的选择,今天这边文章主要就是来记录一下如何创建一个Vue3的项目。

2024-06-16 13:57:16 501

原创 vite-plugin-pwa 离线安装Vite应用

渐进式Web应用(PWA)通过结合Web和移动应用的特点,为用户带来更加流畅和快速的体验。且PWA支持离线访问能力(访问静态资源本地缓存),极大提高了用户交互的流畅性,降低非必要的网络依赖。尤其适合在手机端创建,本文推荐基于Vite的基础上使用实现和workbox离线缓存功能。

2024-06-16 13:55:34 1698

原创 将Vite添加到您现有的Web应用程序

Vite是一个令人难以置信的令人兴奋的工具。它不仅减轻了捆绑web应用程序的痛苦和眼泪,而且在这个过程中大大提高了捆绑的性能。它附带了一个速度极快的开发服务器,该服务器附带了热模块重新加载,并支持所有主要的JavaScript框架。如果你做网络开发——无论是为了好玩,这都是你的工作,或者两者兼而有之–我再怎么强烈地推荐它也不为过。

2024-06-16 13:53:38 1136 2

原创 JS 实现Date日期格式的本地化

为了更好的更新多语言日期的显示,所以希望实现日期的本地化格式显示要求,常规的特殊字符型格式化无法满足显示要求,这里整理了几种我思考实现的本地化实现功能。

2024-06-16 13:49:46 463

原创 Python Flask 使用SQLAlchemy实现ORM管理

SQLAlchemy是python里提供的一款SQL工具,支持数据库连接、映射、对象关系映射(ORM)以及数据库操作等功能。SQLAlchemy在构建在WSGI规范上的下一代中得到了广泛应用。如下介绍如何在Flask项目中配合实现数据库管理。

2024-06-12 09:05:01 546 1

原创 CSS函数:fit-content与matrix的使用

CSS函数。顾名思义,这三个函数只能在网格布局中使用。。pxcmvwch等。当参数为百分比值,相对于给定轴中可用空间的百分比。在网格属性中,它与列轨道中网格容器的内联大小和行轨道中网格容器的块大小相关。否则,它与布局框的可用内联大小或块大小相关,具体取决于书写模式。

2024-06-06 09:04:31 1154

原创 Python Flask实现蓝图Blueprint配置和模块渲染

蓝图(Blueprint)是Flask实现的应用模块化,通过模块化的方式分割视图,让应用的层次更加清晰,更加便于开发者开发和维护项目。通过蓝图,我们可以创建一组相同前缀的路由组合,可以用于分割应用不同的服务。如应用有两个服务:认证服务和用户服务,我们可以通过模块化分割服务,然后通过Flask注册不同前缀的蓝图。

2024-06-06 08:55:34 1176

原创 CSS函数:scale、scale3d函数的使用

CSS函数scale()主要是为了实现元素的放大和缩小效果,使用的是元素的变换效果。transform的,该函数可以实现指定X轴和Y轴的放大、缩小效果。

2024-06-05 16:46:23 1940

原创 CSS函数: translate、translate3d的使用

和函数可以实现元素在指定轴的平移的功能。函数使用在CSS转换属性transform的属性值。

2024-06-05 16:43:07 1970

原创 Python Flask 入门开发

Flask是一款流行的Python Web开发框架。轻量级的Web框架使得我们可以选择需要的模块进行搭建,也可以扩展所有需要的支持模块。Flask采用的是MVC模式,结构设计非常优秀,采用的Jinja2模块引擎,更好和前端模块进行结合。纵观python框架,我们不难看出pythonFlaskjwtcookiesunicode。

2024-06-05 14:51:31 428

原创 CSS函数: 实现数据限阈的数字函数

CSS函数中提供了几个比较实用的数字函数,它可以帮助我们实现一定的数学计算功能。calc()max()min()和clamp()函数。其基本实现功能如下:wp:list/wp:listcalc()函数之前的文章已经做了介绍,本篇文章主要介绍其他四个CSS数字函数。

2024-06-05 13:41:52 303

原创 Python 实现反转密码加密

反转密码加密是通过反向输出消息进行加密。如,‘Hi,boy!’通过反转加密就会变成 ‘!加解密的过程是一样的,解密是需要将密文再次反转过来既可以得到原文内容了。反转加密是一种比较弱的加密方式,一般我们通过一些密文既可以发现它是反转的。下面,我们将通过Python来实现一个简短的反转加密。

2024-06-04 09:25:33 102

原创 Python 实现乘数加密法

乘数加密是简单代替密码的一种。乘数加密法脱胎于凯撒加密法,加密和解密符号设计把他们转换成数字,加上或者减去密钥,然后把新的数字转换回符号,当我们把加减密钥变成乘以密钥,就是乘法加密法。有关凯撒加密法可以看之前的文章。

2024-06-04 09:22:35 234

原创 bpmn-js推荐几款常用的插件

bpmn-js整体框架库的风格是以组件的方式进行实现的,这样的结构也更加便于我们更好的对其进行功能扩展,以及客制化功能实现。其实bpmn.io已经为我们实现了较多场景的组件的实现,了解对应组件的功能更能便于我们区分是否需要自己实现,降低重复造轮子的行为,提高开发效率,本篇文章主要是介绍常见的bpmn-js中使用的组件库。

2024-04-30 16:57:21 546

原创 bpmn-js 多实例配置MultiInstanceLoopCharacteristics实现或签会签

使用bpmn-js流程图开发过程中会遇到会签和或签的问题,这个时候我们就需要使用多实例配置来实现BPMN 2.0的配置实现了,多实例任务,是从流程编辑概念之初也就是Activiti时期就存在的一个方式。所谓的多实例任务也就是字面意思,一个任务由多个人完成,常见于我们的审批流程的或签【一个审批完成即可】和会签【多个用户审批都通过才算结束】,由于存在多个成员的操作,引入了多实例的概念。

2024-04-30 14:06:12 588

原创 bpmn-js中实现shape的内置属性、节点的默认配置

若是深度定制可以通过在shape创建的时候配置shape属性实现,在开始添加内置属性之前,我们先来了解下shape在bpmn-js中直接创建的场景,以及内置属性创建的具体格式。两种方式均可实现内置属性节点的配置插入,第一种方式通过适配式的方式实现,尽可能少的影响建模其的独立性和完整性,后一种方式比较直接,一次性完成创建配置,减少shape的绘制次数,但代码侵入性较高,不利于不同场景的适配共用。具体可根据需求选择使用何种方式进行实现。

2024-03-14 15:43:06 584

原创 聊一聊bpmn-js中的contextpad

通过上述的了解,可以对contextpad有个大致的了解,想要自定义contextpad通过contextpad注册提供器实现方法(暂不考虑多选批量操作情况),返回操作元素根据didi插件机制的实现来分析,我们可以通过两种方式来实现我们的需求:追加contextPad和重写覆盖。

2024-03-12 15:06:43 410

原创 谈一谈bpmn-js中的moddleExtensions

稍微了解下就能知道支持BPMN 2.0的工作流模型并非只有一家,有最开始的activiti,以及后续分家后的camunda和flowable,他们都基于BPMN 2.0之后进行的后续功能的支持,为了实现flowable或者camunda元素模型的适配,又或者进行我们自己自定义元素的扩展,我们都需要引入一个三方的元素模型配置,而bpmn-js也给我们提供了自定义加载配置的方式。bpmn-js支持在创建模型的时候通过来配置自定义元素模型。

2024-03-05 14:09:05 414

原创 bpmn-js中实现xml数据转为json数据

开发bpmn-js建模器,希望将bpmn数据格式转为jsonbpmn-jsJSJSJSONjsonxmldomdomjson这里主要介绍上面两种方式,三方库转换如或详细使用查看官方使用教程。

2024-02-27 22:54:35 1112

原创 聊一聊bpmn-js中的elementFactory模块

上一篇文章里我们了解了bpmn-js使用palette模块进行左侧小工具区域(也可以理解为调色板区域)的功能扩展,今天这个话题则是延续上期的palette进行开展的。从上篇文章《》我们知道,通过方法提供小工具Map这里action作为palette与主建模编辑的交互模块,palette中引用了和create模块进行绘制创建和管理。,其插件模块位于,在create。create主要是处理触发事件后的动作操作,用于创建当前元素,本篇文章主要来介绍diagram-js中的模块。

2024-02-26 11:13:18 326

qrcode.min.js

二维码生成前端库

2023-02-22

图片exif查看工具exif.exe

图片exif查看工具exif.exe

2022-10-21

json客户端与服务端通信

案例很简单就是一个简单的客户端和服务端接收json数据,服务端指定了一个json数据发送的,没有进行手动表格输入动态发送json数据,有此意图可自行建立数据表格提交服务器。

2016-01-16

apk反编译工具

主要是用于apk的反编译,可以帮助我们学习一些比较好的apk的实现原理。

2015-12-19

android4.4系统jar包源码

这是我从我用的android4.4源码里面抠出来的andriod 系统类源码文件,希望可以帮助大家更好的理解系统类。

2015-11-25

usb_umount

解决当apk安装至外置存储卡后,存储卡umount失败的问题。

2015-11-09

html5_h.zip

html5书籍,这本书写的很好,很不错的。

2015-09-30

AndFix.zip

AndFix 是阿里巴巴开源的 Android 应用热修复工具,帮助 Anroid 开发者修复应用的线上问题。Andfix 是 " And roid hot- fix " 的缩写。

2015-09-30

内存清理案例(clean memory)

一个简单的Android内存清理示例。可以下载下去看看,还是挺实用的。

2015-09-30

mysql_connection jar包

mysql 数据库连接的 jar包,是java数据库连接的必备的工具包。

2015-03-05

Puzzles拼图小游戏

一个简单的Android拼图小游戏,里面包含多类别图片拼图以及自选的拼图等级,欢迎前来下载!

2015-02-10

EJB网上订餐系统源代码

该项目为企业级的网上订餐系统的源代码,欢迎前来下载。

2015-02-10

Android SDK开发范例大全(pdf完整版)

Android SDK开发范例大全,介绍安卓开发的基本步骤和流程。

2015-02-05

HTMLparse.jar

主要是写爬虫用的jar包,可以很方便的帮助我们开发spiderd小程序,我们再也不要为jar 包发愁了

2015-01-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除