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

关于CodeReviewer想法

关于CodeReviewer想法 CodeReview由来 CodeReview 对代码质量作用体现在哪些方面?...CodeReview由来 其实对于CodeReview由来,简单说就像工厂流水线一样,为了保证产品质量,一定会有一个最终环节质检员来进行质检。...通过CodeReview来规范大家开发过程中命名习惯,让每一个方法名都有其正确意义,这便是体现; 通过CodeReview来规范总是偷懒不写注释小伙伴,从而提高代码可阅读性,这也是体现; 通过...当时为了规范约束大家CodeReview代码习惯,还在网上找了一个开源sonar项目,部署到内网服务器,对项目组开发项目进行sonar代码规范检测。...沿用代码检测规约是阿里巴巴开发者社区p3c开发手册版插件,要求是开发人员都安装了p3c代码检测插件在本地自行规范开发代码。

8410

关于包围神经猫想法实现

看到朋友们狂转这个游戏里面圈,然后打了一下,说下自己想法。。...默认障碍应该也是随机生成,所以没什么难度。 感觉这个最麻烦地方就是猫逃跑路线。一開始 以为是6个方向随即一个跑,可是后来发现是能逃出去最短路线。由于本人比較菜。所以就用广搜来实现。...起点就是猫位置,终点就是坐标超出地图范围 。 广搜就是最主要广搜。没有剪枝。没有双向(9*9还要这些仅仅有一斤葱才干干出来吧。 。。)...然后每扩展到一个节点都记录一下他前一个节点位置用于作为逃跑路径,广搜里面的Visit数组我设了两个。一个是点击过,一个是在搜索中暂时。然后在搜索时候假设在两个数组中都没有訪问过就訪问。...由于相对于矩阵,这个坐标实在没法用两层for搞定,就想推数学公式,推了半天繁琐不说,代码看叫一难受。。。后来忽然想起一斤葱常量数组。轻松解决~这样代码长度仅仅有原来1/3。

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

关于Electron一些想法

大概2016年时候了解到js可以写桌面应用,当时正在用wpf/winform开发cs应用,近几年vue和react在前端火热,以及node.js在中间层和后端大量应用,js正在往多端...,多平台方向渗透,这个对前端来说是好,大前端影响力越来越大。        ...之前开发了一个系统,主要是用cefsharp+vue实现混合开发,主要利用C#连接硬件优势,vue开发效率就不用说了,最近越来越多关注到electron,和cefsharp+vue分析比较了一下... 1.构建和开发      两者相差不多,electron项目更紧凑,不像cefsharp需要另开一个C#项目  2.更新   electron团队专门开发了自动更新组件,而且有热更新,这个比cefsharp...更有优势,C#项目当然也有自动更新,也可以自定义实现 3.打包 二者都可以通过inno setup打包 4.硬件交互 C#更有优势,可以调用大量系统api或者第三方dll,electron可以调用C++dll

61220

关于权限一些想法

可能需要在对应结构数据中添加一些必要信息才能达到扩展可能,一旦出错,调试也是个麻烦事。优点就是占地方小,如果用到web中可以很大程度上提高性能。...------------------- 那么理想中权限应该是可以扩展,而且在网络传输中尽可能减少传输内容,最好是在这个基础上再减少IO操作,让各部分负载能达到某种意义上平衡。...当然这个里边该考虑还有json支持数据量大小。 还有一个容易忽略问题,就是如何将这些信息定义到一个类里边,或者某个可结构化东西中去。...这需要注意就是xml中pagename,元素id,与对应页面的耦合度高,一处页面名称修改直接会导致权限控制失效,id修改也会导致。一般情况下,页面的名称是不会变。...会变化可能只会页面中元素ID.可以添加额外标签描述Attribute。来判断对应元素显示隐藏..

36620

关于数据质量一些想法

0x00 前言 最近不少朋友都咨询过居士关于数据质量问题,群里面也有很多相关的话题讨论。正巧,一位群友(Z)昨天发给我了一些他关于数据质量思考,在此分享给大家。...关于数据质量,也可以参考居士之前写两篇文章: 《数据质量监控》 《No.22 漫谈数据质量监控》 如下,是Z分享。 0x01 关于数据质量监控 本人是一名在上海工作数据仓库工程师。...之前很多人都在催我,让我写一些关于数据质量管理东西,今天就稍微整理一点吧(仅为个人意见,不喜勿喷。欢迎指点交流。)...那对于事实表和数据集市表(比如用户画像)其实是不妥,会产生很多“理论上”告警,而从业务角度,是没有问题。 所以,在一些类似于维度表,或者缓慢渐变维表,可以使用固定阈值进行监控。...特别是阿里和美团这些大厂对外都有一些关于数据质量解决方案平台或者文章,大家可以自行查找学习。

1.2K10

关于控制反转一些想法

有如下代码: /** * B中代码实现是依赖A,两者之间耦合度非常高,当两者之间业务逻辑复杂程度增加情况下 * 维护成本与代码可读性都会随着增加,并且很难再多引入额外模块进行功能扩展...A,两者之间耦合度非常高,当两者之间业务逻辑复杂程度增加情况下,维护成本与代码可读性都会随着增加,并且很难再多引入额外模块进行功能扩展。...刚刚举这个例子,就是典型通过框架来实现“控制反转”例子。框架提供了一个可扩展代码骨架,用来组装对象、管理整个执行流程。...程序员利用框架进行开发时候,只需要往预留扩展点上,添加跟自己业务相关代码,就可以利用框架来驱动整个程序流程执行。...这里所说“控制”指的是对程序执行流程控制,而“反转”指的是在没有使用框架之前,程序员自己控制整个程序执行。在使用框架之后,整个程序执行流程通过框架来控制。流程控制权从程序员“反转”给了框架。

9010

关于多核编程一点想法

Nim语言有很多语言上先进特性和接近Python语法,Rust定位成C++直接竞争者。...它们出现就不是冲着解决多核编程问题来,基因决定了,靠这两门语言解决不了多核编程问题。 怎么解决多核编程问题?...因为Rust官方明白,实现完整高效协程调度,难度很大。这方面Go做很好,其他静态编译类型语言都没有超过它。 我们可以说Nim和Rust定位不同,要解决各自目标问题。...许世伟说过,他在C++中实现协程和协程调度,到头来也只是对Golang拙劣模仿,我想Rust官方最初想法也大概如此吧。 而且我相信Ken Thompson和Russ Rox这两位大师眼界。...知乎上关于Rust高并发框架实现问题:http://www.zhihu.com/question/30325880

1.4K50

关于Apache Mesos一些想法

过去几个月,发生了许多事,因此我想,这是个好机会来写写关于Mesos和其生态文章。 关于Mesos和YARN已经有很多讨论了。...我也看到过诸如“Mesos资源请求模型非常落后”评论,也注意到Mesos在过去几年变得更加流行。这里关键因素之一也许是Docker天花乱坠般宣传以及各自对于协作层需要。...Mesos应对核心挑战是,在不了解一个框架前提下如何满足对框架 约束(constraints),这也是资源分配中最难以理解地方。...Mesos处理资源方式就像家长主持一个孩子生日派对:好比你要为15个孩子 (==框架)提供食物(==资源),并且不可能知道他们喜好(==安置倾向)。...有一个有趣事实(虽然我认为这是公知),Mesos和Spark有一个共同点:Matei Zaharia——来自一个靠近加拿大安大略小镇——他是加州伯克利分校AMP实验室学生,这个实验室为Mesos

30720

关于“入侵检测”一些想法

这三年接触了很多东西,自己也有过很多想法,但实际上去做却很少。花了很多时间,做了一款插件化漏洞扫描器,这里不做介绍。...这里主要介绍是另外一个想法(这些年做最有成就感事情),我把它理解为真正意义上“入侵检测”。...只有不断改进,这个世界才有可能不断进步变好。 0x00、前面的废话 “入侵检测”,从字面上意思来解释就是“对入侵行为检测”。...上面那张图就是我想要表达想法(通过流量镜像,将请求数据全量保存,响应存在异常才保存)。 通过分析网络中请求和响应,来判断漏洞存在(攻击者前脚发现漏洞,我们可以实现实时发现,并溯源)。...其实也很简单,检测都是基于数据是明文传输基础上。如果对http响应数据进行一些简单编码再传输(dns隧道木马就是这样做,它会对执行命令结果进行编码后传输。),这样肯定会加大检测难度。 ?

1.2K00

关于接口设计一点想法

=> { ReceiveMessage(data); }) function ReceiveMessage(data) { /* TODO */ } Eval 一个简单想法是让用户直接编程...现在我们就有了一个新问题:我们不能使用eval,但是我们需要某种方法来接收任意指令。 指令数组 我们可以将这些指令通过JSON数组方式传送。每条指令包含需要执行函数名和参数。...但是还有rotate这样指令,他参数本身是另一个指令。...我们可以设定一个特殊关键词“do”来作为顶级指令,然后执行之后所有的指令。...最后 现在我们这个接口已经实现了通过json数据来执行函数,自定义变量,自定义函数,就好像提供了一个语法解释器。 我们可以通过编写json数据来控制程序行为。而无需修改代码本身。

44970

关于NoSQL优势一点想法

想法来源于与刚才龙老大一番讨论,文中对于NoSQL概念性东西摘录自:http://www.infoq.com/cn/news/2011/01/nosql-why 概念 NoSQL是对应SQL而演变而来...来源 – 传统关系数据库遇到瓶颈 传统关系数据库具有不错性能,高稳定型,久经历史考验,而且使用简单,功能强大,同时也积累了大量成功案例。...在互联网领域,MySQL成为了绝对靠前王者,毫不夸张说,MySQL为互联网发展做出了卓越贡献。 在90年代,一个网站访问量一般都不大,用单个数据库完全可以轻松应付。...在那个时候,更多都是静态网页,动态交互类型网站不多。 到了最近10年,网站开始快速发展。火爆论坛、博客、sns、微博逐渐引领web领域潮流。...而NoSQL中最常见存储方式,则是key-value存储(当然还有其他文档型、列存储、图型数据库、xml数据库等) NoSQL优势: 易扩展 大数据量,高性能 灵活数据模型 高可用 我觉得

46600

SDK之关于SDK一些想法

这篇是规划SDK总结系列最后一篇,也是比较难写一篇了。之前以为经过了这么多坑,再来写这个系列没那么难,规划就比较多。...技术优化 除非一开始有一个比较牛逼或者有经验开发来设计一套有效成熟架构(很可惜,我觉得我们当时设计架构并不是很好),一般SDK前期开发时间都很紧张,而且更多精力聚焦在功能实现上,因此很多时候采用都是最快解决方案...模块彻底独立,可以最大程度降低多人协同开发沟通成本。 插件化 模块化主要是为了方便SDK开发者适应各种需求变化。而插件化则更主要是为了方便SDK使用者。...这里额外补充两点点关于全局限频。 全局限频怎么做: 最简单就是有一个地方记录调用额度,定时刷新额度,在接口调用时,每调用一次去减一。...这部分数据对于市场开拓会有很大效果。 在大数据时候,数据拥有者是大有可为,基于SDK数据分析,可以为SDK开发者,SDK使用者提供更多基于数据分析运营、开发、决策等建议。

1.5K160

关于 AI 应用想法(不断更新)

BizOps:把企业当成进程一样诊断 对于基本面指标(也就是不从OHLC计算指标),有了 GPT 加持,便可以从财报里面获取。...可以封装成库,但更好是封装成一个应用,结合基本面和技术指标,像监控容器那样更好监控企业健康状态。名副其实BizOps。...第二个想到就是源码解析。AI高效率和自然语言理解能力彻底解决程序员不喜欢写注释问题。我们当然准备了充足资金把github上所有高星代码都注释一遍。...【AI情感】 很多导师问题就是,他们只是说理,但人类记住道理是通过故事,除了少数编导转型过来导师之外,其他人讲故事能力太差了。...讲故事好作家基本不懂情感,总是传播一些独角兽思维错误想法。 我记得有个情感作者叫 Jacobi,它写超级吸引力时候,就是通过一个一个故事来引出各种情感理论而不是直接灌输。

8310

关于Qt翻译功能一些小想法

Qt翻译功能最近用得好好,却是一份新需求导致对这一功能思考。 最近接到一个新需求就是为公司某个软件添加多语言翻译功能,由于之前已经做过类似的了。直接移植就可以了。...可是翻译人员不会用Qt语言家软件。除了中英文自己翻译外,其余7种语言都需要发给专门翻译人员翻译。...于是我不发excel文档给他们翻译了,和他们说你翻译到Qt语言家软件吧。教他们安装Qt语言家,并教他们如何使用。说多是泪,我一顿操作猛如虎,一问他们会不会,都说太难了!只好放弃这一想法。...顿时陷入沉思中,究竟是谁走漏了风声说:Qt翻译很简单!!!   还有就是,语言家提供提取Qt项目文件翻译到文件,我想说是这操作挺好。...作者可能是使用类似命名空间做法来实现翻译字段命名空间限制,实际使用上只会增加额外使用负担和学习成本。

54620

关于 Spring-WebFlux 一些想法

回答,其他回答也很精彩,如果感兴趣可以查看 现在基于 spring web 同步微服务有一个非常大缺陷就是:相对于基于 spring-webflux 异步微服务,基于 spring-web 同步微服务没有很好处理客户端有请求超时配置情况...还有就是 Java Log 框架 MDC 实现,一般都是基于 ThreadLocal Map.还有就是像 redisson 分布式锁,它让每个线程生成唯一id并和线程绑定,解锁时候会检查。...但是也就解决方案,就是通过其他线程池,专门处理数据库请求并等待返回进行回调,也就是业务线程池 A 将数据库 BIO 请求交给线程池B处理,读取完数据之后,再交给 A 执行剩下业务逻辑。...Project Loom 解决了主要网络 IO 阻塞问题,并且基本不用改现有代码就能实现纤程,用阻塞代码风格实现非阻塞代码(而且和现在基于 Thread 上下文框架兼容)。...,从 19:17 秒开始: Nicolai 与 Goetz 关于 Java AMA 讨论 Brian Goetz: “I think Project Loom is going to kill Reactive

65800

关于接口设计一点想法(二)

那么一个常见解决方案就是加配置项。 加配置项的话呢 有两种加法,一种是根据是否需要某个流程来加,一种是根据项目来加。...那么之前IsNeedX配置方式不再管用了,我们必须再另外加一种流程配置项 IsB->C ? B->C : C->B 。 我想写到这里大家应该发现了。根据流程加配置项复杂度增加太快了。...,再多项目配置起来也不会增加配置复杂度。...在不新增特殊流程情况下,仅仅修改已有的流程不需要修改代码可以吗? 改进 显而易见我们可以把流程数据之间加入配置项中。 比如我们用这样一个配置项 ProjectData。配合之前接口设计。...测试时也可仅单独测试F流程功能。 这样一来 ,假如再来一个新项目 仅仅需要A->E流程。那么配置起来再方便不过了。

36230

CSS布局解决方案(居中布局

前端布局非常重要一环就是页面框架搭建,也是最基础一环。在页面框架搭建之中,又有居中布局、多列布局以及全局布局,今天我们就来总结总结前端干货中CSS布局。...居中布局 水平居中 1)使用inline-block+text-align (1)原理、用法 原理:先将子框由块级元素改变为行内块元素,再通过设置行内块元素居中以达到水平居中。...缺点:transform属于css3内容,兼容性存在一定问题,高版本浏览器需要添加一些前缀 4)使用flex+margin (1)原理、用法 原理:通过CSS3中布局利器flex将子框转换为flex...{ margin:0 auto; } (3)优缺点 缺点:低版本浏览器(ie6 ie7 ie8)不支持 5)使用flex+justify-content (1)原理、用法 原理:通过CSS3中布局利器...缺点:transform属于css3内容,兼容性存在一定问题,高版本浏览器需要添加一些前缀 3)使用flex+align-items (1)原理、用法 原理:通过设置CSS3中布局利器flex中属性

1.5K20
领券