Last modified by Thomas Schwotzer on 2025/06/04 11:42

From version 94.1
edited by Thomas Schwotzer
on 2024/09/26 12:59
Change comment: There is no comment for this version
To version 111.1
edited by Thomas Schwotzer
on 2025/04/11 12:44
Change comment: There is no comment for this version

Summary

Details

Page properties
tags
... ... @@ -1,0 +1,1 @@
1 +favourite
Content
... ... @@ -7,7 +7,7 @@
7 7  1. Ihr Android-Projekt wird bewertet.
8 8  1. Sie schreiben eine Klausur.
9 9  
10 -Beide Teile gehen zu** 50%** in die Endnote ein. Außerdem: **Das Projekt muss erfolgreich bestanden sein**, d.h. wenigstens 50% der Leistung wurden erbracht. Wird das Projekt nicht erfolgreich bestanden, schließen Sie den Kurs mit einem Fehlerversuch ab.
10 +Beide Teile gehen zu** 50%** in die Endnote ein. Außerdem: **Das Projekt muss erfolgreich bestanden sein**, d.h. wenigstens 50% der Leistung wurden erbracht. Wird das Projekt nicht erfolgreich bestanden, schließen Sie den Kurs mit einem Fehlerversuch ab.
11 11  
12 12  Wir sind eine Hochschule der angewandten Wissenschaften. Ich meine, es ist ein richtiges Prinzip, wenn das Modul nur Studierende erfolgreich abschließen können, die wenigstens grundlegend in der Lage sind, eine Android-App zu implementieren.
13 13  
... ... @@ -19,10 +19,8 @@
19 19  
20 20  Mehr Details zu den Anforderungen und dem Ablauf des semesterbegleitendes Projektes finden Sie hier:
21 21  
22 -{{view-file att--filename="Projekt_Ablauf.pdf" display="thumbnail" height="250"/}}
22 +[[attach:Projekt_Ablauf.pdf||target="_blank"]]
23 23  
24 -\\
25 -
26 26  Ablauf des Kurses. Das kann sich in den Semestern jeweils ändern. Es ist der grobe Fahrplan.
27 27  
28 28  (% class="wrapped" %)
... ... @@ -54,7 +54,7 @@
54 54  Wir ordnen Android einmal ein (Dalvik, Java, JVM, Android, ..). Und wir reden über Kotlin und Java und wie Android einen gesamten Softwaremarkt - nicht veränderte - eliminierte.
55 55  )))
56 56  )))|(((
57 -\\
55 +
58 58  )))|(((
59 59  (% class="content-wrapper" %)
60 60  (((
... ... @@ -62,57 +62,66 @@
62 62  
63 63  [[Android-Studio Download>>url:https://developer.android.com/studio||shape="rect"]]
64 64  
65 -Sie arbeiten das Tutorial [[Build your first application in Java>>url:https://developer.android.com/codelabs/build-your-first-android-app#0||shape="rect"]] durch. Sie stoppen an der Stelle, an der Sie Fragmente implementieren sollen. Stattdessen laden Sie sich das folgende Programmskelett in einem eigenen Projekt herunter und bringen es zum Laufen.
63 +{{view-file att--filename="CompBasedAppSkeleton.zip" display="thumbnail" height="150"/}}
64 +)))
65 +)))
66 +|(((
67 +**2 (Reihenfolge Wechseln im Sommer 25)**
68 +)))|(((
69 +**Android und MVC**
70 +)))|(((
71 +Wir schauen uns das Konzept MVC anhand einer kleinen Beispielanwendung an. Und reden dabei über Komponenten. Die brauchen wir, um stabile Software zu entwickeln. Weil wir Systeme in Teilsysteme zerlegen müssen, um sie testen zu können. Und das werden Sie in diesem Semester auch praktisch üben.
66 66  
73 +Wir schauen uns das Android-Skeleton-Programm genau das rechts neben diesem Satz zu finden ist. Anhand dessen können wir eine Menge über Software-Architekturen diskutieren. Und machen das auch.
67 67  
68 -{{view-file att--filename="CompBasedAppSkeleton.zip" display="thumbnail" height="150"/}}
75 +Bei der Gelegenheit kann ich auch loswerden, warum man [[anonyme Klassen>>url:https://docs.oracle.com/javase/tutorial/java/javaOO/anonymousclasses.html||shape="rect"]] sehr sehr vorsichtig einsetzen sollte. Sie führen meistens dazu, dass man Code hat, der sich ständig wiederholt und in der Tendenz nicht mehr wartbar ist.
76 +
77 +
78 +)))|(((
79 +[[Android:Activity-Lifecycle>>url:https://developer.android.com/guide/components/activities/activity-lifecycle||shape="rect"]]
80 +
81 +[[Wikipedia:MVC>>url:https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller||shape="rect"]]
82 +
83 +[[Mediathek:Facade+Library>>url:https://mediathek.htw-berlin.de/album/video/SEPrinzipienFacadeInversionOfControlFrameworkLibraryDelegate/e603e84f2e279e3f8334f0ce1f3f4dcb/253||shape="rect"]]
84 +)))|(((
85 +(% class="content-wrapper" %)
86 +(((
87 +
69 69  )))
70 70  )))
71 71  |(((
72 -**
73 -**
91 +**1a) (s.o.)**
74 74  )))|(((
75 -**Vom Use-Case zum Interface
76 -**
93 +**Vom Use-Case zum Interface**
77 77  )))|(((
78 78  (% class="content-wrapper" %)
79 79  (((
80 -Wir diskutieren einen Ansatz wie an eine mobile App entwickeln kann.
97 +Wir diskutieren einen Ansatz wie an eine mobile App entwickeln kann. Ein paar Worte über Viewpoints: Mobile Anwendungen kann man wie alle nicht-trivialen Systeme aus unterschiedlichen Perspektiven designen und beschreiben. Wir diskutieren das einmal.
81 81  )))
82 82  )))|(((
83 -\\
100 +[7]
84 84  )))|(((
85 85  (% class="content-wrapper" %)
86 86  (((
87 -\\
104 +
88 88  )))
89 89  )))
90 90  |(((
91 -**1**
108 +**1b) (s.o.)**
92 92  )))|(((
93 -**Android und MVC**
110 +**Komponenten**
94 94  )))|(((
95 -Wir schauen uns das Konzept MVC anhand einer kleinen Beispielanwendung an. Und reden dabei über Komponenten. Die brauchen wir, um stabile Software zu entwickeln. Weil wir Systeme in Teilsysteme zerlegen müssen, um sie testen zu können. Und das werden Sie in diesem Semester auch praktisch üben.
96 -
97 -Wir schauen uns das Android-Skeleton-Programm genau das rechts neben diesem Satz zu finden ist. Anhand dessen können wir eine Menge über Software-Architekturen diskutieren. Und machen das auch.
98 -
99 -Bei der Gelegenheit kann ich auch loswerden, warum man [[anonyme Klassen>>url:https://docs.oracle.com/javase/tutorial/java/javaOO/anonymousclasses.html||shape="rect"]] sehr sehr vorsichtig einsetzen sollte. Sie führen meistens dazu, dass man Code hat, der sich ständig wiederholt und in der Tendenz nicht mehr wartbar ist.
100 -
101 -\\
112 +Wir machen einen kurzen Einstieg in Software-Komponenten. Was ist das, wie beschreibt man das, wie testet man das? Und warum ist es gut, so zu denken? Und wir reden einmal darüber was ein technical white paper ist. Und was all das mit test-driven-development zu tun hat.
102 102  )))|(((
103 -[[Android:Activity-Lifecycle>>url:https://developer.android.com/guide/components/activities/activity-lifecycle||shape="rect"]]
104 -
105 -[[Wikipedia:MVC>>url:https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller||shape="rect"]]
106 -
107 -[[Mediathek:Facade+Library>>url:https://mediathek.htw-berlin.de/album/video/SEPrinzipienFacadeInversionOfControlFrameworkLibraryDelegate/e603e84f2e279e3f8334f0ce1f3f4dcb/253||shape="rect"]]
114 +[[UML Komponentendiagramme>>url:https://www.uml-diagrams.org/component-diagrams.html||shape="rect"]]
108 108  )))|(((
109 109  (% class="content-wrapper" %)
110 110  (((
111 -\\
118 +
112 112  )))
113 113  )))
114 114  |(((
115 -**2**
122 +**3**
116 116  )))|(((
117 117  **Bluetooth**
118 118  )))|(((
... ... @@ -120,14 +120,12 @@
120 120  )))|(((
121 121  [4], [5], [6]
122 122  )))|(((
123 -\\
130 +
124 124  )))
125 125  |(((
126 -**3
127 -**
133 +**4**
128 128  )))|(((
129 -**Security (Identitäten)
130 -**
135 +**Security (Identitäten)**
131 131  )))|(((
132 132  Geräte bauen Verbindungen und Netzwerke auf. Es ist oftmals sehr relevant, die Identät des anderen Gerätes oder der Person, die das Gerät benutzt sicher stellen zu können. Wir reden über Pairing in Bluetooth, wie man in PLMN sicher stellt, dass das Handy mit den Netz verbunden ist, dass es will und wir schauen uns Zertifikate an.
133 133  )))|(((
... ... @@ -139,11 +139,10 @@
139 139  
140 140  [[Wikipedia: Diffie-Hellman-Keys>>url:https://de.wikipedia.org/wiki/Diffie-Hellman-Schl%C3%BCsselaustausch||shape="rect"]]
141 141  )))|(((
142 -\\
147 +
143 143  )))
144 144  |(((
145 -**
146 -**
150 +**5**
147 147  )))|(((
148 148  **Routing in Ad-hoc Netzwerken**
149 149  )))|(((
... ... @@ -151,25 +151,23 @@
151 151  
152 152  Das Thema vertiefen Sie gern im WP-Modul //Technik mobiler Systeme//.
153 153  )))|(((
154 -\\
158 +
155 155  )))|(((
156 -\\
160 +
157 157  )))
158 158  |(((
159 -**
160 -**
163 +
161 161  )))|(((
162 162  Naming
163 163  )))|(((
164 164  Services müssen benannt werden. Rechner bekommen nicht nur IP-Adressen, sondern auch Namen, die sich Menschen merken können. Wir müssen reden über DNS, LDAP und Servicebeschreibungen, z.B. in Bluetooth (SDP)
165 165  )))|(((
166 -\\
169 +
167 167  )))|(((
168 -\\
171 +
169 169  )))
170 170  |(((
171 -**
172 -**
174 +**6a**
173 173  )))|(((
174 174  **Prinzipien Ortung**
175 175  )))|(((
... ... @@ -179,11 +179,10 @@
179 179  
180 180  [[Indoor-Ortung Prinzipien - ein Papier>>url:https://github.com/LocationBasedSystems/Documentation/blob/master/praesentationen_kurzePaper/2016_09_30_Konzept_Skizze_Indoor_Ortung_Navigation.pdf||shape="rect"]]
181 181  )))|(((
182 -\\
184 +
183 183  )))
184 184  |(((
185 -**
186 -**
187 +**6b**
187 187  )))|(((
188 188  **GPS**
189 189  )))|(((
... ... @@ -193,11 +193,10 @@
193 193  
194 194  [[Earth-centered / Earth-fixed_coordinate_system (ECEF)>>url:https://en.wikipedia.org/wiki/Earth-centered,_Earth-fixed_coordinate_system||shape="rect"]]
195 195  )))|(((
196 -\\
197 +
197 197  )))
198 198  |(((
199 -**
200 -**
200 +
201 201  )))|(((
202 202  **Indoor-Ortung**
203 203  )))|(((
... ... @@ -205,10 +205,10 @@
205 205  )))|(((
206 206  [[Überblickspapier>>url:https://github.com/LocationBasedSystems/Documentation/tree/master/praesentationen_kurzePaper||shape="rect"]]
207 207  )))|(((
208 -\\
208 +
209 209  )))
210 210  |(((
211 -\\
211 +
212 212  )))|(((
213 213  Publish-Subscribe / Observer-Pattern
214 214  )))|(((
... ... @@ -218,10 +218,10 @@
218 218  
219 219  [[Android:Services>>url:https://developer.android.com/guide/components/services||shape="rect"]]
220 220  )))|(((
221 -\\
221 +
222 222  )))
223 223  |(((
224 -\\
224 +
225 225  )))|(((
226 226  Software-Architekturen
227 227  )))|(((
... ... @@ -231,37 +231,23 @@
231 231  (((
232 232  [[Mediathek:Video>>url:https://mediathek.htw-berlin.de/album/video/Verteilte-Anwendungsmuster-P2P-Client-Server-Agenten-SharkASAP/db6b10a1014fbda7eeb9b49eadead34b/329||shape="rect"]]
233 233  
234 -\\
234 +
235 235  )))
236 236  )))|(((
237 -\\
237 +
238 238  )))
239 239  |(((
240 -\\
240 +
241 241  )))|(((
242 -Komponenten
242 +**ASAP / Shark**
243 243  )))|(((
244 -Wir machen einen kurzen Einstieg in Software-Komponenten. Was ist das, wie beschreibt man das, wie testet man das? Und warum ist es gut, so zu denken? Und wir reden einmal darüber was ein technical white paper ist.
244 +
245 245  )))|(((
246 -[[UML Komponentendiagramme>>url:https://www.uml-diagrams.org/component-diagrams.html||shape="rect"]]
247 -)))|(((
248 -(% class="content-wrapper" %)
249 -(((
250 -\\
251 -)))
252 -)))
253 -|(((
254 -\\
255 -)))|(((
256 -ASAP / Shark
257 -)))|(((
258 -\\
259 -)))|(((
260 260  * [[Projekt ASAP / Shark Videos (Album)>>url:https://mediathek.htw-berlin.de/album/view/aid/278||shape="rect"]]
261 261  * [[ASAP@Github>>url:https://github.com/SharedKnowledge/ASAPJava/wiki||shape="rect"]]
262 262  * [[AWE-Reallabor>>url:https://wiki.htw-berlin.de/confluence/display/htwclusterssc/FB4+AWE+Reallabor||shape="rect"]]
263 263  )))|(((
264 -\\
250 +
265 265  )))
266 266  
267 267  == {{id name="B35MobileBetriebssystemeundNetzwerke-ErgebnissevonvorherigenSemestern"/}}Ergebnisse von vorherigen Semestern ==
... ... @@ -282,6 +282,11 @@
282 282  
283 283  [6] [[Martin Wooley, A Developer's Guide to Bluetooth Technology (2016)>>url:https://www.bluetooth.com/blog/a-developers-guide-to-bluetooth/||shape="rect"]]
284 284  
271 +[7] [[Open Distributed Processing - Viewpoints>>url:https://en.wikipedia.org/wiki/RM-ODP||shape="rect"]]
272 +
273 +
274 +
275 +
285 285  == {{id name="B35MobileBetriebssystemeundNetzwerke-KlausurenausvorherigenSemestern"/}}Klausuren aus vorherigen Semestern ==
286 286  
287 287  (% class="wrapped" %)
... ... @@ -301,23 +301,12 @@
301 301  {{view-file att--filename="24_PZR1_Klausur.pdf" display="thumbnail" height="150"/}}
302 302  )))
303 303  )))|=(((
304 -\\
295 +
305 305  )))
306 306  
307 -\\
308 308  
309 -\\
310 310  
311 -\\
312 312  
313 -\\
314 314  
315 -\\
316 316  
317 -\\
318 -
319 -\\
320 -
321 -\\
322 -
323 -\\
303 +
23_24_PZR2_Klausur.pdf
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +50.2 KB
Content
24_PZR1_Klausur.pdf
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +51.9 KB
Content
CompBasedAppSkeleton.zip
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +26.6 MB
Content
ComponentSkeletonWithRecyclerView.zip
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +19.8 MB
Content
PZR1_Klausur.pdf
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +49.9 KB
Content
Projekt_Ablauf.pdf
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +114.9 KB
Content
Confluence.Code.ConfluencePageClass[0]
id
... ... @@ -1,1 +1,1 @@
1 -249757907
1 +137726522
url
... ... @@ -1,1 +1,1 @@
1 -https://wiki.htw-berlin.de/spaces/fb4mobileapplicatio/pages/249757907/B35 Mobile Betriebssysteme und Netzwerke
1 +https://wiki.htw-berlin.de/spaces/fb4mobileapplicatio/pages/137726522/B35 Mobile Betriebssysteme und Netzwerke
XWiki.XWikiRights[0]
allow
... ... @@ -1,0 +1,1 @@
1 +Allow
levels
... ... @@ -1,0 +1,1 @@
1 +edit
users
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze