summaryrefslogtreecommitdiff
path: root/Veranstaltungen/Workshops/Programmieren/Go-URL-Shortener.mdwn
blob: d5f742733d5df70b5f0dc2f4ae20959d88f5e8ce (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
[[!meta title="Programmieren in Go: Ein einfacher URL-Shortener"]]

Im Rahmen dieses Workshops werden die Grundlagen der Programmierung in Go anhand der Implementation eines URL-Shorteners erklärt. Es handelt sich dabei um ein Programm, welches kurze URLs erstellt (z.b. http://meineseite.ch/sf) die auf längere, schwer zu merkende URLs verlinken (z.B. <a href="https://www.google.ch/maps/place/Starship+Factory/@47.554587,7.601598,17z/data=!3m1!4b1!4m2!3m1!1s0x4791b9b59742b9a7:0xb1ab8567641952b1" class="urlwordbreakall">https://www.google.ch/maps/place/Starship+Factory/@47.554587,7.601598,17z/data=!3m1!4b1!4m2!3m1!1s0x4791b9b59742b9a7:0xb1ab8567641952b1</a>).

Im Rahmen des Kurses wird erläutert, wie die Programmiersprache Go aufgebaut ist und welche Features zum Erstellen eines URL-Shorteners wichtig und hilfreich sind.

## Ziel des Kurses

Alle Teilnehmer sollen am Ende des Kurses einen funktionierenden URL-Shortener selbst implementiert haben. Die Programmierung in der Sprache Go soll nichts fremdes mehr darstellen.

## Voraussetzungen

Zur Teilnahme am Kurs wird ein Computer (idealerweise ein Laptop) benötigt. Es sollten darauf folgende Programme installiert werden:

* [Die Go-Entwicklungsumgebung](http://golang.org/doc/install)
* Ein Editor, welcher idealerweise bei der Programmierung in Go unterstützend wirkt (z.B. [vim](http://vim.org), [emacs](https://www.gnu.org/software/emacs/), [Sublime Text](http://www.sublimetext.com/)).

### Vim

Für Vim wird ein spezielles Syntax-Paket benötigt, um Go-Code zu schreiben.
Des Weiteren empfiehlt sich die Installation des Pakets [YouCompleteMe](https://github.com/Valloric/YouCompleteMe), welches automatische Vervollständigung für vim bietet.

Unter Debian und Ubuntu erhält man dies ganz einfach durch die Eingabe des folgenden Befehles:

> % sudo apt-get install golang vim-gtk vim-syntax-go vim-youcompleteme

### Sublime Text

Für die Benutzung von Sublime Text mit Go sollte das [GoSublime](https://github.com/DisposaBoy/GoSublime)-Paket installiert werden. Dieses Paket bietet automatische Formatierung und Vervollständigung von Go-Code.

## Quellcode

Der fertige Quellcode des Projekts ist auf [Github](http://github.com/) zu finden: <https://github.com/starshipfactory/learnshortn>

## Weitere Ressourcen

* <http://golang.org/>
* <http://play.golang.org/>