自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 保持先进的软件设计模式

越抽象,就越无法被challenge,无论业务怎么变,这个系统总有一些无法被challenge的代码,以至于系统能够很快地基于这些代码,完成“回退”,并花最小的代价实现符合业务需求的功能。// 假设未来需要添加新的支付方式(如比特币),只需要实现PaymentStrategy接口。// 抽象的支付接口 - 难以被挑战的核心抽象。// 抽象的通知接口 - 另一个稳定的抽象。// 使用这些抽象的订单处理系统。// 允许动态更改策略。// 具体的支付方式实现。// 具体的通知方式实现。

2024-07-10 01:20:33 278

原创 AI系统与传统软件系统的区别

进行了软硬件层面的优化。这差异体现在从底层硬件到顶层应用的每个层面,使得AI系统能够处理更复杂的问题,适应更动态的环境,并从大量数据中学习和改进。理解这些基础差异对于设计、开发和部署有效的AI系统至关重要,同时也为传统系统向智能化转型提供了方向。造成AI系统与传统软件系统区别的硬件和软件基础是一个深入而复杂的话题。AI系统的硬件和软件基础与传统系统有根本的不同。从冯诺依曼体系到应用框架,都不相同。造成不同的根本原因是,AI系统针对。

2024-06-28 17:52:18 423

原创 传统的计算机软件架构

如果把计算机的所有计算资源加电力比作从雪山源源不断流下的河流,程序员写代码就是在治水,比如修河道,修分支,修大坝,清理从而控制水源,比如形成喷泉、浇灌农田、去污为居民饮用。水源每经过一层,就会发生物理化学变化,水的大小、强弱、性质都不再相同,是从雪山水到河水到自来水,自来水可以成为饮用水、浇灌水、清洁水,饮用水可以成为可乐、茶。每一层都建立在前一层的基础之上,通过抽象和封装,使得上层开发者能够专注于更高级的功能实现,而不必过多关注底层细节。这个过程体现了软件工程的一个核心原则:分层抽象。

2024-06-28 16:34:42 420

原创 开源项目讲解-2-tivi-未完待续

这个项目用一篇硕士论文讲都不为过。tivi用到了MVVM架构,模块化编程和KMP(Kotlin Multi-platform),组件用的jetpack等最新的UI实现,网络用的kotlin协程。

2024-06-10 23:32:52 277

原创 kotlin相对java的优点

未完待续。

2024-06-04 21:05:33 188

原创 开源项目解读-1-kotlinMvp

源码地址:https://github.com/git-xuhao/KotlinMvp先看项目结构演示效果如下:

2024-06-03 23:56:29 174

原创 ArkTS官方demo展示跨端能力

build-build APPS然后用android studio打开android文件,发现不支持x86的CPU,又没有android手机,寄。电脑又是windows没有xcode,手机又是iphone,大寄特寄。注意:gradle和android gradle plugin和jdk和android studio都有版本对应关系。deveco studio需要4.0 release版本,openHarmony的API是10。模拟器目前还没有API 为10的,所以用previewer来运行。

2024-05-31 21:14:02 138

原创 kotlin并发轮询1000订单尝试

kotlin用到了协程去访问spring boot的接口,每5秒轮询一次。postman的runner模拟一下1000个跌倒看看拉取的效果。spring boot端的存取订单的接口。

2024-05-30 23:26:41 188

原创 比较给力的React Native环境搭建

IDE选择VSCode,对RN的支持非常好,支持JS的代码提示,标注。VSCode的RN插件生态也比较给力,React Native tools支持了一键启动安卓虚拟机,一键启动RN项目,debug非常得方便,和IDEA没有什么区别。RN是通过JS server和Bridge与Native互通的,选择RN最大的理由是跨端减少工作量、JS动态语言带来而及时反馈,从而提升了效率。RN支持安卓和IOS的跨端开发,大前端很多地方是互通的,转起来也比较顺手。windows环境下只能进行安卓的RN开发。

2024-04-21 22:18:47 108 1

原创 windows10上运行swift

教你在windows10上运行swift

2024-01-15 16:36:01 946 3

原创 Android 一个activity下的多个fragment如何使用不同主题

关键就是在fragment的oncreateView里用getActivity().setTheme(R.style.*)这句话,即可实现activity应用的是一个主题即所有activity下的fragment应用该主题,但是用了这句代码的fragment就可以实现单独的主题。

2023-05-09 15:36:21 398

原创 花生壳映射FFmpeg推流到本地Nginx的RTMP流

在花生壳客户端中,选择“映射管理”选项卡,然后点击“添加”按钮以创建一个新的端口映射。首先,确保您已在本地计算机上安装Nginx并启用了RTMP模块。现在,您已成功将花生壳映射FFmpeg推流到本地Nginx的RTMP流。替换为您的本地计算机IP地址(例如:192.168.1.100),并将。这将在端口1935上创建一个名为"live"的RTMP应用程序。替换为您在步骤3中映射的外网端口,最后将。替换为您在步骤4中设置的流密钥。替换为您在花生壳绑定的域名,将。替换为您要推送的视频文件,将。

2023-04-12 18:26:53 400

原创 win10剪贴板出bug

我发现win10剪贴板和office剪贴板是同一个东西,底层原理是进程间的消息队列机制,有不同的函数对不同软件的文本格式做相应的处理。具体问题是其他地方,比如网络文字,markdown文件,IDE代码之间的复制粘贴都会丢掉格式。尝试了在word中删除和重添加剪贴板工具,但并没有触碰到问题。解决方法是更新word。

2023-03-27 13:24:41 227

原创 IDEA使用技巧——程序员进阶必备

IDEA使用技巧——提升程序员水平

2022-12-29 22:54:35 211

原创 git push Logon failed, use ctrl+c to cancel basic credential prompt.remote: 错误解决

git push Logon failed, use ctrl+c to cancel basic credential prompt.remote: 错误解决

2022-11-02 22:10:15 594

原创 Spring运行逻辑梳理

Spring运行逻辑梳理

2022-11-02 17:14:59 131

原创 Invalid bound statement (not found) 解决,application.yml里的配置mybatis mapper路径

Invalid bound statement (not found) 解决

2022-11-01 18:48:15 343

原创 Pandas实现超预期和风险扫描应用

pandas数据处理方法

2022-08-03 21:56:23 103

原创 直播推流 rtsp经过ffmpeg+nginx 转rtmp 实现公网访问

业务需求:需要将多个摄像头推流到一个服务器进行深度学习处理我的配置:一台腾讯轻量云服务器用来提供公网IP以及部署nginx一个海康萤石C2C摄像头一台笔记本用作客户端客户端部署ffmpgeefmpgee:官网FFmpeg下载界面:Builds - CODEX FFMPEG @ gyan.dev下载它的essential.zip解压后添加里面的bin文件夹到环境变量然后cmd :ffmpeg -version下有东西就说明配置好了公网服务器部署ng...

2022-03-28 22:58:38 8827 6

原创 app和module的cpu abi不匹配会报内存错、网络错

修改两者abi相同后则应用可以运行了,具体原因不明,只是想感叹android很玄学

2022-03-19 18:21:51 322

原创 Android Emulator has terminated

android studio只支持x86 cpu架构的模拟器,原因是x86是intel出的,cpu和我们的电脑的cpu适配。但如果app的so文件是arm架构的,第一反应是找到同样是arm架构的模拟器,但arm模拟器在android studio几乎跑不了,系统也提示,推荐使用x86架构的模拟器,会快十倍。亲测不是十倍,是一个能用一个用不了。但是X86_64架构的Android 11支持arm配置的app,亲测可用。参考博客:android studio_在 Android 模拟器上运行 ARM 应

2022-03-19 11:06:32 2903

原创 如何用pandas导入excel并且筛选数据,matplotlib作图

import pandas as pdimport matplotlib.pyplot as pltmat_data = pd.read_excel('./football_data.xlsx')data1=mat_data[mat_data['Country']=='Spain']data2=data1[data1['Year']==2016]data3=data1[data1['Year']==2017]data4=data1[data1['Year']==2018]dat.

2021-11-03 00:47:09 756

空空如也

空空如也

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

TA关注的人

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