Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Simon Knott
2019-05-12 10:49:54 +02:00
12 changed files with 91 additions and 91 deletions

View File

@@ -45,7 +45,7 @@ lang: ja
* [学習指針](#学習指針)
* [システム設計面接課題にどのように準備するか](#システム設計面接にどのようにして臨めばいいか)
* [システム設計課題例 **とその解答**](#システム設計課題例とその解答)
* [オブジェクト思考設計課題例、 **とその解答**](#オブジェクト向設計問題と解答)
* [オブジェクト指向設計課題例、 **とその解答**](#オブジェクト向設計問題と解答)
* [その他のシステム設計面接課題例](#他のシステム設計面接例題)
## 暗記カード
@@ -59,7 +59,7 @@ lang: ja
* [システム設計デッキ](resources/flash_cards/System%20Design.apkg)
* [システム設計練習課題デッキ](resources/flash_cards/System%20Design%20Exercises.apkg)
* [オブジェクト思考練習課題デッキ](resources/flash_cards/OO%20Design.apkg)
* [オブジェクト指向練習課題デッキ](resources/flash_cards/OO%20Design.apkg)
外出先や移動中の勉強に役立つでしょう。
@@ -216,7 +216,7 @@ lang: ja
| 次のリンク先のいくつかのページを読む [実世界でのアーキテクチャ](#実世界のアーキテクチャ) | :+1: | :+1: | :+1: |
| 復習する [システム設計面接課題にどのように準備するか](#システム設計面接にどのようにして臨めばいいか) | :+1: | :+1: | :+1: |
| とりあえず一周する [システム設計課題例](#システム設計課題例とその解答) | Some | Many | Most |
| とりあえず一周する [オブジェクト向設計問題と解答](#オブジェクト向設計問題と解答) | Some | Many | Most |
| とりあえず一周する [オブジェクト向設計問題と解答](#オブジェクト向設計問題と解答) | Some | Many | Most |
| 復習する [その他システム設計面接での質問例](#他のシステム設計面接例題) | Some | Many | Most |
## システム設計面接にどのようにして臨めばいいか
@@ -353,9 +353,9 @@ lang: ja
![Imgur](http://i.imgur.com/jj3A5N8.png)
## オブジェクト向設計問題と解答
## オブジェクト向設計問題と解答
> 頻出のオブジェクト向システム設計面接課題と参考解答、コード及びダイアグラム
> 頻出のオブジェクト向システム設計面接課題と参考解答、コード及びダイアグラム
>
> 解答は `solutions/` フォルダ以下にリンクが貼られている
@@ -370,7 +370,7 @@ lang: ja
| 駐車場の設計 | [解答](solutions/object_oriented_design/parking_lot/parking_lot.ipynb) |
| チャットサーバーの設計 | [解答](solutions/object_oriented_design/online_chat/online_chat.ipynb) |
| 円形配列の設計 | [Contribute](#contributing) |
| オブジェクト向システム設計問題を追加する | [Contribute](#contributing) |
| オブジェクト向システム設計問題を追加する | [Contribute](#contributing) |
## システム設計トピックス: まずはここから
@@ -392,7 +392,7 @@ lang: ja
### ステップ 2: スケーラビリティに関する資料を読んで復習する
[スケーラビリティ](http://www.lecloud.net/tagged/scalability)
[スケーラビリティ](http://www.lecloud.net/tagged/scalability/chrono)
* ここで触れられているトピックス:
* [クローン](http://www.lecloud.net/post/7295452622/scalability-for-dummies-part-1-clones)
@@ -989,7 +989,7 @@ NoSQL は **key-value store**、 **document-store**、 **wide column store**、
##### その他の参考資料、ページ: ドキュメントストア
* [ドキュメント向 データベース](https://en.wikipedia.org/wiki/Document-oriented_database)
* [ドキュメント向 データベース](https://en.wikipedia.org/wiki/Document-oriented_database)
* [MongoDB アーキテクチャ](https://www.mongodb.com/mongodb-architecture)
* [CouchDB アーキテクチャ](https://blog.couchdb.org/2016/08/01/couchdb-2-0-architecture/)
* [Elasticsearch アーキテクチャ](https://www.elastic.co/blog/found-elasticsearch-from-the-bottom-up)
@@ -1173,7 +1173,7 @@ Redisはさらに以下のような機能を備えています:
* エントリをキャッシュに追加します
* エントリを返します
```
```python
def get_user(self, user_id):
user = cache.get("user.{0}", user_id)
if user is None:
@@ -1216,7 +1216,7 @@ set_user(12345, {"foo":"bar"})
キャッシュコード:
```
```python
def set_user(user_id, values):
user = db.query("UPDATE Users WHERE id = {0}", user_id, values)
cache.set(user_id, user)
@@ -1562,7 +1562,7 @@ Latency Comparison Numbers
L1 cache reference 0.5 ns
Branch mispredict 5 ns
L2 cache reference 7 ns 14x L1 cache
Mutex lock/unlock 100 ns
Mutex lock/unlock 25 ns
Main memory reference 100 ns 20x L2 cache, 200x L1 cache
Compress 1K bytes with Zippy 10,000 ns 10 us
Send 1 KB bytes over 1 Gbps network 10,000 ns 10 us