Suche

JAXenter

Aktuelles

So vermeiden Sie typische Fehler beim Schreiben von Unit Tests

Unit Tests sind in aller Munde. Es gibt wohl keinen Entwickler, der nicht davon gehört hat, dass Unit Tests ein Sicherheitsnetz bilden, das den Programmierer vor ungewollten Seiteneffekten seiner Änderungen schützen soll. In der täglichen Praxis erweisen sich Unit Tests jedoch oft, gerade bei Änderungen, als Hemmnis. Die Ursache liegt in der engen Beziehung zwischen Unit Tests und dem produktiven Code, den sie testen. Im Folgenden wird beschrieben, welche Eigenschaften Unit Tests und produktiver Code haben sollten, damit sie optimal zueinander passen. Ein Beispiel verdeutlicht diese Beziehung.

Buchtipp: Car IT kompakt

Dem Deutschen an sich werden ja viele Lieblingskinder nachgesagt: vom Haustier – bevorzugt Hunden – über Fußball bis hin zu Autos ist eigentlich alles vertreten, was man sich denken kann. Leider galt der
gemeine Deutsche lange Zeit auch als eher fortschrittsscheu. Das muss sich dringend ändern; und was böte sich da besser an, als mit einem der deutschen Lieblinge zu beginnen? Da sich die meisten, der aktuellen Situation geschuldet, ohnehin gerade mit dem Thema Auto beschäftigen, kann man auch gleich einen Blick in die Zukunft wagen.

#FirstSevenLanguages: Alle lieben Java

Der Hashtag #FirstSevenLanguages tauchte in der vergangenen Woche nicht nur auf Twitter auf, auch wir auf JAXenter haben uns mit dem Social-Media-Trend beschäftigt. Mit welchen Sprachen unsere Leser angefangen haben zu codieren und wie diese zusammenhängen, lesen Sie in dieser Auswertung.

JavaScript-Frameworks: Wieso überhaupt und dann welches?

JavaScript ist für die Entwicklung von Webanwendungen gesetzt. Doch fällt es nicht leicht, unter der Vielzahl der möglichen Programmiermodelle, Libraries und Frameworks denjenigen Ansatz herauszufinden, welcher für die eigene Projektsituation am besten passt. Entscheidungshilfen gibt Oliver Zeigermann in dieser JAX-Session an die Hand.

Planet Android: Android Nougat, Opera VPN für Android und ein Smartphone, das sich selbst zusammenbaut

Android Nougat ist da! Google hat die finale Version veröffentlicht. Jetzt haben nach den vielen Developer Previews endlich auch Nutzer etwas davon. Zumindest dann, wenn das Update bei ihnen ankommt. Die Update-Geschwindigkeit spielt auch im Bezug auf die Sicherheit eines Smartphones eine große Rolle. Eine Statistik zeigt, dass es in diesem Jahr schon mehr als doppelt so viele Sicherheitslücken in Android gab, wie im ganzen Jahr 2015. Also, schnelle, regelmäßige Updates wären da angebracht, oder?

Große Teams sind unproduktiver – das gilt auch für Open Source

Dass die Produktivität abnimmt, umso größer ein Team ist, scheint in der Softwareentwicklung ein ungeschriebenes Gesetz zu sein. Nur Open-Source-Projekten wurde die hohe Motivation durch große Teams als förderlich für die Produktivität ausgelegt. Forscher der ETH Zürich wählten einen datenbasierten Ansatz, um herauszufinden, ob dem wirklich so ist.

Wirklich alles testen: Testabdeckung messen mit EclEmma

Testgetriebene Softwareentwicklung hat sich als Standard bei modernen Softwareprojekten durchgesetzt. Dabei werden für alle zu entwickelnden Features parallel automatisierte Regressionstests entwickelt. Folgen Entwickler dabei dem „Test First“-Ansatz, werden die Tests grundsätzlich vor dem eigentlichen Anwendungscode entwickelt. Eine konsequente Anwendung dieser Technik hilft, Quellcode sauber zu strukturierten, und führt zu korrekten und minimalen Implementierungen.

Android Nougat ist da: Gesteigerte Produktivität, bessere Performance und Security auf Hardware-Level

Android Nougat ist da! Wie schon in den vergangenen Wochen spekuliert wurde, liefert Google die finale Version noch in diesem Monat aus. Durch die zahlreichen Developer Previews seit Anfang des Jahres – man erinnere sich, Google veröffentlichte die erste Developer Preview noch vor der Google I/O – sind die wichtigsten Features der neuen Version bereits bekannt. So will Google Nutzer und Entwickler mit den drei Schlagworten Performance, Produktivität und Security abholen.

Legacy-Systeme mit Microservices, Hystrix und RxJava modernisieren

Als Softwareentwickler ist man nur sehr selten in der Situation, ein völlig neues System auf der Basis neuester Technologien entwickeln zu dürfen. Oft sollen bestehende Systeme nur um viele kleinere Features erweitert werden. Wie man auch in Legacy-Systemen von den Vorteilen des Microservice-Konzeptes profitieren kann, zeigen Arne Landwehr und Holger Kraus zeigen in dieser JAX-Session.

Buchtipp: Hacking im Web

Mit der Sicherheit ist es ja so eine Sache: Wir alle legen Wert auf die Sicherheit unserer Daten und unserer Anwendungen, aber sich so richtig damit beschäftigen … na ja, es gibt Spannenderes, wenn man ehrlich ist. Mit „Hacking im Web“ schickt sich Tim Philipp Schäfers nun an, Leserinnen und Lesern das Thema Security näherzubringen und schmackhaft zu machen.

Softwareentwicklung: Was tun gegen schlechte Arbeitsbedingungen?

Trotz hoher Gehälter und rosiger Zukunftsaussichten gibt es auch im Bereich der Softwareentwicklung schlechte Arbeitsbedingungen. Insbesondere für Außenstehende ist das meistens nur schwer nachvollziehbar. Aber viele Entwickler leiden an unzumutbaren Arbeitsbelastungen, die sich negativ auf ihre Motivation und Produktivität auswirken. Allerdings sind sie nicht völlig wehrlos, sondern können ihr Standing im Unternehmen selbstständig verbessern – dafür müssen sie ihre Lage aber zunächst verschlechtern.

JAX Innovation Awards 2016: Nominieren Sie Ihre Kandidaten!

Es ist wieder soweit: Im Rahmen der JAX Innovation Awards werden Technologien bzw. Individuen ausgezeichnet, die im letzten Jahr besonders innovativ gewirkt haben. Kandidaten für die Awards können noch bis Ende der Woche, 28. August eingereicht werden.

Was ist eigentlich DevOps?

Sei es auf Konferenzen oder in Aufsätzen und Büchern – zurzeit wird der Begriff DevOps in der IT-Welt rege diskutiert. Das Interesse ist verständlich, denn zahlreiche IT-Abteilungen suchen nach Wegen, wie sich ihre Unternehmen aus der bestehenden Mischung aus verzögerten Projekten, fragwürdiger Produktqualität und verpassten Lieferterminen befreien können.