- 博客(292)
- 资源 (18)
- 收藏
- 关注
原创 我的Blog导读
谢谢大家的光临。写了这么久的Blog,现在是整理的时候了。只有整理好已有的东西,才能更好的前行。个人思想关于系统架构的自问自答软件设计中的设备 --这是我最感兴趣的一篇成长从Microsoft Solver Foundation看微软的未来代码的不完整性从蔡斌失败的思考项目管理我的项目周报项目管理之质量检查点再谈质量检查点关于管理的心得...
2009-03-03 21:50:00 1651
原创 在Rust中,探索word到pdf的转换
docx库通常虽然提供了一些抽象层,使得开发者可以在不了解Word文档内部复杂结构的情况下,也能读取和修改文档的基本内容,但是,如果我们需要处理更复杂的任务,比如修改特定样式的文本、处理文档的页眉页脚、或者处理文档的元数据等,那么对Word文档的内部结构有更深入的了解就会非常有帮助。别忘了,我们是要挑战这万分之几的出错率,对word文档的了解,应该是必须的。word到pdf的转换看起来已经成熟,但是在特定的业务场景下,现有的转换仍然有万分之几的出错率,这个数字,在苛刻的商业环境下,也是不能接受的。
2024-03-13 22:23:49 590
原创 AI在商业逻辑应用中的革命性作用
在今天的商业环境中,我们面临着一系列复杂且瞬息万变的问题。从最初的业务点子产生,到方案的落地实施,每一个环节都充满了不确定性。传统的商业逻辑构建方式,往往耗时耗力,而且容易因为人的主观因素导致效率低下或偏离初衷。然而,随着人工智能(AI)的快速发展,它在商业逻辑应用中的作用日益凸显,为我们提供了一个全新的视角和解决方案。
2024-03-13 08:13:16 375
原创 浅浅的了解 autoconf:当开源项目不再自带 configure 文件
在开源软件的世界里,开发者可以自己编译和安装需要的组件,这也是我喜欢开源项目的原因之一。然而,就在昨天,当我尝试编译一个颇具吸引力的开源项目时,我意外地发现该项目并没有包含通常所见的configure脚本
2024-03-10 16:13:19 347 1
原创 重构笔记系统:Docker Compose在微服务架构中的应用与优化
在我的笔记系统中,我使用Docker Compose将各个微服务编排在一起,形成了一个完整的应用程序。优化是一个持续的过程,我将继续关注最佳实践和技术发展,以进一步提升系统的稳定性、性能和安全性。的开发是基于微服务的思想,但是在服务的配置和编排上感觉还是不太合理,具体来说,在开发上的配置和在生产上的配置差别太大。因此,我在周末重构了项目结构和docker-compose.yml,本文将分享我在这一过程中的经验,并探讨如何进一步优化基于Docker Compose的微服务架构。请关注我,不要错过更新哟。
2024-03-04 08:52:13 805
原创 AI模型训练的初步整理
回到我之前博客中提到的笔记系统,我打算使用增量学习的模型,构建自己的知识库。当笔记数据更新时,会有队列任务去提取笔记数据,对笔记数据进行清洗,然后提取特征,生成向量数据,然后再进行模型训练…这通常是最直接的方法,但也可能非常耗时,尤其是在数据集很大或模型很复杂的情况下。欢迎大家留言区交流。
2024-02-23 23:22:49 418
原创 Rust-AI todo list 开发体验
如果你稍微留意一下todo list v0.0.3的代码,你会发现它是比较臃肿的,因为,这个版本只是通过组装AI写出来的代码,完成了功能的开发。说“能”,我想不用我说,很早就有人用AI生成正则表达式的相关功能代码,从这个角度来说,AI 已经替代了程序员的工作了。
2024-02-07 16:39:08 1196
原创 在Vue的模块开发中使用GPT的体验及总结
我这一周都在忙着实现一个页面,这个页面是通过vue基于element-ui来实现的。在这个过程中,我把页面拆分成多个组件,而组件的生成是通过Chat-GPT3来实现的。
2024-01-27 22:33:09 507 2
原创 又聊代码重构
只有开发者对代码的不断觉察和理解,才会产生重构代码的念头。因此,驱动重构的应该是开发者本身的认知,而不是线上产品的反馈或者测试的反馈。以上面的代码为例,对属性名称的重构/修改,也是基于对代码的察觉。之前的命名在当前的业务理解上下文中过于模糊,甚至还有歧义。导致这种现象的原因并不是因为我之前对这些属性的命名过于草率,而是因为之前我还没确定生成的代码中要使用vue的mixins技术。为什么我要用觉知这个词呢,因为就算我不修改上面的命名,就现阶段来说,代码也是能够正确运行的。
2024-01-19 23:17:26 367 3
原创 staging-数据管道-处理原则的体验
在数据管道中,staging指的是将数据从源系统移动到目标系统之前的中间步骤。在staging过程中,数据会经过一系列的转换和处理,以确保数据的质量和准确性。staging可以包括数据清洗、格式转换、数据合并等操作,以便最终将数据加载到目标系统中。这里面既有函数式编程的思路,也有系统数据流分析的影子。而今天在这个项目的代码重构中,再次体验到了这个原则。实际上,在我之前设计的bisheng-cli的项目中也成功使用了这个原则,只是现在对这个原则的体验更加强烈。
2024-01-17 17:43:19 323
原创 AI协助编程在Rust学习中的个人体验
我说的体验感不好,不是在于AI的回答结果的正确率,而在于我发现我问过多次类似于“Rust中如何使用正则表达式”之类的问题。这也是我不断向我的开源项目。虽然AI在编程中涉及的方面有很多,但我在Rust的学习和使用中,主要通过AI来生成代码,因此,我的体验也主要围绕代码的生成和使用上来阐述。当前AI在编程开发方面的使用越来越广泛,我在Rust的学习中,也刻意加重了对AI的使用。在代码的生成上,随着使用的深入,我提的问题逐渐从之前的偏重功能到偏逻辑。当然,这只是我的个人想法,我也真诚的接受各位大神的意见和建议。
2024-01-16 08:49:59 620
原创 Rust-模式匹配:简洁、可读,完备
我使用Rust开发将近一年了,每次我读到Rust的核心概念中包含了“模式匹配”时,心里就会不由冷笑,因为我对模式匹配的理解仅限于对枚举值,Result和Option的简单处理,没有觉得它有好高级的地方。但是,最近AI给我提供的一个Rust的例子代码,着实把我惊艳到了。
2024-01-14 11:01:42 493
原创 笔记系统的部署架构
一个简单的全栈功能闭环基本完成。既然是开源,因此,这里有必要分享一下部署结构,希望能够获得小伙伴们的反馈。后期还会增加其它服务来实现笔记数据的处理。欢迎大家评论区讨论。note_book_api: 负责笔记系统数据处理的后端应用。api-gate: 负责路由和访问权限验证的后端应用。目前整个系统采用docker容器来部署。auth2: 负责用户登录和注册的后端应用。auth_app: 登录/注册的前端应用。web_app: 笔记系统的前端应用。请关注我,不要错过更新哟。
2024-01-12 08:58:18 540
原创 使用git submodule解决高耦合度问题
在开发我的笔记系统时,我遇到了一个问题。问题是,在api-gate服务中,我需要验证用户的access_code,但是access_code的生成逻辑是在auth2服务中实现的。这个问题从架构设计的层面上看,就是一个高耦合度问题。高耦合度会给代码的扩展代码麻烦,并给未来的系统维护带来隐患。
2024-01-10 20:21:37 1098
原创 尝试中-分3个独立开发周期
最近在和朋友们的讨论中,我获得了一个思路,即把应用拆分成3个相对独立的部分。![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/9765d6fe76b34d0dad06d6a22e0889be.png =100px)
2024-01-08 15:10:21 353
原创 Rust-vec!与Vec::with_capacity初始化数组的区别
在Rust中,数组的长度必须是常量,但是我们可以通过Vec提供的功能来实现“动态”初始化这个“常量”。
2024-01-07 23:04:59 603
原创 Rust-使用Serde对json数据进行反序列化
在Rust中,Serde几乎成了JSON数据解析的事实标准,例如tokio、Actix等网络库都采用Serde来处理JSON的序列化和反序列工作。Serde简化数据序列化和反序列化的过程,提供类型安全和错误处理,支持自定义序列化和反序列化逻辑,它的强大功能使它得到了广泛的应用和支持。
2024-01-04 20:48:01 837
原创 Rust-使用dotenvy加载和使用环境变量
系统的开发,测试和部署离不开环境变量,今天分享在Rust的系统开发中,使用dotenvy来读取和使用环境变量。
2023-11-13 11:13:04 754
原创 Rust-错误处理魔法
我们写的代码主要有两部分,第一部分是正常的业务流程,第二部分是错误处理。 通常情况下,这两部分代码不是分开的,而是杂糅在一起的。 这让我们后期维护正常的业务逻辑非常头疼。今天分享的是Rust语言中的错误处理的魔法, 它可以帮助我们写代码时,将错误处理的“体积”压缩到最小,同时还保证错误分支能被一个剩的处理掉。
2023-11-01 17:44:42 164
原创 Rust-虽然9天过去了,结果是没有结果(Docker容器的端口映射问题)
上上周了吧,写了一篇Rust-后端服务调试入坑记,现在看来那个坑根本就不算什么。这次这个坑才是真正的坑。到写文章这一刻,我只是确定了复现这个问题的最简单代码(参考目录验证4:基于Debian:11镜像创建最简单Rust的http服务)。但依然没有找到解决这个问题的办法。现在把这个问题以及我的验证过程整理出来,以便路过的朋友了解,我相信肯定有大神知道其中的缘由和解决办法。还望各位大神留言赐教。结论:Rust创建的api部署到网络模式为bridge的Docker容器中,不能从宿
2023-10-31 10:55:00 131 2
原创 Rust-后端服务调试入坑记
上面这个图画出来用了小半天时间,目前已经实现了资源服务器,认证服务器,token存储服务器和API网关,看似比较顺利,但不知不觉渐渐进入深坑。这个坑是怎么形成的呢?正好前几天在知乎上看见有人提问后端开发是否只是CRUD,我觉得这个问题挺有意思的,因此,决定休息的时候画一张图来展示这个坑的形成过程,正好换换脑子。
2023-10-21 18:28:56 656 7
原创 Rust-类型转换进阶
我们描述了转换的场景,具体的转换步骤和转换的应用方式。这里的场景是数据集和本地类型之间的数据转换。类似的场景还有很多,只要涉及到不同的上下文,数据转换的需求就会出现。使用Rust的`std::convert::From` trait,实际上就是在实践“关注点分离”的设计模式,它会大大提升我们代码的可维护性和可扩展性,个人认为这是写好Rust代码的重要方法之一。
2023-10-18 19:57:47 128
原创 Rust-是否使用Rc<T>
Rust的所有权机制,数据允许通过借用的方式,在函数的上下文中传递数据。如果离开数据作用的有效范围,这个借用就会失效,编译就会报错。这也是我们不会将借用(引用)作为函数的返回值的原因。
2023-10-16 17:35:55 335
原创 Rust Rocket: 构建Restful服务项目实战
这几天我的笔记系统开发工作进入了搬砖期,前端基于Yew,后端基于Rocket。关于Rocket搭建Restful服务,官方也有介绍,感觉很多细节不到位。因此我打算花2到3天的时间来整理一下,也算是对自己的一个交代。对于有一定经验的开发者来说,他们可能已经熟悉了 Restful 开发中的基本 HTTP 方法,如 GET、POST、PUT 和 DELETE。然而,从项目实战的角度来说,这些方法的细节处理是不容忽视的。在项目开发中,我们必须关注文件夹结构的组织、参数的获取、返回值的处理和日志处理等方面的问题。
2023-10-05 11:15:14 595
原创 [2023.09.27]: Yew SSR开发中的服务器端与客户端共同维护同一状态的实践
SSR(Server-Side Rendering)具有许多优势,其中之一就是能够在服务器端生成页面,从而提高整个页面的加载速度。在Yew SSR开发模式中,我们可以使用use_prepared_state宏在服务器端获取数据并生成Html返回到客户端。官方提供了相应的例子供参考。然而,如果在客户端修改并提交了该数据,我们需要如何刷新之前在服务器端生成的数据呢?官方未提供相应例子,经过多次实验后,以下代码可以实现该功能。
2023-09-27 23:05:34 402
原创 [2023.09.26]: JsValue的转换体验与as关键字的浅析
昨天解决了[焦点问题](https://blog.csdn.net/firefox1/article/details/133276666?spm=1001.2014.3001.5501),今天就开始搬砖了。本以为可以一帆风顺,但是还是遇到了几个问题,不过还好,都被一一解决,这里我分享一下JsValue的转换体验以及关键字`as`的使用浅析。
2023-09-26 20:30:02 502
原创 [2023.09.25]:Rust编写基于web_sys的编辑器:输入光标再次定位的小结
前些天,写了[探索Rust编写基于web_sys的WebAssembly编辑器:挑战输入光标定位的实践](https://blog.csdn.net/firefox1/article/details/133180584),经过后续的开发检验,我发现了一个问题,就是光标消失了。为了继续输入,用户需要再次使用鼠标点击。现在我已经弄清楚了导致这个问题的原因,即需要找到text node来设置光标。
2023-09-25 18:25:07 674
原创 [2023.09.24]: 今天差点又交白卷
今天周日,搞定了家里装修的一件事情,周末的事特别多,总算在10点的时候,解决了昨天那个输入焦点设置失败的问题。在[探索Rust编写基于web_sys的WebAssembly编辑器:挑战输入光标定位的实践](https://blog.csdn.net/firefox1/article/details/133180584?spm=1001.2014.3001.5501)中,我们总结了设置光标的位置
2023-09-24 22:24:18 151
原创 [2023.09.23]: 编辑器开发受阻:水很深
今天编辑器的开发受阻,如果存在多个段落时,通过程序设置的焦点为跳到第一行。看来这里还要多多研究。
2023-09-23 23:31:21 39
原创 [2023.09.22]:探索Rust编写基于web_sys的WebAssembly编辑器:挑战输入光标定位的实践
昨天,我对过去[两周的工作进行了总结并上传了源代码](https://caozy.blog.csdn.net/article/details/133127078)。而今天,我又踏入了一个对我来说既熟悉又陌生的领域:编辑器。我对编辑器的熟悉来自于多年来使用他人开发的编辑器的经验,但对于自己开发编辑器这件事情,我感到陌生。想自己开发一个编辑器,我的感受,就一个字“难”,但我很享受这个挑战。这也让我反思了一下,这些年来,我到底写了多少有价值的代码呢?
2023-09-22 22:22:56 525
原创 [2023.09.21]:源码已上传,供大家了解Rust Yew的前后端开发
资源中的代码非常简洁易懂,虽然离商用场景还有一段距离,但是涵盖了前端的组件搭建、事件通信和反向代理,以及后端的Restful API的路由、功能实现和数据库访问。此外,还包括了postgres数据库的初始化脚本和docker部署脚本,方便您快速搭建环境。
2023-09-21 11:07:52 425
原创 [2023.09.20]:Yew的前端开发经历小结
Yew是一种用于构建现代Web应用程序的Rust框架,其计目标是提供一种安全、高效、易用的方式来构建Web应用程序。Yew基于WebAssembly(Wasm)技术,将Rust代码编译为能在浏览器中运行的Wasm二进制文件。这使得Yew能够充分利用Rust的内存安全和并发性能优势,同时保持前端开发的灵活性和易用性。最后,Yew采用了类似于React的组件化开发模式,这一点使其能容易被接受,毕竟Reactjs的开发人员很多,其中也包括我在内。
2023-09-20 22:29:41 577
原创 [2023.09.19]:已经感受到了Rust类型的一等公民地位
今天的工作重点又从后端API转移到了前端Yew的开发中。目前已经完成了前端到后端的数据持久化,以及后端到前端数据展示。现在基本上打通了基于Rust的全栈链路,当然还有很长的路要走,至少后面是1到100的问题了。在这几天的开发工作中,类型的转换无处不在,不同的类型意味着不同的逻辑上下文,而数据必定是在不同的逻辑上下文中流动以实现特定的功能。我们这里提到了类型和逻辑上下文,这和类型的一等公民地位有啥关系呢?
2023-09-19 19:25:04 71
原创 [2023.09.18]: Rust中类型转换在错误处理中的应用解析
随着项目的进展,关于Rust的故事又翻开了新的一页,今天来到了服务器端的开发场景,发现错误处理中的错误类型转换有必要分享一下。Rust抽象出来了Result,T是返回值的类型,E是错误类型。只要函数的返回值的类型被定义为Resut,那么作为开发人员就有责任来处理调用这个函数可能发生的错误。通过Result,Rust其实给开发人员指明了一条错误处理的道路,使代码更加健壮。
2023-09-18 20:54:06 285
原创 [2023.09.17]: Yew的SSR的反向代理代码编写
Yew的SSR应用开发的故事一幕接一幕,就在前天,我解决了一个看似棘手的问题:[如何从客户端的wasm文件中将数据成功地传递给后端](https://caozy.blog.csdn.net/article/details/132910180)。然而,人生如戏,新的问题又悄然而至。
2023-09-17 19:52:57 125
原创 [2023.09.16]: Yew的Hydration的底层逻辑3问
今天是周六,周末的事情感觉比平时都多,所以也没有写代码。所以打算结合这几天开发Yew应用的经历,聊聊Yew的Hydration。
2023-09-16 23:49:11 55
原创 [2023.09.15]: Yew SSR模式下的条件编译问题
昨天才写了[Rust的条件编译](https://blog.csdn.net/firefox1/article/details/132885756),没想到这个问题还没完。昨天我还为它的强大而赞叹不已,自以为对它了解了八九成,然而今天我才猛然意识到,这个里面的深度远超我的想象。我估计,我现在只了解其中的冰山一角吧。
2023-09-15 23:39:01 279
原创 [2023.09.14]: Rust的条件编译
关于条件编译,我的记忆是10多年前,写C#的时代了,最近10年写Python和Javascript代码,虽然Javascript中也可以通过插件实现条件编译的效果,但是用起来太憋足了。
2023-09-14 17:53:13 481
原创 [2023.09.13]: Rust Lang,避不开的所有权问题
Rust的所有权问题,在我学Rust的时候就跳过了,因为我知道这玩意儿没有场景就不好理解。没想到场景很快就出现了。在开发Yew应用组件的时候,涉及到了事件,闭包,自然就引出了所有权问题。话不多说,下面让我们直接进入代码场景,去体验并了解Rust的所有权机制吧。
2023-09-13 17:22:18 392
Rest Restful 基于rocket服务搭建代码
2023-10-15
Rust Yew 前端+后端 源代码,帮助大家快速了解和掌握Rust Yew的SSR的前端开发和基于Rocket的后端开发
2023-09-21
C# Code Analyser 1.2.1
2008-12-27
Code Analyser 1.1.3
2008-12-24
Code Analyser 代码分析器
2008-12-21
C# 代码分析器 帮组分析代码
2008-12-16
C# 代码分析器 帮组分析代码
2008-12-15
Dnn4.x修改工具
2007-10-24
Dnn权限修改器
2007-09-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人