EagleBear2002 的博客

这里必须根绝一切犹豫,这里任何怯懦都无济于事

摘要

本文整理自 重识社会:探析当今人生迷茫免费在线收听-喜马拉雅。原作者王生智。

序言

中国改革开放以来,社会经济以全球前所未有的速度连续发展,取得了令世界为之瞩目的骄人成就。不仅社会经济发展,伴随着经济发展而来的,还有各类思想观念,也一股脑拥挤着接踵而至,令人目不暇接、头晕目眩,由此也就带来了盲目接受、不求深解的后果。这也势必滋生出大批的“炒家”、“砖家”和“叫兽”,在他们为了各自利益的合力运作之下,社会中的芸芸众生更是被他们搅得不知所措。

世上的浮夸反映出人类的蒙昧。从今天回看过去的历史,从荷兰的天价郁金香,到中国的天价月饼,再到法国、意大利的天价神包,无不反映出人群与羊群并无差别的盲动与盲从。人类以理性做视其它动物,却原来仍未摆脱动物的愚昧。人类发展修饰的初衷,原本是为了用修饰帮助理性的进步,到如今修饰被无限放大,理性却被无情地淹没了。非修饰,无以接受。可悲,可叹。

阅读全文 »

摘要

在在线事务处理(OLTP)系统中,可序列化是事务执行的一个关键属性;如果没有它,由于并发活动,可能会违反数据的完整性约束。可以通过使用严格的两阶段锁定(S2PL)等可序列化并发控制机制来保证可序列化,而不考虑应用程序逻辑。然而,这种机制导致的并发性降低通常过于严重,因此数据库管理系统(DBMS)为数据库管理员(DBA)提供了使用不同并发控制机制的机会,前提是这样做是安全的。然而,此前几乎没有理论可以指导 DBA 判断何时是安全的!

在本文中,我们讨论了如何为一组事务分配适当的隔离级别(从而使用特定的并发控制机制),同时确保每次执行都是冲突可序列化的。当每个事务可以选择使用 S2PL 或快照隔离(SI)时,我们精确地描述了可接受的分配,并提供了一个简单的基于图的算法来确定最弱的可接受分配。

本文涉及的类别和主题描述包括:数据库管理系统中的事务处理。关键词包括:并发控制、可序列化、异常、一致性、快照隔离、两阶段锁定。

阅读全文 »

摘要

当前的商业数据库允许应用程序开发人员为了性能而牺牲一致性。然而,现有的弱一致性级别的定义要么不够精确,要么不允许使用诸如乐观锁等高效的实现技术。排除这些技术尤其不幸,因为商业数据库支持乐观机制。此外,乐观锁很可能成为未来地理分布和移动系统中首选的实现技术。

本论文首次提出了现有 ANSI 隔离级别的独立于实现的规范,以及在商业系统中广泛使用的若干级别的规范,例如,游标稳定性、快照隔离。它还以独立于实现的方式为基于谓词的操作指定了各种保证。定义了两个新级别,为应用程序编写者提供有用的一致性保证;一个是确保一致读取的最弱级别,而另一个则捕获了悲观实现所提供的某些有用的一致性属性。我们使用基于图的方法以简单直观的方式定义不同的隔离级别。

论文描述了在分布式客户端-服务器环境中支持不同弱一致性级别的新实现技术。这些机制基于乐观锁,并利用多部分时间戳。提出了一种新技术,允许多部分时间戳随着系统中客户端和服务器数量的增加而良好扩展;该技术利用松散同步的时钟来从多部分时间戳中移除旧信息。

阅读全文 »

摘要

本文根据复习课录音和大模型总结了软件安全的期末考点。题目来自教材课后习题,仅提供简单题和阅读报告题,不提供实验题和复杂的阅读报告题。

如无特殊标注,本文的题目答案来源为 PPT 或教材。使用大模型生成的回答会有明确标注。

考试题型:只靠概念题,10 道简答;每章一道,来自书后概念习题(除去 3,9,10,11 章)。

本文参考了 南京大学软件学院-2023-软件安全(研究生)期末复习参考 - 知乎

阅读全文 »

摘要

本文总结了软件工程管理的期末考点。考虑到本课程为半开卷考试,本文只用有限的篇幅展示最重要的部分,读者自由复制打印。

点击链接下载:2024Fall-软件工程管理 v5 衬线字体带习题.docx

课程概念梳理:

敏捷{Scrum 框架XP 实践{简单设计(频繁)重构持续集成测试驱动开发结对编程
阅读全文 »

摘要

课程目的

  • 阅读、思考软件工程历史中的经典书籍、论文,了解软件工程思想的来龙去脉。
  • 学习最新的软件工程管理方法论、实践、工具。
  • 知其然,知其所以然。
  • 学会自主的思考软件开发,自主判断
    • 需要广泛、深刻的知识学习;批判性思维习惯
    • “记忆”、“分析”这些相对低水平的认知
    • “综合”、“判断”和“运用”等深层次的学习

软件工程和其它相关学科关系

阅读全文 »

摘要

定义

看板方法,由 David Anderson 创立,它脱胎于大野耐一所创立的丰田生产方式(TPS),以及埃利亚胡·高德拉特(Eli Gol-dratt)的约束理论(TOC),并结合统计质量控制(SQC)、排队论(QT)、工业工程(IE)、软件成熟度模型(CMMI)等多个领域的知识,在软件开发社区中获得了极高的关注度,并迅速传播开来。

历史

大卫·J.安德森(David J. Anderson)

阅读全文 »

摘要

项目成功?

为什么敏捷与精益出现在软件开发行业?

  • 软件开发本质属性:复杂性、一致性、可变性、不可见性。
  • 敏捷与精益本质上是帮助我们处理软件开发的复杂性、可变性。
  • 敏捷的本质,是承认软件开发的复杂性。而且承认,这种复杂性,达到了这样一种程度:“无法通过足够充分的前期准备,而消除后续的风险。甚至于,前期准备得越是充分,后续的风险越大。”
  • 敏捷软件开发是当前应对模糊需求、快速变化需求的最佳方式。

敏捷软件开发很流行

阅读全文 »