Learning by doing
Learning by doing
绪论:读了娄老师的公众号中——《做中学(Learning By Doing)》这篇文章后,深有感触,我想到很多自己之前的事情,很多都是每每想的很好,总是因为各种原因不了了之,其实都是由于自己的懒惰造成的。学习这件事算是一个典型吧,每次到考试之前才会惊慌失措,然而这又能怪谁呢,只能怨自己平时不注重知识的积累,学习多数情况下是为了最终的考试,这和做中学的学习方法大相径庭。
你有什么技能比大多人(超过90%以上)更好?
啊,其实我对自己的素描(绘画)功底还是比较有自信的,但是要是说90%以上的话还是比较没底的。
针对这个技能的获取你有什么成功的经验?
读了《娄老师的做中学之乒乓球刻意训练一年总结》这篇文章后,我发现当一个人为了一个目标而为之努力的时候是不可战胜的,是无坚不摧的,是不可阻挡的。关于“减肥每天一万步,一周减十斤”这一点我非常赞同经我初中时候,下定决心减肥,连着做了三年的俯卧撑,所以那时候是我最瘦的时候!水滴石穿,如果一个人能坚持做一件事,那么一定会有所成就!
与老师博客中的学习经验有什么共通之处?
我认为共通之处在于都需要不断锻炼,不断实践,不断反思,不断改变,不断创新......从而获得成功。
有关C语言学习的调查
你是怎么学习C语言的?(作业,实验,教材,其他),与你的高超技能相比,C语言的学习有什么经验和教训?
首先课堂上要认真听讲,养成了记笔记的习惯;课后一来整理笔记,二来及时复习,多在平台上做c语言题,巩固学习内容和难点。经验总结起来是需要大量练习,多动脑,多思考,对一些重点内容要特别训练。教训就一个:别犯懒......
目前为止估算自己写过多少行C代码?理解的情况如何?
代码应该说有两千左右(因为上一次博客的留言,我特意去数的......),应该说对c语言的理解还不是很好,现在也就记得一个大体框架了。
学过了C语言,你分的清数组指针,指针数组;函数指针,指针函数这些概念吗?
看到这个问题我就默默地翻开了c语言课本,重新看了一遍这几个概念:
数组指针
数组指针,也称行指针,是一个指针变量,指针变量保存的是一个数组的首地址。
指针数组
指针数组是一个数组,数组的每个元素都是指向相同数据类型的指针。
函数指针
函数指针及指向函数的指针,储存的是一个函数在内存中的入口地址,可以通过它来调用函数。
指针函数
指针函数是一个返回值为指针的函数。
学过了C语言,你明白文件和流的区别和联系吗?如何区分文本文件和二进制文件?如何编程操作这两种文件?
并不是很清楚文件和流之间的区别,也不会区分文件和二进制文件。
学过了C语言,你知道什么叫面向过程程序设计吗?它解决问题的方法是什么?
面向过程(Procedure Oriented)是一种以过程为中心的编程思想。这些都是以什么正在发生为主要目标进行编程,不同于面向对象的是谁在受影响。与面向对象明显的不同就是封装、继承、类。……“面向过程”也可称之为“面向记录”编程思想,他们不支持丰富的“面向对象”特性(比如继承、多态),并且它们不允许混合持久化状态和域逻辑。就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
在C语言里面,什么是模块?你写过多个源文件的程序吗?
函数就算是一种模块,暂时还没有写过多个源文件的程序。
学过了C语言,你知道什么是“高内聚,低耦合”吗?这个原则如何应用到高质量程序设计中?
所谓高内聚是指一个软件模块是由相关性很强的代码组成,只负责一项任务,也就是常说的单一责任原则。
对于低耦合,粗浅的理解是:一个完整的系统,模块与模块之间,尽可能的使其独立存在。也就是说,让每个模块,尽可能的独立完成某个特定的子功能。模块与模块之间的接口,尽量的少而简单。如果某两个模块间的关系比较复杂的话,最好首先考虑进一步的模块划分。这样有利于修改和组合。
学过了C语言,你如何把数组A的内容复制到数组B中?如何查找整数数组A中有没有数字5?如何对整数数组A进行排序(从小到大,从大到小)?写出相应的程序。
把数组A的内容复制到数组B中
#include <stdio.h>
#include <string.h>
main()
{
char a[1000],b[1000];
printf("输入数组a:\n");
gets(a);
printf("输入数组b:\n");
gets(b);
strcat(b,a);
}
查找整数数组A中有没有数字5
#include <stdio.h>
#define N 50
int main()
{
int a[N],i,j,n;
printf("input n:");
scanf("%d",&n);
printf("input a:");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(j=0;j<n;j++)
{
if(a[j]==5)
printf("Find the 5");
}
}
对整数数组A进行排序(从小到大,从大到小)
#include <stdio.h>
#define N 50
int main()
{
int a[N],i,j,n,temp;
printf(" Input n:");
scanf("%d",&n );
printf("Input a:\n");
for (i=0; i<n; i++)
{
scanf("%d",&a[i]);
}
for (i=0; i<n; i++)
{
for (j=i+1; j<n; j++)
{
if (a[i]>a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
for (j=0; j<n; j++)
{
printf("%d ",a[j]);
}
}
降序同理
写一个程序,统计自己C语言共写了多少行代码。
不......不会。
你知道什么是断点吗?给出自己调试程序的例子。
断点是指程序中断的地方。
对比C语言的学习,你对《Java程序设计》的学习有什么具体目标?如何通过刻意训练提高程序设计能力和培养计算思维?如何通过“做中学”实现你的目标?
希望能够更好更快的掌握JAVA这门课程,我自身会多多进行练习,也会尽力跟上老师所教授的课程。
毕业后大多数人从事的工作的要求是“提笔能写,开口能说,问策能对,遇事能办”,非常重要的技能是公文写作能力,你觉得自己写作能力如何?要怎么提高?
我的公文写作能力很一般,一来需要系统地学习有关的理论,二来可以努力扩大知识积累,三来应勤奋地进行资料积累和思想积累。
Learning by doing的更多相关文章
- 【Machine Learning】KNN算法虹膜图片识别
K-近邻算法虹膜图片识别实战 作者:白宁超 2017年1月3日18:26:33 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...
- 【Machine Learning】Python开发工具:Anaconda+Sublime
Python开发工具:Anaconda+Sublime 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现 ...
- 【Machine Learning】机器学习及其基础概念简介
机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...
- 【Machine Learning】决策树案例:基于python的商品购买能力预测系统
决策树在商品购买能力预测案例中的算法实现 作者:白宁超 2016年12月24日22:05:42 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本 ...
- Deep learning:五十一(CNN的反向求导及练习)
前言: CNN作为DL中最成功的模型之一,有必要对其更进一步研究它.虽然在前面的博文Stacked CNN简单介绍中有大概介绍过CNN的使用,不过那是有个前提的:CNN中的参数必须已提前学习好.而本文 ...
- Programming Learning - Based on Project
Today when taking a bath I got a good idea that it is an efficient and interesting way to learn a ne ...
- 做中学(Learning by Doing)之背单词-扇贝网推荐
做中学(Learning by Doing)之背单词-扇贝网推荐 看完杨贵福老师(博客,知乎专栏,豆瓣)的「继续背单词,8个月过去了」,我就有写这篇文章的冲动了,杨老师说: 有时候我会感觉非常后悔,如 ...
- 【原】Learning Spark (Python版) 学习笔记(一)----RDD 基本概念与命令
<Learning Spark>这本书算是Spark入门的必读书了,中文版是<Spark快速大数据分析>,不过豆瓣书评很有意思的是,英文原版评分7.4,评论都说入门而已深入不足 ...
- 【原】Learning Spark (Python版) 学习笔记(四)----Spark Sreaming与MLlib机器学习
本来这篇是准备5.15更的,但是上周一直在忙签证和工作的事,没时间就推迟了,现在终于有时间来写写Learning Spark最后一部分内容了. 第10-11 章主要讲的是Spark Streaming ...
- 【机器学习Machine Learning】资料大全
昨天总结了深度学习的资料,今天把机器学习的资料也总结一下(友情提示:有些网站需要"科学上网"^_^) 推荐几本好书: 1.Pattern Recognition and Machi ...
随机推荐
- sqlalchemy mark-deleted 和 python 多继承下的方法解析顺序 MRO
sqlalchemy mark-deleted 和 python 多继承下的方法解析顺序 MRO 今天在弄一个 sqlalchemy 的数据库基类的时候,遇到了跟多继承相关的一个小问题,因此顺便看了一 ...
- jqurey datatable mRender FnRender 不起作用问题
用这个插件的 知道他不起作用,就应该知道他是做什么的了吧,我的不起作用的原因是版本的问题 我在网上查找的用法 是 "fnRender":fuction(obj){} 可是不起作 ...
- UIWebView中加载HTML的Table,td设置百分比宽度并且宽度不被里面的内容撑开
正常情况下,iOS使用WebView加载HTML的Table时,为了让Table适应屏幕宽度,会使用百分比设置td的宽度,但是由于td中的内容过多,td会被撑开,导致整个Table的宽度会变宽,超出屏 ...
- 移动应用开发过程中需要哪些IOS APP工具
虽说如今要开发一款IOS app应用软件已经不是什么难事,app开发技术已经发展成熟,所以要制作一款适用于苹果IOS智能操作系统的app软件也挺容易的了.不过对于开发者来说,可以通过一些app工具来更 ...
- jdbc 数据库连接
连接数据库 1)通过Driver来连接(Driver:数据库厂商提供的一个接口) public void testDriver()throws Exception{ Driver driver = n ...
- Linux 安装记录
######ubuntu-16.04.1-desktop-amd64 ||| Unity desktop Environment, NOT !!! ######deepin-15.3-amd64.is ...
- TortoiseGit状态图标不能正常显示的解决办法
1:确认是不是64bit 系统上装了 32bit 的 TortoiseGit,如果是的话,这个只要再安装 64bit 的 TortoiseGit就可以 了,如果不是,请往下看. 2:在开始菜单的搜 ...
- Unit01: JAVA开发环境
Top JAVA开发环境 1. JAVA开发环境 1.1. 认识Linux操作系统 1.1.1. Linux的由来及发展 Linux起源于1991年,1995年流行起来,大家可以看到旁边的这个人,它就 ...
- Android Studio的优化/Gradle构建
转自链接http://bbs.itheima.com/thread-204217-1-1.html 使用Android Studio进行开,随着项目的增大,依赖库的增多,构建速度越来越慢,现在最慢 ...
- .net 事务处理的三种方法
方法1:直接写入到sql 中 在存储过程中使用 BEGIN TRANS, COMMIT TRANS, ROLLBACK TRANS 实现 begin trans declare@orderDetail ...