草庐IT

【钓鱼邮件!】一枚合格的鱼饵是什么味道【下】钓鱼文案以及钓鱼迹象

0x01钓鱼文案准备•重要性首先得让体现出来邮件的重要性,来驱使目标去查看邮件。•合理性其次文案得基本合理,这个就需要结合目标的身份,日常习惯,所在公司的情况及业务进行综合考量,来编写出一个合理的文案。•紧迫性最后文案最好有一些紧迫性,来促使目标尽快的去按照文案引导,进行点击、输入等操作。批量钓鱼对于刚拿到手的目标,可以先去官网查看组织架构,有多少子公司、分公司、附属单位,公司职位划分是什么样的。批量钓鱼就是广撒网,看运气,目标范围越大成功率越高。文案的选择需要具有通用性,关系到大多数人的自身利益,重要程度高。但需要参考规则允许范围,不能触碰红线。推荐使用文案:社保主题杀毒软件安装通报名单公布

代码坏味道:大类

一个类之所以成为大类,一种表现形式是长函数,还有一种表现形式是类里面有特别多的字段和函数,也许,每个函数都不大,但架不住数量众多。这次我们就主要来说一下这种形式的大类。之所以说大类是一个坏味道,因为一个人理解的东西是有限的,没有人能同时面对所有细节。而人类面对复杂事物给出的解决方案是分而治之。经过分解拆分,人们面对的不再是细节,而是模块,模块的数量显然会比细节数量少,这样人们的理解成本就降低了。理解了这一点,我们再回过头来看大类这个坏味道,你就知道问题出在哪了。如果一个类里面的内容太多,它就会超过一个人的理解范畴,顾此失彼就在所难免了。按照这个思路,解决大类的方法也就随之而来了,就是把大类拆成

ios - 使用私有(private)全局变量作为扩展名 'properties' 是否有代码味道?

因为'扩展可能不包含存储的属性'我看到人们通过使用getter/setter和objc_getAssociatedObject/objc_setAssociatedObject来解决这个问题(参见)HowtohavestoredpropertiesinSwift,thesamewayIhadonObjective-C?我发现那里讨论的解决方案非常“笨拙”,但仍然希望将变量保持在使用它们的位置附近。这就是为什么我最近想在扩展中使用“属性”时开始执行以下操作。privatevarlastValue:Int=0extensionViewController{funccheckIfBigger

代码坏味道:不合理命名与重复代码

一.命名1.1命名是否具有业务含义(1)命名不精准,用词宽泛,不能有效反应代码含义从沟通的角度看,这就不是一个有效的沟通。要想理解它,需要消耗大量的认知成本,时间和精力,同样也增加了后来人包括我们自己维护代码的成本。其中,Info、data、flag、process、handler、build、maintain、manager、modify等,都是属于典型的过于宽泛的名字,当这些名字出现的地方,多半都是写代码的人当时没有想好用什么名字。命名要能够描述出这段代码在做的事情,好的名字应该描述意图,而非细节。命名演化示例:processChapter:处理章节,命名宽泛changeChapterTo

c# - 使用反射是一种设计味道吗?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我看到很多C#、.net问题在这里使用反射解决。对我来说,其中很多看起来像是以牺牲良好设计(OOP)为代价来违反规则。许多解决方案看起来难以维护且“脚本化”。使用反射通常是一种好的做法吗?有没有只有反射(reflection)才能解决的事情?编辑:请举例说明反射是唯一好的解决方案。

c# - 使用反射是一种设计味道吗?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我看到很多C#、.net问题在这里使用反射解决。对我来说,其中很多看起来像是以牺牲良好设计(OOP)为代价来违反规则。许多解决方案看起来难以维护且“脚本化”。使用反射通常是一种好的做法吗?有没有只有反射(reflection)才能解决的事情?编辑:请举例说明反射是唯一好的解决方案。

大模型时代的下OCR,“CPU味道”更重了

经典技术OCR(光学字符识别),在大模型时代下要“变味”了。怎么说?我们都知道OCR这个技术在日常生活中已经普及开了,像各类文件、身份证、路标等识别,可以说统统都离不开它。而随着近几年大模型的不断发展,OCR也迎来了它的“新生机”——凭借自身可以将文本从图片、扫描文档或其他图像形式提取出来的看家本领,成为大语言模型的一个重要入口。在这个过程中,一个关键问题便是“好用才是硬道理”。过去人们会普遍认为,像OCR这种涉及图像预处理、字符分割、特征提取等步骤的技术,堆GPU肯定是首选嘛。不过朋友,有没有想过成本和部署的问题?还有一些场景甚至连GPU资源都没得可用的问题?这时又有朋友要说了,那CPU也不

代码的坏味道(二)——为什么建议使用模型来替换枚举?

为什么建议使用对象来替换枚举?在设计模型时,我们经常会使用枚举来定义类型,比如说,一个员工类Employee,他有职级,比如P6/P7。顺着这个思路,设计一个Level类型的枚举:classEmployee{privateStringname;/***薪水*/privateintsalary;/***工龄*/privateintworkAge;/***职级*/privateLevellevel;}enumLevel{P6,P7;}假设哪天悲催的打工人毕业了,需要计算赔偿金,简单算法赔偿金=工资*工龄classEmployeeService{publicintcalculateIndemnity

2022年的企业服务产业,我似乎嗅到了一点什么味道

(1)国外三把火一、基础设施安全大数据技术二、外部CRMSaaS营销-电子商务-金融销售管理-电话销售接待(客服)三、个人生产力工具SaaS拆解微软、Adobe、Autodesk的产品线你看以上这三把火,都不怎么涉及艰难的组织变革、流程变革、团队协同,要么是基础IT拿来直接用,要么是外部CRM做增量,要么是个人生产力工具自己玩。(2)并没有拆解ERP外部CRMSaaS厂商Salesforce的营收眼看就要超过SAP。Salesforce的市值早已超过SAP。SAP在2020年是成立快50年首次营收倒退。在2021年也仅仅是增长了1.84%。但是,很奇怪,拆解ERP在西方并不流行。经典的ERP四

代码坏味道(一)

GC优化1.防止大对象Buffer到内存中现象:当大包请求时,YGC耗时严重原因:默认情况下Zuul2并不会缓存请求体(DirectByteBuffer),也就意味着它会先发送接收到的请求Headers到后端服务,之后接收到请求体再继续发送到后端服务,发送请求体的时候,也不是组装为一个完整数据之后才发,而是接收到一部分,就转发一部分。如果需要缓存请求体:需要OverrideneedsBodyBuffered方法,com.netflix.zuul.netty.filter.BaseZuulFilterRunner#filter针对大包请求时,网关性能降低,体现在:网关操作会将请求体Buffer到