|
Programming MapPoint in .NET
Buy it at Amazon Read a Sample Chapter From The Publisher |
|||||||||
|
So when this book came along, I read it with great interest. It's not often, that mapping books appear and it's not often that good ones come along in general. This particular book is an encounter of two technologies I am interested in: .NET and MapPoint. Now, it's too bad that these technologies are separated by a generation gap. MapPoint is a COM based product, while .NET is, well, .NET. Still, MapPoint is so good that I would take the performance hit and the headaches incurred by the Interop layer anyday. Many people who are just starting with mapping don't understand what a breakthrough MapPoint was when it came out. Before MapPoint (actually, still is that way), the vendors would nickel and dime you to death. You want the mapping engine, ok. You want routing, that's extra. You want the maps, that's also extra and you have to get it from a different vendor. Oh, and you would have to pay royalty on every copy of your software, making just keeping track of all the pieces a gigantic nightmare, requiring (I am not kidding here) an extra person to handle all the related paperwork. Plus the leading mapping engines of the late 90's (like MapObjects and MapInfo) were themselves were very immature. To actually draw a good looking map, you essentially had to know the innards of the mapping engine, even though you just paid $5000 for it. You would have to splice up layers (highways, arterial streets, parks, lakes, seas, oceans, rivers, malls, etc…) together and hopefully, it would look good enough.
The winds of change began to appear when Pepperwhite (a one man operation at the time) introduced a component that out of the box gave you a pretty good looking map (at least compared to MapObjects or MapInfo). You could just drop it on the form and there you were. And Pepperwhite was cheaper than the other guys and the maps were included. The only drawback is that the maps were somewhat outdated (e.g. free), because they were based on the census data, which in US is collected once a decade.
So when MapPoint showed up (and I actually predicted that this was going to happen), it blew the roof of the house of mapping engines. You got a very nice looking map, geocoding, routing, great API, updated commercial maps. The coolest thing is that once you bought MapPoint, you didn't have to deal with any other entity regarding royalty, accounting, extra payment or anything.
Anyway, on to the book. I truly enjoyed it. It is well-written and well-partitioned into several pieces: MapPoint API, MapPoint Control, MapPoint Web Service, Location Server and Virtual Earth. Everything is backed up a concrete code example. If you are new to mapping, you'll get a great primer. If you are seasoned, you'll learn a few tricks. If you are not a .NET guru, you really should read this, because COM Interop is not for the faint of heart and the author addresses all the fun details you are likely to encounter. The book was a pleasure to read and I wish I had it last year when I had to force feed the MapPoint COM object into a VB.NET client-side app. It would have surely saved me a lot of headaches. The bottom line is that if you are developing anything mapping related with Microsoft components, you gotta buy this book. Period.