I'm sitting the 70-536 (Microsoft .NET Framework 2.0 – Application Development Foundation) exam tomorrow, and I sincerely hope that it's of a higher quality than the learning materials Microsoft provide for it. I've been testing myself using the official MCTS 70-536 Training Kit, and running the example tests provided.
What's disconcerting is that some of the questions are just plain wrong; here's an apposite example:
Which of the following code samples is the most efficient and compiles correctly?
-
string s = null;
s = "Hello";
s += ", ";
s += "World";
s += "!";
-
string s = null;
StringBuilder sb = null;
sb = "Hello";
sb += ", ";
sb += "World";
sb += "!";
s = sb.ToString();
-
string s = null;
StringBuilder sb = null;
sb.Append("Hello");
sb.Append(", ");
sb.Append("World");
sb.Append("!");
s = sb.ToString();
-
string s = null;
s = "Hello";
s += ", ";
s += "World";
s += "!";
So what's the correct answer? Not only do we have two identical options (1 and 4), but they also happen to be the only ones that will compile and execute. 2 is wrong because StringBuilder doesn't accept the "=" or "+=" operators, and 3 also shares the problem that the StringBuilder is never instantiated. Guess which option the test exam says is correct?
Can't say it fills me with much confidence for tomorrow...