首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏云优惠券

    BSL编程语言 —— 系统化程序设计

    如果你第一次使用DrRacket,打开后需要选择Beginning Student Language (BSL)

    1.7K10发布于 2019-06-20
  • 来自专栏小工匠聊架构

    设计模式 - 漫谈软件编程背后的系统化思维

    Unix 设计哲学,主张组合设计,而不是单体设计;主张使用集体智慧,而不是某个人的特殊智慧。 对编程的启示: 启示一:保持简单清晰性,能提升代码质量 代码之间的相互影响越多,软件越复杂。 自定义环境变量 比如,Java 编译环境有很多版本,你可能用到的有版本 8、11 和 14,通过自定义 JAVA_HOME 环境变量,你就可以快速启用不同的编译环境。 这充分说明了 Unix 哲学的组合思维:把软件设计成独立组件并能随意地组合,才能真正应对更多变化的需求。 然而,在实际工作中,你很多时候可能都只是在做“定制功能驱动”式的程序设计。 很多时候看上去我们是一直在设计不同的程序,实际上对于真正多变的需求,我们并没有做到组合设计,只是通过不断地修改代码来掩饰烂设计罢了。 要想做到组合设计,Unix 哲学其实给我们提供了两个解决思路。 ---- 启示三:重拾数据思维,重构优化程序设计 再高大上的架构设计,如果系统对数据的组织是混乱的,那么可以轻松预见随着系统的演进,系统必然会变得越来越臃肿和不可控。

    47240发布于 2021-08-17
  • 来自专栏系统信任增长范式

    从招商、SaaS 到本地生意:信任,正在被系统化设计

    五、本地生意:从“位置与促销”,到“行为可见性”在本地生活场景中,信任的系统化尤为直观。 七、系统化设计,正在取代个人表达这也解释了一个反直觉现象:越来越多“不擅长表达”的企业,反而获得了更稳定的增长。

    11010编辑于 2026-01-09
  • 来自专栏编程一生

    系统设计11个考虑

    有了《系统架构的11条原则》,真正到设计阶段还有另外11个考虑。 系统正确性 考虑一:负负得正 假如我们看到某个代码,明显有逻辑错误,想随手改改。 这种问题要避免最好的时机是初版设计和开发阶段就避免。除了设计阶段逻辑要清晰,代码要做好审查、加上单体测试等测试手段外,可以将中间结果用debug日志打印。 考虑二:终态设计 在分布式系统中,由于系统是分布在不同机器上的。还可能有一种状态叫:超时。成功、失败和超时是分布式系统调用的三态。 在系统设计时,要考虑服务上线后,对于问题要自感知、自修复、自优化、自运维及自安全。 这么做一方面是设计问题,包括产品设计、数据库设计,还有一部分是安全问题:一个数值型的字段肯定比一个粗放的文本型字段被攻击的可能性小,起码不会传到后端之后被当成脚本被执行。

    55720编辑于 2022-05-06
  • 11.组合模式设计思想

    11.组合模式设计思想目录介绍01.组合模式基础1.1 组合模式由来1.2 组合模式定义1.3 组合模式场景1.4 组合模式思考1.5 解决的问题02.组合模式实现2.1 罗列一个场景2.2 组合结构2.3 文章还探讨了透明式和安全式组合模式的区别,并提供了设计建议和适用场景。适合初学者和有一定经验的开发者阅读。 5.5 使用建议说明在设计时,优先使用接口而非具体类,以提高系统的灵活性和可维护性。更多内容适用于需要处理复杂树形结构的场景,如文件系统、组织结构等。 六大设计原则,23种设计模式,设计模式案例,面向对象思想 设计模式 Java进阶 数据设计和原理,面向对象核心思想,IO,异常,线程和并发,JVM Android23种设计模式23种设计模式 & 描述 & 核心作用

    32210编辑于 2024-11-08
  • 来自专栏程序大视界

    11种常用的设计模式

    ,深挖表象之下隐藏着的细节往往才是灵魂所在,诸如:算法和数据结构、框架、设计模式等,设计模式是一个虚幻的抽象的概念,好比建造房子时的设计理念方案一样,一个软件系统扩展性、可维护性以及稳定健壮性如何,很大程度上取决于设计模式 如下,介绍我们在日常开发中常用的11设计模式,这些设计模式都是非常经典,翻开源代码和一些开源框架经常会发现它们的踪影。 11 — 观察者模式 基本概念:定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。 13 — 总结 以上介绍的11设计模式在日常的开发工作中会经常使用到,也在很多开源框架如:Spring中就会看到很多的案例,灵活运用这些设计模式可以使我们的系统做到:易扩展、可维护性高、更稳健等。 ---- 参考文献:《大话设计模式》

    73510编辑于 2022-12-19
  • 来自专栏JuneBao

    设计模式 11】抽象工厂模式

    当抽象工厂模式中每一个具体工厂类只创建一个产品对象,也就是只存在一个产品等级结构时,抽象工厂模式退化成工厂方法模式;当工厂方法模式中抽象工厂与具体工厂合并,提供一个统一的工厂来创建产品对象,并将创建对象的工厂方法设计为静态方法时 另外,应用抽象工厂模式可以实现高内聚低耦合的设计目的,因此抽象工厂模式得到了广泛的应用。 当一个产品族中的多个对象被设计成一起工作时,它能够保证客户端始终只使用同一个产品族中的对象。 这对一些需要根据当前环境来决定其行为的软件系统来说,是一种非常实用的设计模式。 增加新的具体工厂和产品族很方便,无须修改已有系统,符合“开闭原则”。

    47030编辑于 2022-10-26
  • 来自专栏技术杂货店

    设计模式【11】-- 搞定组合模式

    设计模式系列: 设计模式【1】-- 单例模式到底几种写法? 设计模式【1.1】-- 你想如何破坏单例模式? 设计模式【1.2】-- 枚举式单例有那么好用么? 设计模式【1.3】-- 为什么饿汉式单例是线程安全的? 设计模式【2】-- 简单工厂模式了解一下? 设计模式【2.1】-- 简单工厂模式怎么演变成工厂方法模式? 设计模式【2.2】-- 工厂模式怎么演变成抽象工厂模式? 设计模式【3.1】-- 浅谈代理模式之静态、动态、cglib代理 设计模式【3.2】-- JDK动态代理源码分析有多香? 设计模式【3.3】-- CGLIB动态代理源码解读 设计模式【4】-- 建造者模式详解 设计模式【5】-- 原型模式 设计模式【6.1】-- 初探适配器模式 设计模式【6.2】-- 再聊聊适配器模式 设计模式 【7】-- 探索一下桥接模式 设计模式【8】-- 手工耿教我写装饰器模式 设计模式【9】-- 外观模式?

    40610编辑于 2022-01-19
  • 来自专栏Lvshen的技术小屋

    设计模式11之装饰模式

    好的设计方式是不改变轮子的结构,动态的扩展功能。装饰模式就是这样的一种设计方式。

    30210编辑于 2022-05-05
  • 来自专栏爱敲代码的猫

    java设计模式(11)-组合模式

    缺点: · 使得设计更加复杂。客户端需要花更多时间理清类之间的层次关系。(这个是几乎所有设计模式所面临的问题)。 使用场景: 将多个对象组合在一起进行操作,常用于表示树形结构中,例如二叉树等。

    49850发布于 2019-10-17
  • 来自专栏AI SPPECH

    141:AI产品合规与伦理设计——法律风险防控的系统化方案

    目录 本节为你提供的核心技术价值 1. 2026年AI合规 landscape:从被动应对到主动设计 1.1 全球AI监管趋势 1.2 合规风险的业务影响 1.3 合规驱动的产品设计理念 2. AI产品合规框架设计 2.1 合规设计原则 2.2 合规架构层次 2.3 合规风险评估模型 3. 伦理治理体系构建 3.1 伦理委员会设立 3.2 伦理风险评估框架 3.3 伦理准则制定 4. 传统的合规模式是"先开发后合规",而2026年的最佳实践是"合规驱动设计"(Compliance by Design)。 这种理念要求在产品设计初期就将合规要求融入技术架构,实现从被动应对到主动设计的转变。 2. AI产品合规框架设计 2.1 合规设计原则 隐私保护优先:数据最小化、目的限制、安全存储 透明度与可解释性:决策过程可追溯、结果可解释 公平性与非歧视:算法偏见检测与缓解 安全性与鲁棒性:对抗攻击防护、

    4300编辑于 2026-04-18
  • 来自专栏图南科技

    系统化服务构建-调用链管理

    借助于 HTTP 等调用组件的超时参数设置 第二种方式,服务器(服务方)检测时间差,客户端(请求方)请求时间与服务器(服务方)时间的差值与超时时间做对比 “当接口查询不到数据时,接口 code 应该如何设计

    1.8K10发布于 2020-02-20
  • 来自专栏技术客栈

    Java设计模式(11)组合模式

    前言 在Java开发中,设计模式是常用的一种编码方式,合理使用设计模式可以帮助开发人员更快地编写出高效、可靠和可维护的代码。 本期将撰写一个关于设计模式的系列文章,总共23种设计模式将以一篇一篇文章讲解,代码笔记已开源至:Gitee点击跳转。在上一篇《Java设计模式(10)代理模式》文章中,我们介绍了代理模式。 组合模式 组合模式是一种结构型设计模式,它将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式使得客户端对单个对象和组合对象的使用具有一致性。

    26410编辑于 2024-07-25
  • 来自专栏悠扬前奏的博客

    Kafka-11.设计-日志压缩

    日志压缩可以保证Kafka总是最少保留单个主题分区的数据日志中的每个消息的key的最后的已知值。(Log compaction ensures that Kafka will always retain at least the last known value for each message key within the log of data for a single topic partition. )它address了用例和处理方案,例如应用程序崩溃或者系统故障后的状态恢复,或在运行维护期间重启应用后如何加载缓存。让我们更详细的介绍这些情况,然后描述是如何压缩的: 到目前为止,我们仅描述了简单一些的数据保留方法,其中旧的日志数据在固定时间段或者当日志达到某个预定大小时被丢弃。这适用于时间事件数据,例如记录独立的日志记录。但是,一类重要的数据流是keyed更改的日志(例如,对数据库表的更改)。

    74440发布于 2019-06-19
  • 来自专栏玉树芝兰

    如何免费系统化入门数据科学?

    题图:Photo by Myriam Jessier[1] on Unsplash[2]

    55850编辑于 2023-01-18
  • 嵌入式软件可靠性:从代码细节到系统化设计的工程实践

    理解编译器的特性,确保其生成的代码与设计意图完全一致,是可靠性保障的第一步。二、代码设计:不仅仅是风格问题编程规范对可靠性的影响远不止于可读性。 硬件特性适配:理解所用存储器的块擦除、写入寿命等特性,设计均衡的写入策略,避免集中在同一区域导致过早失效。五、人机交互与报警:构建安全的最后防线人是系统的一部分,可靠的设计必须考虑人为误操作。 六、从设计到验证:功能安全与软件DFMEA真正的可靠性需要贯穿开发全流程的体系保障。 功能安全设计:遵循如ISO 26262(汽车)或IEC 61508(工业)等标准,从软件架构、详细设计到代码实现,每个阶段都有明确的安全措施和可追溯性要求。 软件DFMEA:在设计阶段主动分析潜在的失效模式、原因及影响。与硬件FMEA协同,评估软件失效率特性,识别单点故障,并提前设计容错或保护机制。

    19610编辑于 2026-03-17
  • 来自专栏游戏交互自研室

    交互系统化研究(二)玩家动机

    | 导语:本文为交互系统化研究第二篇,将从动机的分类及其在界面中的应用进行分析,并介绍不同动机间的联系与转化方式 动机的分类 动机间的联系与转化 以是否受自身意识决定的程度,可将动机拆解为无动机、 使用方法及注意点: 挑战难度与玩家能力相匹配:”心流“中的必要三条件之一,是”挑战/能力比率“的设计,需游戏策划多年的实践经验才能有所建树,同样也非交互设计师的所长,在此不做详解。 *新手引导为不同能力玩家提供选择方案,增加玩家的自主性 利用好奇心理:好奇心是自主学习的强大动力,被大量应用于界面设计之中。与可预期的结果相比,玩家更喜欢处于未知状态的刺激感。 *互惠是促进社交的惯用手段之一 *关系量化的设计符合现实世界对于人际关系的认知 实际使用上,游戏系统中的动机一般是复合存在的。

    89720编辑于 2023-01-14
  • 来自专栏图南科技

    系统化服务构建-软件工程分层

    图1-go项目文件.png 图 1 是《极客时间》一个微课程中的一张 Go 项目工程图,印证了我这些年开发设计中对于工程创建的一些理念想法,叙述如下。 为什么在 PHP 从业者眼中 Model 就代表着数据表,说白了就是 PHP 的项目业务简单到不足以启用领域模型相关的设计,进而我们可以思考 PHP 数据结构中惯用数组而非属性也是同样的道理。 分层设计 ? 图2-解决方案结构-01.png 分层设计是老话题了,软件设计的核心就是自上而下,分而治之。

    76110发布于 2019-12-30
  • 来自专栏游戏交互自研室

    交互系统化研究(一)玩家类型分析

    本文作为交互系统化研究的开篇,通过基础的游戏构建模块,以交互设计师的视角逐一分析,为日常界面设计工作提供一些参考。 *此阶段人群属于认知最初阶段,多以简易手势及图形化语言设计游戏操作 儿童期(7-9岁):阅读能力提升,能够解决一些简单问题,开始有一定的自我意识。 但过于强调胜负感受会造成失败玩家的流失,这点在界面设计时需谨慎对待。 *女性向游戏充斥着大量文字相关玩法,对剧情内容的设计更加考究 3.2.5 颜色分辨能力:颜色方面女性的分辨能力更佳,能够分辨出更多的色彩。 - 感谢阅读 - 参考书目: 《游戏艺术设计》第二版 《自私的基因》 《游戏设计》 《认知心理学》 《猿形毕露》

    1.2K20编辑于 2022-11-11
  • AI 编程必备 – 零基础 系统化学Python

    在 Python 编程中,运算符是实现数据计算、条件判断和逻辑处理的核心工具,就像数学中的 “加减乘除” 一样,是构建代码逻辑的基础。本文将聚焦最常用的算术运算符、比较运算符和逻辑运算符,用无代码的通俗方式解析它们的用法、适用场景,以及运算时的优先级规则,帮助新手快速掌握运算符的核心知识。​

    1K10编辑于 2025-09-15
领券