From: Sangwan Kwon Date: Fri, 6 Mar 2020 05:48:17 +0000 (+0900) Subject: Rearrange README sections X-Git-Tag: submit/tizen/20200810.073515~50 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=da1ce9dff7be76e5a2aa6295ff4748d3e1558f3f;p=platform%2Fcore%2Fsecurity%2Fvist.git Rearrange README sections Signed-off-by: Sangwan Kwon --- diff --git a/README.md b/README.md index 2213ddf..3cb5c4e 100644 --- a/README.md +++ b/README.md @@ -17,53 +17,11 @@ For this we must achieve two things: 1. Provide **unified interface via query** 2. Generate **type-safe query via query-builder** -We believe that ViST makes security software usable and universial. - -# Terminology -### Virtual Table -SQL Query is an interface that allows access and manipulate table resources. -SQLite provides two types of table. -- (Real) Table: Provide interface to handle database file. -- [Virtual Table](https://sqlite.org/vtab.html): -Provides interface to invoke the callback methods of object(virtual table). - -We can call any routines with query via virtual table. - -**We make virtual tables about device policy at ViST v1.** - -### Type-safe Query -> In computer science, [type safety](https://en.wikipedia.org/wiki/Type_safety) -> is the extent to -> which a programming language -> discourages or prevents type errors. - -Type-safe query is what checked for type error at compile time. - -Basically query statement is not type-safe. -There are some opensource projects -what generate query or ORM. -In Java, -[JPA](https://github.com/spring-projects/spring-data-jpa), -do not guarantee to generate type-safe query -but [QueryDSL](https://github.com/querydsl/querydsl) -guarantees to generate type-safe query. -In C++, -both [sqlpp11](https://github.com/rbock/sqlpp11) -and [sqlite_orm](https://github.com/fnc12/sqlite_orm) -guarantee to generate type-safe query. - -**We make type-safe query-builder more intuitively.** - +We make type-safe query-builder more intuitively than other opensource projects. Refer [this](https://github.sec.samsung.net/RS7-SECIOTSW/tizen-osquery/tree/master/src/vist/query-builder) to compare ours and other opensources. -# Architecture -ViST adopts 3-tier layerd architecture to separate of concern. -- Interface layer: Provide API to client to generate query -- Service layer: Parse the query and bind query to virtual table -- Logic layer: Include callback routine about virtual table executed via query - -layered architecture +We believe that ViST makes security software usable and universial. # Design Our design philoshophy is "Make usable and robust security framework.". @@ -174,6 +132,13 @@ and listen the event of it. VirtualTable::Execute(${QUERY_STATEMENT}); VirtualTable::Listen(${TABLE}, ${HANDLER}); // NOT IMPLEMENTED YET ``` +# Architecture +ViST adopts 3-tier layerd architecture to separate of concern. +- Interface layer: Provide API to client to generate query +- Service layer: Parse the query and bind query to virtual table +- Logic layer: Include callback routine about virtual table executed via query + +layered architecture # Contacts - Sangwan Kwon (sangwan.kwon@samsung.com) diff --git a/doc/terminology.md b/doc/terminology.md new file mode 100644 index 0000000..2ef2f4f --- /dev/null +++ b/doc/terminology.md @@ -0,0 +1,35 @@ +# Terminology +### Virtual Table +SQL Query is an interface that allows access and manipulate table resources. +SQLite provides two types of table. +- (Real) Table: Provide interface to handle database file. +- [Virtual Table](https://sqlite.org/vtab.html): +Provides interface to invoke the callback methods of object(virtual table). + +We can call any routines with query via virtual table. + +**We make virtual tables about device policy at ViST v1.** + +### Type-safe Query +> In computer science, [type safety](https://en.wikipedia.org/wiki/Type_safety) +> is the extent to +> which a programming language +> discourages or prevents type errors. + +Type-safe query is what checked for type error at compile time. + +Basically query statement is not type-safe. +There are some opensource projects +what generate query or ORM. +In Java, +[JPA](https://github.com/spring-projects/spring-data-jpa), +do not guarantee to generate type-safe query +but [QueryDSL](https://github.com/querydsl/querydsl) +guarantees to generate type-safe query. +In C++, +both [sqlpp11](https://github.com/rbock/sqlpp11) +and [sqlite_orm](https://github.com/fnc12/sqlite_orm) +guarantee to generate type-safe query. + +Refer [this](https://github.sec.samsung.net/RS7-SECIOTSW/tizen-osquery/tree/master/src/vist/query-builder) +to compare ours and other opensource projects.