漫谈专题

漫谈设计模式 [12]:模板方法模式

引导性开场 菜鸟:老大,我最近在做一个项目,遇到了点麻烦。我们有很多相似的操作流程,但每个流程的细节又有些不同。我写了很多重复的代码,感觉很乱。你有啥好办法吗? 老鸟:嗯,听起来你遇到了典型的代码复用和维护问题。你有没有听说过“模板方法模式”? 菜鸟:模板方法模式?没听过。这是什么? 老鸟:简单来说,模板方法模式让你在一个方法中定义一个算法的骨架,而将一些步骤的实现延迟到子类中。这样,你可

漫谈设计模式 [9]:外观模式

引导性开场 菜鸟:老鸟,我最近在做一个项目,感觉代码越来越复杂,我都快看不懂了。尤其是有好几个子系统,它们之间的调用关系让我头疼。 老鸟:复杂的代码确实让人头疼。你有没有考虑过使用设计模式来简化你的代码结构? 菜鸟:设计模式?我听说过一些,但不太了解。你觉得我应该用哪个模式呢? 老鸟:听起来你的问题可能适合用**外观模式(Facade Pattern)**来解决。我们可以一起探讨一下。

漫谈设计模式 [6]:适配器模式

引导性开场 菜鸟:老鸟,我最近在项目中遇到一个问题,我们的系统需要集成一个新的第三方库,但这个库的接口和我们现有的代码完全不兼容。我该怎么办? 老鸟:这是个常见的问题,很多开发者都会遇到这种情况。你有没有听说过适配器模式? 菜鸟:适配器模式?没有,能详细说说吗? 老鸟:当然可以!这就是我们今天要讨论的主题。适配器模式是一个设计模式,可以帮助我们解决你现在遇到的问题。 渐进式介绍概念 老

漫谈数仓五重奏

第一篇:漫谈数仓 什么是数据仓库?以下是百度百科的定义: 数据仓库,英文名称为Data Warehouse,可简写为DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。数据仓库的特征在于面向主题、集成性、稳定性和时变性。 从传统

ExoPlayer 漫谈之Sonic调整音量

提一个问题:如何在播放视频的时候调整声音的大小? 我们使用Android手机播放视频的时候,发现声音大了,我们手动调低音量;发现声音小了,我们手动调高音量。 这个过程中,都要依赖手动,如果你在不断地刷短视频的时候,如果需要用户不断地手动调整音量键,那这个体验是不能忍受的。 这对我们提了一个要求:我们能在解码音频流的时候通过矩阵运算调整音频原始数据的大小,达到调整音量的目的? 这个思路是可行

漫谈Deep PCA与PCANet

又到了无聊的写博客的时间了,由于电脑在跑程序,目前无事可做,我觉得把昨天我看的一些论文方面的知识拿出来和大家分享一下。   美其名曰我是在研究”深度学习“,不过由于本人是穷屌丝一个,买不起GPU(当然明年我准备入手一块显卡来玩玩),因此这半年我找了个深度学习中的一个”便宜“的方向——PCANet。   首先给出PCANet的原始文献《PCANet:A Simple Deep Lear

设计模式2个黄鹂鸣翠柳-《分析模式》漫谈23

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 “Analysis Patterns”的第一章有这么一句: The "Gang of Four" book has had much more influence in software patterns than Alexander's work, and three out of those fo

漫谈程序设计之--阅读

如今编码已经一年多,和朋友闲聊时谈到我想写自己的心得体会,不会多,只是有空就随手记录,遂成博文。其中不乏有我个人纰漏之观点。阅读的人看一半信一半,还有再怀疑我一半就行。 搞技术的人其实是很很幸苦的,因为光会编码不行,还得懂得设计思维,以及很多底层的知识。阅读是最好的营养品。所以我会把自己阅读过的书罗列起来,让新来者能够从中获取最适合自己的信息。l 《c++程序设计原理与

漫谈递归思想

原文转自:http://www.cnblogs.com/BLoodMaster/archive/2010/03/23/1692641.html 漫谈递归思想 编程里面估计最让人摸不着头脑的基本算法就是递归了。很多时候我们看明白一个复杂的递归都有点费时间,尤其对模型所描述的问题概念不清的时候,想要自己设计一个递归那么就更是有难度了。今天我也花费了半个小时来搞明白二叉树的平衡性的递归模型,首先我不

模式识别技术漫谈(1)

------引言     在人工智能技术(Artificial Intelligence)领域中,模式识别(Pattern Recognition)技术也许是最具有挑战性的一门技术了,模式识别有时又被称为分类技术,因为模式识别说到底就是对数据进行分类。说到识别,最为常

LLM漫谈(七)| 使用PyTorch从零构建LLM

LLM是最流行AI聊天机器人的核心基础,比如ChatGPT、Gemini、MetaAI、Mistral AI等。在每一个LLM,有个核心架构:Transformer。我们将首先根据著名的论文“Attention is all you need”-https://arxiv.org/abs/1706.03762 来构建Transformer架构。         首先,我们

[30期] 贫嘴漫谈时间

时间的珍贵自是不用说了,因为有一句悲观的话说“人从一生下来,就开始慢慢走进坟墓”。想想也是,时间总是在不经意间就悄悄地溜走了。感觉不久之前才刚迈进大学的校门,现在就开始准备找工作了,相信这一点大家都有同感。三、四年的时间一晃而过,想想人生又有几个三、四年呢?有时候真的感觉浪费时间是一种罪,惩戒你的就是当你觉察时,发自内心的悔恨。那是一种很痛苦的感觉。言归正传,时间既然过得这么快,那怎么才能从分利用

SwiftUI 6.0(iOS 18)新容器视图修改器漫谈

概览 本届 WWDC 2024 观影正如火如荼的进行中,一片鸟语花香、枝繁叶茂的苹果树上不时结出几颗令人垂涎欲滴的美味苹果让秃头码农们欲罢不能。 如您所愿,在界面布局“利器” SwiftUI 这根蔓藤也长出不少喜人的果实,其中在 iOS 18.0 中新添加的容器视图修改器大家一定不能错过。 在本篇博文中,您将学到如下内容: 概览1. 探囊取物:获取容器子视图2. 聚沙成塔:重新

《分析模式》漫谈03- Unified Method并不是RUP

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 在《分析模式》第2章 ,Fowler提到了“Rational Software's Unified Method”, 而且给出了引用的参考文献,是Rational公司的一份文档: 2004中译本的翻译如下: 翻译为“Rational软件的统一方法”是正确的。 2020中译本的翻

[图解]《分析模式》漫谈04-Martin Fowler叫的是哪家的士

1 00:00:01,230 --> 00:00:04,190 今天我们来探讨一个有趣的话题 2 00:00:05,130 --> 00:00:08,350 Martin Fowler,他叫的是哪一家的的士 3 00:00:11,980 --> 00:00:15,240 第2章这里,Martin Fowler写 4 00:00:15,250 --> 00:00:18,550 他说他经常叫To

漫谈中国历史:《米小圈漫画历史》带大家领略古今变迁

在漫画的世界里,历史可以是生动有趣的,就像《米小圈漫画历史》展现的那样。这一套以米小圈形象为主的原创幽默中国历史漫画书,不仅让读者在娱乐中学习,更是一次穿越历史长河的奇妙冒险。在这篇文章中,我们将跟随米小圈和伙伴们的足迹,深入探索中国古代文明的奥秘,感受历史的魅力,让我们一同领略古今交融的壮丽画卷。 漫画中的历史触觉 《米小圈漫画历史》以其独特的视角和幽默的笔法,将中国古代历史呈现

[图解]《分析模式》漫谈03-Party是什么

1 00:00:00,790 --> 00:00:03,930 今天我们来看一下,Party是什么 2 00:00:05,710 --> 00:00:07,470 当然我们这里说的不是政治的 3 00:00:07,880 --> 00:00:08,350 Party 4 00:00:09,230 --> 00:00:11,110 是《分析模式》里面的一个用词 5 00:00:14,860

Maximum function nesting level of '100' reached, aborting!--漫谈递归:PHP里的尾递归及其优化

Maximum function nesting level of '100' reached, aborting! 不同的语言对尾递归的支持都有所不同,编译器的优化也不尽相同。我们之前看了C语言的尾递归,那么在PHP里又是如何的呢? PHP对尾递归没有优化效果 先来看下实验。 01<?php 02function factorial($n) 03{ 04    i

WPF 基础到企业应用系列3——WPF开发漫谈

1.开篇前言      首先很高兴这个系列能得到大家的关注和支持,基于对大家负责和对自己负责的态度,我会不断努力写好这个系列,分享自己的微薄技术和经验,希望在帮助别人的同时也不断提升自己。由于这篇文章稍多,所以读者花的时间长了一些,也希望大家能够见谅,这个系列以后会每周发三到四篇左右(主要是写一篇差不多要花几晚上,感觉思维比较发散),除了讲WPF技术本身之外,也会讲一些项目具体开发,所以敬请关

漫谈CTA策略盈利来源和逻辑思考

很多CTA策略研究人员,包括我自己,很多时候都会去思考一个没有标准答案的问题,那就是为何CTA这类beta型的策略能盈利,我相信对于CTA研究者来说,大家会有很多不同版本的思考和答案。因为相比较于其他类型的策略来说,貌似人家盈利的理由都很明显且充分。 比如说,alpha类策略,很能理解对于这类策略来说,交易的一揽子标的物里面总会有强弱之分,那么只要能找出有强弱区分度的特征或者因子,那便基本找到了

漫谈递归:递归的效率问题

递归在解决某些问题的时候使得我们思考的方式得以简化,代码也更加精炼,容易阅读。那么既然递归有这么多的优点,我们是不是什么问题都要用递归来解决呢?难道递归就没有缺点吗?今天我们就来讨论一下递归的不足之处。谈到递归就不得不面对它的效率问题。 为什么递归是低效的 还是拿斐波那契(Fibonacci)数列来做例子。在很多教科书或文章中涉及到递归或计算复杂性的地方都会将计算斐波那契数列的程序作为经典示

数据库漫谈-国产数据库

国产数据库突然大量出现,下表列出(按首字母排序 ) AISWare AntDB,亚信科技。 AliSQL,阿里云。 Analyticdb,阿里云。 ArkDB,北京极数云舟科技有限公司。 CynosDB,腾讯云 DM(达梦数据库),武汉达梦数据库股份有限公司。 DolphinDB,浙江智臾科技的杰作 DragonBase ,北京金山云网络技术有限公司。 EsgynDB(易鲸捷数据

数据库漫谈-infomix

infomix数据库知名度不高,主要跟它的定位有关,它主要用于unix操作系统:Informix便是取自Information和Unix的结合,它也是第一个支持linux系统的数据库。它其实在金融、电信行业使用率非常高。98年,当时我在做银行领域的项目,接触的就是infomix数据。操作系统使用sco unix.开发语言使用标准C。在C语言中嵌入esql来操作数据库,非常方便,笔者现

spark漫谈二

一、几种提交方式的区别 1.local模式 1)怎么开启local模式? 几乎不用修改任何配置,就是local模式。 2)怎么进入local模式? 执行spark-shell、spark-submit、spark-sql时,如果指定–master的参数为local或者不指定–master,即使项目已经部署成standalone等模式,都会进入local模式。 此外:开启spark-shell、

spark漫谈一

在IT的世界,技术种类繁杂,多如牛毛,每当我们遇到一种技术时,如何快速有效地学习并掌握技术,是每一个IT从业人员必须要面对的问题。在我看来,在学习任何一种技术时,有一个问题是值得我们先提问和思考的,那就是”为什么这种技术会出现?“。因为只有当我们认真严肃地去思考这个问题时,我们才会豁然开朗地发现,原来任何一种技术的出现,都有其特殊的需求和特定的背景。 以分布式计算框架spark为例,在其出现之前,

数据库漫谈-PostgresSQL

作为开源数据库另一个巨头,PostgresSQL不如MySQL风光,在最初的较量中MySQL一直占据上风,就好像两个同窗好友同时求学,小学、初中、高中,MySQL都力压PgSQL,但到了本科阶段,PgSQL开始超越MySQL。        其实在技术人员,尤其是数据库开发技术人员中,PostgresSQL更受欢迎,原因无他,PostgresSQL开源的更彻底,是国内很多国产数据库