logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

六大设计原则——拿我的鸿蒙聊天室开刀

单一职责:一个类只有一个"让它变化的理由"。单例管实例个数,单一职责管职责个数——别混开闭原则:加功能靠新代码。工厂把修改点从 N 处收缩到 1 处是打折版;注册表是全价版。类型会不会野蛮生长,心里要有数,if 链够用就别上注册表依赖倒置:使用方立契约(ChatMessage + displayText),实现方(子类)来适配,两头都只认抽象——这就是"倒置"里氏替换:子类换进父类位置,程序不许炸

#harmonyos#华为#开闭原则 +1
六大设计原则——拿我的鸿蒙聊天室开刀

单一职责:一个类只有一个"让它变化的理由"。单例管实例个数,单一职责管职责个数——别混开闭原则:加功能靠新代码。工厂把修改点从 N 处收缩到 1 处是打折版;注册表是全价版。类型会不会野蛮生长,心里要有数,if 链够用就别上注册表依赖倒置:使用方立契约(ChatMessage + displayText),实现方(子类)来适配,两头都只认抽象——这就是"倒置"里氏替换:子类换进父类位置,程序不许炸

#harmonyos#华为#开闭原则 +1
Floyd 判圈算法:从链表找环到数组寻重,一次搞懂线性时间的环检测

Floyd 判圈算法不仅是链表环检测的最优解,还能通过 “数组转链表” 的变形,解决数组寻重等问题。其核心思想是利用快慢指针的速度差检测环,再通过数学推导定位环入口,时间与空间复杂度都达到了理论最优。

#算法#链表#数据结构
C 语言实现五种反转链表的方法解析

int val;// 节点值// 指向下一节点的指针} ListNode;方法时间复杂度空间复杂度特点迭代法O(n)O (1)(常数空间)高效、易理解,推荐使用递归法O(n)O (n)(递归栈)代码简洁,但栈深风险栈法O(n)O (n)(栈 / 数组)利用栈特性,逻辑直观头插法O(n)O(1)构建新链表,插入头部实现就地反转法O(n)O(1)三指针操作,更接近底层实际开发推荐:迭代法,因为它兼顾时

#c语言#链表#开发语言
从零搭建HarmonyOS+Node.js全栈聊天室

聊天室的典型交互是"发消息→对方收到",天然适合全双工的 WebSocket。我的选择是所有通信都走 WebSocket,包括注册、登录、搜索好友等通常用 HTTP 的操作。前端只需维护一个连接,不用同时管 HTTP 请求和 WS 连接服务端可以主动推送任何通知(好友申请、被踢出群等),不需要轮询协议统一,所有消息都是的 JSON 结构这个项目从架构上没什么高深的东西——JSON 文件当数据库、W

#harmonyos#node.js#华为
鸿蒙本地存储三剑客

维度关系型数据库文件存储形式键值对表格(行+列)任意二进制/文本查询能力按key取值条件查询、排序、分页无数据量小(<1万条,<2MB)大任意学习成本最低中等(需了解SQL和几个概念)低(会C语言就会)import持久化需手动flush自动持久化自动持久化选型口诀:少量设置项→ Preferences(便利贴够用)有结构的数据→ 关系型数据库(Excel才好查)任意内容/不需要查询→ 文件(记事本

#harmonyos#华为#鸿蒙
鸿蒙本地存储三剑客

维度关系型数据库文件存储形式键值对表格(行+列)任意二进制/文本查询能力按key取值条件查询、排序、分页无数据量小(<1万条,<2MB)大任意学习成本最低中等(需了解SQL和几个概念)低(会C语言就会)import持久化需手动flush自动持久化自动持久化选型口诀:少量设置项→ Preferences(便利贴够用)有结构的数据→ 关系型数据库(Excel才好查)任意内容/不需要查询→ 文件(记事本

#harmonyos#华为#鸿蒙
Git 与 GitHub 从入门到精通:程序员必备的版本控制神器

Git 是由 Linux 之父 Linus Torvalds 在 2005 年为了管理 Linux 内核开发而创建的版本控制系统。分布式:每个开发者都有完整的本地仓库速度快:几乎所有操作都在本地完成强大的分支管理:支持轻量级分支和合并数据完整性:所有文件都有哈希校验,防止篡改代码审查 (Pull Request)问题跟踪 (Issues)项目管理 (Projects)持续集成 (CI/CD)维基

#git#github#elasticsearch
HarmonyOSArkTS 实现计算器——调度场算法详解与避坑

问题解决方案ArkTS 禁止 eval调度场算法:中缀→后缀→求值负号 vs 减号tokenize 阶段用'u'标记一元负号,'u'优先级最高科学计数法tokenize 识别e/E后跟+/-和数字浮点误差截断大数精度语言限制,科学计数法降级显示空括号token 级别检测相邻未闭合左括号toRPN 结尾跳过残留;UI层自动补全右括号调度场算法本身是 1961 年的经典表达式解析算法;

#harmonyos#ui#华为 +1
告别 router.pushUrl:鸿蒙 Navigation 页面跳转,从入门到传参与替换,一篇讲透

pushPath栈操作入栈,深度 +1替换栈顶,深度不变原页面保留,可返回销毁,不可返回典型场景查看详情、打开设置登录→首页、引导页→主页Navigation 体系初学时配置确实比 router 麻烦——要建路由表、要写 @Builder 导出函数、要 @Provide/@Consume 传栈。但这些都是"一次性成本",项目一旦跑起来,后续加页面只需要三步,而且传参、拦截、回调这些 router

#harmonyos#华为#鸿蒙
    共 26 条
  • 1
  • 2
  • 3
  • 请选择