写点什么

《LightSwitch 揭秘》一书作者 Alessandro Del Sole 专访

  • 2012-07-19
  • 本文字数:3612 字

    阅读完需:约 12 分钟

Visual Studio LightSwitch 是微软重新进入非专业软件开发市场的举措。术语“非专业”可能有些让人混淆不清,事实上微软的目标包括除了 IT 以外的各种职业和行业的专业人士。微软意图让没有编程经验或者编程经验不足的人士能够使用该工具快速开发出简单而有效的行业应用程序。当应用程序随着业务的发展变得复杂时,开发者可以学习 C#或者 VB 语言以添加不能通过简单声明实现的业务规则。

我们采访了《Microsoft Visual Studio LightSwitch 揭秘》一书的作者 Alessandro Del Sole,以便更深入地了解该开发工具。

InfoQ:首先,我想问的是:“谁应该使用 LightSwitch 呢?”。之所以从这个问题开始,是因为 LightSwitch 原本就是想让非专业开发人士能够自己构建出满足他们需求的业务应用程序,然而目前整个市场基本上还是现行的 Visual Studio 用户占主导。

Alessandro Del Sole:我觉得 LightSwitch 确实是个不错的开发工具,它试图获得大量开发者的青睐,包括专业和非专业开发人员。我个人认为目标用户量非常巨大,下面就让我来论述一下我的观点。 对于刚接触开发的人来说,他们能够利用轻便 RAD 环境的优势快速构建出业务应用程序,而不必关心技术的具体内部实现(当然,知道一些背后的相关技术对开发还是有一定帮助的)。对于专业开发人员来说,他们不必自己实现数据访问层、用户界面以及其他 LightSwitch 提供的样板代码,同时他们还可以利用 Silverlight 或者 WPF 的相关知识实现其他特性以增强应用程序功能。

LightSwitch 向 VB 6/VBA 开发人员和 Microsoft Access 用户提供了很简单的方式,让他们可以将业务系统迁移到.NET 技术平台。所以我并不奇怪,对 LightSwitch 感兴趣的人大多是当前的 Access 用户。

我认为(这在书中我也谈论过)LightSwitch 的目标是:想要或者需要开始快速构建应用程序而没有相关编程背景的人;想要提高生产率同时能够通过自定义特性和扩展来增强应用程序功能的专职或者专家级开发人员;想要以合适的付出将应用程序迁移到更加先进的技术平台上的现行 VB 6/VBA/Access/FoxPro 用户;需要构建出能满足特定业务需求的内部应用程序的公司或部门,这种情况包含了非专业的编程人员或高级用户。有许多”高级用户“并非专业开发者,但他们在工作当中使用 Access 或者 Excel 以自动化一些处理,后来某个时候他们被叫去构建部门级别的分布式应用程序,而在这种场景下 LightSwitch 就是一种很好的技术选择。

毫无疑问,非专业开发人员可以使用 LightSwitch 构建以数据为中心的个人应用。我很想说,除了 LightSwitch 的目标用户,LightSwitch 任何时候都是处理数据的最好选择,只有其他不同目的人们才需要考虑使用其他.NET 技术去构建应用程序。

InfoQ:考虑到 VB 6 和 FoxPro 已不复存在,所以并不奇怪,曾使用这些技术的人会寻找不必像.NET 编程那么复杂的替代品。但 Access 仍是可用的产品,并会定期更新。所以怎样才能诱使 Access 用户转移到 LightSwitch 呢?

Alessandro:确实,VB6 和 FoxPro 开发人员很可能通过 LightSwitch 比较容易地迁移到.NET 平台(以及后续其他更加先进的技术)。事实上目前世界上仍然有大量的 VB 6 开发者,VB 6 具有令人惊讶的寿命,但我绝对鼓励所有 VB 6 开发人员从特定业务角度出发来挖掘 LightSwitch 的潜能。

微软的 Access 产品特别受欢迎至少有以下几个原因:数据存储在单个文件中,这样你很容易把它移动到任何地方;产品的易用性:方便的用户界面以及使构建以数据为中心的应用程序更加容易的所谓向导。Access 的劣势是,它不是业务领域的合适工具,因为它只允许部分网络化,多用户不能同时写数据库,没有并发检测,或者说,它缺乏对分布式基础架构的支持。同时,一般 Access 数据库大小不能超过 2GB。你可以自定义业务逻辑,但你必须懂得 VBA,而这在.NET 框架 4.x 时代就显得太落伍了。

LightSwitch 既能在单机下工作也能在分布式环境中工作,所以如果目前你是一位习惯于在自己的机器上自动化你的工作的 Access 开发者,那么使用 LightSwitch 和 SQL Server 仍然能够实现同样的目的。同时,如果需要,LightSwitch 会让迁移到分布式环境更加容易。LightSwitch 关注于业务逻辑,它相当高效,它使用了微软的最先进的技术,它能让你构建以数据为中心的、运行于桌面电脑、网络以及云端的应用程序,所有这一切都使用相同的工具实现。同时,因为它使用 SQL Server 作为内置数据库引擎,所以不存在 2GB 的大小限制!

InfoQ:您认为 LightSwitch 的最大限制是什么?

Alessandro:从开发者的角度出发,我认为有个地方有待讨论以使 LightSwitch 更加优秀:从现行 SQL Server 数据库中导入存储过程。目前要使用存储过程的话你必须创建 WCF RIA 服务然后传递一个实体数据模型,就像我书中所说的。如果这个过程能够自动化的话,在导入数据库对象时是极其有用的。这可能确实是个限制,但考虑到 LightSwitch 的强大功能,这点瑕疵是可以接受的。另一个限制是缺乏内建的报表工具。但我不认为这是一个技术上的限制,然而当人们考虑迁移到 LightSwitch 时它就被看成了技术上的问题,这也是开发者社区所思考的问题。我可以毫不忌讳地告诉你,大量的 Access 用户在考虑迁移到 LightSwitch 时把报表功能当作了重要的比较点。我只是部分同意这是一个限制,因为你至少还可以导出数据为 Excel 表格,同时存在一些免费的扩展(比如 Office 集成包)可以让你很方便地创建基本报表。我常说如果 LightSwitch 具有报表功能,价格就可能会高出很多,这样就不利于那些不需要报表功能的用户了。所以结果是你可以自由地决定你要花多少钱来选择第三方的报表工具。报表的限制是有不错的解决方案的。 :-)

InfoQ:很多 IT 部门担心“迁移的时候出问题”。这在以 Access 和 Excel 为基础的项目上经常发生,当它们累积得太臃肿以至自身平台承受不住的时候,你会发现它们已经无法容易地被转化为通常的.NET 或者 Java 应用程序了。LightSwitch 有关注这个问题吗?

Alessandro:LightSwitch 要求开发者或者高级用户对项目的发展方向胸有成竹。这是 LightSwitch 和其他开发工具的重要不同之处。我个人认为 Excel 是具有业务分析能力的令人惊奇的强大电子表格,但它离作为一种结构化的数据源还相差甚远(把它视为结构化的数据源是许多人犯的错误)。使用 LightSwitch 你就拥有了能够适应项目发展的强大基础架构,同时这意味着你使用上了.NET 技术。你在真正意义的数据库上进行开发,能使用相关规则和约束。这意味着你需要多花些精力,但随着项目的发展好处是你能够自如地添加数据源和新特性。真正的问题应该是缺乏内置的报表和图表工具,但通过从 Visual Studio Gallery 下载相关扩展就可以轻而易举地解决这个问题。有些扩展功能可是免费的呵。

InfoQ:您能描述一下使用 LightSwitch 的最理想场景吗?

Alessandro:LightSwitch 具有多种功能,它的理想使用场景不仅只有一个。通常人们都需要拥有主要用于和数据打交道的应用程序,这用 LightSwitch 来实现是非常理想的。

在这里我想说有一种理想的场景是运行于跨部门网路的业务性分布式应用程序;比如我曾使用 LightSwitch 为我工作的公司构建部门级应用程序,它让我节省了很多时间。

下一版本的 LightSwitch 会包括对开放数据协议(OData)的支持,这意味着你能够将你的 LightSwitch 数据开放给其他支持此协议的客户端程序,比如移动应用程序或者业务分析工具。

InfoQ:对于刚刚着手使用 LightSwitch 的人来说,其最大的障碍是什么呢?

Alessandro:对于使用 LightSwitch 的新手来说,这取决于他们的编程经验。我想如果是编程的绝对新手,那他们的障碍一大部分就是通常的程序概念(比如数据类型,什么是数据库等)。对于具有编程经验的人来说,我想象不出他们在使用 LightSwitch 会碰到什么困难。如果人们需要解决的问题和 LightSwitch 本身这个工具的能力定位相一致,那 LightSwitch 将使问题的解决事半功倍。

关于被采访者

Alessandro Del Sole 从 2008 年开始被授予微软最有价值专家(MVP)称号。他在全球 VB 社区中具有很高的知名度,同时他还是意大利 Visual Basic 技巧网站的社区领头人和意大利首个 LightSwitch 社区(LightSwitch 技巧)的合伙创建人。Alessandro Del Sole 是“Visual Basic 2010 揭秘”和“Visual Studio LightSwitch 揭秘”两本书的作者,同时他还是 MSDN Visual Basic 开发者中心的主要贡献者之一。他喜欢写关于.NET 开发的文章,喜欢在他的意大利文和英文博客上写博文,喜欢录制技术指南视频。Alessandro 在 2009、2010 和 2011 三年连续被授予年度 MVP 称号。你可以在网上论坛或新闻组中找到他的身影。

查看英文原文: Interview with Alessandro Del Sole, Author of LightSwitch Unleashed


感谢侯伯薇对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2012-07-19 00:002530

评论

发布
暂无评论
发现更多内容

博睿数据一体化智能可观测平台入选中国信通院2022年“云原生产品名录”

博睿数据

智能运维 博睿数据 One 智能可观测平台

实例讲解将Graph Explorer搬上JupyterLab

华为云开发者联盟

人工智能 GES

若干互联网暴露面的收敛及处置建议

穿过生命散发芬芳

7月月更 互联网暴露

越来越多地使用 SLO 来实现可观测性|DevOps

观测云

可观测性

宝,运维100+服务器很头疼怎么办?用行云管家!

行云管家

云计算 运维 服务器 云管

透过华为军团看科技之变(六):智慧公路

脑极体

使用环信提供的uni-app Demo,快速实现一对一单聊

环信

即时通讯 uni-app集成 环信im

九章云极DataCanvas公司蝉联中国机器学习平台市场TOP 3

九章云极DataCanvas

BlocProvider 为什么感觉和 Provider 很相似?

岛上码农

flutter ios 安卓 移动端开发 7月月更

AirServer2022最新版功能介绍及下载

茶色酒

AirServer AirServer2022

vue-axios(三)

小恺

7月月更

认识线程

zarmnosaj

7月月更

6月刊 | AntDB数据库参与编写《数据库发展研究报告》 亮相信创产业榜单

亚信AntDB数据库

数据库 AntDB 国产数据库

云小课|3种常用Git工作流推荐

华为云开发者联盟

后端 开发 华为云

毕业总结

流火

毕业季 | 华为专家亲授面试秘诀:如何拿到大厂高薪offer?

华为云开发者联盟

面试 工作 offer 大厂 毕业

精耕渠道共谋发展 福昕携手伟仕佳杰开展新产品培训大会

联营汇聚

重磅披露!上百个重要信息系统被入侵,主机成为重点攻击目标

青藤云安全

网络安全 网络攻击防御

【6.24-7.1】写作社区精彩技术博文回顾

InfoQ写作社区官方

优质创作周报

linux下清理系统缓存并释放内存

入门小站

Linux

Windows11 ARM版本安装Python环境

IT蜗壳-Tango

IT蜗壳教学 7月月更

云服务器ECS夏日省钱秘籍,这次@老用户快来领走

阿里云弹性计算

阿里云 云服务器ECS

如何使用物联网低代码平台进行个人设置?

AIRIOT

低代码 物联网 低代码,项目开发

微服务服务稳定性治理

阿泽🧸

微服务治理 7月月更

混沌工程平台 ChaosBlade-Box 新版重磅发布

阿里巴巴云原生

阿里云 分布式 云原生 混沌工程

华为云专家详解GaussDB(for MySQL)新特性

华为云开发者联盟

数据库 云计算 后端 算子

4. 对象映射 - Mapping.Mapstercover

MASA技术团队

C# .net 微软 框架 Framework

【直播回顾】战码先锋首期8节直播完美落幕,下期敬请期待!

OpenHarmony开发者

Open Harmony

纪念成为首个DAYU200三方demo贡献者

坚果

HarmonyOS OpenHarmony OpenHarmony应用开发 7月月更 harmony

从零开始学 MySQL —数据库和数据表操作

C++后台开发

MySQL 数据库 中间件 后端开发 C++开发

架构师毕业总结

凯博无线

《LightSwitch揭秘》一书作者Alessandro Del Sole专访_.NET_Jonathan Allen_InfoQ精选文章