I recently wrote and passed Exam 70-484 which is the second exam of three to obtain an MCSD certification. You can read about my process of passing Exam 70-483 here, but I decided to change up my study techniques after taking that exam.
The first change I made was due to there being a large amount of code in the exam. There were very few simple multiple-choice questions where you would just need to know an answer about the language or framework. For Exam 70-483, I created an Anki flash card deck to study parts of C# and the .Net framework, but I found that this wasn’t that helpful for a code-heavy exam. Therefore, this time, I decided not to create flash cards to study for 70-484.
I did decide to purchase and read the recommended Exam reference book: Exam Ref 70-484: Essentials of Developing Windows Store Apps using C#. However a good portion of the material in this book has become outdated with the release of Windows 8.1 and the update of the exam in Dec 2013. Since the book is ordered by the Exam outline, with the use of the exam changes document you can find here, it’s fairly easy to steer clear of most of the outdated material. However, there are still some changes you need to be aware of (No snapped state, for example) as you read through the book. Hopefully there will be an update for this book… but I really feel for the author as the book was out-of-date within 4 months of its release.
Another book you can use as a reference is Windows 8.1 Apps with XAML and C# Unleashed. This will take you through most of the material you need, but organized more from a bottom-up approach rather than an exam-focused organization. There are a lot of great, full-color diagrams in this book and a lot of great explanations. This book is probably a good buy if you are just starting out with Windows Store App development and looking for the fundamentals. Exam Ref 70-484 can be a big confusing at times, because the exam-focused organization means the topics skip around quite a bit.
Instead of flash cards, I decided to create a Mind Map ordered by the exam outline. I used Mindjet’s MindManager to create the Mind Map, but there are several alternatives as well. The idea was to put all the necessary information for each exam criteria into a Mind Map node so I can easily refer back to the information when I needed. Here a screenshot of a part of the Mind Map I made up:
I am also a visual learner, so I find that a Mind Map makes it easier for me to visualize information and thus remember that information. Plus MindManager allows you to insert hyperlinks on a node, so I can add hyperlinks to additional content if I was looking for more clarification.
I changed how I put the information into the Mind Map as I went along, so the organization and information isn’t as clean as I would like it to be. However, it may be useful for you, or you could use it as a starting map for yourself, so you can download the MindManager version.
Next up was to help with all of the code and APIs and I was going to need to know for the exam. Luckily, the Exam Ref 70-484 book highlighted most of the namespaces, classes, and methods you need to know. With this information, I created UML Diagrams for each section of the Exam. This gave me a visual picture of all the code I was likely to run into on the exam. To create the UML Diagrams, I used my main development tool Visual Studio to create the diagrams (Note that you will need the Ultimate or Premium editions to create UML diagrams) but there are other options as well. I found that this was a good start, but I wanted to highlight certain call paths or workflows that I would need to do in order to accomplish a certain task (Create a toast notification for example), but I couldn’t figure out a better way other than just putting in comments on the diagram. I would love to know if there is a cleaner solution to do it, since I’ll likely do the same thing for Exam 70-485.
Here’s an example of one of the UML diagrams I created:
I definitely found these to be useful, so I image others would as well. Note that I didn’t make a UML diagram for every exam section, as some sections didn’t really have too much code to know, or it was a section I just knew really well. You can download the images of the UML Diagrams I created at the following link:
The next thing I did was go through the Microsoft Virtual Academy course Windows Store App Development Essentials with C# Refresh (They redid the course for Windows 8.1) with Jerry Nixon and Daren May. This is a free 7 module course with videos and self-assessment exams. The videos are outstanding; Jerry and Daren are very knowledgeable, fantastic to watch, and very funny. This is exceptionally refreshing for computer programming content as I could easily watch any videos with these guys teaching. My only criticism is that these only did 7 videos… I really wish they had done more!
Regardless, I highly recommend the course as the material is targeted to the Exam 70-484 crowd. However, it will not be enough to get you to pass the exam on its own.
While you don’t need to write any XAML code, you do need to know about it and what is correct XAML code. There’s another course from Microsoft Virtual Academy called XAML Deep Dive for Windows & Windows Phone Apps Jump Start which is a good introduction to XAML if you’ve never used it before. Experience XAML developers will likely only find this to be a good refresher though.
Finally, there are a couple other websites that provided some helpful advice. Here they are:
And that’s it! Now it’s on to the final Exam 70-485 for the certification. Hopefully these resources will help you to pass this exam as well on your way to your MCSD!