Ralf Westphals Readers' Digest Nr. 8 (21.5.2004) ------------------------------------------------ Liebe Entwickler, leider haben Sie nun lange auf diese Ausgabe meines Readers’ Digest warten müssen. Das tut mir leid. Ich hatte mir so fest vorgenommen, Ende Januar 2004 die Nr. 8 rauszugeben... Aber leider hat es immer irgendwie nicht geklappt. Die Gründe sind vielfältig. Vor allem aber liegt es daran, dass dotnet.tv (www.dotnettv.de) viel meiner Zeit in den letzten Monaten in Anspruch genommen hat. Dazu kamen natürlich noch andere Projekte und ehe ich es mich versah, waren die Monate verflogen und ich hatte viel weniger als sonst selbst gelesen. Seufz... Aber das soll nun wieder besser werden – verspreche ich einmal mir und aber auch Ihnen. Nachstehend also wieder eine Reihe von Leseempfehlungen. Ich hoffe, es ist für jeden etwas dabei. Wie immer gilt, dass meine Auswahl sehr subjektiv ist. Wenn Sie Anregungen haben oder selbst auf eine gute Literaturstelle gestoßen sind, lassen Sie mich das bitte jederzeit gern wissen. Kollege Christian Weyer hat z.B. mit einigen Hinweisen zu der Auswahl hier beigetragen. Bevor Sie aber ins Schmökern kommen, noch zwei Hinweise in eigener Sache: :::dotnet.tv: Ich würde mich sehr freuen, wenn Sie mir kurz mit 1 oder 2 Zeilen (gern auch mehr ;-) in einer Email Ihre Meinung zu dotnet.tv mitteilen könnten (mailto:dotnettv@ralfw.de?subject=dotnet.tv%20feedback). Das Medium Video ist neu in unserer Branche für die Wissensvermittlung und insofern sind Produktion und Sponsoring sehr an Ihrer Meinung dazu interessiert. Falls Sie dotnet.tv noch nicht kennen sollten, dann werfen Sie doch einmal einen Blick auf www.dotnettv.de und sehen Sie sich die Folgen dieser Videoserie für Softwareentwickler an. Sie erscheint zuerst in der dotnetpro (www.dotnetpro.de) in hoher Auflösung und einen Monat später optimiert für das Streaming bei MSDN Online. Derzeit ist die Erscheinungsweise monatlich. Jede Folge behandelt eine .NET Fx Technologie und versucht, Technik bildhaft und mit Spaß an der Sache zu erklären. :::thinktecture: Seit dem 10.5.2004 habe ich mich als so genannter Associate einer neuen Firma zugeordnet. thinktecture (www.thinktecture.com) ist der Zusammenschluss mehrerer, Ihnen wahrscheinlich wohlbekannter Persönlichkeiten aus der Entwicklergemeinde: Ingo Rammer: bekannt durch sein “Advanced .NET Remoting”, Microsoft Regional Director in Österreich Christian Weyer: bekannt als WebService Experte in Deutschland und dort auch Microsoft Regional Director Christian Nagel: bekannt durch seine Beteiligung an vielen früheren Wrox Publikationen und Microsoft Regional Director in Österreich Ingo Rammer und Christian Weyer sind Inhaber von thinktecture. Christian Nagel und ich sind die ersten Associates, d.h. wir fühlen uns thinktecture nahestehend, sind aber nicht dort angestellt, sondern weiter freiberuflich tätig. In thinktecture sehen wir eine Möglichkeit, in Summe mehr zu bieten als reine „Einzelkämpfer“. Der Fokus von thinktecture wird auf der Begleitung von Projekten liegen: vor der Realisierung bei Architekturüberlegungen, während der Realisierung z.B. mit Proof-of-Concepts bzw. Code Reviews und in jeder Phase mit Know-How-Transfer. Als besonderes Format bieten darüber hinaus die .NET Twins (www.dotnettwins.de) die so genannten Developer LAN Partys (www.devlanparty.de) an, in denen im Team nicht nur Technik gelernt, sondern auch Prozesswissen erworben wird. So, jetzt aber genug der Vorrede. Ich wünsche viel Spaß beim Lesen! Ralf Westphal Freier Autor, Berater und Entwickler www.ralfw.de Associate of thinktecture www.thinktecture.com/staff/ralf/default.html Microsoft MSDN Regional Director www.regionaldirectors.de Lesenswerte Artikel ------------------- :::.NET Data Persistence: SQL Server vs. Matisse vs. FastObjects, livebet http://www.codeproject.com/dotnet/AyalDataPersistence.asp Performance-Vergleich verschiedener Datenverwaltungstechnologien: RDBMS, postrelationale DB, echt objektorientiertes Datenbanksystem. Es lohnt sich, die unterschiedlichen Ansätze einmal im Überblick zu sehen. Denn es gibt echte Alternativen zur üblichen RDBMS-Programmierung. Und diese Alternativen versprechen nicht nur Performancegewinne (in manchen Szenarien), sondern vor allem z.T. enorme Codereduktionen. Mit Matisse habe ich selbst keine Erfahrung, aber mit FastObjects (www.fastobjects.com). Davon bin ich derzeit sehr begeistert: ein ODBMS mit echtem .NET Fx Binding, transparenter Persistenz, Schemadefinition via C#/VB-Klassen, Schemaversionierung, XCOPY-Deployment und vielem mehr. :::The Revolution in Database Architecture, Jim Gray, Microsoft Research http://research.microsoft.com/research/pubs/view.aspx?tr_id=735 Interessantes Paper, das sehr allgemein die Trends in der Datenbankentwicklung zusammenfasst. Auch wenn darin keine Produkte genannt werden, so ist doch an vielen Stellen klar, das Gray Yukon Features meint. Microsoft sieht sich mit der nächsten SQL Server Version an technologisch vordersten Front. :::Horses for Courses: Services, Objects, and Loose Coupling - Integration without compromise, Dr. Jim Webber & Dr. Savas Parastatidis, Web Services Journal http://www.sys-con.com/webservices/articleprint.cfm?id=754 Der Artikel arbeitet gut den Gedanken der nachrichtenbasierten Kommunikation zwischen WebServices heraus. Bei WebServices geht es nicht um Objekte, sondern um Dienstschnittstellen und Nachrichten – nicht um Klassen und Methoden. Diese Konzepte zu verinnerlichen ist extrem wichtig für zukünftige verteilte Systeme, die auf „Indigo“ aufsetzen werden. :::.NET Report Card, John Udell, InfoWorld http://www.infoworld.com/pdf/special_report/2004/09SRpulse.pdf Ein Zeugnis für den .NET Framework. Das stellt der Artikel aus. Er enthält zwar keine tiefgreifenden Erkenntnisse, aber bietet einen hübschen Überblick darüber, wie der .NET Framework seine Ziele erreicht hat (oder eben auch nicht). :::A Conversation with Anders Hejlsberg, Bruce Eckel und Bill Venners, arima developer http://www.artima.com/intv/choices.html Achtteilige Interviewartikelserie, in der Anders Hejlsberg Einblick in den Entwicklungsprozess des .NET Framework gibt. Ein must-read für alle Entwickler, die etwas hinter die Kulissen schauen wollen. (Die URL zeigt auf den 8. Teil, da nur in ihm alle anderen Teile referenziert sind.) :::Inside SQL Server: SQL Server 7.0 Plan Caching, Kalen Delaney http://www.winnetmag.com/SQLServer/Article/ArticleID/5915/5915.html Meinen Sie auch, dass Stored Procedures geschrieben werden sollten, weil es nützlich ist, den Code vorübersetzt im SQL Server zu haben? Dann sollten Sie diesen Artikel lesen, denn darin beschreibt Karen Delaney, wie SQL Server auch ad-hoc Anfragen optimiert. Stored Procs verlieren damit zumindest für mich ein Stück an Bedeutung. :::A Simple Business Rules Manager, Rockford Lhotka, Microsoft http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnadvnet/html/vbnet12232003.asp Businesslogik schön und gut, aber wo und wie soll denn eigentlich die Datenvalidation stattfinden. Der Artikel zeigt einen Ansatz, bei dem Validationslogik aus Businessdatenobjekten herausgenommen und in einer Regelwerkkomponente zentralisiert wird. :::Public versus Published Interfaces, Martin Fowler http://www.martinfowler.com/ieeeSoftware/published.pdf Die Programmierung mit Interfaces ist zu begrüßen. Aber man kann auch zuviel des Guten tun, wenn man Interfaces in jedem Fall nach dem ersten Gebrauch als in Stein gemeißelt und unveränderlich ansieht. Der Artikel beschreibt eine differenziertere Sichtweise. :::An Introduction to Programming with Threads, Andrew D. Birrell, digital 1989 (!) http://gatekeeper.dec.com/pub/DEC/SRC/research-reports/abstracts/src-rr-035.html Ein interessanter Grundlagenartikel zum Thema Multithreading. Auch wenn die Beispiele in Pascal implementiert sind, haben die Erklärungen Wert für die Arbeit mit dem .NET Framework. :::Overview of .NET Programming Features in SQL Server "Yukon" Beta 1, Microsoft http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsql90/html/sql_ovyukonnetprogfeatures.asp Der Titel ist selbsterklärend, denke ich. Wer Informationen darüber sucht, wie in SQL Server 2005 mit C# etc. Programmiert werden kann, hat hier einen guten Einstieg. Allerdings wird nur das Wie erklärt, nicht so sehr das Wann oder das Ob. Wann und ob Managed Code in (!) einer SQL Server DB Sinn macht, bleibt abzuwarten. Dafür müssen erst Erfahrungen mit SQL Server 2005 gesammelt werden. Insbesondere die Möglichkeit für UDTs halte ich derzeit noch für überbewertet. :::Adding Design-Time Support to ASP.NET Controls, G. Andrew Duthie, Microsoft http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/ASPNet-AddDesignTimeSupport.asp Wer eigene Controls für ASP.NET entwickeln will, möchte eigentlich auch, dass Sie sich so nahtlos in die Entwicklungsumgebung eingliedern, wie die Microsoft-eigenen Controls. Der Artikel zeigt, was dafür zu tun ist. Lesenswerte Bücher ------------------ Simple Heuristics That Make Us Smart, Gerd Gigerenzer et al., Oxford Univ. Press 1999 http://www.amazon.de/exec/obidos/ASIN/0195143817/ralfwestphalh-21 Das Buch zeigt eindruckvoll, dass die Suche nach perfekten Lösungen oft übertrieben ist, da sich angemessen gute Lösungen viel schneller und mit viel weniger Aufwand finden lassen. Es ist damit nicht nur ein Buch über Lösungsstrategien in der Natur, sondern auch ein Buch für unsere Branche. Denn eine ganze Reihe von Projekten leidet immer wieder darunter, alles was möglich ist zu berücksichtigen, statt sich auf das, was wahrscheinlich ist zu konzentrieren. Modeling Business Objects With XML Schema, Berthold Daum, dpunkt 2003 http://www.amazon.de/exec/obidos/ASIN/1558608168/ralfwestphalh-21 Daten unabhängig von ihrer Implementation zu beschreiben, gewinnt zunehmend an Bedeutung. Grundlage dafür ist inzwischen XML Schema geworden, das z.B. in WSDL oder auch Typed DataSets oder SQL XML zum Einsatz kommt. Das Buch bietet eine gute Einführung in die Problematik der Datenformatbeschreibung (Datenmodellierung) mit XML Schema anhand praktischer Beispiel (und trotzdem untermauert mit relevanter Theorie). Und es wird auch ein Bezug zu SQL bzw. RDBMS hergestellt. Interessante Links ------------------ :::Component Gallery, Microsoft http://msdn.microsoft.com/vbasic/vbrkit/component/ Liste mit Trial Versionen von Komponenten. Statt .NET Komponenten an vielen Ort zusammenzusuchen und zu sichten, stehen sie hier fein säuberlich gelistet. :::Billige fachbücher http://www.dealit.de http://www.spardorado.de Hier gibt es auch .NET Fx-relevante Fachbücher teilweise zu sehr günstigen Preisen. Aber auch ein Blick auf die Gebraucht-Angebote bei www.amazon.de schaded nicht. :::Kostenlose IP Telephonie http://www.skype.com/home.html Ein echt cooles Tool! Dringend runterladen und ausprobieren. Kostet nix, ist in 5min gezogen und installiert. Funktioniert auch mit dem eingebauten Mikro und Lautsprecher in einem Laptop. Headset also nicht unbedingt erforderlich. Und dann frohes Telefonieren mit anderen Skype Usern weltweit zu jeder Zeit und ohne Kosten. Auch Konferenzschaltungen sind sehr einfach möglich. (Skype ist viel stabiler Sprachübermittlung via Microsoft Messenger – und bietet auch noch eigene IM Funktionalität.) Web Sites von Magazinen für .NET Entwickler ------------------------------------------- ASP.NET Professional, http://www.aspnet-professional.de/ CODE Magazine, http://www.code-magazine.com (engl.) DNJ, http://www.dnjonline.com/ (engl.) dot.net Magazin, http://www.dotnet-magazin.de dotnetpro, http://www.dotnetpro.de/ MSDN Magazine, http://msdn.microsoft.com/msdnmag/ (engl.) .NET Developer´s Journal, http://www.sys-con.com/dotnet/index.cfm (engl.) Windows Developer Network, http://www.windevnet.com (engl.) ================== Sie erhalten diesen Newsletter, weil Sie mit mir auf die eine oder andere Weise persönlich Kontakt hatten, z.B. durch ein Gespräch auf einer Konferenz oder durch eine Anfrage per Email oder durch eine explizite Registrierung. Ich hoffe, Sie empfinden den Newsletter daher als positive kostenlose Dienstleistung. Sollte das nicht der Fall sein, deregistrieren Sie sich bitte jederzeit durch einen Reply auf den Newsletter mit einem Betreff wie "Deregistrierung" oder "Abmeldung". Anmeldungen für den Newsletter sind natürlich auch jederzeit möglich. Am besten durch eine Email an readersdigest@ralfw.de mit einem eindeutigen Betreff wie "Registrierung" oder "Anmeldung". Sollten Sie Anregungen für die Gestaltung des Newsletter haben, freue ich mich auf eine Email von Ihnen an readersdigestfeedback@ralfw.de. Der Readers' Digest erscheint in unregelmäßigen Abständen mehrfach pro Jahr.