终结篇,有朋友看了,啊?不是吧?是的,这是本系列Windows Phone文章的最后一篇,本文将对本系列文章做一个简要总结,并根据个人想法向大家提一些建议和对开发者一些忠告,但愿能有一点点参考价值。
大家知道了,WP8发布预览版了,虽然先前版本不能升级到WP8,有一点可惜。但我们不要像那些不冷静的人那样,一听到消息就骂,至少,我们还看到后面还有一句话:WP 7.X的应用可以在WP8上面运行,其实这也是一条好消息来的,为什么?自己想一下吧。
新手机年年有,到时睺,WP8一批新手机出来,仍然也有人会买,不管怎么说,不是所有人都只升级手机,那些打算买新机或者还不有买新手机的消费者,他们依然会购买新产品,现有用户或手机不能升级,并不一定会影响后市走势,你想,又不是全体人类都需要升级,只能一部分人罢了。
说实话,我也有一台三星WP7.5手机,不能升级到WP8,我看到这条消息,基本没什么反应,不能升级那就不升级呗,只要手机还能用就行了,做人何必过于极端呢?
所以,有关传感器和地理位置API这些我就不打算写了,因为这些东西,按照微软一向的作风,不会封装得很复杂,而且统一性很好,不管是生产厂商还是开发者,都是同一套API,就样就省了测试和发布成本,不必为不同的API版本发相应的程序。
如果说WP8和前面不兼容,微软也说是硬件上不兼容,我可以推断,不兼容的部分,应该就是传感器这一块了,而其核心部分,如Silverlight和XNA框架,我相信都是不变的。只要我们把不变的都掌握,就能做到“以不变应万变”。
在本系列文章中我已多次强调,这些博文仅仅起一个引导作用,因而不可能会细分到每个知识点上,也不可能具体到哪个类怎么用,这样就没有意义。对于编程,不管是学习,还是在实际应用中,自己独立探索才是王道,别人顶多就给你提供一些指引或提示罢了。
下面,我根据个人对编程的认知,给大家提点建议吧,尤其是初学者,如果你觉得适合你,不妨试试。或许每个人的学习方法都不一样,我只是总结自己的学习方法。
1、基础很重要,这句话基本是废话。主要是语言基础如C#,框架基础,不用说了,就是.NET框架。这些是开端,另外,学习WP开发,我认为WPF的基础最重要,只要把WPF学好,Silverlight就可以马上攻克,接着,WP开发你基本不需要新知识了。
2、代码必须多写。这一点不知道强调多少次了,但是,很多人就是做不到,总喜欢拿到别人的代码就抄,写了第一遍,出错了,就不再去尝试,总是半途而废。
如何对待编程这门艺术呢?看清楚了,我从来不说编程是技术,因为那是低层次的;如果你有志要成为编程高手,你必须把编程当作一种艺术,而且要从这种艺术中悟出一套属于你的理念。
(1)千万不要把编程给神化了,什么意思呢?很多编程初学者,我问他们为什么要学编程?有些人会说:因为电脑高手总给人一种神秘感觉,总感觉这些人很牛B,崇拜他们,所以就来学编程。如果是这样,我明确告诉你:你可以回家睡觉了。
(2)也有些人说:成为电脑高手,似乎特别容易受女孩子关注哦,因为很多女孩子会经常遇到这些问题,女孩懂编程的比较少,因而她们有可能会认为,懂编程的男孩了不起。如果你学习编程是为了泡妞的话,我也告诉你:你可以收拾行李回家了。
(3)有些人很高热情,跑来跟我说:周先生,我很想学编程,真的,千真万确,你就教教我吧,你当我老师好吗?我多付一点学费也无所谓。
说实话,这段话真的会打动我,看似很诚垦。结果你猜怎么着?三分热度都不够,不到一个星期,那些热情,那些豪言壮语全没了。
(4)有一回有人说要学编程,我单独跟谈了一会儿,然后,我打开电脑,给一小段代码,我让他照着原来的代码输一遍,不允许使用复制/粘贴。过了几分钟,他终于把代码“抄”完了,我一句话不说,直接把输的全删了,不保存;接着我叫他再照着刚才的代码输一遍;等他输完了,我再删掉,让他再输……结果,往返三四回,他就受不了,明显他是没有持之以恒的精神,所以我劝他还是学其他的吧。
不知道大家看了上面的几条“案例”后有什么感觉?“只要功夫深,铁株磨成针”,并不是说学习开发对耐心有特别的要求,而应该说,无论你学习什么,耐心和恒心都重要,哪怕你学习Photoshop也好,道理都是一样。
所以,我们在学习编程的道路上,遇到问题是肯定的,但是,不要连代码都懒得去写,而应该要多写,代码写多了你才能真正掌握,不动手实践,是永远也搞不懂的。
3、有问题多看书,多找书,或者在网上搜索,或者查在线帮助文档,不要动不动就去问别人,这样做无疑是对自己的一种轻视。
4、不要急于求成,知识要一点一点地累积。
5、要明确现实意义和长远利益。现实意义是,学习开发相关技术,才能求得一份理想的工作,才能有收入来源。有了收入才能有生活,有了生活你才能追梦;而长远利益则是,当你的知识和能力积聚到一定程度,说不定你不必一辈子当码农,为他人打工,你很有可能成为领域内的领军人物,那个时候,才算是你人生价值发挥作用的开端啊。
那么,对于移动开发,尢其现在这个领域表面上看发展很快。
首先,我要向各位几盆冷水,千万不要忘记1929-1933国际上发生了什么——大潇条。那么,这场巨大的经济危机是怎么发生的?它又是从哪开始的?美国。对,就是美国。为什么?说到底,我只想到一个专业名词——泡沫。
大家要冷静地看清楚了,移动市场的泡沫已经出现,而且越滚越大,甚至有些偏离了客观规律。
不知道大家了解过21世纪初中国的互联网泡沫没有?上Google搜一下吧,对你有好处。
我们如何对待移动开发?既然有泡沫形成,我们不理它了?不行,移动互联网显然是一个趋势,一个新生的市场。那么,有人会问,刚才你不是说泡沫吗?怎么现在又说是趋势呢?不矛盾吗?
你觉得矛盾吗?不矛盾,很简单,前几年有一个词很热,但在我看来,那个词简直是个笑话。什么词呢?你肯定听过——全民炒股。
我问你,证券投资是不是现代经济活动的必要元素?这是肯定的;炒股有错吗?没有。但全民炒股就不正常了。我说得难听一点,就是跟风,而且是盲目跟风,甚至有不少连证券是啥都不知道,居然还去开户。
你说,这难道不是很可笑吗?所以,你明白了,趋势和泡沫不是一回事。
移动开发会成为IT行业一个新的分支,它不应该也不能取代一些现有的东西,不然,就违 背自然规律了。比如,你说平板会取代PC吗?正常情况下,应该二者并存,但是,如果PC被平板取代,那个时候,我估计那些科幻电影都变成现实了,人类的科技文明不是为自己带来幸福,没准哪天反而为人类带来沉重的灾难,就像电影里面的机器人一样。
因此,对于移动开发,我认为,不论个人还是企业,都应该投入这个市场,但是,不要把所有希望都寄托上去, 千万不要把老本也压上去,不然,将来有一天,你会落得很悲惨的下场。当然,这只是我个人观点。
其实,我们平常听说长辈或老师说的一句话,很简单,但蕴含深刻,什么话呢?就是这句:凡事都有个度,不要过“激”了。
另外,我建议大家把目光放广一点,经常发现很多公司的程序员,真的知识太“贫血”了,他们只知道工作上的事情,只知道写程序,而其他的常识或知识都不懂。别说这些,甚至有不少程序员连编程知识都不行,更别说其他了。
千万不要以为走出大学门口就不用学习了,这种想法是严重错误的,尤其是我们搞IT的,大家更明白,这个行业发展速度那是快得不得了,如果你不能保持终身学习,及时充电的劲头,那我估计,再过上两三年,你就不属于这个星球的了。
什么叫开发呢?有“开”也有“发”,所以这个行业是货真价实地需要创新的,不然你就不是搞“开发”的了,不能成为阻碍人类文明进步的XXX哦。
创新靠什么?思维;思维从哪里来?你的脑子;脑子如何弄出新思维?靠的是灵感;灵感从哪里来?从你对客观世界的深度剖析;怎么样才能触发灵感?博学。
我们不能把编程孤立,总认为它与其他事物没有联系,那是不能创新的,提高个人的编程水平,不仅仅要在代码上花功夫,还要广泛涉猎其他知识,从其他知识中提练出有用的东西,应用到编程哲学上。
有些时候,有些问题想来想去都想不出个方案来,没准你可以从其他事情,或者从其他客观事物(比如小说、音乐、电影等)中得到启发,因而问题反而解决了。有些时候,你苦思冥想都想不通的事情,反而在一些偶然或巧合中找到了答案,这也不奇怪。总之一句话,多学有益,不学百害。
最后,对于移动开发,总结一句话:见机行事,趁虚而入,但要做到全身而退;适当投入,切勿陷进去不能自拔。
好了,祝各位朋友生活愉快,编程快乐,快乐编程,认真学习,学有所成,学有所用,成就煇煌事业。
端 午 节 快 乐