任务驱动,学习.NET开发系列第2篇------单词统计
一 高效学习编程的办法
1 任务驱动方式学习软件开发
大部分人学习软件开发技术是通过看书,看视频,听老师上课的方式。这些方式有一个共同点即按知识点进行讲解。比如拿c#编程为例,首先是讲解大量的基础概念,如类和对象,继承多态,事件委托,泛型接口等等。这种学习方法的一个弊端是学习了大量的知识点,但是不知如何运用。
换一个角度,采用任务驱动的模式,提供一些从易到难的编程任务,一个个进行攻克,给出任务的同时,列出解决该任务需要掌握的知识,通过简单介绍这些知识和学习者自己百度google的方式,让学习者自己通过努力完成任务,任务过程中提供简单的答疑(只提供思路)。编程任务需要精心设计(如身份证解析,统计文章中出现单词个数,猜单词游戏,飞机大战游戏,通讯录管理系统等等)。
2 对比式,相互启发式学习
比如可以采取同一个编程任务,分别实现一个pc版及一个web版的方式,通过比较2种版本不同的实现方式,对照着进行学习。既可以体会到pc端软件开发和web软件开发的不同之处,又能从比较高的角度体会到编程的共通点。
pc开发经验多的学习者可以快速掌握web开发方法,web开发经验的多学习者可以快速掌握pc开发方法。
二 本节任务说明及训练的知识点
1. 任务说明
录入一篇英文文章,统计文章中出现的每个单词及单词出现次数,按单词出现频率由大到小排序;单击右边列表中某个单词,左边文章中高亮显示该单词出现的位置。
2. 涉及到的知识点
- 字典Dictionary应用
- 字符串分割与字串提取
- 正则表达式删除文章中的标点
- ListBox控件和RichTextBox控件应用。
- Lamada表达式简单应用(对Dictionary的值集合进行排序)
3.界面截图
三 源码位置
任务驱动,学习.NET开发系列第2篇------单词统计的更多相关文章
- 程序员带你学习安卓开发系列-Android文件存储
这是程序员带你学习安卓开发系列教程.本文章致力于面向对象程序员可以快速学习开发安卓技术. 上篇文章:.Net程序员快速学习安卓开发-布局和点击事件的写法 主要讲解了布局和点击事件的写法. 上篇文章补充 ...
- openlayers5-webpack 入门开发系列一初探篇(附源码下载)
前言 openlayers5-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载 ...
- leaflet-webpack 入门开发系列一初探篇(附源码下载)
前言 leaflet-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载地址 w ...
- 【Windows10 IoT开发系列】配置篇
原文:[Windows10 IoT开发系列]配置篇 Windows10 For IoT是Windows 10家族的一个新星,其针对不同平台拥有不同的版本.而其最重要的一个版本是运行在Raspberry ...
- 任务驱动,Winform VS WEB对比式学习.NET开发系列第一篇------身份证解析(不断更新的WEB版本及Winform版本源码)
一 本系列培训随笔适用人群 1. 软件开发初学者 2. 有志于转向Web开发的Winform程序员 3. 想了解桌面应用开发的Web程序员 二 高效学习编程的办法 1 任务驱动方式学习软件开发 大部分 ...
- 任务驱动,对比式学习.NET开发系列之开篇------开源2个小框架(一个Winform框架,一个Web框架)
一 源码位置 1. Winform框架 2. web框架 二 高效学习编程的办法 1 任务驱动方式学习软件开发 大部分人学习软件开发技术是通过看书,看视频,听老师上课的方式.这些方式有一个共同点即按知 ...
- openlayers4 入门开发系列之风场图篇
前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子 ...
- openlayers4 入门开发系列之热力图篇(附源码下载)
前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子 ...
- [置顶]【实用 .NET Core开发系列】- 导航篇
前言 此系列从出发点来看,是 上个系列的续篇, 上个系列因为后面工作的原因,后面几篇没有写完,后来.NET Core出来之后,注意力就转移到了.NET Core上,所以再也就没有继续下去,此是原因之一 ...
随机推荐
- 关于 vee-validate直接引用的方法
转载于:https://blog.csdn.net/hy111/article/details/79046500?%3E 由于当前项目使用的是基于jQuery的前端结构,尝试在新增需求中使用VUE2, ...
- Makefile编写记录
近期学习 Linux 需要使用 Makefile,网上搜罗了很多这方面的资料,所里在这里做一个整理. 1.静态模式 看一个例子: objects = foo.o bar.o all: $(object ...
- php中普通方法和静态方法的区别以及抽象类和接口
实例化类产生对象.class fenbi{ //普通成员,属于对象 public $length = "10cm"; //静态成员,静态变量,属于类. public static ...
- struct&&class 空的大小
#include using namespace std; class ClassA { }; class ClassB { private: int b; }; class ClassC : pub ...
- 创建虚拟机流程nova
这篇博文借鉴于http://www.cnblogs.com/yjbjingcha/p/6977741.html,感谢博友提供. 本文试图具体地描写叙述openstack创建虚拟机的完整过程.从用户发起 ...
- ci重写 配置文件
server { listen 80; #listen [::]:80; server_name wangyongshun.xyz www.wangyongshun.xyz; index index. ...
- 【bzoj2793】[Poi2012]Vouchers 暴力
题目描述 考虑正整数集合,现在有n组人依次来取数,假设第i组来了x人,他们每个取的数一定是x的倍数,并且是还剩下的最小的x个.正整数中有m个数被标成了幸运数,问有哪些人取到了幸运数. 输入 第一行一个 ...
- [bzoj5472] 数列
Description 输入一个长度为n的数组{ai}(1 <= i <= n) 问有多少个长度为n的数组{xi}(1 <= i <= n),满足1 <= xi < ...
- [AGC005D] ~K Perm Counting [dp]
题面 传送门 思路 首先可以明确的一点是,本题中出现不满足条件的所有的数,都是分组的 只有模$K$意义下相同的数之间才会出现不满足条件的情况,而且仅出现在相邻的情况 那么我们考虑把这个性质利用起来 我 ...
- Spring之WebSocket网页聊天以及服务器推送
Spring之WebSocket网页聊天以及服务器推送 转自:http://www.xdemo.org/spring-websocket-comet/ /Springframework /Spring ...