20172301 2017-2018-2 《程序设计与数据结构》第十一周学习总结

时间:2021-05-25 10:29:18

20172301 2017-2018-2 《程序设计与数据结构》第十一周学习总结

教材学习内容总结

第23章

  • Android的应用程序组件:
    • 活动:用于编写程序,用户交互
    • 服务:后台运行的操作
    • 广播接受者:一个监听器,负责对系统或应用程序声明做出相应。
    • 内容提供者:管理要和其他应用程序分享的数据。

第24章

  • Android Studio (以下都简称“AS”
    AS是基于IDEA的一款集成开发环境。所以,在视图和操作方面都和IDEA有很多相似之处。
  • 在AS中的android有两个主要的节点:app和Gradle Scripts
    • app中有3个重要节点:manifests、java、res
    • 图片
  • AS的调试方法有两种:使用日志消息和设置断点
    • 断点调试我们在IDEA都有很多尝试,这个日志调试了解较少。日志消息就是显示每次app的结果,并输出到logCat上。

第25章

  • 活动(activity)
    • 主活动(main activity):充当应用程序的入口点。
    • 活动的生命周期:onCreate方法和onDestroy方法在活动声明周期之内只能调用一次。
  • 修改应用程序图标

    • 在res/drawable中保存jepg文件或者png文件,png首选,其支持透明度。
    • 编辑清单文件manifests的android:icon属性,以指向新的图像,可以使用如下格式修改引用图像文件:**@drawable/filename,其中,filename不带扩展名的文件名称。**
  • 使用Android资源
    要浏览可用资源,在Android stutio打开应用程序清单,输入@Android:,后面跟着Ctrl+space组合键,从而填入属性值,便会显示出资源的列表。
    eg: 查看图像/图标可用,选择@android:drawable/。要为应用程序使用不同的图标,修改android:icon属性的值。
  • 启动另一个活动
    • 通过调用startActivity方法直接做到从一个活动启动另一个活动。

      @Override  
      public boolean onTouch(View arg0, MotionEvent event) {  
      Intent intent = new Intent(this, SecondActivity.class);  
      intent.putExtra("message", "Message from First Screen");  
      startActivity(intent);  
      return true;  
      }  
  • 活动相关的意图
    • 通常,要给调用的活动传递额外的信息,可以通过给意图附加信息来实现。

    • 通过调用IntentputExtra方法实现。

教材学习中的问题和解决过程

  • 问题1:什么是清单(mainfest)
  • 问题1解决方案:清单是以XML文件的形式出现的。用来描述应用程序。
    如下图:

  • 问题2:XXXXXX
  • 问题2解决方案:XXXXXX
  • ...

代码调试中的问题和解决过程

  • 问题1:XXXXXX
  • 问题1解决方案:XXXXXX
  • 问题2:XXXXXX
  • 问题2解决方案:XXXXXX
  • ...

代码托管

(statistics.sh脚本的运行结果截图)

上周考试错题总结

  • 错题1及原因,理解情况
  • 错题2及原因,理解情况
  • ...

结对及互评

评分标准

  1. 正确使用Markdown语法(加1分):
    • 不使用Markdown不加分
    • 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
    • 排版混乱的不加分
  2. 模板中的要素齐全(加1分)
    • 缺少“教材学习中的问题和解决过程”的不加分
    • 缺少“代码调试中的问题和解决过程”的不加分
    • 代码托管不能打开的不加分
    • 缺少“结对及互评”的不能打开的不加分
    • 缺少“上周考试错题总结”的不能加分
    • 缺少“进度条”的不能加分
    • 缺少“参考资料”的不能加分
  3. 教材学习中的问题和解决过程, 一个问题加1分

  4. 代码调试中的问题和解决过程, 一个问题加1分

  5. 本周有效代码超过300分行的(加2分)
    • 一周提交次数少于20次的不加分
  6. 其他加分:
    • 周五前发博客的加1分
    • 感想,体会不假大空的加1分
    • 排版精美的加一分
    • 进度条中记录学习时间与改进情况的加1分
    • 有动手写新代码的加1分
    • 课后选择题有验证的加1分
    • 代码Commit Message规范的加1分
    • 错题学习深入的加1分
    • 点评认真,能指出博客和代码中的问题的加1分
    • 结对学习情况真实可信的加1分
  7. 扣分:
    • 有抄袭的扣至0分
    • 代码作弊的扣至0分
    • 迟交作业的扣至0分

点评模板:

  • 博客中值得学习的或问题:
    • xxx
    • xxx
    • ...
  • 代码中值得学习的或问题:
    • xxx
    • xxx
    • ...
  • 基于评分标准,我给本博客打分:XX分。得分情况如下:xxx

  • 参考示例

点评过的同学博客和代码

其他(感悟、思考等,可选)

xxx
xxx

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第三周 500/1000 3/7 22/60
第四周 300/1300 2/9 30/90

参考资料