Welcome to MSDN Blogs Sign in | Join | Help

Browse by Tags

All Tags » detailed design   (RSS)

Stepping into base class libraries of .NET Framework while debugging

Here are some pieces of information about stepping into base class libraries of .NET Framework while debugging: Configuring Visual Studio to Debug .NET Framework Source Code by Shawn Burke Debugging into the .NET Framework Source by James Kovacs
Posted by marcod | 2 Comments
Filed under:

COM+ object per client model

Consider the following ECMAScript: var mather=new ActiveXObject("Arithmetic.Math") WScript.Echo(mather.Sum(5,5)) WScript.Echo(mather.Sum(5,5)) Output is: 10 twice. No brainer. Arithmetic.Math could be an in-process (loaded in the same process of COM Client),
Posted by marcod | 1 Comments
Filed under:

Execution order between base and derived inline instance field initializers

Talking C # , what is an instance field initializer? Here are two: class T { private int afield = 1024 ; private StringBuilder anotherfield = new StringBuilder() ; } Now, consider the program below, What would the output be? class B { public B(int n){Console.WriteLine(n);}
Posted by marcod | 1 Comments
Filed under:

Do you amass nasty feelings about your designs?

I remember the time when structured programming lessons first came into my attention. Control flow constructs like sequence, choice, loops, etc. In particular, the condition-controlled loop that places the condition test after the loop body, for example
Posted by marcod | 4 Comments
Filed under:

Recursive functions

My young nephew came with a question about recursive functions, after a few minutes, he fully understood these samples: #include <stdio.h> /* 0! = 1 1! = 1 3! = 3*2*1 = 6 5! = 5*4*3*2*1 = 120 3! = 3*2! = 3*(2*1!) = 3*[2*(1)] = 3*(2*1) = 3*2*1 =
Posted by marcod | 0 Comments
Filed under:

Anonymous method trivia

Consider the following C# 2.0 code: using System.Windows.Forms; class form:Form { form() { int msg=100; Button b=new Button(); b.Text="click"; b.Click += delegate{MessageBox.Show("now the value is:"+msg);}; Controls.Add(b); Load += delegate{msg=200;};
Posted by marcod | 1 Comments
Filed under:

A more efficient iterator pattern implementation since C# 1.0

Yes, there is CLR 2.0 now, with C# 2.0 generics and iterators. Yet, the more design tools for your professional designer’s toolbox, the better. Implementing global::System.Collections.IEnumerable and global::System.Collections.IEnumerator implies some
Posted by marcod | 0 Comments
Filed under:

What are pointers?

Today, my young nephew came to me with the question "What is that thing called 'pointers' in the C programming language?" from his first programming course at school. The time has come to see if he was born with that part of the brain that understands
Posted by marcod | 2 Comments
Filed under:

The attention where it belongs (and it is not in the marketing hype)

Reading the following article was refreshing, there are conscious software professionals that this industry can rely on like Mr. Dave Thomas: Agile Evolution - Towards The Continuous Improvement of Legacy Software by Dave Thomas http://www.jot.fm/issues/issue_2006_09/column
Posted by marcod | 0 Comments

The source of many design and programming problems: unchecked assumptions

In a recent project, we faced a problem with our system. We just found and resolved the problem. Details aside, there is a root cause of the problem: unchecked assumptions. Save you time and effort and ask yourself often "Which are my assumptions so far?"
Posted by marcod | 2 Comments
Filed under: ,

A test-driven design style for database-based applications with VSTS

If you are designing an application test-drive using Microsoft Visual Studio 2005 Team Edition for Testers whose logic includes access to a database, then consider the following mechanism for the database related assertions (also known as specifications:
Posted by marcod | 5 Comments
Filed under: ,

Designing scalable systems

This is an important work for the Spanish software development community, the issues involved with scalability are cleary explained, and their solutions. Enjoy: http://dixi.members.winisp.net/escalabilidad/
Posted by marcod | 1 Comments
Filed under: ,

Reflecting in action: programming other algorithms

As part of the same preparation I really enjoyed to program a classic: Which are the 92 solutions to the 8 queen problem? First, the usage intentions and conditions of satisfaction: [TestMethod] public void validSolutions() { List<ChessBoard> boards
Posted by marcod | 0 Comments
Filed under:

Reflecting in action: programming simple algorithms

In preparation to write some papers about software design techniques, I am planning to illustrate those techniques with a variety of examples. As part of the effort I will document my thoughts while doing reflective practicum , identifying and documenting
Posted by marcod | 1 Comments
Filed under:

Argument processing and C# 2.0 iterators

Sometime, you want to process this command-line argument: C:\>aprogram arg0 arg1 @arg2 arg3 @arg4 arg0, arg1, arg3 are actual data to process whereas arg2 and arg4 are text file names where each text line inside is another actual data to process (aka
Posted by marcod | 2 Comments
Filed under:
More Posts Next page »
 
Page view tracker