- 博客(56)
- 资源 (7)
- 收藏
- 关注
原创 提高开发效率
通过以上三个阶段的实施,您可以系统性地提升效率,从基础的专注力和任务管理,逐步深入到代码质量和长期技术能力的提升。每个阶段都有明确的目标、行动步骤和工具推荐,帮助您在实际工作中逐步优化,最终实现整体效率的显著提升。系统学习数据结构和算法,掌握常用的数据结构(如数组、链表、栈、队列、树、图)和经典算法(如排序、查找、动态规划、贪心算法)。使用时间管理工具(如RescueTime、Forest)记录和优化专注时间。使用代码生成工具(如Postman、Swagger)提升开发效率。
2025-05-13 09:10:34
424
原创 AI时代生存指南:普通人如何不被机器人淘汰
更值得警惕的是,现在很多工作就像以前的"打字员"岗位——二十年前还是铁饭碗,现在却被电脑淘汰。比如想让AI帮忙写工作总结,别只说"写个报告",而要说:“我是小学语文老师,需要一份关于古诗教学的学期总结,重点要对比传统课堂和多媒体教学的差异,控制在800字以内。咱们的教育有个怪现象:小学生能背"三观"定义,但问到"怎么用世界观分析中美差异",十个有九个答不上来。有位宝妈用AI工具做儿童睡前故事:输入孩子喜欢的恐龙+宇宙元素,AI自动生成图文并茂的故事书,每月订阅费99元,200个用户就能月入2万。
2025-03-29 22:21:43
450
原创 进程之间的通信方式
一、管道1.匿名管道netstat -tulnp | grep 8080它的作用就是把前一条命令的输出作为后一条命令的输入。在这里就是把 netstat -tulnp 的输出结果作为 grep 8080 这条命令的输入。其中”|“是管道的意思,如果两个进程要进行通信的话,就可以用这种管道来进行通信了,并且我们可以知道这条竖线是没有名字的,所以我们把这种通信方式称之为匿名管道。并且这种通信方式...
2025-03-25 22:10:36
300
原创 Sql优化
1.MySQL分层1.1 连接层:提供与客户端连接的服务1.2 服务层:提供各种用户使用的接口(select);提供sql优化器1.3 引擎层:提供了各种存储数据的方式(myISam InnoDB)。InnoDB与MyISam的区别:InnoDB是事务优先,适合高并发操作;行锁;MyISAM是性能优先,表锁。1.4 存储层:存储数据2. sql优化的原因性能低、执行时间太长、等待时间太...
2025-03-25 22:08:46
899
原创 持续集成(CI)/持续部署(CD)
CI的核心思想是通过自动化构建和测试,尽早发现问题,减少集成风险,提高开发效率。常用的CI工具包括Jenkins、GitHub Actions、GitLab CI/CD、Travis CI等。CI工具会将构建和测试的结果反馈给开发人员,通常通过邮件、Slack等工具通知。构建成功后,生成构建产物,如可执行文件、JAR包、Docker镜像等。确保代码能够正确构建,依赖项齐全。GitLab CI/CD:与GitLab集成,提供完整的CI/CD解决方案。在构建过程中,运行各种测试用例,验证代码的功能和稳定性。
2025-03-20 20:27:51
496
原创 Git Flow 分支管理策略
Git Flow 是一种流行的分支管理策略,由 Vincent Driessen 提出,旨在为团队协作提供清晰的分支结构和工作流程。它通过定义不同的分支角色,帮助团队高效地管理代码开发、测试、发布和维护。以下是 Git Flow 的核心概念和工作流程:主要分支master 分支:代表生产环境(production)的代码。仅在发布新版本时合并 develop 分支的内容。保持稳定,只有经过测试和验证的代码才能进入。develop 分支:代表开发环境(development)的代码。
2025-03-20 18:02:10
737
原创 AI工程化能力
通过本培训计划,学员将系统化地掌握AI工程化的核心技能,从数据处理到模型部署,再到系统监控与维护,全面提升AI工程化能力。培训计划分为基础知识、进阶技能、实战项目三个阶段,结合理论学习、实践操作和案例分析,全面提升AI工程化能力。开源工具文档(如TensorFlow、PyTorch、Kubernetes)。开源工具(Docker、Kubernetes、Jenkins)。AI工程化的核心流程:数据处理、模型开发、部署、监控。使用云平台(AWS、Azure、阿里云)部署AI服务。
2025-03-18 10:09:34
395
原创 未来程序员的核心竞争力
未来程序员的核心竞争力是技术深度与系统化思维。只有深入理解技术原理,具备系统化解决问题的能力,才能在未来的技术浪潮中立于不败之地。其他能力(如软技能、用户体验、全球化视野)是辅助性的,但技术深度始终是核心。未来程序员的核心竞争力确实可以归结为一个重点:技术深度与系统化思维。这是所有能力的基础,也是未来程序员能够在快速变化的技术环境中脱颖而出的关键。数据驱动与AI能力:掌握数据科学和AI技术,提升技术的商业价值。用户体验与产品思维:关注用户需求,设计有价值的产品。核心竞争力:技术深度与系统化思维。
2025-03-18 09:31:02
411
原创 安全设计条件
目的:像攻击着一样思考,通过ASTRIJD分析,帮助理解系统中潜在的安全威胁、明确风险并建立相应的消减机制。绘制数据流图->威胁分析->风险评估-制定消减措施-> 产品响应。目标:评估产品设计的安全性,并不能识别编码级的安全问题。ASTRIDE Low Level 威胁分析。
2024-12-25 08:51:29
253
原创 悲观锁与乐观锁
每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号机制和CAS算法实现。悲观锁,在每次读取数据的时候总是认为别的事务会更改数据,所以会加锁,导致其他事务想访问当前数据时,会阻塞等待。当竞争激烈(出现并发冲突的概率大)时,悲观锁更有优势,因为乐观锁在执行更新时频繁失败,需要不断重试,浪费CPU资源。悲观锁和乐观锁是并发场景下解决冲突问题的两种思想。
2024-07-26 17:50:56
121
原创 java 集合
hashmap只能有一个key为null,底层是hashmap的linkedhashmap,hashset,linkedhashset也是。treeMap不能存在为null的key,以treeMap为底层的treeSet也是。hashtable的key和value都不能为null。
2024-01-26 11:03:39
156
1
原创 高内聚低耦合
定义:相关的功能逻辑组织在一起,组成一个紧密耦合的单元。这样的组织单元内部的元素相互依赖,协同完成一定的功能逻辑。比如用户相关的功能放在用户模块,商品相关的功能放在商品模块。定义:模块之间的依赖程度要低,一个模块的改变不容易到影响其他模块的正常执行。
2024-01-21 09:04:19
434
原创 vue 学习笔记
2.5) beforeUpdate:数据更新之前调用,此时data中数据的状态值已经更新为最新的,但是页面上显示的数据还是最原始的,还没有重新开始渲染DOM树。2.2)Created:vue实例初始化之后调用,这个阶段vue实例在内存中已经创建好了,data和methods也能够获取到了,但是模板还没编译。2.6) updated:数据更新之后调用,此时data中数据的状态值是最新的,而且页面上显示的数据也是最新的,DOM节点已经被重新渲染了。1)定义:vue实例从创建到销毁的过程。
2023-12-18 13:34:35
158
原创 nacos 学习笔记
4.2)订阅注册中心的服务并注册一个listener,如果注册中心的服务有变更,由listener来通知服务消费者更新本地服务列表。3)如果注册中心长时间没有收到服务提供者的心跳,则剔除该实例或把监控状态设置为false。2)服务提供者注册成功后,定时发http请求(即心跳)到注册中心,证明自身服务实例可用。1)服务提供者启动时把服务注册到nacos注册中心。5)服务消费者获取服务相关信息进行远程调用。4.1)一种是主动请求注册中心获取服务列表。
2023-12-18 11:07:07
172
原创 分布式学习笔记
1)一致性: 同一时间访问所有节点得到的数据都是一样的,提交事务时,数据同步到所有的节点后,才算事务提交成功。分布式系统无法同时满足强一致性,可用性和分区容错性,设计中往往需要弱化某个特性的需求。3)分区容错性:出现网络分区故障时,故障的节点不应该影响其他节点提供服务。4.1)牺牲一致性(AP):继续提供服务,故障节点恢复时,再同步数据。4.2)牺牲可用性(CP):拒绝提供服务,直到故障节点恢复。2)可用性:系统可以一直处理请求,并在正常时间内处理完。
2023-12-18 09:44:22
83
原创 nodejs事件循环
从上到下执行同步代码执行过程中将宏任务和微任务添加至对应的队列中同步代码执行完后执行微任务的回调微任务执行完后,执行所有满足条件的宏任务的回调注意:每执行完一个宏任务之后,立即检查微任务队列循环时间操作
2023-12-05 16:53:55
74
原创 http 与 grpc
2)和http1.1 一样,浏览器可以同时打开多个并行连接减少这种停顿,增加了总体的吞吐量,但增加了服务器的负担。4)TCP实现可靠性的恢复时间长,效率低,在一个TCP连接上传输,就会有头部阻塞的问题。1)H0L阻塞:仍然在一个TCP连接上,恢复一个段的丢失,仍然要停止所有后续对象的传输。2)任何传输丢失,都会对后续的传输造成影响,毕竟恢复丢失需要花一些时间。2)将对象分割成多个帧,调整这些帧的传输次序来缓解头部阻塞。5)支持头部压缩,用编码表示相同的头部,减少传输的数据量。2)HOL阻塞的问题依然存在。
2023-11-22 08:34:48
95
原创 函数式编程的优缺点
副作用是指它不是一个单纯的计算,而是涉及到一个与外部进行交互的一个过程,比如调用一些外部的API,或者做一些IO的操作,它不是一个单纯的计算,它的输出不仅仅取决于你调用这个计算时所给的输入,它还依赖外部的环境条件。变量的值是不可变的,一但赋予了它某个的值,它的值就不会再改变,这种编程方式使程序员能够更好的进行分析,也就是不会出现某些全局变量的修改,能够修改这些变量的方式有很多种,导致你整个程序的行为是不确定度,增加了这个分析的难点。定义:函数式编程是一种编程范式,和面向过程,面向对象是同一个范畴的概念。
2023-10-23 10:38:35
311
原创 常用加密算法
5)安全分析:任何人都可以利用公钥加密,把信息发给自己,但只有自己的解密,其他人截获了也没有用(无法查看,也无法篡改)4)适用场景:身份识别,防篡改,比如文件下载,需要对文件内容进行信息摘要,防止被截取,返回恶意文件。6)适用场景:服务与服务之间的加密,只需要一个相同的密钥 比如;4)缺点:密钥管理难度大,必须双方约好一个密钥,而且每个用户的密钥不能相同。1)作用:主要作用不是加密,而是生成信息摘要,防止信息被篡改。1)定义:有一对密钥:公钥,私钥,公钥加密,私有解密。3)优点:加密解密快,
2023-06-28 14:38:43
79
原创 koa 动态更改路由中间件
(ctx, next)=>{if(ctx.path.startsWith(‘/api/v1/auth’)){ctx.request.query.fileKey = ctx.path.substring(‘/api/v1/auth’.length);ctx.routerPath = ‘/api/v1/auth’;ctx.path = ‘/api/v1/auth’;}return next();}
2023-06-08 16:09:46
87
原创 liunx 查找命令
liunx 在打开的文件查找关键字:命令模式下/关键字,查找下一个点n保存退出:wq! 不保存退出:q!linux 查找某目录下包含关键字内容的文件:grep -r “test” /data/reports
2023-04-20 10:34:59
67
原创 在javascript中,slice与splice的区别
众所周知,Javascript中的数组是能够保存多个值的变量,我们有多种方法来处理数组。其中最常用的是 slice 和 splice,有时人们会混淆这两者。因此,在本博客中,我们将了解这两种方法以及它们之间的区别。slice() 方法用于返回一个包含该数组的一部分的新数组,它不修改原始数组,而是返回一个新数组。case5: 当结尾大于索引范围时,它将提取它直到 arr.length。在这种情况下,返回最后 3 个元素。case 6: 这里它返回从第二个到最后一个元素的第三个元素。
2022-09-15 10:00:07
2830
原创 node 缺失依赖
报错:gyp ERR!gyp ERR!gyp ERR!gyp ERR!gyp ERR!gyp ERR!gyp ERR!gyp ERR!gyp ERR!gyp ERR!gyp ERR!
2022-08-12 14:48:28
303
mysql-5.7.25-winx64.zip
2019-05-28
ios开发-swift快速入门.zip
2019-10-04
mysql-5.7.25-winx64.zip
2020-06-10
vsual studio 提取码.txt
2020-02-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人