首页
学习
活动
专区
圈层
工具
发布

在别人写的代码上做修改我是这样保证正确性

一定要弄清楚之前这样编写代码是出于什么样的考虑。 项目背景 这段时间我们团队在修改之前的一个功能。在我接触到这个项目的时候,设计方案已经被讨论了多次,已经到了详细设计的阶段。...详细方案设计在别人写的代码上做修改,做详细设计时,第一步要做的是充分评估改动影响;第二步是画流程图梳理改动前后的调用链和数据流,列出修改点;第三步是定好测试关键案例,确保结果的正确性。...HR小姐姐说不是单单问我,要问我们在场所有人一个问题:“代码都读过了,为什么有些人还对逻辑不清楚?”其中一个架构师回答到:“就是你上学的时候读鲁迅的书和现在读鲁迅的书的区别。”...编写代码 在写代码之初,自认对代码做了深入的分析,加上15年代码编写经验,觉得自己写这段代码岂不是降维打击。结果代码提交之后,真的是被打击了。Code Review同学直接在群里说给我找出来7个问题。...其实本质上我同事的意思就是:“我和你一起保证修改的正确性”。用心是非常好的。 最终提的7条每条我们都争论了,那是因为每一条我们两个都真正思考过。这种氛围我觉得是非常好的。

1.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    前端单元测试总结_javascript单元测试

    大家好,又见面了,我是你们的朋友全栈君。...1.为什么需要单元测试 正确性:测试可以验证代码的正确性,在上线前做到心里有底 自动化:当然手工也可以测试,通过console可以打印出内部信息,但是这是一次性的事情,下次测试还需要从头来过,效率不能得到保证...通过编写测试用例,可以做到一次编写,多次运行 解释性:测试用例用于测试接口、模块的重要性,那么在测试用例中就会涉及如何使用这些API。...,而这些依赖的模块具有一些特点,例如不能控制、实现成本较高、操作危险等原因,不能直接使用依赖的模块,这样情况下就需要对其进行mock,也就是伪造依赖的模块。...在目前互联网的开发环境下,业务开发很难做到TDD开发,一是因为需要更多时间编写单元测试用例;二是要求非常了解业务需求;三是要求开发人员有很强的代码设计能力。

    2.2K20

    JavaScript 框架大战已结束,赢家只有一个

    例如,自 V2 以来,大家都期望有一个创建服务器端呈现页面的简单方法,但截止到 2022 年 2 月 24 日,Angular.io 网站本身在没有 JavaScript 的情况下都无法工作。...但是 VueJS 在版本 1 和版本 2 中遇到了一个严重的问题:它不能很好地处理数组,作者指责 JavaScript 对更新算法的选择不佳。... 毫无疑问,它使用起来更简单,但是转换为命令式以及由此产生的组件并不像看起来那么容易预测。在某些情况下,SvelteJS 无法正确检测变化。...Mitosis 你可能没有听说过它,但正是因为它让我写下了这篇文章。Mitosis 是由 Angular 的创建者 Misko Hevery 编写的最新框架。...他将 React 描述为一个尽可能降低影响的库,这正是我编写本文的原因。我感到很沮丧,因为我花了 8 年时间才理解它。

    1.7K30

    都9102年了,还需要用到 jQuery 吗?

    在本文中,我将介绍 jQuery 的历史、优点、缺点以及为什么你仍要用它。 什么是jQuery?...旧浏览器的工作方式是完全不同的,因为没有标准的处理方式,开发人员必须进行多次检查以确保 JavaScript 在IE、Firefox、Opera、Safari 和 Chrome 中正确运行。...“Write less, do more“ - 正如其标语中所述,使用 jQuery,你可以用更少的代码行完成更多工作。各种复杂的操作都很容易完成,它鼓励编写模块化代码。...相对易用性 - jQuery 的一个缺点是很容易写出面条代码。由于对 jQuery 的选择链使用不当,使用非描述性变量名并尝试编写复杂函数时,jQuery 可能会导致写出最终无法维护的代码。...,以及在旧版浏览器上工作,可以使用转换工具,例如Babel 将 ES6 代码转换为与浏览器兼容的代码,可以在 polyfills 的帮助下通过浏览器了解特定功能以及其他工具,如 Autoprefixer

    2.9K40

    React从入门到放弃,一个关于网页速度的故事

    作者 | Alexander Solovyov 译者 | 张健欣 策划 | Tina 2011 年的时候,我碰巧找到一份编写 Backbone.jsapp 的工作。...我在我的新工作中尝试了 React,并在 Clojure 主题的峰会(Clojure Cup 2013)期间发现 CLJS 和 React 简直是天作之合。React 为什么这么好呢?...千万别让我碰那些莫名其妙的 JS,jQuery 根本就不存在代码封装。哪个处理器在哪里绑定,用来做什么?很难说这是一个好的基础库!...然后我开始在 Kasta 工作,那里的 web 前端完全就是一团 jQuery 式的玩意儿。没人想要碰那些代码,因为你会花费数小时,甚至数天,来做一些最小的改动。...两个数量级的差距,而且 HTML 也更小! 在开发者方面,我认为 React 仍然比较好些,但是 TwinSpark 比用 jQuery 在代码封装和组件化方面要好。另外还有很多方法来提升它。

    1.3K20

    写了3年前端依然原地踏步,你可能犯了这10个错误

    2.只学框架或者库 这个情况,针对java(下称:js)现在没有以前严重了,在我大学和实习期间,那个时间还是jquery傲视群雄的时候。很多人会在聊天的时候会说:有了jquery,为什么还要学js?...虽然在会js的情况下,我不敢说学js的框架或者库就是查文档,查API。但至少学js框架或者库可以不会那么吃力!...我不知道是不是所有城市都是这样,但是广州这边,给我的感觉就是这样。就是目标不切实际,对自己也不够认识!之前在群聊的时候,在金三银四那段时间,很多人找工作,聊天的时候也遇到过很多培训机构的人。...简历上是各种精通,刚毕业在培训机构培训几个月,要么就是自带两三年工作经验,要么就是说自己培训了几个月,技术水平和市面上两三年的人差不多。总之就是把自己吹得无所不能!但是一出题,就十问九不知。...这里就得说下,我印象深刻的一道题了。这道题我就是用来对付那些人的!看到哪个人各种精通,各种吹。我立马出这道题,结果没一个能回答正确,题目在下面!

    1.6K40

    真因验证

    在上一篇使用jQuery.Validate进行客户端验证(初级篇)中我介绍了为什么选用jQuery.Validate作为客户端的理由,同时也介绍了jQuery.Validate的基本用法以及中文验证消息的修改方法...jQuery.Validate为我们提供了3种验证编写方式,各有优缺点: 1、在input对象中书写class样式指定验证规则或属性验证规则: 如<input type=”text” class=”required...(具体见页面Middle-2.aspx): 这种方式由于要以JSON的格式来编写规则,所以需要引用个单独的JS文件:jquery.metadata.js 具体书写代码格式如下: 代码和验证规则很好的分离,方便日后维护(具体代码见Middle-3.aspx) 这种方式需要手写JS来编写验证的规则,具体的格式如下...这里我就要说明下了,因为,这个例子中我使用的模拟一个项目的形式编写的,页面全部套用母版页,所以为了满足jQuery.Validate拦截form表单的方式,所以我在母版页中的定义了一个变量用来存放每个页面中定义的验证规则

    2.9K10

    AIGC 浪潮下,鹅厂新一代前端人的真实工作感受

    ,这个问题一直都在争论,一直也没有一个明确的答案。可如果有人问到:“该用 jQuery 呢还是 MVVM 框架开发呢?”,我想这个问题是有标准答案的。 为什么会这样呢?...但,有一点它还是没有解决,还是有大量的重复劳动性的工作需要开发者来实现,比如模板编写、样式开发、基础函数编写等等, 这也是为什么,社区出现了大量的诸如低码这样工具来力图解决此问题。...为什么呢?因为这些工具相对于声明式而言,其实和 jQuery 相对于原生 js 是一样的。都没有逃离所处的范式,jQuery 没有逃离 js 的命令式,这些工具也没有逃离声明式。...ChatGPT 生成网页的结果 代码编写 相信非常多的同学都已经用 GPT 来辅助写过代码了,写个冒泡啥,但这似乎无法用在我们工作中哈,下面就举几个在我实际工作中 AI 辅助写代码的例子吧,算是简单地抛一块砖...** ** 需要明确的是,AI 工具并不能替代我们的工作,它们只是辅助我们完成工作的工具。因此,掌握好专业领域知识,才能更好地利用 AI 工具,提高工作效率。

    81831

    从GitHub.com放弃使用jQuery说起

    让我干唠是唠不出来什么的,因为咱没怎么用过js,只是最近在学习vue.js,看到了一篇GitHub官方在2018年发布的解释为什么放弃前端框架jQuery的文章,心血来潮,想读一遍,顺便翻译出来,以帮助理解...jQuery 我们最近完成了一项里程碑式的工作,去除了GitHub.com 网站前端代码对 jQuery 的依赖。...此外,链接语法并不能满足我们未来想要编写代码的方式。...这样一来,那些使用 JS 增强的 Web 表单和其他 UI 元素通常也可以在浏览器禁用 JavaScript 的情况下工作。...在某些情况下,我们能够完全删除某些遗留代码,而不必在 vanilla JS 中重写它们。 这几年来,通过以上所述和诸如此类的努力,我们逐渐减少了对 jQuery 的依赖,直到不再有一行代码引用它。

    1.3K20

    解决ASP.NET中的各种乱码问题

    通过分析这类乱码案例中,我发现几乎都是采用这种方式向服务端提交数据: “key1=” + escape(value1) +“&key2=” + escape(value2) 这种方法在多数情况下,的确能够正常工作...JavaScript中正确的URL编码方式 看过前面的示例,您有没有想过:为什么escape不能解决的问题,JQuery就能解决呢?...在WEB开发领域,我想大家对JQuery的权威应该不用怀疑吧? 所以我认为JQuery的方法肯定是正确的。...从JQuery的实现方式也可以看出:encodeURI()其实也是不推荐在编码URL数据时使用的。 说到这里,我要说说为什么不推荐使用encodeURI。...URL编码方法选择encodeURIComponent,再次强烈推荐直接使用JQuery 我一直认为:正确的方法可以让我在无形中避开许多问题。

    3.4K62

    AIGC 浪潮下,鹅厂新一代前端人的真实工作感受

    ,这个问题一直都在争论,一直也没有一个明确的答案。可如果有人问到:“该用 jQuery 呢还是 MVVM 框架开发呢?”,我想这个问题是有标准答案的。 为什么会这样呢?...但,有一点它还是没有解决,还是有大量的重复劳动性的工作需要开发者来实现,比如模板编写、样式开发、基础函数编写等等, 这也是为什么,社区出现了大量的诸如低码这样工具来力图解决此问题。...为什么呢?因为这些工具相对于声明式而言,其实和 jQuery 相对于原生 js 是一样的。都没有逃离所处的范式,jQuery 没有逃离 js 的命令式,这些工具也没有逃离声明式。...ChatGPT 生成网页的结果 代码编写 相信非常多的同学都已经用 GPT 来辅助写过代码了,写个冒泡啥,但这似乎无法用在我们工作中哈,下面就举几个在我实际工作中 AI 辅助写代码的例子吧,算是简单地抛一块砖...3.4 要合理使用 工具是来辅助你的,不是替代你的。 需要明确的是,AI 工具并不能替代我们的工作,它们只是辅助我们完成工作的工具。

    45920

    初识React

    显而易见,React的工作方式把开发者从繁琐的操作中解放出来,开发者只需要着重“我想要显示什么”,而不用操心“怎么去做”。...这种新的思维方式,对于一个简单的例子也要编写不少代码,感觉是用高射炮打蚊子,但是对于一个大型的项目,这种方式编写的代码会更容易管理,因为整个React要做的就是渲染,开发者关注的是渲染成什么样子,而不用关心如何实现增量渲染...如此一来,最终的用户界面,在render函数确定的情况下完全取决于输入数据。...)的思想,这也就是React为什么叫做React的原因。...React工作方式的优点: 毫无疑问,jQuery的方式直观易懂,对于初学者十分适用,但是当项目逐渐变得庞大时,用jQuery写出的代码往往相互纠缠(事件与DOM元素),难以维护。

    94020

    【经验】编写优秀jQuery插件的10个技巧

    →[设为星标⭐] 作为一名前端人员,在工作中肯定会用到一些javascript插件,不得不承认,jquery是其中的比较优秀的插件之一,下面我给大家分享一些方法,希望对同学们有些帮助。 1....把你的代码全部放在闭包里面 这是我用的最多的一条。但是有时候在闭包外面的方法会不能调用。 不过你的插件的代码只为你自己的插件服务,所以不存在这个问题,你可以把所有的代码都放在闭包里面。...使用返回一个元素 JavaScript/jQuery有一个很好的特点就是可以进行方法级联,所以我们不应该破坏这个特性,始终在方法中返回一个元素。我在我的每一个jQuery插件中都遵守这一条。...首先我们需要创建我们最初的类定义,在多数情况下这就意味着创建一个对象。这个定义包含了每一个对象实例都不同的部分。...我的座右铭:不能领跑也绝不放弃!

    70720

    Web开发在过去20多年时间里如何改变了我

    我用JavaScript编写代码大概有20年时间,但我从来没有在单个项目中写过这么多的JavaScript代码。之后,在过去几年时间里我开始使用AngularJS。...只要专注于所需要编写的功能 这就是为什么TypeScript对我来说是个大帮手。...当然类型化的语言在很多情况下也是有用的,但是——使用JS工作了20年——我喜欢隐式的类型JavaScript语言的灵活性,并且我对它很熟。...这意味着,从我的角度来看,有关TypeScript的优点是,我仍然能用TypeScript编写隐式的类型代码,并利用到JavaScript的灵活性。...这就是为什么我说“仍然可以编写JavaScript”的原因。 Web技术改变了,我的技术堆栈也改变了,工具也是。所有这些东西都变得更为轻巧,连同工具一起。

    2.1K60

    解决ASP.NET中的各种乱码问题

    通过分析这类乱码案例中,我发现几乎都是采用这种方式向服务端提交数据: “key1=” + escape(value1) +“&key2=” + escape(value2) 这种方法在多数情况下,的确能够正常工作...JavaScript中正确的URL编码方式 看过前面的示例,您有没有想过:为什么escape不能解决的问题,JQuery就能解决呢?...在WEB开发领域,我想大家对JQuery的权威应该不用怀疑吧? 所以我认为JQuery的方法肯定是正确的。...从JQuery的实现方式也可以看出:encodeURI()其实也是不推荐在编码URL数据时使用的。 说到这里,我要说说为什么不推荐使用encodeURI。...URL编码方法选择encodeURIComponent,再次强烈推荐直接使用JQuery 我一直认为:正确的方法可以让我在无形中避开许多问题。

    2.3K60

    你不需要 jQuery,但你需要一个 DOM 库

    domq.jpg 写这篇文章的目的,一方面是介绍一下自己编写的模块化 DOM 库 domq.js,另一方面是希望大家对 jQuery 有一个正确的认识,即使 jQuery 已经逐渐退出历史舞台,但是它的...为什么我们会放弃 jQuery 呢?原因无非这样几个:不需要再进行浏览器的兼容,原生 DOM 查找已经很方便,AJAX 请求有更好的替代方式等等。...正如我在上文说过的,既然 jQuery 的 API 简洁易用,而且我们也更加熟悉,那我们为什么不将 jQuery 和原生 JS 结合起来呢?...用原生 JS 实现了 jQuery 的大部分 API,可替代率接近九成吧,至少在我编写的插件中,几乎可以替换掉所有的 jQuery API。...形如 jQuery 的 DOM 操作库有很多,比如 bonzo、$dom,但是在我重构 jQuery 插件时,我发现没有办法用这些库直接替换 jQuery,只有 Zepto 相对完美,但是我又不希望引入额外的无用的方法

    1.2K30

    CSS vs JS动画:谁更快?

    这篇文章会一步步告诉你为什么基于 Javascript 的 DOM 动画库(比如 Velocity.js 和 GSAP)能够比 jQuery 和基于 CSS 的动画库更高效。...jQuery 让我们从基本开始说起: Javascript 和 jQuery 两者不能混为一谈。Javascript 动画很快,而 jQuery 动画很慢。为什么呢?...我的建议是:当你只在移动平台上开发,并且动画只是简单的状态切换,那么适合用纯 CSS transition。在这种情况下,transition 是高性能的原生支持方案。...那么我推荐你使用一个动画库,这样你的动画可以保持高效,并且你的工作流也更可控。有一个特别的库做的特别棒,它可以用 Javascript 控制 CSS transition。...在结束之前,请记住一个高性能的 UI 绝不仅仅是选择一个正确的动画库。页面上的其他代码也需要优化。

    2.7K20

    面试小结--前端面试的几个雷点

    以前是:有了jquery,为什么要学JavaScript?现在是:有了react,vue,为什么要学JavaScript。很多人就是在原生基础还没有掌握的情况下,就学热门的框架,库。...面对这个问题,我当时也是蒙圈状态,一会才反应过来回答:我们比较注重基础,有了原生基础,框架上手不难。 并不是说热门的框架,库不需要学习,而是建议在基础扎实的情况下再进行学习。...这一点我半保留,针对这个情况,我觉得是:同样是学习框架、库或者其它工具,有原生JS基础情况下学习是锦上添花,原生JS基础不过关的情况下学习是急功近利,不会原生JS的情况下学习是揠苗助长。...但是自己对那些插件,代码一概不知,在空余时间也没有去了解。这样的情况,技术别人的代码写得很好,不去学,又怎么知道代码写得怎样好? 4....我:在培训机构学习,相信你也知道他们的各种宣传语。但是,知道为什么他们教学员写简历的时候,不会让学员把培训经历写上去吗? 他:这样写简历,是因为找工作不好找,找到了工资也低,所以就这样写一下。

    1.1K10
    领券