File size

File size

File size

File size

File size

824.3 MB

"Visual Studio LightSwitch is a new tool aimed at easily building data-driven applications, such as an inventory system or a basic customer relationship
management system."

Typically, when making difficult things easy, the price is solving a set of very
difficult technical problems. In this case, the LightSwitch engineering team needed to remove the necessity for non-programmer domain experts to think about application tiers (e.g., client, web server, and database) when constructing data-bound applications
for use in their daily business lives. LightSwitch is designed for non-programmers, but it also offers the ability to customize and extend it, which will most likely be done by experienced developers (see Beth Massi's Beyond
the Basics interview to learn about some of the more advanced capabilities).

This conversation isn't really about how to use LightSwitch (or how to extend it to meet your specific needs)—that's already been covered. Rather, in this video we meet the architects behind LightSwitch, Steve Anonsen and John Rivard, focusing on how LightSwitch
is designed and what problems it actually solves as a consequence of the design. Most of the time is spent at the whiteboard, discussing architecture and solutions to some hard technical problems. This is Going Deep, so we will open LightSwitch's hood and
dive into the rabbit hole.

Great! Well done guys I must (again) give a tribute to man who did this game changing approach 20+ years ago in "PC FAND" development tool, started at CP/M machines to process large datasets (in fact, government level agriculture datacenters in centrally
planned economy ...) and then ported to MS-DOS and then, unfortunatelly NOT ported to windows - obviously quite impossible in "one man show" scenario. He didnt use objects, there was no no ORMs, entities, DSLs, model-driven (not to mention -centric) development
and many other buzzwords. In fact, here was declarative not only models (with at this level computed fields as you have now, validation checks, recordset change triggers...) and screens (not so much formalized UX but its controls layout at least, scripted
by imperative pascal-like code - used also anywhere else), but here was also declarative reports and streaming-based semiparallel "change" queries (called "transformations" - so NO sql yet, no query optimizations, but low-memory consuption "jobs" with events
attached even on grouped-by property changes to produce many output resultsets streams in single pass over all input streams), also role based permissions, network concurrency using file-locking added later etc. So it is great to see now similar approach properly
extensible even on 2 and 3 tier architecture, Azure and so on! I always dreamed about this, knowing that its really difficult to implement this beast, as it must be done as close to SQL server as possible to be effective, togeter with integrated client based
UI, so your app-server runtime and whole simplifying of even so complex deployment is really amazing, not to mention true object orientation, first-class CLR/JIT powered languages even for model calculated fields, great extensibility points at right places...
In fact I am shocked to see this done . But the man who did it first for me was Gert Klötzer .

Very cool. Thanks folks. Charles mentioned using Rx in the calculated fields discussion. If the Data types were wrapper types, Rx could seem to handle this nicely. Just need to figure out how to inspect expression to figure out which data types to hook
into for a general solution.

Everyone who builds the multi-layered bussines applications which goes a little beyond the simple master-details forms, arrives at a framework which has to take care of these things.

That's not something for everyone. I came under the impression that the people building visual studio & tools had no real world experience with this stuff. I always wondered what the dynamics/navision people thought about that.

And here you are.

After building my own orm/frameworks/viewmanagers/service layers and what not, I alway wanted to make it complete with some designers/wizards & tools to make building the app itself and bussiness rules a little bit easier.

That's what lightswitch really is. And off course there will be trade offs, and it's a 1.0 (still beta) version.

But it looks very very promising ! And not only for the ex-foxpro/ms access/clipper developers!

Remove this comment

Remove this thread

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums, or
Contact Us and let us know.