<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Beiträge von Ana Gvodzen - Mobile USTP MKL</title>
	<atom:link href="https://mobile.fhstp.ac.at/author/dm141530/feed/" rel="self" type="application/rss+xml" />
	<link>https://mobile.fhstp.ac.at/author/dm141530/</link>
	<description>Die &#34;Mobile Forschungsgruppe&#34; der USTP, sie  sammelt hier alles zu den Themen Design, UX und Entwicklung mobiler Applikationen</description>
	<lastBuildDate>Mon, 17 Apr 2017 12:45:32 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://mobile.fhstp.ac.at/wp-content/uploads/2025/03/icon-120x120.webp</url>
	<title>Beiträge von Ana Gvodzen - Mobile USTP MKL</title>
	<link>https://mobile.fhstp.ac.at/author/dm141530/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Ionic</title>
		<link>https://mobile.fhstp.ac.at/allgemein/ionic/</link>
		
		<dc:creator><![CDATA[Ana Gvodzen]]></dc:creator>
		<pubDate>Tue, 29 Mar 2016 19:44:46 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Projekte]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=6184</guid>

					<description><![CDATA[<p>Ionic ist ein open source front-end SDK für die Entwicklung von hybriden Apps durch Webtechnologien wie HTML, CSS und AngularJS. Ionic verfügt über ein nützliches CLI (command line interface), das einfaches Erstellen, Kompilieren, Ausführen und Exportieren von mobilen Applikationen ermöglicht Durch die umfassende Dokumentation zu diesem Framework kann man relativ schnell erste Prototypen erstellen. Während <a class="read-more" href="https://mobile.fhstp.ac.at/allgemein/ionic/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/ionic/">Ionic</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Ionic ist ein open source front-end SDK für die Entwicklung von hybriden Apps durch Webtechnologien wie HTML, CSS und AngularJS. Ionic verfügt über ein nützliches CLI (command line interface), das einfaches Erstellen, Kompilieren, Ausführen und Exportieren von mobilen Applikationen ermöglicht</p>
<p>Durch die umfassende <a href="http://ionicframework.com/docs/" target="_blank">Dokumentation</a> zu diesem Framework kann man relativ schnell erste Prototypen erstellen.</p>
<p>Während ich mit meiner Studienkollegin Theres-Sophie Scheucher an einer mobilen App basierend auf Ionic gearbeitet habe (restaurantApp), bin ich auf einige interessante Informationen gestoßen, die in diesem Artikel kurz beschrieben werden.</p>
<h2>Getting Started</h2>
<p>Der einfachste Weg, eine Ionic App mit dazu benötigtem Template zu erstellen, ist, die übersichtliche Anleitungen auf der Seite von Ionic „<a href="http://ionicframework.com/getting-started/" target="_blank">Getting Started</a>“ zu befolgen.</p>
<h2><strong>Customizing</strong> <strong>Styles</strong></h2>
<p>Es gibt mehrere Möglichkeiten, das Styling der App zu definieren. Wichtig dabei ist, dass man die default Ionic Gulp Files nicht unnötig verändert, da diese beim nächsten update wieder verworfen werden.</p>
<h3>Styles im www Ordner</h3>
<p>Schnell und einfach kann man neue CSS Dateien in den WWW Ordner geben, und diese in der index.html referenzieren. Allerdings funktioniert das nicht sehr gut mit dem Ionic Gulp setup. Daher wird dies Methode eher nicht empfohlen.</p>
<h3>Styles im ionic.app.scss</h3>
<p>Im Ordner /scss gibt es die ionic.app.scss Datei, welche die Haupt SASS Datei ist, die alle Styles der Applikation kompiliert. Diese Methode wird auch von Ionic’s Gulp set up empfohlen. In dieser Datei können unzählige neue Styles hinzugefügt werden und funktionieren gut für kleine und einfache Applikationen mit wenig Anpassungen.</p>
<h3>Eigene Datein</h3>
<p>Aufgrund der Übersichtlichkeit habe ich für unsere restaurantApp ein eigenes File mit den jeweiligen Styles angelegt und dieses Datei anschließend mittels @import Statement in die sass Datei eingefügt.</p>
<h2><strong>Variablen überschreiben</strong></h2>
<p>Ionic verfügt über zahlreiche vordefinierte Variablen, die für das adaptieren des Designs genutzt werden können. Bevor selbst Variablen definiert werden, sollte ein Blick auf die Liste der Default Variablen geworfen und diese gegebenenfalls überschrieben werden.</p>
<p>Der korrekte Weg ,Variablen zu überschreiben, kann im File <em>scss/ionic.app.scss</em> nachgelesen werden. Diese Datei beinhaltet eine Anleitung, wie beziehungsweise wo diese überschrieben werden sollen. Diese Datei sieht folgendermaßen aus (<em>Default</em>)</p>
<pre class="brush: css; title: ; notranslate">
/*
To customize the look and feel of Ionic, you can override the variables
in ionic's _variables.scss file.

For example, you might change some of the default colors:

$light:                           #fff !default;
$stable:                          #f8f8f8 !default;
$positive:                        #387ef5 !default;
$calm:                            #11c1f3 !default;
$balanced:                        #33cd5f !default;
$energized:                       #ffc900 !default;
$assertive:                       #ef473a !default;
$royal:                           #886aea !default;
$dark:                            #444 !default;
*/

// The path for our ionicons font files, relative to the built CSS in www/css
$ionicons-font-path: &quot;../lib/ionic/fonts&quot; !default;

// Include all of Ionic
@import &quot;www/lib/ionic/scss/ionic&quot;;

</pre>
<p>&nbsp;</p>
<p>Wichtig ist, dass das Überschrieben der Variablen vor dem ionic import geschieht, da ansonsten die Default Values von Ionic die eigenene Values überschreiben würden.</p>
<h2><strong>Unterschiedliche Icons bei iOS und Android</strong></h2>
<p>Ionic hat nützliche Funktionen wie <em>ionic.Platform.isIOS(), ionic.Platform.isAndroid()</em> und <em>ionic.Platform.isWindowsPhone()</em>, um festzustellen, welches Icon verwendet werden soll. Beispiel:</p>
<pre class="brush: jscript; title: ; notranslate">
var icon;
 
if (ionic.Platform.isIOS()) {
  
  icon = 'ion-ios-arrow-back';
} else if (ionic.Platform.isAndroid()) { 
 
  icon = 'ion-android-arrow-back';
} else { 
 
  icon = 'ion-android-arrow-back';
}
</pre>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/ionic/">Ionic</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>ECMAScript 6 (ES6): Was ist neu an der nächsten Version von JavaScript? Teil 2</title>
		<link>https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript-teil-1/</link>
					<comments>https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript-teil-1/#comments</comments>
		
		<dc:creator><![CDATA[Ana Gvodzen]]></dc:creator>
		<pubDate>Fri, 08 Jan 2016 20:22:19 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Studium]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=6016</guid>

					<description><![CDATA[<p>ECMAScript 6 oder ES6 ist die neueste Version von JavaScript und bringt tolle neue Features mit. Dieser Artikel ist nun der zweite Teil, der sich mit einigen dieser Features auseinandersetzt. Teil 1 findest du unter folgendem Link: ECMAScript 6 Teil 1 Übersicht Math Spread Operator Destructuring Parameters Klassen Math Ein paar neue Methoden sind zum Math <a class="read-more" href="https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript-teil-1/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript-teil-1/">ECMAScript 6 (ES6): Was ist neu an der nächsten Version von JavaScript? Teil 2</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>ECMAScript 6 oder ES6 ist die neueste Version von JavaScript und bringt tolle neue Features mit. Dieser Artikel ist nun der zweite Teil, der sich mit einigen dieser Features auseinandersetzt. Teil 1 findest du unter folgendem Link: <a href="https://akirchknopf-21110.php.fhstp.cc/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript/">ECMAScript 6 Teil 1</a><br />
<span id="more-6016"></span></p>
<h2>Übersicht</h2>
<ul>
<li><a href="#math">Math</a></li>
<li><a href="#spread-operator">Spread Operator</a></li>
<li><a href="#destructuring">Destructuring</a></li>
<li><a href="#parameters">Parameters</a></li>
<li><a href="#klassen">Klassen</a></li>
</ul>
<h2><a name="math"></a>Math</h2>
<p>Ein paar neue Methoden sind zum Math Objekt hinzugekommen</p>
<ul>
<li>Math.sign: gibt das Vorzeigen einer Nummer als 1, -1 oder 0 aus.</li>
<li>Math.trunc: gibt die Zahl ohne Nachkommerstellen zurück</li>
<li>Math.cbrt: gibt die Kubikwurzel der Zahl zurück</li>
</ul>
<pre class="brush: jscript; title: ; notranslate">
Math.sign(5); // 1
Math.sign(-9); // -1

Math.trunc(5.9); // 5
Math.trunc(5.123); // 5

Math.cbrt(64); // 4

</pre>
<h2><a name="spread-operator"></a>Spread Operator</h2>
<p>Der Spread Operator (&#8230;) ist eine Syntax, um Elemente eines Arrays in speziellen Orten, wie zum Beispiel bei Argumenten in Funktionsaufrufen, zu erweitern.<br />
So erweiterte man Elemente eines Arrays innerhalb eines anderen Arrays:</p>
<pre class="brush: jscript; title: ; notranslate">
let values = &#x5B;1, 2, 4];
let some = &#x5B;...values, 8]; // &#x5B;1, 2, 4, 8]
let more = &#x5B;...values, 8, ...values]; // &#x5B;1, 2, 4, 8, 1, 2, 4]

// ES5 equivalent:
let values = &#x5B;1, 2, 4];
// Iterate, push, sweat, repeat...
// Iterate, push, sweat, repeat...
</pre>
<p>Diese Syntax ist auch bei Funktionsaufrufen mit Argumenten sehr nützlich</p>
<pre class="brush: jscript; title: ; notranslate">
let values = &#x5B;1, 2, 4];

doSomething(...values);

function doSomething(x, y, z) {
   // x = 1, y = 2, z = 4
}

// ES5 equivalent:
doSomething.apply(null, values);
</pre>
<p>Bislang wurden Beispiele gezeigt, bei dem der Spread Operator bei Arrays und Argumenten angewendet wurde. Allerdings kann er bei allen zählbaren Objekten wie zum Beispiel NodeList verwendet werden.</p>
<pre class="brush: jscript; title: ; notranslate">
let form = document.querySelector('#my-form'),
   inputs = form.querySelectorAll('input'),
   selects = form.querySelectorAll('select');

let allTheThings = &#x5B;form, ...inputs, ...selects];
</pre>
<p>Nun ist allTheThings ein Array, das sowohl das &lt;form&gt; Element als auch ihre Kindelemente &lt;input&gt; und &lt;select&gt; beinhaltet.</p>
<h2><a name="destructuring"></a>Destructuring</h2>
<p>Destructuring bietet eine bequeme Möglichkeit, um Daten von Objekten oder Arrays zu extrahieren.</p>
<pre class="brush: jscript; title: ; notranslate">
let &#x5B;x, y] = &#x5B;1, 2]; // x = 1, y = 2

// ES5 equivalent:
var arr = &#x5B;1, 2];
var x = arr&#x5B;0];
var y = arr&#x5B;1];
</pre>
<p>Mit dieser Syntax können mehreren Variablen ein Value in einem Schritt zugeordnet werden. Ein schöner Nebeneffekt ist, dass man leicht Values der Variablen tauschen kann:</p>
<pre class="brush: jscript; title: ; notranslate">
let x = 1,
   y = 2;

&#x5B;x, y] = &#x5B;y, x]; // x = 2, y = 1
</pre>
<p>Das Ganze funktioniert ebenfalls mit Objekten</p>
<pre class="brush: jscript; title: ; notranslate">
let obj = {x: 1, y: 2};
let {x, y} = obj; // x = 1, y = 2
</pre>
<p>Es können auch mehrere Return-Values simuliert werden:</p>
<pre class="brush: jscript; title: ; notranslate">
function doSomething() {
   return &#x5B;1, 2]
}

let &#x5B;x, y] = doSomething(); // x = 1, y = 2
</pre>
<h2><a name="parameters"></a>Parameters</h2>
<h3>Default Values</h3>
<p>In ES6 ist die Definierung von Default Values für Funktionsparameter möglich.</p>
<pre class="brush: jscript; title: ; notranslate">
function doSomething(x, y = 2) {
   return x * y;
}

doSomething(5); // 10
doSomething(5, undefined); // 10
doSomething(5, 3); // 15
</pre>
<p>Der Default Value wird genommen, sobald entweder undefined oder kein Argument übergeben wurde.</p>
<h3>Rest Parameters</h3>
<p>Rest Parameters sind dem spread operator sehr ähnlich. Sie verwenden ebenfalls die &#8230; syntax und ermöglicht, nachkommende Argumente zu speichern.</p>
<pre class="brush: jscript; title: ; notranslate">
function doSomething(x, ...remaining) {
   return x * remaining.length;
}

doSomething(5, 0, 0, 0); // 15
</pre>
<h2><a name="klassen"></a>Klassen</h2>
<p>Klassen sind ab sofort ein Teil von ES6. Sie werden mit den Keywords class und constructor gebaut:</p>
<pre class="brush: jscript; title: ; notranslate">
class Vehicle {
   constructor(name) {
      this.name = name;
      this.kind = 'vehicle';
   }	
   getName() {
      return this.name;
   }   
}

// Create an instance
let myVehicle = new Vehicle('rocky');

</pre>
<p>Um eine Instanz von einer Klasse zu kreieren, wird das Keyword new verwendet. Um von einer Klasse zu erben, das Keyword extends:</p>
<pre class="brush: jscript; title: ; notranslate">
class Car extends Vehicle {
   constructor(name) {
      super(name);
      this.kind = 'car'
   }		
}

let myCar = new Car('bumpy');

myCar.getName(); // 'bumpy'
myCar instanceof Car; // true
myCar instanceof Vehicle; //true

</pre>
<p>The post <a href="https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript-teil-1/">ECMAScript 6 (ES6): Was ist neu an der nächsten Version von JavaScript? Teil 2</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript-teil-1/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>ECMAScript 6 (ES6): Was ist neu an der nächsten Version von JavaScript? Teil 1</title>
		<link>https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript/</link>
					<comments>https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript/#comments</comments>
		
		<dc:creator><![CDATA[Ana Gvodzen]]></dc:creator>
		<pubDate>Wed, 06 Jan 2016 15:17:21 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Studium]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=6005</guid>

					<description><![CDATA[<p>ECMAScript 6 oder ES6 ist die neueste Version von JavaScript und bringt tolle neue Features mit. Dieser Artikel beschäftigt sich mit einigen dieser Features, die du in deinem täglichen JavaScript Coding verwenden kannst. Übersicht Variablen Arrow Functions String Array Variablen Let In JavaScript sind wir es gewohnt, eine Variable mit var zu deklarieren. Mit der <a class="read-more" href="https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript/">ECMAScript 6 (ES6): Was ist neu an der nächsten Version von JavaScript? Teil 1</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>ECMAScript 6 oder ES6 ist die neueste Version von JavaScript und bringt tolle neue Features mit. Dieser Artikel beschäftigt sich mit einigen dieser Features, die du in deinem täglichen JavaScript Coding verwenden kannst.<br />
<span id="more-6005"></span></p>
<h2>Übersicht</h2>
<ul>
<li><a href="#variablen">Variablen</a></li>
<li><a href="#arrow-functions">Arrow Functions</a></li>
<li><a href="#string">String</a></li>
<li><a href="#array">Array</a></li>
</ul>
<h2><a name="variablen"></a>Variablen</h2>
<h3>Let</h3>
<p>In JavaScript sind wir es gewohnt, eine Variable mit <strong>var</strong> zu deklarieren. Mit der neuen JavaScript Version kann auch <strong>let</strong> verwendet werden. Der Unterschied der beiden Deklarationen liegt im Scope. Während der Scope für Variablen, die mit var deklariert sind, für umgebende Funktionen gültig ist, ist der Scope für Variablen, die mit let deklariert worden sind, nur für den Block innerhalb der Deklaration gültig.</p>
<pre class="brush: jscript; title: ; notranslate">

if(true) {
  let x = 1;
}

console.log(x); // undefined

</pre>
<p>Die Verwendung von let kann zu einer sauberen Codeschreibweise führen und verhindert „herumliegende“ Variablen.</p>
<pre class="brush: jscript; title: ; notranslate">
for(let i = 0, l = list.length; i &lt; l; i++) {
  // do something with list&#x5B;i]
}

console.log(i); // undefined
</pre>
<p>Oft würde man für eine weitere Iteration in dem gleichen Scope, beispielsweise die Variable j verwenden. Aber mit let könnte man einfach und sicher die Variable i nochmals deklarieren, solange es nur innerhalb seines eigenen Blocks deklariert und verfügbar ist.</p>
<h3>Const</h3>
<p>Es gibt einen weiteren Weg, Variablen innerhalb eines Blocks zu deklarieren. Mit const deklariert man eine read-only Referenz zu einer Variable. Es muss eine Variable direkt zugewiesen werden. Wenn versucht wird, die Variable zu ändern oder kein Wert sofort gesetzt wird, wird eine Fehlermeldung geworfen:</p>
<pre class="brush: jscript; title: ; notranslate">
const MY_CONSTANT = 1;
MY_CONSTANT = 2 // Error
const SOME_CONST; // Error
</pre>
<p>Allerdings können immer noch Objekteigenschaften oder Array Werte geändert werden:</p>
<pre class="brush: jscript; title: ; notranslate">
const MY_OBJECT = {some: 1};
MY_OBJECT.some = 'body'; // Cool
</pre>
<h2><a name="arrow-functions"></a>Arrow Functions</h2>
<p>Arrow Functions sind eine großartige Bereicherung für die JavaScript Sprache. Sie machen den den Code kurz und prägnant. Der folgende Code zeigt eine Arrow Function, und dieselbe Funktion nur im ES5 Stil verfasst:</p>
<pre class="brush: jscript; title: ; notranslate">
let books = &#x5B;{title: 'X', price: 10}, {title: 'Y', price: 15}];

let titles = books.map( item =&gt; item.title );

// ES5 equivalent:
var titles = books.map(function(item) {
   return item.title;
});

</pre>
<p>Wenn wir einen Blick auf die Syntax der Arrow Funktionen werfen, dann sehen wir kein Keyword function. Wir sehen nur 0 oder mehr Arguemte, den Pfeil (=&gt;) und den Funktionsausdruck.</p>
<p>Bei 0 oder mehr als einem Argument müssen Klammern verwendet werden:</p>
<pre class="brush: jscript; title: ; notranslate">
// No arguments
books.map( () =&gt; 1 ); // &#x5B;1, 1]

// Multiple arguments
&#x5B;1,2].map( (n, index) =&gt; n * index ); // &#x5B;0, 2]
</pre>
<p>Wenn du logischen oder mehr Weißraum brauchst, setze den Funktionsausdruck in einem Block { &#8230; } :</p>
<pre class="brush: jscript; title: ; notranslate">
let result = &#x5B;1, 2, 3, 4, 5].map( n =&gt; {
   n = n % 3;
   return n;
});
</pre>
<p>Arrow Funktionen bedeuten nicht nur weniger zu tippen, sondern sie verhalten sich auch unterschiedlich zu den regulären Funktionen. Ein Arrow Funktionsausdruck erbt this und arguments vom umliegenden Kontext. Somit können hässliche Statements wie var that = this vermieden werden und es müssen keine Funktionen zum richtigen Kontext gebunden werden. Hier ist ein Beispiel (Hinweis: this.title vs. that.title in der ES5 Version):</p>
<pre class="brush: jscript; title: ; notranslate">
let book = {
   title: 'X',
   sellers: &#x5B;'A', 'B'],
   printSellers() {
      this.sellers.forEach(seller =&gt; console.log(seller + ' sells ' + this.title));
   }
}

// ES5 equivalent:
var book = {
   title: 'X',
   sellers: &#x5B;'A', 'B'],
   printSellers: function() {
      var that = this;
      this.sellers.forEach(function(seller) {
         console.log(seller + ' sells ' + that.title)
      })
   }
}

</pre>
<h2><a name="string"></a>String</h2>
<h3>Methoden</h3>
<p>Einige Methoden sind zum String Protoyp hinzugefügt worden. Die meisten davon eliminieren den Workaround mit der indexOf() Methode.</p>
<pre class="brush: jscript; title: ; notranslate">
'my string'.startsWith('my'); //true
'my string'.endsWith('my'); // false
'my string'.includes('str'); // true
</pre>
<p>Einfach aber sehr effektiv. Eine weitere bequeme Methode ist nun möglich, um einen sich wiederholenden String zu kreieren:</p>
<pre class="brush: jscript; title: ; notranslate">
'my '.repeat(3); // 'my my my '
</pre>
<h3>TEMPLATE LITERAL</h3>
<p>Template Literale ermöglichen einen sauberen Weg, um einen String zu erstellen und String Interpolationen durchzuführen. Der Syntax dafür basiert auf dem Dollarzeichen und geschweiften Klammern $ {..}.</p>
<pre class="brush: jscript; title: ; notranslate">
let name = 'John',
   apples = 5,
   pears = 7,
   bananas = function() { return 3; }

console.log(`This is ${name}.`);

console.log(`He carries ${apples} apples, ${pears} pears, and ${bananas()} bananas.`);

// ES5 equivalent:
console.log('He carries ' + apples + ' apples, ' + pears + ' pears, and ' + bananas() +' bananas.');
</pre>
<p>Im obigen Beispiel und im Vergleich zu ES5 sehen wir den einfachen Weg von String-Verkettungen. Allerdings können Template Literale auch für mehrzeilige Zeichenfolgen verwendet werden:</p>
<pre class="brush: jscript; title: ; notranslate">
let x = `1...
2...
3 lines long!`; // Yay

// ES5 equivalents:
var x = &quot;1...\n&quot; + 
&quot;2...\n&quot; +
&quot;3 lines long!&quot;;

var x = &quot;1...\n2...\n3 lines long!&quot;;
</pre>
<h2><a name="array"></a>Array</h2>
<p>Ab sofort hat das Array Objekt neue statische Klassenmethoden, sowie neue Methoden des Array Protoypen. Array.form erstellt eine Array Instanz von Array ähnlichen und abzählbaren Objekten. Beispiele für Array ähnlichen Objekten:<br />
• Argumente innerhalb einer Funktion<br />
• Eine nodeList die bei document.getElementsByTagName() zurückgegeben wird<br />
• Die neuen Map und Set Data Strukturen</p>
<pre class="brush: jscript; title: ; notranslate">
let itemElements = document.querySelectorAll('.items');
let items = Array.from(itemElements);
items.forEach(function(element) {
    console.log(element.nodeType)
});		

// A workaround often used in ES5:
let items = Array.prototype.slice.call(itemElements);

</pre>
<p>Einige neue Methoden sind jetzt beim Array möglich:</p>
<ul>
<li>Find: Gibt das erste Element zurück, bei dem der Callback true zurückgibt</li>
<li>findIndex: Gibt den Index des ersten Elements zurück, bei dem der Callback true zurückgibt</li>
<li>fill: überschreibt das Element eines Arrays mit dem gegebenen Argument</li>
</ul>
<pre class="brush: jscript; title: ; notranslate">
&#x5B;5, 1, 10, 8].find(n =&gt; n === 10) // 10

&#x5B;5, 1, 10, 8].findIndex(n =&gt; n === 10) // 2

&#x5B;0, 0, 0].fill(7) // &#x5B;7, 7, 7]
&#x5B;0, 0, 0, 0, 0].fill(7, 1, 3) // &#x5B;0, 7, 7, 7, 0]
</pre>
<p>The post <a href="https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript/">ECMAScript 6 (ES6): Was ist neu an der nächsten Version von JavaScript? Teil 1</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mobile.fhstp.ac.at/development/ecmascript-6-es6-was-ist-neu-an-der-naechsten-version-von-javascript/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>6 Kostenlose Tools für die Erstellung eigener Icon Schrift</title>
		<link>https://mobile.fhstp.ac.at/ux/design/6-kostenlose-tools-fuer-die-erstellung-eigener-icon-schrift/</link>
		
		<dc:creator><![CDATA[Ana Gvodzen]]></dc:creator>
		<pubDate>Mon, 23 Nov 2015 20:10:24 +0000</pubDate>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=5882</guid>

					<description><![CDATA[<p>Obwohl es viele Icon Schriftarten, wie zum Beispiel Font Awesome oder Iconic, gibt, die du ohne weiteres verwenden kannst, kann es mal dazu kommen, dass du deine eigene Icon Schrift erzeugen möchtest. Zum Beispiel wenn du selbst designte Icons einsetzen oder verschiedene Icons von unterschiedlichen Schriftsätzen kombinieren möchtest. In diesem Beitrag werden sechs kostenlose Icon <a class="read-more" href="https://mobile.fhstp.ac.at/ux/design/6-kostenlose-tools-fuer-die-erstellung-eigener-icon-schrift/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/ux/design/6-kostenlose-tools-fuer-die-erstellung-eigener-icon-schrift/">6 Kostenlose Tools für die Erstellung eigener Icon Schrift</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Obwohl es viele Icon Schriftarten, wie zum Beispiel Font Awesome oder Iconic, gibt, die du ohne weiteres verwenden kannst, kann es mal dazu kommen, dass du deine eigene Icon Schrift erzeugen möchtest. Zum Beispiel wenn du selbst designte Icons einsetzen oder verschiedene Icons von unterschiedlichen Schriftsätzen kombinieren möchtest.</p>
<p>In diesem Beitrag werden sechs kostenlose Icon Schriftgeneratoren, mit denen du deine eigenen Icon Schrift erstellen kannst, beschrieben:<span id="more-5882"></span></p>
<h2><strong><a href="http://fontello.com/" target="_blank">Fontello</a></strong></h2>
<p>Fontello ist eine sehr einfache Plattform, bei der man die SVG-Dateien vom Computer unter innerhalb der Fläche „Drag SVG Icons here“ ziehen muss, um eine eigene Icon-Schrift zu erzeugen. Außerdem können freie Icon-Sets zur Icon-Schrift aufgenommen werden.</p>
<p><img fetchpriority="high" decoding="async" class="alignnone size-full wp-image-5886" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2015/11/fontello.png" alt="Fontello" width="640" height="382" /></p>
<p>&nbsp;</p>
<h2><strong><a href="http://icomoon.io/app/" target="_blank">IcoMoon App</a></strong></h2>
<p>IcoMoon App ermöglicht es eigene Icons zu integrieren und bietet zugleich eine Vielzahl an verfügbaren Icons.</p>
<p><img decoding="async" class="alignnone size-full wp-image-5888" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2015/11/icomoon-app.png" alt="Icomoon-App" width="640" height="382" /></p>
<p>&nbsp;</p>
<h2><strong><a href="http://iconvau.lt/" target="_blank">Icon Vault</a></strong></h2>
<p>Um eine Icon Schrift mit Icon Vault erzeugen zu können, muss zuerst das Template-Paket heruntergeladen werden. Dann sollte man einfach der inkludierten Anleitung folgen. Sobald diese Schritte erfolgt sind, müssen die Icons auf Icon Vault upgeloadet werden.</p>
<p><img decoding="async" class="alignnone size-full wp-image-5889" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2015/11/iconvault.jpg" alt="Iconvault" width="640" height="382" /></p>
<p>&nbsp;</p>
<h2><strong><a href="https://pictonic.co/fontbuilder" target="_blank">Pictonic Fontbuilder</a></strong></h2>
<p>Pictonic Fontbuilder erlaubt es, aus kostenlosen sowie kostenpflichtigen Icons von Pictonic zu wählen. Pictonic verfügt über mehr als 2700 Symbolen, mehr als 300 davon sind kostenlos. Um Zugriff auf Pictonic Fontbuilder zu erhalten, ist eine Kontoerstellung notwendig.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-5890" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2015/11/pictonic-fontbuilder.png" alt="Pictonic-Fontbuilder" width="640" height="382" /></p>
<p>&nbsp;</p>
<h2><strong><a href="https://glyphter.com/" target="_blank">Glyphter</a></strong></h2>
<p>Bei Glyphter sieht man auf der linken Seite ein Zeichen-Grid und auf der rechten Seite des Bildschirms, die so genannte „Icon Shelf“, bei der man nach kostenlosen Icons suchen kann. Die Icons aus der rechten Auswahl können per Drag &amp; Drop in die einzelnen Felder innerhalb des Gitters gezogen werden. Es können auch eigene SVG Icon Dateien hochgeladen werden. Bis zu 88 Symbolen können kostenlos verwendet werden. Falls mehr Symbole gebraucht werden, kann ein Premium-Account erstellt werden.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-5887" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2015/11/glyphter.png" alt="Glyphter" width="640" height="382" /></p>
<p>&nbsp;</p>
<p><strong><a href="http://fontastic.me/" target="_blank">Fontastic</a></strong></p>
<p>Um eigene Icon Schrigt mit Fontastic zu generieren, müssen Symbole aus dem verfügbaren und kostenlosen Icon-Sets gewählt werden und/oder eigene SVG-Icons hochgeladen werden. Sobald die Auswahl erfolgt ist, geht man zur Registerkarte „Publish“, wo du die Option hast, die Icon Schrift innerhalb der Fontastic Icon Cloud zu hosten oder die Schrift downzuloaden. Ein Zugriff auf die Icons von Fontastic ist ein Konto Sign-Up erforderlich.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-5885" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2015/11/fontastic.png" alt="Fontastic" width="640" height="382" /></p>
<p>The post <a href="https://mobile.fhstp.ac.at/ux/design/6-kostenlose-tools-fuer-die-erstellung-eigener-icon-schrift/">6 Kostenlose Tools für die Erstellung eigener Icon Schrift</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>{ Less &#8211; erste Erfahrungen }</title>
		<link>https://mobile.fhstp.ac.at/development/webdevelopment/less-erste-erfahrungen/</link>
		
		<dc:creator><![CDATA[Ana Gvodzen]]></dc:creator>
		<pubDate>Mon, 21 Sep 2015 06:31:38 +0000</pubDate>
				<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Less]]></category>
		<category><![CDATA[Pre-Processor]]></category>
		<category><![CDATA[Web]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=5328</guid>

					<description><![CDATA[<p>Als WebentwicklerIn kommt man schnell in den Genuss eines CSS-Pre-Prozessor, so auch ich in meinem Job als Frontend Developerin, bei dem wir LESS als CSS-Pre-Prozessor verwenden. In diesem Beitrag werden die ersten Grundzüge erklärt und nützliche Dos and Don&#8217;ts genannt, die man beim Entwickeln mit LESS oder anderen CSS-Pre-Prozessoren bedenken sollte. LESS ermöglicht es, im <a class="read-more" href="https://mobile.fhstp.ac.at/development/webdevelopment/less-erste-erfahrungen/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/webdevelopment/less-erste-erfahrungen/">{ Less &#8211; erste Erfahrungen }</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Als WebentwicklerIn kommt man schnell in den Genuss eines CSS-Pre-Prozessor, so auch ich in meinem Job als Frontend Developerin, bei dem wir LESS als CSS-Pre-Prozessor verwenden. In diesem Beitrag werden die ersten Grundzüge erklärt und nützliche Dos and Don&#8217;ts genannt, die man beim Entwickeln mit LESS oder anderen CSS-Pre-Prozessoren bedenken sollte.<span id="more-5328"></span></p>
<p>LESS ermöglicht es, im CSS mit Variablen, Mixins, Berechnungen und Funktionen zu arbeiten. Es läuft sowohl Server-Seitig, mit Node.js und Rhino, als auch Client-Seitig auf modernen Browsern.</p>
<h2>Variablen</h2>
<p>Mit Variablen können oft verwendete Werte definiert werden und im CSS Code verwendet werden. Dadurch muss bei Änderungen nur noch eine Zeile geändert werden. In meinen Projekten setze ich Variablen vorallem bei Farbdefinitionen, Bildschirmbreiten usw. ein.</p>
<p>@nice-blue: #5B83AD;<br />
@light-blue: @nice-blue + #111;</p>
<p>#header {<br />
color: @light-blue;<br />
}</p>
<p>Output<br />
<code></code></p>
<p>#header {<br />
color: #6c94be;<br />
}</p>
<p>Tipp: Falls man keine kreativen Namen für Farben erfinden möchte, eignet sich diese Seite: <a href="http://name-of-color.com/" target="_blank">http://name-of-color.com/</a>.</p>
<h2>Mixins</h2>
<p>Mixins ermöglichen es, eine Reihe von Eigenschaften aus einer CSS Klasse in eine andere CSS Klasse zu inkludieren. Es können natürlich auch #IDs als Mixins verwendet werden.<br />
<code><br />
.bordered {<br />
border-top: dotted 1px black;<br />
border-bottom: solid 2px black;<br />
}<br />
</code></p>
<p><code><br />
#menu a {<br />
color: #111;<br />
.bordered;<br />
}</code></p>
<p>.post a {<br />
color: red;<br />
.bordered;<br />
}</p>
<h3>Versteckte Mixins</h3>
<p>Möchte man ein Mixin erstellen, es aber nicht im generierten CSS Code ausgeben, so können Klammern hinter einem Mixin gesetzt werden, und diesesr wird nicht im CSS Code gesetzt. Tipp: Das ist eine Möglichkeit, dass ungenutzter CSS Code die CSS-Datei nicht unnötig groß macht.<br />
<code><br />
.my-mixin {<br />
color: black;<br />
}<br />
.my-other-mixin() {<br />
background: white;<br />
}<br />
.class {<br />
.my-mixin;<br />
.my-other-mixin;<br />
}</code><br />
Output<br />
<code><br />
.my-mixin {<br />
color: black;<br />
}<br />
.class {<br />
color: black;<br />
background: white;<br />
}</code></p>
<h3>Mixins als Funktionen</h3>
<p>Mixins können sich unter anderem wie Funktionen verhalten und akzeptieren dadurch auch Parameter. Dem Parameter kann ein Default-Wert gesetzt werden.<br />
<code><br />
.rounded-corners (@radius: 5px) {<br />
border-radius: @radius;<br />
-webkit-border-radius: @radius;<br />
-moz-border-radius: @radius;<br />
}</code></p>
<p>#header {<br />
.rounded-corners;<br />
}<br />
#footer {<br />
.rounded-corners(10px);<br />
}<br />
Output<br />
<code><br />
#header {<br />
border-radius: 5px;<br />
-webkit-border-radius: 5px;<br />
-moz-border-radius: 5px;<br />
}<br />
#footer {<br />
border-radius: 10px;<br />
-webkit-border-radius: 10px;<br />
-moz-border-radius: 10px;<br />
}<br />
</code></p>
<p>Verschachtelungen</p>
<p>In LESS können Selektoren ineinander verschachtelt werden. Dadurch können lange Schreibweisen von Vererbungen vermieden werden. Allerdings sollten Selektoren nur sofern es notwendig ist, verschachtelt werden, da ansonsten der CSS-Selektor zu „stark“ werden könnte und kein Überblick mehr besteht.</p>
<p><code><br />
#header {<br />
h1 {<br />
font-size: 26px;<br />
font-weight: bold;<br />
}<br />
p { font-size: 12px;<br />
a { text-decoration: none;<br />
&amp;:hover { border-width: 1px }<br />
}<br />
}<br />
}</code><br />
Output<br />
<code><br />
#header h1 {<br />
font-size: 26px;<br />
font-weight: bold;<br />
}<br />
#header p {<br />
font-size: 12px;<br />
}<br />
#header p a {<br />
text-decoration: none;<br />
}<br />
#header p a:hover {<br />
border-width: 1px;<br />
}</code><br />
Das &amp;-Zeichen ist ein Platzhalter für das Elternelement. Dies ist besonders nützlich bei Pseudoklassen wie :hover oder :focus.</p>
<h2>Extend</h2>
<p>Extend ist eine Less-Pseudo Klasse, die den gesetzten Selektor mit dem referenzierten Selektor zusammenfasst. Dadurch kann im generierten CSS Code gespart werden, da die Datei unnötig groß werden könnte.<br />
<code><br />
nav ul {<br />
&amp;:extend(.inline);<br />
background: blue;<br />
}<br />
.inline {<br />
color: red;<br />
}</code><br />
Output<br />
<code><br />
nav ul {<br />
background: blue;<br />
}<br />
.inline,<br />
nav ul {<br />
color: red;<br />
}</code></p>
<h2>Kommentare</h2>
<p>In CSS sind nur Blockkommentare möglich /* Some Code */. Durch die Verwendung von LESS sind auch Inline-Kommentare möglich, allerdings werden diese im generierten CSS nicht mehr angeführt.</p>
<h2>Quellen</h2>
<p><a href="http://lesscss.org/" target="_blank">http://lesscss.org/</a></p>
<p><a href="http://www.lesscss.de/" target="_blank">http://www.lesscss.de/</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/webdevelopment/less-erste-erfahrungen/">{ Less &#8211; erste Erfahrungen }</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Parallax Scrolling im Web</title>
		<link>https://mobile.fhstp.ac.at/development/webdevelopment/parallax-scrolling-im-web/</link>
					<comments>https://mobile.fhstp.ac.at/development/webdevelopment/parallax-scrolling-im-web/#comments</comments>
		
		<dc:creator><![CDATA[Ana Gvodzen]]></dc:creator>
		<pubDate>Wed, 14 Jan 2015 20:42:17 +0000</pubDate>
				<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[Parallax Scrolling]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=5068</guid>

					<description><![CDATA[<p>Durch den Einsatz der Technologien wie HTML5 und CSS3 ist es möglich, anspruchsvolle, interessante und bemerkenswerte Effekte im Browser zu erstellen. Besonders der Einsatz von Parallax Scrolling hat sich als großer Trend bei Websites entwickelt. Unter Parallax Scrolling versteht man den Effekt, bei dem der Vordergrund und der Hintergrund einer Webseite sich unterschiedlich schnell bewegen. <a class="read-more" href="https://mobile.fhstp.ac.at/development/webdevelopment/parallax-scrolling-im-web/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/webdevelopment/parallax-scrolling-im-web/">Parallax Scrolling im Web</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Durch den Einsatz der Technologien wie HTML5 und CSS3 ist es möglich, anspruchsvolle, interessante und bemerkenswerte Effekte im Browser zu erstellen. Besonders der Einsatz von Parallax Scrolling hat sich als großer Trend bei Websites entwickelt.</p>
<p>Unter Parallax Scrolling versteht man den Effekt, bei dem der Vordergrund und der Hintergrund einer Webseite sich unterschiedlich schnell bewegen. Durch Parallax Scrolling können sich Elemente auf der Webseite bei unterschiedlichen Perspektiven und Geschwindigkeiten bewegen. Dadurch kann man unter anderem einen 3D Effekt beim Scrollen erzeugen. <span id="more-5068"></span></p>
<p>&nbsp;</p>
<h1>Wie funktioniert Parallax Scrolling?</h1>
<p>Der einfachste Weg Parallax Scrolling einzusetzten, wären die Properties background-position oder margin-top beim Scroll Event zu verwenden.<br />
<code><br />
$(animation.selector)<br />
.css('background-position', 'xPos yPos');<br />
</code><br />
Allerdings sollte man diesen Weg aus Performance-Gründen vermeiden. Es sollten nur Properties verwendet werden, die im Browser leicht zu animieren sind. Solche Properties sind unter anderem: translate3d, scale, rotation und opacity.<br />
<code><br />
$(animation.selector)<br />
.css({ 'transform': 'translate3d(' + translateX +'px, ' +   translateY + 'px, 0) scale('+ scale +')',<br />
'opacity' : opacity<br />
})<br />
</code><br />
Aus Performance-Gründen sollte auch beachtet werden, dass nur Elemente animiert werden, die sich im Viewport befinden. Weiters sollen die Animationswerte angemessen gerundet werden. Außerdem sollte die Animation nicht direkt am Scroll-Event gebunden sein. Außerdem sollte <a href="https://developer.mozilla.org/en-US/docs/Web/API/window.requestAnimationFrame" target="_blank"><strong>window.requestAnimationFrame</strong></a> verwendet werden, sobald Animationen durch JavaScript ausgelöst werden.</p>
<p><strong>Codebeispiel für das Runden des Animationswertes</strong></p>
<p><code>value = value.toFixed(2) </code></p>
<p><strong>Codebeispiel für window.requestAnimationFrame</strong><br />
<code><br />
function draw() {<br />
        window.requestAnimationFrame(draw);<br />
        // Drawing code goes here<br />
        scrollEvent();<br />
    }<br />
draw();<br />
</code></p>
<p>&nbsp;</p>
<h1>Parallax Scrolling auf mobilen Geräten</h1>
<p>Parallax Scrolling war beziehungsweise ist auf mobilen Geräten teilweise eingeschränkt. Grund dafür war, dass auf älteren mobilen Betriebssystemen eine Manipulation von Dom-Elementen während dem Scroll-Event nicht zugelassen waren, solange das Scroll-Event nicht abgeschlossen ist.</p>
<p>Mit dem Betriebssystem Ice Cream änderte das Scrolling Verhalten, und es war ab diesem Zeitpunkt möglich während dem Scroll-Event das DOM zu manipulieren. IE Mobile und Windows Phone 8 kamen kurzer Zeit nach. Erst mit iOS 8 ist es auch auf Apple Geräten möglich, einen Parallax-Effekt zu erzielen.<br />
Für ältere iOS Versionen gibt es einige populäre Bibliotheken wie iScroll library, die das Scrolling durch die Verwendung von CSS Translations nachbauen, um auch für diese Geräte einen Parallax-Effekt zu erreichen.</p>
<p>&nbsp;</p>
<h1>Beispiele für Parallax Scrolling</h1>
<p><a href="http://boy-coy.com/" target="_blank">http://boy-coy.com/</a><br />
<a href="http://www.sweez.com.br/#atendimento" target="_blank">http://www.sweez.com.br/#atendimento</a><br />
<a href="http://www.sweez.com.br/#atendimento" target="_blank">http://www.sweez.com.br/#atendimento</a><br />
<a href="http://hotdot.pro/en/" target="_blank">http://hotdot.pro/en/</a></p>
<p>&nbsp;</p>
<h1>Quellen</h1>
<p><a href="http://www.creativebloq.com/web-design/parallax-4132336" target="_blank">http://www.creativebloq.com/web-design/parallax-4132336</a><br />
<a href="http://www.creativebloq.com/web-design/parallax-scrolling-1131762" target="_blank">http://www.creativebloq.com/web-design/parallax-scrolling-1131762</a><br />
<a href="http://www.awwwards.com/20-best-websites-with-parallax-scrolling-of-2013.html" target="_blank">http://www.awwwards.com/20-best-websites-with-parallax-scrolling-of-2013.html</a><br />
<a href="http://developer.telerik.com/featured/scroll-event-change-ios-8-big-deal/" target="_blank">http://developer.telerik.com/featured/scroll-event-change-ios-8-big-deal/</a><br />
<a href="http://morris-digital.co.uk/blog/super-simple-60-fps-parallax/" target="_blank">http://morris-digital.co.uk/blog/super-simple-60-fps-parallax/</a><br />
<a href="https://medium.com/@dhg/parallax-done-right-82ced812e61c" target="_blank">https://medium.com/@dhg/parallax-done-right-82ced812e61c</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/webdevelopment/parallax-scrolling-im-web/">Parallax Scrolling im Web</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mobile.fhstp.ac.at/development/webdevelopment/parallax-scrolling-im-web/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Initialprojekt Memory</title>
		<link>https://mobile.fhstp.ac.at/studium/initialprojekt-memory/</link>
		
		<dc:creator><![CDATA[Ana Gvodzen]]></dc:creator>
		<pubDate>Tue, 09 Dec 2014 11:13:54 +0000</pubDate>
				<category><![CDATA[Studium]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=4957</guid>

					<description><![CDATA[<p>Für die Masterklasse „Mobiles Internet“ des Masterstudienganges Digitale Medientechnologien sollen wir eine mobile Webapplikation unter dem Motto „Print-To-Mobile-Social“ designen und umsetzen.  Dabei sollte man ein oder mehrere Printprodukte wie zum Beispiel einen Flyer oder ein T-Shirt designen, um möglichst viele Personen zur mobilen Applikation zu führen. Ziel dabei war es, dass die Personen ohne Tippen <a class="read-more" href="https://mobile.fhstp.ac.at/studium/initialprojekt-memory/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/studium/initialprojekt-memory/">Initialprojekt Memory</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Für die Masterklasse „Mobiles Internet“ des Masterstudienganges Digitale Medientechnologien sollen wir eine mobile Webapplikation unter dem Motto „Print-To-Mobile-Social“ designen und umsetzen.  Dabei sollte man ein oder mehrere Printprodukte wie zum Beispiel einen Flyer oder ein T-Shirt designen, um möglichst viele Personen zur mobilen Applikation zu führen. Ziel dabei war es, dass die Personen ohne Tippen zur Applikation gelangen.</p>
<p><span id="more-4957"></span></p>
<p>Als Printprodukt habe ich ein T-Shirt gewählt. Als Aufdruck wurde ein Memory-Spiel kreiert, bei dem die einzig aufgedeckte Karte der QR-Code ist, der zur mobilen Applikation führt. Die mobile Applikation ist ein kleines Memory Spiel.</p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/PicsArt_1418122789621.jpg"><img loading="lazy" decoding="async" class="aligncenter wp-image-4958 size-medium" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/PicsArt_1418122789621-168x300.jpg" alt="T-Shirt Memory" width="168" height="300" /></a></p>
<p>&nbsp;</p>
<h2>Design</h2>
<p>Als Deckblatt wurde eine Bild, das einen Haufen voller Würfel &#8211;  betitelt mit „Memory“ &#8211; verwendet. Die Motive für das Spiel selbst haben alle etwas mit dem Thema Mobile zu tun. Daher wurden folgende Bilder zu folgenden Themen ausgewählt: Android, Apple, Games, Usability Testing, Responsive Design, Navigation und der Übertragungsstandard NFC.</p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/memory-bg.jpg"><img loading="lazy" decoding="async" class="alignnone wp-image-4967 size-thumbnail" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/memory-bg-150x150.jpg" alt="Background Memory" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/memory-bg-150x150.jpg 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/memory-bg-32x32.jpg 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/memory-bg-64x64.jpg 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/memory-bg-96x96.jpg 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/memory-bg-128x128.jpg 128w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/memory-bg.jpg 300w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/A.png"><img loading="lazy" decoding="async" class="alignnone wp-image-4959 size-thumbnail" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/A-150x150.png" alt="Memory Card Android" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/A-150x150.png 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/A-32x32.png 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/A-64x64.png 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/A-96x96.png 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/A-128x128.png 128w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/A.png 200w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a> <a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/B.png"><img loading="lazy" decoding="async" class="alignnone wp-image-4960 size-thumbnail" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/B-150x150.png" alt="Memory Card iOS" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/B-150x150.png 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/B-32x32.png 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/B-64x64.png 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/B-96x96.png 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/B-128x128.png 128w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/B.png 200w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a> <a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/C.png"><img loading="lazy" decoding="async" class="alignnone wp-image-4961 size-thumbnail" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/C-150x150.png" alt="Memory Card Games" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/C-150x150.png 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/C-32x32.png 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/C-64x64.png 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/C-96x96.png 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/C-128x128.png 128w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/C.png 200w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a> <a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/D.png"><img loading="lazy" decoding="async" class="alignnone wp-image-4962 size-thumbnail" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/D-150x150.png" alt="Memory Card Navigation" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/D-150x150.png 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/D-32x32.png 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/D-64x64.png 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/D-96x96.png 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/D-128x128.png 128w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/D.png 200w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a> <a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/E.png"><img loading="lazy" decoding="async" class="alignnone wp-image-4963 size-thumbnail" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/E-150x150.png" alt="Memory Card NFC" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/E-150x150.png 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/E-32x32.png 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/E-64x64.png 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/E-96x96.png 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/E-128x128.png 128w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/E.png 200w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a> <a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/F.png"><img loading="lazy" decoding="async" class="alignnone wp-image-4964 size-thumbnail" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/F-150x150.png" alt="Memory Card Responsive Design" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/F-150x150.png 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/F-32x32.png 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/F-64x64.png 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/F-96x96.png 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/F-128x128.png 128w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/F.png 200w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a> <a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/G.png"><img loading="lazy" decoding="async" class="alignnone wp-image-4965 size-thumbnail" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/G-150x150.png" alt="Memory Card Usability Tests" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/G-150x150.png 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/G-32x32.png 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/G-64x64.png 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/G-96x96.png 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/G-128x128.png 128w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/G.png 200w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a> <a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/H.png"><img loading="lazy" decoding="async" class="alignnone wp-image-4966 size-thumbnail" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/12/H-150x150.png" alt="Memory Card Smiley" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/H-150x150.png 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/H-32x32.png 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/H-64x64.png 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/H-96x96.png 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/H-128x128.png 128w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/12/H.png 200w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a></p>
<p>&nbsp;</p>
<h2>Technologien</h2>
<p>Das Memory Spiel wurde mittels HTML5, CSS3 und jQuery erstellt. In der index.html wurden nur zwei Container erstellt, in denen später die durch jQuery erstellten Bild-Container, hineingesetzt werden.</p>
<p>In der JavaScript Datei wurde ein Array mit allen möglichen Bildern erstellt, das durch eine Funktion bei jedem Start des Spieles random durgemischt wird. Beim Klick auf die Karte wurde die Klasse der Karte ausgelesen. Wurde zwei Karten umgedreht wurde gleichzeitig überprüft, ob es sich um die gleichen Klassen handelt. Waren es unterschiedliche Klassen wurden beide Bilder wieder zurückgedreht. Handelte es sich um zwei gleiche Klassen, sprich um dieselben Bilder blieben diese offen. Sobald man alle sieben Paare aufgedeckt hat, kam die Meldung „Super, du hast gewonnen“.</p>
<p>&nbsp;</p>
<h2>Fazit</h2>
<p>Das Spiel diente hauptsächlich zur Auffrischung meiner jQuery Kenntnissen. Während der Entwicklung ärgerte ich mich hauptsächlich über die Verfügbarkeit und Erreichung von Variablen, die den aktuellen Spielstand speichert. Gelernt habe ich außerdem, dass man niemals ein Tester der eigenen Applikation sein darf, da man als Entwicklerin genau weiß, wie das Programm ablaufen soll. Bei der Präsentation der Applikation haben weitere Tester Bugs, die mir während dem Testen nicht aufgefallen sind, sofort gefunden.</p>
<p>Link zum Projekt:</p>
<p><a href="http://dm141530.students.fhstp.ac.at/Mobile/memory/" target="_blank">http://dm141530.students.fhstp.ac.at/Mobile/memory/</a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>The post <a href="https://mobile.fhstp.ac.at/studium/initialprojekt-memory/">Initialprojekt Memory</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
