面向方面程序设计语言

2024-11-03

面向方面程序设计语言(共8篇)

1.面向方面程序设计语言 篇一

Java语言与面向对象程序设计-在线作业_D 用户名:W310201132227最终成绩:100.0 一 单项选择题

1.抽象和()是面向对象程序设计的重要特征。

封装 包装

分析 建类

本题分值: 5.0 用户得分: 5.0 用户解答: 封装

知识点: 4.1 抽象与封装

2.计算机软件开发中所用到的抽象有两类:()。

分析和抽取 过程抽象和数据收集

过程抽象和数据抽象 数据抽象和计算抽象

本题分值: 5.0 用户得分: 5.0 用户解答: 过程抽象和数据抽象 知识点: 4.1 抽象与封装

3.封装的重点是对数据的封装,因此将()及请求的所有相互作用通过对象方法实现称作“数据封装”。

隐藏内部状态 数据 数据捆绑 内部数据

本题分值: 5.0 用户得分: 5.0 用户解答: 隐藏内部状态 知识点: 4.1 抽象与封装

4.对象用()“域(fields)”存储它的状态。

一个或多个 常量

数据 变量

本题分值: 5.0 用户得分: 5.0 用户解答: 一个或多个 知识点: 4.2 声明Java类

5.在Java语言中对象是()捆绑在一起的软件。

数据 函数

变量 域与相关方法

本题分值: 5.0 用户得分: 5.0 用户解答: 域与相关方法 知识点: 4.2 声明Java类

6.对象的状态存储在“域”,有时又被称做变量,这些变量形式上称为()。全局变量 局部变量 实例变量 变量

本题分值: 5.0 用户得分: 5.0 用户解答: 实例变量

知识点: 4.2 声明Java类

7.对象的行为通过“()”体现出来,方法又被称做函数。

代码 语句

程序 方法

本题分值: 5.0 用户得分: 5.0 用户解答: 方法

知识点: 4.2 声明Java类

8.在Java程序设计语言中,一个类型定义对象类别细节的实现。类定义实例以及类(),指定类实现和类的直接超类的接口。

函数 属性方法 数据 变量和方法

本题分值: 5.0 用户得分: 5.0 用户解答: 变量和方法 知识点: 4.2 声明Java类

9.通过类创建的对象称为一个类的“()”。

都不对 实例

对象 变量

本题分值: 5.0 用户得分: 5.0 用户解答: 实例

知识点: 4.2 声明Java类

10.用()修饰的类可以被其他任何类使用,如果没有这个修饰符类只能被与它在同一个包中的其他类使用。

私有的 默认 全局的

public(共有的)

本题分值: 5.0 用户得分: 5.0 用户解答: public(共有的)知识点: 4.2 声明Java类

11.在Java语言中有如下几种变量:  在类中的成员变量,又称域。 在方法或代码块中的()。 在方法声明中的变量,又称参数。

系统变量 成员变量 类变量 局部变量

本题分值: 5.0 用户得分: 5.0 用户解答: 局部变量

知识点: 4.3 声明成员变量

12.定义成员变量时,类型指域或成员变量的()。所有变量必须有一个指定的类型,可以使用Java语言提供的任何数据类型。

引用型 类或接口 原始型 数据类型

本题分值: 5.0 用户得分: 5.0 用户解答: 数据类型

知识点: 4.3 声明成员变量

13.成员变量的名称必须符合Java()的命名规则。

标识符 符号 变量 类

本题分值: 5.0 用户得分: 5.0 用户解答: 标识符

知识点: 4.3 声明成员变量

14.用()修饰的域称为静态域,又称为“类变量”。

static package public void

本题分值: 5.0 用户得分: 5.0 用户解答: static 知识点: 4.3 声明成员变量

15.声明类的方法需要指定方法的访问级别,名称,类型,参数和方法体,方法的声明由编程者根据对象的()来设定。

计算 需要 功能 特征

本题分值: 5.0 用户得分: 5.0 用户解答: 功能

知识点: 4.4 定义方法

16.方法签名由在方法声明中的两个部分组成,即()。

方法名称和参数类型 方法声明

参数 名称

本题分值: 5.0 用户得分: 5.0 用户解答: 方法名称和参数类型 知识点: 4.4 定义方法

17.Java语言支持重载方法,可以区分()不同的方法。这意味着在一个类中存在方法参数列表而名称相同的方法。

返回值类型 返回值 参数类型 方法签名

本题分值: 5.0 用户得分: 5.0 用户解答: 方法签名 知识点: 4.4 定义方法

18.创建对象通常需要经过下面几个步骤:  声明一个变量用来引用对象。 实例化类。()。初始化对象 设置初值 使用对象 赋值

本题分值: 5.0 用户得分: 5.0 用户解答: 初始化对象

知识点: 4.5 对象创建、使用

19.使用对象的域必须通过它们的(),这个名称必须清楚明确的。

类 其他变量

名称引用 其他对象

本题分值: 5.0 用户得分: 5.0 用户解答: 名称引用

知识点: 4.5 对象创建、使用

20.嵌套类被分为两个类别:静态的和()。

非静态的 默认引用

对象 实例

本题分值: 5.0 用户得分: 5.0 用户解答: 非静态的 知识点: 4.6 嵌套类

2.面向方面程序设计语言 篇二

1 国内外研究进展

1. 1 流处理技术

流处理( stream processing) 是一个比较宽泛的概念。在大数据领域,流处理指的是对在线数据进行实时分析的技术。流处理的概念是相对于批处理而提出的。批处理和流处理主要具有以下不同: 在数据上,批处理分析的是离线数据,单次作业的数据集规模基本不变; 而流处理分析的是在线数据,时刻有新的数据提交给处理程序。在实时性上,批处理作业一次可能需要几个小时或者更长时间来完成;而流处理程序对新数据从接收到完成处理再到做出响应必须控制在分钟级或者秒级以内。

目前比较有代表性的分布式流处理系统包括MapReduce Online[1]、Spark Streaming[2]、Storm[3]、S4[4]等。MapReduce Online基于Hadoop实现,可以复用Hadoop的现有软件栈,但是由于Hadoop计算时延较大,所以MapReduce Online性能不高。Spark Streaming将在1. 2 节介绍。Storm由Twitter公司开发,性能卓越,支持事务型计算,因而得到了广泛应用,却存在部署困难,学习成本较高的问题。S4 采用去中心的架构设计,可以实现高吞吐率和低延迟,但是由于在传递保证等方面的不足,限制了它的使用场景。

1. 2 Spark Streaming

Spark[5]是加州大学伯克利分校AMPLab实验室开发的一个大数据计算框架,支持MapReduce计算范式[1]。Spark借鉴函数式编程的思想,提出了弹性分布式数据数据集( resilient distributed datasets,RDD) ,充分利用内存计算技术,具有极高的计算性能。Spark是目前最活跃的大数据开源项目之一,围绕Spark已经形成了一个完整而活跃的生态系统[7]。

Spark Streaming是在Spark基础上( Spark的核心计算框架称为Spark Core) 开发的流处理框架。它的设计思想是把流处理过程分成一个个时间片,每个时间片接收到的数据( RDD) 组合成DStream对象,DStream对象最终交由Spark Core来计算。Spark Streaming的这种设计思路可以充分复用Spark Core系统的代码,使得Spark Streaming的实现比较轻量,可维护性更强。当然这种设计也使得Spark Streaming的延时只能精确到秒级,略逊于Storm等系统,但是对于大多数的应用场景来说,这样的延时性是够用的。

Spark使用Scala语言编写。Scala编程语言融合了函数式编程和指令式编程两种编程范式,在语言层面引入了基于ACTOR模型的并发框架、高阶函数、惰性计算等高级特性。这些特性使得Spark的开发者受益,但是对于Spark的使用者而言却增加了不小的学习成本。为了提高Spark的易用性,Spark开发了它的Python语言绑定Py Spark[8]和R语言前端SparkR[7]。

1. 3 R语言

R语言[9]是主要应用于统计分析的编程语言。R语言最早由统计学家开发,它的语法规则和惯用编程方式天然地契合了统计和数据分析领域用户的使用习惯。R语言自带了常用的统计分析函数和程序包,并通过CRAN汇聚了超过6000 款第三方程序包,这使得大多数的统计和数据分析问题都能找到相应的R语言程序包。R语言成为了统计和数据分析领域最主流的编程语言之一。

然而R语言本身也存在一些问题。R语言程序处理数据的规模不能超过进程所在的计算机系统的内存容量,这限制了R语言能够处理的数据规模。R语言解释器是单线程模型,这使得R语言的并行计算能力偏弱。为了提高R语言的大数据处理能力,出现过若干解决办法。snow等CRAN程序包尝试改善R语言本身的并行计算能力[10],但因为R语言设计的缺陷而具有很大的局限性。 RHadoop[11]让R语言程序运行在Hadoop集群上,以此来提高程序的运行性能。这种让R语言和分布式计算框架或系统结合的做法虽然实现比较复杂,但是可以取得较大性能提升,因此本文采用的就是这一种做法。

2 系统设计与实现

2. 1 系统总体设计

本文实现的分布式流处理系统采用分层设计模式( 图1) ,自底向上分别是Spark层、中间层和用户代码层。

Spark位于系统的最底层,通过Spark Streaming为系统提供了可靠而高效的分布式流处理能力,从而让设计和实现工作聚焦在R语言的支持上。Spark基于Master-slave的并发模型实现。在此模型之下,集群中的主机分为一个主节点和若干个从节点。主节点,或称驱动节点,负责集群的任务调度、资源分配和系统监控等工作; 从节点,或称计算节点,负责处理主节点下发的具体计算任务并把处理结果返回给主节点。

中间层( 图1 Layer 2) 实现系统对于R语言的支持,即让R语言编写的流处理程序能够运行在Spark分布式计算集群上。为了实现这一功能,本文提出了R/Java的跨语言双向交互机制( 见2. 2节) ,通过对Spark Streaming的流处理相关API进行封装,提供了对应API的R语言版本。这一层是本文的工作重点。

用户代码层是用户编写面向具体问题的R语言流处理程序。在这一层,用户以和普通的R语言函数相同的方式使用中间层提供的R语言函数,就可以编写出可以运行在Spark集群上的分布式流处理程序。用户程序只需思考针对具体问题的数据处理过程,而无需关心与分布式计算有关的繁琐细节。

2. 2 R / Java跨语言交互模型

Spark主要使用Scala语言开发。和Java编写的程序一样,Scala编写的程序运行在Java虚拟机上,可以和Java语言程序直接交互( 由于这层特性,在下文中将不再专门区分Scala和Java,统称Java) 。R语言是通过R语言解释器运行的脚本语言,通常情况下不能直接运行在Java虚拟机上。为了使R语言程序能够运行在Spark上,则需要实现一个R/Java的跨语言交互模型,让R语言代码和Java语言代码能够自由地相互调用。

一种编程语言的代码调用另一种编程语言的代码称为互操作。一般情况下,R和Java没有直接互操作的能力。但是,Java语言支持通过JNI与C / C + + 代码进行交互,R语言可以使用. Call和. External函数和C / C + + 代码进行交互。由此可以考虑以C /C ++ 语言为媒介实现Java语言和R语言的间接的互操作( 图2) 。然而这种做法需要编写大量的C /C ++ 代码,导致编程复杂度上升,可移植性变差,可维护性下降。r Java[12]采用图2 的设计实现了R语言和Java语言的交互,它通过封装C /C + +代码并提供R语言API的方式降低了编程难度,但是存在版本陈旧、接口设计较差等可用性的问题。因此本文中没有采用基于互操作的实现方式。

经过研究Py4J[13]、SparkR等程序的实现原理,本文提出了如图3 所示的R/Java跨语言双向交互模型,但是包含了“R对Java方法调用”( 见2. 2. 1节) 及“Java对R函数调用”( 见2. 2. 2 节) 两个方面,比SparkR中的跨语言交互模型更加完整。

该模型由三个单元构成,分别是R-side、J-side和R-Worker。R-side单元面向用户编写的R语言程序,把R语言代码转化为对Spark系统的API访问。J-side单元与Spark系统相对接,调用Spark Streaming的Java API以使用分布式流处理功能。R-side单元和J-side单元工作在Spark集群的主节点上,而R-worker单元则工作在Spark集群的从节点上,它的作用是辅助执行从节点上的计算任务。三个单元相互配合完成R语言和Java语言代码的交互,沟通了用户代码层和Spark层( 图1) ,从而使得用户编写的R语言程序能够工作在运行于Java平台的Spark集群上。

图4 是一段不严格的R语言代码,以#号开始的行是注释,每行第一列的数字是行号。下面将以这一段示例代码详细介绍R/Java跨语言交互模型的工作原理。

2. 2. 1 R对Java方法调用

用户代码访问Spark Streaming的API,从而具备在Spark集群上运行分布式流处理程序的能力。用户代码使用R语言编写,而Spark Streaming API是Java语言的,用户代码运行在Spark集群上就会有R对Java方法调用的过程。比如在图4 中,第3行代码创建了一个类型为Class T的Java对象x,在第4 行代码调用了x的方法method A得到计算结果r1。

本文提出的R/Java跨语言交互模型采用“双进程+ SOCKET”的方式来实现R对Java的方法调用。这种方式的基本原理是,用户代码运行时所在的R解释器进程创建Java虚拟机进程,R进程向Java进程发起执行相关方法调用的请求,Java在执行完方法调用后把结果返回给R进程,二者之间通过基于SOCKET的跨进程通信进行交互。两个进程分别对应图3 中的R-side和Java-side。具体过程如下。

( 1) 初始化。这一步在用户代码实际开始执行之前自动完成,且一般只进行一次。执行用户代码的R解释器进程创建一个Java虚拟机进程。Java进程创建一个服务器端套接字( J-Server) ,监听配置文件指定的端口。

( 2) R进程发送请求。R进程创建客户端套接字( J-Client) ,连接到J-Server,向Java进程发送请求类型、关联参数等序列化之后的数据。请求类型包括创建对象( 如图4 第3 行) 、调用对象方法( 如图4第4 行) 、调用静态方法( 即调用Java类的static方法) 等。关联参数,对于创建对象的请求包括类名( “Class T”) 、构造器形参( “arg1”) 等,对于方法调用的请求包括对象标识( “x”) 、方法名( “method A”) 和方法形参( “param1”) 等。J-Client开始等待J-Server返回结果。

( 3) Java进程接收和处理请求。J-Server接收到J-Client发来的请求,反序列化请求数据,解析出请求类型、关联参数等数据。

对于创建对象的请求,J-Server依据类名、构造器形参通过反射确定合适的构造器,执行该构造器,结果记为X; 对于调用方法的请求,J-Server依据对象标识、方法名和方法形参,从Java对象池( J-Pool)中找到对象标识实际引用的对象,并确定合适的方法,执行该方法,结果记为X。

J-Server返回处理结果取决于结果X的类型。如果X是void、null、简单类型( 如布尔值、数值、字符串等) 或简单类型的简单复合结构( 如数组、链表等) ,将按照预制的规则序列化之后返回给J-Client。如果X不是上述类型( 即X是一个一般性的Java对象) ,则把这个对象存放在J-Pool中,返回序列化之后的对象唯一标识给J-Client。

( 4) R进程接收处理结果。J-Client收到J-Server返回的数据,反序列化和解析,从而得到R调用Java方法的执行结果。

在上述过程中,Java对象池( J-Pool) 存放了Java进程运行的部分对象。这些对象往往需要和R进程进行交互,但是又难以表示为R进程的一个运行时对象,无法在R进程中直接使用。通过把对象实际保存在Java进程的对象池中,而提供一个可以被R进程访问的对象标识,使得R进程可以通过这个标识符与实际的Java对象交互。这样可以比较好的解决兼容性的问题。

2. 2. 2 Java对R函数调用

和Java语言不同,在R语言中,函数和数值、向量、列表等普通变量一样都是对象,可以和后者一样作为函数的形式参数传递。在2. 2. 1 节中,如果R调用Java方法的形参是函数,则会在转化为闭包、序列化之后传递给Java进程。图4 第5 行定义了一个R语言函数,函数名是foo。第6 行代码调用了Java对象“x”的方法“method B”,函数foo作为该方法的形参传递。从2. 2. 1 节可知,“method B”会在Java进程执行,作为方法形参的foo会被使用。这时就出现了Java对R的函数调用。

Java对R函数调用,根据R函数用途不同,可分为两种类型。

第一类,数据型函数。这类R函数用于数据处理,它们被传入map等Spark Streaming的API中,用于对数据进行转换。在Spark Streaming任务执行过程中,这类函数被R进程以闭包的函数提交给Java进程,Java进程把闭包作为流处理流程的一部分提交给Spark集群; Spark集群中的主节点接收到了这个闭包,在为从节点分配任务的同时把闭包传递给了从节点。在从节点上,主任务进程( Java虚拟机进程) 创建新的R进程,把闭包和需要处理的数据传递给R进程( R-Worker) ; R-Worker解析闭包,执行数据处理函数,最后把处理结果返回给Java进程。Java进程和R进程之间通过标准输入流和标准输出流进行数据传递。

第二类,功能型函数。图4 中的函数foo,可能是调用中间层( 图2) 的其他R语言函数。这类函数因为上下文依赖等原因,必须在主节点的R-side上运行,所以不能采用调用数据型函数的解决方法。这类函数出现在系统中间层的内部,对一般用户不可见,所以称之为功能性函数。Java调用功能型函数的基本原理和R调用Java方法的原理相同,但过程相反,同时也复用了R-SIDE和J-SIDE( 图3) 。具体过程如下。

( 1) 初始化。R进程创建服务器套接字( RServer) ,监听指定端口。

( 2) Java进程发出请求。因为Java调用R函数发生在R调用Java方法之后,所以当出现Java调用R函数的时候,Java进程已经存在。Java进程创建客户端套接字( R-Client) ,连接到R-Server上,把功能型函数的闭包等数据序列化之后传递给R-Server。

( 3) R进程接收和处理请求。R-Server接收到来自R-Client的请求以后,反序列化请求数据,从闭包中解析出需要执行的函数,得到执行结果。和2. 2. 1 节中的第( 3) 步不同,执行结果不会出现复杂的R语言对象,因而,可以直接把执行结果序列化之后返回给R-Client。

( 4) Java进程接收处理结果。R-Client收到RServer返回的数据,反序列化和解析,从而得到Java调用R函数的执行结果。

在实现过程中,功能型函数的闭包在R进程( R-Side) 创建也最终在R进程执行,传递给Java进程( J-Side) 也只是因为函数执行的时机由Java进程决定。为此可以在R-side创建一个R进程的运行时对象池( R-Pool) ,把功能型函数的闭包对象寄存在R-Pool中,并为每一个闭包对象分配一个唯一性的标识。这样,功能函数的闭包对象无需传递给Java进程,在第( 3) 只需要通过闭包的对象标识从RPool中找到合适的闭包对象即可。这样可以为减少进程间通信的开销,优化系统性能。

2. 2. 3 套接字创建和销毁

在2. 2. 1 节中服务器套接字J-Server在用户代码执行之前系统初始化时创建,其后一直保持坚挺状态,直到程序退出。客户端套接字J-Client在遇到R调用Java代码的时创建,当得到J-Server返回的结果以后立即销毁。这时因为R解释器是单线程实现,J-Client不停用则程序会阻塞在该处。

在2. 2. 2 节中,R-Server不能像J-Server一样在系统初始化是创建并开始监听,否者会阻塞该处代码之后程序的运行。R语言不支持多线程,让Java调用功能型R函数实现变得困难。经过对Spark Streaming代码的研究,本文在实现时利用了一个技巧。

Spark Streaming代码在定义流处理的具体过程之后,调用Streaming Context的start方法才会真正开始处理数据。而在start以后,这个工作线程就处于闲置等待状态了,直到程序异常退出或者用户关闭进程。对于单线程的R语言进程来说,这种做法实在是浪费资源。为此,本文在实现的时候复用了start之后的线程。在start之后再启用R-Server,让这个线程同时成为了R-Server的监听线程。因为start之后一段时间整个系统会等待Spark自身初始化,所以在此之前不会有R-Client对R-Server的请求发生,这保证了线程复用方法的正确性。

2. 3 闭包和代码优化

闭包是大多数函数式编程语言支持的一种技术,也被很多命令式编程语言支持,是“第一等级函数( first-class function) ”技术的基础。在有些编程语言里面,闭包也被成为lambda表达式。从技术上看,闭包是函数和函数上下文( 环境) 的所组成的特殊的数据结构,函数上下文可能包含外部环境变量的引用。闭包技术体现了函数式编程语言中“代码即数据”的思想,把表示数据处理操作的函数命令打包成为一种和普通变量一样使用的数据类型。

闭包的应用使得函数的执行脱离当前进程而转移到其他进程,使得函数执行的时机变得更加灵活,同时也对代码优化有积极作用。比如对于一些连续数据处理可以进行合并然后再经过闭包传递执行,这样做可以减少模块间通信所产生的额外消耗,从而提升性能。下面我们通过一个例子来说明。

图5 是闭包和代码优化过程的示意图。图5( a) 是R语言的一个代码片段,这段代码中,数据i经过func1、func2、func3 三个函数的变换得到最终结果z。在系统中,每个函数实际执行结果是返回一个对象,三个函数执行结果是三个依次嵌套的对象: 如图5( b) 所示,图中每个矩形表示一个对象,矩形的包含关系,也象征了对象的聚合关系。对象聚合的目的是获得如图5( c) 所示的闭包,在图5( c)中func1、func2、func3 三个函数聚合在一个函数c中构成一个闭包,这个闭包包含了对最初的数据i的从func1 到func3 的转换过程,而只有当闭包被执行,转换过程才会发生,这样可以实现类似延迟加载的作用; 闭包c可以序列化后传递给其他进程,这也是2. 2 节中跨语言交互的基础,也可以减少跨语言交互的频次,起到了代码优化的作用。对用户而言,图5 所示的过程是透明的。

3 应用示例

词频统计( word count) 是数据分析中常见任务,是文本向量生成、热点话题发现等多类分析任务的基础。图6 是用R语言编写的网络文本的词频统计应用的代码,应用了flat Map等Spark API的R语言接口,也有function( l) { strsplit( l," ") [[1]]}等用户自定义的R语言函数。图7 展示了该程序运行效果。仅仅使用几行R语言代码就可以开始一个分布式流处理词频统计任务,简单快速,对大多数熟悉R语言的统计分析人员和数据科学家而言非常方便。

4 结束语

3.面向方面程序设计语言 篇三

关键词:VB.NET;面向对象编程;排课系统设计

中图分类号:TP311文献标识码:A文章编号:1007-9599 (2013) 06-0000-02

1引言

排课问题是一所学校的教学及其他活动的基准。我国的高等教育事业的不断发展,通常情况下,各大高校将分配到本校的计算机排课系统提交到院校的教务部,由负责的数据工作人员录入电脑。这种最基本的排课系统,只能在一定程度上提高效率。因此,计算机系统研究人员也在不断探索更先进的计算机技术,从而使教务人员从复杂的任务中解放出来,提高老师的教学备课时间有效地利用教学资源,而且还提高教学管理的质量和教育管理的工作效率。如何减少教务工作者的工作强度,更有效地利用人力和物力资源,如何管理和利用好数据信息,已经成为当前人们关注的主要问题。

VB就是Visual Basic 的简称,它是一种可视化编程语言,功能包括应用程序、编写代码以及用户界面设计。Visual Basic6.0中改变程序的机制,是对传统意义上的主程序的改造,它是通过子程序驱动。作为面向对象编程语言,代码和数据相结合,大大提高了程序设计的效率,当前程序员只需要编写传统上程序员函数代码中的一部分。用户在使用时,也大大简化,只需知道程序的功能,至于它是如何工作的就不必知道了。

2编程语言Visual Basic.NET概述

开发数据库系统的首选语言是Visual Basic.NET,通常被简称为VB.NET,是基于NET框架的面向对象的编程语言。VB.NET是可以用来创建多种程序的编程机制,包括Windows应用程序、网络服务和网络程序、智能设备等,并且支持面向对象。

Visual Basic.NET和现在所知的开发工具完全不同,Visual Basic.NET具有强大的网络功能。其一是VB.NET中有它将是DCOM的取代者;其二是VB.NET中还有Web Forms,它代表了一个一个的Web页面。它的特点包括,作用广泛,容易掌握,使用也十分方面,拥有支持可视化继承的窗口板块设计器,程序采用标准化界面,真正支持面向对象和继承性。

3排课系统需求分析

3.1用户需求分析

班级信息有所在教室、所在教室上课班级的个数、班级学委的联系方式、班级专业编号;课程信息有班级专业编号、每学期总课时数目、每周节数以及是否分单双周上课、任课教师基本信息;教师信息包括手机号或其他联系方式、教师所上课程名称等;时间信息包括所上课程是第几周、第几节以及是否需要临时补课等。每门课程都有自己的期末考核办法,可以是书面作业,也可以是社会实践;每门课程可以规定禁止安排上课时间,也可以指定教师。

每个教室属于一个教学区域、教室名称、教室类型。为了考虑节约教学资源,根据教学班人数来安排合适容量的教室。同时,在同一时间每个教室只能安排某一教学班的授课。

3.2排课系统功能分析

排课系统首先需要实现系统初始化,包括设定教学区域、校区、学年学期、学期起始周次等。此外还有信息管理功能的维护,包括院系专业基本信息、基本信息、教师基本信息、教学班基本信息、班级基本信息、课程基本信息、学生基本信息及自动导入和手动录入教室基本信息。

其次是对于某些特殊情况,比如放长假之前需要补课,又比如任课老师要出差无法按时上课,这时就需要进行手动预排课。此种情况下,班级负责人就需要去上报情况,跟教务管理人员回报需要变动的教学计划,提前查看近期空教室的情况,推迟课程,重新排课。此时,需要考虑对下次授课时间的设定以及对教室容纳量有没有特殊的要求等进行排课,然后教务人员及时录入,并挂在网站上。

再次是网上查询课表、课表打印功能。排课系统提供互联网查询功能,进行计算机排课结束后,要确保学生和任课老师能够在网上查询本学年的课程安排情况,学生能够在网上打印输出自己班级的课表,教务人员可以进行简单的调课和数据修改,还可以查询各种类型课表。

此外还包括用户管理系统和数据备份与恢复。对不同级别的用户根据不同的情况设置不同的访问权限,用户必须先通过身份认证后才能进入系统,进而进行权限范围内的其他操作。计算机系统排课还可以实现排课系统设计中数据库内的信息安全,包括将数据库中的重要数据进行备份、从备份文件中恢复错误删除掉的数据等等。

4排课系统模块设计

排课系统是各大高校每学年开学前排课的工具,排课系统的作用在于它可以方便快捷地生成课表,同时可以储存本学年的课表文档。根据排课系统的需求,结合各个院系班级的情况以及任课老师的分配,由于录入数据比较庞大,因此需要在系统中装载数据模块,完成了这个预备工作后在开始执行程序语言运行。排课系统需要涵盖班级、教师、用户管理多个模块,而且需要在每一个大的功能模块下分派数目不等的子模块,以此来减少教务人员工作的难度,同时也可以方便用户随时在互联网上查询或下载课表。

4.1基本信息设置模块

(1)班级设置模块。“班级设置”模块负责维护班级信息。班级信息设置模块包括班级所在院系,班级每学年课程节数,班级学生人数,班级班主任基本情况等。

(2)课程设置模块。“课程设置”模块负责维护学校的课程信息,课程信息设置项包括专业课程名称,课程每学年安排多少个课时,每周有多少节,是否分单双周上课,任课教师情况等。

(3)教师设置模块。计算机系统对教师设置模块的设计主要解决教师信息维护的问题,包括任课老师的姓名、电话、邮箱等基本信息,以及任课时间与地点的统计。此版块的功能同样可以根据需要添加或是删除信息等。

4.2用户管理设置模块

用户管理设置板块是编写用户的基本信息,包括用户身份认证、名称、类别、密码等。用户管理模块的作用是保证用户信息添加、删除、修改的维护工作,此外用户管理要对对不同用户权限做出审查,同时,判断该用户是对数据库的访问权限达到限制额,这样做的目的是保证用户在使用过程中的信息安全。

用户管理是对用户信息进行添加、修改、删除和查看,并对用户信息的这些方面进行维护。基本操作流程:首先,点击添加新用户,填写用户信息点击提交,添加新用户成功。其次,删除选择要删除的用户,点击确定,删除用户。再次,修改用户信息,点击修改用户信息,选择要修改的用户,点击确定,提交修改。

5结论

高校各个学年开课之前必然需要排好课表,排课任务重要并且复杂,是高校教务管理工作的难题。排课的目的在于保证学生上课有合适的地点,老师有互不冲突的教学时间,从而使每学期的教学工作能够有秩序的展开。在计算机系统广泛应用之前,处理数据以及管理排课日程由教务人员手工操作,任务繁琐,容易出错,出错之后难以及时更改,造成各种麻烦,严重影响教学效率。面向对象编程语言VB.NET,不仅十分轻松的完成编写任务,在代码输入上也大大简化了工作程序,并且这种语言完全面向对象,代码维护方便容易,解决原先不能及时更改错误的难题。本文的主要工作是基于面向对象编程语言VB.NET,以设计高校课程安排管理系统的需求为目的,设计并实现了包括教室安排、班级管理、课程设置、教师设置、用户管理四个功能模块的高校排课管理系统,该系统的实现有利于提高工作效率,实现排课系统管理的信息化和标准。

参考文献:

[1]李英杰.VB.NET2005程序设计实例教程[M].天津:天津大学出版社,2008,11.

[2]郭瑞军,王松.Visual Basic.NET数据库开发实例精粹[M].北京:电子工业出版社,2006(5):34-59.

[3]孙雪莲,冯毅夫.基于B/S模式下的高校食堂管理系统设计[M].吉林师范大学学报(自然科学版),2005,11.

[4]李春葆.VB.NET 2005程序设计教程[M].北京:清华大学出版社,2009,2.

[5]龚辉锋,赵玉意,秦立公.基于VB.6与Excel的物流软件的开发构想中国管理信息化[J].2008,12.

4.面向方面程序设计语言 篇四

申论考试要“发挥”得好,没有较高的语言水平是不可能的。从申论考试的题目来分析,申论考试中阅读理解能力、综合分析能力、提出和解决问题的能力也都要通过文字表达来体现,因此,语言表达能力是申论考试中的一个重要测评要素,在各个题目中都会赋予其一定的“分值”。对于这一点,万学金路周建老师提醒考生应有明确的认识,要弄清题目的要求,在备考过程中通过必要的训练,提高、优化自己的书面语言表达能力。

申论考试,要求考生能够依据给定材料做“片断”陈述和“成文”论述。但无论是“片断”还是“成文”,申论考试都属于文章类,而不是文学类,也就是说,要求考生掌握的是议论型、说明型和实用型语体,而不是描写型的审美语体。所以,在平时的练习中,考生应以说明、陈述、议论等语言表达方式为主体,表达自己概括、分析的能力和提出问题、解决问题的能力。申论作答,不能“借题发挥”,不能抛开“材料”写成“随笔”。有些申论作文的得分不高的原因不是文章不好,而是不符合论述文的语言要求。

总体而言,申论的语言表达应该注意以下几个要点:

1、准确。所谓准确,是指语言传输的信息绝不能有歧义。其中涉及的时间、地点、人员、范围、性质、程度等必须明确,解释要具有惟一性。赞同、反对、肯定、否定,必须鲜明,不能含糊其辞。

2、简明。所谓简明,就是要剔除语言中一切冗余信息,将主要的信息突现出来。要力求用最精要的文字符号实现预定的表达目的。

3、规范。所谓规范,有两层含义。一是文章中使用的词语要符合说话者的身份,适于审阅者需要;二是要语出有据,不用方言,避免俗语,力戒生僻用语。语言应以得体、郑重为上。

4、清晰。所谓清晰,是指用语的条理清晰,应能把握主次,辨明因果,从表达目的出发,安排句序、段次;语句之间、段落之间都要体现出合理、严谨的逻辑关系,力求将意义传达到最佳。

5.面向方面程序设计语言 篇五

刘 争 锋

如果说眼睛是心灵的窗户,那么语言就是思想的镜子。一个人说话的水平是头脑水准最有力的证明。对一个教育者来说,语言运用的好不好,直接影响着教学效果,因为给学生传授知识,引导思维,培养能力,提高认识都离不开语言的表达。教育家苏霍姆林斯基曾说:“教师的语言修养,在极大程度上决定着学生在课堂上脑力劳动的效率”。教师高度的语言艺术能够造成生动活泼、乐观愉快的教学氛围,能够激发学生的学习兴趣和热情,启迪和引导学生积极的思考,使学生在洋溢着艺术魅力的气氛中受到教育和熏陶。那么,教学过程中,怎样才能具备较高的语言艺术呢?笔者以为应该注意以下八个方面。

一、语言的科学性

教师在教学准备过程中必须准确的把握教材,力求措辞的合理和语法的规范,选词用句要细心推敲,恰当得体,确保语句通顺连贯,并要求做到发音准确,字正腔圆。切忌随心所欲,信口开河,语序混乱,词不达意,吞吞吐吐,哼哼哈哈,文理不通,滥用方言。

二、语言的逻辑性

教师讲课时,无论叙事说理,必须条理清楚,脉络分明,围绕中心,有的放矢,言之有物,驳之有据,说有分寸,讲有尺度,详实周密,层层推进。切忌东一榔头西一棒子,语无伦次,六、语言的精炼性

教学过程中,教师还要语言精练,言简意赅。对知识的讲解、分析、议论应当纯粹精辟,快捷明了,使学生能在较短时间内获得较多知识,并便于消化吸收,巩固练习。切忌丢三落四,拖泥带水,形同八股,啰嗦重复。

七、语言的趣味性

教师讲课中,应当能拓宽话题,抓住热点,引经据典,多方展示。并能采用诙谐幽默的语言,新颖生动的比喻,来激发学生学习兴趣,协调师生关系,提高学生求知欲望,切忌满口术语,平淡乏味。

八、语言的音乐性

授课时,教师应当把握好讲话速度的快慢,声调的抑扬顿挫,情感的高低起伏。正确的运用语言的音乐性,不但能够突出讲授的重点、难点,而且可以调动学生学习的积极性和听课的注意力。更有利于学生对所学知识的理解和记忆。切忌有气无力,神情萎靡。使得课堂缺少生机和活力。

6.面向方面程序设计语言 篇六

教师的教学语言基本功如何,直接影响课堂教学的效果。教师的语言基本功除了做到清晰流畅,生动形象,语调抑扬顿挫、缓急适当、富有节奏感,会讲普通话外,我认为还必须具备以下要求:

一、严谨性与精确性

教师对于孩子而言是模仿的榜样,所以在教学中,语言必须合乎逻辑、周密严谨,对于重要的概念,要力求精辟,对于孩子们提出的问题不允许出现“大概”、“也许”、“差不多”之类模糊字眼。比如说在教学《秋姑娘的信》时,我们学到了三种动物过冬的方式:飞到南方去、冬眠以及蜂巢藏蜜。在拓展环节,孩子们会说出很多候鸟都是飞到南方去过冬,以及蚂蚁也是储存粮食过冬。令人印象深刻的是冬眠这种过冬方式,孩子们有的说蛇,有的说青蛙,有的说熊„„这个时候,教师必须要以严谨和精确的态度指出,熊分很多种,北极熊生活在寒冷的北极,所以不冬眠,而狗熊因为冬天寒冷,没有食物,所以要冬眠。孩子们会在教师严谨的教学语言中学会认真思考今后每一个问题的细节。

二、教学语言要言简意赅

教师的语言要高度精炼、简洁,用最少的语言表达最丰

富的内容,建议注重四点:

1、是抓住问题的实质,围绕中心组织教学语言。抓住了问题的实质,就可以一语中的,少费口舌,否则会喧宾夺主,废话连篇,叫人如坠五里云外,摸不着头绪,理不清脉络。

2、是慎重重复说过的话,克服随意性。

3、是剔除教学语言中的杂质和赘瘤。教学语言中的杂质是指老师口语中那些表情达意不起作用的音节,如“嗯、啊、唉、呀”之类的,基在语句中频繁出现,便无任何实际意义了,而且容易使学生注意力分散,有的学生在课堂上不去关注老师讲的内容,面专门去数老师一堂课说了多少个“啊”或“唉”。教学语言中的赘瘤俗称“口头禅”,有的教师几乎说每一句话都带一句“是不是”或“对不对”等毫无意义的话,让人听了特别不舒服、不顺耳。含有杂质、赘瘤的教学语言,就不能是干净利落的教学语言,对听者来说是一种精神折磨,教者要下决心剪除。

4、是“工欲善其事,必先利其器”。教师要履行好教书育人的职责,就必须有一个具有像阿拉丁神灯一样魔力的工具,这个工具不是别的,就教学语言。

进入《江南》这一课,往往会让学生不太理解江南的含义,光给孩子们讲,江南就是长江以南的地区,就是江苏、安徽两省的南部和浙江的北部,孩子们更是一头雾水,针对

这一学情,我设计了这样一个问题,“孩子们,我们生活在江南水乡,说说你眼中的江南是什么样的吧?”这样的提问,具有一定的启发性。事实证明,学生回答是可喜的,他们会在说出看到的小桥流水,公园里的荷花„„这样江南的形象就深深地印刻在孩子们的心中了。

三、教学语言有幽默感

要使教学语言生动形象,就要以语言的表现力来吸引学生的注意力,激起学生的求知欲望和学习热情。幽默是一种较高的语言艺术境界,它富有情趣意味深长。课堂中要让学生在快乐中掌握知识。如我在教学“纸”字时,为了不让学生在右下方多加一点,我就这样告诉学生:“一张洁白无暇的纸是不容许有污点的哦。”在教学“饥”字时,我是这样教学生记住这个字的:只吃了几粒米饭,肚子肯定会觉得饿的。这样,学生既记住了字形,又了解了字义。可见,教学时,将枯燥的词语教学,通过幽默风趣的语言,将其与现实生活紧密联系,不仅活跃了课堂气氛,还激发了学生的学习兴趣,加深对事物的理解感受程度,使学生在轻松、活泼的课堂气氛中学到知识,受到教育。同时,可以让学生在笑声中明辨是非。恰当的运用幽默的教学语言,对不良现象进行批评时,是讽而不苟,刺而不毒,学生能在轻松诙谐的气氛中使是非曲直泾渭分明。例如,一位教师在教《游园不值》这首诗时,忽然一位迟到的学生“砰”的一声,推门而入,径直人座,这位教师就诗取材,问道:“‘小扣柴门久不开’,诗人去拜访朋友,为什么是‘小扣’而不是‘猛扣’呢?”学生议论了一番,有的学生说,因为诗人知书达有教养,讲礼貌。然后教师走到那位迟到的学生身边,弯腰轻声问他:“你说大家说得对吗?你赞成‘小扣’还是‘猛扣’?”这位同学脸红了,同学们也笑了起来,在笑声中大家都受到了教育和感化。课堂中运用幽默语言是艺术性讲述中常用的技巧,他是智慧和技巧的结合,是高尚情趣和适当的分寸感以及机智应变技能的反映。幽默应是一位优秀教师所必须必备的品质和能力之一。教师的课堂口语应该是幽默的,教师也应该是幽默的人。

四、恰当运用体态语言,激发学生乐学情感

作为教师一定要注意通过有感染力的表情和动作来增进学生的情感体验,使学生爱老师所爱,憎老师所憎,达到以情育情的目的。例如在执教《乌鸦喝水》时的教学片段: 师:课文讲了关于一只乌鸦找水喝的故事,那么,乌鸦为什么要找水喝呢?(偏头,以疑问的口气和眼神看着同学们。“为什么”重读)生:因为乌鸦口渴了。

师:嗯!(点头赞许)回答的真棒!大家说口渴时是什么滋味啊?!

生:痛苦,难受......师:是啊!乌鸦也很难受,所以呀!它要找水喝。乌鸦是怎么找水喝的呢?(焦急、难熬的表情)生:到处找水喝。

师:对!是“到处”(重读)找水喝,“到处”是什么意思呢?有那位小朋友能够用“到处”说一句话给大家听听?(鼓励的眼神,激励的语气,教师并走下讲台)生:昨天,我到处找都找不到我的铅笔。

师:好!说的真精彩!(师领生鼓掌),那么,“到处”的意思就是:处处,各处,到这儿到那儿的意思。

师:乌鸦到这儿找水,又到那儿找水,乌鸦辛苦不辛苦啊?!(略弯腰,加深感情)生:辛苦!(大声地、同情地)

师:那么,这个时候,乌鸦找到水了吗? 生:找到了!生:水在瓶子里。

师:乌鸦看见一个瓶子,瓶子里有水,乌鸦高兴吗?(放下书,双眼睁大,双眉展开,脸上满是兴奋与快乐的表情)生:高兴,快乐。生:非常高兴!生:终于找到水了,啊!

师:哪位小朋友能站起来把乌鸦找到水的高兴劲儿给大家读读?(教师举起右手,示意鼓励学生站起来度)

生:我读,我读。

学生读完后,教师深情评价。师:乌鸦看到瓶子里有水,非常高兴呀!那么,乌鸦刚开始喝到水了吗?(由疑问让学生怀疑)生:没有。

师:为什么呢?瓶子里有水,乌鸦应该喝到水了呀!生:可是,瓶子里水不多,瓶口又小。

师:哦!(恍然大悟)原来,瓶口小,瓶子里水不多,乌鸦喝不到水。(双手往下放,眼神无光,显出由原来高兴到现在失望的表清与动作)

生:是啊!乌鸦喝不到水。生:那怎么办啊?

教师使用多处丰富有感染力的表情,在“乌鸦看见一个瓶子,瓶子里有水”这一教学过程中,乌鸦找到了水,会非常的兴奋和快乐,此时,教师放下书,双眼睁大,双眉展开,给学生以非常吃惊、兴奋和快乐的面部表情,让学生一下子会感觉到乌鸦是多么兴奋,多么高兴啊!不仅吸引了学生的注意力,使学生跟着自己的指引而向下进行教学活动,更有助于学生感悟教师对课文的感情基调,让学生感受到,此时心情是快乐兴奋的,于是,学生会很快地被老师丰富的表情、快乐的情绪感染,争着回答“非常高兴”并溢于言表,使课堂始终洋溢着自由、平等、亲和的情感氛围。而在教学进程进

入到“瓶口小,瓶子里水不多”乌鸦喝不到水处,老师眼神无光,双手放下,显出失望的表情,学生会很容易的感受到,此刻,老师是不快乐的,是很失望的,而教师对课文的情感,会直接影响着同学们,小学生很会察言观色,他们会从老师失落的表情、失望口气、无光眼神、双手往下放的动作中敏感地觉察出老师要表达的是失望的感情,进而,自己也会不自觉的被感染而发出“是啊!乌鸦喝不到水了”。在此片段中,教师对乌鸦找到水时的兴奋表情和乌鸦喝不到水的失望表情都时刻牵引着孩子们的心情,让他们的感情波浪高低起伏,由师之情染生之情,更能拉近师生之间的感情,成为师生间以心连心的心潮相逐,以情生情的激情奔涌,而教师丰富有感染力的表情,则是师生间心潮相逐的关键纽带。“教育就是爱,爱就是教育”。新课程理念下的新课堂,追求的就是用生命点燃生命,用心灵感动心灵,用灵魂塑造灵魂!在教学过程中,教师丰富有感染力的表情,会时刻感染吸引着同学们的情感兴趣,使教师和学生的情感产生了强烈的共鸣,从而收到最佳的教学效果。

7.面向方面程序设计语言 篇七

随着软件系统工程复杂性的提升, 在进行软件开发时, 就会有越来越多的开发人员参与进来。视点模型的种类比较多, 每种模型都具备自身的优缺点, 不过可以肯定的是, 在进行需求导出、定义和规约的过程中, 这些视点模型都对其有帮助。基于视点的方法所具备的优势是公认的, 不过, 在现有的软件工程标准中, 很难实现这些技术的引进, 最根本的原因就是视点模型的弹性比较差。针对这一问题, 建立起了新的视点模型。在新的视点模型中, 系统需求的封装并不由视点来直接进行, 而是由关注点来进行, 这样一来, 视点模型所具备的弹性就比较强, 即使需求之间可能会发生冲突, 但是可以被很好的解决。对于工程需求方法来说, 需要对关注点分离的需求以及实现作用域较广的需求、约束的需求进行协调, 不过, 在现有的面向方面需求工程方法中, 只对横切关注点的分离重视, 这导致片面性的出现, 为了解决这个问题, 建立了关注点模型, 在此模型中, 通过关注点来实现分解系统需求, 在系统需求中, 功能性及非功能性的需求都包含在内, 进而实现科学的分解。

二、元视点空间与元关注点空间

对于当前的需求工程师来说, 已经习惯了传统的二维思考方式, 不过, 当前的需求工程中, 关注点分离为多维的, 这就要求需求工程转变自身的思考方式, 由二维向多维跨越, 这对需求工程师来说, 是一个不小的挑战。在利用多维视角开展需求工作时, 视点及关注点对具有非常重要的作用, 通过视点, 能够保证需求的完成, 通过关注点, 有效的后实现需求工作的多维化。在元视点空间中, 包含多个视点, 这些视点会在系统中重复出现, 这些就是元视点;在元关注点空间中, 关注点都是系统中经常出现的, 具备典型性的特征, 这些关注点就是元关注点。在元视点空间中, 当需求开始获取时, 就需要进行视点识别工作, 而元视点的存在就是提供指导性的作用, 通过指导, 识别出视点, 并将关注点获取出来, 在进行识别的过程中, 采取的方式为迭代、递增。

三、关注点间关系识别

在关注点与关注点之间, 存在一定的关系, 在元关注点空间中, 元关注点的定义会将这种关系记录下来。另外, 对于同一个问题, 会存在不同的视点, 在获取需求时, 视点的方式会导致出现不同的认知, 这样一来, 关注点的数量就会比较多, 尽管这些关注点来源于同一个问题, 但是每个关注点都有各自的阐述, 对于这些关注点之间的关系, 会在元视点的定义中进行记录。不过, 在软件系统工程中, 不仅仅会包含这些已经存在的关系, 还包含额外的关系, 这时, 就需要对其关系进行科学的识别。

四、组合规范化说明

对于关注点需求之间在较细粒度上的关系, 组合规则进行了定义。在进行组合规范化说明时, 采用的为XML标签, 组合规则为封装的形式, 比如〈组合〉〈组合/〉、〈需求〉〈需求/〉等, 通过这些组合规则, 对关注点需求之间的关系进行明确的说明。

五、架构选择

架构选择是需求工程方法中最后一个步骤, 在进行架构选择之前, 要对关注点的决策点分析进行充分的了解, 然后才能进行选择工作。实际上, 建构选择利用的就是决策点, 通过导出作用, 形成最终的架构。在进行导出时, 每个关注点可导出的架构选择都是比较多的, 为了充分的满足客户的需求, 就需要科学的进行建构选择, 保证最终的选择具备较强的合理性。

结论

在面向方面需求工程方法研究的过程中, 以视点为基础, 通过视点模型及关注点模型的建立, 准确的确定了需求模型, 并根据模型, 获取了软件系统工作的各个关注点, 接着, 经过相应的步骤选择出最终较为合理的架构, 进而将需求工程方法中的问题有效地解决。本文中所研究的方法尚存在一定的不足之处, 还需要进一步地发展和完善, 以便于在软件开发的过程中, 更好地满足客户的需求, 进而促进软件系统工程的发展。

参考文献

[1]金英, 刘华虓, 张鹏.一种面向方面需求模型的分析与验证方法[J].计算机学报, 2013, 10 (01) :63-73.

8.面向方面程序设计语言 篇八

【关键词】中美时间观 ;语言词汇;差异

中美时间观在时间意识、时间观念、时间价值取向等方面都存在巨大的差异,这种差异不仅体现在社会生活的方方面面,在两国文化中体现得尤为明显。而语言作为文化的载体,以独特的方式反映着人们的思维方式和行为模式。词汇作为语言的主体,更值得研究。

一、称谓语

称谓语与社会和文化紧密相关,不同的文化背景下,人们对称谓语的理解有很大差异。中国人注重姓氏,姓名中,姓在前而名在后。因为姓氏在中国,代表着这个家族的历史,是祖先的一种传承。交际过程中,通常会以姓氏来称呼别人,如“王小姐”“刘先生”。在美国,则是相反的情况,名在前而姓在后,除了豪门贵族,姓氏对普通人来说,并没有特别重要的意义。美国人喜欢用职业的名衔称呼别人,比如“Doctor. Wang”“Prof. Liu”,因为他们认为工作是通过努力得来的,是个人的劳动成果,更值得尊重。在日常生活中,美国人更倾向于用名字称呼别人,不只是朋友、同学,长辈也一样。

“老”体现了两国对年龄的不同态度。“老”字在这里并非指的是生理意义上的老,而是指有学问及有经验,带有积极的含义,有尊敬的意思。美国人在日常生活中尽可能不用“老”字。“老”字带有消极的意义,代表了青春逝去,身体进入衰弱期,通常被赋予了否定的意义。当不得不表达“老”的意思时,美国人一般用“senior” “aged” “veteran” “elder”等来代替。在中国,一家人严格按照辈分称谓称呼自己的家人,因为中国人认为直呼长辈的姓名极其无礼,而美国人则直呼家人的姓名。这一点上两国差异非常大。

二、时间语

1、英语时间词的空缺

汉英两种语言的大部分词汇可以一一对应翻译,但在时间观差异的影响下,有些时间概念无法找到相对应的语言表达形式。作为一个农业大国,中国的农业文化在传统文化中占有了极其重要的地位。几千年来,中国农民一直在进行农耕生产,对于气候的变化非常敏感。他们以此为依据划分季节,不仅把一年分为四个季节,还详细地划分出二十四节气。汉语中又多了“节气、立春、雨水、春分、清明……”等词汇。在英语中,只有表示季节 “season”的“vernal equinox”(春分)、“summer solstice”(夏至)、“autumnal equinox”(秋分)、“winter solstice”(冬至)等词汇,其余的都出现词汇空缺现象。

2、汉语时间词的内涵空缺

英语中,有些时间词因为本民族的文化,被赋予了独特的文化内涵。而在汉语中,相对应的词汇并没有这样的意义,由此造成了汉语时间词内涵的空缺。宗教信仰是造成时间词内涵空缺的重要因素,大部分美国人信仰的宗教是基督教,很多时间词都受到基督教文化的影响。例如,“Sunday”(星期天),根据圣经的说法,耶稣是在星期天复活的,因此基督教徒把这一天作为“礼拜日”和“复活日”,到教堂做礼拜。星期天也被称为“主日”,顾名思义,就是“主的日子”,是基督徒的节日。礼拜日去教堂做礼拜穿的衣服也有特殊的名称——“Sunday-go-to-meeting clothes” 或“Sunday best”。英语中有不少关于“Sunday”的谚语:

Come day, go day, God send Sunday. (过了一天有一天,上帝快给个星期天)

Sunday does not come every day. (星期天哪能天天都是)

这些谚语中“Sunday”所表达的感情色彩并不相同,但不难看出其中带有浓厚的宗教色彩,为美国人所偏爱。而对于中国人来说,“星期天”只是一星期的最后一天,是个休息的日子,并没有特殊的文化内涵。

3、中美时间词文化内涵的差异

美国和中国有着各自不同的社会文化背景,造就了不同的时间观念,给各自的语言带来了巨大的影响,一些时间词也因此有了不同的文化内涵。

威尔士诗人乔治.赫伯特在他的诗中提到“He that is not handsome at twenty,nor strong at thirty,nor rich at forty,nor wise at fifty,will never be handsome,strong,rich or wise.”(一个人如果在二十岁时不英俊,三十岁时不强壮,四十岁时不富有,五十岁时不明智,那他一生都不可能英俊、强壮、富有和明智。)这符合英语国家的普遍看法,他们认为年轻的生命总是充满青春活力、朝气和冲劲,正是生理上的巅峰时期。步入中年后,由于积累了许多财富和人生经验,人充满智慧,更能获得成功。而中国人却有不同的看法,认为二十岁不过刚成年,为“弱冠”,“三十而立,四十而不惑,五十而知天命,六十而耳顺,七十而从心所欲,不逾矩”。可以看出中国人始终认为经历的时间越久,才越能成熟。人到老年,才能真正明白事理天道。通过比较,中美两国表示年龄的时间词的文化内涵存在很大的差异,反映出两种截然不同的人生观和价值观。另外,关于年龄的计算,中美也有很大的不同。汉语的“岁”与英语的“year(s)old”的含义并不能完全对等。中国计算年龄,通常按照“虚岁”来算。中国人一出生,就算作一岁,“虚岁”比实际年龄要大一岁,反映出了中国人的过去时间价值取向,希望年龄大一些,在他人看来,能够显得成熟老练。而美国就不存在“虚岁”的说法,他们的年龄都是按照实际年龄来算。

参考文献

[1]徐行言.中西文化比较[M].北京:北京大学出版社,2004

[2]叶蜚声.语言学纲要[M].北京:北京大学出版社,1998

[3]杨小红.跨文化交际中的时间观念[J].深圳大学学报,2001

[4]于希谦.从时间观的差异探讨中国与西方传统思维方式的区别[J].云南大学人文社会科学学报,2000

作者简介

上一篇:安底镇诗词楹联学会章程下一篇:就业创业扶贫政策汇编