ID #59246

关于Android零基础学习的思考

转自(www.eoeandroid.com)
看了很多帖子,只发现了一篇给新手指明道路的【[转]学习Android需要的基础】。对于已有编程经验的人来说,学习相对轻松。而...今天特此发帖一份,帮助那些观望而不知道学什么的人.本人才疏学浅,仅把自己对于编程的一些小小的了解包含其中, 还望高手斧正。也可以顺带看看Mars老师的教学视频。

1.完全没有不懂编程语言的人群:

建议先从C语言开始,主要学习它的语法,写一些经典的小算法,锻炼逻辑思维能力,不需要了解的太深,也无需关心类库函数.
推荐书籍:谭浩强-《C程序设计》(谭浩强)第三版[PDF]
pdf下载地址:http://www.verycd.com/topics/2818277/

算法学习:
经典C程序100例.chm (66.77 KB, 下载次数: 103)

2.有过编程经验而无Java开发的人群:Java基础[J2SE]:
(1)孙卫琴 - JAVA面向对象编程[新手推荐]
下载地址:http://www.verycd.com/topics/122219/

(2)JAVA2核心技术
下载地址:http://www.verycd.com/topics/113086/

(3)Thinking in java4[Java编程思想(第4版)]
下载地址: 中文版:http://www.verycd.com/topics/2796246/


Java基础[J2SE]中相对比较重要的有五个:IO包,线程,网络,异常处理 以及JDBC:
线程:
http://www.eoeandroid.com/thread-48463-1-1.html

IO包/异常处理:
http://www.eoeandroid.com/thread-48466-1-1.html

网络编程:
http://www.eoeandroid.com/thread-48351-1-1.html

JDBC:
JDBC.pdf (415.03 KB, 下载次数: 30)

SQL
[对于程序员的发展钱途来说,很重要]
《SQL宝典》(SQL Bible)((美)克里格尔 & (美)特鲁诺)[PDF]
下载地址:http://www.verycd.com/topics/2791651/ [新手入门使用,想要编写更复杂的查询语句,需要积累]

Xml
虽然简单[如果不去编写标准规范],是程序员不能不知道的,因为处处在跟它打交道.
IBM教程java_xm_api.chm (285.93 KB, 下载次数: 56)

Servlet/JSP:书籍推荐:
《JSP2.0技术手册》:
pdf下载地址:http://www.verycd.com/topics/253544/

Servlet英文API:
Servlet API.chm (259.1 KB, 下载次数: 15)

Servlet中文帮助文档:
Servlet中文帮助文档.zip (165.92 KB, 下载次数: 23)

JSTL手册:
JSTL.chm (3.26 MB, 下载次数: 15)

JSP手册:
JSP.chm (45.74 KB, 下载次数: 12)

web.xml(web开发中太常用了,简单介绍一下):
用web.xml控制Web应用的行为.pdf (119.19 KB, 下载次数: 24)


j2ee的学习[想从事Android企业级开发的人员]:
几个框架的学习[电驴上有很多视频文件,新手入门,可以适当的看,但是很花时间.对于能力不错的,建议看API]:
Struts2.0:
地址:http://struts.apache.org/

ibatis:
地址:http://ibatis.apache.org/

Hibernate:
地址:http://www.hibernate.org/

Spring:
地址:http://www.springsource.org/

设计模式:
了解即可,有时间有能力有经验再深入.
JAVA设计模式.chm (139.78 KB, 下载次数: 28)

进阶推荐:阎宏-java与模式
下载地址:http://www.verycd.com/topics/33229/

UI很重要:对于Android,展示显得犹未重要。通常在项目中常有感触,绚丽多彩的外表[客户体验]往往能赢得更多用户的肯定[后台程序员一直很郁闷的地方],由于现在分工不是很明确,所以美工的活也得干。自然html,CSS方面的知识肯定是少不了的。
html:
网页制作完全手册.chm (3.83 MB, 下载次数: 25)

css:
CSS2.0.chm (553.17 KB, 下载次数: 18)

思考:手机电池的容量小的缘故,C语言好像能发挥很大的作用。在硬件不改变的条件下,好的算法以及数据结构似乎显得犹未重要?!

谷歌以及百度老师很有学问,是免费的资深教授,要勤问.电驴则是学习资源的天堂[当然,也是一些...不提也罢].

当然,对于程序员来说,这些知识远不够,譬如数据结构,linux操作系统... 还有太多需要了解的知识.
对付的终极绝招:保持你强烈的好奇心和学习精神,不要做浮躁的人.
OK,有了这些基础知识后,我们对于Android的学习则变得格外简单[为什么?应用开发方面只是一个儿子与父亲的区别].

最后套用网络的一段很经典的话:

浮躁的人容易说:XX语言不行了,应该学YY;——是你自己不行了吧!?
浮躁的人容易问:我到底该学什么;——别问,学就对了;
浮躁的人容易问:XX有钱途吗;——建议你去抢银行;
浮躁的人容易说:我要中文版!我英文不行!——不行?学呀!
浮躁的人容易问:XX和YY哪个好;——告诉你吧,都好——只要你学就行;
浮躁的人分两种:a)只观望而不学的人;b)只学而不坚持的人;
把时髦的技术挂在嘴边,还不如把过时的技术记在心里;


好啦,一起努力,开始Android快乐的征途吧。加油!