none
advantages and disadvantages of LS RRS feed

  • Question

  • Can anybody explain about advantages and disadvantages of Lightswitch in real application development environment and end user?
    Monday, December 10, 2012 7:30 PM

Answers

  • The main advantages of LightSwitch are:

    • It provides forms-over-data (this is LightSwitch's bread & butter)
    • It's very quick & easy to do simple jobs, such as CRUD (Create/Read/Update/Delete)
    • It uses the latest technologies (MVVM, EF, MEF, LINQ, Silverlight, SQL Server), without the user needing in-depth (or often any) knowledge of those technologies
    • It uses many "best practices" (most of which are simply done for the user, behind the scenes), such as 3-layer applications, data/presentation separation
    • It allows non-developers to quickly create applications, with little or no programming experience
    • All the repetitive, tedious, complicated "plumbing code" is done for you
    • For simple applications, the only code you need to write is for business logic
    • It's extensible (control/shell/theme/data source extensions)

    The main disadvantages are:

    • It was not designed for very large applications (though some people are still creating them anyway)
    • It can be seen to lack flexibility (can usually be overcome, but things need to be done the "LightSwitch way")
    • It can be hard for developers, who are familiar with other technologies, to get used to doing things the "LightSwitch way"

    I'm sure there are others that I've missed.


    Yann - LightSwitch Central - Click here for FREE Themes, Controls, Types and Commands
     
    Please click "Mark as Answer" if a reply answers your question. Please click "Vote as Helpful" , if you find a reply helpful.
     
    By doing this you'll help others to find answers faster.

    • Proposed as answer by Olaf HelperMVP Tuesday, December 11, 2012 5:36 AM
    • Marked as answer by SYSMAN2007 Tuesday, December 11, 2012 7:51 AM
    Tuesday, December 11, 2012 12:30 AM
    Moderator

All replies

  • The main advantages of LightSwitch are:

    • It provides forms-over-data (this is LightSwitch's bread & butter)
    • It's very quick & easy to do simple jobs, such as CRUD (Create/Read/Update/Delete)
    • It uses the latest technologies (MVVM, EF, MEF, LINQ, Silverlight, SQL Server), without the user needing in-depth (or often any) knowledge of those technologies
    • It uses many "best practices" (most of which are simply done for the user, behind the scenes), such as 3-layer applications, data/presentation separation
    • It allows non-developers to quickly create applications, with little or no programming experience
    • All the repetitive, tedious, complicated "plumbing code" is done for you
    • For simple applications, the only code you need to write is for business logic
    • It's extensible (control/shell/theme/data source extensions)

    The main disadvantages are:

    • It was not designed for very large applications (though some people are still creating them anyway)
    • It can be seen to lack flexibility (can usually be overcome, but things need to be done the "LightSwitch way")
    • It can be hard for developers, who are familiar with other technologies, to get used to doing things the "LightSwitch way"

    I'm sure there are others that I've missed.


    Yann - LightSwitch Central - Click here for FREE Themes, Controls, Types and Commands
     
    Please click "Mark as Answer" if a reply answers your question. Please click "Vote as Helpful" , if you find a reply helpful.
     
    By doing this you'll help others to find answers faster.

    • Proposed as answer by Olaf HelperMVP Tuesday, December 11, 2012 5:36 AM
    • Marked as answer by SYSMAN2007 Tuesday, December 11, 2012 7:51 AM
    Tuesday, December 11, 2012 12:30 AM
    Moderator
  • For me one big disadvantage is that the future of Lightswitch (especially the SL Client) is not clear...

    robert

    Tuesday, December 11, 2012 8:04 AM
  • Yeah,Rober

    It's one of the big disadvantage and according Microsoft policy in past this company leave alone customers and designed technologies very simple.

    Tuesday, December 11, 2012 10:18 AM
  • Does all the hard things dead easy and does all the simple things dead hard !

    Tuesday, December 11, 2012 11:00 AM
  • One point that I really dislike is the fact, that it simpyl does not always work as it should! I do not want to think about the hours of time wasted to find solutions or workarounds for some crappy "errors".

    Just one example: if you do stuff it is shown be Beth inside the How do I videos, then you can get unexpected error messages when a user opens a form. (Beth simply added a data query to the screen to get a record inside an add/edit screen. Instead of that data query you can simply get the record in code and avoid racing problems.

    So it might be a quite nice solution for non developers / part time developers. But professional developers should simply use other technologies and keep full control (a lesson that we learned).

    Konrad

    Tuesday, December 11, 2012 1:08 PM
  • I agree but why not fix the bug and extend LS so that also for us "real" developers it could be useful?

    In "normal" development with WPF/Winforms... there are so many repetitive tasks that it costs a lot of time and I think that have not to be

    one Problem - which I see in also in other MS technologies - is that MS stop at a very low point and instead of making things better they "reinvent the wheel"...

    robert

    Tuesday, December 11, 2012 1:17 PM
  • Hi Konrad,

    "So it might be a quite nice solution for non developers / part time developers. But professional developers should simply use other technologies and keep full control"

    I'm afraid that I can't agree with that statement. I'm a professional developer (in that I develop software for a living, & have done for almost 30 years), & I find LightSwitch an excellent platform to develop with. Sure there are some things that could be "better" or "easier", but that will come with time. All technologies have their own quirks & limitations.

    I've developed with Turbo Pascal, MS Access (from version 2 through 2003), WinForms, & WPF. I had no prior Silverlight experience. However, LightSwitch has made my development that much easier, by taking care of all the tedious, repetitive "plumbing" code, & is definitely my development platform of choice.

    Many of the problems that I see "professional developers" having is a result of not understanding the limitations imposed by some of the technologies used by LightSwitch, or not understanding why LightSwitch does things in a particlular way, or just being set in their ways with how they're used to developing with other technologies, & expecting development using LightSwitch to be exactly the same. LightSwitch often requires a different way of thinking than many of those other technologies.

    Those who fight against the "LightSwitch way" will undoubtedly have difficulties, those who work with way LightSwitch works (as I attempt to do) can dramatically cut development time, concentrating on what the application needs to do, rather than how to do it.


    Yann - LightSwitch Central - Click here for FREE Themes, Controls, Types and Commands
     
    Please click "Mark as Answer" if a reply answers your question. Please click "Vote as Helpful" , if you find a reply helpful.
     
    By doing this you'll help others to find answers faster.

    Tuesday, December 11, 2012 1:41 PM
    Moderator
  • I agree but why not fix the bug and extend LS so that also for us "real" developers it could be useful?

    ....

    robert

    Yeah we can report bugs to fix thats, but after n year (n is often less than 5 years) Microsoft  will said Lightswitch goto garbage and now you can use another alternative development application and all of spend time to learn, devploy and support of designed applications under LS go to waste.

    Experience has shown me that it is going well with the rotten rope

    Tuesday, December 11, 2012 1:46 PM
  • that's also my experience

    Tuesday, December 11, 2012 1:49 PM
  • Hi Robert,

    bugs in LS: I agree that these should be fixed and I am quite sure that the team at Microsoft is doing that. But you have a high complexity behind the stuff you build that you simply cannot really control.

    In my eyes there are a lot of repetitive tasks in LS, too. I simply dislike all the automatism - after updating the database entities, stuff inside screens can be gone....

    Yes, first it seems quite nice and quick. My first application on a complex database took like half a day. But then I had to fullfill more and more requirements that got harder and harder. Also trying to find solutions to some parts that I would simply call an error. In the end it took at least the same time to build as a ASP.Net application would have taken!

    But that is my personal view and maybe we get some more points e.g. unit tests for LS in the future ...

    Konrad

    Tuesday, December 11, 2012 1:56 PM
  • Hi Yann,

    maybe I should have thought better how I said something. I didn't want to say that someone who is using LS is not a professional developer.

    And of course: When I decided to use LS on a project, I did a lot of research including the How Do I videos. (And sorry: I am still mad that someting in there could simply be rated as wrong! When Beth created a screen to add and edit a record she had to use code - so it would even be simpler to not have another data query inside the screen! I am really happy that someone pointed out that there might be racing problems.)

    I am earning my money with development of applications, too. ASP.Net with MVC3 can also create quick pages on existing data. We even started to throw out all the grid controls from a 3rd party because we do all the sort, group, export, ... in our code (which is quite simple and straight forward!)....

    And the standard application that you get with a few clicks is not always what the customer wants. So I ended up with the C1FlexGrid and some code to get some parts done with it (so user settings are saved but the filter should not be saved).

    A lot of stuff is possible and I think I did some really advanced stuff already. But I cannot get used to the fact that LS might throw out stuff after updating the database (It happens that a column was missing after an update. No idea why LS did that - the whole table was unchanged! I double checked that - which was easy because I am using a SSDT for my database!)

    I agree that it is much better than access. And I hope that Microsoft will continue the development of it. But when I started with VS2010 I should have known better because it was really buggy! With VS2012 it is useable in my eyes but you need to know some things.

    But you might be right: My view might be to negative. But I am simply disappointed in the stuff that Microsoft did in the last months. And the information from Microsoft is quite bad - I would like to see more information but they simply do not do enough. (But this forum is really good. I got great help multiple times!)

    Konrad

    Tuesday, December 11, 2012 2:34 PM