夏秋的博客

Code Monkey's Blog


  • 首页

  • 标签

  • 归档

  • 搜索

Principles of Computer System Design 读书笔记 II

发表于 2018-04-01 | 阅读次数:
字数统计: 11k | 阅读时长≈ 0:57

CHAPTER 2 Elements of Computer System Organization

OVERVIEW

实践中最重要的三个对计算机系统组件的抽象是:

  • The memory(存储器)
  • The interpreter (解释器)
  • The communication link (通信链路)

设计者运用这三个抽象来组织物理硬件的结构,不仅仅因为它们是直接的通道,还因为:

  • 它们提供了最基础的函数,包括调用(取值),处理和通信;
  • 它们也是对硬件最简单,接口最清晰的抽象。

Reference - 引用,一种将计算机系统中交互组件抽象的方式。通常一个组件用过特定的命名方式通另一个组件相连。

阅读全文 »

Principles of Computer System Design 读书笔记 I

发表于 2018-03-27 | 阅读次数:
字数统计: 7.7k | 阅读时长≈ 0:39

CHARPTER 1 Systems

OVERVIEW

系统设计者需要有一个全局的、整体的计算机系统观(包括软件方面和硬件方面的)。
许多有价值的计算机应用程序都具备:

  • 容错性
  • 并发一致性
  • 离散数据的关联性
  • 信息的多样性
  • 对错误和内部攻击的保护性
  • 与许多用户的交互性

计算机系统设计的问题同样可以参考许多其它领域的设计问题,因为他们都有一定的共性。
System design principles - 一种可以帮助系统设计者避免犯错的规则,指导或者经验,并不是不能违背的条例。

Avoid excessive generality
If it’s good for everything, it’s good for nothing.

注解:系统设计的精髓——Everything is Tradeoff。

阅读全文 »

虚拟机通过Mac主机访问SS

发表于 2018-03-24 | 阅读次数:
字数统计: 584 | 阅读时长≈ 0:03

因为需要用到Linux系统来做一些课程的Lab,所以今天去下载了VirtulBox和Ubuntu 14.04.5 LTS。安装完成后为了能和平时一样通过SS来上网,搜寻了一下网上的教程,但最后的设置过程和教程都不太一样,特此记录一下。

阅读全文 »

用Python实现设计模式——建造者模式和原型模式

发表于 2018-02-01 | 阅读次数:
字数统计: 3.1k | 阅读时长≈ 0:16

前言

前两篇文章介绍了单例模式和工厂模式,这两种设计模式实际上都属于软件工程中的创建型模式(Creational Pattern)。维基百科有对这类模式的定义:

在软件工程中,创建型模式 是处理对象 “对象 (计算机科学)”)创建的设计模式 “设计模式 (计算机)”),试图根据实际情况使用合适的方式创建对象。基本的对象创建方式可能会导致设计上的问题,或增加设计的复杂度。创建型模式通过以某种方式控制对象的创建来解决问题。
创建型模式由两个主导思想构成。一是将系统使用的具体类封装起来,二是隐藏这些具体类的实例创建和结合的方式。

实际上创建型模式的最大作用就是把对象的创建过程和使用过程进行了解耦,对使用者只提供接口而隐藏了具体的实现细节,让软件结构更清晰,更符合单一职责的原则。接下来本文将继续介绍创建型模式中的另两种模式——建造者模式和原型模式,文中的代码已托管在Github上。

阅读全文 »

用Python实现设计模式——工厂模式

发表于 2018-01-30 | 阅读次数:
字数统计: 3.9k | 阅读时长≈ 0:19

前言

工厂模式,顾名思义就是我们可以通过一个指定的“工厂”获得需要的“产品”,在设计模式中主要用于抽象对象的创建过程,让用户可以指定自己想要的对象而不必关心对象的实例化过程。这样做的好处是用户只需通过固定的接口而不是直接去调用类的实例化方法来获得一个对象的实例,隐藏了实例创建过程的复杂度,解耦了生产实例和使用实例的代码,降低了维护的复杂性。
本文会用Python实现三种工厂模式的简单例子,所有代码都托管在Github上。

阅读全文 »

用Python实现设计模式——单例模式

发表于 2018-01-28 | 阅读次数:
字数统计: 3.7k | 阅读时长≈ 0:19

前言

单例模式是设计模式(Design Pattern)中最简单、最容易理解的一种,维基百科[1]的定义如下:

单例模式,也叫单子模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类 “类 (计算机科学)”)必须保证只有一个实例存在。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。

单例模式的主要优点是共享资源和减少资源消耗,主要应用于IO或数据库的线程池,缓存,日志,对话和需共享数据的资源等,但是在实现情况中滥用单例模式会带来很多意想不到的问题,本文重点在于介绍几种Python实现单例模式的方法,这里就不再展开论述了。文中所演示的代码都会托管在Github上。

阅读全文 »

在pandas.DataFrame.to_sql时指定数据库表的列类型

发表于 2018-01-24 | 阅读次数:
字数统计: 2.9k | 阅读时长≈ 0:15

问题

在数据分析并存储到数据库时,Python的Pandas包提供了_to_sql_方法使存储的过程更为便捷,但如果在使用_to_sql_方法前不在数据库建好相对应的表,to_sql则会默认为你创建一个新表,这时新表的列类型可能并不是你期望的。例如我们通过下段代码往数据库中插入一部分数据:

阅读全文 »
夏秋

夏秋

架构师之路

7 日志
11 标签
RSS
GitHub E-Mail
© 2018 夏秋 | 33k | 2:47
0%