Android早期由“Android之父”之称的Andy Rubin创办,Google于2005年并购了成立仅22个月的高科技企业Android,展开了短信、手机检索、定位等业务,基于Linux的通用平台进入了开发……简史我就不多叙了,大家想了解的,可以上网去百度,去谷歌,去……反正很多资料你都能找到。
    这次在这儿,主要是想为大家说说这么几点:开发android我们需要哪些技能基础?怎样去获得这些技能基础?通过这些基础,怎样和你以后的android开发相结合?怎样去实践你的android开发?今天时间充裕,我便开坛作法,为各位说说我个人的一些看法,大家不喜勿喷,笑笑就过了。
    1开发android,我是怎么认为的。
    随着智能手机的普及,越来越多的android系统已经走入了人们的视野里面,在地铁里、在餐厅里、在飞机上,甚至在建筑工地上,你都能看到带着android系统的智能手机,被它的主人摊开在手心里。与其说他们玩弄着手机,倒不如说他们了解着世界。没错,尽管他们是在玩手游,那也是android应用更新的结果。于是乎,越来越多的人喜欢上了智能手机,而android系统的智能手机,更能够得到大众的认可,以为它更能适应消费者的消费水平。跟着android智能机发展的,android应用也就如雨后春笋一般在全世界冒了出来。虽然现在也有许多的人在开发android应用,但是我们也可以说android应用的开发,在现在还是成增长趋势的。为此android的开发也是很有前景的。
    2开发android,我们需要哪些技能基础。(android大牛请绕开此段)
    ①Java基础知识 ②Linux基础知识 ③数据库基础知识 ④网络协议 ⑤Android基础知识 ⑥服务器端开发知识
    ①Java基础知识
    很多朋友一上手就开始学习Android,似乎太着急了一些。Android应用程序开发是以Java语言为基础的,所以没有扎实的Java基础知识,只是机械的照抄别人的代码,是没有任何意义的。万丈高楼平地而起,Java就是筑起高楼的每一块砖头。那么Java学到什么程度才算是过关呢?我个人认为至少要掌握以下两个方面的内容:
     a)Java基础语法:具体的知识点列表可以在这里下载:《Java知识点列表》V1.0。这部分内容没有讨价还价的余地,必须烂熟于胸。至于具体的学习方法,可以看书或者是看视频,但是关键是要多加练习,无论是书上的练习还是视频里面的练习,都需要仔仔细细的完成;
     b)设计模式:由于在Android系统的框架层当中,使用了大量的设计模式,如果没有这个方面的知识,对于Android的理解就会大打折扣。设计模式的种类非常之多,一个一个的全部掌握,是不现实的,必须首先掌握面向对象的基础设计原则,有了这些基础原则的支持,就可以举一反三。这部分内容可以在《Effective Java》和《Agile.Software.Development:Principles,Patterns.and.Practices》这两本书中找到。    ②Linux基础知识
    大家都知道,Android系统的基础是Linux操作系统。在开发过程当中,我们也需要使用到一些Linux命令。所以说一些Linux的基础知识是必须的(话说现在的程序员,不懂Linux都不好意思跟人家打招呼),推荐大家看看《鸟哥的私房菜》这本书,写的相当不错;    ③数据库基础知识
    这个比较简单,就是一个增删改查的数据库操作,可以看一下这本书:《SQL编程练习与解答》    ④网络协议
    至少需要学习两种基础的协议,HTTP协议与Socket协议;    ⑤Android基础知识
    有了以上的铺垫,再来看Android,是不是觉得轻松了很多呢?至于基础知识的学习顺序,最好的方法就是按照Android SDK帮助文档当中的Dev Guide里面的顺序,我的《Android视频教程》也基本上是按照这个顺序录制的;    ⑥服务器端开发知识
    由于很多Android应用程序都需要服务器端的支持,所以掌握一些服务器端开发知识还是非常有必要的。至于选择哪一种服务器端知识进行学习,就比较麻烦了,因为技术的种类实在是太多了:
      a)Java EE:就是上面邮件当中所提到的SSH—Struts+Spring+Hibernate。这种技术的优点的功能完整、强大,已经使用了很多年,而且既然大家已经非常熟悉Java了,那么学习SSH看起来也顺理成章。但是使用这种技术开发服务器端程序,非常麻烦。即使是一些简单的功能,也可能需要大量的代码和配置文件来实现;
      b)PHP:简单易学,开发快速。但是我们需要多学一种语言,是否得不偿失,就要大家自己判断了;
      c).NET:这项技术的特点和Java EE差不多,但是要想掌握.NET,则需要掌握c#,也是个麻烦的事情;
      d)ruby on rails:这是我个人最喜欢的服务器端技术,简洁,优雅,寥寥几行代码,就可以实现很复杂的功能,但是这需要Ruby语言知识作为基础;
    至于选择哪一种知识,就看大家自己的判断了,毕竟每个人想法不一样,爱好也不相同。(关于这一段“开发android,我们需要哪些技能基础”出自于我自己的论坛帖子)    3怎样去获得这些技能基础。(android大牛请绕开此段)
    看书,这确实是一个不错的选择。如果你想从零开始学习Java、Linux、数据库、网络协议、android基础知识……没错这些你都需要看书,看很多书(这是一句废话,跳过好了)。但是!如果把获取这些技能基础量化为100%的话,那么看书这个途径只能为你提供15%的进步。
    看视频,这也是许多自学android开发的新手必经之路,毕竟看书只有你一个人的思维在活跃,看视频至少是两个人的思维在碰撞,你能发现你与别人的不同,如果你有心,你就能进步更多。基础知识不用我担心太多,至少想学android的,找基础知识的资料还是没有问题的。在此你也可以试着了解一些android的基础视频。也可以加入一下android的QQ群,去初步了解一下。感受一下氛围。这个我个人觉得很有意义。
    敲代码,不为了其它的什么,就为了你能够熟练的掌握android开发工具,你是不是应该多话一点心思在上面呢?他的重要性不比“看书+看视频”的总和小,也许我就这样轻描淡写地说过去了,但是你最好不要轻描淡写地看过去,不然“返工重做”是很让你不舒服的。
    思考,没错,就是“想”。想你怎么把这三块儿合在一块儿,让自己的学习效率更高;想你在学习中遇到哪些障碍,最后是怎么解决的,这很重要!(未完,明天继续!)
       AndroidJava服务器Linux视频

解决方案 »

  1.   

    嗯  顶一下   其实我觉得对于初学者来说  慢慢来  先java  再android  然后涉及其他(编程的初学者)对于有编程经验的来说  就随意了   
      

  2.   

        4通过这些基础,怎样和你以后的android开发相结合。
        Java和android开发的联系:简单来说,android系统软件全部都是JAVA写的。
        Linux和android开发的联系:可以这么理解,android就是一个运行在Linux内核上的一个Java虚拟机。
        然而,数据库基础知识、网络协议、服务器端开发知识、android基础知识则是支撑整个android(不论是android系统或者是android应用)开发的骨架。
        介绍了以上这些东西和android的关系,怎么把它们结合起来,这才是最重要的,这儿为大家举说一套课程:
        《android的深入浅出》http://wenku.baidu.com/org/view?org=maikewang&tab=0&pn=4,该套百度文库课程经作者本人授权传播。来说明以上这些基础知识是怎么体现在android开发的实体中的。
        5怎样去实践你的android开发。
        或许你正以android开发谋生,或许你对于android开发只仅仅是兴趣。但是我们不得不承认,当我们自己有了一个优化较好的android系统,一个体验优良的android应用,对我们自己内心而言是一个极大的鼓励和欣慰。因为那是我们的执着铸就的成就。开发android,如果你想成为一个大牛,你要走的路还有很多。各位沉畜猿,加油了。