Java Grundlagen: Konventionen, wie benenne ich Klassen, Methoden und Variablen
Allgemein
Bezeichner
Bezeichner sind die Namen der Java Klassen, Interfaces, Variablen, Objekte, Methoden und Konstanten.
Was ist überhaupt erlaubt?
- Alle Unicode Alphabete (z.B.: a-z, A-Z, 0-9, ä, é, ب (Arabisch), β (Griechisch))
- Nummern (jedoch nicht am Anfang)
- Währungssymbole
- Unterstrich _
- kein Schlüsselwörter erlaubt (z.B.: public nicht benutzen)
- keine Leerzeichen erlaubt
Beispiele
erlaubt, nicht erlaubt
- String
- S t r i n g
- i17
- i&17
- بρετη
- 123456
- MAX_VALUE
- max-value
- Public
- public
- $Dollarzeichen
- #lol
- _lol
Was sollte man benutzen (Konvention) ?
Die folgenden Kriterien gelten für alle Bezeichner. Also Klassen, Methoden, Variablen und Interfaces.
- Ausschließlich a-z, A-Z, 0-9
- _ (Unterstrich) nur einmal in Folge verwenden und nie allein
Beispiele
Konvention berücksichtigt, Konventionsverstoß
- String
- بρετη
- i17
- _
- MAX_VALUE
- MAX__VALUE
- Public
- $Dollarzeichen
Klassen (Konventionen)
- Erster Buchstabe immer groß
- CamelCase – Schreibweise (bei mehreren Wörtern den jeweiligen Anfangsbuchstaben groß schreiben, z.B.: BierZapfanlage)
- Möglichst nur Nomen (Substantive) (z.B.: Bier) verwenden
- Möglichst aussagekräftige Namen
- Möglichst keine Abkürzungen
Beispiele
Konvention berücksichtigt, Konventionsverstoß
- String
- string
- Bier
- Trinken
- BierBrauerei
- Bier_Brauerei
Methoden (Konventionen)
- Erster Buchstabe immer klein
- CamelCase – Schreibweise (bei mehreren Wörtern den jeweiligen Anfangsbuchstaben groß schreiben den Rest immer klein, z.B.: bierZapfen)
- Sollte aus Verben bestehen oder in Kombination mit Nomen (z.B.: bierTrinken)
- Möglichst aussagekräftige Namen
- Möglichst keine Abkürzungen
Konvention berücksichtigt, Konventionsverstoß
- bierTrinken
- auto
Variablen (Konventionen)
- Erster Buchstabe immer klein
- CamelCase – Schreibweise (bei mehreren Wörtern den jeweiligen Anfangsbuchstaben groß schreiben den Rest immer klein, z.B.: bierAlkoholgehalt)
- Möglichst aussagekräftige Namen
- Möglichst keine Abkürzungen
Beispiele
Konvention berücksichtigt, Konventionsverstoß
- zahl
- ζαηλ
- kraftfahrzeug
- kfz
- pi
- inPiUmrechnen
- donauDampfschiffahrtsGesellschaft
- z64
Interfaces (Konventionen)
- Adjektive (z.B.: Trinkbar)
Automatische E-Mail Synchronisation mittels Dropbox und Thunderbird

Dropbox und Thunderbird
Ich bin im Besitz eines Netbooks und eines normalen Desktop-PC’s für zu Hause. Oft hab ich mir Gedanken gemacht wie ich am bessten meine WEB.DE – Freemail E-Mails und meine Geschäftlichen E-Mails, die ich per POP3 abrufe, synchronisieren kann. Leider stellt WEB.DE für Benutzer des Freemail Angebots kein IMAP zur Verfügung. Desshalb bin ich auf die Idee gekommen meine Thunderbird Mail-Verzeichnisse in meine Dropbox zu legen und bei beiden PCs zu benutzen. Dropbox ist ein Dienst und ein Programm bei dem ihr euch registrieren könnt und anschließend 2,5 Gigabyte Speicherplatz zur Verfügung gestellt bekommt. Ihr könnt dann über das Programm einen Ordner auf eurem PC anlegen. Dieser wird dann unmittelbar nach einer Änderung synchronisiert, d.h. alle neuen oder geänderten Dateien innerhalb dieses Ordners werden hochgeladen. Ihr habt sogar die Möglichkeit über den Webbrowser auf die Datein zuzugreifen, dazu müsst ihr euch einfach auf Dropbox.com anmelden. Über Extras -> Konten Einstellungen in eurem Mailprogramm Thunderbird könnt ihr das Lokale Verzeichnis eures jeweiligen Kontos ändern und in euren Dropbox Ordner legen. Am besten legt ihr pro Konto einen Extra Unterordner an. Hier im Beispiel habe ich diesen für mein WEB.DE Konto /web.de genannt.
Dies könnt ihr nun für alle Konten und natürlich auch für den Lokalen Ordner machen. Somit sind all eure E-Mails immer schön synchronisiert und sie stehen vorallem bei mehreren Systemen zur Verfügung.
UML Diagramme erstellen
UMLet ist eine Open-Source Software um alle möglichen UML Diagramme mittels einer einfachen Benutzeroberfläche zu erstellen.
Die Software gibts sowohl als eclipse-Plugin als auch als standalone-Software und kann hier heruntergeladen werden. Falls ihr euch für die eclipse Variante entscheidet; Die Heruntergeladene .jar Datei einfach in euer eclipse/plugins Verzeichnis kopieren.
Funktionsumfang
- Activity (Aktivitätsdiagramme)
- Class (Klassendiagramme)
- Composite Structure
- EER (Entity-Relationship-Diagramme)
- Package
- Sequence
- Sate Machine
- Structure and Deployment
- Use Case
Bilder
Als Informatiker einfach ein sehr hilfreiches und leicht zu bedinendes Tool.
Windows 7 vom USB-Stick installieren
Gerade in Zeiten von Netbooks und Wechseldatenträgern stellen sich viele die Frage wie kann ich Windows 7 über einen USB Stick installieren. Das geht ganz einfach. Das Microsoft Tool Windows 7 USB/DVD Download tool ist genau für diesen Zweck erschaffen worden. Ihr könnt euch das Programm hier herunterladen. Anschließend startet ihr es und durchläuft die 4-Schritte Prozedur.

Schritt 1

Schritt 2

Schritt 3
Nach dem Kopieren könnt ihr euren USB-Stick abmelden und Windows7 installieren.
Viel Spaß mit damit!
Smarty Tutorial – dynamische Webanwendung mit PHP
Übersicht
- Einleitung
- Einrichten der Entwicklungsumgebung
- Projekt & Smarty einrichten
- Template erstellen
- Smarty Beispiel-Seite
- Download
Einleitung
Im folgenden Tutorial wird erklärt wie ihr eure erste Webseite erstellt mittels Smarty realisiert. Smarty ist ein Template System oder eine Template Engine und ermöglicht es den PHP-Code und die HTML-Ausgabe strikt zu trennen. Dieses Architektur basiert auf dem Model-View-Controller Paradigma.
Einrichten der Entwicklungsumgebung
Wahl des Editors
Wichtig um effiizient zu arbeiten ist das Programmierumfeld also der Programmier-Editor. Ich persönliche favorisiere Eclipse-WTP. Eclipse-WTP bietet PHP-Unterstützung inklusive Funktionsbeschreibungen. Des weiteren ermöglicht es das Verwenden von sehr praktischen Tastenkürzel, sogenannten Shortcuts. Hier die wichtigsten die ich im alltäglichen Programmierwahnsinn verwende.
- STRG+[Leer] - Automatische Codevervollständigung und anzeigen von Codevorschlägen.
- STRG + SHIFT + R – Live-Schnellsuche um eine Datei aus dem Workspace oder Projekt zu öffnen.
- STRG + SHIFT + F – automatische Codeformatierung (zum Beispiel richtiges Einrücken).
- F3 – wechselt von einem Funktionsaufruf zu der Funktion oder von einer Variablenverwendung zu der Variablendefinition.
- Übliche Tastenkürzel: STRG+C – kopieren, STRG+X – ausschneiden, STRG+V – einfügen, STRG+Z – Schritt rückwärts, STRG+Y – Schritt-vorwärts.
Server und Datenbank installieren
Ein Apache-Webserver und eine Datenbank zu installieren ist nicht ganz so einfach. Noch schwieriger wird es, wenn weitere Pakete wie PHP oder Perl dazukommen. XAMPP ist ein Software-Paket welches Apache, MySQL, PHP und Perl beinhaltet. Über ein Controll Panel kann man einfach den Apache Server und die MySQL Datenbank starten und beenden. XAMPP könnt ihr euch, nachdem ihr euere Betriebsystem ausgewählt habt, einfach hier herunterladen.
Server und Datenbank starten
Nach der Installation könnt ihr über das XAMPP Control Panel den Server und die MySQL-Datenbank starten.

XAMPP - Screenshot
Nun rennt sowohl die Datenbank als auch der Server. Über die Web-Anwendung phpMyAdmin, die automatisch mit XAMPP mitinstalliert wird, könnt ihr Datenbanken und Tabellen erzeugen, löschen oder bearbeiten. Über die Url http://localhost/phpmyadmin gelangt ihr zu der phpMyAdmin Oberfläche. Da in diesem Tutorial keine Datenbank benötigt wird spielt das für uns ersteinmal keine Rolle.
Projekt & Smarty einrichten
Projektordner im Serververzeichnis erstellen
Alle Webprojekte befinden sich standartmäßig im XAMPP Installationsverzeichnis unter xampp\htdocs, zum Beispiel unter C:\xampp\htdocs und ist somit unser Server-Root. Um ein neues Projekt anzulegen erstellen wir einfach im Verzeichnis htdocs den Ordner testprojekt. Dieses Projekt könnt ihr nun über http://localhost/testprojekt erreichen.
Für Smarty werden einige Ordner benötigt, desswegen legen wir folgende Ordner in unserem Projektverzeichnis an.

Ordner Struktur
Smarty herunterladen & einbinden
Die aktuelle Version von Smarty könnt ihr euch hier herunterladen http://www.smarty.net/download.php. Den Ordner Smarty-X.X.XX bennen wir in smarty um und kopieren ihn in unser Verzeichnis lib.
Smarty einrichten
Anschließend müssen wir eine eigene Smarty-Klasse schreiben in der wir einige Verzeichnisse die Smarty benötigt definieren. So sieht diese aus.
classes/TestProjektSmarty.class
<?php date_default_timezone_set("Europe/Berlin"); set_include_path( get_include_path().PATH_SEPARATOR.'./lib'); require_once('lib/smarty/libs/Smarty.class.php'); if(!defined('REQUIRED_SMARTY_DIR')) define('REQUIRED_SMARTY_DIR','./'); class TestProjektSmarty extends Smarty{ function __construct(){ $this->Smarty(); $this->template_dir = REQUIRED_SMARTY_DIR.'templates'; $this->compile_dir = REQUIRED_SMARTY_DIR.'templates_c'; $this->config_dir = REQUIRED_SMARTY_DIR.'config'; $this->cache_dir = REQUIRED_SMARTY_DIR.'cache'; } } ?>
Die Ordnerdefinitionen können natürlich beliebig angepasst werden. Für den Einstieg jedoch empfehle ich die Ordnerstruktur wie sie hier definiert wurde beizubehalten.
Template erstellen
Nun können wir versuchen unsere erste Seite zu erstellen. Diese legen wir logischerweise im Hauptverzeichnis mit dem Namen index.php ab. Da Smarty ein Template-System ist brauchen wir logischerweise erstmal ein Layout für unsere Webseite. In diesem Template soll der Titel und der Seiteninhalt flexibel wählbar sein. Hier der Beispiel-Code für mein Layout-Template layout.html.
template/layout.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>{$title}</title> </head> <body> {include file="$content"} </div> </body> </html>
In der layout.html kommen zwei Arten Inhalte einzubinden zum Einsatz. Einerseits können wir Variablen in unserem Front-End einbinden (über {$variablenname}), andereseits haben wir auch die Möglichkeit andere Template-Dateien einzubinden (über {include file=”dateiname”}). Beide Möglichkeiten können auch kombiniert werden (über {include file=”$dateinamenvariable”}). Alle Template Dateien befinden sich im Ordner template. Ich persönlich benenne das Haupt-Layout immer *.html und alle Teil-Templates *.tpl.
Unsere Beispielseite soll folgenden Inhalt, der sich in der Datei content_index.tpl im Ordner templates befindet, darstellen.
templates/content_index.tpl
<h1>Startseite</h1> <p> Herzlich Willkommen bei meinem ersten Smarty - Projekt! </p>
Smarty Beispiel-Seite
Unsere erste Template-Vorlage ist nun fertig. Wir können jetzt über Smarty diese Platzhalter füllen. Unsere erste Seite, die Startseite, benennen wir logischerweise index.php.
index.php
<?php include_once 'classes/TestProjektSmarty.class.php'; $smarty = new TestProjektSmarty(); $smarty->assign('title', 'Startseite'); $smarty->assign('content', 'content_index.tpl'); $smarty->display('layout.html'); ?>
Als erstes wird unsere erstellte Smarty-Klasse über include_once engebunden. Von dieser Klasse erstellen wir ein Objekt des Typs Smarty. Über dieses Smarty-Objekt können wir alle möglichen Template Aktionen durchführen. Die zwei wichtigsten Funktionen dieses Objekts sind assign und display. Über assign können wir die im Template definierten Platzhalter füllen und über display können wir das ganze dann darstellen.
Falls alles korrekt gelaufen ist können wir über http://localhost/testprojekt/index.php unsere erste Seite aufrufen.

Startseite
Download
Das ganze Projekt könnt ihr euch auch hier herunterladen. Verwendet wurde hier die Smarty-Version 2.6.25.
Ein Karlsruher Bloggt!