首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏CSS森林

    我的页面重构经验

    我的页面重构经验 由 Ghostzhang 发表于 2006-03-23 10:19 前两天跟群里的『白菜』兄谈到了学习web标准中遇到的问题,觉得很值得写一下,是我对标准的一些理解,希望对在学习web 下面是我的制作页面的一点经验,权当是总结吧,跟大家分享一下: 第一阶段 开始制作的时候,应该先从没有样式表文件的页面做起,做到最基本的结构,就是使用结构化、语义化的标记,如用ul,li标签或dl,dt,

    83670编辑于 2022-08-22
  • 来自专栏小二十七

    代码重构:函数重构7 个小技巧

    重构的范围很大,有包括类结构、变量、函数、对象关系,还有单元测试的体系构建等等。但在这一章,我们主要分享重构函数的 7 个小技巧。 在重构的世界里,几乎所有的问题都源于过长的函数导致的,因为: 过长的函数包含太多信息,承担太多职责,无法或者很难复用 错综复杂的逻辑,导致没人愿意去阅读代码,理解作者的意图 对于过长函数的处理方式,在 《重构》中作者推荐如下手法进行处理: 1:提炼函数 示例一 我们看先一个示例,原始代码如下: void printOwing(double amout) { printBanner(); // 00:00:00 CST 1998 d2 after nextDay:Wed Apr 01 00:00:00 CST 1998 总结 对于要修改的函数变量,乖乖的使用临时变量,避免造成不必要的混乱 7: 而且 CV 大法也容易出错 } } 那时候我们代码写的不好,还不自知,但随着我们的能力和经验的增改,我们回头看看自己的代码,这简直是一坨 但是年轻人嘛,总归要犯一些错误,佛说:知错能改善莫大焉。

    1.1K30发布于 2021-10-20
  • 来自专栏siri的开发之路

    Go项目重构经验分享——ORM框架实践

    一、背景介绍本文介绍了笔者在重构一个 Go 项目的实践经验,老项目由于迭代速度快,导致了接口杂乱,结构扁平,代码耦合度高等问题,在项目复杂度增加的情况下不再适合扩展,因此对整个项目进行了重构。 篇幅有限,本文主要介绍 ORM 层的重构。 三、ORM层目录结构老项目的目录结构比较简单,重构后根据标准Go项目目录结构 推荐的方式重新整理,当前的目录结构大致如下:.├── internal│ ├── handler│ ├── usecase └── router├── cmd│ └── main├── configs├── go.mod├── tools├── testinternal 包中的是非共享的核心代码,一些公共库代码在重构时被移入了其他开源公共库 ,因此这里没有额外创建 pkg 包handler 包中为业务逻辑,router负责路由注册,剩下的 usecase 、repository 以及 model 均为数据库相关的包四、重构过程gorm 推荐的方式

    1.4K30编辑于 2023-09-25
  • 来自专栏Java架构师历程

    7重构单体为微服务

    应用此方法后,系统架构如图 7-1 所示。 ? 除了新服务和传统的单体,还有另外两个组件。第一个是请求路由,它处理传入的(HTTP)请求,类似于第二章中描述的 API 网关。 重构之前和之后的架构如图 7-2 所示。 ? 以这种方式拆分单体有两个主要优点。它使您能够独立于彼此开发、部署和扩展这两个应用。 您将得到微服务的相关经验,特别是在提取过程方面。之后,您应该提取那些能给您最大利益的模块。 将模块转换为服务通常是耗时的。您想按照您将获得的利益对模块进行排列。提取频繁更改的模块通常是有益的。 图 7-3 展示了重构。 ? 一旦实现了粗粒度的接口,您就可以将模块变成独立的服务。要做到这点,您必须编写代码以使单体和服务通过使用进程间通信(IPC)机制的 API 进行通信。 图 7-3 显示了重构前、重构中和重构后的架构。 在此例中,模块 Z 是要提取的候选模块。其组件由模块 X 使用,并且它使用了模块 Y。第一个重构步骤是定义一对粗粒度的 API。

    76330发布于 2018-09-26
  • 来自专栏【腾讯云开发者】

    用Cursor重构Go项目,只需7步!

    首先,你会先找经验丰富的建筑师或装修顾问,整体检查房屋,判断哪些区域存在问题,哪些最急需改造。这类似于我们使用 AI 代码助手快速扫描代码库,识别出冗长、复杂、难以维护的函数和代码结构。 在重构代码后,AI 会帮助生成代码调用流程图和技术文档,方便团队成员理解和后续维护。 通过以上类比你可以清晰地看到:使用 AI 辅助进行代码重构,就像请到一位经验丰富、高效可靠的建筑师一样。 13、将使用AI辅助的重构融入日常开发工作中的思考 采用分层次重构策略 日常开发中:持续进行小范围重构(方法提取、变量重命名等)。 功能完成后:进行中等规模重构(类的拆分、设计模式应用等)。 计划性迭代:安排大规模架构级重构。 将重构正式纳入开发流程 在"完成的定义"(Definition of Done)中包含代码质量和重构要求。 在迭代计划中为重构预留时间。 团队共识与沟通 让团队理解重构的价值和必要性。 向产品负责人清晰沟通重构的意义,获取支持。 形成团队对"何时重构"的共识。

    2.7K21编辑于 2025-04-02
  • 来自专栏IMWeb前端团队

    移动端重构实战系列7——环形UI

    这里主要分析下圆环的实现,蓝色的进度条圆环由左右两边构成,这里以右半边的为例,html结构为.circle-right > .right-inner(为了视觉效果,把蓝色放在里面了,而非覆盖在灰色上),如下图:

    1.3K20发布于 2019-12-04
  • 来自专栏IMWeb前端团队

    移动端重构实战系列7——环形UI

    本文作者:IMWeb 结一 原文出处:IMWeb社区 未经同意,禁止转载 ”本系列教程为实战教程,是本人移动端重构经验及思想的一次总结,也是对sandal及sheral UI的一次全方位剖析,

    2.2K60发布于 2018-01-08
  • 来自专栏测试开发干货

    接口测试平台代码实现59-首页重构7

    本节基本就是最后一节,上节我们本来以为很简单的重构,结果遇到了恶心的第三方组件bug,所以我就用刷新套路来绕过了这个问题,还省去了clear清空函数,顺便给大家讲了下新增的第二万能参数ooid。

    74440编辑于 2022-05-19
  • 来自专栏JavaGuide

    7经验社招终于上岸Java开发!

    今天来分享一位球友的面试经历,这位朋友工作已经 7 年,之前一直从事 PHP 开发工作,微信公众号开发、保险行业都做过。2 月 21 号的时候正式提交离职申请,3.1 号开始学习 Java。 这个公司主要面试的就是业务能力,比较看重项目经验,底层原理问的比较少,接下来这家公司就是重头戏了。 第二家公司 第二家公司是一个集团,先有笔试再有面试,部分面试问题如下: 先做一个 10 分钟左右的简短介绍,包括几个方面:你工作的经验,你在这些工作中你的优势是什么?你擅长什么? 你可以在下面两份参考资料上面大部分问题的参考答案: JavaGuide 在线阅读版:https://javaguide.cn/ 《Java 面试指北》 总结 最后再总结一下,做自己介绍的时候,先介绍自己的开发经验

    54410编辑于 2022-05-25
  • 来自专栏学习猿地

    Web前端学习 第2章 网页重构7 浮动布局

    h1>我是一个标题 3

    我是一个标题

    4
    5
    6 7 html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 <style> 7 > 1 h2{ 2 border:1px solid #00f; 3 width:500px; 4 height:36px; 5 } 6 .more{ 7 html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 <style> 7 html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 <style> 7

    86230发布于 2020-06-15
  • 程序员缺乏经验7 种表现!

    1.一次性提交大量代码2.代码写的很烂3.同时开展多项工作4.性格傲慢5.不能从之前的错误中学到经验6.工作时间处理私人事务7.盲目追逐技术潮流总结图片知道这些表现,你才能在自己的程序员职业生涯中不犯相同的错误 软件行业的工作经验和你从事这个行业的工作年限直接相关。 这句话在某种程度上是对的,但是你从事这项工作的年限,并不一定代表你获得了相同年限的工作经验,正如一句话所说:“我们以为我们是工作了十年,其实却只有一年的工作经验,只不过又重复用了九年”。 让我们深入剖析下业余程序开发人员的 7 种表现,每个程序开发人员都应该引以为戒,这些错误会阻碍我们的职业发展。1. 7. 盲目追逐技术潮流开发人员缺乏经验的另一个表现是面对技术潮流的态度。你会发现他们总是在谈论技术潮流,当有一个新的潮流出现时,他们会立刻丢弃原来的潮流,投入新的怀抱。

    44300编辑于 2024-12-25
  • 来自专栏程序猿DD

    程序员缺乏经验7 种表现!

    软件行业的工作经验和你从事这个行业的工作年限直接相关。 这句话在某种程度上是对的,但是你从事这项工作的年限,并不一定代表你获得了相同年限的工作经验,正如一句话所说:“我们以为我们是工作了十年,其实却只有一年的工作经验,只不过又重复用了九年”。 让我们深入剖析下业余程序开发人员的 7 种表现,每个程序开发人员都应该引以为戒,这些错误会阻碍我们的职业发展。 一次性提交大量代码 回忆下,你是否碰到过一次性提交大量代码的人,你都不想给他做代码评审。 根据一个开发人员对建设性意见的反应,你可以判断出他是否缺乏经验。缺乏经验的开发人员不接受任何建设性的建议,甚至代码评审中的评论,他都会认为是对他个人的一种攻击。 盲目追逐技术潮流 开发人员缺乏经验的另一个表现是面对技术潮流的态度。你会发现他们总是在谈论技术潮流,当有一个新的潮流出现时,他们会立刻丢弃原来的潮流,投入新的怀抱。 缺乏经验的开发人员总是在学习教程。

    45830发布于 2021-11-12
  • 来自专栏技术之路

    重构学习-重构原则

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

    1.4K50发布于 2018-01-31
  • 来自专栏腾讯IVWEB团队的专栏

    【译】通过可选链操作符重构大型代码库的经验教训

    我决定用其来重构Mavo(当然了,还需要提供一个转译版本来适配不支持该特性的浏览器)。 需要寻找的场景 如果决定重构代码,那么,需要针对哪些场景呢? 最简单明显的就是将foo && foo.bar优化成foo?.bar。 以下是一个真实例子,起初我是这样重构的: this.children[index] ? 不细心带来的BUG 如果像我一样对项目进行如此重构,就很容易在某个点引入可选链操作符后,不经意间改变了代码功能并引入了难以察觉的BUG。 在需要进行区分的场景下,就会引入BUG,这可能是通过这种方式进行重构时引入的最常见问题。

    1.2K30发布于 2020-07-14
  • 如何用GitHub Copilot重构SQL,避免全表扫描:我的实战经验

    Copilot立即给出了几个关键建议:避免在列上使用函数,改为范围查询为create_time和merchant_id创建复合索引考虑使用覆盖索引第二步:重构SQL语句基于Copilot的建议,我重写了查询语句

    45610编辑于 2025-09-15
  • 来自专栏韩曙亮的移动开发专栏

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

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

    1.1K30编辑于 2023-03-27
  • 来自专栏大数据文摘

    7经验法则,助你从小白进阶优秀程序猿

    下面是medium上一位博主提出的7条学习编程语言的7条基本建议,或许能帮你轻松掌握一门编程语言,一睹为快! 做积极行动的学者 只看视频教程而不亲自实践无异于纸上谈兵,无论你看的多么认真。 积攒实战经验 生活的本质是复杂的,我们应该面对现实,做一些复杂的工作。

    44330发布于 2019-09-17
  • 来自专栏MixLab科技+设计实验室

    Agent的5种级别和7条Anthropic的经验

    Anthropic 最近发了一份构建 Agent 的经验: 1. 7. 真正的价值在于协调 ➜ 一个好的 Agent 不仅仅是 LLM 的包装器。它是一个协调器:协调逻辑、内存、工具和反馈。如果你要扩展到多 Agent 设置 —— 协调是关键。

    19310编辑于 2026-03-24
  • 来自专栏Spring实战系列开发笔记

    SpringBoot开发系列(7)-开发WebSocket的一点经验

    趁现在还记得些,把一些开发过程中总结的一些经验记下来,以免过个一年半载再次需要用到时忘却了。

    2.7K41发布于 2020-03-24
  • 来自专栏CDA数据分析师

    7经验法则,助你从小白进阶优秀程序猿

    下面是medium上一位博主提出的7条学习编程语言的7条基本建议,或许能帮你轻松掌握一门编程语言,一睹为快! 做积极行动的学者 只看视频教程而不亲自实践无异于纸上谈兵,无论你看的多么认真。 积攒实战经验 生活的本质是复杂的,我们应该面对现实,做一些复杂的工作。

    37530发布于 2019-10-10
领券