原文作者: eoeadmin
原文地址: http://my.eoe.cn/shuhai/archive/19684.html
--------------------------------------------

这篇文章主要写了一个PHP程序猿是如何转战学习Android的。

第一步:

直接跨过java的学习,原因有我之前看过毕向东和张孝祥的Java基础课程,虽然中间好几次看睡着,但java的环境是能跑起来的。

我建议大家如果没有Java基础的话,可以看一下毕向东的java课程。毕向东这哥们的声音大,幽默,不容易睡着。http://edu.eoe.cn/category/bixiangdong-java-video.html

第二步:

直接开始Android环境搭建的步骤,见day1的博客。
网上教程一堆,请使用最新的adt-bundle,不要被老教程带到沟里去了。

第三步:

我没有直接开始写Hello World,而是看少佳老师的视频。

在了解完四大组件,几种布局方式,了解了大约十个控件以后,开始写一个项目,见day3。

看视频的时间一共花了三天,上班时间每天晚上看7集,周末各看了15集,78课时的视频我应该看了一半。

看视频的主要目的是有个框架性的了解,知道Activity和布局的关系,知道事件以及adapter的逻辑。

第四步:

写的第一个应用,是基于一个真实的需求。功能是读取网络接口的json,格式化成数组列表,再通过adapter加载到Listview。

有目的学习一个完整的小型应用,而不是单机的功能。

根据我的编程经验来讲,知道常用的基本组件关系,了解控件用法,其它事情就是一边做一边查手册的事了。

总的来说,入门比我想像中简单。跑起来第一个应用,花了一周时间。感谢在中途帮助过我们的ice和夏阳。还有,ice确实是很牛X的,讨论半天没解决的问题,人悄悄就把答案发过来了。

搬运者注:
文中说的day是作者写的一个学习笔记:
海爷学安卓 day1 : ubuntu android环境搭建,adt-bundle最简单安装版
http://my.eoe.cn/shuhai/archive/19381.html
海爷学安卓 day2 : 史上最快Android模拟器:Genymotion使用教程
http://my.eoe.cn/shuhai/archive/19480.html
海爷学安卓 day3 : 一个完整的Android ListView+网络接口读取+JSON处理的Demo
http://my.eoe.cn/shuhai/archive/19604.html
海爷学安卓 day4 : Android ListView实现自动翻页的功能
http://my.eoe.cn/shuhai/archive/19669.html

给Android初学者的建议:

编程之间最好有一个粗略的印象,比如看一下Java基础课程,再看一套Android基础课程。

Java基础课程我建议看毕向东的视频,课果短,老师很幽默,不容易睡着。之前我是看张孝祥老师的视频,但课时太长,我看几个小时的视频就会睡几个小时。
学习没有效果或者学不动,是初学者的最大障碍
http://edu.eoe.cn/category/bixiangdong-java-video.html

其次是看一套完整的Android视频教程,我建议看eoe少佳老师的课程,而不是老罗的视频。老罗的视频结构性不强,初学者容易迷失方向。少佳老师的视频,我也不建议全看,看完四大组件,布局方式和一些常用控件以后,就可以开始写代码了。遇到什么查什么。
http://www.eoeschool.com/course/show/id/26.html

我还有一个非常重要的建议。

初学者,不要急着一边学一边写代码。

比如在学Java的时候,不用一边学一边写,看一下,了解即可。
很多时候,看到老师会的东西,你看完视频不一定能写出来。写不出来,会很打击信心。

看完视频以后,在对编程有一些基本理解以后,再去写一个比较完整的功能。
知道要做什么,下一步要做什么。

-----------------------正文结束-------------------------------

这确实是篇好文章,Android初学者不妨看看。

PHPer转战Android的学习过程以及Android学习的更多相关文章

  1. android的JNI 、 NDK 学习!

    转载的! Java Native Interface (JNI)标准是java平台的一部分,它允许Java代码和其他语言写的代码进行交互.JNI 是本地编程接口,它使得在 Java 虚拟机 (VM) ...

  2. Android 6.0 权限知识学习笔记

    最近在项目上因为6.0运行时权限吃了亏,发现之前对运行时权限的理解不足,决定回炉重造,重新学习一下Android Permission. 进入正题: Android权限 在Android系统中,权限分 ...

  3. 从零开始学习Android(一)Android环境的搭建

    好久没有开始写博客了,最近开始学习Android,所以想把学习的笔记都一一记录下来.一来是方便自己以后资料的查询,其次也是给Android新手朋友进行学习使用,再次也希 望得到高手的指点.废话少说,我 ...

  4. Android Material Design控件学习(一)——TabLayout的用法

    前言 Google官方在14年Google I/O上推出了全新的设计语言--Material Design.一并推出了一系列实现Material Design效果的控件库--Android Desig ...

  5. 41.Android之图片放大缩小学习

    生活中经常会用到图片放大和缩小,今天简单学习下. 思路:1.添加一个操作图片放大和缩小类;  2. 布局文件中引用这个自定义控件;  3. 主Activity一些修改. 代码如下: 增加图片操作类: ...

  6. 22.Android之ExpandableListView树形列表学习

    Android经常用到树形菜单,一般ExpandableListView可以满足这个需要,今天学习下. XML代码: <?xml version="1.0" encoding ...

  7. 19.Android之文件存储方法学习

    Android开发中会用到文件存储,今天来学习下. 先改下布局界面: <?xml version="1.0" encoding="utf-8"?> ...

  8. 10.Android之ProgressDialog进度对话框学习

    APP应用中经常会下载某些东西,这里面有涉及到进度对话框,今天来学习下. 首先,布局里放进两个按钮,点击一个显示条形进度条,另一个显示圆形进度条.代码如下: <?xml version=&quo ...

  9. 5.Android之image控件学习

    Android中经常用到图片,比如图片浏览.图标等等,今天学习下image控件,image控件主要有ImageButton和ImageView两种. (1)ImageButton 在布局文件增加: & ...

随机推荐

  1. Cash Machine

    Problem Description A Bank plans to install a machine for cash withdrawal. The machine is able to de ...

  2. finally语句包含return的情况

    结论:1.不管有木有出现异常,finally块中代码都会执行:2.当try和catch中有return时,finally仍然会执行:3.finally是在return后面的表达式运算后执行的(此时并没 ...

  3. SQL Server删除表信息的三种方法

    1.使用DELETE实现SQL Server删除表信息 (1)删除表中的全部信息 USE student GO DELETE student      --不加where条件,删除表中的所有记录 go ...

  4. PAT 天梯赛 L2-007 家庭房产

    建图+DFS 题目链接:https://www.patest.cn/contests/gplt/L2-007 题解 在热身赛的时候没有做出来,用的并查集的思想,但是敲残了,最后也没整出来.赛后听到别人 ...

  5. mysql主从复制的配置总结

    首先确定安装配置的环境 centOS7,mysql5.6 在配置之前要保证的几个点 1.系统防火墙,如果只是测试,可以关闭防火墙,如果不是测试,请开发需要使用的端口号,如3306: 开放端口 fire ...

  6. Android软件盘InputMethodManager

    调用下面代码:(第一次调用显示,再次调用则隐藏,如此反复),this指activity InputMethodManager imm = (InputMethodManager)this.getSys ...

  7. nefu 519 昨日重现

    昨日重现 Problem : 519 Time Limit : 1000ms Memory Limit : 65536K description 兴安黑熊在高中学习数学时,曾经知道这样一个公式:f(n ...

  8. LCA-倍增法(在线)O(nlogn)-O(logn)

    1. DFS预处理出所有节点的深度和父节点 inline void dfs(int u) { int i; ;i=next[i]) { if (!deep[to[i]]) { deep[to[i]] ...

  9. 一篇很全面的freemarker教程 前端工程师必备

    FreeMarker的模板文件并不比HTML页面复杂多少,FreeMarker模板文件主要由如下4个部分组成: 1,文本:直接输出的部分 2,注释:<#-- ... -->格式部分,不会输 ...

  10. linux下编译安装apache

    在linux(CentOS6.5)上安装Apache,要首先确保以下程序事先安装 apr:The mission of the Apache Portable Runtime (APR) projec ...