mirror of
https://github.com/donnemartin/system-design-primer.git
synced 2025-12-16 09:58:56 +03:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
22
README-ja.md
22
README-ja.md
@@ -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
|
||||
|
||||

|
||||
|
||||
## オブジェクト志向設計問題と解答
|
||||
## オブジェクト指向設計問題と解答
|
||||
|
||||
> 頻出のオブジェクト志向システム設計面接課題と参考解答、コード及びダイアグラム
|
||||
> 頻出のオブジェクト指向システム設計面接課題と参考解答、コード及びダイアグラム
|
||||
>
|
||||
> 解答は `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
|
||||
|
||||
Reference in New Issue
Block a user