首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

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

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

为什么建议线上高并发量日志输出时候不能带有代码位置

如果大家发现网上有抄袭本文章,欢迎举报,并且积极向这个 github 仓库 提交 issue,谢谢支持~ 本文是“为什么建议”系列第二篇,本系列中会针对一些高并发场景下,对于组内后台开发一些开发建议以及开发规范要求进行说明和分析解读...往期回顾: 为什么建议复杂但是性能关键表上所有查询都加上 force index 在业务一开始上线时候,我们线上日志级别是 INFO,并且日志内容中输出了代码位置,格式例如: 2022-03...模拟两种方式获取调用打印日志方法代码位置,与不获取代码位置会有多大性能差异 以下代码参考 Log4j2 官方代码单元测试,首先是模拟某一调用深度堆栈代码: 然后,编写测试代码,对比纯执行这个代码...由此,建议:对于微服务环境,尤其是响应式微服务环境,堆栈深度非常深,如果会输出大量日志的话,这个日志是不能带有代码位置,否则会造成严重性能衰减。...我们关闭输出代码行位置之后,同样压力下,CPU 占用不再那么高,并且整体吞吐量有了明显提升。

1.3K20

React工作原理,为什么直接从JSBin copy到本地代码无法执行

Friday, February 19, 2016 5:41 PM 当时还纳闷render()里传进去参数既不是function,也不是string,而是一个html tag,这不是syntax error...看了阮一峰老师blog才弄懂, ? 之前忘了把browser.js 也copy 到本地。 ?...Render里面的那个 … 被自动翻译成了JS: React.createElement( … ), 这个broswer.js 是个宝库啊,里面好多大师级js 用法。。。 ?...Reactsource code init时会自动检测Chrome dev toolreact extension装了没,如果没装会在console里打一个message提醒。 ?...就在想react咋知道本地安装了extension没。以前看过一篇Chrome extensionstep by step创建教程。 其实extension也就是一个js文件。

1.9K10

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

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

1.5K20

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

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

99930

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

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

2.1K40

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

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

1K20

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

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

1.3K40

真因验证

在上一篇使用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 具体书写代码格式如下: <asp:TextBox...第三种,使用JS进行规则验证,可以使用所有验证规则,并且可以试HTML代码和验证规则很好分离,方便日后维护(具体代码见Middle-3.aspx) 这种方式需要手写JS来编写验证规则,具体格式如下...这里就要说明下了,因为,这个例子中使用模拟一个项目的形式编写,页面全部套用母版页,所以为了满足jQuery.Validate拦截form表单方式,所以我母版页中定义了一个变量用来存放每个页面中定义验证规则

2.5K10

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

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

60031

初识React

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

64620

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

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

23020

从GitHub.com放弃使用jQuery说起

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

86020

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

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

1.5K60

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

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

2.7K62

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

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

54820

你不需要 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 相对完美,但是又不希望引入额外无用方法

95730

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

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

1.7K60
领券