后来陆陆续续过了大半个月,导员给找了一个Udacity在线学习的Android开发教程,只有一个月的免费学习机会,因此很快开始了叫Sunshine的天气应用的开发,教学视频整体是采用先自己思考并填写某一块的代码,再进行对应的讲解,代码可以从GitHub上去clone或下载各个部分进行对照,或下载完整的项目自己通过git检查分支的形式来查看各版本提交的代码并与自己写的进行比对,这样的学习方式有一定好处,可以提高独立思考和阅读代码的能力,学习过程中,遇到了很多之前没有接触过和不熟悉的开发流程,这对我来说真的是一项巨大的考验,通过这个项目又熟悉了一遍Activity托管Fragment的开发流程,重新学习了之前没怎么了解过的内容提供者和使用AsynTask处理后台程序,学会了如何使用JSON解析来自网络的JSON数据,说来轻松,在这期间,曾想过放弃这个项目的学习,因为感觉有太多新的知识点和一些陌生的开发流程学习起来相当吃力,跟不上视频的思路,但在导员的一番劝说下,硬着头皮继续了下去,遇到不了解不明白的就去google查个清楚,程序出现问题就先尽力自己尝试解决,实在解决不了去问了导员,就这样一点一点的完成了整个项目的开发,但到最后,里面仍然有很多的东西没有消化,但这也使我认识到了自己学习过程的短处和不足,通过以后的不断学习慢慢弥补,最后总结一下现在的学习情况和以后的学习方向:自学Android有优点也有缺点,优点是对于知识的广度涉及比较丰富,可以了解更多的东西,缺点是自学比较盲目,主要也就是靠看一些书籍和网上小项目开发的教学视频,这样的弊端,就是仅是对于某一块开发中所需的代码知道了如何去写,但对于为什么这么写以及项目整体的结构不清楚,以至于在跟着敲代码的时候,写着写着就不知所措,思路跟不上了,对具体哪些类负责什么功能以及该如何使用类中的抽象的方法越来越模糊,非常的被动,这些就是我自学Android以来的经历和感悟,最近在看一本《Android开发艺术探索》,这是一本非常不错的Android开发者进阶的书籍,虽然以我现在这点水平看有点早,而且对里面的很多深层次的东西没有头绪,但我还是希望能够从中得到些启示,并加深对已学知识的理解,不断积累总结,暑假马上要开始了,初步打算还是以coding为主,找几个项目来练手,熟悉常用的代码块和开发流程,再了解一下Android常用的设计模式,学习常用的第三方开源框架和Google Design常用库的使用,还有最重要的一点就是继续坚持写博客,记录分享对学习内容的理解和遇到的问题以及解决方案,总结反思自己的学习成果和学习状态,最后希望有经验的老前辈在看到我这篇博客后能指点一二,以使我明确学习目标并制定合理的学习计划.

Android自学反思总结(下)的更多相关文章

  1. Android自学反思总结(上)

    从接触Android到现在有几个月的时间了,基本全部都是靠自学,从大一上学期学习完c语言,接着利用寒假时间和开学一个月左右的时间自学完javase,接着在导员的督促下,开始了Android学习之旅,现 ...

  2. Android自学反思总结(中)

    后来在导员的推荐加上自己的好奇心给电脑装上了Ubuntu,因为Android的内核就是Linux,导员想让我们及早接触,及早熟悉,这也是我后来一直冷落Windows的原因,装Ubuntu的过程是艰辛的 ...

  3. 【Android自学之旅】 Android开发环境的搭建

    [Android自学之旅] Android开发环境的搭建 搭建参考教程: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-do ...

  4. Android 自学之画廊视图(Gallery)功能和用法

    Gallery与之前讲的Spinner有共同的父类:AbsSpinner,表明Gallery和Spinner都是一个列表框.他们之间的区别在于Spinner显示的是一个垂直的列表框,而Gallery显 ...

  5. 【Android自学日记】搭建Android开发环境

    搭建Android应用开发环境所需工具 1_> JDK(JAVA Development)推荐使用6.0以后版本 配置环境变量(以下是环境变量的具体内容及介绍) ================ ...

  6. android源码环境下用mmm/mm编译模块,输出编译log到文件的方法

    android源码环境下用mmm/mm编译模块,输出编译log到文件的方法 1,在android目录下直接用mmm命令编译, log信息保存在android目录下 mmm packages/apps/ ...

  7. Android笔记——Windows环境下Android Studio v1.0安装教程

    本文主要讲解Windows环境下Android Studio的安装教程,Mac的Android Studio安装与此类似不在赘述,另外友情提示Windows下的SDK与Mac的SDK是通用的,可以直接 ...

  8. android stuio eclipse映射下的快捷键

    转:关于 android stuio eclipse映射下的快捷键 http://www.cnblogs.com/0616--ataozhijia/p/3870064.html 会持续更新)这边讲的常 ...

  9. Android读取assets目录下的资源

    1.获取资源的输入流 资源文件 sample.txt 位于 $PROJECT_HOME/assets/ 目录下,可以在 Activity 中通过 Context.getAssets().open(“s ...

随机推荐

  1. Codeforces 708A Letters Cyclic Shift

    A. Letters Cyclic Shift time limit per test:1 second memory limit per test:256 megabytes input:stand ...

  2. Salesforce使用truncate清空数据库

    如果想快速的清空MySQL中的表,可以使用Truncate命令.Truncate能够快速的,对数据进行无差别的清空. 在Mysql中使用truncate的语法是TRUNCATE TABLE [Tabl ...

  3. ArcGIS制图表达Representation实战篇3-控制点

    ArcGIS制图表达Representation实战篇3-控制点 by 李远祥 这一章讲述的是一个非常专业的名词,叫控制点.此控制点非测绘行业术语的控制点,而是制图表达里面的控制点,所以不能混为一谈. ...

  4. ContextMenu控件引用以及不用v4包的方法

    最近想撸个APP出来玩玩,本想用Yalantis出的SideMenu,结果因为依赖问题放弃了,改用他们家的ContextMenu. 如果你用了v4包 那么问题就比较简单了,直接打开项目中app中的bu ...

  5. 安装软件(基于redhat、centos发行版)

    yum 命令的使用: yum local install package_name.rpm 安装本地rpm包yum list updates 列出所有可以更新的安装包yum update packag ...

  6. Codeforces 719B Anatoly and Cockroaches

    B. Anatoly and Cockroaches time limit per test:1 second memory limit per test:256 megabytes input:st ...

  7. margin:0 auto;不居中?

    1.没有设置宽度 <div style="margin:0 auto;"></div> 看看上面的代码,根本没有设置DIV的宽度,如何根据宽度自适应呢?新手 ...

  8. CSS3的属性为什么要带前缀

    使用过CSS3属性的同学都知道,CSS3属性都需要带各浏览器的前缀,甚至到现在,依然还有很多属性需要带前缀.这是为什么呢? 我的理解是,浏览器厂商以前就一直在实施CSS3,但它还未成为真正的标准.为此 ...

  9. 构建Docker平台【第二篇】安装 Docker

    第一步:上传安装包和 docker 镜像 1.安装包: docker-engine-1.12.1-1.el7.centos.x86_64.rpm docker-engine-selinux-1.12. ...

  10. c#模拟js escape方法(转)

    实现URI字符串转化成escape格式的字符 public static string Escape(string s)         {             StringBuilder sb ...