As i mentioned in my plan: Building a desktop application, quite simple for the first version. I also mentioned about technologies usage: NHibernate + WPF with MVVM model.
I also did some researches on that model, also have done some projects with NHibernate ( web application). Therefore, i am quite confident to start up. And i did start up. Put all framework code and prototype of MVVM in place, in fact i copied and pasted from others. You can find them in my should read page.
Well, things were not that easy. I ran the project, it was fine for the first look. However, it did not do any db action. In fact, i did not know why NHibernate did not contact with DB when i made some query. Even wrap them up in a transaction. I have been working on finding out why. BUT the most important thing i found out is that: I DO NOT UNDERSTAND THEM CLEARLY.
So what they actually are???
- I did not define my application clearly. I mean the workflow of each action. For instance, what happen when i create a new word. Since it will help me define the scope of unit of work
- I did not understand the article from Ayende clearly. Not read it carefully enough.
- Wow reading MVVM one time does not mean i understand it completely. I know it but NOT GOT it.
- Even though, in MVVM, the view is separated from others. However, designing a good looking view will inspires you a lot. And i am terrible at making GUI
And, what i am going to do now are:
- Design the GUI. It is as a part of learning XAML.
- Re-read 2 articles from should read.
- Start defining the lifetime of session. Define workflow for each scenario.
After all these fails, am i sad? NO. I am happy to find them out.