2015-10-19 66 views
2

这里有一个广泛的问题...企业框架 - UWP比。网络

假设您已经构建了一个企业级框架,在.Net(Microsoft)范围内有一些富客户端,并带有一个WCF后端。现在,想象一下,企业框架的UI技术已被弃用,以支持UWP。

前端替换的选择基本上是:UWP,Web(HTML)或其他一些富客户端技术。

你会如何去决策过程?

我个人倾向于一个富客户端,用户群是一个专属用户群。我的意思是,用户的IT部门很乐意在机器上安装必要的运行时环境,等等。这通常不是微软技术的问题,并且在组织推出Windows的10年时间内这不会成为问题10.

但是,现在人们告诉我,网络已经走过了很长的一段路。人们告诉我,JavaScript框架变得非常复杂,并且基本数据绑定等的低级别JavaScript几乎是不必要的。

过去我真的被ASP等网络解决方案关闭了,但我确实明白技术已经向前发展,而且我明白微软一直致力于ASP.Net v Next,这可能确实很好?

问题不在于你会选择什么?但是,你会考虑什么因素来决定哪个平台去寻求

回答

1

我已经决定在这里回答这个问题,因为我们有更多的时间来调查并查看不同的选项。原来的问题原来是一个有趣的问题。纯粹的UWP和Web并不是唯一的选择。还有一个Xamarin Forms作为一个选项,包括UWP,Android和iOS。作为个人偏好,我倾向于将Xamarin Forms作为客户端,而不是任何其他开发平台,因为它支持三种开箱即用的操作系统:Windows 10,iOS和Android。

我相信问题的答案是:如果需要的话,您应该只开发一个Web应用程序。您的用户群是由谁更喜欢浏览器而不是应用程序的人组成的?您的潜在用户是否希望避免下载应用程序?你的应用程序非常简单,你希望人们能够很快潜入吗?您是否能够在不访问摄像头,位置和推送通知等情况下离开?如果你可以回答这些问题,那么我认为你应该选择HTML 5/JavaScript。但是,如果您的用户群很适合下载应用程序,并且您认为您的应用程序需要比大多数浏览器应用程序更复杂的用户界面,我建议您将Xamarin Forms作为首选选项。到目前为止,我们在Xamarin Forms上取得了非常好的成绩,而且我们的Xamarin Forms应用程序的UWP版本与我们第一次尝试UWP应用程序一样好。

注:我应该在这里给Web Assembly(http://webassembly.org/)一个荣誉提及。微软,苹果和谷歌等所有大型科技机构正在考虑这项技术。有一天,它可能会使浏览器中的原生应用程序再次成功部署。

+0

感谢您的更新。阅读原始问题和答案非常有趣,然后看看发生了什么。 –

+0

谢谢。虽然这仍然是一个很大程度上基于意见的答案,但我觉得总体趋势是转向原生应用程序,而不是HTML/JavaScript应用程序。我可能完全错了,关于是否构建Web应用程序或本地应用程序的决定仍然非常依赖于环境。 –

+0

我认为这也取决于公司熟悉的工具。一家网络公司将倾向于Cordova/React.Native和一家微软C#公司向Xamarin迈进。 –

2

Opnion设在这里的答案...

在采取任何项目的特定技术的决定在于许多因素。我可以引用你的特定场景的两个专业。

1 - 客户端采用。客户很容易使用/安装它?他们需要支付某种许可证?它可以运行在客户已经拥有的所有平台/设备上吗?

2 - 市场采用。你的同事很容易采用它?很难找到/聘用经验丰富的开发人员?我们需要支付某种许可证?我能否相信它是一种长期存在的技术?

的回答你的问题可以HTML

它不仅已经得到了很多的势头在市场上,它生病需要几年的时间来改变它,即使今天有人(大如MS或谷歌)提出了一些新的(更好的)东西放在桌子上。

另外,如果有人在MS市场部下周说,通用Windows平台或WinRT必须死亡它死亡(像Silverlight)。所以我没有采用一些新技术,只是因为一些大玩家告诉我这么做。

网已经走过了很长的路要走确实如此。那些日子你可以用JS + HTML + CSS做很多令人惊叹的事情。它的正确用法/体系结构允许你将你的应用程序运行在个人电脑,平板电脑和手机上(在设备之间以最低的成本进行连接),并且能够在任何可以访问互联网的任何设备上运行。

我建议你赶上并学到很多关于Web服务,JSON,JS库如jQuery,萨米和一些不错的东西像淘汰赛,SPA,棱角分明,节点等

编辑答案评论

要不开始一个健谈的评论我会在这里回复。是的,你的问题和评论带来有趣的问题。为了让后代可读,我们都可以编辑答案和问题来组织它。

Silverlight。怎么不爱它?在与闪光拼凑后特别。这是一个耻辱MS拉下插头(死在地狱MS首席执行官)。当MS让它死的时候,我正在计划一个大型的网络应用SL是我的第一选择。为什么我改变了主意?那么2年来开发该应用程序,并在最后有多少浏览器病态相处支持它? SL社区很棒,工具很棒,但浏览器可以说,明天嘿,不能保证它继续工作。

.Net和MS平台。我是一个.Net开发人员。我从beta版开始就采用它,首先与winforms一起工作(在以前的生活中,我是一个自豪的Delphi开发人员)。过了一段时间才开始使用网络。我也从事传统的ASP(糟糕的时代),并从一开始就热爱.Net ASP。

今天你可以在几乎任何地球上的任何PC上运行.Net应用程序。不完全适用于所有手机/小工具。对于浏览器而言,纯HTML + JS + CSS会更好,因为它很轻量级(完成正确)。我们还可以将很多东西移到客户端,只在需要时才让它打到服务器。 .Net应用程序可以做到这一点,当然,但不会像定制的HTML + JS + CSS一样轻松。

事实上,我相信你可以用.Net做任何事情,如果你的团队中有一些优秀的开发人员,你可以做很棒的事情。但取决于项目,它在HTML或PHP或Ruby或Java等方面做得更好(并且更便宜)。

事实上,在以前的一家商店中,我们发现(同一个PHP和.Net团队)指标,很多项目)小型项目在PHP中的效果更好,在.Net中效果更好(如果我记得一个中型项目可以是4k到6k人/小时)。

这里的要点是。你真的必须阅读很多有关HTML,CSS,JS,SPA,Angular等的内容。为了生活出色的网页应用程序,今天的挑战并不是因为我们可以做什么(我们可以做任何事),而是我们可以做什么。 DDD,MVC,MVVM。测试框架等人的节点未来(概念至少)。

在过去的几年中,Web开发发生了真正的变化,并且与客户和用户的期望相符。今天,没有人不愉快地等待超过2秒的页面加载。每个人都希望可用性成为项目从头开始的榜首。您的应用程序必须具有响应能力等(不要在此使用Dilbertian管理流行词,只是指出可用性在今天非常重要)。 不要忘记,即使它是一个沉闷的B2B应该只能被洞穴男士使用,但是每个人都希望它成为一个美丽的(从图形设计师的角度来看)。

即使您坚持使用经典的.Net应用程序了解(许多)选项,也可以带来更广阔的视角。

+0

我猜对于UWC问题1)的答案是肯定的。它很容易安装(应用程序商店),它将需要一些最低限度的应用程序商店费用,它将在我们的客户习惯购买的现有Windows手机上工作。 –

+0

2)寻找经验丰富的开发人员不难,因为基本上UWC利用了微软开发人员非常熟悉的两种c#和XAML技术。但是,显然不能保证这将是一个长寿命的技术,这是本文的重点。你已经用Silverlight –

+1

击中了头部其实,它提出了一个有趣的问题。 Silverlight在水中已经死了,但我们的Silverlight应用程序为我们提供了很好的服务。如果有人问我,“知道你现在知道什么 - Silverlight将会死亡,你会在Silverlight上创建应用程序吗?”。而且,答案很明显是的。我们已经在Silverlight上运行了5年,在技术被淘汰出市场之前还剩下几年时间。 –