首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏java开发的那点事

    11-Netty 高性能架构设计-异步模型(ChannelFuture)

    异步模型 基本介绍 异步模型和同步模型相对, 当一个异步过程调用发出后, 调用者不能立刻得到结果, 实际处理这个调用的组件在完成后,通过状态, 通知和回调来通知调用者 Netty中的IO操作是异步的,包括 Connect等操作会简单的返回一个ChannelFuture 调用者不能立刻获得结果, 而是通过Future-listener机制, 用户可以方便的主动获取或者通过通知机制获得IO操作结果 Netty的异步模型是建立在

    72820编辑于 2022-02-18
  • 来自专栏ClearSeve

    C++11内存模型

    最近看了极客时间——《现代C++实战三十讲》中的内存模型与Atomic一节,感觉对C++的内存模型理解还不是很清楚,看了后面的参考文献以及看了一些好的博客,算是基本了解了,根据参考文献整合一下。 Thread-1: Thread-2: x = 100; // A std::cout << x; // B C++11 C++11的内存模型共有6种,分四类。其中一致性的减弱会伴随着性能的增强。 参考链接 【1】C++11中的内存模型上篇 – 内存模型基础 【2】C++11中的内存模型下篇 – C++11支持的几种内存模型 【3】理解 C++ 的 Memory Order 【4】如何理解 C++ 11 的六种 memory order 【5】《现代C++实战三十讲》中的内存模型与Atomic

    1.1K30编辑于 2022-02-11
  • 来自专栏LINUX阅码场

    深入理解C11C++11内存模型

    个人认为,内存模型表达为“内存顺序模型”可能更加贴切一点。 2011年发布的C11/C++11 ISO Standard为我们带来了memory order的支持, 引用C++11里的一段描述: The memory model means that C++ code C11/C++11使用memory order来描述memory model, 而用来联系memory order的是atomic变量, atomic操作可以用load()和release()语义来描述 C11/C++11内存模型 C/C++11标准中提供了6种memory order,来描述内存模型[6]: enum memory_order { memory_order_relaxed, - Frank Birbacher [ACCU 2017] C++11中的内存模型下篇 - C++11支持的几种内存模型 memory ordering, Gavin's blog c++11 内存模型解读

    3K30发布于 2020-06-04
  • 来自专栏编程一生

    系统设计11个考虑

    有了《系统架构的11条原则》,真正到设计阶段还有另外11个考虑。 系统正确性 考虑一:负负得正 假如我们看到某个代码,明显有逻辑错误,想随手改改。 这种问题要避免最好的时机是初版设计和开发阶段就避免。除了设计阶段逻辑要清晰,代码要做好审查、加上单体测试等测试手段外,可以将中间结果用debug日志打印。 考虑五:AKF扩展 AKF扩展立方体(Scalability Cube),是《架构即未来》一书中提出的可扩展模型,这个立方体有三个轴线,每个轴线描述扩展性的一个维度: X轴 —— 代表无差别的克隆服务和数据 在系统设计时,要考虑服务上线后,对于问题要自感知、自修复、自优化、自运维及自安全。 这么做一方面是设计问题,包括产品设计、数据库设计,还有一部分是安全问题:一个数值型的字段肯定比一个粗放的文本型字段被攻击的可能性小,起码不会传到后端之后被当成脚本被执行。

    65620编辑于 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种设计模式 & 描述 & 核心作用

    43310编辑于 2024-11-08
  • 来自专栏爱敲代码的猫

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

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

    54650发布于 2019-10-17
  • 来自专栏技术杂货店

    设计模式【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】-- 外观模式?

    50810编辑于 2022-01-19
  • 来自专栏程序大视界

    11种常用的设计模式

    ,深挖表象之下隐藏着的细节往往才是灵魂所在,诸如:算法和数据结构、框架、设计模式等,设计模式是一个虚幻的抽象的概念,好比建造房子时的设计理念方案一样,一个软件系统扩展性、可维护性以及稳定健壮性如何,很大程度上取决于设计模式 如下,介绍我们在日常开发中常用的11设计模式,这些设计模式都是非常经典,翻开源代码和一些开源框架经常会发现它们的踪影。 当一个抽象模型有两个方面,其中一个方面依赖于另一方面,这时用观察者模式可以将这两者封装在独立的对象中使它们各自独立地改变和复用。 13 — 总结 以上介绍的11设计模式在日常的开发工作中会经常使用到,也在很多开源框架如:Spring中就会看到很多的案例,灵活运用这些设计模式可以使我们的系统做到:易扩展、可维护性高、更稳健等。 ---- 参考文献:《大话设计模式》

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

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

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

    58630编辑于 2022-10-26
  • 来自专栏Lvshen的技术小屋

    设计模式11之装饰模式

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

    39410编辑于 2022-05-05
  • 来自专栏悠扬前奏的博客

    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更改的日志(例如,对数据库表的更改)。

    85840发布于 2019-06-19
  • 来自专栏技术客栈

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

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

    36110编辑于 2024-07-25
  • 来自专栏深蓝居

    PowerDesigner模型设计

    一般来说在进行数据库建模时最常用的就是概念模型和物理模型,现在在PD15中增加了逻辑数据模型和多维数据模型。另外的数据流图、数据迁移模型和UML类图就暂时不研究了。 根据概念模型可以生成逻辑模型,逻辑模型是概念模型的延伸,表示概念之间的逻辑次序,是一个属于方法层次的模型。 逻辑模型介于概念模型和物理模型之间,具有物理模型方面的特性,在概念模型中的多对多关系,在逻辑模型中将会以增加中间实体的一对多关系的方式来实现。 逻辑模型主要是使得整个概念模型更易于理解,同时又不依赖于具体的数据库实现,使用逻辑模型可以生成针对具体数据库管理系统的物理模型。逻辑模型并不是在整个步骤中必须的,可以直接通过概念模型来生成物理模型。 这里只是简单的介绍了下数据库建模的过程,接下来我会对每一个步骤每一个模型进行详细的讲解。 在PowerDesigner中设计概念模型

    97840编辑于 2022-06-16
  • 来自专栏机器学习炼丹之旅

    CS231n:11 生成模型

    生成模型 生成模型的定义就是给定一个训练数据,然后生成一些新的样本,保证和所给的训练集有一样的分布。 生成模型主要有以下这些应用场景: 生成逼真的艺术品图片,拥有超高的分辨率,着色等。 时间序列数据的生成模型可以用于仿真和规划(在强化学习中应用)。 训练生成模型还可以使隐式表征的推断成为有用的通用特征。 需要一提的是,可以将生成模型分成两大类,即隐式密度模型和显式密度模型,显式密度模型会显式地给出一个分布 使其和输入数据的分布相同。 而隐式密度模型则不会给出一个分布,而是训练一个模型从输入数据中采样,并直接输出样本,而不用显式地给出分布的表达式。 )获得一个高斯分布的参数 ,这其实就对应了混合高斯模型中的一个高斯分布组件,也就是说,由于 是一个连续值,所以理论上这里的混合高斯模型中存在无限个高斯组件。

    85210编辑于 2022-08-08
  • 来自专栏体验主义

    设计常用模型分析

    在做不同菜肴的时候,我们需要不同的菜谱来指引;而在不同的设计阶段,设计师也需要不同的设计模型/方法,让我们更灵活的做设计分析与输出。 下面从接到项目需求 > 体验迭代优化阶段,笔者将为大家详细讲解以下 5 种设计模型,并配出具体实践的案例,希望对大家有所启发。 ? 模型一:SWOT 模型 1. 概念介绍 相比前一个设计冲刺模型,GUCDR 模型设计过程中的实用性更强,能让你快速用起来,帮你系统性梳理信息;在实际工作中,只要能够回答画布中的每个点,即可形成完整的设计推演过程,让设计思路逐渐清晰起来 模型四:双钻模型 1. 概念说明 双钻设计模型由英国设计协会提出,该设计模型的核心是:发现正确的问题、发现正确的解决方案。 双钻模型是一个结构化的设计方法,被很多设计师喜爱和使用。 下图是曾经在一个设计讲座中,滴滴 CDX 一位设计师的分享,她把双钻模型利用到设计的研究和输出阶段,个人感觉此模型此刻的使用场景也很贴切;不仅仅是在完整的一个项目中,在单一的某个阶段双钻模型也是理念很好的承载容器

    1.8K30发布于 2020-04-08
  • 来自专栏Wooola的技术博客

    领域模型设计实战

    二、领域模型设计 在分析出本次方案的领域模型后,我们继续进行下一步工作领域模型设计。 在上一阶段的分析过程中,我们已经明确了本次的核心服务是计费和计税。我们先基于计费进行相关的设计工作。 缺少域的划分,各个领域模型的职责边界不能很好的描述清楚。 第三组 领域模型设计可以满足本次需求,能够处理计费和计税问题。 基于本次需求可以满足,针对后续业务的扩展设计有所不足。 收获的感悟: 1、 挺有意思的活动,从业务的角度来分析需求,提取实体,构建领域模型,再从业务模型映射到软件设计,跳出工程师的身份定位,从系统分析员的视角用建模描述需求,从架构师的维度来用设计匹配建模和活动 针对领域建模知识的感悟: 4、 领域模型设计,不是直接的系统设计.需要清楚了解概念之间的差异。 5、 领域模型不是表的关系图,是对业务的高度抽象,将业务中的实体抽象出来,帮助我们理解和分析业务。 6、 模型设计要考虑清楚边界划分,模型归属的域范围,不要将不同范围的属性耦合到一个模型里。 7、 一个好的领域模式设计是可以指导后续详细分析展开以及编码的。

    1.1K30发布于 2021-07-07
  • 来自专栏hui

    Django教程 —— 模型设计

    模型设计 我们一般操作数据库的时候都是通过写sql语句,那么能不能不写sql语句就可以操作数据库呢? 可以利用ORM框架。 使用Django进行数据库开发的步骤如下: 在models.py中定义模型类 迁移 通过类和对象完成数据增删改查操作 Django模型设计 在上篇文章中我们创建了一个图书管理系统(BMSTest),并部署了一个 我们接着这个项目来介绍Django进行数据库开发过程,模型设计。 1、定义模型模型类定义在models.py文件中,继承自models.Model类。 日期类型) 出版日期 模型类的设计 根据设计,在models.py中定义模型类如下: # -*- coding:utf-8 -*- """ @Author :Hui @Desc :{模型设计模块 继承models.Model的类的设计都会对应一张数据库表。 2、迁移 迁移前目录结构如下图: 迁移由两步完成: 1.生成迁移文件:根据模型类生成创建表的迁移文件。

    1.3K20发布于 2021-09-29
  • 来自专栏Lansonli技术博客

    Django设计模型1.2

    设计介绍 本示例完成“图书-英雄”信息的维护,需要存储两种数据:图书、英雄 图书表结构设计: 表名:BookInfo 图书名称:btitle 图书发布时间:bpub_date 英雄表结构设计: SQLite数据库 创建应用 在一个项目中可以创建一到多个应用,每个应用进行一种业务处理 创建应用的命令: python manage.py startapp booktest 应用的目录结构如下图 定义模型类 有一个数据表,就有一个模型类与之对应 打开models.py文件,定义模型类 引入包from django.db import models 模型类继承自models.Model类 说明:不需要定义主键列 hBook = models.ForeignKey('BookInfo') def _ _str_ _(self): return "%d" % self.pk 生成数据表 激活模型 :编辑settings.py文件,将booktest应用加入到installed_apps中 生成迁移文件:根据模型类生成sql语句 python manage.py migrate 测试数据操作 进入

    85810发布于 2021-10-09
  • 来自专栏hui

    Django教程 —— 模型设计

    模型设计 我们一般操作数据库的时候都是通过写sql语句,那么能不能不写sql语句就可以操作数据库呢? 可以利用ORM框架。 使用Django进行数据库开发的步骤如下: 在models.py中定义模型类 迁移 通过类和对象完成数据增删改查操作 Django模型设计 在上篇文章中我们创建了一个图书管理系统(BMSTest), 我们接着这个项目来介绍Django进行数据库开发过程,模型设计。 1、定义模型模型类定义在models.py文件中,继承自models.Model类。 日期类型) 出版日期 模型类的设计 根据设计,在models.py中定义模型类如下: # -*- coding:utf-8 -*- """ @Author :Hui @Desc :{模型设计模块 继承models.Model的类的设计都会对应一张数据库表。 2、迁移 迁移前目录结构如下图: 迁移由两步完成: 1.生成迁移文件:根据模型类生成创建表的迁移文件。

    1.6K10发布于 2020-11-06
  • 来自专栏无原型不设计

    从iOS 11看怎样设计APP图标

    苹果WWDC2017开发者大会已经尘埃落定,除了新产品的发布,iOS 11也正式亮相。新系统中,地图、App Store、时钟、相机、联系人等等原生应用都换了新的图标。 此次图标的变化势必也会激发下一个图标设计的潮流,如何设计图标又将成为一个新的热门话题。 最新版的iOS 11,相比于iOS 10,新系统在外观上的变化并不明显,已经没有几年前苹果从"拟物设计"到"扁平设计"的巨大视觉冲击感,但在图标设计上做了很多细节修改。 对设计师来说,它不仅仅是原型设计工具,也是一个图标资源库,非常方便。 ? 总结 苹果新系统图标的变化将如何影响设计界的风向,还不可预测,但对设计师们来说,最主要的还是打好基础。 多掌握如何设计好图标的理论基础和如何使用设计工具,多积累一些图标素材或者掌握一些像Mockplus这样自带图标库的设计工具,对自己的设计水平有更高层次的提升才是最重要的。

    2.2K30发布于 2018-03-16
领券