关闭

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

5038人阅读 评论(0) 收藏 举报
分类:

茂迪公司一次打造跨平台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

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:149697次
    • 积分:1763
    • 等级:
    • 排名:千里之外
    • 原创:7篇
    • 转载:29篇
    • 译文:9篇
    • 评论:31条
    最新评论