Windows 2003 SP1 - Upgrade völlig problemlos

31. März 2005 13:47
Ich hatte ja schon heute morgen auf die Verfügbarkeit von Windows 2003 Server SP1 hingewiesen. In der Zwischenzeit sind hier alle Server mit dem Service Pack ausgestattet worden. Probleme: Keine, alles lief völlig glatt und ohne jedes Problem. Bei einem der Kisten (www.die.de) dauerte das Update aus mir nicht ganz klaren Gründen zwar deutlich länger als bei den anderen - aber Ärger gemacht hat auch dort rein gar nichts. So hab ichs gern :-)

Mehr zu Bilfinger Berger und dem Walter Bau Kaufinteresse

31. März 2005 13:41
Im Wesentlichen gehts Bilfinger Berger wohl um den Strassenbauanteil von Walter - Interesse ist deutlich bekundet worden, gleichzeitig geht man aber wohl auch davon aus das aus dem Aufkauf nichts wird. Mehr bei der FTD.

15. Tagung für Ingeniergeologie in Erlangen

31. März 2005 08:52
Das ganze findet vom 6.4. bis zum 9.4. statt, Mitveranstalter ist die LGA, wo es auch mehr Informationen gibt.

Windows XP: Hin und wieder defragmentieren

31. März 2005 08:48

Vor einigen Jahren war das eine große Sache: Das Defragmentieren von Festplatten. Kurz und vereinfacht gesagt geht es beim Defragmentieren von Festplatten darum, das sich die Dateien so auf der Festplatte befinden, das sie möglichst schnell gelesen werden können. Je weniger der Inhalt einer Platte fragmentiert ist, um so besser ist die Performance.

Alle gängigen Utility-Hersteller hatten da Tools anzubieten, und immer wieder konnte man in PC-Zeitschriften Tests über die 'Defragmentier' Tools lesen. Etwa mit der Einführung von Windows XP hat das aufgehört - ich denk in erster Linie darin, weil XP mit einem neuen Dateisystem daherkam: NTFS, ein Erbe das XP von Windows NT erhalten hat. (Allerdings ist NTFS optional, XP hat auch noch andere Dateisysteme.) Wer XP einsetzt, der sollte auf jeden Fall auch NTFS verwenden.

Nun hält sich aber seit Jahren aus mir völlig unverständlichen Gründen das Gerücht, NTFS Partitionen müssten nicht defragmentiert werden - und auf Basis dieses Gerüchtes sind wohl auch die immer wiederkehrenden Berichte zum Thema untergegangen. Wie das aber gerne so ist mit Gerüchten: Es stimmt nicht.

Sie sollten daher Ihre Festplatte auf jeden Fall hin und wieder defragmentieren, und XP hat dazu ein eingebautes Werkzeug. Das finden Sie über die Systemsteuerung in der 'Computerverwaltung', und dort unter dem Ast 'Datenspeicher' mit der Bezeichnung 'Defragmentierung'.

Windows Server 2003 - Service Pack 1 ist da

31. März 2005 08:32

Ab sofort zu haben: Das SP1 für Windows 2003. Alle Infos und das download selbst befinden sich hier. Wer nur einen einzelnen Rechner updaten will, kann das aber auch einfach mit Windows Update tun: Von dort aus wird das SP1 ebenfalls ausgeliefert.

Die Support-Tools fürs SP1 sind ebenfalls verfügbar. Wer mag, kann die auch unter Windows XP einsetzen - was bei einigen der Tools wirklich praktisch ist. Download hier.

Wer sich vorher über die Änderungen, Neuerungen und beseitigten Probleme informieren will: Die komplette Liste ist hier.

Tolle EU-Schöpfung: Windows XP 'N'

30. März 2005 16:06

Nun haben Sie sich also geeinigt, die EU und Microsoft. Das per Auflage verordnete Windows XP, das ohne Media-Funktionen daherkommt, wird nun nach Wunsch der EU 'Windows XP N' heissen. 'N' steht dann für 'N'o Media oder 'N'o Mediaplayer. Laut Ansicht der EU ist das eine tolle Sache für den Verbraucher, weil der sich nun aktiv für eine Windows Version ohne Media-Player entscheiden kann (die übrigens das gleiche kostet, wie die mit Media-Player) - um sich dann auf eine andere Art und Weise später einen Player von einem anderen Hersteller zu besorgen. Wenn er das denn will, der Verbraucher. Achso - er kann sich dann natürlich auch den von Microsoft runterladen. Interessanterweise geht das natürlich auch in der Version ohne 'N': Niemand wird davon abgehalten irgend einen anderer Player zu verwenden.

Was so alles hinter einem kleinen und verbraucherfreundlichen 'N' stecken kann ist schon interessant.

Ich finde allerdings, das die EU damit nicht weit genug geht. Sie sollte auf jeden Fall auch Daimler-Chrysler dazu zwingen eine Auto-Variante mit 'N' herauszubringen:  Mercedes-Benz E Klasse N. Mit 'N' für 'N'o motor. Den kann der Verbraucher sich dann ja auch später bei einem anderen Hersteller besorgen. Immerhin hat Mercedes ein Monopol auf die Herstellung, den Vertrieb und den Einbau von Motoren für die eigenen Autos - und so einen Zustand sollte die EU nicht dulden, und im Rahmen des Verbraucherschutzes einschreiten.

Nun tut die EU das aber nicht. Leider, Leider.

Was würde aber wohl passieren, wenn man bei Mercedes den Verbraucherschutz genau so ernst nehmen würde, wie bei der EU - und selbst einen Wagen mit dem Namen 'Mercedes Benz N' herausbringen würde?

Meine Vermutung ist, das sich in diesem Fall ein anderer EU Verbraucherschützer finden wird. Der wird Daimler dann mit Strafe belegen: Schliesslich ist es extrem unfreundlich dem Verbraucher gegenüber, einen derartigen Mangel hinter dem kleinen Buchstaben 'N' zu verstecken.

Und schon ist das N nicht mehr ganz so verbraucherfreundlich, wie man bis vor wenigen Zeilen noch annehmen wollte.

Geworfene Exceptions finden

30. März 2005 15:48

Mir ist kürzlich aufgefallen das eine Option im Visual Studio viel zu selten genutzt wird - und zwar die, um den Grund für eine geworfene Exception zu finden.

Das Problem: Irgendwo im Code tritt eine Exception auf die nicht behandelt wird. Resultat: Man steht im Visual Studio hinter der Zeile Application.Run() - und hat eine Fehlermeldung vor sich, die schlicht und ergreifend nur den Exception-Text enthält. Ich habe schon häufiger gesehen das Programmierer in dieser Lage vor einem praktisch 'unlösbaren' Problem standen: Wo genau kam diese Excpeption eigentlich her ist die Frage, die offenbar so schwer zu klären ist.

Als 'Workaround' für die Situation gibt es dann häufig Lösungen, bei denen 'lokale' Codebereiche mit try/catch(Exception) 'abgedichtet' werden. Im 'catch' Block wird dann noch meist eine Meldung per Debug.WriteLine() ausgegeben - und zwar einfach nur dafür, um der tatsächlichen Fehlerstelle 'näher' zu kommen.

Dieses Vorgehen ist aber unsinnig. Der richtige Weg findet sich hinter dem Befehl 'Exceptions' im Menu 'Debug'. Dort schaltet man einfach die Option 'Break into the Debugger' ein. Tritt dann eine Exception auf, so findet man sich im Quelltexteditor an der Stelle wieder, bei der die Exception ausglöst wurde: Exception-Quelle gefunden.

So einfach kann das sein :-)

 

Bauphysik-Diskussionforum im Netz

28. März 2005 17:03

Ich habe schon mehrfach auf das Diskussionsforum bei 'die statiker' hingewiesen - dabei handelt es sich m.E. um das derzeit 'aktivste' Web-basierte Diskussionsforum für Baustatik im Web.

Was ich dabei wohl jedes mal übersehen habe: Es gibt dort nicht nur ein Baustatik-Forum, sondern auch eines rund um die Bauphysik. Darum also hier nochmals ein separater Hinweis zur Übersichtsseite aller Foren bei 'Die Statiker': Tragwerksplanung und Bauphysik.

Marketing-Desaster von Microsoft: Windows.de und Codezone.de

27. März 2005 14:33

Microsoft betreibt seit einiger Zeit zwei Webseiten, deren Sinn mir völlig unverständlich ist: windows.de und codezone.de

Bei Codezone handelt es sich laut eigener Aussage um

eine Initiative von Microsoft Deutschland mit dem Ziel, die Sichtbarkeit und Auffindbarkeit der zahlreichen deutschsprachigen Entwickler-Angebote rund um Microsoft-Technologien zu verbessern und die Transparenz dieser Ressourcen für die Developer-Community zu erhöhen

Vor etwa einem Jahr kam die Seite raus, und ich hielt das zu Anfang irrtümlich für eine deutschsprachige Community-Site. Ich habe dann auch brav ein paar Ressourcen eingetragen und darauf gewartet, das die Community-Features sichtbar werden. Das sind sie aber auch nach einem Jahr noch immer nicht. Es gibt keinerlei Kommunikation auf der Site - keine Möglichkeit für Mitglieder miteinander zu kommunizieren - und auch keine, mit den 'Experten' genannten Personen zu kommunizieren, die an verschiedenen Stellen völlig anonyme Kommentare hinterlassen. Es werden aber 'Punkte' verteilt (ich habe 17050) - wofür die gut sind, verrät Microsoft aber nicht.  ;-)

Sowas beknacktes habe ich schon lange nicht mehr gesehen - eine 'Community' Site bei der es nicht nur keine Community gibt, sondern bei der auch keinerlei sonstige Kommunikationsmöglichkeiten bestehen. Der besondere Grad der Sinnlosigkeit viel mir erst heute wieder auf - ich war nämlich zufällig über meinen eigenen Bereich bei Codezone gestolpert und fand zwei Meldungen, die ich nicht kannte:

(!) Hinweismeldung
Achtung: 3 abgelehnte Ressourcen - bitte überprüfen

und

(!) Aktuelles
Du hast ungeprüfte Connections

konnte ich da lesen. Wenn Ihnen das nichts sagt - keine Bange. Ging mir genauso. Ich klickte also zunächst mal auf die 'Hinweismeldung'. (Komisches Wort, meiner Ansicht nach.) Da fand sich dann eine Seite, wo ein 'Experte' offenbar die Aufnahme dreier meiner Artikel in die Datenbank von Codezone ablehnte. Eine der Begründungen lautete:

Kommentar des Experten: Hallo,
bitte die Kategorie ändern, diese ist hier falsch.
Danke.

Nun stimme ich aber mit dieser Meinung des 'Experten' leider nicht überein - oder: Ich bin mir nicht einmal sicher was genau der 'Experte' eigentlich wollte..... Was ja in einer 'Community' kein Problem sein sollte - man kann das ja ausdiskutieren. Nur eben nicht in der 'Codezone' Community. Denn abgesehen davon, das ein Mechanismus zum diskutieren von Haus aus nicht vorgesehen ist: Es ist auch nicht klar, wer dieser geheimnisvolle 'Experte' ist - denn dessen Name oder sonst irgendeine Form der Kontaktmöglichkeit wird schlicht und ergreifend nicht angegeben. Man muss also damit leben, von irgendwelchen Anonymen höfliche Halbsätze vorgesetzt zu bekommen, ohne irgend eine Möglichkeit der Diskussion oder Nachfrage. Einfach armselig. 

Das kann natürlich Betriebsblindheit sein oder auch aus Einschränkungen des verwendeten CMS resultieren: Keine Ahnung - aber auf jeden Fall ist das eine Art einseitiger Kommunikation, bei der ich ganz sicher nicht mitspielen werde.

Ich habe aber auch noch mal auf die ungeprüften 'Connections' geschaut - und da fand ich dann folgende liebevolle Meldung:

>> Sind folgende Connections korrekt?

Beschreibung    
Verknüpft mit:
RSS Feeds verwenden und bestücken, RSS-Reader für Outlook (Freeware)     JA NEIN

Diese Frage konnte ich leider nicht beantworten: Ich habe nämlich nicht die geringste Ahnung was eine 'Connection' bei Codezone ist. Ich verstehe schon die Meldung als solches nicht. Was ist denn hier nun mit was 'verknüpft'? So wie es aussieht, ist hier 'nichts' mit zwei Überschriften zum Thema RSS 'verknüpft' - was immer das bedeutet.

Nun würde man vielleicht erwarten irgendwo einen 'Hilfe' Link zu dieser Frage zu finden - zumindest erwarte ich sowas. Es gibt aber keinen - zumindest konnte ich keinen finden. Eine Community die man fragen könnte gibts auch nicht: Wie schon erwähnt ist Kommunikation bei Codezone ganz offensichtlich nicht erwünscht.

Und daher ist das Thema 'Ungeprüfte Connections' genauso wie Codezone.de an sich für mich in Zukunft erledigt: Wenn ich nach Texten suche, dann ist Google (oder die MSN-Suche) dazu alle male besser geeignet: Und mehr als eine reichlich eingeschränke Suche bietet Codezone ja auch nach einem Jahr nicht.

Nicht nur sinnlos sondern ärgerlich -  Windows.de

Es gibt aber eine noch 'lustigere' Seite von Microsoft - und zwar Windows.de. 'Codezone.de' ist einfach nur sinnlos und bringt nichts, stört aber auch nicht weiter. 'Windows.de' geht noch einen Schritt weiter und wird geradezu unverschämt.

Ich habe das nicht überprüft, aber aufgrund der unhandlichen Art und Weise wie Windows.de funktioniert glaube ich, das es das gleiche CMS verwendet wie Codezone.de - und die Anti-Kommunikative Haltung der ganzen Webseite erweckt auch den Eindruck das Sie Kind des gleichen Vaters wie Codezone.de ist.

Windows.de ist nämlich auch so ein One-Way Kommunikationsmechanismus der sich als 'Community' ausgibt. In Wirklichheit handelt es sich aber genau wie bei Codezone nur um eine Datenbank mit Links. Es gibt keine eigenen Inhalte, keine Foren - und auch sonst keine Möglichkeit der Kommunikation: Ein Marketing-Albtraum, Jahrgang 2005.

Albernerweise gibt es weder bei Codezone noch bei Windows.de einen RSS Feed, mit dem man wenigstens mitbekommen könnte, wenn neue Links eingetragen wurden: Dann könnte man das wenigstens als eine Art Hinweis auf neue Ressourcen verwenden. So ist es nur ein Searchengine mit weniger Umfang und schlechteren Inhalten als MSN oder Google.

Den Vogel schiessen die Leute von Windows.de aber mit der Präsentation der verlinkten Artikel ab. So eine Präsentation befindet sich beispielsweise hier:

http://www.windows.de/DetailPage.Windows?GUID=6069653b-2354-47c8-a9a3-da0ece0ed025

Zum Artikel gibt es eine Kurzbeschreibung, eine URL und einen 'Ersteller'. Darunter stellt man sich natürlich zunächst einmal den Autoren des Artikels vor - denn ein Autor wird ja sonst nicht genannt. Prokelt man dann aber etwas weiter, dann landet man hinter dem Link bei einem weiteren Link - und danach dann endlich beim Artikel. Der ist dann aber gar nicht vom 'Ersteller' - sondern von einer ganz anderen Person. (Im Fall des Beispiels von mir.)

Zugegeben, das Wort 'Autor' wird nicht verwendet - sondern das Wort 'Ersteller': Das erweckt bei Abwesenheit einer Autorenangabe aber nunmal den Eindruck der 'Ersteller' sei der Autor. Und beim Beispiel handelt es sich nicht um einen Einzelfall - praktisch alle Beiträge auf Windows.de funktionieren so.

Und es ist auch nicht so, das das den 'Machern' unbekannt wäre. Ich hatte mich nämlich über diese Tatsache bereits vor einiger Zeit geärgert und eine ensprechende Mail geschickt: Und zwar bereits am 23. Januar.

Diese Mail wurde auch beantwortet - und zwar mit dem Hinweis....

 'Wir wissen um das Problem mit der 'Autor' Geschichte. (....) beheben es so schnell wir können.'

Genau einen Monat später - nämlich am 23. Februar - war aber noch nichts in dieser Richtung passiert: Windows.de tat noch immer so, als wäre irgendwelche windows.de Mitabeiter die Autoren einer Vielzahl von Beiträgen. Also schrieb ich eine weitere Mail an die Person, die beim ersten Mal so bereitwillig zugestanden hatte, das Problem zu kennen.

In dieser Mail bat ich um die Angabe eines klaren Datums, wann das Problem beseitigt sein würde. Diese Mail ist bis heute - also nochmals einen Monat später - nicht beantwortet worden. Schwaches Bild - passt aber zum Rest des Auftritts.

Microsoft darf sein Marketing-Geld ja gern ausgeben für was immer sie wollen: Nachdem ich gerne mit Microsoft-Produkten arbeite, wäre es mir zwar lieber, man würden Geld in Kampagnen stecken, die weniger sinnlos und befremdlich wirken - Robert Scoble macht doch vor wie es geht, nicht nur mit seinem Blog sondern auch mit Channel9 - aber sei's drum: Microsoft Deutschland stellt sich unter 'Offenheit' offenbar etwas deutlich geschlosseneres vor, als das bei Microsoft USA der Fall ist. Oder bei mir.

Wirklich kein Wunder, das das Bild von Microsoft in der Öffentlichkeit so negativ ist: Wer sich so viel Mühe gibt negative Bilder und Eindrücke rüberzubringen, der kommt halt auch irgendwann negativ rüber.

Frohe Ostern ...

27. März 2005 13:02

... und enspannte Feiertage :-)

Bilfinger Berger will Einstieg von Strabag bei Walter Bau verhindern

26. März 2005 11:34
Jetzt werden 165 Mio. Euro geboten. Mehr: FTD

FxCopy, TeamSystem und Ladybug

25. März 2005 17:50

Jetzt momentan die 'Top' Vorschläge bei Ladybug (Microsofts offizielles Bugtracking und Suggestions-Portal):

Platz 1: Team System and MSDN packaging
Platz 2: Code quality tools should not be limited to team system (Mein Vorschlag)
und Platz 4: Add Unit Testing To all editions of Visual Studio

Ich scheine also nicht der einzige zu sein, der mit dem Stand der Dinge nicht ganz zufrieden ist. Ich glaube nicht das es wirklich Sinn macht die Tools in alle Visual Studio Ausgaben zu stecken - sicherlich nicht in die 'Express' Variante - aber ein bisschen besser als die aktuellen Pläne sollte es schon werden.

Es erscheint mir auf jeden Fall wichtig zu sein, das die Entwicklergemeinde sich per Ladybug zu Wort meldet, um bei Mmicrosoft Gehör zu finden. Eine Änderung der aktuellen Produkte wird es zu diesem späten Stand der Dinge kaum kommen - denn das würde mit Sicherheit weitere Auslieferungsverzögerungen bedeuten - aber wenn die Nachricht ankommt, dann spricht ja nichts gegen ein geändertes Release danach.

Übersicht der Vorschläge hier - abgestimmt werden kann jeweils beim Vorschlag selbst.

 

 

Architektur der Wunderkinder

25. März 2005 17:27

Heute angesehen: In der Pinakothek der Moderne, die Ausstellung 'Architektur der Wunderkinder'.

Im wesentlichen gehts dabei um die Bauten in Bayern von 1945 bis 1960. Der größte Teil der Fotos und Wettbewerbszeichnungen stammt aus München und Nürnberg. Das ganze ist schon interessant, ich glaube aber hauptsächlich dann, wenn man mit den Bauwerken etwas anfangen kann. Wer aus München oder Nürnberg stammt, der wird sicherlich mehr davon haben als Personen, die eben nicht im Umfeld der Bauten leben.

Ein interessantes Detail das hängengeblieben ist: Bei Rothenburg ob der Tauber war ich aufgrund des Zustandes der malerischen Atstadt mit der Stadtmauer immer davon ausgegangen, das die jahrhunderte alten Gebäude den zweiten Weltkrieg mehr oder minder gut erhalten überstanden hatten. Das Gegenteil ist aber der Fall: Über 30% der Stadt waren zu Ende des Krieges zerstört - und wurden dann im nun bekannten Zustand erst restauriert. Ähnliches gilt auch für die Altstadt Münchens: Hier waren etwa 50% der Stadfläche zerstört.

Die Ausstellung läuft noch bis zum 30. April.

Microsoft: Code quality tools are for professional developers. Include FxCop and PreFast in the professional Version.

24. März 2005 13:02

Both FxCop and PreFast have absolutely nothing to do with team development. Both are tools that a professional developer can (and should) use to write better code.

I think Microsoft should make these tools available to professional developers by integrating these tools into the VS 2005 'Professional' version. Limiting access to these tools to TeamSystem users simply makes no sense.

Think the same? Vote here at Ladybug

---

Sowohl FxCopy als auch PreFast haben absolut nichts mit TeamDevelopment zu tun. Beide Tools sind einfach dafür gedacht, das ein Profi-Entwickler besseren Code schreiben kann.

Meiner Ansicht nach sollte Microsoft diese Tools professionellen Entwicklern zur Verfügung stellen, indem diese beiden Tools in der 'Professional' Edition von Visual Studio integriert werden - und eben nicht nur in der TeamSystem Variante.

Wer das auch so sieht: Bitte hier bei Ladybug abstimmen

Microsofts TeamSystem, Preisangaben und Verärgerung

24. März 2005 11:10

Seit klar ist das man fürs TeamSystem ein neues Abo braucht dessen Preis bei über 10.000 Dollar liegen wird ist klar, das sich Microsoft mit dem TeamSystem nicht an Softwarehersteller wie D.I.E. wendet. Im Prinzip habe ich damit kein Problem - ein sehr großer Teil der Funktionalität wendet sich ja tatsächlich auch an deutlich größere Teams. Wenn ich solche Funktionalität gewollt hätte, dann hätten wir schon vor langer Zeit ein solches Produkt angeschafft, zum Beispiel von Rational.

Sehr ungeschickt war aber die Art und Weise in der man bei Microsoft das TeamSystem angeteasert hat: Mit Videos auch Channel9, mit Blog-Einträgen und so weiter und so fort - und alles so, das jederman davon ausgegangen ist, das TeamSystem sei die etwas größere Variante der 'Professional' Version. Es hätte sich daher auch wohl niemand beschwert, das das Ding teurer ist. Nur ist es eben nicht nur ein bisschen teurer, sondern in einer völlig anderen Preisklasse.

Doch wie gesagt: Eigentlich kein Problem, nur schlechtes Marketing, was den Preis angeht.

Ich bin allerdings sehr ärgerlich darüber, wie Microsoft den angeblich 'professionellen' Entwickler einstuft - was man daran erkennen kann, wie sie die Funktionalität zwischen Visual Studio 'Pro' und Team System aufteilen.

Es gibt nämlich durchaus Funktionalität im TeamSystem, die nichts, aber auch gar nichts, mit großen 'Teams' zu tun hat. Zum Beispiel die Integration von FxCop und PreFast. Beides dient ausschließlich der Verbesserung der Codequalität. Die ist laut Microsofts Meinung offensichtlich nichts, was dem 'professionellen' Entwickler am Herzen liegt, denn ansonsten wäre die Integration dieser Tools ja auch in der 'pro' Variante enthalten. Ist sie aber nicht.

Wir dürfen also nun gespannt sein, was dann als nächstes passieren wird. Mein Vorschlag an Microsoft: Baut doch gleich noch den Optimizer aus dem C++ Compiler so um, das nur noch 'Enterprise' Kunden das Ding benutzen können. 'Professionelle' Entwickler interessieren sich ja ohnehin nicht für die Codequalität.... 

Unterhaltung für Ostern

24. März 2005 10:47

Weil das Oster-Wochenende ein langes ist, gibt es diesmal wieder was zum spielen: Teagames bietet eine ganze Reihe an Spielen. Ich fand Skidpan Scrambe ganz lustig.

Eigentlich nur ein Bild...

23. März 2005 15:24

Unser FEM Plattenprogramm zeichnet sich ja unter anderem dadurch aus, das man sich im großen und ganzen nicht weiter um die 'richtige' Verbindung von Punkten zu kümmern braucht: Im Normalfall wird das Programm von selbst erkennen, wo welche Felder wie zusammenhängen, wo welche Elemente überlappen, und dergleichen mehr.

Auch beim kommenden Faltwerksprogramm wird das natürlich so sein. Da sind die Anforderungen aber ungleich höher, weil zusätzlich ja auch Durchdringungen im Raum berücksichtigt werden müssen. Trotzdem werden mehr oder minder beliebige Körper im großen und ganzen automatisch vernetzt werden. Wie dieser hier:

mesh3d.png

Thomas zu Linux

22. März 2005 17:39

Thomas (nicht ich) zu Linux

Dem kann ich nur voll und ganz zustimmen.

Mythos: Catch( Exception) ist böse

22. März 2005 17:11

Wer FxCop verwendet, der wird über lang oder kurz über eine Meldung stolpern: FxCop bemängelt das fangen von Exceptions der allgemeinen Exception Basisklasse:

try
{
  // hier ist der code
}
catch( Exception ex)
{
   // behandlung des problems
}

wird von FxCop also bemängelt. Und das ist generell auch gut so: Man sollte im Regelfall genau die Exceptions fangen, die man auch behandelt - und nicht einfach völlig beliebige. In sofern ist FxCop schon im Recht, und weist einen durch sein Meckern auf Stellen im Code hin, die man sich zumindest einmal ansehen sollte.

Es gibt aber Fälle, bei denen die Sache nicht ganz so klar ist. So ein Fall ist zum Beispiel Directory.CreateDirectory(). Die Methode kann 7 unterschiedliche Exceptions werfen. 6 davon sagen im wesentlichen aus 'Das erzeugen des Verzeichnisses ging nicht' - die siebte sagt aus, das der übergebene Parameter 'null' ist. Die übergabe eines Nullpointers ist sicher ein Bug im Programm - man will die zugehörige Exception also nicht fangen. Die anderen 6 aber schon.

Nun ist es so, das einige der Exceptions von einander abgeleitet sind, sodas sich Code ergibt, der bei strikter Einhaltung der FxCop Regel so aussieht:

DirectoryInfo di = null;
try
{
 di = Directory.CreateDirectory( folderName);
}
catch( IOException ex)
{
   MessageBox.Show( "directory creation failed. reason:" + ex.Message);
   return null;
}
catch( UnauthorizedAccessException ex)
{
   MessageBox.Show( "directory creation failed. reason:" + ex.Message);
   return null;
}
catch( ArgumentNullException ex)
{
   // this is a bug. rethrow.
   throw;
}
catch( ArgumentException ex)
{
   MessageBox.Show( "directory creation failed. reason:" + ex.Message);
   return null;
}
catch( NotSupportedException ex)
{
   MessageBox.Show( "directory creation failed. reason:" + ex.Message);
   return null;
}

Das ist ganz offensichtlich Blödsinn: Eine Zeile Code für den CreateDirectory() Aufruf bläht das Ding ins unendlliche auf. Der Benutzer hat obendrein keinerlei Vorteile - es bringt hier einfach nichts, alle Exceptions einzeln zu fangen.

Was also tun?

Naja - ich habe das offensichtliche getan und mich an Brad Abrams gewendet, der sollte schliesslich wissen wie die FxCop Regel gemeint ist, denn die Design-Rules sind ja nunmal auch sein Werk.

Brads Antwort kam extrem prompt: Die aktuelle FxCop Regel ist nicht so doll, und das Team denkt schon darüber nach die Regel zu entfernen.

Im Regelfall sollte man zwar wirklich nicht 'Exception' fangen - aber andererseits sollte man alle Exceptions fangen die man auch behandelt. Und die Anzeige der Meldung 'Das Verzeichnis konnte nicht angelegt werden', versehen mit dem zusätzlichen Erklärungstext aus der Exception, kann man nun wohl ganz sicher als Behandlung des Problems ansehen.

Dazu gibts netterweise sogar ein paar Slides von Brad, und eines davon behandelt exakt diese Fragestellung.

'Verschwundene' Webseiten lesen

22. März 2005 15:40

Mir passiert das oft: Ich suche per Google nach einer Information, und ein Suchresultat sieht vielversprechend aus. Der Klick aufs Resultat ist dann aber enttäuschend - die Seite gibts nicht mehr.

Das ist aber in vielen Fällen weniger schlimm als man meinen möchte: Zusammen mit den Resultaten zeigt Google auch immer einen Link 'Google Cache' an. Dabei handelt es sich um eine Kopie der Seite, die Google auf den eigenen Rechnern vorhält. Ein Klick darauf - und man bekommt die Inhalte dann doch noch zu lesen. Man muss eigentlich nur dran denken... :-)

Kalender

<<  Februar 2012  >>
MoDiMiDoFrSaSo
303112345
6789101112
13141516171819
20212223242526
2728291234
567891011

View posts in large calendar