android应用开发,首先需要的是Java基础,吐槽一点的是,在老湿指导下,我只学完Java基本语法就开始了Android的开发,导致后来的开发过程中走了很多弯路!甚至后边得边看Java边写代码,造成效率低下,半年搞一个项目,后来看看,就三千行的代码,现在再去做,估计一周就能搞定了。
话说一年了,老湿的评价还是刚刚入门啊,突出表现在Java基础不扎实,毕竟我靠android更多些,和同室的web开发的同学还是有很大差距的,所以,近期需要去补充|Java的相关内容,今天先来总结下学习Android的需要Java知识,如果有什么不对,请大家补充。
第一就是Java的基本语法(Language fundamental),也就是最基础的部分,定义变量,流程控制等等。我的入门语言是c,所以理解起来不是那么困难的。
第二就是面向对象的思想,类和对象(Classes and Objects),方法(Method),成员变量和实例变量(Static and instance scope),接口(Interface),重载,构造器,继承等等内容。我当时就是学到这个地方就被抓壮丁干活了,这就是开始了第一个项目!说多了都是泪!
我觉着下边就是需要补充的知识了。
第三就是public,private,protected三种修饰符的理解,其实可以归结到面向对象之中,单独拿出来是因为我理解的并不好,需要注意一下!
第四是Java集合(Collection)与泛型(Generics),我的这个地方还是有点纠结,主要是很多基本类型还是说不清,目前好了点,常用的Map,HashMap还可以,但是Set我还是搞不清。看来后边需要加强了!
第五是多线程与并发(Threads and concurrency control),这个在android开发中深有体会,用的非常多,而且非常频繁!
第六是文件读写(File I/O)以及数据库存储(SQL) ,要熟练掌握基本的SQL语句,理解CRUD,对后边编程帮助大!推荐看一下《SQL必知必会》这本书!文件读写需要注意的是String类型的相关操作,包括各种Writer和Reader(),我会在这篇文章后给出总结!
第七是反射(Reflection),近期才看到反射操作的作用,很好用,在Android修改源码中的东西时会用得到!
第八是异常处理(Exceptions),我一般倾向于把异常捕获(try。。。catch)而不是抛出(throw)。
第九是网络编程(Http,TCP,Socket),感觉这个可以放到Android内容中学习,不过好好看看是不错的!
好了,这就是我所总结的Java的知识,感觉这些就差不多了,感觉比做Web的学的要少一些。我是直接学完Java做Android的!
然后那,我需要总结的是Android入门需要的知识,感觉需要看的是基本的东西,我暂且不谈多媒体传感器啥的。
首先是四大组件:
第一是活动(Activity),这可是基础中的基础了!
第二是服务(Service),后台耗时运行的有效工具!
第三是内容提供者(Content Provider),提供面向数据库和系统内部信息的服务。
第四是广播接收者(Broadcast Receiver),接收广播信息应答!
我用的比较少的是Content Provider,其他的都是经常使用的。
然后是连接四大组件的桥梁---意图(Intent),带着数据跑到想去的地方!
最后就是UI了,各种UI组件的使用,这个比较难办,我刚刚开始学习的时候浪费的时间特别多,尤其是ListView,这个不好弄!我的建议是用到哪个就去详细学习,多看官网的例子!
上述东西是最最基础的了,下面的也需好好看看:
Thread-Handler机制,AsyncTask框架,SQLite,Fragment的使用等等。
除了Android基础知识之外,还是要去看看Android的开源框架,无论是UI上还是后台运行上,开源框架会提供非常有效的实现方案
好吧,就写到这里,明天会总结一年来所做项目的知识体系和框架使用!