meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
wp7_codecamp:lut2:start [2011/10/21 11:47]
mihai.iusan [Links]
wp7_codecamp:lut2:start [2011/10/25 00:26] (current)
camilo [Technical Details]
Line 19: Line 19:
  
   * Sometimes to find the book that you want can give you a big headache   * Sometimes to find the book that you want can give you a big headache
-  * The book that you found can be far from location and another copy to be near your location+  * The book that you found can be far from your location and another copy to be near you
   * Finding the book can be a heavy search over multiple websites over the internet   * Finding the book can be a heavy search over multiple websites over the internet
  
Line 39: Line 39:
  
 {{:wp7_codecamp:lut2:screenshots_small.png?600|}} {{:wp7_codecamp:lut2:screenshots_small.png?600|}}
 +
 +===== Technical Details =====
 +
 +=== Architecture===
 +We have divided our project into 2 parts. "Model" and "Pages".
 +
 +In the model we build the classes that helps to: make an abstraction of concepts like "book" or "bookstatus", but also the make classes that will be in charge of some particular aspects, for example MapManager.
 +
 +In the case of Pages we just display the information. We use 2 methods to make this. The first one is by "databinding", this is useful when you have to show data with the same format, like list of items. In this project "databinding" was use to fetch results of the books that were found. The second method is to modify the UI by hand, this can by hard but you can make more effects to improve the interface. This was used to show points in the map, alerts, etc.
 +
 +=== API calls===
 +To get information about books and libraries we make some API calls which in this case is basically request some data by calling an URL with some special parameters. The data that we received is in JSON format, so we build a parser for that. Also, to get the books  status we need again to request a page from an URL, but in this case is not JSON but an HTML page, another parser was made for that.
 +
 +=== Tombstoning===
 +Tombstoning is a requirement for WP applications. We knew about this so when we design the transition between pages we made them in such way that all pages are independent (stateless), this help us then to implement the Tombstoning easily in all of them.
 +
 +
 ===== Technologies ===== ===== Technologies =====
  
Line 46: Line 63:
  
      
 +===== Other links =====
 +
 +  * Apps4Finland Competition entry: http://www.apps4finland.fi/fi/kilpailutyot/sovellus-librarian
 +  * HelMet data API: http://data.kirjastot.fi/
 +
 ===== Project Artifacts ===== ===== Project Artifacts =====
  
   * Presentation {{:wp7_codecamp:lut2:librarian.pdf|}},  {{:wp7_codecamp:lut2:librarian.pptx|}}   * Presentation {{:wp7_codecamp:lut2:librarian.pdf|}},  {{:wp7_codecamp:lut2:librarian.pptx|}}
 +  * Application Video {{:wp7_codecamp:lut2:librarian_avi.zip|}}
   * Source Code {{:wp7_codecamp:lut2:librarian.zip|}}   * Source Code {{:wp7_codecamp:lut2:librarian.zip|}}
 +  * Application file(.xap inside zip) {{:wp7_codecamp:lut2:librarian_xap.zip|}}
 +
 +
  
-