后来陆陆续续过了大半个月,导员给找了一个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. 《JAVASCRIPT高级程序设计》window/location/navigator/screen/history对象

    如果要在web中使用JAVASCRIPT,那么BOM(浏览器对象模型)毫无疑问是最重要的部分.BOM提供了很多对象,例如,window.location.navigator.screen.histor ...

  2. C# 6 与 .NET Core 1.0 高级编程 - 38 章 实体框架核心(上)

    译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 38 章 实体框架核心(上)),不对的地方欢迎指出与交流. 章节出自<Professional C# 6 ...

  3. oracle__wm_concat函数

    首先让我们来看看这个神奇的函数wm_concat(列名),该函数可以把列值以","号分隔起来,并显示成一行,接下来上例子,看看这个神奇的函数如何应用 准备测试数据 SQL> ...

  4. 三层——c#版

    首先,向大家通知一个好消息--我的三层终于实现了!!!这两天,一直在调一个bug一直链接不上数据库,弄得我死的心都有了.就在昨天,当我把一个","改成了":"后 ...

  5. JVM内存

    大多数 JVM 将内存区域划分为 Method Area(Non-Heap)(方法区) ,Heap(堆) , Program Counter Register(程序计数器) ,   VM Stack( ...

  6. DLL 导出变量

    声明为导出变量时,同样有两种方法:   第一种是用__declspec进行导出声明 #ifndef _DLL_SAMPLE_H #define _DLL_SAMPLE_H // 如果定义了C++编译器 ...

  7. jenkins coding.net webhook plugin

    开源地址: https://github.com/yuzd/coding.net =========================================================== ...

  8. 认识ionic2

    1. Ionic 2 介绍 Ionic 2专注于以标准的HTML.CSS和JavaScript来构建移动站点,并可以通过Cordova打包成移动 App,只需编写一次代码,就可以分别部署到iOS.An ...

  9. js拉起或下载app

    产品提了个需求,通过手机网页判断是否安装了自己公司app,如果安装了则拉起app,没有安装则跳转到下载页. 经过各种查阅资料尝试总结了一个还算可以的办法. 拉起app的原理就是js和原生统一好一个地址 ...

  10. [Selenium With C#学习笔记] Lesson-01环境搭建

    Step-1:准备所需的开发环境.浏览器驱动.Selenium-Webdriver.单元测试框架,因目前使用C#的开发神器都Visual Studio,本文也打算采用Visual Studio 201 ...