We don't believe in brain dumps. We are a certification website dedicated to providing answers to your questions about mcad, mcsd .net, mcdba, mcsa, and mcse information, requirements, books, exams, and training to help you earn your Microsoft certifications.
Save money using this special offer discount voucher coupon code on your Microsoft Certified Professional exams from Pearson VUE testing exam centers Save on your Microsoft Certification
Exams with this discount voucher coupon code!Click here to find out how to save money.
MCSE exam discounts, MCDBA exam vouchers, MCSD .NET coupon codes
View my shopping cart containing certification books View My Shopping Cart
Certification resources including books, exam notes, training courses, training centers, bootcamps, and study websites.
No braindumps, just a wealth of information.
MCSE MCSA MCSD .NET MCAD MCDBA Training Centers
MCSE information, MCSE requirements, MCSE benefits, MCSE exams, MCSE questions, MCSE answers, MCSE study guides, MCSE help, MCSE bootcamps, MCSE training, windows 2003 exams
MCDBA information, MCDBA requirements, MCDBA benefits, MCDBA exams, MCDBA questions, MCDBA answers, MCDBA study guides, MCDBA help, MCDBA bootcamps, MCDBA training, SQL Server 2000 examsMCSD .NET information, MCSD .NET requirements, MCSD .NET benefits, MCSD .NET exams, MCSD .NET questions, MCSD .NET answers, MCSD .NET study guides, MCSD .NET help, MCSD .NET bootcamps, MCSD .NET training, ASP .NET exams, VB.NET exams, C# exams
MCSA information, MCSA requirements, MCSA benefits, MCSA exams, MCSA questions, MCSA answers, MCSA study guides, MCSA help, MCSA bootcamps, MCSA training, windows 2003 system administrator study notes
MCAD information, MCAD requirements, MCAD benefits, MCAD exams, MCAD questions, MCAD answers, MCAD study guides, MCAD help, MCAD bootcamps, MCAD training, windows 2003 certification exams
Click To View Larger Picture Software Development on a Leash
by No author available
List Price: $39.95
Our Price: $27.96
ISBN: 1893115917
Publisher: APress (18 March, 2002)
Edition: Paperback
Sales Rank: 350,197
Average Customer Rating: 3.92 out of 5
05
Buy now directly from Amazon.com
Purchase this book, safely and securly from the largest book dealer on the Internet, Amazon.com
VUE Voucher Number, Save money on all your Microsoft Certification Professional (MCP) Exams taken at Pearson VUE examination testing centers. No catch, 100% legitimate. Click to get the Voucher Number ( Promotion Code, Coupon Code ).

Customers Reviews:
Rating: 4 out of 5
05
Impressive, but not for the weak
This is a good, chewable read. I would not recommend it for new developers, purely academic types or those without real-world appreciation of the true intensity of commercial software development.

The author describes separating the application from the architecture, and while I've done this before in software on several levels, I never considered removing the application completely from the compiled software and driving application behavior from what the author calls "external structural and behavioral metadata". Using the same binary program to support multiple applications without recompiling a single line of code? Perhaps without recompiling on each and every application release, which makes perfect sense. However, he avoids rebuild for complex screen-level changes, too (even cosmetics). Not too shabby.

The project examples are pretty hot - I can see how he could suggest compiling software only once and doing high-speed application re-delivery with this as a foundation. We deploy software nationally for retail point-of-sale systems and are moving into wireless hand-helds, so the prospect of delivering application-level changes without new compiled binaries is quite intriguing.

His "toolkit" includes a linked-list manager (Iterator) which by the author's own confession is not new, but does provide some rather interesting twists on data organization. The linked-list as binary tree is of particular interest, since it eliminates linear searching of large data sets. The XML support is good, and I like the ability to build a very complex custom structure, reduce it to XML, then reconstruct it from XML again. This has significant implications for our XML -based applications that don't talk to each other any other way, and don't support or co-habitate with the .NET XML subsystem. I can see how using this functionality at a lower level could allow two otherwise closed systems to share common structures, or save the structure to a database as XML text for a very advanced version of behavioral persistence.

I would suggest using this structure for XML support but not for an XML foundation. I think the author *likely* would agree that available XML-support components are an adaptable technology in their own right, but would fit right into his component model like any other. Again, I like the flexibility, especially since our internet servers are all Unix and Linux portals.

I rigged up an example of his TurboCollection along with the interpreter and saved its run-time state into XML in the middle of executing an "application instruction". Not only could I persist the operational state of the application, I could retrieve it and pick up where I left off. This form of behavioral checkpointing is very hard to pull off at an application level, but the data structures make it fairly transparent. A side note to this is in managing XML-based transactions and queued states, indefinitely storing the application's state while it pends for new instructions.

However, without a really good handle on software development and a reasonably strong foundation in data structures, perhaps even compilers, the architectural strength of this model would be lost. I've got friends who build game applications using game engines with similar characteristics. For people using it to deploy applications without touching the actual software, this model could probably be further simplified and optimized.

His interpreter is also simple but intriguing, in that it can accept instructions on the fly much like the Microsoft Visual Studio .NET "command" window, yet there's no .NET IDE in sight. In the embedded "watch" window I could single-step through the "application" without the development environment. Add to this the ability to define and view "virtual" data constructs or even load and execute new instruction sets without stopping the program - and I can say the author has done his homework.

For anyone who cares, the project exercise fine print shares a little secret: that the demo software program included in the downloads is the author's full metamorphic model with "some disabilities" (although he doesn't say what the disabilities are, only that they are performance-related to inhibit production deployment). If this is true, and the metamorphic software is really this small, I'm very impressed.


Rating: 2 out of 5
05
A textbook or a sales material?
I have mixed feelings about this book. The main idea of it (as far as I understand) is achieving high degree of reuse by separating the software from its concrete application and expressing this application in "structural and behavioral metadata". Moreover, in your application, you must get rid of any dependecties on things that you do not control by wrapping it in your software layer and exposing it to the application as very abstract ("metamorphic") object model. The author provides some interesting examples for this and presents the basic building blocks of a software framework built around these ideas. As much as it might sound compelling this concept is not really new. What is worse is that methods and advice presented in the book are sometimes simply wrong or often have serious drawbacks which the author doesn't talk about.

For example the author really hates strong typing and recommends reducing the interface of _all_ your classes to just 3 members: "Item", "Ref" and "Action". This is bizarre. The view of strong typing as an enemy of the programmer is completely wrong; it was actually introduced to help control side-effects of changes to class interfaces. Another example is the virtual database layer the author proposes: while it is true that it lets the programmer switch the underlying database engine very easily it is based on relatively low-level SQL concepts and suffers from the least common denominator syndrome. I would say that for many, if not most, application a better way is to design a higher-level database abstraction layer that takes advantage of the engine capabilities. Usually it is not much more code and the performance difference might be enormous.

Finally there is the cost aspect. You cannot really adopt the method partially; either you are in or out. And you must really have almost unlimited resources to develop this kind of framework yourself. Which makes you think that it would be reasonable to get the framework developed by the author already. Which is just what the author wants and which is strongly reinforced with the last chapter of the book that literally sounds like a Ginzu knife sales pitch. Is it worth it? You have to decide yourself. For me the extreme programming advice: "Always build the simplest thing that works" has worked very well so far...


Rating: 1 out of 5
05
worst book I ever read
I am working on a metadata driven project. So I ordered this book.
I opened the book, It it looks like a 2 year VB programmer view on software development. Lots of Ideology and preaching, but nothing concreate. like "Interfaces should never be changed" which is fine, nobody changes an interface for the fun of it, but what you do when you have to.
or "make your classes small, with small interface, and make as few classes as possible". again, it is like saying it is better to be healty,handsome and rice than ill, ugly and poor.

My main reason for the purchase were the rave reviews that apear on this page.Re-reading them - they do not seem authentic to me.


Please note: Checkout and payment processing is done safely and securely through Amazon.com.
Prices (as shown) are subject to change without notice and cannot be guaranteed.
Email this page to a friendEmail this page to a friend Correction/Comment/Suggestion Regarding This PageCorrection/Comment/Suggestion Regarding This Page?
©2003 CertificationWorks.com  Privacy Policy | Terms of Use | Contact Us
Microsoft Corporation in no way endorses or is affiliated with CertificationWorks.com.  All trademarks displayed on this website are trademarks of their respective owners.