现在的位置: 首页 > 综合 > 正文

学习、工作(创新)如何开展?从何时开始?(头脑风暴)

2013年08月31日 ⁄ 综合 ⁄ 共 2163字 ⁄ 字号 评论关闭

学习、工作(创新)如何开展?从何时开始?

KEY:学习 工作 设计 学习方法 体系结构 方法论 科学哲学

 

工作从何开始?

b.这两天思考一些与“工作”有关的问题,因为作一种存在生物,无论是什么形式,都要“工作”!老师要教学,学生要学习,工程师要设计要施工,小麻雀要觅食,CEO要下达命令,等等等等……那么,工作有什么样的性质?如何分类?并且工作从哪一刻开始?
由上面的有关系统分层思想,得到了一些初步的结论。第一,工作或多或少有是设计任务,设计与解决问题(解题)有某名的关系;第二,工作在横向很难分类,纵向有层次关系,每层都有内在结构和外在功能;第三,工作(设计)一般只单一层内开展(为什么说一般,因为高手是可以看穿各层的);第四,工作开始于完全了解了下一层的外在功能和上一层的内在结构需求开始。第五,工作的内容是,根据上一层的结构需求,调配下一层提供的更原始的外在功能,组成本层的内在结构和
外在功能。

 

要干与能干

2009-3-15  18:00:04

b.其实API也好,MFC也罢,都是框架,都一样的复杂,有了上下文,编程时花费一般多的心力,关键是你自己到底想要干什么。所以有时候有种感觉,理解框架能给我什么不如清楚知道自己想要什么。而更清楚地知道自己想要什么又必须先知道自己能干什么,这二者是辩证的。

2009-3-15  18:12:36

b.接前话,前面提到编程的上下文,这是个多次出现的概念。编程的上下文都会提供一些基础的编程构造块(功能块),让你“可编程”,而某一编程上下文的功能构造块清单就是“框架能给我什么”,而编程的上下文本身蕴涵着“我想干什么”。很可惜很多的框架材料都不开宗明义说清楚用该框架能干什么,往往要学习者自己慢慢体会。当然像WIN32 API这样的框架太复杂也很难说明白。

学习如何开展?

a.我在想,虽然你知道必须以系统的观点来面对一个新的事物,研究一个新系统,但是一开始往往对新系统了解很少,甚至是一无所知的。也就是说,我们一开始总是只能以启发式(有很系统的教材)学习,甚至只能以探索式(只有零散的资料或不系统的烂教材)来学习研究一个新系统,是这样的吗?

b.忽然发现原来课后习题或课前学习目标纲要是学习很好的工具或方法!习题与学习目标罗列的质量也决定了著者的教学素质。从工具和方法的角度看,著者创造一个很好的学习工具,这个工具半自动地帮助学生学习新系统。

look-aside|

b.我在想,学习操作系统理论和实现细节对于一个应用开发人员来说有什么用?这个问题有点学习哲学对学习具体科学有什么用一般。哲学级别的知识当然有用,不过这个用是间接的,而不直接的,怎么评价这种哲学的元级别的“用”?我非常好奇!

一项设计源于一种需求

b.COM不是一个大的API,它实际上像结构化编程及面向对象编程方法那样,也是一种编程方法。COM是一种编程方法,一种方法,工具!

体系结构

《Computer Design and Architecture》

体系结构(architecture )一词指的是“建造(building)的科学或艺术,建造的方法或风格”。

《结构化计算机组成》

计算机逻辑分层后,每一层的数据类型(data types)、数据操作(operations)和特色(features)的总和称为该逻辑层的体系(architecture )。意思是说,工作在某一层的用户只能看见该层的三元素。特色不能归入数据类型或数据操作,那特色是什么东东呢?著者说像当内存的可用数量是体系的特色时,用什么芯片技术实现内存功能则不是体系的三元素之一。

体系与组织

b.有专家说其实从某种意思上说,体系与组织是同一样的东西。我不十分认同这种看法。虽然严格区分一个复杂系统哪些是体系哪些是组织似乎很困难,但我认为严格区分二者是有必要的并且也是可能的。有两条原则,第一,必须在同一层内区分体系与组织;第二,体系是本层可干活的元素的总和,包括数据、操作、流程配置、功能和约束等;组织则是体系元素的实现原理和实现详细,这些实现多半是由抽象低一层的体系元素来完成的。之所容易搞混体系与组织是因为我们对到底都了解多少体系知识和多少组织知识才可以开展工作没有清晰的认识。了解得越多当然越好,但要基本的正确地开展工作,对体系有一个系统的了解就可以了,但如果也了解组织知识则工作效果更佳。

结构和功能

    计算机是一个复杂的系统,当代计算机包含数百万个电子元件,怎样才能清楚地描述它呢?把握复杂系统一种重要的方法就是从认识复杂系统(包括计算机在内)的分层性质开始。垂直分层把系统分成一组互相关联(两相邻层间是一对一的依赖关系)的子系统,而这些子系统又可在结构上分层,这样一直到分到最基本的子系统或者基本构造块为止。

    把复杂系统层次化有助于系统的设计和描述,因为这是一种自上而下,分而治之思想的体现;自上而上有助于描述,分而治之有助于设计。系统设计者每次可灵活选择适当的系统粒度(比如可以是某一层,也可以是某层内的某子系统)进行设计。设计的内容一般都是该层或子系统内的组件,也就是功能操作,外在功能接口;及组件间相互关系,也就是结构。每一层的功能需求来自上一层的需求,而功能的实现有赖于其下一层提供的更简单更原始的功能操作。

抱歉!评论已关闭.