PDA项目总结,准备阶段

PDA项目总结,准备阶段

从何处入手?从何处开始准备?准备哪些知识?

王延成 (ybygjy#gmail.com), 作者/编者

2010 年 07 月 14 日(整理)

文章主要内容:记录、描述、总结PDA项目开发过程,借此对自己在这方面知识做一个回顾,也希望能对大家有帮助。

  09年底还在项目现场的时候,得到公司来年会有基于.NET的项目的消息,需要转战.NET了。


  从那会起,一有时间就会看一些关于.NET的资料,并且我们基本上确定开发语言是C#,为什么是C#呢?因为人家硬件设备厂商那边提供C#的二次开发包,后来知道了人家也有C++的,C++/C#哪个更容易上手,我个人感觉是C#,因为之前我一直在做Java。当出差回来的时候也快要过年过假了,去了趟中关村图书大厦架子上满是印着C#字眼的书, 幸亏来之前在网上查了下学习.NET大家普遍认同推荐的几本书,一本C#高级编程(第6版)、一本是框架设计(第2版):CLR Via C#,看到那本C#高级编程真的如网上所述厚实,看了两页目录当时没买,买了本CLR Via C#这是转向.NET以来的第一本书吧。


  过年期间书是带回家了,记得也翻了几页,知道了一些基础知识、基础原理、名司。知道了原来.NET也有个类似VM的东东,原来还有托管非托管之说,原来还有个IL,原来还有CLR、CTS、CLS、原来依托托管机制可以C#、C++、VB混用、原来。。。。 其实也就是一点点的学习思考体会,慢慢的就好起来了。过年后回到公司,开始正式的进入了项目准备阶段,需求调研、寻找设备供应商、会有一些项目可行性、项目发展规划的文档评审过程。


准备

对PDA这块的准备

1、PDA的基本信息,例如它主要针对哪些应用?基本的技术指标有哪些?主要应用在哪些领域?

2、对PDA的开发过程总体上有个认识,了解PDA的开发过程中,所用到的技术手段,哪些问题在初期最好就应该先考虑到。

3、这块我的办法就是名词整理/关联整理,什么意思呢?就是在查看一些关于PDA开发或者是其它的一件事务时,我们会接触到属于那一块领域所特有的名词、术语啥的。有针对性的把这些名司关联起来,弄懂或是说了解它们单独的意思,组合在一块 又能代表某一类事物的概念定义。




回页首
对项目前期的准备

1、了解、学习业务,这很重要。对业务有所了解可以让我们较好的提供技术与业务结合那所谓的平衡点吧。对业务的有效理解可以省去我们很多时间,并且还能保障我们做的是有用功。

2、站在个人、全局角度仔细考虑下,我要做什么?我在此项目中主要做什么?我的同事主要做什么?他也是这样想的么?

3、概括一句话就是,搞清楚自己应该承担的那份责任,搞清楚一些拿捏不准的事情可以与谁确认、找谁讨论或获得帮助。

开发相关主题
  • 开发语言的学习
  • 数据库的选型与学习
  • 1、 SqlCE SqlCe是SqlServer的一个精简实现,选它的原因很简单,在我看到一些MSDN关于智能设备开发时提到了SqlCE.

    2、 SqlLite 后来在与PDA设备厂商交流时,人家告诉我还有SqlLite,貌似它更加简洁更易被人使用.

  • 小结

    虽然高手都常说语言只是工具而已,但是我们必须得承认,人家之所以那样说是因为人家的技术修为到了那种层次,而那种层次是我们面前的一盏灯.好像到了好像还差的远。

    1、C# .Net Framework WinCE5.0,现在回味起来很难想象如果当初不是C#而是C++会是个什么样子.

    2、C#的学习,其实学习C#和学习Java的最大不同就是,我不能再一行行的敲代码了,再也不会有给我很长时间然后去学习的机会.时间不等我,所以我的学习策略也跟着变动,比如我对Java比较熟,可以以Java的思维方式参照着来做C#的项目,参照对Java理解来学习C#,学习C#的委托/学习C#的线程/学习C#的语法/学习C#的HelloWorld/学习C#的线程处理机制/学习C#OLEDB/学习C#异常,等等好像又列出来一堆点呀,这会我买了两本书,<框架设计(第2版):CLR Via C#>,,第一本书的内容个人感觉是原理性的知识很重要,第二本书是面向我这种应用级别的,到目前为至第二本书给我的帮助剩过第一本书,但我坚信当第一本书我能读的非常懂的时候,第二本也没有太大价值了.

    2.1 在学习C#时有一点我感觉非常重要就是它的继承接口机制/委托机制,我可以初步的给目前的项目一个小总给,继承把控全局,线程+事件处理机制解决难点.OK,真的就这些核心技术使我们完成了项目初期技术定型阶段.

    2.2 MSDN帮了我很大的忙,开发入门以及对那些基础知识的运用掌握等,都是看那上面对相关知识点的讲解/小示例或源程序.然后在后期的开发阶段自然更加离不开它了.

    3、 对选哪个数据库主要还得跟我们现在的技术水平/各方面的资源{人员,开发进度}

    4、因为我们是要在.NET Compact Framework2.0上做应用,真的是很多函数都给精简了,这点编码时注意点就可以了。

获取帮助
  • 厂商的帮助,内容主要会是
1、首先提供开发测试用的设备
2、提供相关的API封装文档,有代码最好,这样会省很多力气。
  • 其它帮助,比如周围有朋友以前接触过,有朋友的朋友也搞过类似工作,适时请教人家点拨还是非常有必要的。
  • 小节
  • 1、别忘了我们自己,无论能获得多少帮助,结果还得是我们自己才最清楚自己想要什么,总不能把人家拉过来全职帮咱干活不是(其实这也是个不错的选择)。

    2、说到测试用设备,一般厂商会提供一两台规格较低的设备算是样机,不过对咱们开发影响不大,顶多算旧设备内部硬件平台都一样(各厂商都有针对自己硬件设备的一个硬件功能API), 最起码得让厂商提供两台设备吧,一台怎么说也不够用.

  • 一些体会
  •   万事开头难,在思路/开发目的/等等各个方面都迷惑不解理不清头绪的时候,寻求一些帮助可以达到事半功倍的作用,自个在哪里研究,第一搞的自己身心疲惫,第二如果长时间这样下去,会有两个极端向北极和南极那样,要么全理清要么一锅粥彻底把自己绕进去,绕进去后依靠自己的能力再走出来又得花费时间.这样的结局就是:

    1.周围的同事/领导看到你每天都异常的努力,但是只有输入没有输出,换位思考一下如果你主管一新项目看到开发这边每天都加班很晚但愣是拿不出任何东西,你是什么样的感觉.除了你本人其它任何人都心里没底.

    2.把自己绕进去并不完全是件坏事,这个阶段可以更加基础/详细的掌握积累这方面的经验,解决问题的过程就是我们自己成长的过程.但要注意时间也就是跳出去的时机,要不然项目咋弄.写了这么多,给这块再写个小结:

  • 什么都没有的情况并不可怕,正好是我们又一次煅炼的机会学习的机会.
  • 在学习新知识的时候,专进去或主动或被动的绕进去其实咱大家都能容忍但一定要记得适当的时机要出来,需要我们好好的把握这个度.
  • 由上面内容可以得出,在适当的时候获取别人的帮助非常关键,厂商的技术支持/朋友的点拨对我们较快的理清整个开发思路非常关键非常重要.



回页首
开发环境准备

这块一个主要问题就是得确认厂商那边人家设备支持.Net Compact Framework版本,比如2.0、3.0、3.5,这块在跟人家厂商交流、沟通时就应该注意的。

1、VS2008,它基本集成了开发所有工具。
2、同步工具

2.1 XP系统下使用ActiveSync

2.2 Win7、Visita系统是Window Mobile Device Center

3、PDA机器的winCE系统上需要装个数据库( 当然这得看具体需求到底用不用数据库,不过一般做应用系统都应该有的吧。),无论是SQLCE或是SQLLite。
小结

1、在建立工程项目时一定记得注意.NET Framework版本问题

2、关于SqlCe在PDA上的安装也有很多情况的,比如到后期项目需要发布个自动安装包,如果厂商那边不提供预安装数据库,那么我们还得打到安装包里。

3、相关文档地址:

  • 介绍说明:http://msdn.microsoft.com/en-us/13kw2t64(zh-cn,VS.90).aspx
  • SqlCE下载地址:http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=e497988a-c93a-404c-b161-3a0b323dce24
  • SqlCE联机丛书:http://www.microsoft.com/downloads/details.aspx?FamilyID=1ff0529a-eb1f-4044-b4b7-40b00710f7b7&displaylang=zh-cn
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值