[案例分享] 茂迪公司一次打造跨平台 App 实时掌握生产线信息

转载 2015年12月24日 14:48:58

茂迪公司一次打造跨平台App 实时掌握生产线信息

Xamarin + Visual Studio 延续既有 .NET投资 快速实现跨平台

 

茂迪股份有限公司致力于研发以及创造高质量的产品与服务,包括太阳能电池、太阳能模块、太阳能逆变器、以及太阳能发电系统,茂迪秉着这样傲人的成绩蝉连多年全球前十大太阳能电池制造厂。然而于太阳能制造厂中的高效能模块生产线,所仰赖的核心应用系统 - MES 系统十分关键,藉由其提供的自动化生产实时信息,使茂迪能有效监控从太阳能电池、模块和逆变器制程中每一阶段之质量管控。

 实时掌握产线信息 - Fab 生产线应用 App 化

“为了将生产实时信息快速地提供给公司的管理阶层及产在线的同仁,以辅助其决策,我们在内部早已建立了Fab Portal网站可以呈现FAB的各项生产KPI信息,但为了配合管理阶层在外或假日时的管理需求,再加上生产线的信息是非常实时且重要的,例如良率指 标,因此打算将一些重要的生产实时信息在手机上也能查询”茂迪公司制造信息部生产信息课的邱仲麟课长提到。

一开始是采用Web的开发方式,也就是开发一个行动装置专属的网站,完成后虽然 一样只需开启手机的浏览器即可连上该网站查询相关生产端信息,但操作经验并没有针对不同平台的特性做调整,另外因主管出差在外其网络联机及浏览速度上也有些限制,再加上考虑未来要将原有Fab Portal的功能逐步移植成行动版,因此打算改写并同步开发不同平台的原生App。当我们收到这个需求时,光是将这两个平台iOS和Android的开 发环境建立好已经花了不少时间,正当我们决定面对这个挑战,也买了书并且想拿出考联考的精神时,在此时得知Xamarin的产品,因此开始评估这个可以 C#/.NET的技术开发app,并且一次跨三个平台 (Windows/iOS/Android)的技术。


  图示 - 制造信息部生产信息课课长邱仲麟说明:“Xamarin 让我们用熟悉的VisualStudio 工具及C#/.NET来开发不同平台的App,开发的工时及成本至少省下2分之1”



图示 - 制造信息部生产信息课课长邱仲麟说明:“考虑到MES是我们的核心系统,公司需有自行开发及维护的能力,考虑到若要重新培养不同平台开发技能非常耗时,Xamarin让我们可以延续既有的.NET技术投资并延用熟悉的技术及工具,一次满足三个平台 iOS/Android/Windows App 开发”

 

用Xamarin开发App容易多了 - 熟悉的技术大幅减少2分之1的开发时程

透过Xamarin使用C# 语言开发App,不必特别请同仁去学习Android的Java开发环境,也不用熟悉iOS上的Objective C开发语言,Xamarin的进入门坎比较低,缩短了学习的时间,且相关的开发技术及教育训练资源也比较多。我们搭配 Visual Studio 开发工具与 Team Foundation Server(TFS) 版 本管控,开发人员熟悉既有的开发环境,在团队的程序开发规范上也能够依循既有的.NET开发方式,而不用在不同的环境下使用各种工具、软件及不同的开发技术。邱仲麟指出:“透过Xamarin + Visual Studio 开发跨平台app所需的时间,对我们来说也相对地减少很多。相反的如果是分开来开发,还需要考虑大幅增加的学习成本及后续维护的不方便,有了 Xamarin就不用担心这个问题,既可以跨平台开发又可以用C#维护实在是方便多了,经我们评估后,开发的工时及成本至少省下2分之1”。

 

效能及操作经验一样优 - App就是要有Native原生效果

当初在考虑选择一些跨平台的App开发工具时,我们也考虑了坊间相关的产品,包 括一些将HTML/JavaScript程序封装作法的产品,但测试结果在效能及操作经验上不甚理想,再者许多平台的API对映上无法做到原生的效果,最 后发现整合性与学习的容易性都没有Xamarin来得好,而且相较其他软件的价格,Xamarin又经济实惠,更重要的是它开发出来的app就是原生 native的,效能与用各平台的原生开发方式比较上丝毫不打折,这就是我们要的!

在企业应用开发中,最常使用的功能不外乎数据存取(Data Access)、各式报告及图表的开发功能,Xamarin也提供了一些组件,再加上开发技术又是熟悉的.NET/C#的语法,像是存取数据库的语法,这些都是.NET开发者每天在使用且熟悉的技能。

 

实现跨平台App - 共享的逻辑 专注UI 设计

一开始进行app项目时,由于负责Android平台的同仁还有其它项目要完 成,无法进行开发,此时Xamarin的好处就是可以共享一些商业规则的程序,像我们许多机台实时生产信息已经是Web Service 化了,因此要存取这些数据,在Visual Studio 中就可以很直接的加入项目,达到数据存取层的共享。因此我们让负责iOS的同仁先进行开发,完全没有影响到既有的项目开发进度,由于底层很多东西都是共享 的,共享处不用写两套程序,同仁只需专注在各平台上的UI设计及了解不同平台的API,因此不会有重工的现象,还能分担彼此开发的Loading。

另外像与AD 整合的身份验证机制很重要,因为资安及权限的因素,在App进入画面就需验证身份,所幸透过原本.NET Framework就已提供了相关API,就无需为了登入机制伤脑筯,这些可以共享的逻辑都可透过.NET来实现并让iOS/Android或 Windows开发项目引用,这都大幅降低了开发企业专用的app门坎。

 

面对行动化,延用.NET技术建立App的开发能量

邱仲麟在说明建立App开发能力时提到:“考虑到MES及Fab Portal是我们的核心系统,公司需有自行开发及维护的能力,才能保有竞争力并面对需求不断变化的挑战,我们一开始就只考虑自行开发,而不是外包的方式”。但自行建立app开发能量却困难重重,尤其是不同平台的开发技术、工具皆不同,若要重新培养则十分耗时,Xamarin很棒的地方是一次可以跨三个 平台 (Windows/iOS/Android),再加上又是熟悉的开发环境及技术,不用重新找不同领域的人才能负责此任务!

这次我们透过昕力信息提供的教育训练及顾问服务,以及技术支持文章替我们省了很多力气。在上完基础课程后,开发种子人员已经可以了解Xamarin的运作架构及开发模式,搭配昕力信息所提供的技术支持服务,一些进阶的应用像是对本地端数据或Web Services存取的方式,以及与第三方组件的整合,替我们节省了很多时间。

邱仲麟提到,由于已经有既有网站的基础,我们将逐步地将Fab Portal服务搬到App行动平台上,透过Xamarin让我们更有信心可以迅速完成项目,将实时的生产信息化为决策辅助工具,让公司更有竞争力。另外 一些.NET的新技术,例如ASP.NET SignalR可用于即时机台信息更新,还有Web API是一个更轻量化的HTTP共享服务,方便不同平台及行动装置存取,这类的应用相信在导入Xamarin后可让我们的Fab Portal行动化应用更加完整,提供给公司使用者更实时且更方便的操作体验。


转载自:微软中文技术部落格


CSDN软件商城:http://mall.csdn.net/tool

电话:010-57410251    邮箱:sw_service@csdn.net    QQ :2714137330

Android 一键分享功能开发教程

最近在开发一个社交平台的app需要用到分享功能,本来想自己开发的,在网上花了很长时间查了很多教程结果却不尽人意,无意中看到还有类似的开源组件友推,可以[url=http://youtui.mobi/]...
  • u011252193
  • u011252193
  • 2014年09月11日 16:03
  • 1595

Android中实现APP文本内容的分享发送与接收方法简述

谨记(指定选择器Intent.createChooser()) 开始今天的内容前,先闲聊一下: (1)突然有一天头脑风暴,对很多问题有了新的看法和见解,迫不及待的想要分享给大家,文档已经写...
  • panhouye
  • panhouye
  • 2016年12月16日 20:27
  • 1710

分享到微信的消息跳转到第三方APP

最近有个需求,要使分享到微信的内容点击直接跳转到我们自己的APP,实现邀请的目的。 如果分享出去一个HTML5页面,然后其他人在微信中点击,由于微信屏蔽了第三方APP的跳转,所以如果在HTML5中使用...
  • gyjjone
  • gyjjone
  • 2015年10月29日 20:04
  • 3588

致 Embarcadero 客户及经销伙伴信函

亲爱的女士、先生们, 我是 Randy Jacops ,IDERA 公司的首席执行官,您们可能已经看到新闻报导 IDERA 公司最 近并购了 Embarcadero Technologies 公司...
  • EmbarcaderoChina
  • EmbarcaderoChina
  • 2015年10月23日 14:20
  • 2780

如何用迅雷或QQ旋风下载百度云上的资源?

作者:陈虫虫 链接:https://www.zhihu.com/question/22085759/answer/106974086 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转...
  • u013127850
  • u013127850
  • 2017年07月19日 11:12
  • 789

联迪商用面试后记

前几天,和小伙伴们结群去参加了联迪商用的宣讲会。话说,宣讲会是从下午4:30开始的,在宣讲会结束后休息十分钟就进行笔试。记得开始笔试的时候大概已经5:40了,这个时候饿得有点发冷了,没办法,还是硬着头...
  • u010485442
  • u010485442
  • 2015年10月18日 15:53
  • 1465

APP首页底部Tab

【声明】 欢迎转载,但请保留文章原始出处→_→ 生命壹号: http://www.cnblogs.com/smyhvae/ 文章来源: http://www.cnblogs.com/...
  • wang597260662
  • wang597260662
  • 2016年03月30日 18:01
  • 599

打造自己的Android聊天软件(socket篇)

其实打造属于自己的聊天软件很简单,今天我们讲学习如何简单的写一个群组聊天app,通过sockets实现。这不是唯一的方法,但却是最快和最简单的。最好和最有效的方式应该是使用推送通知(push noti...
  • gusgao
  • gusgao
  • 2016年08月23日 12:23
  • 23971

你见过最惊艳的一些 PPT 或者一些演讲者与 PPT 成功配合的案例?

你见过最惊艳的一些 PPT 或者一些演讲者与 PPT 成功配合的案例? 惊艳的 PPT 符合答主的审美观就可以,成功案例分析一下哪里成功,配图 ...
  • u013248434
  • u013248434
  • 2017年04月15日 19:58
  • 3287

Android | 将内容分享到自己的app

教你如何让别人可以把内容分享到自己的app!
  • guojiel
  • guojiel
  • 2016年06月16日 17:05
  • 1563
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[案例分享] 茂迪公司一次打造跨平台 App 实时掌握生产线信息
举报原因:
原因补充:

(最多只允许输入30个字)