技术的人文思考
文章平均质量分 87
南宫理的日知录
左手人文,双手科技
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
从资源稀缺性看操作系统的设计与并发编程
总的来说,资源的稀缺性,导致了并发概念的引入,进而提升了资源的利用率,实现了批量作业整体效率的提升,但是,是以引入复杂性为代价的。现代高可用的系统架构,不断拆分、不断引入新的中间件、技术,变得越来越复杂。本质上来看,都是资源有限的约束下的无奈与妥协。现代计算机科学,要么提升算法,更加充分利用现有资源,从而满足需求;要么大量堆积资源,简单直接,大力出奇迹。所以,算法和算力,复杂和简洁,本质上都是辩证存在的!原创 2024-11-29 12:45:00 · 651 阅读 · 0 评论 -
衡量代码质量的唯一有效标准:WTFs/min
质量管理始终是各行各业始终无法回避的问题,而质量的提升始终是一个不断迭代升级的过程。在IT领域中,质量的话题主要聚焦在两个领域:数据质量管理和代码质量管理。数据质量管理,有相对系统的管理模式,比如,一般我们会从数据的准确性、完整性、唯一性、一致性、及时性、有效性等。关于代码的管理,主要有可扩展性和可读性等。本文就来围绕“代码的可扩展性”来稍微展开聊一下。原创 2024-11-18 06:15:00 · 498 阅读 · 0 评论 -
25、Python之面向对象:私有属性是掩耳盗铃还是恰到好处
除了Python之外,其他编程语言的私有属性,也更多的是在践行一种“语言约定”意义上的私有保护。私有属性的设计,到底是掩耳盗铃形式的偷懒,还是一种恰到好处的设计,仁者见仁、智者见智。在自己的编程实践中,是否有必要使用或者如何使用私有属性,也是根据具体场景具体分析。也许,没有绝对的更好、更差,只是是否有必要,以及哪种方案更适合而已吧。原创 2024-07-31 07:00:00 · 1098 阅读 · 0 评论 -
Python番外篇之责任转移:有关于虚拟机编程语言的往事
关于最好的编程语言的论战,其实,见仁见智,更多的是对编程语言设计背后思想的认同与否。我们也不应该随便地说出,Python是最好的编程语言,而应该更加客观、理性的说,“Python的设计理念、思想跟我比较契合,我用起来特别舒服”,虽然说是理性、客观,其实,那还是一种感觉。虽然,人类可读了,但是太底层了,要实现一个简单的需求,都要堆砌很多个指令,很繁琐,编程起来很痛苦。不好的一定会不断被更好的所取代,但是,从来就没有最好的,只有在特定场景、特定需求下的更好的,最适合的才是更好的。编程语言的好用与否,也是如此。原创 2024-07-02 06:45:00 · 957 阅读 · 0 评论 -
数据库索引、河神、樵夫与《新华字典》
实际检索中,如果从辅助索引检索,则在不是覆盖索引(懂的都懂,以后再说)的情况下,定位到主键的键值后,还要到聚簇索引中找到真正数据页,这一步叫做回表。如果索引/键不能唯一标识出目标数据,符合条件的可能有多条,怎么确保符合条件的都被找到呢,所以数据必须以有序的方式进行存储,从第一个符合条件的开始,直到找到第一个不符合条件的,就可以停止查找了。数据库有序真正的困境在于,从数据库表创建之时起,数据的每一次增删改,都要保证数据库的有序,索引的个数越多,增删改维持数据有序的成本越大……选择了一种,就要放弃其他的可能。原创 2024-06-16 11:13:33 · 1193 阅读 · 0 评论 -
关于Cache与延迟的思考
Cache技术的应用带来的新问题,一方面是数据一致性的问题,缓存数据与数据源的不一致,必然带来数据同步的问题,在一些场景下,我们甚至放弃了强一致性,弱一致性、最终一致性似乎也变得可以接受;而关于最优解的探求,我们的目标一定是全局最优解,但是很多情况下,并不现实,同样是各种可见、不可见的约束的共同作用下,最终我们得到的只能是可接受的局部最优解。主存有瓶颈,理所当然的就会想到引入更快的存储介质,比如SRAM,所以,最早的Cache是以硬件的形式被引入到分级存储体系中,用于尽量弥合CPU与主存之间速度的差异。原创 2024-06-15 11:47:14 · 961 阅读 · 0 评论
分享