iX Programmieren heute 01/2013

7,99 €*

Lieferzeit Sofort lieferbar

Sofort lieferbar
Highlights:
  • Programmiersprachen
  • Big Data
  • GUIs
  • Parallelprogrammierung
  • Spieleentwicklung
Format
Anzahl
Inhaltsverzeichnis

Programmiersprachen

Mit neuen Vorgehensweisen oder dem bewussten Rückgriff auf bewährte Ideen versucht man in der Softwareentwicklung, den aktuellen Marktanforderungen besser gerecht zu werden. Der Trend macht sich auch bei den Programmiersprachen deutlich bemerkbar, vor allem bei JavaScript, das nun professionellen Ansprüchen genügt.


Big Data

Die größte Bedeutung der NoSQL-Bewegung liegt darin, den alteingesessenen Datenbanken ihre Schwachstellen aufgezeigt zu haben. Genau das hat zu viel Bewegung auf „beiden Seiten“ geführt. Gemein ist ihnen das Bestreben, Anbindungen an den prominentesten Vertreter der Big-Data-Welt zu schaffen – an Apache Hadoop.

GUIs

Apps sind speziell für den Einsatz auf mobilen Endgeräten konzipiert. Sie lassen sich im Allgemeinen gegenüber Desktop-Anwendungen einfacher bedienen und bieten grundsätzlich andere Einsatzmöglichkeiten. Doch stopp! – Spätestens mit Windows 8 halten die Prinzipien mobiler Entwicklung auch auf dem Desktop Einzug.


Parallelprogrammierung

Programmierbare Grafikkarten ermöglichen große Geschwindigkeitssteigerungen im Vergleich zu Multicore-Systemen. Da sich inzwischen GPU-Kerne in den CPUs finden, wird nach der gewöhnlichen Parallelprogrammierung das GPU Computing künftig ein fester Bestandteil der Softwareentwicklung sein.

  • Programmiersprachen

    • Sprachkonzepte
      Programmiersprachen im Wandel der Zeit
    • Sprachen-Design
      Grundsätzliches zur Entwicklung von Programmiersprachen
    • Funktionale Programmierung
      Wo Haskell und Co objektorientierten Sprachen Überlegen sind
    • C++-Entwicklung
      C++11 – der Sprachstandard ein Jahr später
    • Java-Entwicklung
      Gegenwart und Zukunft der Java-Plattform
    • Java Virtual Machine
      Programmiersprachen für die JVM im Zusammenspiel mit Java
    • Professionelles JavaScript
      Skriptsprache für Industrie- und Geschäftsanwendungen
    • JavaScript-Alternativen
      CoffeeScript – das bessere JavaScript?
      TypeScript: Microsofts neue typisierte Skriptsprache
      Dart – Googles zweite Programmiersprache
    • Serverside JavaScript
      Zeitgemäße Webanwendungen mit Node.js entwickeln

    Big Data

    • DBMS
      NoSQL-Datenbanken ergänzen relationale Datenbank-Systeme
    • NewSQL
      Relationale Datenbanken schlagen zurück
    • Hauptspeicherdatenbanken
      In-Memory Computing als Treiber neuartiger Geschäftsanwendungen
    • Interview
      Franz Färber im Gespräch Über In-Memory Computing und SAP HANA
    • Hadoop
      Das Ökosystem der MapReduce-Implementierung unter dem Apache-Dach
      Big Data im Praxiseinsatz
      Einblick in die nächste Generation des Apache-Frameworks

    GUI

    • Design Patterns für Mobile
      Wege für eine erfolgreiche mobile Oberflächenentwicklung
    • Mobilprogrammierung
      Best Practices für die Entwicklung mobiler Unternehmens-Apps
    • Windows 8
      Windows Store Apps – Überblick der Frontend-Techniken
    • Interview
      Brandon Bray im Gespräch zu .NET und WinRT
    • Web-Clients
      Wie HTML5 Rich Internet Applications verändert

Parallelprogrammierung

  • Multicore
    Programmieren mit Tasks und parallelen Schleifen
  • GPU Computing
    Grundlagen der GPU-Programmierung
  • GPU-Frameworks
    GPU-Programmierung in der Praxis mit CUDA
    Heterogene Programmierung mit OpenCL

Trends

  • Agilität
    Entwicklung und Betrieb verzahnen mit DevOps
  • Eingebettete Systeme
    Trends der Embedded-Entwicklung
  • Spieleentwicklung
    Der Unterbau von Computerspielen
  • Unternehmensprozesse
    Crowdsourcing – absehbarer Trend in der Softwareentwicklung

Sonstiges

  • Editorial
  • DVD-Inhalt
  • Gewinnspiel
  • Inserentenverzeichnis
  • Impressum

Vielfalt erwünscht


Programmiersprachen bekommen allem Anschein nach wieder eine größere Bedeutung, nachdem für einige Zeit der Fokus vieler vermehrt auf funktionsreichen Tools und Frameworks lag. Das liegt sicherlich auch daran, dass nach langer Entwicklung innerhalb kurzer Zeit neue Sprachversionen der verbreiteten Programmierplattformen C, C++ und Java erschienen sind. Die lange Entwicklungszeit nicht nur bei diesen „Großen“ war aber einer der Gründe, warum auf einmal neue verheißungsvolle Sprachen die Bühne betreten haben. Für die einen dauerte es zu lange, bis ein als wichtig erachtetes Sprach-Feature oder ein den Umständen angemessener Umgang mit Anforderungen – etwa durch das Aufkommen der Mehrkernsysteme – in den Sprachstandard einzog. Andere vermissten grundsätzliche Konzepte wie den funktionalen Programmierstil in ihren bis dato präferierten Sprachen.


Im Umfeld der Java-Plattform dürfen hier Scala, Groovy, JRuby und Clojure bereits als arriviert gelten, neuerdings hinzugekommen sind das von Red Hat entwickelte Project Ceylon und JetBrains’ Kotlin, die wiederum aggressiv gegen die zuerst genannten Sprachen positioniert werden. Im Umfeld der C/C++-Programmierung haben vor allem D und Go die Aufmerksamkeit auf sich gezogen. Während es um D mittlerweile wieder still geworden ist, taucht das von Google entworfene Go regelmäßig in der Berichterstattung auf und gewinnt nicht nur an Interesse, sondern auch an Verbreitung. Letztlich ist jedoch allen Emporkömmlingen anzusehen, woher sie stammen, und daran ist abzulesen, dass die im Artikel auf Seite 8 skizzierte Basisarbeit in den früheren Jahrzehnten keine so schlechte gewesen sein kann.


Die neue Konkurrenz ist jedoch insofern zu begrüßen, dass viele der in den „neuen“ Sprachen erarbeiteten Ideen Über kurz oder lang in den „Muttersprachen“ landen. Scala und natürlich Clojure sind implizit mit dem Einsatz der aus der funktionalen Programmierung stammenden Closures vertraut. Diese ziehen nun nach mehrmaligem Anlauf endlich (als Project Lambda) in Java 8 ein. Der Einfluss der Konkurrenz oder der Alternativen lässt sich auch bei der Weiterentwicklung von JavaScript beziehungsweise ECMAScript beobachten, in deren Version 6 bereits in CoffeeScript und TypeScript umgesetzte Ideen wie Klassen und Klassenvererbung landen sollen. Dessen ungeachtet ist JavaScript so etwas wie der neue unerwartete Stern am Programmiersprachenhimmel. Microsoft hat es zum „first-class citizen“ in Visual Studio 2012 ernannt – die Windows Store Apps lassen sich wohl bevorzugt in dieser Skriptsprache schreiben. Selbst in der Entwicklung für mobile Geräte hat sich das Dreigespann aus HTML5, CSS und JavaScript zur dritten ernst zu nehmenden Plattform gemausert.

Nun heißt das nicht, dass der Entwickler gleich sieben Programmiersprachen in sieben Wochen erlernen muss,1 vielleicht reicht es schon, sich für jedes Jahr gewissenhaft eine neue Sprache vorzunehmen, wie es Eberhard Wolff, Autor in diesem Sonderheft, zu einem früheren Zeitpunkt geschrieben hat. Das vierte „Programmieren heute“-Sonderheft mag als Anreiz dienen, sich mit der einen oder anderen Sprache eingehender zu beschäftigen.


Selbiges gilt für die anderen Themen des Hefts: Beispielhaft sei der gegenwärtige Hype Big Data genannt, zu dem die Redaktion nahezu täglich neue Pressemeldungen erhält. Für Apache Hadoop, das als De-facto-Standard für Big-Data-Projekte gelten darf, haben Marktforscher prognostiziert, dass der Markt rund um das MapReduce-Framework bis 2016 auf etwas mehr als 810 Millionen US-Dollar anwachsen werde. Das entspräche einer jährlichen Steigerungsrate von rund 60 Prozent. Angesichts der weiter fortschreitenden Explosion der Datenmengen mag es also geraten sein, sich mit dem ab Seite 84 beschriebenen Hadoop-Ökosystem vertraut zu machen.


iX und heise Developer wünschen viel Spaß beim Vertiefen aller Trendthemen des iX-Developer-Sonderhefts.


ALEXANDER NEUMANN



1 Bruce A. Tate; Seven Languages in Seven Weeks; A Pragmatic Guide to Learning Programming Languages; Pragmatic Programmers, 2010

    Sponsored Software

    Intel Parallel Studio XE 2013 Update 1

    Die Toolsuite für die Parallelprogrammierung kombiniert Intels C++- und Fortran-Compiler, Performance- und Parallel-Bibliotheken mit den Profiling-Werkzeugen Intel Inspector XE und Intel VTune Amplifier XE. Die neue Version enthält jetzt auch Intels Parallel Advisor und unterstützt die neuen Intel-Prozessoren einschließlich Intel Xeon Phi.

    Auf der Heft-DVD findet man kombinierte 32- und 64-Bit-Versionen für Windows und Linux. Diese sind identisch mit den Kaufversionen, laufen allerdings nur 30 Tage. (Hierfür ist explizit die Option „30-Tage-Eval“ auszuwählen.) Die Windows-Version setzt zudem die Installation von Visual Studio 2010 voraus.


    Tools

    Visual Studio 2012 für Web, Windows 8 und Desktop

    Microsofts Entwicklungsumgebung in den kostenlosen Express-Versionen für Web-, Desktop- und Windows-8-Entwickler als ISO-Image.

    Eclipse Orion 1.0

    Die sich den Browser integrierende IDE eignet sich für die Entwicklung mit JavaScript, HTML und CSS.

    Cloudera’s Distribution Including Hadoop (CDH) 4.0.1

    Die Open-Source-Sammlung umfasst die Kernkomponenten von Hadoop zur verteilten und ausfallsicheren Speicherung und Verarbeitung großer Datenmengen. Darüber hinaus sind Werkzeuge für Sicherheit, Hochverfügbarkeit und Integration in bestehende Datenlandschaften enthalten. CDH ist unter der Apache-Lizenz verfügbar und eine der verbreitetsten Hadoop-Distribution und wird für Tests, Entwicklung und den Betrieb großer Cluster verwendet. Auf der DVD befindet sich ein VMware-Image, das insbesondere Einsteigern helfen kann, sich schnell einen Überblick zu verschaffen.


    Literatur

    Programmierer – eine Geschichte zur Gegenwart und Zukunft der IT

    Eine fiktionale Geschichte zur Softwareprogrammierung in den Formaten PDF, EPUB oder Mobi (Kindle): Genauer gesagt präsentiert der Protagonist im Rahmen einer großen CeBIT-Show seine bahnbrechenden Erfindungen in den Gebieten Künstliche Intelligenz und Robotik. Autor der 76 Seiten langen Geschichte ist Hans Meyer, ein erfahrener Softwareentwickler und IT-Projektleiter, der seine rund 40 Jahre Erfahrung in der Softwareentwicklung auf teilweise bitter-ironische, aber auch gesellschaftskritische Weise in seine Programmierergeschichte einfließen lassen hat.

SoftwareArchitekTOUR

37 Episoden des renommierten Podcasts auf heise Developer zu Themen wie:

  • ROCA (Resource-oriented Client Architecture)
  • leichtgewichtige Webapplikationen
  • Ausbildung zum Architekten
  • Rolle des Softwarearchitekten
  • Business Process Management
  • Webarchitekturen
  • Product Line Engineering
  • Cloud Computing
  • Lisp
  • domänenenspezifische Sprachen
  • Systems Engineering
  • Testing
  • NoSQL
  • funktionale Programmierung
  • REST
  • Architektur-Reviews
  • Architekturdokumentation
  • Entwicklung für Multicore-Systeme
  • serviceorientierte Architekturen
  • modellgetriebene Softwareentwicklung
  • Middleware
  • Patterns

Listings und Lizenzen

Die Listings zu den Heftartikeln und die Lizenzen zu den Softwarepaketen.

Artikel-Details
Anbieter:
Heise Medien GmbH & Co. KG
EAN:
4018837040157
Veröffentlicht:
05.12.12