# HG changeset patch # User Kazuma Takeda # Date 1481895025 -32400 # Node ID cd3da6f216017982046310d8988a619ab37b3abe # Parent 5541d77910b9383b4b9c0fd9d7c6466ebe71432b add section. diff -r 5541d77910b9 -r cd3da6f21601 Slide/prosym.md --- a/Slide/prosym.md Fri Dec 16 21:34:43 2016 +0900 +++ b/Slide/prosym.md Fri Dec 16 22:30:25 2016 +0900 @@ -4,6 +4,8 @@ lang: Japanese code-engine: coderay +[](プロシン発表時間 セッション4 1/7 8:50 - 10:10) + ## 研究目的 プログラムからデータを分離して扱うデータベースにはデータ構造とRDBの表構造のインピーダンスミスマッチという問題がある。 @@ -27,7 +29,7 @@ Jungleデータベースの構造とこれを用いたアプリケーション、実装時に発生した問題と解決方法について解説する。 -# Jungleデータベース +## Jungleデータベース JungleデータベースはJavaで実装されている。 木構造型のデータベースで、プログラム上に直接木構造を構築する。 @@ -43,9 +45,28 @@ データの変更は一度生成した木を上書きせず、ルートから変更を行うノードまでコピーを行い、新しく木構造を構築する。 その際にルートをアトミックに入れ替える。 +[](失敗時の具体的な意味Either)
 message
-# 木の編集 +以降はJungleの構造をAPIとともに紹介。 +[](70分あるので入れてもいいかな) + +## 木の生成 + +Jungleは複数の木を名前を利用して管理しており、名前により作成・編集・削除を行う。 +Jungleクラスの木の生成、管理を提供するAPIは以下のようになっている。 + +``` Java +/* If the name of the tree duplicates, it fails and returns null */ +JungleTree createNewTree(String treeName); + +/* If there is no matching Tree name, it fails and returns null */ +JungleTree getTreeByName(String treeName); +``` + +## 木のノード + +Jungleの木は、複数のノードの集合でできている。