Funktionale Aspekte. Pia Lobenstein

Ähnliche Dokumente
Internationalisierung

Technische Informatik (RO)

Unicode und UTF-8. Anna-Katharina Wurst. 28. April WP5 Angewandte Programmierung

Internationalization I18N. Eine Einführung. (c) 2007 Sascha Kohlmann. I18N - Internationalisierung

Rechnerorganisation. IHS 2015/2016 H.-D. Wuttke, K. Henke

Inhaltsverzeichnis. Teil 1 - XM L Einleitung Motivation...15

Internationalisierung

Rückblick. Addition in der b-adischen Darstellung wie gewohnt. Informatik 1 / Kapitel 2: Grundlagen

Grundlagen von JAVA Hello World in JAVA Elementare Datentypen. Grundlagen von JAVA Hello World in JAVA Elementare Datentypen

2 Repräsentation von elementaren Daten

BERUFSPRAKTIKUM UND -VORBEREITUNG

Einführung in die Programmiertechnik

Hauptspeicherinhalt. Ton. Vektorgrafik Bitmapgrafik Digit. Video. 1. Darstellung von Daten im Rechner. Abb. 1.1: Einteilung der Daten

Datenmodellierung im Zeitalter agiler Softwareentwicklung

Kodierung. Bytes. Zahlensysteme. Darstellung: Zahlen

Inhaltsverzeichnis. Vorwort Kapitel 1 Einleitung... 15

Datenmodellierung VU Einführung SS 2016

Auch 2007 wird diese Empfehlung allerdings immer noch nicht universell befolgt.

3. Stud.IP-Entwickler-Workshop 2. Juni 2006 Workshop 1a: Gib mir 5: Lohnt sich der Umstieg auf PHP5 und MySQL5? André Noack

Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 15

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort... 13

Das Grundlagenbuch zu FileMaker Pro 7- Datenbanken erfolgreich anlegen und verwalten

Grundlagen der Datenverarbeitung

Theorie zur Übung 8 Datenbanken

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort 13

alphanumerische Zeichen

Übung 5. Implementierung einer Datenbank. Prof. Dr. Andreas Schmietendorf 1. Übung 5

4.1 Fontmanagement. Seminar Document Engineering. Michael Boehnke. Fontmanagement

CoRS-O-Mat. Eine freie, webbasierte Anwendungssoftware für linguistische Forschungsdaten

Datenaustausch. Energiewirtschaft 3. Semester. Tillman Swinke

Datenbankentwicklung

Archivierung in DBMS

Codierung von Text. PC in Betrieb nehmen. Der ASCII-Code (American Standard Code for Information Interchange) ASCII

Programmieren I. Prinzipieller Ablauf. Eigenschaften von JAVA. Source-Code Javac Bytecode. Java Virtual Machine (Java, Browser, Appletviewer)

Java Internationalization (i18n) 8. April 2003

DBMS für spezielle Anwendungen XML als Mittel der Datenbank-Interoperabilität

OO Programmiersprache vs relationales Model. DBIS/Dr. Karsten Tolle

Datenbanken als Grundlage für Informationssysteme

Relationale Datenbanken Kursziele

ids-system GmbH Tipp #5 STRING_UNITS ab DB FP 4

Medienart: Print Medientyp: Publikumszeitschriften Auflage: 312'871 Erscheinungsweise: 26x jährlich

Arbeiten mit einem lokalen PostgreSQL-Server

Grundlagen der Informatik 0

Zeichensatzkonvertierung in Oracle-DB. moving objects GmbH Martin Busik Hamburg - Mai

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

Kodierung. Kodierung von Zeichen mit dem ASCII-Code

XML in der Oracle Datenbank

Folien zum Textbuch. Kapitel 2: Planung, Entwicklung und Betrieb von IS. Teil 3: Modellierung von betrieblichen Informationssystemen

Document Engineering. Zeichen- und Fontmanagement Realisierung in Dateiformaten. Daniel Weber. Document Engineering p. 1

Multimediale Werkzeuge. Textformate, Medienobjekte

BI Publisher Berichtswesen einfach und sicher. Alexander Klauss Centric IT Solutions GmbH

18 Softwaresicherheit

Kapitel 14. Objekt-relationales Mapping (ORM) mit Hibernate bzw. Java Persistance API (JPA) Prof. Dr. Wolfgang Weber Vorlesung Datenbanken

Kapitel 3. Codierung von Text (ASCII-Code, Unicode)

Document Engineering

Kapitel 1: Wiederholungsfragen Grundlagen DBS

Medizininformatik Software Engineering

Kapitel DB:IV (Fortsetzung)

Software- und Systementwicklung

Fundamentale Ideen der Informatik PH Weingarten Sommersemester 2014 Paul Libbrecht CC-BY

14. GeoMedia-Anwendertreffen Süddeutschland. Barthauer Software GmbH Thomas Weber, Leiter Consulting

Unicode. Unicode. Praktische Auswirkungen im CBS. Karen Hachmann Verbundzentrale des GBV (VZG) Göttingen, 28. Februar 2007 VZG

Es geht also um die sogenannte SQL- Data Definition Language.

Björn Wüst iteratec GmbH. Nutzen von EAM praktisch vorgeführt

Acrolinx Systemanforderungen

Eclipse und EclipseLink

Informationsdarstellung 2.2

Die Digitalisierung von Musik

Software- /Systemarchitektur

Allgemeines zu Datenbanken

Aktuelle Entwicklungen bei XMLbasierten. Systembeschreibungen in der Automation. Hauptseminar Fabrik- und Gebäudeautomation Thomas Wagner

Datenbanken mit OpenOffice.org Base

In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen.

1 Funktionsaufrufe. Informatik I: Einführung in die Programmierung 4. Funktionen: Aufrufe und Definitionen. Funktionsaufrufe

Grundlagen zu Datenbanken zu Beginn der Jgst. 13

Wie modelliere ich mein Core Data Warehouse?

Das Leben der Anderen

Unicode und Zeichensätze

Motivation und Überblick

wenige Konzepte, keine Adressen, Anlehnung an C++ -Syntax Vererbung, Polymorphie/dynamisches Binden, umfangreiche Klassenbibliotheken

Erstellen von PDF-Dokumenten für Business-Anwendungen mit XSL-FO

TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4

Objektorientierte Programmierung OOP

Mit Spezifikationen im Web arbeiten

Einführung der Gesundheitskarte. Speicherplatzbedarf. Version: Stand:

Das konzeptionelle Datenmodell

DWH Automatisierung mit Data Vault 2.0

Hochschule Darmstadt Data Warehouse SS 2015 Fachbereich Informatik Praktikumsversuch 5

Kap. 9 Datenmodellierung und verwaltung

NoSQL Datenbanken EIN ÜBERBLICK ÜBER NICHT-RELATIONALE DATENBANKEN UND DEREN POTENTIALE IM ALLGEMEINEN UND IN DER INDUSTRIE

Informationsdarstellung im Rechner

Seminar Document Engineering

2. Web 2.0, Semantic Web. 3. Wissensmanagement. 1. Methoden des Wissensmanagements. 2. Software. 4. Wissensrepräsentation

1 PDF-Standards PDF/X Standards PDF/A Standards Erstellung einer PDF/A-1b Datei mit InDesign CS6... 2

NoSQL Andere Wege in der Speicherung von Geodaten?

QR Code. Christina Nemecek, Jessica Machrowiak

Refactoring relationaler Datenbank. Shaoke Wu

Einführung in Datenbanken

7. Übung zur Vorlesung Grundlagen der Informatik

Datenbanken Grundlagen und Design

Transkript:

Funktionale Aspekte Pia Lobenstein 20.05.2010

Gliederung 1. Funktionale Aspekte Klassische Datenmodellierung Definition Potentielle Probleme 2. Internationalisierung Motivation Lokalisierung und Internationalisierung Schwerpunkte bei der Umsetzung Unicode Realisierung im Datenmodell Umsetzung in Java 3. Zusammenfassung

Gliederung 1. Funktionale Aspekte Klassische Datenmodellierung Definition Potentielle Probleme 2. Internationalisierung Motivation Lokalisierung und Internationalisierung Schwerpunkte bei der Umsetzung Unicode Realisierung im Datenmodell Umsetzung in Java 3. Zusammenfassung

Klassische Datenmodellierung: Ausgehend von der Betrachtung eines Ausschnitts der realen Welt werden die relevanten Objekte mit allen relevanten Eigenschaften und die relevanten Beziehungen zwischen ihnen erhoben, analysiert und als Datenmodell grafisch oder textuell formuliert. (Wikipedia) Abbildung fachlicher Inhalte Funktionale Aspekte - Klassische Datenmodellierung 4

Referenzbeispiel Vom ERD zum relationalen Modell Funktionale Aspekte - Klassische Datenmodellierung

Funktionaler Aspekt: Ein funktionaler Aspekt bezeichnet [ ] eine spezifische Eigenschaft eines Datenmodells bzw. Gesamtsystems, welche sich nicht einem konkreten Objekt (business object) zuordnen lässt, sondern eine Vielzahl der modellierten Objekte betrifft. (M. Liebisch) Funktionale Aspekte - Definition

Begriff entstammt der Aspektorientierten Programmierung auch querschnittlicher Belang genannt keine fachlichen, sondern übergreifende Inhalte Beispiele: Versionierung Rechteverwaltung Logging Internationalisierung Verzahnung von funktionalen und inhaltlichen Aspekten Funktionale Aspekte - Definition

sich dadurch ergebende Probleme: schwer modularisierbar schlechte Wiederverwendbarkeit aufwendigere Wartung Performancesenkung teilweise redundante Speicherung der Daten eventuell große Eingriffe in Datenmodell nötig ZIEL: Trennung von fachlichen und funktionalen Aspekten Funktionale Aspekte potentielle Probleme

Gliederung 1. Funktionale Aspekte Klassische Datenmodellierung Definition Potentielle Probleme 2. Internationalisierung Motivation Lokalisierung und Internationalisierung Schwerpunkte bei der Umsetzung Unicode Realisierung im Datenmodell Umsetzung in Java 3. Zusammenfassung

Internationalisierung - Motivation Gewinnmaximierung Rentabilität Marktstellung stärken/verbessern Sicherheit steigern Anwendung muss an verschiedene Märkte und Länder angepasst werden. Internationalisierung - Motivation

Lokalisierung: Lokalisierung bezieht sich auf die Angleichung eines Produkts, einer Anwendung oder eines Dokuments, um der Sprache, den kulturellen oder anderen Anforderungen eines bestimmten Zielmarktes [...] zu entsprechen. (W3C) Eine Locale bezeichnet eine geografische, politische oder kulturelle Region. (A.Göbel) Anpassung sehr aufwendig Internationalisierung Lokalisierung und Internationalisierung

Internationalisierung: Internationalisierung entspricht dem Design und der Entwicklung eines Produkts, einer Anwendung oder eines Dokuments, das leichte Lokalisierung für Zielgruppen, die in Kultur, Region oder Sprache variieren, ermöglicht. (W3C) Internationalisierung Lokalisierung und Internationalisierung

Internationalisierung schlecht gemacht: Pleasant Bay Village angenehm Bay Village (Tripadvisor.de) Elektrisch Können Öffner Dose Knopfdruck Ein Berühren (ebay.de) Wenn Ihr Einzelteil DOA (Tote der Ankunft), können Sie es in 30 Tagen zurückbringen (ebay.de) Kein Mähdrescherverschiffen für mehr kleidet an. (ebay.de) Internationalisierung Lokalisierung und Internationalisierung

Was muss alles beachtet werden? sprach-/marktspezifische Eigenheiten Währungen und Preise Beschreibungstexte Formate (Datum, Zeit, Adresse, Telefonnr.) Zeitzonen Maßangaben Schreibrichtung Sortierreihenfolge Anpassung der Oberflächendaten (Bilder, Töne etc.) marktabhängige Existenz der Baukastendaten Internationalisierung Schwerpunkte bei der Umsetzung

Formate: Datumsformate: 20.05.2010 2010/05/20 2010-05-20 20100520 Adressformate: Carl-Zeiß-Straße 3 07743 Jena 3 Carl-Zeiß-Straße Jena 07743 Internationalisierung Schwerpunkte bei der Umsetzung

Internationalisierung - Unicode

Unicode: Unicode ist ein internationaler Standard, in dem langfristig für jedes sinntragende Schriftzeichen oder Textelement aller bekannten Schriftkulturen und Zeichensysteme ein digitaler Code festgelegt wird. (Wikipedia) Internationalisierung - Unicode

früher: ISO 8859 Standards viele verschiedene Standards auf 8 Bit Basis durch zunehmende Globalisierung nicht mehr tragbar zum Unicode-Standard gehören: Zeichensatz Normalisierung Sortierreihenfolgen Internationalisierung - Unicode

Unterschiedliche Kodierungsmethoden UTF 32 Bitfolgen fester Länge (4 Byte) viel Speicherplatz benötigt wahlfreier Zugriff auf Zeichen im Speicher UTF 16 Bitfolgen variabler Länge (2/4 Byte) Weniger Speicherplatz benötigt weniger Zeichen darstellbar als mit UTF-32 bzw. UTF-8 UTF 8 Bitfolgen variabler Länge (1-4 Byte) flexibel stimmt in den ersten Zeichen mit dem ASCII-Code überein am gebräuchlichsten Internationalisierung - Unicode

Kodierung von Zeichen mit UTF - 8 Bitfolge 0xxxxxxx 110xxxxx 10xxxxxx 1110xxxx 10xxxxxx 10xxxxxx 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx Max. Anzahl darstellbarer Zeichen 8 2 11 2 16 2 21 2 Internationalisierung - Unicode

Unicode-Unterstützung in DBMS: DBMS seit Version / Jahr DB2 (z/os) Version 7 / 2001 Oracle Version 7/8 / 1992/1997 MS SQL-Server Version 7 / 1999 (UCS-2) MySQL Version 4.1 / 2004 Ingres Version 2.6 / 2001 PostgreSQL Version 7.1 / 2001 Internationalisierung - Unicode

Umsetzung im Datenmodell: Einführen einer Locale_ID: TeileNr Locale_ID Bezeichnung Preis Währung Flags 1 de Gaspedal 15 1 de_a Gaspedal 13 1 en_gb accelerator 12 1 en_us gas pedal 18 $ Erweiterung des Primärschlüssels um das neue Attribut Locale_ID Redundanz Internationalisierung Realisierung im Datenmodell

Umsetzung in Programmiersprachen Java: Mehrsprachigkeit mit Hilfe von ResourceBundles ResourceBundle = Sammlung Locale-spezifischer Listen/Dateien #HelloWorld_en.properties Hello = Hello World Bye = Bye #HelloWorld_de.properties Hello = Hallo Welt Bye = Tschüss Verwendung im Quelltext: mybundle.getxxx( Key ) HelloWorld.getString( Hello ) Internationalisierung Umsetzung in Java

Land und eingestellte Sprache lassen sich über folgende Abfragen herausfinden: System.getProperty( user.country ) System.getProperty( user.language ) weiterhin unterstützt: verschiedene Datums- und Zeitformate Umwandlung zwischen diesen verschiedene Ausrichtungen von Schriften durch Swing Internationalisierung Umsetzung in Java

Gliederung 1. Funktionale Aspekte Klassische Datenmodellierung Definition Potentielle Probleme 2. Internationalisierung Motivation Lokalisierung und Internationalisierung Schwerpunkte bei der Umsetzung Unicode Realisierung im Datenmodell Umsetzung in Java 3. Zusammenfassung

Zusammenfassung Zusammenfassung: Funktionale Aspekte: objektübergreifende Eigenschaft einer Anwendung (z.b. Rechteverwaltung) viele Probleme durch direkte Verzahnung von funktionalen und inhaltlichen Aspekten Modularisierung als Ziel Internationalisierung durch Globalisierung immer bedeutender Internationalisierung als Voraussetzung für Lokalisierung Beeinflusst nicht nur die Sprache selbst (Formate, Modulzusammensetzungen etc.) Verwendung des Unicode-Standards zur technischen Realisierung

Vielen Dank für die Aufmerksamkeit!

Quellen: www.p8-management.de/fileadmin/dateien/lehre/mittelstand_2009/vortrag_ Dreimann_090630.pdf http://java.sun.com/j2se/1.4.2/docs/api/java/util/resourcebundle.html http://openbook.galileodesign.de/javainsel7/javainsel_11_004.htm www.roseindia.net/java/java-get-example/java-get-system-locale.shtml http://www.w3.org/international/questions/qa-i18n.de.php http://de.wikipedia.org/wiki/datenmodellierung http://users.minet.uni-jena.de/~m4goan/pub/goebel-da-2009.pdf http://users.minet.uni-jena.de/~liebisch/pub/2008_datenhaltung_ konfiguratoren.pdf http://www.informatik.uni-jena.de/dbis/lehre/ws2009/konfsem/04_vortrag_ schilling_aspekte.pdf http://www.informatik.uni-jena.de/dbis/lehre/ws2009/konfsem/04_arbeit_ schilling_aspekte.pdf

Quellen: http://de.wikipedia.org/wiki/iso_8859 http://de.wikipedia.org/wiki/unicode http://de.wikipedia.org/wiki/utf-16 http://de.wikipedia.org/wiki/utf-8 http://de.wikipedia.org/wiki/utf-32 http://www.ruban.de/themen/nls_unicode/idug_sj_final_part_1.pdf http://www.oracle.com/technology/tech/globalization/pdf/twp_appdev_uni code_10gr2.pdf http://lists.mysql.com/mysql/121518 http://www.codeproject.com/kb/reporting-services/unicodeinsqlserver.aspx https://caj.informatik.uni-jena.de/main?efjd=re9xtkxpquq %3D&eElE=TVRFNU5UUSUzRA%3D%3D http://www.postgresql.org/docs/7.1/static/multibyte.html#aen13656