Organisierter Code
dotnetpro, 7.2013
Eine der stärksten Fähigkeiten von Git ist die Möglichkeit, Code in Branches auf recht einfache Weise verwalten und umstrukturieren zu können. dotnetpro stellt das Konzept vor.
Mehr als "Hallo Welt"
dotnetpro, 7.2013
Die einen lieben sie, die anderen hassen sie: die Konsole. Um sie anzusteuern, enthält .NET die Console-Klasse im Namensraum System. Die kann weit mehr, als nur einzeilige Meldungen ausgeben. dotnetpro erklärt, was.
Ausnahmezustand
dotnetpro, 6.2013
Für die meisten Entwickler ist Fehlerbehandlung gleichbedeutend mit der Verwendung von Ausnahmen. Doch das ist nicht immer so. dotnetpro erklärt, wann der Einsatz von Ausnahmen sinnvoll ist und was es dabei zu beachten gibt.
Modellsammlung
iX, 6.2013
Wer strukturierte Webanwendungen programmieren will, findet Unterstützung bei Backbone.js. Models mit den Daten und der fachlichen Logik sind schnell definiert. Beim Verwalten und Speichern dieser Objekte helfen spezielle Container: die Collections.
Mit logischer Struktur
iX, 5.2013
Um die zunehmende Komplexität von Single-Page-Anwendungen bewältigen zu können, greifen Entwickler immer häufiger auf spezialisierte Frameworks zurück. Eines der bekanntesten ist Backbone.js, das aber einigen Einarbeitungsaufwand erfordert. Ein dreiteiliges Tutorial soll dabei helfen.
Unit testing with Node.js
The H Developer, 4.2013
Consistent unit testing is a basic quality requirement in modern software development and Node.js is very much a modern software platform. With Mocha, TJ Holowaychuk has created a framework for writing and executing Node.js unit tests; its biggest strength lies in the testing of asynchronous code and it can also be executed in a web browser.
Zeichensalat - nein danke
dotnetpro, 4.2013
.NET beherrscht den Unicode-Standard von Haus aus. Warum also Gedanken an Encodings & Co. verschwenden - UTF-8, UTF-16, ISO 8859-1 ...? In der Theorie erspart .NET dem Entwickler all dies. dotnetpro zeigt die Praxis.
Mit dem Stream schwimmen
dotnetpro, 3.2013
Die meisten Daten, ob Dateien, Netzwerk- oder sonstige Daten, werden nicht en bloc übertragen, sondern sequenziell, Byte für Byte. Das .NET Framework kennt für solche Daten bereits seit seiner ersten Version eine Vielzahl von Typen.
Hochgepusht
dotnetpro, 3.2013
Das Einrichten von Webanwendungen ist eine Kunst für sich, die Verfahren reichen von XCOPY über FTP bis hin zu eigenen Protokollen. Nun gibt es auch noch git-push-Deployment.
Das Vokabelheft
dotnetpro, 3.2013
Das Potenzial der Versionsverwaltung Git erschließt sich über die zahlreichen Befehle der Kommandozeile. Als kleine Gedächtnisstütze präsentiert dotnetpro die wichtigsten im Überblick.
Verteiltes Glück
dotnetpro, 3.2013
Anders als Subversion, der Team Foundation Server & Co. ist Git eine verteilte Versionsverwaltung. Das bietet viele Vorteile, erfordert zugleich jedoch grundlegendes Umdenken.
Mocha gefällig?
heise Developer, 3.2013
Der konsequente Einsatz von Unit-Tests ist ein grundlegendes Qualitätsmerkmal zeitgemäßer Softwareentwicklung. Das gilt ebenfalls unter Node.js. TJ Holowaychuk stellt mit Mocha ein Framework zum Schreiben und Ausführen von Unit-Tests zur Verfügung, dessen größte Stärke im Testen asynchronen Codes besteht. Außerdem lässt es sich im Webbrowser ausführen.
Web-Echtzeit mit Socket.io
Weave, 2.2013
Sie wollen den Besuchern Ihrer Webseite Neuigkeiten schnellstmöglich anzeigen? Leider verursachen regelmäßige Serverabfragen unnötige Netzwerklast. Golo Roden zeigt Ihnen, wie Sie Ihre Webseite mit der JavaScript-Library Socket.io ohne große Umschweife echtzeitfähig machen.
Kurz gesagt
dotnetpro, 2.2013
In seiner neuen Kolumne nimmt Golo Roden die Grundlagen von .NET unter die Lupe. Los geht es mit einem nicht technologischen, trotzdem aber ungemein wichtigen Thema: Abkürzungen und Akronyme wie CLR, BCL & Co.
Reine Typsache
dotnetpro, 2.2013
Die Websprache JavaScript hat bei Entwicklern nicht den besten Ruf, gilt sie doch "nur" als umständliche Skriptsprache. Es wird Zeit, mit Vorurteilen aufzuräumen und JavaScript ins richtige Licht zu rücken.
Verknüpft
heise Developer, 2.2013
Kenntnisse in den Frameworks Connect und dem darauf aufbauenden Express gehören für Node.js-Entwickler zu den Grundlagen. Sie erweitern das grundlegende Request-Response-Modell von Node.js um häufig benötigte Funktionen wie Middleware und Routing. Was liegt also näher, als in einem zweiteiligen Tutorial mit ihnen REST-Webservices in Node.js zu entwickeln?
Ruckzuck
heise Developer, 2.2013
In einem früheren Artikel wurde Connect als hilfreiche Grundlage für die Entwicklung von Node.js-Anwendungen vorgestellt. Darauf aufbauend geht es nun um das Framework Express, mit dem sich einfach REST-Webservices in Node.js entwickeln lassen.
TypeScript: Microsofts neue typisierte Skriptsprache
iX Developer, 1.2013
Am 1. Oktober 2012 hat Microsoft die neue Programmiersprache TypeScript vorgestellt. Sie ist zwar vollständig abwärtskompatibel zu JavaScript, liefert aber einige in JavaScript fehlende Bausteine wie ein statisches Typsystem, Klassen und Module nach.
Zeitgemäße Webanwendungen mit Node.js entwickeln
iX Developer, 1.2013
Node.js ist ein Framework zur Entwicklung serverseitiger Webanwendungen in JavaScript, das sich besonders gut für skalierbare, hochperformante und echtzeitfähige Webanwendungen eignet. Zudem ermöglicht es Webentwicklern die einheitliche Verwendung von JavaScript für Client und Server. Dieser Artikel erklärt, was Node.js auszeichnet, und erläutert die grundlegenden Konzepte.
Weißt Du noch, damals?
dotnetpro, 12.2012
Mit Cassini gab es mal einen leichtgewichtigen ASP.NET-Server. Er machte das Entwickeln mit ASP.NET einfach und schnell. Er hat einen Nachfolger: UltiDev Web Server Pro.
Völlig losgelöst
dotnetpro, 12.2012
JavaScript enthält keine Sprachkonstrukte zum Verwalten und Auflösen von Abhängigkeiten. Dennoch lässt sich Code in dieser Hinsicht strukturieren – mit der Bibliothek RequireJS.
Zurechtgeschnitten
heise Developer, 10.2012
Am 1. Oktober 2012 hat Microsoft die neue Programmiersprache TypeScript vorgestellt. Sie ist zwar vollständig abwärtskompatibel zu JavaScript, liefert aber einige in JavaScript fehlende Bausteine wie ein statisches Typsystem, Klassen und Module nach.
Gestatten, Node.js
heise Developer, 10.2012
Node.js ist ein Framework zur Entwicklung serverseitiger Webanwendungen in JavaScript, das sich besonders gut für skalierbare, hochperformante und echtzeitfähige Webanwendungen eignet. Zudem ermöglicht es Webentwicklern die einheitliche Verwendung von JavaScript für Client und Server. Dieser Artikel erklärt, was Node.js auszeichnet, und erläutert die grundlegenden Konzepte.
Angekommen?!
dotnetpro, 9.2012
Nach vierundzwanzig Folgen "Golos scharfes C" ist es an der Zeit, zurückzublicken und Abschied zu nehmen - aber nicht für lange.
Subtil volatil
dotnetpro, 8.2012
Zu den am häufigsten missverstandenen Schlüsselwörtern in C# gehört volatile, weshalb es die meisten Entwickler meiden. dotnetpro erklärt, wozu es gut ist.
Multifunktional
dotnetpro, 7.2012
using ist in C# als Anweisung und als Direktive enthalten und hat mehrere Bedeutungen - was die meisten Entwickler eher beiläufig wahrnehmen. Zeit, das zu ändern!
Blockadenbau
dotnetpro, 6.2012
Das Schlüsselwort lock gehört zu den elementaren Grundlagen der nebenläufigen Programmierung und wird doch leider häufig falsch eingesetzt. Dabei ist die korrekte Anwendung gar nicht schwierig.
Felder oder Eigenschaften?
dotnetpro, 5.2012
Anders als beispielsweise C++ und Java kennt C# das Konstrukt der Eigenschaften, das den kontrollierten Zugriff auf Felder erlaubt. Bei reinen Datenklassen erscheint es jedoch umständlich. Dieser Schein trügt.
Veränderliche Konstanten
dotnetpro, 4.2012
Was ist der Unterschied zwischen den beiden Schlüsselwörtern const und readonly? Definieren nicht beide eine Konstante? Nein, und dotnetpro erklärt, warum nicht.
Bauchgefühl mal zwei
dotnetpro, 4.2012
Der Kunde will eine auf sein Problem zugeschnittene Software. Und er will vorher wissen, wie lange er darauf warten muss und was ihn das kostet. Ist dieser Wunsch seriös überhaupt zu erfüllen?
Scriptease.js: Über den Umgang mit Funktionen
heise Developer, 4.2012
Das Anheben von Variablendeklarationen bei JavaScript betrifft nicht nur Werte und Objekte, sondern unter Umständen auch Funktionsausdrücke: Schließlich sind Funktionen in der funktionalen Sprache nichts anderes als Objekte. heise Developer erläutert, worauf es beim Verwenden von Funktionen zu achten gilt.
Für und Wider, Teil 2
dotnetpro, 3.2012
Das letzte "Scharfe C" hat die Theorie hinter den Begriffen Ko- und Kontravarianz beschrieben. Nun ist es Zeit für die Praxis.
Auf Wolke sieben
dotnetpro, 2.2012
Ein neues Software Development Kit ist der Knackpunkt: Damit bringen Sie die Serversoftware Node.js in das Cloud-Betriebssystem von Microsoft. Der Artikel zeigt die nötigen Schritte.
Für und Wider
dotnetpro, 2.2012
Die Unterstützung für Ko- und Kontravarianz von Schnittstellen ist die interessanteste Neuerung von C# 4.0 - und zugleich leider auch die am wenigsten verstandene. dotnetpro erläutert, was es mit Ko- und Kontravarianz auf sich hat und in welchen Situationen sie genutzt werden können.
Glückliche Hühner
Visual Studio One, 1.2012
Meine Schwiegermutter macht den weltbesten Kartoffelsalat. Alternativ auch meine Mutter, je nachdem, wer diesen Artikel gerade liest. Wahrscheinlich behaupten das die meisten verheirateten Menschen. In meinem Fall stimmt es aber wirklich, denn es gibt eine geheime Zutat, ...
Auf den Punkt gebracht
dotnetpro, 1.2012
Im Pentium-Prozessor hat Intel erstmals einen mathematischen Coprozessor in den Chip integriert. Damit konnten Entwickler wesentlich leistungsfähigere Algorithmen entwickeln als zuvor. Inzwischen gehören Dezimalbrüche zwar zum Alltag, sie wirken aber nach wie vor oft exotisch.
Scriptease.js: Umgang von JavaScript mit Variablen
heise Developer, 1.2012
Mit Variablen in JavaScript klarzukommen, ist gewöhnungsbedürftig: Der auf Funktionen bezogene Gültigkeitsbereich von Variablen und das Anheben von Variablendeklarationen stiften zumindest anfänglich durchaus Verwirrung. heise Developer erläutert, worauf es bei der Verwendung von Variablen zu achten gilt.
Von zweifelhaftem Wert
dotnetpro, 12.2011
Dass Parameter nützlich sind, um Werte an Methoden zu übergeben, ist eine Binsenweisheit - schließlich ist genau das ihr eigentlicher Sinn und Zweck. Aber was kann man darüber hinaus mit ihnen anstellen? dotnetpro klärt auf.
Scriptease.js: Vergleiche mit typsicheren Operatoren
heise Developer, 12.2011
Zwei Variablen zu vergleichen ist eine der grundlegenden Aufgaben jeder Programmiersprache. Erst einmal scheint die Aufgabe trivial: Wenn beide Variablen den gleichen Wert enthalten, sind sie gleich, ansonsten ungleich. Auf den zweiten Blick entdeckt man jedoch einige Stolperfallen.
Event Based Components: Architektur von Software in neuem Licht
iX Developer, 12.2011
Je weniger Abhängigkeiten innerhalb von Code bestehen, desto einfacher fallen dessen Wartung und Pflege aus. Dieser hinlänglich bekannten Erkenntnis begegnen Entwickler auf Komponentenebene in der Regel mit dem Entwurfsmuster "Inversion of Control", indem sie beispielsweise einen Dependency-Injection-Container (DI) zur dynamischen Auflösung der Abhängigkeiten verwenden. Doch genügt diese Art der Entkopplung, um isolierte Komponenten zu entwickeln?
Mächtiges Werkzeug
web developer, 12.2011
In Kombination mit DOM und dem Einsatz moderner Ajax-Techniken ist JavaScript heute ein mächtiges Werkzeug, für das eine Reihe von umfangreichen Bibliotheken zur Verfügung steht.
Der gordische Knoten
dotnetpro, 11.2011
Kaum eine Programmiersprache hat in den vergangenen 15 Jahren derart Karriere gemacht wie JavaScript. Was 1995 als einfache, aber exotische Skriptsprache für Webseiten und Clients begann, treibt heute Megasites wie Facebook oder Twitter an und nimmt auch Desktops und mobile Geräte ins Visier. Und wo bleibt JavaScript auf dem Server?
Catch Me If You Can
dotnetpro, 11.2011
Eine Reihe von Sprachkonstrukten in C# hat Aufsehen erregt, beispielsweise LINQ, das die Abfrage von Daten jedweder Datenquelle mit einer SQL-ähnlichen Syntax direkt in die Sprache einbaut. Andere Merkmale schaffen es aufgrund ihrer Exotik kaum ins Rampenlicht und bleiben weithin unbekannt. Dazu gehören Closures.
NoSQL für jeden Zweck
dotnetpro, 10.2011
NoSQL-Datenbanken gibt es wie Sand am Meer - und viele von ihnen haben spezielle Eigen- und Besonderheiten. Dennoch weisen einige eine höhere Verbreitung auf als andere. dotnetpro stellt die beiden NoSQL-Datenbanken Redis und MongoDB exemplarisch vor und zeigt, wie sie eingesetzt werden.
Unter die Haube geguckt
dotnetpro, 10.2011
Sogenannte NoSQL-Datenbanken wie beispielsweise Redis und MongoDB machen - vor allem in der Webwelt - zunehmend von sich reden. dotnetpro erläutert, was NoSQL eigentlich bedeutet, wie diese Datenbanken arbeiten und wann ihre Verwendung sinnvoll ist.
Explizite Schnittstellen
dotnetpro, 10.2011
Das Implementieren von Schnittstellen gehört zum täglichen Handwerk jedes Entwicklers, der mit objektorientierter Programmierung halbwegs vertraut ist. C# bietet dafür zwei Wege: Die implizite und die explizite Implementierung.
Von as bis typeof
dotnetpro, 9.2011
Die Vielzahl an Schlüsselwörtern, Operatoren und Methoden zum Umgang mit Typen in C# wirkt zunächst schier erschlagend: typeof, GetType(), is, as, (). Dabei ist alles eigentlich ganz einfach, denn jedes Konstrukt hat seine spezielle Aufgabe und seine Vor- und Nachteile. Die Verwirrung ist schnell beseitigt.
Von Hummeln und Menschen
heise Developer, 9.2011
Die Community um das serverseitige JavaScript-Framework Node.js mag noch verhältnismäßig klein sein - doch sie wächst stetig, gewinnt zunehmend an Professionalität und begeistert. Nur so ist zu erklären, dass sich rund 250 Menschen aus ganz Europa auf den Weg nach Brescia zur ersten Node.js Conference Italy machten.
Nächste Station: Web
dotnetpro, 8.2011
Sie entwickeln für den Desktop, und bis gestern war die Welt noch in Ordnung. Und nun das: Ein Kunde fragt so nebenbei, ob Sie die für ihn erstellte Software nicht webfähig machen könnten - schließlich sei das ja modern. dotnetpro hat für Sie den Fahrplan, um schnell ins Web zu kommen.
Quo vadis?
dotnetpro, 8.2011
Das Internet hat das Leben in den vergangenen zehn Jahren in hohem Maß verändert. Mit dem Erfolg mobiler Endgeräte ist das Web endgültig allgegenwärtig geworden. Soziale Netzwerke beeinflussen gar das Weltgeschehen. Und wie steht es in dieser Welt um ASP.NET?
Mut zum Anfang
dotnetpro, 8.2011
Das Agile Development Framework hat Sie in der Theorie überzeugt und Sie haben auch den Chef dafür begeistert, so dass Sie sich nun an die Einführung machen können. Doch wie gestaltet sich das Ganze in der Praxis? dotnetpro hat die 20 wichtigsten Fragen gesammelt und beantwortet.
Mit weniger mehr erreichen
dotnetpro, 7.2011
Die vergangenen vier Ausgaben der dotnetpro haben ADF im Allgemeinen und anschließend die einzelnen Stufen White, Blue und Gray im Speziellen vorgestellt. Wer nun auch seinen Chef davon überzeugen will, dass er von ADF nur profitieren kann, findet hier die zehn wichtigsten Gründe, warum das agile Rahmenwerk dem Unternehmen zum Vorteil gereicht.
Von Freund zu Freund
dotnetpro, 7.2011
Stellen Sie sich einen Datenspeicher vor, der Ihre Daten mehrfach redundant hält, hochverfügbar und selbstoptimierend ist und ohne einen schwergewichtigen und pflegebedürftigen Server auskommt - und das ohne Administrationsaufwand. Kademlia macht's möglich.
Verteilt + repliziert = besser
dotnetpro, 6.2011
Nahezu jeder professionelle Entwickler verwendet eine Versionsverwaltung. Die Bandbreite reicht dabei von einfachen Open-Source-Werkzeugen bis zu komplexen kommerziellen Anwendungen. Nun gibt es etwas Neues: das Konzept der verteilten Versionsverwaltung. dotnetpro erklärt, was es damit auf sich hat.
hg WieGingDasNochGleich?
dotnetpro, 6.2011
Wer das volle Potenzial der Versionsverwaltung Mercurial nutzen will, bedient sie über die zahlreichen Befehle der Kommandozeile. Als kleine Gedächtnisstütze bietet dotnetpro die wichtigsten Mercurial-Kommandos mit den wichtigsten Parametern im Überblick.
Die Alternativen
dotnetpro, 6.2011
Der Team Foundation Server ist der Porsche unter den ALM-Werkzeugen - für viele ein Traum, aber auch unerreichbar. Zu umfangreich, zu aufwendig oder zu teuer wäre ihnen sein Einsatz. Mit Kiln und FogBugz stehen würdige Alternativen zur Verfügung, die zwar schlanker und einfacher sind, aber kaum minder leistungsfähig.
Vereint, verstreut, verteilt
dotnetpro, 6.2011
Wie sich im Rahmen des Agile Development Frameworks verschiedene Entwickler über ADF Blue zu einem Team zusammenfinden, hat dotnetpro in der letzten Ausgabe beschrieben. Teams sind allerdings in der Regel verstreut. Dieser Herausforderung nimmt sich die dritte Stufe des Agile Development Frameworks an: ADF Gray.
Windows 8, HTML5 und die Folgen für .NET?
heise Developer, 6.2011
Lange Zeit war die Roadmap von .NET so verlässlich wie unspektakulär - seit der PDC 2010 ist die Stabilität jedoch ins Wanken geraten. Was mit der beiläufigen Aussage "our strategy with Silverlight has shifted" begann, fand am 1. Juni 2011 seinen bisherigen Höhepunkt in der Ankündigung zu Windows 8, dass HTML5 und JavaScript zu "First Class Citizens" bei der Entwicklung von UIs werden. Welche Zukunftsaussichten ergeben sich daraus für .NET? Ist der Zenit des Frameworks bereits überschritten, oder gibt es noch Hoffnung?
Vertrauen ist gut, Kontrolle ist schlechter
dotnetpro, 5.2011
In der vergangenen Ausgabe der dotnetpro haben Sie ADF White kennen- und vielleicht schätzen gelernt, und möglicherweise wollen Sie nun ADF auch in Ihrem Team einführen. Dazu dient ADF Blue - die zweite Stufe des Agile Development Frameworks. Sie enthält außer Regeln für das Team auch einen Prozess, der sich gleichermaßen durch Flexibilität und hohe Zuverlässigkeit auszeichnet.
Event Based Components: Architektur von Software in neuem Licht
heise Developer, 5.2011
Je weniger Abhängigkeiten innerhalb von Code bestehen, desto einfacher fallen dessen Wartung und Pflege aus. Dieser hinlänglich bekannten Erkenntnis begegnen Entwickler auf Komponentenebene in der Regel mit dem Entwurfsmuster "Inversion of Control", indem sie beispielsweise einen Dependency-Injection-Container (DI) zur dynamischen Auflösung der Abhängigkeiten verwenden. Doch genügt diese Art der Entkopplung, um isolierte Komponenten zu entwickeln?
Keine Kunst?
Kaffeeklatsch, 4.2011
Wie lange brauchen Sie, um ein Osterei zu bemalen? Eins mit ein bisschen Wiese, einem Osterhasen, einer Sonne und einigen Wolken am Himmel. Einschließlich ausblasen, und schließlich den an ein Streichholz geknoteten Faden einfädeln. 10 Minuten? 15 Minuten? Eine halbe Stunde? Oder gar eine ganze Stunde?
Im Kleinen Großes bewirken
dotnetpro, 4.2011
Der Artikel zu ADF in der vorigen dotnetpro hat Ihren Chef inspiriert: Nun haben Sie den Auftrag, das Agile Development Framework im Unternehmen einzuführen - bloß wie? Ganz einfach: Schritt für Schritt. Das ist der Vorteil von ADF: Drei aufeinander aufbauende Stufen, die Sie nach und nach umsetzen können. Den Anfang bildet ADF White.
Ach, C# kann das?
dotnetpro, 4.2011
Eine neue Programmiersprache zu lernen, fällt leicht. Der gravierendste Unterschied zu einer bereits bekannten Sprache ist in der Regel die Syntax, revolutionär neue Konzepte sind rar. Ganz ist es mit den Feinheiten einer Sprache. Diese zu ergründen, fällt schon nicht mehr so leicht. So gibt es bei C# für jeden immer noch etwas zu entdecken.
Agil 2.0
dotnetpro, 3.2011
Scrum, XP & Co sind in den vergangenen Jahren in der Softwareentwicklung salonfähig geworden und erfolgreich. Doch ein Problem besteht nach wie vor: Eine einzelne Methode genügt in der Regel nicht. Beim Kombinieren agiler Methoden lauern jedoch Stolpersteine und Reibungspunkte. Das Agile Development Framework tritt an, dieses Problem zu lösen.
Best of Breed
dotnetpro, 3.2011
Ob Steinaxt, Füller oder Tunnelbohrmaschine: Ohne solche Werkzeuge fällt das Erschaffen von Neuem schwer. Auf den folgenden Seiten verraten dotnetpro-Autoren, welche Tools ihnen die liebsten sind. Einer schlägt dabei völlig aus der Art.
XP - agiles Basiswissen
Visual Studio One, 2.2011
Scrum, Feature Driven Development (FDD), Crystal, Kanban - sie alle haben eines gemeinsam: Sie behandeln eher den Prozess als das konkrete Vorgehen des einzelnen Entwicklers. Doch die Welt besteht aus mehr als Projektplanung und -organisation. Extreme Programming (XP) verfolgt daher einen anderen Ansatz: XP richtet sich - getreu dem Motto "Nomen est Omen" - explizit an Entwickler, die ein primär technisch geprägtes Fundament zur agilen Entwicklung suchen.
Richtig Schluss machen, Teil 2
dotnetpro, 2.2011
Zu den wirklich schönen Dingen bei .NET gehört die automatische Speicherverwaltung, bei der sich der Entwickler um nichts kümmern muss - außer er will es unbedingt, etwa um kritische Vorgänge kontrolliert zu beenden, ehe ein Objekt aus dem Speicher verschwindet. Auch dafür stellt .NET Funktionen bereit. Dreh- und Angelpunkt dafür ist die IDisposable-Schnittstelle.
Viel Wirbel um - nichts?
Visual Studio One, 1.2011
Scrum ist jene agile Methode, um die derzeit der meiste Wirbel gemacht wird: Wer agil sein will, macht Scrum. Oder zumindest das, was er dafür hält. Was also ist Scrum? Glaubt man dem Marketing, so ist Scrum eine agile Methode, die sich in fünf Minuten auf einer Serviette erklären lässt. Viel Wirbel um nichts also? Nicht ganz - denn obwohl Scrum auf den ersten Blick beinahe trivial wirkt, steckt der Teufel wie so oft im Detail. Visual Studio One erklärt, worauf Sie achten müssen.
Richtig Schluss machen, Teil 1
dotnetpro, 1.2011
Das Erzeugen von Objekten ist ein Leichtes von C# - doch wie sieht es mit dem Löschen aus? Ein Blick in die Sprachreferenz verwirrt eher, als dass er nützt: Destruktoren, Finalizer, GC.Collect & Co buhlen um die Aufmerksamkeit. Im Web finden sich zudem jede Menge halbgarer Tipps und Tricks zum Thema. Doch wie macht man denn nun richtig Schluss?
Vom Saulus zum Paulus
dotnetpro, 12.2010
Es gibt mehrere Möglichkeiten, den Verzicht auf Unit-Tests zu begründen: zu aufwendig, zu teuer, zu umständlich. Die Frage ist, ob diese Gründe hieb- und stichfest sind oder ob sie nur mangels besseren Wissens plausibel erscheinen. Oft genug wird aber auch behauptet, Unit-Tests seien unverzichtbar. Ja, was denn nun?
StringBuilder + String.Concat
dotnetpro, 12.2010
Es gibt etliche Varianten, Zeichenfolgen in C# zu verbinden: den +-Operator, die Klasse StringBuilder, die String.Concat-Methode - und ebenso vielfältig sind die Ansichten darüber, welche die beste sei. Um sie herauszufinden, ist es hilfreich zu wissen, wie .NET Strings verwaltet.
Modifizierte Klaviatur
iX Developer, 12.2010
Mit Visual Studio 2010 und .NET 4.0 halten auch eine neue Version von C# und die Unterstützung agiler Methoden durch den Team Foundation Server Einzug in die Programmierwelt. Was auf den ersten Blick löblich erscheint, mag für den einen oder anderen Entwickler aber nicht umfassend genug umgesetzt sein.
Entwickeln mit verteilten agilen Teams
dotnetpro, 11.2010
Seit seinem Studienabschluss im Jahr 2001 ist Jörn Koch für die C1 WPS GmbH als Senior Softwarearchitekt in den Bereichen IT-Beratung, Coaching und Projektleitung tätig. Er verfügt über mehrjährige Erfahrung in der Leitung und im Coaching agiler Projekte sowie als Architekt in der Konstruktion, Bewertung und der Restrukturierung großer objektorientierter Anwendungssysteme für unterschiedliche Branchen.
XP verteilt
dotnetpro, 11.2010
Extreme Programming propagiert räumliche Nähe, zwischen Team und Kunde sowie innerhalb des Teams. Doch was, wenn dies nicht zu leisten ist, weil sich die Mitglieder eines Teams an verschiedenen Standorten und vielleicht sogar in unterschiedlichen Zeitzonen befinden? dotnetpro zeigt, wie die XP-Techniken angepasst werden können, um agile Entwicklung in verteilten Teams zu ermöglichen.
(K)eine teure Angelegenheit
dotnetpro, 11.2010
In nahezu jeder Diskussion über Exceptions fällt irgendwann die Bemerkung, sie seien "(zu) teuer". Doch was bedeutet das? Ab wie vielen Ausnahmen leidet die Ausführung eines Programms? Und warum? Gilt diese Aussage denn überhaupt? Oder handelt es sich vielleicht eher um einen modernen Mythos?
Halbtonschritt
heise Developer, 11.2010
F# ist im Gegensatz zu C# eine funktionale Sprache. Was zunächst als Spezialsprache für mathematische Algorithmen erscheint, erweist sich schnell als flexible und gut geeignete Sprache für andere Anwendungsgebiete.
IArithmetic
dotnetpro, 10.2010
Die Schnittstelle IArithmetic schmückt alle Typen, die sich in Berechnungen verwenden lassen. Dies ist beispielsweise für generische Methoden praktisch, denn IArithmetic beschränkt Parameter auf Typen, für welche die vier Grundrechenarten zur Verfügung stehen. Sie kennen IArithmetic nicht? Kein Wunder: IArithmetic gibt es nicht.
"Wir müssen abwarten, was Java 7 leisten wird"
dotnetpro, 9.2010
Das .NET Framework ist sicherlich noch nicht in die Jahre gekommen, aber die Jugendzeit hat es definitiv hinter sich. Jon Skeet ist MVP für C#, Autor des Buches "C# in Depth" und weiß, was .NET im Innersten zusammenhält. dotnetpro-Autor Golo Roden hat mit ihm über C#, über funktionales Programmieren und über die Zukunft der Programmiersprache gesprochen.
Operator Overloading 101
dotnetpro, 9.2010
Während wohl jeder Entwickler schon Methoden überladen hat, sieht das bei Operatoren ganz anders aus. Dabei birgt das Thema ungeheures Potenzial. Es zu verstehen kann nicht nur zu effizienterem Code führen, sondern macht auch die Hintergründe von .NET und seinen Sprachen verständlicher.
Gleich und doch nicht dasselbe
dotnetpro, 8.2010
Zwei Werte in C# auf Gleichheit zu prüfen ist ein Leichtes: Hierfür gibt es den Operator == ... und die Methode Equals() ... und die statische Methode ReferenceEquals() ... und die IEquatable<T>-Schnittstelle ... und die IComparable- sowie die IComparable<T>-Schnittstellen, die auch noch irgendeine Rolle spielen - aber welche?
Murphy's Law hoch 10
dotnetpro, 8.2010
Eine Scheibe Brot fällt immer auf die belegte Seite, eine Katze dagegen landet unbeschadet immer auf den Pfoten - so sagt es jedenfalls der Volksmund. Auch wenn weder das eine noch das andere je naturwissenschaftlich nachgewiesen wurde, gilt beides - zumindest in gewissem Sinne - als Gesetz. In der Informatik gibt es ebenfalls vermeintliche, aber auch empirische und tatsächliche Gesetze. dotnetpro stellt die zehn für die Softwareentwicklung wichtigsten Gesetze vor.
V ... wie virtual
dotnetpro, 7.2010
Das Schlüsselwort virtual dient dazu, ein Element eines Typs als virtuell zu deklarieren. Diese Erklärung ist korrekt, erläutert aber nicht, was es in letzter Konsequenz bedeutet, wenn ein Element als virtuell deklariert wird: Wie sich dieses Schlüsselwort bei Übersetzung und Laufzeit auswirkt, wann sich sein Einsatz empfiehlt und wann nicht.
VIP-Tipp: Unbedingt lesen!
dotnetpro, 7.2010
Im VIP-Tipp stellt ein Experte Bücher vor, die er persönlich für besonders lesenswert hält. Der VIP-Tipp soll als Entscheidungshilfe für Softwareentwickler bei der Auswahl der passenden Fachlektüre dienen. Die Aktion ist eine Kooperation zwischen der Fachbuchhandlung Lehmanns (www.lob.de/viptip), dem Seminaranbieter Professional Developer College (www.prodevcollege.de) und dotnetpro (www.dotnetpro.de).
beforefieldinit
dotnetpro, 6.2010
Visual Studio kann es, ildasm.exe kann es, und .NET Reflector kann es auch - aus kompilierten Assemblies wieder lesbaren MSIL-Code machen. Das Interessante daran: Auch wer MSIL nicht kennt, versteht die meisten Anweisungen auf Anhieb. Ausnahmen bestätigen die Regel - wie das Schlüsselwort beforefieldinit.
Der Mensch im Mittelpunkt
dotnetpro, 6.2010
Agile Methoden unterscheiden sich im Wesentlichen durch ihre Praktiken. Während etwa Extreme Programming alle Entwickler in die Verantwortung nimmt, ordnet das "Feature-Driven Development" jeder Klasse einen einzigen Eigentümer zu. Scrum lässt die Frage unbeantwortet. Aber allen liegt ein gemeinsames Wertesystem zugrunde.
Das Erbe von Java
dotnetpro, 6.2010
Ähnlich wie .NET ist auch die Java-Plattform prinzipiell mehrsprachenfähig. Bislang hat jedoch nur Java selbst eine nennenswerte Verbreitung erreicht. Seit einiger Zeit drängen allerdings neue Sprachen für die Java-Plattform auf den Markt, von JRuby über Jython bis hin zu Clojure. Besonders bemerkenswert ist Scala, und davon gibt es auch eine .NET-Version.
Nummer 5 lebt
Toolbox, 5.2010
Die Erfindung von HTML hat das Internet revolutioniert. Die derzeitige Version 4.01 ist bereits über zehn Jahre alt und nicht mehr zeitgemäß. HTML5 tritt nun an, dies zu ändern.
Projekt statt Murks
Visual Studio One, 5.2010
Crystal Clear ist die kleinste von verschiedenen Projektmanagement-Methoden der Crystal-Familie. Doch weder sie noch ihre Schwestern sind weitläufig bekannt - selbst Feature Driven Development (FDD) ist weiter verbreitet. Zu Unrecht, denn trotz einer gewissen Nähe zu Extreme Programming (XP) und Scrum weist Crystal Clear einige individuelle, interessante Aspekte auf.
Fahndung nach Zielpersonen
databasepro, 5.2010
Zur Cloud-Plattform Windows Azure gehören neben dem eigentlichen Betriebssystem noch einige weitere Komponenten. SQL Azure ist eine in der Cloud verfügbare relationale Datenbank.
yield return, yield break, yield ...
dotnetpro, 5.2010
Das Schlüsselwort yield gehört seit Version 2.0 zum Sprachumfang von C#. Fast jeder Entwickler hat schon einmal etwas darüber gelesen, doch mehr als die Erinnerung daran ist oft nicht geblieben. Dabei kann yield ausgesprochen hilfreich sein - zahlreiche Aufgaben lassen sich mit seiner Mitwirkung deutlich eleganter lösen. dotnetpro verhilft yield zu einem zweiten Frühling.
Feature Driven Development
Visual Studio One, 4.2010
Die meisten Entwickler denken bei dem Begriff "agile Methoden" an Extreme Programming (XP) oder Scrum. Andere Verfahren sind zumeist, wenn überhaupt, nur passiv bekannt. Dabei steht mit dem Feature Driven Development (FDD) eine agile und ausgesprochen leichtgewichtige Methode zur Verfügung, die zumindest auf den ersten Blick den Vergleich zu Scrum nicht zu scheuen braucht.
Ein bool ist ein int ist ein bool
dotnetpro, 4.2010
Früher war die Welt noch in Ordnung: In C++ war eine Variable vom Typ bool ohne Weiteres in den Typ int konvertierbar, wovon zahlreiche Entwickler gerne und häufig Gebrauch machten. In C# ist dies nicht mehr möglich - oder doch? Was genau steckt eigentlich in .NET hinter dem Datentyp bool? Wie ist er implementiert? Golo Roden klärt auf.
Jeder für sich
dotnetpro, 4.2010
Dass eine einzige Installation einer Anwendung zugleich mehrere Benutzer bedienen soll, ist eine häufig geforderte Funktion. Dafür ist jedoch eine korrekte Datentrennung notwendig. dotnetpro zeigt, wie Multimandantenfähigkeit bereits auf Basis der Datenbank hergestellt werden kann.
Modifizierte Klaviatur
heise Developer, 4.2010
Mit Visual Studio 2010 und .NET 4.0 halten auch eine neue Version von C# und die Unterstützung agiler Methoden durch den Team Foundation Server Einzug in die Programmierwelt. Was auf den ersten Blick löblich erscheint, mag für den einen oder anderen Entwickler aber nicht umfassend genug umgesetzt sein.
Nummer 5 lebt
PHP Journal, 3.2010
Die Erfindung von HTML hat das Internet revolutioniert. Die derzeitige Version 4.01 ist bereits über zehn Jahre alt und nicht mehr zeitgemäß. HTML 5 tritt nun an, dies zu ändern.
Welchen Typ hat null?
dotnetpro, 3.2010
Eine weitverbreitete Behauptung besagt, alle Typen in .NET seien von object abgeleitet. Da null nicht nur für alle Referenztypen verwendet werden kann, sondern auch explizit in diese Typen konvertiert werden kann, scheint die Behauptung zu stimmen – wären da nicht einige Sonderfälle, die nicht so recht ins Bild passen. Welchen Typ hat also null?
Singularität im Kern
dotnetpro, 3.2010
Mit LightCore steht ein Microkernel zur Verfügung, der quasi nebenbei auch als Dependency-Injection-Container dient: Er ist leichtgewichtig, kompakt und vor allem schnell – ohne dass man dabei Features vermissen würde.
Aus Fehlern lernen
dotnetpro, 3.2010
Zeitplanung und Aufwandschätzung gehören zu den wenig geliebten Pflichten vieler Softwareentwickler. Doch zumeist sind sie unumgänglich, weil sie gefordert werden. Aber wenn man nicht umhinkommt, solche Schätzungen durchzuführen, warum sich die Arbeit dann nicht wenigstens so einfach wie möglich machen? dotnetpro stellt Evidence-Based Scheduling vor.
Unabhängigkeit ist die beste Basis für eine echte Community
heise Developer, 3.2010
myCSharp.de ist eine der wichtigsten Anlaufstellen für Programmierer, die sich mit den Themen C# und .NET befassen. heise Developer sprach mit Golo Roden, früherem Administrator und heutigem Poweruser der Community-Seite, über die Angebote und Ziele des Forums sowie seine Besucher.
Alternativen zu MySQL
PHP Journal, 2.2010
Obwohl in der Regel kostenlos, können Open-Source-Datenbanken mit den kommerziellen Vertretern dieser Zunft durchaus mithalten. Ein Marktüberblick.
Bildgalerien mit Zoom
Weave, 2.2010
Dank Deep Zoom Composer kann man seit Silverlight 2 stufenlos in hoch aufgelöste Bilder hineinzoomen. Golo Roden zeigt, wie Sie eine zoombare Galerie anlegen, bei der Ihre Kunden die Bilder selbst vorbereiten können.
Suchmaschinen-Optimierung
PHP Journal, 1.2010
Wer eine Webseite betreibt, möchte, dass diese auch gefunden wird. Das wichtigste Medium hierfür sind Suchmaschinen. Eine gute Positionierung ist das A und O eines erfolgreichen Webauftritts.
Frei und Business-tauglich
databasepro, 1.2010
Obwohl in der Regel kostenlos, können Open-Source-Datenbanken mit den kommerziellen Vertretern dieser Zunft durchaus mithalten. Ein Marktüberblick.
Abwarten und Tee trinken
dotnetpro, 12.2009
Es kann ausschlaggebend für den Erfolg einer Anwendung sein, das Letzte aus ihr herauszuholen. Das darf aber nicht auf Kosten und zu Lasten anderer Aspekte der Anwendungsentwicklung gehen. Die Frage ist also, wann der richtige Zeitpunkt gekommen ist, um sich mit dem Thema Optimierung zu befassen.
ASP.NET auf Speed
dotnetpro, 12.2009
ASP.NET eignet sich zur Entwicklung hochperformanter Anwendungen: Der Verzicht auf einen Interpreter, die Integration der Runtime in den Webserver und ein schlankes Ausführungsmodell tragen ihren Teil dazu bei. Dennoch lässt sich fast jede ASP.NET-Anwendung noch optimieren. dotnetpro stellt die besten Performancetipps vor.
Silverlight als Silberpfeil
dotnetpro, 12.2009
Im Oktober 2008 hat Microsoft Silverlight 2 veröffentlicht. Die wichtigste Neuerung war die Unterstützung von .NET. Entwickler können Anwendungen nun in C# schreiben und kompilieren. Das allein macht eine Silverlight-Anwendung aber noch nicht automatisch schnell. Zehn Tipps erklären, was Sie dazu tun können.
WPF != DirectX
dotnetpro, 12.2009
Die Anzeige von WPF-Oberflächen basiert auf DirectX. Daraus zu schließen, dass WPF-Anwendungen so schnell laufen wie DirectX-Anwendungen, ist leider falsch: Probleme lauern an jeder Ecke. dotnetpro gibt einen Überblick, wie Sie WPF-Anwendungen deutlich beschleunigen können.
Wer blufft, fliegt raus
dotnetpro, 11.2009
Wer eine Webseite betreibt, möchte, dass diese auch gefunden wird. Das wichtigste Medium hierfür sind die verschiedenen Suchmaschinen von Google bis Bing. Und hier kommt es darauf an, möglichst gleich am Anfang der Ergebnisseiten zu erscheinen. dotnetpro sagt, was man tun und lassen sollte, um gut gefunden zu werden.
Hochaufgelöst
dotnetpro, 11.2009
Wie groß Anwendungen dargestellt werden, hängt von der Bildschirmauflösung und den gewählten DPI-Einstellungen ab. Allerdings müssen Anwendungen mit unterschiedlichen DPI-Einstellungen umgehen können - sonst kommt es zu Darstellungsfehlern. dotnetpro gibt einen Überblick, was in den UI-Technologien von .NET beachtet werden muss.
Grippeimpfung für Webserver
dotnetpro, 11.2009
Viele Communities und Webportale ermöglichen es ihren Benutzern, eigene Dateien hochzuladen. Das Spektrum reicht von Office-Dokumenten über Fotos bis hin zu Audio- und Videodateien. Aus Sicherheitsgründen empfiehlt es sich jedoch, diese Dateien auf Viren zu untersuchen. dotnetpro zeigt, wie Sie den Open-Source-Virenscanner ClamAV auch unter .NET nutzen können.
Compatible with Windows 7 - aber wie?
dot.net magazin, 10.2009
Anwender achten beim Kauf von Software auf die Kompatibilitätslogos zu Windows. Gab es diese Logos unter Windows Vista noch in zwei Varianten, ist es bei Windows 7 nur noch eines. Doch welche Anforderungen muss eine Anwendung überhaupt erfüllen, um ein entsprechendes Logo tragen zu dürfen? Das dot.net magazin gibt einen Überblick.
Wider das Vergessen
dotnetpro, 10.2009
Einem Fehler in einer bereits ausgelieferten Anwendung auf den Grund zu gehen, ist oft ausgesprochen schwierig. Selten hat der Entwickler direkten Zugriff auf das System des Kunden. Logging-Werkzeuge helfen, indem sie die Aktivitäten der Anwendung protokollieren. dotnetpro zeigt, wie eine Anwendung ihre Fehler richtig niederschreibt.
Was noch zu beweisen wäre
dotnetpro, 10.2009
dotnetpro hat in Ausgabe 7/2009 die Frage gestellt, ob die Komplexitätsklassen P und NP äquivalent sind. Diese Frage ist nach wie vor unbeantwortet - und nach wie vor sind auf diese Antwort 1 Million Dollar ausgeschrieben. Alles, was Sie für diese Summe tun müssen, ist, eine polynomiale Lösung für ein beliebiges NP-vollständiges Problem finden. Damit Sie wissen, worauf Sie sich einlassen, stellt dotnetpro in dieser Ausgabe zehn NP-vollständige Probleme vor.
7.0 = 6.1 - Worauf Entwickler in Windows 7 achten müssen
dot.net magazin, 9.2009
Am 22. Oktober 2009 wird das Warten ein Ende haben: An diesem Tag wird Microsoft mit Windows 7 eine neue Version seines Betriebssystems und damit den Nachfolger von Windows Vista veröffentlichen. Damit alle bestehenden Anwendungen auch auf Windows 7 laufen, sind eventuell einige Anpassungen notwendig. Das dot.net magazin zeigt Ihnen daher, was sich für Entwickler in Windows 7 ändert.
Interview mit Golo Roden: Jede Checkbox fordert vom Benutzer eine Entscheidung
dotnetpro, 9.2009
Was, wenn Sie als Entwickler plötzlich doch ein User Interface gestalten müssen? Wie wird das ganze dann für den Benutzer optimal bedienbar? Golo Roden gibt Ihnen in seinem Vortrag auf der prio.conference 2009 wichtige Regeln und Hilfen an die Hand, die Ihnen in so einer Situation garantiert weiter helfen.
Gemeinsam mehr erreichen
dot.net magazin, 8.2009
Wikis könnte man als eine Art einfaches Content-Management-System beschreiben. Allerdings grenzen sich diese von jenen durch eine spezielle und sehr charakteristische Eigenart ab: Benutzer können die in einem Wiki enthaltenen Informationen nicht nur lesen, sondern auch verändern - ein Wiki ist also eine ideale Community-Plattform. Das dot.net magazin hat sich deshalb die Software ScrewTurn Wiki näher angesehen.
Weniger ist mehr
dotnetpro, 8.2009
Die neuen Sprachmerkmale von C# 4.0 dienen der besseren Zusammenarbeit von C# mit dynamischen Sprachen und COM. Zu diesen Merkmalen gehören auch optionale Parameter, die Visual-Basic-Entwickler schon lange kennen. Für den täglichen Einsatz sind sie allerdings nicht gedacht.
Der Nummernkontrolleur
dotnetpro, 8.2009
Der Einsatz einer Versionsverwaltung ist für einen Entwickler Pflicht - egal, ob er allein oder in der Gruppe arbeitet. Der Team Foundation Server bietet eine solche, aber nicht jeder kann ihn sich leisten. Es gibt jedoch eine kostenlose und leistungsfähige Alternative: die Versionsverwaltung Subversion und einige ergänzende Werkzeuge dafür.
Die Nadel im Heuhaufen
dot.net magazin, 7.2009
Die Suche nach einem Content Management System (CMS), das auf ASP.NET basiert, kostenfrei, idealerweise Open Source und zudem leistungsfähig und skalierbar ist, gestaltet sich schnell so aufwändig wie die sprichwörtliche Suche nach der Nadel im Heuhaufen. Deshalb hat sich das dot.net magazin die Open-Source-Software Umbraco näher angesehen.
Die Eine-Million-Dollar-Frage
dotnetpro, 7.2009
Manche algorithmischen Probleme lassen sich schnell und unter Einsatz geringer Ressourcen lösen. Andere Aufgaben, etwa die Zerlegung einer sehr großen Zahl in ihre Primfaktoren, sind ausgesprochen aufwendig. Oder geht das auch schneller? Und es hat bloß noch keiner den richtigen Algorithmus gefunden? Diese Frage führt mitten in die Untiefen der theoretischen Informatik.
Flexible User Interfaces
Weave, 6.2009
Immer mehr Desktopanwendungen werden für das Web portiert. Das erfordert nicht zwingend ein grundlegendes Rewrite der Anwendung - man kann auch das bestehende Desktop-User-Interface einfach gegen ein Web-UI austauschen. Weave erklärt, welche Voraussetzungen erfüllt sein müssen, und stellt einen passenden Architekturentwurf vor.
Come together
dot.net magazin, 6.2009
Viele Communities im Web basieren auf einer Forensoftware - enthält eine solche doch bereits von Haus aus die meisten Features, die für eine Community wichtig sind - allem voran natürlich ausgefeilte Möglichkeiten, Diskussionen zu erstellen, daran teilzunehmen und diese zu moderieren. Einen ASP.NET-basierten Vertreter, der zudem Open Source zur Verfügung steht, hat sich das dot.net magazin angesehen: YetAnotherForum.NET.
Drum prüfe, wer sich ewig bindet
dotnetpro, 6.2009
Der Wunsch, eine Datenbank irgendwann gegen eine beliebige andere austauschen zu können, ist alt. Die jeweiligen spezifischen Merkmale einer Datenbank erschweren dies jedoch teils stark. Die Wahl der richtigen Datenbank will also von Anfang an gut überlegt sein. dotnetpro hat Datenbanken für .NET verglichen, um Ihnen die Entscheidung zu erleichtern.
Liebes Tagebuch!
dot.net magazin, 5.2009
Wer ein Blog betreiben und dieses auf eigenem Webspace hosten will, benötigt eine geeignete Blogsoftware als Basis. Spätestens, wenn Anpassungen an der Software vorgenommen werden sollen, empfiehlt es sich für .NET-Entwickler, ein auf ASP.NET basierendes System zu wählen. Deshalb hat sich das dot.net magazin die Open-Source-Software BlogEngine.NET näher angesehen.
Für alle Event(-)ualitäten
dotnetpro, 5.2009
Ereignisse und Delegaten sind die moderne und typsichere Version von Callbacks. In der Regel kümmert sich bei Windows-Anwendungen die IDE um ihre Implementierung, aber sie lassen sich selbstverständlich auch für beliebige eigene Objekte einsetzen. Eigentlich trivial, steckt der Teufel - wie so oft - im Detail. dotnetpro zeigt, was dabei zu beachten ist.
Für wen eignet sich Windows Azure?
dotnetpro, 5.2009
Am 27. Oktober 2008 hat Microsoft Windows Azure vorgestellt: ein neues Windows-Betriebssystem als Basis für cloudbasiertes Computing. Windows Azure tritt somit in Konkurrenz zu Produkten wie Amazon EC2 oder Google Apps. Doch für wen eignet sich Cloud Computing überhaupt? dotnetpro ist dieser Frage nachgegangen.
Wahlfreiheit - wann ist es sinnvoll, WPF zu nutzen, und wann Silverlight?
dot.net magazin, 4.2009
WPF und Silverlight sind die aktuellen Technologien von Microsoft zur Entwicklung grafischer Oberflächen. Obwohl sie miteinander verwandt sind und aufeinander basieren, sind sie nicht beliebig austauschbar. Das dot.net magazin ist der Frage nachgegangen, wo die jeweiligen Stärken der Technologien liegen, und wann sie jeweils eingesetzt werden sollten.
[dev: Important(Prio.High)]
dotnetpro, 3.2009
In einer .NET-Anwendung werden neben dem Code auch beschreibende Daten - die Metadaten - ausgewertet. In C# ermöglicht das Konzept der Attribute, Code mit Metadaten zu versehen, die dann entweder vom Compiler oder während der Ausführung ausgewertet werden. dotnetpro stellt die zehn wichtigsten Attribute vor.
Silverlight 2.0, Teil 2: Umsetzung eines Projektes
dot.net magazin, 2.2009
Mit Silverlight als Technologie für grafische Oberflächen und .NET als Backend, verfügt Microsoft über eine mächtige Plattform, auf deren Basis es deutlich leichter ist als bisher, umfangreiche und komplexe Web-Anwendungen zu erstellen. Während es im ersten Teil dieser Artikelserie vorrangig um Silverlight als Plattform und die entsprechende Infrastruktur seitens Microsoft ging, beschäftigt sich der vorliegende zweite Teil dieses Artikels mit der Planung, Entwicklung und Bereitstellung eines Silverlight-Projektes.
.NET kompromittiert
dotnetpro, 2.2009
Eine verwaltete Plattform wie .NET bietet einen wesentlichen Sicherheitsvorteil: Typische Sicherheitslücken wie beispielsweise Buffer Overflows oder SQL Injection müssen nicht von jeder Anwendung einzeln berücksichtigt, sondern können bereits von der Plattform abgefangen werden. Doch was, wenn die Plattform selbst kompromittiert wird? dotnetpro ist dieser Frage nachgegangen.
F# = f(C#)?
dotnetpro, 2.2009
Mathematische Formeln sind das grundlegende Handwerkszeug für Ingenieure, Wissenschaftler und mehr oder weniger seriöse Finanzberater. Es ist nicht immer leicht, solche Formeln in eine Programmiersprache wie C# zu gießen. Da kommt F# gerade recht. Diese funktionale Programmiersprache ist dafür geschaffen, mit Formeln und Funktionen umzugehen. Aber auch die herkömmliche objektorientierte Programmierung fällt mit ihr nicht schwer.
Fliegender Zirkus für Entwickler
dotnetpro, 2.2009
Seit den 90er Jahren ist die Verbreitung der Programmiersprache Python stetig gestiegen. Ihre Einfachheit und hohe Flexibilität macht sie sowohl bei Einsteigern als auch bei Fortgeschrittenen beliebt. Mit IronPython steht auch eine Variante für .NET und Mono zur Verfügung.
Silverlight 2.0, Teil 1: Theorie und Grundlagen
dot.net magazin, 1.2009
Seit das World Wide Web im Jahr 1993 vollständig öffentlich zugänglich gemacht wurde, haben sich die zu Grunde liegenden technischen Standards nicht relevant verändert: Seit inzwischen 15 Jahren basiert das Web auf den Standards HTTP, HTML und URL. Auf dem Desktop hingegen gab es in der gleichen Zeit gleich einige Revolutionen - mit Silverlight schickt Microsoft nun einen Kandidaten ins Rennen, der eine solche Revolution auch im Web leisten soll.
SOA, WOA, was?
dotnetpro, 1.2009
Jahr für Jahr beschäftigt die IT-Industrie Entwickler und Anwender mit neuen "Hypes" in Form von knackigen Wortschöpfungen. Während die meisten bereits nach kurzer Zeit wieder verblassen, halten sich einige hartnäckig über etliche Jahre. dotnetpro hat die zehn derzeit wichtigsten Begriffe entschlüsselt.
Keineswegs auf Sand gebaut
dotnetpro, 12.2008
Seit der ersten Version bietet C# die Möglichkeit, eigenen Code mit Anmerkungen im Stil einer Referenzdokumentation zu versehen. Allerdings fehlte zum einen lange Zeit ein Werkzeug, um diese Kommentare in eine menschenlesbare Form zu bringen, zum anderen war es nicht möglich, Endbenutzerdokumentation zu erzeugen. Besserung ist in Sicht.
Top Ten: Hochwertiger Code
dotnetpro, 10.2008
Anwendungen in C# programmieren zu können, ist eine Sache - die Sprache C# auch zu beherrschen, ist eine andere. Zum Beherrschen einer Sprache gehört insbesondere, ihre Eigenheiten zu kennen und zu wissen, wie man mit diesen umgehen sollte. dotnetpro stellt die zehn Merkmale vor, die qualitativ hochwertigen und robusten C#-Code auszeichnen.
Vom Model-View-Controller zum Model-View-ViewModel
dotnetpro, 8.2008
Seitdem das Model-View-Controller-Muster das Licht der Welt erblickt hat, haben sich die Ansätze zur Architektur von Anwendungen weiterentwickelt. Um dieser Entwicklung gerecht zu werden, hat sich auch Model-View-Controller angepasst. Seine jüngste Variante heißt Model-View-ViewModel.
Zehn C#-Sprachkonstrukte, die ihr Schattendasein zu Unrecht fristen
dotnetpro, 8.2008
Jede neue Version von C# enthielt bislang neue Sprachkonstrukte, die ihren Weg in den Entwickleralltag zügig gefunden haben. Doch daneben bietet C# auch etliche weniger bekannte Konstrukte, die ihr Schattendasein zu Unrecht fristen. dotnetpro rückt zehn dieser Missachteten in das ihnen gebührende Licht.
Einen BBCode-Parser für .NET entwickeln
dotnetpro, 7.2008
Das Projekt codeparser.net hat sich das Ziel gesteckt, einen hochgradig konfigurierbaren Parser für BBCode als .NET-Komponente zur Verfügung zu stellen. codeparser.net liegt inzwischen bereits als Version 1.4 vor. Sein Beispiel zeigt, wie ein solcher Parser intern aufgebaut ist.
Top Ten: Sicheren Code entwickeln
dotnetpro, 5.2008
Für einen Entwickler, der sicheren Code entwickeln will, ist Misstrauen die erste Programmiererpflicht. Jede Eingabe könnte manipuliert sein, jede Ausgabe könnte missbraucht werden. Aber dotnetpro hat sie: die Top Ten für die Entwicklung von sicherem Code.
Interne Arbeitsweise des Namensraums System.Transactions
dotnetpro, 4.2008
In .NET 2.0 wurde ein äußerst leistungsfähiger, einfach zu handhabender und dennoch bis heute weitgehend unbekannter Namensraum eingeführt: System.Transactions löst die Transaktionsmodelle aus .NET 1.x ab und vereinfacht die Handhabung von lokalen wie auch verteilten Transaktionen deutlich.
Coding-Tools für .NET
dotnetpro, 3.2008
Visual Studio stellt ohne Frage die Entwicklungsumgebung schlechthin zur Entwicklung von Anwendungen auf Basis von .NET dar. Obwohl es von Version zu Version besser wird, befriedigt die IDE noch immer nicht alle Wünsche. dotnetpro hat die interessantesten Werkzeuge zusammengestellt, die den Umgang mit Code weiter erleichtern.
RunSharp: Code zur Laufzeit dynamisch erzeugen
dotnetpro, 2.2008
Mit dem Namensraum Reflection.Emit bietet das .NET Framework dem Entwickler umfangreiche Möglichkeiten an, Code dynamisch zur Laufzeit zu generieren. Allerdings ist Reflection.Emit nicht nur mächtig, sondern auch ziemlich kompliziert. Mit RunSharp steht nun ein Wrapper für Reflection.Emit zur Verfügung, mit dem Codeerzeugung zur Laufzeit zum Kinderspiel wird.
Migration einer Webanwendung auf NHibernate
dotnetpro, 1.2008
Objektrelationale Mapping-Tools ermöglichen den konsistent objektorientierten Zugriff auf relationale Datenquellen. Dadurch eignen sie sich besonders, um eigene Anwendungen flexibler zu gestalten. dotnetpro zeigt, wie ein solches Tool in eine bestehende Anwendung integriert wird.
Social Engineers gehen phishen
InfoWeek, 17.2007
Wer hat das nicht schon erlebt: Eines Tages erhält man eine E-Mail von einem Kreditinstitut, mit der Bitte, sich mit PIN und TAN auf Grund eines Fehlers im Onlinebanking neu zu authentifizieren - und das, obwohl man überhaupt kein Kunde dieses Kreditinstituts ist. Bei solchen Betrugsversuchen handelt es sich um sogenanntes Phishing, das eine besonders perfide Form des Social Engineerings darstellt.
Mit Vertrauen zu geheimen Daten
InfoWeek, 16.2007
Ein wesentliches Element von Angriffen, die auf Social Engineering basieren, ist der Aufbau von Vertrauen und das anschließende Ausnutzen dieses Vertrauens. Warum Vertrauen so wichtig ist, und welche Tricks ein Angreifer üblicherweise anwendet, um Vertrauen aufzubauen, zeigt dieser Artikel.
Sicherheitsrisiko Mensch
InfoWeek, 15.2007
Sicherheit wird in der IT groß geschrieben. Täglich finden Angriffe auf Anwendungen oder die Infrastruktur an sich statt. Die Industrie versucht hingegen, unter anderem mit Hilfe von Intrusion Detection-Systemen, Firewalls und Virenscannern, ihre Anwendungen vor sämtlichen Bedrohungen zu schützen. Doch unabhängig von der Höhe des getriebenen Aufwands, dem größten Risiko wird man mit technischen Mitteln nie beikommen können: Dem Menschen.
Sichere Kennwörter
InfoWeek, 12.2007
Auch wenn Kennwörter in der Regel nicht absolut sicher sind, so lässt sich unter Beachtung einiger weniger Tipps und Tricks ein verhältnismäßig sicheres Kennwort erzeugen, das sich der Benutzer zudem noch leicht merken kann. Die wichtigsten Regeln zeigt dieser Artikel auf.
Die Zukunft von Mono
dotnetpro, 12.2007
Novell bietet mit Mono eine zu .NET 2.0 weitestgehend kompatible Plattform zur Entwicklung von Software, die im Gegensatz zu Microsoft .NET allerdings nicht proprietär, sondern frei verfügbar ist. Mit dem Olive-Projekt soll Mono nun der Anschluss an die Version 3.x des Microsoft-Frameworks gelingen.
Sicherheit und Web 2.0
InfoWeek, 11.2007
Mit der zunehmenden Verbreitung von AJAX-gestützten Webanwendungen entstehen auch neue Gefahren und Risiken. So erleben zurzeit nicht nur Cross-Site-Scripting-Angriffe eine Renaissance, auch die sogenannte "JSON-Problematik" tritt immer häufiger zu Tage. Berücksichtigt man diese Gefahren bereits bei der Entwicklung, lassen sich Anwendungen effektiv vor den entsprechenden Angriffen schützen.
Hohe Hürden gegen Angreifer
InfoWeek, 10.2007
Eine Grundregel lautet, sich nicht auf "Security by obscurity" zu verlassen. Das heißt, dass es theoretisch bedenkenlos möglich sein sollte, alle Implementierungsdetails einer Anwendung offenzulegen, ohne damit ein Sicherheitsrisiko einzugehen. Dennoch ist es ratsam, einem Angreifer diesbezüglich so wenige Informationen wie möglich zuzuspielen, um einen Angriff so schwierig wie möglich zu machen.
Applikationsschutz per Kryptographie
InfoWeek, 9.2007
Verschlüsselung und digitale Unterschriften sind wesentliche Bestandteile der Sicherheit von Webanwendungen. Um dabei nicht einer trügerischen Sicherheit zu erliegen, sondern eine wirkliche Sicherheit gewährleisten zu können, gilt es einige Regeln zu befolgen. Zudem kann es äußerst nützlich sein, die Vor- und Nachteile verschiedener Verfahren einschätzen zu können.
Zwölf Gebote für sichere Webanwendungen
InfoWeek, 8.2007
Zahlreiche Angriffe auf Webanwendungen basieren auf der Manipulation von Benutzereingaben, die entweder fehlerhaft verarbeitet oder nicht ausreichend überprüft werden. Zudem bieten die Authentifizierung und Autorisierung von Benutzern weitere Angriffsflächen, die leicht ausgenutzt werden können. Fast alle dieser Angriffe lassen sich aber verhindern, wenn einige grundlegende Regeln beachtet werden.
Schützen von Netzwerk und Host
InfoWeek, 7.2007
Die Basis jeder Webanwendung sind die Server, auf denen die Anwendung ausgeführt wird, und das Netzwerk, an das diese Server angeschlossen sind. Da Angriffe nicht nur die Anwendung als direktes Ziel haben können, sondern auch die zu Grunde liegende Infrastruktur, ist es wichtig, die Schwachstellen des Netzwerks und der Server zu kennen, um sie absichern zu können.
Bedrohungen und Vorgehensmodelle
InfoWeek, 6.2007
In den vergangenen fünfzehn Jahren hat das Internet zunehmend an Bedeutung gewonnen und ist aus dem heutigen Alltag nicht mehr wegzudenken. Allerdings haben sich durch die weltweite Vernetzung auch neue Sicherheitsrisiken und Angriffsmöglichkeiten ergeben, auf die entsprechend eingegangen werden muss, um eine Webapplikation gegen Angriffe abzusichern.
AJAX sinnvoll einsetzen
InfoWeek, 5.2007
In den vergangenen Monaten hat AJAX einen ungeahnten Höhenflug erlebt. Auf immer mehr Webseiten werden AJAX-gestützte Komponenten eingesetzt, und insbesondere der Hype um Web 2.0 lebt hauptsächlich auf Grund von AJAX. Dennoch gibt es - wie bei jeder neuen Technologie - auch Stolperfallen, die es zu berücksichtigen gilt.
Mehr Speed für Vista
InfoWeek, 4.2007
Neben zahlreichen neuen Funktionen bringt Windows Vista auch sehr gehobene Ansprüche an die zu Grunde liegende Hardware mit, insbesondere Arbeitsspeicher ist unter Windows Vista wichtiger denn je. Da mit einer Aktualisierung auf Windows Vista nicht bei jedem Benutzer automatisch auch neue Hardware verbunden ist, gibt es einige Kniffe, um mehr aus seinem Windows heraus zu holen.
Produktiver arbeiten mit Vista
InfoWeek, 3.2007
Windows Vista enthält einige neue Features, welche die Produktivität deutlich steigern können - sofern man weiß, wie man sie einsetzen muss. Dazu zählen neben der fast überall integrierten und von Windows XP in Ansätzen bekannten Desktopsuche der ActiveSync-Nachfolger namens Synchronisierungscenter und die Windows-Sidebar.
Daten sichern mit Windows Vista
InfoWeek, 2.2007
Mit dem Thema "Datensicherheit" assoziieren die meisten Anwender technische Produkte wie Firewalls, Viren- oder Spywarescanner. Insbesondere durch die gestiegene Verbreitung von mobilen Endgeräten ist aber ein weiteres Risiko hinzugekommen, das oft unterschätzt wird - wie werden Daten geschützt, wenn Notebook oder Mobiltelefon gestohlen werden oder verloren gehen?
Interview zu Microsoft CLIP
MSDN Magazin, 2.2007
CLIP ist ein Betreuungsprogramm von Microsoft für alle Betreiber deutschsprachiger, nicht-kommerzieller Online- und Offline-Communities, die sich mit Produkten, Services und und Technologien rund um Microsoft beschäftigen. Was es bedeutet, Mitglied bei CLIP zu sein, verrät Golo Roden in einem Interview.
Windows Vista - Desktop Security
InfoWeek, 1.2007
Spätestens seit Windows XP wegen seiner Anfälligkeit für Viren und sonstige Schadsoftware unrühmlich in die Schlazeilen geriet, ist "Sicherheit" für Microsoft das wesentliche Thema bei der Entwicklung von Software geworden. Windows Vista ist nun das erste Windows, das vollständig nach neuen Richtlinien zur Entwicklung sicherer Software gestaltet wurde.
Special: Office 2007
InfoWeek, 1.2007
Seit der Veröffentlichung von Microsoft Office 97 gegen Ende des Jahres 1996 hat sich in Office zumindest für den Privatanwender nicht mehr viel verändert. Einige Funktionen für Teams kamen hinzu, die Technologien SharePoint und InfoPath wurden veröffentlicht, doch diese richteten sich eher an Firmenkunden. Die wesentliche Neuerung für Privatanwender war eine jedes Mal neu gestaltete Oberfläche - und mit dieser Tradition bricht auch Office 2007 nicht.
Special: Windows Vista
InfoWeek, 1.2007
Windows Vista - der Nachfolge des inzwischen fünf Jahre alten Windows XP - steht vor der Tür. Auch wenn sich um den endgültige Erscheinungstermin immer noch Gerüchte ranken, scheint sicher, dass es spätestens im Frühjahr 2007 so weit sein wird. Dieser Artikel beleuchtet die neuen Features und zeigt deren Nutzen, insbesondere im Hinblick auf den Firmendesktop.
Vista-Aufstieg leicht gemacht
InfoWeek, 22.2006
Voraussichtlich am 30. Januar 2007 werden viele Anwender endlich eine DVD mit einer der zahlreichen Editionen von Windows Vista in Händen halten. Bevor das neue System seine Arbeit auf dem heimischen Computer aufnehmen kann, muss es zunächst im Rahmen einer Neuinstallation oder einer Aktualisierung eingerichtet werden. Anders als bei Windows XP bietet Microsoft für Windows Vista zahlreiche Varianten der Installation an, welche im folgenden erläutert werden.
Intelligenter Türsteher
InfoWeek, 21.2006
Im August dieses Jahres hat Microsoft mit dem Internet Security and Acceleration Server 2006 die nächste Version seines integrierten Firewall-, VPN- und Cache-Servers veröffentlicht. Die Neuerungen stecken im Detail und betreffen vornehmlich die Server- und Webveröffentlichungen sowie die
ASP.NET 2.0 mit AJAX aufpolieren
InfoWeek, 20.2006
Asynchronous JavaScript and XML, kurz AJAX, hat das Web in den vergangenen zwei Jahren dermaßen revolutioniert wie kaum ein anderes Konzept zuvor. Die Möglichkeit, innerhalb einer Webseite lediglich einen Bereich oder reine Nutzdaten dynamisch nachladen zu können, bildet die Grundlage für das vielbeschworene Web 2.0. Mit den ASP.NET 2.0 AJAX Extensions leistet nun auch Microsoft mit einem eigenen Framework seinen Beitrag zu dieser Entwicklung.
WCF: Multitalent für SOA-Umgebungen
InfoWeek, 15.2006
In den vergangenen Jahren haben zwei Technologien beziehungsweise Ansätze die Entwicklung maßgeblich geprägt - mit der Einführung von .NET waren Web Services auf einmal in aller Munde, nachdem sich .NET im Markt etabliert hatte, war es SOA. Während Web Services von vornherein als integrale Komponente in .NET unterstützt wurden, bietet Microsoft nun mit der Windows Communication Foundation Unterstützung für SOA.
Cardspace: Digitale Identitäten
InfoWeek, 13.2006
"Wer bin ich?" - diese Frage ist so alt wie die Menschheit selbst. Mit Windows CardSpace führt Microsoft ein System ein, um digitale Identitäten zu verwalten und deren Austausch und Integration zu ermöglichen.
Mehr Performance für ASP.NET-Anwendungen
Computerworld, 11.2006
Mit ASP.NET lassen sich von Hause aus Webapplikationen bauen, die deutlich besser skalieren und performanter ausgeführt werden als klassische ASP-Applikationen. Um das Potenzial von ASP.NET noch besser auszureizen, sollte man einige Aspekte bei der Architektur und Entwicklung beachten.
IIS 7: Modularer Webbaukasten
InfoWeek, 9.2006
Voraussichtlich zu Anfang des kommenden Jahres wird im Rahmen von Windows Vista auch die neue Version 7 der Internet Information Services veröffentlicht, der sich in fast allen Aspekten außer dem Namen wesentlich von seinem Vorgänger unterscheidet.
Eine Einführung in das neue Atlas-Framework
dot.net magazin, 9.2006
Atlas ist der Name für ein neues Framework von Microsoft, welches das Einbinden von asynchronem Javascript und XML innerhalb von ASP.NET 2.0-Anwendungen erheblich vereinfachen soll. Welche Vorteile bringen diese AJAX-Techniken wirklich und wie stellt sich Microsoft die neue Welt des Web 2.0 im Detail vor? Der Artikel beantwortet nicht nur diese Fragen, sondern stellt an kleinen Beispielen das Atlas-Framework vor.
Multithreading in .NET
Visual Studio One, 6.2006
Während es in einfachen Applikationen ausreicht, alle Vorgänge nacheinander – also sequentiell – auszuführen, kann dies in komplexeren Szenarien durchaus gefordert sein. Sei es zur Erledigung umfangreicher Berechnungen, zur Abarbeitung gestapelter Aufgaben oder zur Verbesserung der Reaktivität der Benutzeroberfläche, Threads können in all diesen Fällen helfen. Aber sie bergen auch etliche Gefahren und Fallstricke, die nicht leicht zu entdecken sind.
Internet Information Services 7
dot.net magazin, 4.2006
Auf der Professional Developers Conference 2005 (PDC) hat Microsoft zum ersten Mal eine Vorschau auf den eigenen Webserver Internet Information Services (IIS) in der neuen Version 7 vorgestellt, die aller Voraussicht nach Bestandteil des kommenden Windows Vista sein wird. Wie schon beim Übergang von Version 5 auf Version 6 wurde auch bei der Entwicklung des IIS 7 wieder von vorne begonnen, sodass die kommende Version mit ihrem Vorgänger im Wesentlichen nur den Namen gemeinsam haben wird. Man darf daher sehr gespannt sein, was den Entwicklern bei Microsoft eingefallen ist, um Marktführer Apache bleich aussehen zu lassen.
Die Zukunft von C# 3.0
dot.net magazin, 1.2006
Auf der Professional Developers Conference 2005 (PDC) hat Microsoft erstmals die Version 3.0 von C# vorgestellt und erste Ausblicke auf deren neue Sprachelemente gegeben. Wesentliches Merkmal ist die in C# integrierte, SQL-ähnliche Abfragesprache, mit der jede Art von Collections auf einfache Art und Weise abgefragt werden kann.
Entwickeln nach Zahlen
ASP.mag, 5.2005
Entwurfsmuster sind in der modernen Softwareentwicklung unverzichtbar. Sie erleichtern nicht nur die Kommunikation im Team, sondern erhöhen auch die Wiederverwendbarkeit einzelner Komponenten und erleichtern den Aufbau der Architektur einer Software. Außer einer Einführung in die Thematik sollen in diesem Artikel auch einige Entwurfsmuster vorgestellt werden.
Der Pinguin serviert
ASP.mag, 5.2005
Auch wenn der IIS der meist eingesetzte Webserver für ASP.NET ist, heißt das nicht, dass ASP.NET nicht auch auf einem anderen Webserver lauffähig wäre. Neben Cassini, einem kleinen Webserver von Microsoft für Testzwecke, stehen mit dem Mono-Projekt gleich zwei alternative Webserver zur Verfügung: XSP als eigenständiges Programm und mod_mono zur Integration in Apache.
Entwickeln wie unter Windows
dot.net magazin, 1.2005
Software-Entwicklung mit .NET unter Linux ist inzwischen dank des Mono-Projektes weitgehend problemlos möglich. Neben Compilern für C# und Visual Basic .NET stehen dem Entwickler viele nützliche Werkzeuge zur Verfügung. Es scheitert zumeist lediglich an der Installation und Konfiguration, die mehr Handarbeit erfordert, als es ungeübte Benutzer von Windows gewohnt sind. Aber die Arbeit lohnt sich: Dafür arbeitet man ausschließlich mit kostenfrei als Open Source verfügbarer Software und ist zudem nicht mehr an Windows als Betriebssystem gebunden.
Artikel