|
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 is now happy somewhere he hoped he'd never be, programming in Java.
After time in industries such as marking machinery, direct mail, mobile phones, investment banking and Internet TV, Paul is curently Head of Software Engineering at Validus-IVC Ltd. in Norwich where he leads an ever growing team of senior and highly skilled people.
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.
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.
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
|