Marko Apfel - Afghanistan/Belgium/Germany

Management, Architecture, Programming, QA, Coach, GIS, EAI

  Home  |   Contact  |   Syndication    |   Login
  187 Posts | 2 Stories | 201 Comments | 4 Trackbacks


Twitter | LinkedIn | Xing

Article Categories


Post Categories

Image Galleries



Enterprise Library


SQL Server


July 2010 Entries

Fast Many per second Independent Ability to to run test cases in any order Isolated only one aspect per test case –> Failure reasons could better be identified Repeatable Execution order does no matter Self-validating No manual evaluation required Small Easy to understand, evolvable Transparent purpose of test case should be clear Timely Written before/during code ......

Rules The following rules outline the naming guidelines for events: Use Pascal case. Do not use Hungarian notation. Use an EventHandler suffix on event handler names. Specify two parameters named sender and e. The sender parameter represents the object that raised the event. The sender parameter is always of type object, even if it is possible to use a more specific type. The state associated with the event is encapsulated in an instance of an event class named e. Use an appropriate and specific ......

Motivation Schon im Whitepaper „Auszeichnung von COM-Kategorien an .NET-Klassen mittels Attributen und deren Verwendung für Setup-Builds“ [1] habe ich deutlich gemacht warum das Verwenden von COM-Registrierungsfunktionen ein suboptimales Programmierpattern ist. Knackpunkt sind die Verstöße gegen SOC (separation of concerns) [2] und SRP (single responsibility principle) [3]. Für Prototyping oder kleine Demoprojekte möchte man vielleicht aber bewusst diese Verstöße in Kauf nehmen. Nichtsdestotrotz ......

IDE Must have Visual Studio 2008 Visual Studio 2010 Nice to have Sharp Develop Eclipse Editor Must have Editor with high functionality and high usability (like WScite, UltraEdit, PSPad, ..) Nice to have Microsoft XML Notepad 2007 Notepad++ Windows Live Writer WScite Visual Studio Add-Ins Must have AnkhSvn GhostDoc PowerCommands PowerToys for Visual Studio ReSharper VsCommands Nice to have CopySourceAsHtml Clone Detective for Visual Studio CR_Documentor, Documentor Agent Johnson (R# Plugin) Agent ......

Precondition Naming Its a good practice to have a common naming schema for test projects, fixture categories and fixture. Especially to configure automatic runs of unit tests is much more easier with this. For each project we have a correspondending test project which has the same name suffixed with .Test. Other teams uses .Test, .Fixture or .Fixtures. Fixtures themself have the same name like the to be tested class suffixed with Fixture. Maybe that this is not the best idea, because normally each ......

Steps to integrate simian add simian to VCS (in our case folder ./trunk/build/simian) add build step to your Hudson job (Execute Windows batch command) use following two commands .\trunk\build\Simian\bin\si... -formatter=xml:.\trunk\bin\... -excludes=**/*.Test/**/*.cs -excludes=**/*.DbFrame/**/*.cs -excludes=**/*.DbLayout/**/... -excludes=**/*.Designer.cs -excludes=**/XServer1_8.cs -threshold=10 **/*.cs EXIT 0 Explanation For better visibility and understanding i have splitted ......

Today we updated our Hudson CI-server. After changig job-configuration Hudson throws an error, that the config.xml could not be deleted.

But the new entries are correct saved.

Nevertheless such behaviour bothers.

The trick was to update also the plugins. After that all works fine again.

Today my FxCop-GUI stated, that a new release is available – but the link to this release is broken. After googling a little bit i realized, that the new release of FxCop ist actually only included in “Windows SDK for Windows 7.1”. This is downloadable under Microsoft Windows SDK for Windows 7 and .NET Framework 4 (ISO) Extract the ISO Open the Setup\WinSDKNetFxTools\cab1... Extract WinSDK_FxCopSetup.exe_all_e... Run Install.Exe ......

StyleCop issues inheritedoc-comment Using <inheritdoc />-comment is not recognized by StyleCop. So this needs a suppression: // <inheritdoc /> [SuppressMessage( "Microsoft.StyleCop.CSharp.... "SA1604:ElementDocumentatio... Justification = "InheritDoc")] FxCop issues Too few namespaces [module: SuppressMessage( "Microsoft.Design", "CA1020:AvoidNamespacesWith... Scope = "namespace", Target = "EsriDE.Core.Service.Logging", Justification = "We want to ......

Using a project-specific custom disctionary for FxCop and FxCop build tasks is very simple. The FxCopCmd call in the FxCop-target offers the parameter /dictionary:<DictionaryN... for that. But for Visual Studio a little bit more steps are needed. And these steps musst me gone for all projects. Add the custom dictionary as a link to each project. I organize such links under the special Properties-folder. So normally these links dont violate my eyes ;-) Next step requieres editing of the csproj-files. ......