New Video Games
Jan 24 2010 03:40 PM Filed in: Video
Games
It has been a while since I did a post about what video
games I am currently playing.
Pinball Hall of Fame: The Gottlieb Collection

This is a follow-up to the popular Pinball Hall of Fame: The Williams Collection. I just received this the other day, I pre-ordered it when I saw it was going to be released. I’ve always been a fan of pinball machines, played them all the time back in the 80’s, while a lot of other kids my age were playing video games. I love the graphics, the sounds, and the interesting layouts the manufacturers came up with. This game isn’t as good as the Wiliams Collection, mainly because there aren’t as many table challenges, only one per table, compared to 10 on the Williams Collection. I still enjoy the tables in this collection, though; there’s a nice variety. As with the previous pinball collection, I enjoy grabbing a beer, putting on some music, and sitting back to play for a couple hours.
Super Mario Bros. Wii

I love this game. In fact, I can’t think of a Mario game I’ve played that I didn’t like. This game goes back to the 2D side scrolling style of Mario gameplay, and is super challenging. I’ve played through the entire game, and I have yet to find a way into level 7, plus I still have a lot of gold coins to collect, so I will be revisiting this one for a while.
The Legend of Zelda: Spirit Tracks

I love me some Zelda. These games are always a blast. I just started playing this one, so I haven’t gotten very far, but so far the story and gameplay are great. Like Mario, I’ve been a fan of every Zelda game I’ve ever played.
Pinball Hall of Fame: The Gottlieb Collection

This is a follow-up to the popular Pinball Hall of Fame: The Williams Collection. I just received this the other day, I pre-ordered it when I saw it was going to be released. I’ve always been a fan of pinball machines, played them all the time back in the 80’s, while a lot of other kids my age were playing video games. I love the graphics, the sounds, and the interesting layouts the manufacturers came up with. This game isn’t as good as the Wiliams Collection, mainly because there aren’t as many table challenges, only one per table, compared to 10 on the Williams Collection. I still enjoy the tables in this collection, though; there’s a nice variety. As with the previous pinball collection, I enjoy grabbing a beer, putting on some music, and sitting back to play for a couple hours.
Super Mario Bros. Wii

I love this game. In fact, I can’t think of a Mario game I’ve played that I didn’t like. This game goes back to the 2D side scrolling style of Mario gameplay, and is super challenging. I’ve played through the entire game, and I have yet to find a way into level 7, plus I still have a lot of gold coins to collect, so I will be revisiting this one for a while.
The Legend of Zelda: Spirit Tracks

I love me some Zelda. These games are always a blast. I just started playing this one, so I haven’t gotten very far, but so far the story and gameplay are great. Like Mario, I’ve been a fan of every Zelda game I’ve ever played.
|
Too Many Interfaces
Jan 20 2010 09:58 PM Filed in: Personal
While writing some code at work the other day, I
noticed something, that I had meant to blog about
earlier.
I work in a .NET development shop, coding C#. One of the latest kicks we’re on at work is IOC and Dependency Injection, we use it everywhere. It’s almost a crime if you actually create an instance of an object using the ‘new’ keyword. One of the side effects of this is we have interfaces for just about everything. There are a couple things I don’t like about this.
When I think of interfaces, I generally think of the something along the lines of IDisposable, IView, INotifyPropertyChange, IDraggable, etc. These interfaces are something you implement if you need certain functionality, and they can be used by multiple classes in your projects. When you start creating interfaces for every class in your project so that you can use a service locator or some other means to create the concrete instance of the class, you end up with interfaces named IUpdateAddressView, IContractService, ILinearScheduleRepository, etc. You’re not going to have any class except for LinearScheduleRepository implementing the ILinearScheduleRepository interface, it’s specifically made for that class, so that you can write code like this
It adds complexity and it also makes navigating to code a pain in the arse, unless you have a tool like Resharper at your disposal. If you don’t and you right click on a method or property and chose to go to the definition, you end up in the Interface, not the class that implements that interface method or property.
My other gripe with this is you end up feeling like you’re coding in C/C++, where the interfaces are the equivalent of header files. You can no longer add a new method or property to a class, you must first go to the interface for that class and add your method or property there, then you can go to the class and implement it. It’s a pain to always have to remember to do that, since that’s not something you would generally have to do in C#. I don’t really like having to code for some tool that we’re using. Another place we do this is having to occasionally mark a method as virtual, so that our Mocking tool doesn’t call it when recording your expectations. There’s no other reason for that method to be virtual, but we have to do it if we want to Mock a test (which is something else I’m really not a fan of, but I will save that for another post).
I can see some benefit in IOC and Dependency Injection, I guess it’s just a case of the usual going overboard on the latest buzzword/development craze that we tend to do at my work. Maybe one of these days we’ll go the “let’s try and do a nice simple, non complex” implementation, the kind of thing I enjoy, but I doubt it. I can already sense that our next project will be Silverlight with Prism, Entity Framework, and some Fluent and maybe automapper thrown in just for fun.
I work in a .NET development shop, coding C#. One of the latest kicks we’re on at work is IOC and Dependency Injection, we use it everywhere. It’s almost a crime if you actually create an instance of an object using the ‘new’ keyword. One of the side effects of this is we have interfaces for just about everything. There are a couple things I don’t like about this.
When I think of interfaces, I generally think of the something along the lines of IDisposable, IView, INotifyPropertyChange, IDraggable, etc. These interfaces are something you implement if you need certain functionality, and they can be used by multiple classes in your projects. When you start creating interfaces for every class in your project so that you can use a service locator or some other means to create the concrete instance of the class, you end up with interfaces named IUpdateAddressView, IContractService, ILinearScheduleRepository, etc. You’re not going to have any class except for LinearScheduleRepository implementing the ILinearScheduleRepository interface, it’s specifically made for that class, so that you can write code like this
var repository =
ServiceLocator.Create<ILinearScheduleRepository>();
It adds complexity and it also makes navigating to code a pain in the arse, unless you have a tool like Resharper at your disposal. If you don’t and you right click on a method or property and chose to go to the definition, you end up in the Interface, not the class that implements that interface method or property.
My other gripe with this is you end up feeling like you’re coding in C/C++, where the interfaces are the equivalent of header files. You can no longer add a new method or property to a class, you must first go to the interface for that class and add your method or property there, then you can go to the class and implement it. It’s a pain to always have to remember to do that, since that’s not something you would generally have to do in C#. I don’t really like having to code for some tool that we’re using. Another place we do this is having to occasionally mark a method as virtual, so that our Mocking tool doesn’t call it when recording your expectations. There’s no other reason for that method to be virtual, but we have to do it if we want to Mock a test (which is something else I’m really not a fan of, but I will save that for another post).
I can see some benefit in IOC and Dependency Injection, I guess it’s just a case of the usual going overboard on the latest buzzword/development craze that we tend to do at my work. Maybe one of these days we’ll go the “let’s try and do a nice simple, non complex” implementation, the kind of thing I enjoy, but I doubt it. I can already sense that our next project will be Silverlight with Prism, Entity Framework, and some Fluent and maybe automapper thrown in just for fun.
The New Year: 2010
Jan 01 2010 06:56 PM Filed in: Personal