原文:Windows Phone开发(1):概论

Windows Phone是微软公司开发的手机操作系统,这里就不多介绍,和Android,iPhone一样运行在智能手机上,相信大家都很熟悉。

目前来说,Windows Phone(以下称WP),显然其市场还不及IOS,上线的应用也不如安卓和iPhone那么多,不过,我们作为开发者,应该比一般用户清楚,WP的优势也不比其它的手机操作系差的,当我认真去了解WP后,我们肯定会“别有一番滋味”的。
因为是开发技术文章,因此我们仅仅是从开发者的角度去认识它,我们既作为开发者,我们更应该比一般用户拥有独特的眼光。
Windows Mobile的确做得不怎么样,也许微软觉得在过去没有什么竞争压力,所以,WM一直做得很一般。
或者可以这样说,iPhone的强大是从WM的失败中吸取教训,但是,WP与WM几乎是没有什么联系的,因为WP是向后不兼容的,它是经过重新设计和开发的,WM下的程序是不能在WP上运行的,哪怕它们二者都是基于.NET CF框架,但是完全不同的。
那么,做手机应用开发,成本高吗?iPhone就不要提了,开发IOS应用的成本,恐怕你卖几个应用都填不回来。不过,Android和WP开发是不用掏钱的,安卓使用Java作为主要开发语言,而WP可以使用Visual Basic和C#作为主要开发语言。
安卓的界面布局基于XML,布局方式有线性布局(横向 OR 纵向),表格布局等;WP是基于XAML布局的,相对而言,比XML更强大,而XML中你是不能使用扩展标记的,但XAML可以,有过WPF开发经验的朋友就很清楚了。
要进行WP开发,只要安装一个Visual Studio 2010 Express for Windows Phone就可以了,一次安装,好可进行WP开发,非常方便,不像Android那样,要安装JDK,Eclips,SDK等,还要安装ADT插件,那太麻烦了,而且Google那个在线安装太慢了。VS for WP你既可以在线安装装,还可以下载ISO离线安装,非常人性化。
此开发工具是免费的,你一分钱也不用花,就可以拥用一套强大的手机应用开发工具,只要你注册后,把密钥填到VS注册窗口即可获得授权,你不用花一分钱。
那么这个WP开发工具包含什么?
1、Visual Studio 2010 学习版(以前叫速成版),你别小看这个版本,已经很强大了。
2、Express Blend For Windows Phone,这是一个设计工具,可以像使用平面设计软件一样做UI设计,相信玩过WPF的朋友不会陌生。
3、SDK工具,其中最常用的是模拟器,我们不可能说每次调试程序都要拿一台装有WP的手机放在桌面上,再说,像我这些穷人家的孩子,哪里买得起智能手机啊。
安装就不用我介绍了,和其它VS版本的安装方法一样,你就等它一路安装完成就是了,什么也不用做,前提是不报错的情况下。
你可以选择英文版,或者繁体中文,暂时貌似没有简体中文版,不知道为什么,可能微软歧视中国大陆,因为我们经常用盗版系统。
还有一点要注意的是,不是任意配置的电脑都能安装的,不然,我就不必去买新电脑了。
1、处理器,当然越高越好,建议主频也别低于2.0 GHz,不然你就等着卡吧。
2、内存,官方说要3G,其实骗人,2G就行了,当然,越大越好。
3、操作系统Windows Vista以上,建议Win7。
【一些建议和快速入门技巧】
经常会听到“快速入门”,“速成”等词语,我比较喜欢将其称为“短期突破”。
你一定问,可以短期突破吗?当然可以了,呵呵,不过,这个短期并不是说两个小时这么短。要想快速掌WP手机应用开发,首先你应该具备以下能力:
1、VB.NET或C#基础,推荐C#,毕竟VB.NET很少人用,至少在国同是这样。
2、对.NET框架,类库熟悉,了解CLR(只是了解一下就可以了)。
3、面向对象开发思想,这其实多余的,主流的开发语言哪个不面向对象。其实这些要求是通用于安卓手机应用开发。
4、XML的基本知识——XML的声明规范,树形结构概念,命名空间是啥。
5、最好懂一些Web,为什么呢,Silverlight的样式和模板与CSS有点像。
6、WPF基础,这个是必须的,因为XAML就是WPF的布局方式,包括依赖项属性等东东都是在WPF来的,WPF学好了,WP开发你会很轻松。
7、Silverlight,上面说要掌握WPF基础,这里,Silverlight是必须掌握的,而且最好要全面熟悉和掌握,这是重点中的超级重点。WP就是用Silverlight或XNA进行开发的,如果你Silverlight学不好,就等于WP开发你不用学了,不是吓你。

Windows Phone开发(1):概论的更多相关文章

  1. Kinect for Windows SDK开发学习相关资源

    Kinect for Windows SDK(K4W)将Kinect的体感操作带到了平常的应用学习中,提供了一种不同于传统的鼠标,键盘及触摸的无接触的交互方式,在某种程度上实现了自然交互界面的理想,即 ...

  2. Erlang在Windows上开发环境搭建全过程讲解目录

    我会按照下面的列表来一步一步讲解,在windows来开发Erlang所用到的一些工具,和知识.我会不停的添加和修正. Erlang运行时环境 Erlang开发工具选择 Rebar来构建,编译,测试,发 ...

  3. Windows Service 开发,安装与调试

    Visual Studio.net 2010 Windows Service 开发,安装与调试 本示例完成一个每隔一分钟向C:\log.txt文件写入一条记录为例,讲述一个Windows Servic ...

  4. windows原生开发之界面疑云

        windows桌面开发,界面始终是最大的困惑.我们对前端工具的要求,其实只有窗体设计器.消息映射,过分点的话自适应屏幕.模型绑定.能够免于手工书写,其实这个问题并不复杂,但VS不实现.QT语法 ...

  5. Windows驱动开发(中间层)

    Windows驱动开发 一.前言 依据<Windows内核安全与驱动开发>及MSDN等网络质料进行学习开发. 二.初步环境 1.下载安装WDK7.1.0(WinDDK\7600.16385 ...

  6. 欢迎参加MVP主讲的Windows 10开发线上课程

    博客地址:http://blog.csdn.net/FoxDave Windows 10 Developer Readiness - Powered by MVPs - 由微软最有价值专家(MVP)主 ...

  7. Windows Phone 开发起步之旅之一 平台环境的搭建

    最近大家都在写博客园的技术文章,按耐不住了,也把自己平时学习中遇到和学习到的一些东西写出来,供大家分享也好,自己留个纪念也好,有个可以查看的东西. 言归正传,随着微软对Windows Phone的投入 ...

  8. 无责任Windows Azure SDK .NET开发入门篇一[Windows Azure开发前准备工作]

    一.Windows Azure开发前准备工作 首先我们需要了解什么是 Azure SDK for .NET?微软官方告诉我们:Azure SDK for .NET 是一套应用程序,其中包括 Visua ...

  9. [Windows驱动开发](一)序言

    笔者学习驱动编程是从两本书入门的.它们分别是<寒江独钓——内核安全编程>和<Windows驱动开发技术详解>.两本书分别从不同的角度介绍了驱动程序的制作方法. 在我理解,驱动程 ...

随机推荐

  1. Lucene.Net 2.3.1开发介绍 —— 二、分词(二)

    原文:Lucene.Net 2.3.1开发介绍 -- 二.分词(二) 1.2.分词的过程 1.2.1.分词器工作的过程 内置的分词器效果都不好,那怎么办?只能自己写了!在写之前当然是要先看看内置的分词 ...

  2. Shell 基本运算符

    Shell 和其他编程语言一样,支持多种运算符,包括: 算数运算符 关系运算符 布尔运算符 字符串运算符 文件测试运算符 原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 ...

  3. ExtJs4 笔记(5) Ext.Button 按钮

    id="li2"></li> <li id="li3"></li> </ul> </div> ...

  4. 在phpmyadmin后台获取webshell方法汇总整理

    方法一: CREATE TABLE `mysql`.`xiaoma` (`xiaoma1` TEXT NOT NULL ); INSERT INTO `mysql`.`xiaoma` (`xiaoma ...

  5. Delphi XE中类成员的访问权限(新增了strict private和strict protected,还有automated)

    Delphi XE中类成员的访问权限共提供了6个关键词来用于限定访问权限:public.private.protected.published.automated strict private . s ...

  6. ezw证件照芯片压缩算法

    相关网站:http://m.blog.csdn.net/blog/kimwu/12654517 http://blog.sina.com.cn/s/blog_4be751690100bsgb.html ...

  7. 设备管理 USB ID

    发现个USB ID站点,对于做设备管理识别的小伙伴特别实用 http://www.linux-usb.org/usb.ids 附录: # # List of USB ID's # # Maintain ...

  8. 多项式相乘(C语言)

    //两个多项式的系数f分别存在x[]和y[]中,下标即为次数,*Max表示本多项式最高次数 int MX_double( double x[], int xMax, double y[], int y ...

  9. [置顶] C++为什么是C++而不是++C

    来自<C++ primer> 问:C++为什么是C++而不是++C 答 :C++之名是Rick Mascitti在1983年夏天定名,c说明它的本质实在C语言演化而来的,”++“是C语言的 ...

  10. ImportError: No module named _sqlite3 - 代码分享

    ImportError: No module named _sqlite3 - 代码分享 ImportError: No module named _sqlite3 作者:86市场网       点击 ...