首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏谷粒商城【重构版】

    重构谷粒商城11:node快速入门

    重构谷粒商城11:node快速入门前言:这个系列将使用最前沿的cursor作为辅助编程工具,来快速开发一些基础的编程项目。 本项目将基于谷粒商城项目,并且对谷粒商城项目进行二次重构,使其满足最新的主流技术栈要求。包括若依脚手架、大模型、知识库等的嵌入。这篇文章作为加餐,给不熟悉node的后端程序员扫扫盲,快速入门node。

    28610编辑于 2025-04-08
  • 来自专栏程序员成长指北

    11个JavaScript代码重构最佳实践

    作者:曾探 来源:《JavaScript设计模式与开发实践》 模式和重构之间有着一种与生俱来的关系。从某种角度来看,设计模式的目的就是为许多重构行为提供目标。 如果一个函数过长,不得不加上若干注释才能让这个函数显得易读一些,那这些函数就很有必要进行重构。 如果在函数中有一段代码可以被独立出来,那我们最好把这些代码放进另外一个独立的函数中。 用《重构》里的话说,嵌套的条件分支往往是由一些深信“每个函数只能有一个出口的”程序员写出的。但实际上,如果对函数的剩余部分不感兴趣,那就应该立即退出。 重构后的del函数如下: var del = function( obj ){ if ( obj.isReadOnly ){ // 反转if表达式 return; spirit.attack( 'waveBoxing' ); // 输出:RYU: 使用波动拳 spirit.attack( 'whirlKick' ); // 输出:RYU: 使用旋风 11

    1.4K21发布于 2020-10-19
  • 来自专栏前端达人

    11个JavaScript代码重构最佳实践

    作者:曾探 来源:《JavaScript设计模式与开发实践》 模式和重构之间有着一种与生俱来的关系。从某种角度来看,设计模式的目的就是为许多重构行为提供目标。 如果一个函数过长,不得不加上若干注释才能让这个函数显得易读一些,那这些函数就很有必要进行重构。 如果在函数中有一段代码可以被独立出来,那我们最好把这些代码放进另外一个独立的函数中。 用《重构》里的话说,嵌套的条件分支往往是由一些深信“每个函数只能有一个出口的”程序员写出的。但实际上,如果对函数的剩余部分不感兴趣,那就应该立即退出。 重构后的del函数如下: var del = function( obj ){ if ( obj.isReadOnly ){ // 反转if表达式 return; spirit.attack( 'waveBoxing' ); // 输出:RYU: 使用波动拳 spirit.attack( 'whirlKick' ); // 输出:RYU: 使用旋风 11

    84751发布于 2020-10-22
  • 来自专栏不仅仅是python

    Flask-11 使用Blueprints(蓝图)重构博客项目

    今天把之前关于Flask_Blog项目使用Blueprints进行重构和配置,我们将学习如何重构我们的应用程序使用蓝图。蓝图允许我们将应用程序拆分为更易于管理的部分。 今天使用蓝图重构项目就到这里,我们下节见! 关注公号 下面的是我的公众号二维码图片,欢迎关注。 yale记公众号

    1.1K30发布于 2019-07-23
  • DevSecOps国产化浪潮:安全左移实践中的技术突围与市场重构

    DevSecOps国产化浪潮:安全左移实践中的技术突围与市场重构在数字化转型与网络安全双轮驱动的当下,中国DevSecOps市场正在经历从工具引进到自主创新的关键转折。 国际形势变化与政策法规实施的双重作用力,正加速推动软件开发安全体系的重构进程。 在国产化替代的宏观背景下,工具链的安全可控性被赋予新的内涵。除常规的功能安全外,密码算法合规性、核心代码自主率等指标已成为政企客户的技术采购硬门槛。

    15110编辑于 2026-01-23
  • 来自专栏homura的博客

    Rc-lang开发周记11 重构与Lexer

    本周一开始重构了一下vm的部分代码,之后基本上都是在用新语言重写parser的部分。 重构 vm目前代码很少,做的重构主要是将一些东西抽象拆分出来 这是之前vm的成员变量 std::shared_ptr<VMInstVisitor> _visitor; std::vector<std:: VMInst> operator[] (int i) const; private: std::vector<std::shared_ptr<VMInst>> _inst_list; }; } 重构后的成员

    28720编辑于 2023-04-07
  • 金融核心系统国产化重构:基于腾讯云 TDSQL 的架构升级与价值验证

    部署单元化与云原生容器化架构: 支持 TDSQL-JDBC 单元化部署 及“TDSQL + 麒麟 OS + ARM”的全栈国产化方案。 验证业务连续性与降本增效核心指标 基于 14 个金融领域典型案例(涵盖银行、保险、券商),腾讯云 TDSQL 在核心交易系统重构中实现了关键业务指标的显著优化: 成本结构优化 (Cost Efficiency ) 福建海峡银行: 核心系统国产化替代后,软硬件投入大幅降低,预计每年可节约成本 800 万元。 未来,瑞众保险将继续以客户为中心,持续推进核心系统国产化、云原生建设,为客户提供更安全、更稳定、更高效的保险服务。” “可复用、可对照”的国产化落地路径。

    37210编辑于 2026-03-03
  • 来自专栏深度学习与python

    AI 时代操作系统的三重叙事:技术重构国产化突围与生态共建

    1 AI 时代操作系统的重构与考验 操作系统的本质,始终是 “向下管理硬件资源,向上为用户和应用提供开发与运行保障”。 周明辉将其概括为 “改良与革命并存”:一条是基于传统架构进行 AI 适配优化,另一条是重构全新架构,让 AI 成为操作系统的核心。 “传统操作系统模型确实不适合 AI 场景,未来可能基于 GPU 核心重构体系,甚至用 Rust 语言重写内核。” 3 国产化突围与生态共建:从 “跟跑” 到 “生态位跃升” 除了 AI 浪潮,“国产化”则是操作系统演进过程中的又一重要趋势。 但他同时强调,国产化绝非简单的 “替代”,而是 “立足全球化,向生态位高位攀升”。 “软件是全球化市场,国产化不能关起门来做。”

    59810编辑于 2025-08-15
  • 来自专栏腾讯云数据库(TencentDB)

    腾云悦智 x 腾讯云:从“技术代差”到“效能标杆”​,重构国产化技术规则

    技术痛点 数据库国产化替代是企业数字化转型的核心环节。在支持客户落地这一进程中,企业面临以下关键挑战: 1. 技术路线决策困难 客户在分布式/集中式架构、开源/闭源数据库选择上存在顾虑。 技术团队能力断层 国产数据库的部署、调优、包括容灾备份等环节要求重构技术栈知识体系。亟需结合客户场景提供精细化配置与深度技术支持。 3. 一、专业人员体系实现质变:在国产化替代领域,形成了经验丰富的专业团队; 二、服务流程的数字化重构:通过多个典型项目的交付经验,实现了服务能力和交付能力的全面提升; 三、在腾讯生态共创的战略格局下,形成了行业标杆的打造能力 这些突破意味着悦智作为腾讯的战略合作伙伴,正在用“咨询+产品+运维”的服务模式,重新定义国产化替代的游戏规则,为下一个十年的产业升级储备势能。 在一次国产化替换项目的PoC过程中,设有功能测试和性能测试两个环节,且需要跟友商进行PK。在功能测试用例方面,几乎所有数据库供应商都是满分。

    80310编辑于 2025-08-15
  • 来自专栏技术之路

    重构学习-重构原则

    什么是重构: 视上下文重构有两个不同的定义,第一个定义是名词形式 对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本 重构的另一人用法是动词形式 使用一系列的重构手法 强调一下,重构不会改变软件的可观察行为,也就是说重构之后功能和原来一样。 为什么要重构重构改进软件设计,如果没有重构,程序的设计会逐渐腐败变质。 重构的原动力是:代码设计无法帮助我轻松的添加我所需要的功能,如果用某种设计方式,添加功能会简单的多,这种情况可以用 重构来弥补。重构是一个快速流畅的过程,一旦完成重构,新特性的添加会更快速,更流畅。 如果在修改bug和审查代码时发现不合理的地方也要进行重构,这样是为了更好的阅读和理解代码 何时不重构: 如果发现代码太混乱,重构它不如重写来的简单这种情况下建议重写,不用进行重构。 最后你没有时间进行重构表明你其实早就该进行重构重构与性能: 有时为了让代码更容易理解,会做出一些使程序运行变慢的修改,这是个重要的问题。

    1.3K50发布于 2018-01-31
  • 来自专栏韩曙亮的移动开发专栏

    重构重构概要--六大重构模块

    重构方法介绍: 重构改善既有代码的设计 一 重新组织函数 关于注释 :要尽可能少的使用注释 , 注释越多代码的可读性反而更差,注释可以使用函数名来代替 , 不要管函数名有多长, 即使函数名比函数中的代码还要长也不要紧 能更加明确的表明函数的意义,可以将这个算法替换; 二 在对象之间搬移特性 功能模块归属类:对象设计中, 将一个功能模块放在哪个类中,是最重要的任务之一,谁也不能一开始保证设计的是完全合适的,这就需要“对象之间搬移特性”这个重构方法 搬移函数和搬移字段:这两种重构方法都可以解决大多数的问题,如果两种方法同时使用,先搬移字段,在搬移函数。

    97030编辑于 2023-03-27
  • 朝歌智慧&盘古信息:以IMS MOM V6重构国产化智能终端新生态

    ”),以IMS MOM V6为核心,导入WMS、MES、QCS、EAM、SUP、BI、OS等全栈式数字化管理模块,旨在实现生产数据实时化、运营管理高效化,重构国产化智能终端领域的数字化制造新生态。 通过以“国产化技术+鸿蒙生态”等技术为引擎驱动,其在智能终端与行业解决方案领域成功实现核心技术自主可控。 解决方案:通过IMS MOM V6的功能组件灵活组合,实现生产流程快速重构,缩短产品换型时间,满足小批量、多批次生产的柔性化需求。 —重塑行业生态的示范价值—此次合作不仅是朝歌智慧打造“华为五星工厂”的关键一步,更标志着国产化智能终端领域数字化转型进入新阶段。 通过盘古信息IMS MOM V6系统的深度赋能,朝歌智慧将打造成为华为生态内国产化智能终端数字化标杆,为行业提供可复制的转型路径。

    38600编辑于 2025-07-22
  • 来自专栏学习猿地

    Web前端学习 第2章 网页重构11 HTML5新增标签

    title> 6 <style> 7 *{ 8 margin:0px; 9 padding:0px; 10 } 11 Document</title> 6 <style> 7 video{ 8 width:50%; 9 } 10 </style> 11

    95250发布于 2020-06-15
  • 来自专栏爱编码

    重构

    个人觉得代码重构非常有必要,写程序不但要给机器运行,更让人看的明白。 写代码如写诗一样才行。(内容代码为主,建议实践一下比较好点) 实例 一个图书馆出租书的程序。 接着:直接看下面的代码重构呗 Book类: 将按照书的不同类型,按照不同价格统计的方法移动到Book类中,因为这个按理应该属于Book类中的。 第二次重构 经过第一次重构,还是没有实现需求修改增加多个分类的效果。那么接下来使用接口抽象来再次重构。 最后想说: 如果你发现自己需要为程序添加一个特性,而代码结构使你无法很方便地达成目的,那么就先重构那个程序,使特性的添加比较容易进行,然后再添加特性。 参考文章 【重构】作者: Martin Fowler

    1.1K10发布于 2019-07-03
  • 来自专栏青玉伏案

    代码重构(三):数据重构规则

    7 8 override func viewDidLoad() { 9 super.viewDidLoad() 10 } 11 12 // self.name = name 7 } 8 } 9 10 //重构11 class Person { 12 private var name: String = "" 13 self.name = name 7 } 8 9 func getName() -> String { 10 return self.name 11 智慧意林》")) 7 8 //创建借书人 9 let lender: Lender = Lender(name: "ZeluLi") 10 lender.setLendBooks(books) 11 6 func getCode() -> String { 7 return SenderCode.Male.rawValue 8 } 9 } 10 11

    1.5K60发布于 2018-01-11
  • 2025年项目管理工具生态全景:AI重构协作边界,国产化浪潮势不可挡

    2025年项目管理工具生态全景:AI重构协作边界,国产化浪潮势不可挡当生成式AI开始自主处理项目风险预警,当量子计算优化出最优资源分配方案,当混合现实看板取代传统会议模式——项目管理工具正在经历自敏捷方法论诞生以来最剧烈的技术跃迁 这款源自中国的DevOps平台不仅完成了从代码托管到智能项目管理的进化,更构建起完整的国产化技术栈。 这种反差印证了项目管理工具市场正在形成的"双轨制"格局:一方是以Gitee、飞书多维表格为代表的国产化阵营,另一方则是ClickUp、Notion等坚持全球统一架构的国际玩家。 空间计算重构协作界面ClickUp3.0带来的混合现实工作台,彻底改变了分布式团队的协作体验。 那些既能拥抱技术创新,又能保持业务连续性的企业,将在这次产业重构中赢得先发优势。

    26610编辑于 2025-11-17
  • 来自专栏只喝牛奶的杀手

    重构

    说到重构,我们再来了解一下定义:重构是一种对软件内部结构的改善,目的是在不改变软件的可见行为的情况下,利用设计思想、设计原则、设计模式编程规范等理论来优化代码。 重构目的:1.重构是时刻保证代码质量的一个极其有效的手段,防止代码腐化。当代码腐化到一定程度,量变引起质变,项目的维护成本已经高过重新开发一套新代码的成本。2.优秀的架构和代码是迭代出来的。 时机:持续的重构(做好重构计划,小步快跑,要保证代码仓库中的代码一直处于可运行、逻辑正确的状态.要做好与新功能,老代码的兼容工作。利用静态代码扫描,codeReview做好日常持续重构)。 重构手法总结为“十六字心法”,非常形象、贴切:旧的不变,新的创建。一步切换,旧的再见。 “旧的不变”是指先不动旧方法;“新的创建”是指创建一个跟原来方法功能相同的新方法,你可以通过先复制再重构的方式,来得到这个新方法,也就是整个系统的一个增量;“一步切换”是指,在充分测试之后,新的方法可以完全替代旧方法了

    56030编辑于 2023-09-18
  • 来自专栏马超的博客

    重构-重复关系重构

    今天看到社区有人提问如何进行关系重构,顺手回答了一下。在此记录下关系重构的方法。 Realation {name:'属性3'}]->(B) - 查询测试数据 MATCH p=(A:Test {name:'A'})-->(B:Test {name:'B'}) RETURN p - 如何重构 就是变成 (A)-[:Realation{name:‘属性1’]-(B) (A)-[:Realation{name:‘属性2’]-(B) (A)-[:Realation{name:‘属性3’]-(B) - 重构关系 [0]]) AS deleteRelIds WITH name,deleteRelIds MATCH ()-[r]-() WHERE ID(r) IN deleteRelIds DELETE r - 重构结果 - 更多复杂重构可以使用下面的存储过程实现 CALL apoc.do.case([relationship=1,\'MATCH (from:Label {hcode:$fromHcode}),(to

    1.1K20编辑于 2022-07-04
  • 来自专栏全栈程序员必看

    代码重构(三):数据重构规则

    7 8 override func viewDidLoad() { 9 super.viewDidLoad() 10 } 11 12 // self.name = name 7 } 8 } 9 10 //重构11 class Person { 12 private var name: String = "" 13 self.name = name 7 } 8 9 func getName() -> String { 10 return self.name 11 智慧意林》")) 7 8 //创建借书人 9 let lender: Lender = Lender(name: "ZeluLi") 10 lender.setLendBooks(books) 11 6 func getCode() -> String { 7 return SenderCode.Male.rawValue 8 } 9 } 10 11

    1.3K10编辑于 2022-07-05
  • 来自专栏青玉伏案

    代码重构(二):类重构规则

    在上篇博客《代码重构(一):函数重构规则(Swift版)》中,详细的介绍了函数的重构规则,其中主要包括:Extract Method, Inline Method, Inline Temp, Replace 关于上述这些函数重构的规则更为详细的信息请参考上一篇博客,在此就不做过多的赘述了。 今天这篇博客主要介绍一下类的重构。在我们写代码时,有些类是不规范的,需要重构。 当然,在你实现时,测试用例是必不可少的,因为测试用例可以在你重构时及时发现因为重构而产生的错误。言归正传,进入今天博客的主题。 搬移后,我们可以再使用函数的重构规则对新组的函数进行重构。下方就通过一个实例来直观的感受一下Move Method。 关于这两个函数重构的规则的具体细节请参见《代码重构(一):函数重构规则(Swift版)》中的介绍。下方截图是对BookCustomer类中的charge()函数进行重构后的结果,如下所示: ?

    1.7K100发布于 2018-01-11
领券