Changes between Version 2 and Version 3 of Bookmarks Project


Ignore:
Timestamp:
06/04/15 17:12:41 (7 years ago)
Author:
peter
Comment:

started class diagram

Legend:

Unmodified
Added
Removed
Modified
  • Bookmarks Project

    v2 v3  
    1111 
    1212The database consists of three tables: `bookmarks`, `resources`, and `tags`. I separated `resources` (which hold the URI and title of the targets of the bookmarks) from `bookmarks` (which have an ID, a creation timestamp, and a last-modified timestamp) as a matter of conceptual purity. Since the `tags` table references `resources`, it is clear from the database structure that the tag (like the title) is a property of the ''resource'', not the bookmark. 
     13 
     14== Classes == 
     15 
     16{{{#!plantuml 
     17@startuml 
     18class Bookmark { 
     19+id 
     20+uri 
     21+title 
     22+ctime 
     23+mtime 
     24+tags 
     25+bookmark_uri 
     26+exists 
     27+collection: Bookmarks 
     28} 
     29class Bookmarks { 
     30+dbh 
     31+base_uri 
     32} 
     33class Bookmarks::List { 
     34+bookmarks: Bookmarks 
     35+search: Bookmarks::Search 
     36+results 
     37+title 
     38} 
     39class Bookmarks::Search { 
     40+query 
     41+tags 
     42+limit 
     43+offset 
     44} 
     45class Bookmarks::Controller { 
     46} 
     47class BookmarksApp { 
     48} 
     49 
     50Bookmarks::List o- Bookmarks : bookmarks > 
     51Bookmarks::List o- Bookmarks::Search : search > 
     52Bookmark - Bookmarks : collection > 
     53 
     54@enduml 
     55}}} 
    1356 
    1457== CPAN Modules ==