|
Email: paul.grenyer (at) gmail.com
Blog: http://paulgrenyer.blogspot.com/
Paul has been programming in one form or another for over 20 years. After several years using C++ and a brief period using C#, Paul became happy somewhere he hoped he'd never be, programming in Java. However, he is currently back programming with C# and grappling with WPF.
After time in industries such as marking machinery, direct mail, mobile phones, internet TV and credit hire, Paul is back in investment banking.
Paul has been an ACCU member since 2001, a regular publications contributor, including the now well established Desert Island Books column, creator of the mentored developers and a committee member for most of that time. When he's not programming and family life allows, Paul thoroughly enjoys science fiction, heavy metal and cycling.
Articles
Continuous Integration with CruiseControl.Net
A guide to CruiseControl.Net setup.
Continuous Integration with CruiseControl.Net - Part 2
A look at the CruiseControl.Net web dashboard.
Continuous Integration with CruiseControl.Net - Part 3
How to write a plugin for CruiseControl.Net.
An Introduction to Test Driven Development
An introduction to unit, integration and system testing.
C#
Visiting Files and Directories in C#
A look at how to use C# to remove a source tree and develop the code into a enumeration method and visitor
compound that can be used for general purpose file and directory traversal.
Testing Visiting Files and Directories in C#
A look at how to write automated tests for a directory traverser and discussion of the differences between unit
and integration testing and when to use them.
Introduction to WPF with MVVM
An introduction to the Windows Presentation Framework (WPF) using the Model-View-ViewModel (MVVM) pattern.
Java
Java Web Start
How to create applications and deploy Java applications user Java Web Start.
Model View Controller
How to implement the Model View Controller pattern in Java.
Boiler Plating Database Resource Cleanup - Part I
How to reduce the amount of code needed to access a database in Java by introducing some boiler plate and the Finally For Each Release pattern.
Boiler Plating Database Resource Cleanup - Part II
How to reduce the amount of code needed to access a database in Java by introducing some boiler plate and the Execute Around Method pattern.
Java Dependency Management with Ivy - Part I
Using Ivy for Maven like Java dependency management without the restrictions.
Java Dependency Management with Ivy - Part II
Setting up an Ivy repository.
Data Access Layer Design for Java Enterprise Applications
Java Database Connectivity (JDBC) can be used to persist Java objects to databases. However JDBC is verbose and difficult to use cleanly and therefore is not really suitable for enterprise scale applications. In this article I will demonstrate how to replace JDBC persistence code with an Object Resource Mapper to reduce its verbosity and complexity and then, through the use of the appropriate patterns, show how you might design a more complete data access layer for a Java enterprise application
Integration Testing A Java Enterprise Application Data Access Layer
Finding the best design approach is only part of the solution to writing an Enterprise Application. As with all software, the application must be tested. Unit tests are the first line of defence, but they only the units of the application individually. You also need to test how the units interact with each other and other parts of the application, such as the database. These sorts of tests are called integration tests.
|