Addison-Wesley / Prentice Hall
My Instructor Resource Center : Log in or request access
Open Source .NET Development: Programming with NAnt, NUnit, NDoc, and More
ISBN-10: 0321228103
ISBN-13: 9780321228109
Publisher: Addison-Wesley Professional
Copyright: 2005
Format: Paper; 504 pp
Published: 08/16/2004
Status: Instock
Preface.
I. INTRODUCTION TO OPEN SOURCE AND .NET.
1. What Is Open Source?
Introduction.
Microsoft and Open Source.
Open Source, Free Software, and Shared Source. Oh MY!
Free Software.
Shared Source.
Open Source Software.
Tips on Selecting a License.
Using Open Source in Your Proprietary Product.
Summary.
2. Open Source and the .NET Platform.
Introduction.
.NET Standards.
Standardization.
Standards Organizations.
What Is in the Standards.
What Is Not in the Standards.
Implementations.
Microsoft’s .NET CLR.
Compact Framework.
SSCLI / Rotor.
Portable.NET.
Mono.
Summary.
II. .NET DEVELOPMENT WITH OPEN SOURCE TO0LS.
3. General Development.
Introduction.
.NET Editing Tools.
Editor Features.
Emacs.
VIM.
Sharp Develop.
Web Matrix.
Eclipse.
Documentation Tools.
Open Office.
ArgoUML.
Source Control Management.
Concurrent Versioning System.
Subversion.
Databases.
MSDE.
MySQL.
PostgreSQL.
Web Servers.
IIS.
Apache.
Cassini.
XSP.
Other Development Tools for .NET.
BugZilla.
Merge and Diff Utilities.
Obfuscator.
Web Service Utilities.
Regular Expressions.
CLRSpy.
Vil.
Summary.
4. Build Automation.
Introduction.
What NAnt Is.
What NAnt Is Not.
Using NAnt.
Executing NAnt.
Why Use NAnt?
Ant.
csAnt.
BuildIt.
Other Build Tools.
Data Types.
Fileset.
Patternset.
Optionsets.
Environment Variables.
Properties.
SCM Integration.
NAnt Best Practices.
Migrating to NAnt.
Examples.
Simple Exe.
Simple DLL.
ASP.NET and Web Services.
Windows Service.
Windows Form.
Unsafe, Interop, and Other.
Handling Large Products.
Extending NAnt.
NAnt Base Classes.
NAnt Tasks’ Error Handling.
Enabling Your Task to Handle Multiple Versions of .NET.
Extending NAnt Example.
Extending NAntContrib.
Enabling Your Task to Handle Multiple Versions of NAnt.
MakeIsoFs Task.
Useful Tools for Use with NAnt.
FxCop.
Artistic Style.
HTML Tools.
NAntPad.
NAntMenu Shell Extension.
Visual Studio.NET 2003.
Summary
5. XML Documentation.
Introduction.
C# XML Documentation.
Validated Tags.
Nonvalidated Tags.
C# XML Documentation Tag Reference.
Configuring the C# Compiler to Create the XML File.
Documentation Tools.
MonoDoc.
Portable.NET csDoc.
NetDoc.
Documentor for .NET.
NDoc.
NDoc Functionality.
NDoc Documentors’ Formats.
NAnt Integration.
Summary.
6. Unit Testing.
Introduction.
Unit Testing.
Unit Testing Platforms.
NUnit Architecture.
NUnit Example.
NUnit Attributes.
Example.
NUnit Assertions.
ExpectedException.
NUnit Exceptions.
Integration with NAnt.
NUnit Task.
NUnit Report Task.
NUnitASP.
Other Tools Useful with NUnit.
NCover.
Object Mocking.
HttpUnit.
DbUnit.
Performance and Other Testing Tools.
Windows Application Verifier.
nProf and nProfiler.
FxCop.
HTML Tools
Summary.
7. Continuous Integration.
Introduction.
What Is Continuous Integration?
What Are the Benefits of Continuous Integration?
How Does Continuous Integration Fit with .NET?
How to Evaluate a Build System.
Conceptual Design Overview.
Hippo.NET.
Installing.
Configuring.
Running.
Draco.NET.
Installing.
Configuring.
Running.
Build System.
CruiseControl.NET.
Installing.
Configuring.
Running.
FXCop Integration.
Summary.
8. Application Logging.
Introduction.
Application Logging.
Architecture.
Loggers.
Hierarchy.
LogManager.
Levels.
Appenders.
Filters.
Layouts.
ObjectRenderer.
Configuration.
Programmatic Configuration.
Runtime Configuration.
Configurations in a Smart Client.
Logging with Context Information.
MDC.
NDC.
WMI.
Performance and Scalability.
GAC.
Parameter Construction.
Hierarchy.
Stack Tracing.
Examples.
Windows Forms and Console Applications.
ClassLibraries.
ASP.NET and Web Services.
Serviced Components.
Remoting.
Windows Services.
Log File Readers.
LogFactor5.
Network Log Client.
Chainsaw.
Extending Log4Net.
Error Handling.
Custom Filters.
Custom Layout.
Custom Appender.
Custom Renderer.
Summary.
III. INTEGRATING .NET OPEN SOURCE PROJECTS IN YOUR DEVELOPMENT.
9. ASpell.NET Case Study.
Introduction.
Test First Development.
NAnt Build.
Subversion.
Draco.NET.
Adding Functionality.
Summary.
10. Database Development.
Introduction.
Open Source Databases.
Sleepycat Berkeley Database.
MSDE.
MySQL.
Which Database to Choose?
PostgreSQL.
Installation.
Cygwin.
Administration Tools.
PostgreSQL ADO.NET Data Providers.
PostgreSQL, NPgSql, and FreeDB Example.
What Is FreeDB?
Importing FreeDB to PostgreSQL.
Creating a .NET Class Library for FreeDB.
Summary.
11. Web Development.
Introduction.
Cross Platform ASP.NET and Web Services.
Cassini.
XSP.
Apache.
Which Web Server to Use?
Setting Up the Environment.
Setting Up Mono and XSP.
Web Service Example.
ASP.NET Example.
Summary.
12. Simple Project Integration.
Introduction.
Popular Projects.
An Example of Integration.
SVG.
System.Drawing and GDI+.
SharpVectorGraphics Project.
Didgets Project.
Other Open Source Projects.
The Integration.
Where to Go from Here.
Licensing Considerations.
Summary.
IV. REFERENCES
Appendix A: NAnt Tasks.
Appendix B: NAntContrib Tasks.
Appendix C: mkisofs.
Name.
Synopsis.
Description.
Options.
Hfs Options.
Hfs Creator/Type.
Hfs Macintosh File Formats.
Hfs Macintosh Filenames.
Hfs Custom Volume/Folder Icons.
Hfs Boot Driver.
El Torito Boot Information Table.
Configuration.
Examples.
Author.
Notes.
Bugs.
Hfs Problems/Limitations.
Future Improvements.
Availability.
Mailing Lists.
Maintainer.
Hfs Mkhybrid Maintainer.
Appendix D: Log4NET Appender Configurations.
ADONetAppender.
MS SQL Server.
MS Access.
Oracle9i.
ASPNetTraceAppender.
BufferingForwardingAppender.
ConsoleAppender.
EventLogAppender.
FileAppender.
ForwardingAppender.
MemoryAppender.
NetSendAppender.
OutputDebugStringAppender.
RemotingAppender.
RollingFileAppender.
SMTPAppender.
TraceAppender.
UdpAppender.
Appendix E: Open Source Security Observations.
Glossary.
Index.
View a Sample Chapter PDF:/samplechapter/0321228103.pdf
Brian Nantz is a senior engineer in research and development at Security International in Milwaukee. He has designed solutions for GM, GE, Honeywell, and Analogic. An active member of the open-source community, Brian contributes to NAnt, NAntContrib, and log4net and is a lead developer for LogKit.Net and Aspell.Net.
Perhaps the most revolutionary aspect of the arrival of Microsoft's
Perhaps the most revolutionary aspect of the arrival of Microsoft's .NET platform is the standardization of C# and the Common Language Runtime. Now, for the first time, programmers can develop and use open-source projects that are based on a language that is an international standard as well as compatible with both Microsoft and Linux platforms.
Open Source .NET Development is the definitive guide on .NET development in an open-source environment
Inside, readers will find in-depth information on using NAnt, NDoc, NUnit, Draco.NET, log4net, and Aspell.Net with both Visual Studio .NET and the Mono Project. Brian Nantz not only shares the best open-source and "free" tools, frameworks, components, and products for .NET, he also provides usable, practical examples and projects. The result is a highly accessible reference for finding the tools that best fit your needs.
Highlights include
Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students contact your Pearson Higher Education representative.