core.tex 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. \documentclass[aspectratio=169]{beamer}
  2. % parse most utf-8 correctly
  3. \usepackage[utf8]{inputenc}
  4. % better graphics
  5. \usepackage{graphicx}
  6. % beamer settings
  7. \title{snailmail}
  8. \author{Noah Vogt \& Simon Hammer}
  9. \institute{Gymnasium Kirschgarten}
  10. \usetheme{Copenhagen}
  11. \usepackage{varwidth}
  12. \usepackage{graphicx,calc}
  13. \newlength\myheight
  14. \newlength\mydepth
  15. \settototalheight\myheight{Xygp}
  16. \settodepth\mydepth{Xygp}
  17. \setlength\fboxsep{0pt}
  18. \newcommand*\inlinegraphics[1]{
  19. \settototalheight\myheight{Xygp}
  20. \settodepth\mydepth{Xygp}
  21. \raisebox{-\mydepth}{\includegraphics[height=\myheight]{#1}}%
  22. }
  23. % for code snippits
  24. \usepackage{listings}
  25. \usepackage{color}
  26. \definecolor{dkgreen}{rgb}{0,0.6,0}
  27. \definecolor{gray}{rgb}{0.5,0.5,0.5}
  28. \definecolor{mauve}{rgb}{0.58,0,0.82}
  29. \definecolor{background}{rgb}{0.36,0.36,0.36}
  30. \lstset{
  31. numbersep=3pt,
  32. keywordstyle=\color{blue},
  33. commentstyle=\color{dkgreen},
  34. stringstyle=\color{mauve},
  35. breaklines=true,
  36. numbers=left,
  37. numberstyle=\scriptsize\color{black},
  38. frame=none,
  39. basicstyle = \small\ttfamily,
  40. breaklines=true
  41. breakatwhitespace=false,
  42. columns=flexible,
  43. xleftmargin=0.5cm,framesep=8pt,framerule=0pt,
  44. aboveskip=3mm,
  45. belowskip=3mm,
  46. }
  47. \begin{document}
  48. \maketitle
  49. \begin{frame}{Inhaltsverzeichniss}
  50. %\ldots{}
  51. \tableofcontents
  52. \end{frame}
  53. %\begin{frame}{Motivation}
  54. %\begin{itemize}\pause
  55. % \item allgemeines Interesse\pause
  56. % \item fehlender Edubs-Mail-Client\pause
  57. % \item persönliche Bedürfnisse
  58. %\end{itemize}
  59. \section{Vorwort}
  60. \begin{frame}{Motivation}
  61. \begin{varwidth}{.5\textwidth}
  62. \begin{figure}
  63. \centering
  64. \includegraphics[width=.9\textwidth]{media/macbook.jpg}
  65. \end{figure}
  66. \end{varwidth}
  67. \hfill
  68. \begin{varwidth}{.5\textwidth}
  69. \begin{itemize}\pause
  70. \item allgemeines Interesse\pause
  71. \item fehlender Edubs-Mail-Client\pause
  72. %\item fehlender Edubs-Mail-Client\inlinegraphics{media/baslerstab-1.jpg}\pause
  73. \item persönliche Bedürfnisse
  74. \end{itemize}
  75. \end{varwidth}
  76. \end{frame}
  77. %\begin{frame}{Ziele}
  78. %\begin{itemize}\pause
  79. % \item Basisfunktionen\pause
  80. % \item Account Manager\pause
  81. % \item Design Prinzipien\pause
  82. % \item Schnelligkeit\pause
  83. % \item Mobil und Modern\pause
  84. % \item Einstellungen\pause
  85. %\end{itemize}
  86. %\end{frame}
  87. \subsection{Ziele}
  88. \begin{frame}{Ziele}
  89. \begin{varwidth}{.5\textwidth}
  90. \begin{figure}
  91. \centering
  92. \includegraphics[width=.9\textwidth]{media/target.jpeg}
  93. \end{figure}
  94. \end{varwidth}
  95. \hfill
  96. \begin{varwidth}{.5\textwidth}
  97. \begin{itemize}\pause
  98. \item Basisfunktionen \inlinegraphics{media/mail.png} \pause
  99. \item Account Manager\inlinegraphics{media/business.png}\pause
  100. \item Design Prinzipien\inlinegraphics{media/paintbrush.png}\pause
  101. \item Schnelligkeit\inlinegraphics{media/run.png}\pause
  102. \item Mobil und Modern\inlinegraphics{media/mobile.png}\pause
  103. \item Einstellungen\inlinegraphics{media/settings.png}
  104. \end{itemize}
  105. \end{varwidth}
  106. \end{frame}
  107. \begin{frame}{Warum Java}
  108. \begin{varwidth}{.3\textwidth}
  109. \begin{figure}
  110. \centering
  111. \includegraphics[height=.8\textheight]{media/java-logo.png}
  112. \end{figure}
  113. \end{varwidth}
  114. \hfill
  115. \begin{varwidth}{.6\textwidth}
  116. \begin{itemize}\pause
  117. \item war offizielle Sprache für Android Apps\pause
  118. \item abgelöst von Kotlin (seit 2019)\pause
  119. \item EF Informatik
  120. \end{itemize}
  121. \end{varwidth}
  122. \end{frame}
  123. \begin{frame}{Demo}
  124. \end{frame}
  125. \begin{frame}{Was alles drin ist}
  126. %\includegraphics<1>[height=.8\textheight]{../maturText/media/drawer.png}
  127. %\includegraphics<2>[height=.8\textheight]{../maturText/media/inbox.jpeg}
  128. %\includegraphics<3>[height=.8\textheight]{../maturText/media/emailWriter.png}
  129. \end{frame}
  130. \begin{frame}{allgemeine App-Struktur}
  131. \centering
  132. \includegraphics[height=.7\textheight]{../maturText/media/AppStructure.png}
  133. \end{frame}
  134. \begin{frame}{Inspiration Design}
  135. \begin{varwidth}{.3\textwidth}\pause
  136. \begin{figure}
  137. \centering
  138. \includegraphics[width=.9\textwidth]{media/gmail-logo.png}
  139. \end{figure}
  140. \end{varwidth}
  141. \hfill
  142. \begin{varwidth}{.3\textwidth}\pause
  143. \begin{figure}
  144. \centering
  145. \includegraphics[width=.9\textwidth]{media/k9-logo.png}
  146. \end{figure}
  147. \end{varwidth}
  148. \hfill
  149. \begin{varwidth}{.3\textwidth}\pause
  150. \begin{figure}
  151. \centering
  152. \includegraphics[width=.9\textwidth]{media/fairmail-logo.png}
  153. \end{figure}
  154. \end{varwidth}
  155. \end{frame}
  156. \begin{frame}{Database}
  157. \begin{block}{allgemein}
  158. \end{block}
  159. \begin{block}{in der app}
  160. \end{block}
  161. \end{frame}
  162. \begin{frame}{Email Connection}
  163. \centering
  164. \includegraphics[width=.8\textwidth]{../maturText/media/connection-diagram.png}
  165. \end{frame}
  166. \defverbatim[colored]\makeset{
  167. \lstset{language=python}
  168. \begin{lstlisting}
  169. def sendStarttls(host, sendingMail, receivingMail, password, message="",
  170. subject="", port=587, cc=[], bcc=[]):
  171. context = ssl.create_default_context()
  172. if type(cc) is not str:
  173. cc = ",".join(cc)
  174. if type(bcc) is not str:
  175. bcc = ",".join(bcc)
  176. utf8Message = ("Subject: " + subject + "\nCC: " + cc + "\nBCC: " + bcc +
  177. "\n\n" + message)
  178. decoded = utf8Message.encode('cp1252').decode('utf-8')
  179. with smtplib.SMTP(host, port) as serverConnection:
  180. serverConnection.starttls(context=context)
  181. serverConnection.login(sendingMail, password)
  182. serverConnection.sendmail(sendingMail, receivingMail, decoded)
  183. \end{lstlisting}
  184. }
  185. \begin{frame}{Sendung einer Email}
  186. \makeset
  187. \end{frame}
  188. \begin{frame}{Resultate}
  189. \begin{itemize}\pause
  190. \item User Interface\pause
  191. \item chaquopy\pause
  192. \item Funktionalität\pause
  193. \item abschliessend
  194. \end{itemize}
  195. \end{frame}
  196. \begin{frame}{Was wir gelernt haben}
  197. \begin{varwidth}{.5\textwidth}
  198. \begin{figure}
  199. \centering
  200. \includegraphics[width=.95\textwidth]{media/monetary-success.jpeg}
  201. \end{figure}
  202. \end{varwidth}
  203. \hfill
  204. \begin{varwidth}{.5\textwidth}
  205. \begin{itemize}\pause
  206. \item Java\inlinegraphics{media/java-only-logo.png}\pause
  207. \item Android Apps\inlinegraphics{media/android-robot.png}\pause
  208. \item Android Studio\inlinegraphics{media/android-studio-logo.png}\pause
  209. \item Database \& SQL\inlinegraphics{media/database.png}\pause
  210. \item Gradle\inlinegraphics{media/gradle.png}\pause
  211. \item kryptografisches Signieren\inlinegraphics{media/key.png}
  212. \end{itemize}
  213. \end{varwidth}
  214. \end{frame}
  215. \begin{frame}{Was haben wir wirklich selber gemacht?}
  216. \centering
  217. \includegraphics[height=.8\textheight]{media/self.jpeg}
  218. \end{frame}
  219. \begin{frame}{Room}
  220. INSERT ABSTRACTION LAYERS
  221. \end{frame}
  222. \begin{frame}{Material Design}
  223. \begin{varwidth}{.5\textwidth}
  224. \begin{figure}
  225. \centering
  226. \includegraphics[width=\textwidth]{media/material-design-in-action.jpg}
  227. \end{figure}
  228. \end{varwidth}
  229. \hfill
  230. \begin{varwidth}{.4\textwidth}
  231. \includegraphics[width=\textwidth]{media/material-android.png}
  232. \begin{itemize}\pause
  233. \item GUI-Framework\pause
  234. \item beliebt\pause
  235. \item in Google Apps
  236. \end{itemize}
  237. \end{varwidth}
  238. \end{frame}
  239. \begin{frame}{Was wir gelernt haben}
  240. \end{frame}
  241. \begin{frame}{persönliche Meinung}
  242. \end{frame}
  243. \begin{frame}{Zukunft: Wie geht es weiter?}
  244. \end{frame}
  245. \end{document}