程序员必知的 7 种软件架构模式 (mp.weixin.qq.com)

【简介】

一种模式就是特定上下文的问题的一种解决方案。
然而,很多开发者至今还对各种软件架构模式之间的差别搞不清,甚至对其所知甚少。
大体上,主要有下面这7种架构模式:

点击查看全文 >>

@code小生 2021-04-05 13:39分享 / 0个评论
赞过的人: IT技术博客大学习 code小生
要不要再学学下面的文章?
如何提升你的能力?给年轻程序员的几条建议 (mp.weixin.qq.com)
一转眼工作已有8年,前两天公司一位初入职场的同事希望我给一些建议与经验。我觉得这个话题很有价值,这里以个人的想法与经历写成此文,希望给年轻的开发者们一些启发。
by @code小生 2021-04-11 13:44 分享 查看详情
程序员,你还没有软技能吗?难怪你不幸福 (mp.weixin.qq.com)
程序员一向对于“硬技能”——即自身在专业方向上的能力——较为关注,工作环境而言更多的是与计算机打交道,专注于输出更高水平的代码,对于“软技能”提升的关注度不够造成了大家对程序员的一些误解,并且程序员在面对不断更新的计算机技术知识和复杂的职业关系中,会有些茫然不知所措。本次演讲将以程序员职业发展的三大阶段和身边案例来讲述“软技能”的作用和需要重点提升的软技能,从而使程序员的工作生活更加幸福。
by @code小生 2021-04-11 13:41 分享 查看详情
优酷 iOS 插件化页面架构方法 (mp.weixin.qq.com)
随着业务不停地迭代,优酷 APP 用于分发视频资源的 UI 控件越写越多,也越来越复杂,并且同时相似相近的代码也非常多。仔细研究之后,发现是很多耦合导致的问题:
1)布局代码耦合数据模型,相似布局组件各自一套布局代码;
2)数据模型、UIView 继承关系太长,改动时牵一发而动全身,为保险计不得不自立门户;
3)依赖引入,一个组件在另一 bundle 下使用时将引入连串依赖。
有鉴于此,我们需要寻找一种能够进一步降低通用能力接入门槛,提升单个组件的开发效率;进一步降低组件与页面的耦合,建立各类组件的在不同页面的通用投放能力的架构。
by @code小生 2021-03-28 11:29 分享 查看详情
优酷 iOS 插件化页面架构方法 (mp.weixin.qq.com)
随着业务不停地迭代,优酷 APP 用于分发视频资源的 UI 控件越写越多,也越来越复杂,并且同时相似相近的代码也非常多。仔细研究之后,发现是很多耦合导致的问题:
by @code小生 2021-03-21 23:29 分享 查看详情
硬件安全:ARM体系架构的安全特性演进 (www.secrss.com)
安全从业者脑中有一系列的安全名词,比如安全三要素Confidenciality 、Integrity、Availability,比如硬件安全品牌TPM、TrustZone、SGX、Titan-M,比如软件层面的安全能力Isolation、Access Control,又比如漏洞缓解措施DEP、ASLR、CFI。

从这些名词可以看出,软件最基础的安全能力都得自于硬件的支持,如果一个硬件没有特权级别,那就不要期望能实现什么安全能力了(没有MPU,基本的隔离都没办法做了)。

硬件能力如同原材料,能做成什么样的美味佳肴就靠厨师(工程师)的本领了。

因此在考虑未来产品安全的发展趋势时,硬件安全的未来演进是非常值得参考的。硬件安全系列主要讲述下ARM指令集的演进、Intel SGX解决方案以及苹果和Google硬件安全芯片的应用。本篇文章就从我们最熟悉的ARM开始讲起。
by @shengting 2021-03-19 17:11 分享 查看详情
基于用户画像大数据的电商防刷架构 (www.iyunying.org)
“羊毛党”的行为距离欺诈只有一步之遥,他们的存在严重破环了活动的目的,侵占了活动的资源,使得正常的用户享受不到活动的直接好处。
by @shengting 2021-03-19 17:02 分享 查看详情
软件测试人员该何去何从? (insights.thoughtworks.cn)
QA能够随着年龄和工龄的增长,让自己的能力也能不断的提高,才能让测试工作有更多价值的体现。因此,能力提升至关重要!
by @ThoughtWorks 2021-03-19 09:47 分享 查看详情
提升软件交付效能——初探“按需发布” (insights.thoughtworks.cn)
在精益思想的指导下,团队寻找开发流程中的阻碍点,并从各个层面做出调整策略。在业务侧,分析哪些需求可以做到按需发布,哪些需求无法做到,设定适合团队的按需发布标准,并调整迭代工作量。在开发侧,考虑数据的兼容性,部署方式,以及高频率部署所带来的环境准备问题。在测试侧,提高自动化测试的运行速度和主流程的覆盖范围,并利用平台自身的自动化测试覆盖率统计功能,查缺补漏。
by @ThoughtWorks 2021-03-17 10:34 分享 查看详情
软件匠艺 (teobler.com)
为了提高软件开发的水准,并重新明确敏捷最初的目标,一群开发人员于 2008 年 11 月聚集到芝加哥,发起了一项新的运动:软件匠艺(Software Craftsmanship)。如同 2001 年的敏捷峰会一样,2008 年的会议达成了一套核心价值观,并在《敏捷宣言》的基础上提出了一个新的宣言。
by @Teobler 2021-03-16 12:53 分享 查看详情
阿里平头哥成功将 Android 10 移植到 RISC-V 架构上 (mp.weixin.qq.com)
Google的Android操作系统仅支持少数几种指令集架构(ISA)系列,包括ARM和x86。如今,运行Android的绝大多数智能手机,平板电脑,电视和智能手表都具有基于ARM的芯片组设计,因为英特尔早就放弃了其手机CPU,而NDK 17版本不再支持MIPS。为了基于开放的RISC-V ISA在硬件上编译Android,一些开发团队正在努力在RISC-V硬件上运行AOSP。阿里巴巴专门从事半导体业务的企业实体平头哥(T-Head)率先成功将Android 10移植到其内部RISC-V硬件中。
by @code小生 2021-03-14 12:48 分享 查看详情