close
Warning:
Can't synchronize with repository "(default)" (Unsupported version control system "svn": No module named svn). Look in the Trac log for more information.
- Timestamp:
-
01/13/2011 08:51:25 PM (10 years ago)
- Author:
-
lauritz.thamsen
- Comment:
-
--
Legend:
- Unmodified
- Added
- Removed
- Modified
-
v93
|
v94
|
|
2 | 2 | This site describes some [wiki:JCop] sample programs and provides download links. |
3 | 3 | |
4 | | == Adressbook == |
| 4 | == Addressbook == |
5 | 5 | {{{ |
6 | 6 | #!div class="wiki_infotable" style="float:right;" |
… |
… |
|
10 | 10 | ||'''Downloads'''|| || |
11 | 11 | || [[Image(media/icons/silk:disk.png, title="downloads", nolink, right)]] || [https://www.hpi.uni-potsdam.de/hirschfeld/svn/cop/JCopProject/src/JCopSampleProgramms/AdressBook/JCop_example_AdressBook.zip zip archive] || |
12 | | || [[Image(media/icons/silk:disk.png, title="downloads", nolink, right)]] || [https://www.hpi.uni-potsdam.de/hirschfeld/svn/cop/JCopProject/src/JCopSampleProgramms/AdressBook/src browse sourcecode] || |
| 12 | || [[Image(media/icons/silk:disk.png, title="downloads", nolink, right)]] || [https://www.hpi.uni-potsdam.de/hirschfeld/svn/cop/JCopProject/src/JCopSampleProgramms/AdressBook/src browse source code] || |
13 | 13 | }}} |
14 | 14 | |
15 | | A simple COP example. An adressbook contains persons. By default, a person's name will be returned by the {{{toString}}} method.[[BR]] |
| 15 | A simple COP example. An addressbook contains persons. By default, a person's name will be returned by the {{{toString}}} method.[[BR]] |
16 | 16 | Depending on context information, persons can also reveal their address. Data will be either rendered as plain string, with Wiki syntax, or in HTML format. |
17 | 17 | [[BR]] |
… |
… |
|
31 | 31 | ||'''Downloads'''|| || |
32 | 32 | || [[Image(media/icons/silk:disk.png, title="downloads", nolink, right)]] || [https://www.hpi.uni-potsdam.de/hirschfeld/svn/cop/JCopProject/src/JCopSampleProgramms/TransferSystem/JCop_example_TransferSystem.zip zip archive] || |
33 | | || [[Image(media/icons/silk:disk.png, title="downloads", nolink, right)]] || [https://www.hpi.uni-potsdam.de/hirschfeld/svn/cop/JCopProject/src/JCopSampleProgramms/TransferSystem/src browse sourcecode] || |
| 33 | || [[Image(media/icons/silk:disk.png, title="downloads", nolink, right)]] || [https://www.hpi.uni-potsdam.de/hirschfeld/svn/cop/JCopProject/src/JCopSampleProgramms/TransferSystem/src browse source code] || |
34 | 34 | }}} |
35 | 35 | ... |
… |
… |
|
50 | 50 | || [[Image(media/icons/silk:disk.png, title="Qt Jambi Version", nolink, right)]] ||[http://qtjambi.sourceforge.net/ ''Qt Jambi''][[BR]]^win32/64 vers. included^|| |
51 | 51 | ||'''Downloads'''|| || |
52 | | || [[Image(media/icons/silk:disk.png, title="downloads", nolink, right)]] || [https://www.hpi.uni-potsdam.de/hirschfeld/svn/cop/JCopProject/src/JCopSampleProgramms/BodyMassIndexCalculator browse sourcecode] || |
| 52 | || [[Image(media/icons/silk:disk.png, title="downloads", nolink, right)]] || [https://www.hpi.uni-potsdam.de/hirschfeld/svn/cop/JCopProject/src/JCopSampleProgramms/BodyMassIndexCalculator browse source code] || |
53 | 53 | }}} |
54 | 54 | |
55 | 55 | The calculator was developed using JCop and Qt Jambi in a seminar on approaches of multi-dimensional separation of concerns, including context-oriented programming. |
56 | 56 | |
57 | | The GUI-based application allows to explicitly manipulate the user's context. The application consideres two kinds of context information: |
| 57 | The GUI-based application allows to explicitly manipulate the user's context. The application considers two kinds of context information: |
58 | 58 | |
59 | 59 | '''Location.''' A user can be either from Germany or the U.S., affecting the expectations to the metric system (pound vs. kilograms, feet vs. meters) that are used in BMI value calculation. |
60 | 60 | |
61 | | '''Background Knowlege'''. The visualization of the actual BMI result is rendered according to the user's knowledge of BMI. We roughly distinguish between ''heals professionals'' and ''useres without any knowledge''. The former will be provided with the concrete BMI, while the latter will be simply informed by a happy or unhappy smilie. |
| 61 | '''Background Knowledge'''. The visualization of the actual BMI result is rendered according to the user's knowledge of BMI. We roughly distinguish between ''heals professionals'' and ''user's without any knowledge''. The former will be provided with the concrete BMI, while the latter will be informed by a happy or unhappy smiley. |
62 | 62 | |
63 | 63 | The application uses JCop's declarative layer activation to refine base methods according to the user's context. |
… |
… |
|
72 | 72 | || [[Image(media/icons/silk:package.png, title="Recommended JCop Version", nolink, right)]] || [wiki:JCop] || |
73 | 73 | ||'''Downloads'''|| || |
74 | | || [[Image(media/icons/silk:disk.png, title="downloads", nolink, right)]] || [https://www.hpi.uni-potsdam.de/hirschfeld/svn/cop/JCopProject/src/MobileClientDemo/workspace/MobileClient browse sourcecode] || |
| 74 | || [[Image(media/icons/silk:disk.png, title="downloads", nolink, right)]] || [https://www.hpi.uni-potsdam.de/hirschfeld/svn/cop/JCopProject/src/MobileClientDemo/workspace/MobileClient browse source code] || |
75 | 75 | }}} |
76 | 76 | |
… |
… |
|
79 | 79 | Two students, Lucy and Tim have an appointment at University at 12:00. |
80 | 80 | |
81 | | * At 11:50, Lucy arrives at the campus. She checks her mobile device to inform herself about Tim’s current whereabout. The graphical representation of this information depends on Lucy’s context: If Lucy’s device is currently connected to the Internet at high-bandwidth, a map image service is requested to render Tim’s location on a map. Contrary, if the bandwidth is low, Tim’s representation depends on Lucy’s need for active information. This information is stored in Lucy’s user profile and is accessible for applications. In the case that Lucy prefers a smart representation over the refresh period, a map with Tim’s outdated location is shown. The map is labeled with the time stamp of the last update. Alternatively, when Lucy insists on up-to-date information, while the bandwidth is too low for updating the map image, Tim’s position data is simply shown as a text. |
| 81 | * At 11:50, Lucy arrives at the campus. She checks her mobile device to inform herself about Tim’s current whereabouts. The graphical representation of this information depends on Lucy’s context: If Lucy’s device is currently connected to the Internet at high-bandwidth, a map image service is requested to render Tim’s location on a map. Contrary, if the bandwidth is low, Tim’s representation depends on Lucy’s need for active information. This information is stored in Lucy’s user profile and is accessible for applications. In the case that Lucy prefers a smart representation over the refresh period, a map with Tim’s outdated location is shown. The map is labeled with the time stamp of the last update. Alternatively, when Lucy insists on up-to-date information, while the bandwidth is too low for updating the map image, Tim’s position data is simply shown as a text. |
82 | 82 | |
83 | 83 | * At the same time, Tim arrives at the underground station, where his GPS device is unable to receive data and more. Thus, his mobile device switches to cell-based location detection. The new location data is calculated based on the position of the current mobile cell. The change of the location provider is propagated to Lucy’s device. Depending on its current context, the device has to decide how it renders this additional location information. |