您的位置:首页 > 移动开发 > Android开发

如何正确的对待Android学习

2016-08-17 14:43 253 查看
    
 有些人一辈子就那么过去了,从来很少思考复杂的问题,也没有什么思想。而写作是需要灵感和思想的,只是会写字,写不出来好的文章。同样的道理,有些人学安卓,只是掌握了基本的API,却怎么也写不出好的程序来。然后他们不知道应该怎么做,但是又不甘落后,索性把iOS开发、Windows开发,各种程序API都学一遍,而始终只能做出来一些很简单的东西。

 

在我看来安卓开发有两层意思,第一层意思就是安卓自身的开发知识,而第二层意思是安卓、移动应用乃至各种软件开发的编程思想。这两者的关系,就像文字和写作的关系一样。 小学的时候我们就在学习识字写字,要说这件事难不难,显然只要肯花时间就不那么难,毕竟我们小时候都是这么过来的,你能看懂我写的这个,说明你也是认识字的。我们识字的目的是干什么呢?目的是看懂别人写的东西,以及自己写东西表达想法传达给别人。会识字而没有太多思想的人,写不出来好文章;而有思想的人,不需要学会很多汉字就能写出不错的文章,还可以随时查字典。

 安卓开发首先最好有Java基础,没学过可以先简单的去学习一下。推荐两本书《Head
First Java》和《Java编程思想》(英文名《Thinking in Java》)。Head First系列的书,特点是简单好懂,适合入门(最好有其他语言编程的基础),但讲解不是很深入,对于理解力够强的人,看起来比较费时间。而后者是Java语言公认的权威经典书籍,如果想全面的学习Java,可以看后面这本书,但是难度偏大,尤其是对于没有学习过面向对象编程语言的人来说。

 
    下面是我看的另外一篇文章中规划的学习Android,借鉴一下,我也要开始有计划地去学习新的东西。

 1基本知识学习

 
 
首先是搭建开发环境,通常用Java+Eclipse+ADT插件+Android SDK,也可以用Android Studio,具体方法网上有很多参考资料。开发环境中集成了安卓虚拟机,如果你没有安卓设备,可以在虚拟机上运行程序,但是速度较慢,不支持一些传感器等硬件设备;如果有安卓设备,最好在实际设备上运行程序。

    然后是掌握安卓四大组件,尤其是Activity和Service及其生命周期(BroadcastReceiver和ContentProvider可以后面再学),Intent实现界面的跳转,Menu菜单;然后是安卓的常用控件、XML布局(Layout)等。这些是安卓最基础的东西,可以通过编写Demo程序的形式去学习。网上有个文档《深入浅出Google
Android》,里面就通过一个简单的安卓程序实例,介绍了这些知识。

 
2 进一步学习

 
 
到此安卓最基本的基本API就算是学习完成了。然后还有SQLite数据库、各种传感器、动画控制、多媒体、网络通信、GPS定位、电源管理等API,这些API可以先只作简单了解,直接去写实际项目。你可以试着写一些简单应用,例如计算器、音乐播放器、小游戏,或者你所感兴趣的简单应用(一开始难度不要太大)。需要用到的API再去详细的学习,逐步锻炼编程能力,代码要规范,尽可能符合Java命名标准,程序代码尽可能写成模块化的,提高代码复用。记住,完成同样的功能,在保证程序结构清晰、模块化、规范化的基础上,代码量越少越好。

 
3 深入学习,并开发高质量应用

 
 
而再到后来,你可能需要更深入的去学习安卓,这个时候可能需要了解一些安卓系统Java层的源码(安卓底层用的C和C++,上层开发包中API用Java编写)。可以在网上下载到,然后在Eclipse中设置关联源代码。需要查看源码时,直接用Eclipse转到函数定义,就能看到安卓系统的Java层源码了。另外你可能需要学习《操作系统》《设计模式》《软件工程》等前面提到的课程知识,加深对软件开发相关知识的理解。

   比如你可以自己独立完成或者与别人合作做一些项目,可能涉及到多线程、大量数据的处理、JNI的使用、自定义控件和界面布局,识别特殊的用户手势,游戏引擎等等(可以参考网上的开源项目,以及平时我们用到的各种手机应用)。

   我的建议是,后期做安卓应用的时候,直接做功能完整的应用,并且要经过反复测试调整;尤其是要注重用户体验,还有程序的规范性、稳定可靠性(例如Java中空指针的判断、try...catch的使用、线程通信等),这样才能很好的学习移动开发的精髓。如果你只是为了学习那些API,做出来一些体验很不好的Demo级别应用,只能说是学会了安卓,却没有学好。

   或许你会觉得有些应用功能很简单,要不了多少时间就能做好,实际上远不是那么简单。一个优秀的安卓应用,不仅用户界面和体验非常好,而且程序规范、稳定可靠、执行效率高,可扩展性强,想做到这一点,非常的不容易。一个优秀的商业安卓应用,主要的代码实现阶段,可能只占了整个应用开发时间的1/3甚至更少。在开发之前,有不少的时间是在进行应用的策划安排;而在开发完之后,又需要大量的时间,对应用进行反复的测试调整更新,最后才能被发布,从而安装到我们的手机上。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: