南图
不知道这篇文章能够满足您的要求:面向对象的软件开发 1 历史回顾 针对日趋复杂的软件需求的挑战,软件业界发展出了面向对象(OO)的软件开发模式。目前作为针对“软件危机”的最佳对策,OO技术已经引起人们的普遍关注。最初被多数人看作只是一种不切实际的方法和满足一时好奇心的研究,现在得到了人们近乎狂热的欢迎。许多编程语言都推出了支持面向对象的新版本。大量的面向对象的开发方法被提出来。关于OO的会议、学术研讨班和课程极受欢迎。无数专业的学术期刊都为这一话题开辟了专门的版面。一些软件开发合同甚至也指明了必须使用OO的技术和语言。面向对象的软件开发对于90年代,就向是结构化的软件开发对于70年代那样让人着迷,而且OO的发展势头还在日益加速。 诸如“对象”和“对象的属性”这样的概念,可以一直追溯到1950年代初。它们首先出现于关于人工智能的早期著作中。然而,OO的实际发展却是始于 1966年 (当年文化大革命在中国爆发) 。 当时Kisten Nygaard和Ole-Johan Dahl开发了具有更高级抽象机制的Simula语言。Simula提供了比子程序更高一级的抽象和封装;为仿真一个实际问题,引入了数据抽象和类的概念。 大约在同一时期,Alan Kay正在尤他大学的一台个人计算机上努力工作,他希望能在其上实现图形化和模拟仿真。尽管由于软硬件的限制,Kay的尝试没有成功,但他的这些想法并没有丢失。70年代初期,他加入了Palo Alto研究中心(PARC),再次将这些想法付诸实施。 在PARC,他所在的研究小组坚信计算机技术是改善人与人、人与机器之间通讯渠道的关键。在这信念的支持下,并吸取了Simula的类的概念,他们开发出Smalltalk语言; 1972年PARC发布了Smalltalk的第一个版本。大约在此时,“面向对象”这一术语正式确定。Smalltalk被认为是第一个真正面向对象的语言。 Smalltalk 的目标是为了使软件设计能够以尽可能自动化的单元来进行。在Smalltalk中一切都是对象-----即某个类的实例。最初的Smalltalk的世界中,对象与名词紧紧相连。Smalltalk还支持一个高度交互式的开发环境和原型方法。这一原创性的工作开始并未发表,只是视为带浓厚试验性质的学术兴趣而已。 Smalltalk-80是PARC的一系列Smalltalk版本的总结,发布于1981年。1981年8月的< >杂志公布了Smalltalk开发组的重要结果。在这期杂志的封面图上,一个热气球正从一个孤岛上冉冉升起来,标志着 PARC的面向对象思想的启航。该是向软件开发界公开发表的时候了。起初,影响只是渐进式的,但很快就跃升到火爆的程度。热气球确实启航了,而且影响深远。早期Smalltalk关于开发环境的研究导致了后来的一系列进展:窗口(window),图标(icon),鼠标(mouse)和下拉式 window环境。Smalltalk语言还影响了80年代早期和中期的面向对象的语言,如:Object-C(1986), C++(1986), Self(1987),Eiffl(1987),Flavors(1986) 面向对象的应用领域也被进一步拓宽。对象不再仅仅与名词相联系,还包括事件和过程。1980 Grady Booch首先提出面向对象设计(OOD)的概念。然后其他人紧随其后,面向对象分析的技术开始公开发表。1985年,第一个商用面向对象数据库问世。 1990年代以来,面向对象的分析、测试、度量和管理等研究都得到长足发展。目前对象技术的前沿课题包括设计模式(design patterns)、分布式对象系统和基于网络的对象应用等。 2 动因 为什么面向对象运动发展到了现在这样火暴的程度?部分是源于人们长久以来的一个希望:人们希望它,象以前其他的软件开发技术一样,能够满足软件开发对于生产效率、可靠性、易维护性、易管理等方面的更高、更快、更强的迫切需求。除此之外,还有许多原因都促使了它的流行。 面向对象的开发强调从问题域的概念到软件程序和界面的直接映射;心理学的研究也表明,把客观世界看成是许多对象更接近人类的自然思维方式。对象比函数更为稳定;软件需求的变动往往是功能相关的变动,而其功能的执行者- ---对象----通常不会有大的变动。另外,面向对象的开发也支持、鼓励软件工程实践中的信息隐藏、数据抽象和封装。在一个对象内部的修改被局部隔离。面向对象开发的软件易于修改、扩充和维护。 面向对象也被扩充应用于软件生命周期的各个阶段---从分析到编码。而且,面向对象的方法自然而然地支持快速原型法和RAD(Rapid Application Development)。面向对象开发的使用鼓励重用,不仅软件的重用,还包括分析、设计的模型的重用。更进一步,OO技术还方便了软件的互换性,即,网络中一个节点上应用能够利用另一个节点上的资源。面向对象的开发还支持并发、层次和复杂等一些在目前的软件系统中常见的现象。今天我们常常会需要建造一些软件系统----不止是一黑盒应用。这些复杂系统通常包含由多个子系统组成的层次结构。面向对象的开发支持开放系统的建设;利用不同的应用来进行软件集成有了更大的柔性。最后,面向对象开发的使用可以减小开发复杂系统所面临的危险,主要是因为系统集成遍布软件生命周期的各个阶段。 3 面向对象的建模 面向对象的建模不仅仅是新的编程语言的汇总。它是一种新的思维方式,一种关于计算和信息结构化的新思维。面向对象的建模,把系统看做是相互协作的对象,这些对象是结构和行为的封装,都属于某个类,那些类具有某种层次化的结构。系统的所有功能通过对象之间相互发送消息来获得。面向对象的建模可以视为是一个包含以下元素的概念框架:抽象、封装、模块化、层次、分类、并行、稳定、可重用和可扩展性。 面向对象的建模的出现并不能算是一场计算革命。更恰当地讲,它是面向过程和严格数据驱动的软件开发方法的渐进演变结果。软件开发的新方法受到来自两个方面的推动:编程语言的发展和日趋复杂的问题域的需求驱动。尽管在实际中分析和设计在编程阶段之前进行,但从发展历史看却是编程语言的革新带来设计和分析技术的改变。同样,语言的演变也是对计算机体系的增强和需求的日益复杂的自然响应。 影响OO产生的诸多因素中,最重要的可能要算是编程方法的进步了。在过去的几十年中,编程语言中对抽象机制的支持已经发展到了一个较高的水平。这种抽象的进化从地址(机器语言)到名字(汇编语言),到表达式(第一代高级语言,如 Fortran),到控制(第二代高级语言,如Cobol),到过程和函数(第二代和早期第三代高级语言,如Pascal),到模块和数据(晚期第三代高级语言,如modula),最后到对象(基于对象和面向对象的语言)。Smalltalk和其他面向对象语言的发展使得新的分析和设计的技术的实现成为可能。 这些新的OO的技术实际上是结构化和数据库方法的融合。OO的方法中,小范围内对面向数据流的关注,如偶合和聚合,也是很重要的。同样,对象内部的行为最终也需要面向过程的设计方法。数据库技术中的实体-关系(ER图)的数据建模思想也在 OO的方法中得以体现。 计算机硬件体系结构的进步,性能价格比的提高和硬件设计中对象概念的引入都对OO的发展产生了一定的影响。OO的程序通常要更加频繁地访问内存,需要更高的处理速度。他们需要并且也正在利用强大的计算机硬件功能。哲学和认知科学的层次和分类理论也促进了OO的产生和发展。最后,计算机系统不断增长的规模、复杂度和分布性都对OO技术起了或多或少的推动作用。 因为影响OO发展的因素很多,OO技术本身还未成熟,所以在思想和术语上有很多不同的提法。所有的OO语言并非生而平等,他们在术语、概念的运用上也各不相同。尽管也存在统一的趋势,但就如何进行面向对象的分析、设计而言还没有完全达成共识,更没有统一的符号来描述这些活动。(说明:UML正在朝这方向努力)但是,OO的开发已经在以下领域被证明是成功的:空中交通管理、动画设计、银行、商业数据处理、命令和控制系统、CAD、CIM、数据库、专家系统、图象识别、数学分析、音乐合成、操作系统、过程控制、空间站软件、机器人、远程通讯、界面设计和VLSI设计。毫无疑问,OO技术的应用已经成为软件工业发展的主流。 4 面向对象编程 <1> 概念 在面向对象编程中,程序被看作是相互协作的对象集合,每个对象都是某个类的实例,所有的类构成一个通过继承关系相联系的层次结构。面向对象的语言常常具有以下特征:对象生成功能、消息传递机制、类和遗传机制。这些概念当然可以并且也已经在其他编程语言中单独出现,但只有在面向对象语言中,他们才共同出现,以一种独特的合作方式互相协作、互相补充。 过程化编程模式: 参数输入----- | 代 码 | ------结果输出 为实现某个功能,参数被传入某个处理过程,最后传回计算结果。 | 对象------ 数据结构 面向对象编程模式: 界面 | 对象------ 和 | 对象------ 操作 OOP中,功能是通过与对象的通讯获得的。对象可以被定义为一个封装了状态和行为的实体;或者说是数据结构(或属性)和操作。状态实际上是为执行行为而必须存于对象之中的数据、信息。对象的界面,也可称之为协议,是一组对象能够响应的消息的集合。消息是对象通讯的方式,因而也是获得功能的方式。对象受到发给他的消息后,或者执行一个内部操作(有时成为方法或过程),或者再去调用其他对象的操作。所有对象都是类的实例。类是具有相同特点的对象的集合,或者也可以说,类是可用于产生对象的一个模版。对象响应一个消息而调用的方法,由接受该消息的对象自己决定。类可以以一种层次结构来安排。在这个层次结构中,子类可以从比他高的超类中继承得到状态和方法。当对象接收到一个消息后,寻找相应的方法的过程将在从该对象的类开始,并在该类所处的层次结构中展开,最后,直到找着该方法,或者什么也没找到(将会报错)。在某些语言中,一个给定的类可以从不止一个超类中继承,称之为多继承。如果采用动态联编,继承就导致了多态性。多态性描述的是如下现象:如果几个子类都重新定义了超类的某个函数(都用相同的函数名),当消息被发送到一个子类对象时,在执行时该消息会由于子类确定的不同而被解释为不同的操作。方法也可以被包括在超类的界面中被子类继承,而实际上并不去真正定义他。这样的超类也叫抽象类。抽象类不能被实例化,因此也就只能被用于产生子类。 <2> 语言 面向对象的语言包含4个基本的分支: 1 基于Smalltalk的; 包括smalltalk的5个版本,以Smalltalk-80为代表。 2 基于C的; 包括 objective-C, C++, Java 3 基于LISP的; 包括 Flavors, XLISP, LOOPS, CLOS 4 基于PASCAL的。包括 Object Pascal, Turbo Pascal, Eiffel, Ada 95 Simula实际上是所有这些语言的老祖宗。在这些OO语言中,术语的命名和支持OO的能力都有不同程度的差别。 尽管Smalltalk-80不支持多继承,它仍被认为是最面向对象的语言(the truest OO language)。 在基于C的OO语言中,Object-C 是Brad Cox开发的,它带有一个丰富的类库,已经被成功用于大型系统的开发。C++是由贝尔实验室的Bjarne Stroustrup写的。它将C语言中的STRUCT 扩展为 具有数据隐藏功能的CLASS。多态性通过虚函数(virtual functions)来实现。C++ 0 支持多继承。在多数软件领域,尤其是Unix平台上,C++都是首选的面向对象编程语言。同C和C++相类似的新一代基于Internet的面向对象语言Java是由Sun microsystems研制的。它于1995年伴随着Internet的崛起而风靡一时。用Java写的applets可以嵌入HTML中被解释执行,这使它具备了跨平台特性。Java和Ada一样支持多线程和并发机制,又象C一样简单、便携。 基于LISP的语言,多被用于知识表达和推理的应用中。其中CLOS(Common LISP Object System)是面向对象LISP的标准版。 在基于Pascal的语言中,Object Pascal是由Apple和Niklaus Wirth为Macintosh开发的,它的类库是MacApp。Turbo Pascal 是Borland公司以Object Pascal为范本开发的。 Eiffel由交互软件工程公司的Bertrand Meyer于1987年发布的。它的语法类似Ada,运行于Unix环境。Ada在1983年刚出来时并不支持继承和多态性,因而不是面向对象的。到了 1995年,一个面向对象的Ada终于问世,这就是Ada 95。 除了上述的面向对象的语言之外,还有一些语言被认为是基于对象(Object-based)的。它们是:Alphard, CLU, Euclid, Gypsy, Mesa, Modula。5 面向对象的软件工程 生命周期 尽管面向对象的语言正在取得令人激动的进展,但我们都知道,编码并非是软件开发中的问题的主要来源。相比之下,需求和分析的问题更加普遍,而且它们的纠错代价更加昂贵。因此,对OO开发技术的关注就不能仅仅集中在编码上面,更应集中关心软件工程的其他方面。OO方法在处理复杂系统的分析和设计、分析和设计的重用方面的应用前景也是非常可观。如果我们承认OO的软件开发不仅仅局限于编码活动,那么就必须采用一种全新的开发模式,包括新的软件生命周期。目前最常见的生命周期是“瀑布”模型(结构化)。它是在60年代末“软件危机”后出现的第一个生命周期模型。如下所示。分析 ----- 设计 ----- 编码 ----- 测试 ------ 维护 如图所示,瀑布式生命周期的开发过程是顺序行进的;活动流向基本是单向的。它假设开发者在开发初期对系统的了解足够清楚。不幸的是,任何软件开发活动都不可避免地要涉及大量迭代过程,无论你事先是否安排。好的设计人员指的是那些能同时在抽象的层面和具体的细节上进行工作的实践家。总的来说,瀑布式生命周期的缺点表现在三个方面:<1> 后期的变化、迭代、改动困难 <2> 不支持重用 <3> 没有一个联系各个阶段的统一模型。 面向对象的方法从问题模型开始,然后就是识别对象、不断细化的过程。它从本质上就是迭代的和渐增的。在这里,快速原型和反馈环路是必需的标准结构。开发过程就是一次次的迭代反复过程。随着迭代的进行,系统的功能不断完善。这里,传统的开发模式中在分析、设计和编码等各个阶段之间的明显界限变得模糊起来。其原因是因为对象的概念弥漫了整个开发过程。对象和它们之间的关系成为分析、设计和编码等各个阶段的共同表达媒介。开发的重心从编码向分析偏移,从功能为中心向数据为中心偏移。而且,面向对象开发的迭代和无缝性使得重用变得更加自然。 近来,为改善面向对象开发的可管理性,玻姆(Boehm,1988)提出了一个结合了宏观和微观视角(macro & microview)的螺旋开发模型。宏观包括3个阶段:1分析---发现和识别对象;2 设计---发明和设计对象;3 实施---创建和实现对象。每个宏观阶段都包含一些微观迭代活动。6 OOA和OOD 由于面向对象的技术还比较新,目前存在许多种面向对象的分析和设计方法。面向对象的分析(OOA)建立于以前的信息建模技术的基础之上,可以定义为是一种以从问题域词汇中发现的类和对象的概念来考察需求的分析方法。OOA的结果是一系列从问题域导出的“黑箱”对象。OOA通常使用“剧情(scenarios)”来帮助确定基本的对象行为。一个剧情是发生在问题域的一个连续的活动序列。在对一个给定的问题域进行 OOA时,“框架”(Frameworks)的概念非常有用。框架是应用或应用子系统的骨架,包含一些具体或者抽象的类。或者说,框架是一个特定的层次结构,包含描述某一问题域的抽象父类。当下流行的所有的OOA方法的一个缺点就是他们都缺乏一种固定的模式(formality)。 在面向对象的设计(OOD)阶段,注意的焦点从问题空间转移到了解空间。OOD是一种包含对所设计系统的逻辑的和物理的过程描述,以及系统的静态和动态模型的设计方法(Booch,1994)。 在OOA和OOD中,都存在着对重用性的关注。目前,OO技术的研究人员们正在尝试定义“设计模式(design patterns)”这一概念。它是一种可重用的“财富”,可以应用于不同的问题域。通常,设计模式指的是一种多次出现的设计结构或解决方案。如果对他们进行系统的归类,即可被重用,可以构成不同设计之间通信的基础。 OOD技术实际上早于OOA技术而出现。目前在OOA和OOD已经很难画出一条清晰的界限。因此,下面的描述给出一些常用的OOA/OOD技术的(联合)概貌。 Meyer 用语言作为表达设计的工具。(1988) Booch的OOD技术扩展了他以前在Ada方面的工作。他采用一种“反复综合(round-trip gestalt)”的方法,包括以下过程:识别对象,识别对象的语义,识别对象之间的关系,进行实施,同时包含一系列迭代。Booch是最先使用类图,类分类图,类模板和对象图来描述OOD的人(1991)。 Wrifs-Brock's的OOD技术是由职责代理来驱动的。类职责卡(Class Responsibilities Cards)被用来记录负责特定功能的类。在确定了类及其职责之后,再进行更详细的关系分析和子系统的实施。(1990) Rumbaugh使用3种模型来描述一个系统:1 对象模型,描述系统中对象的静态结构;2 动态模型,描述系统状态随时间变化的情况;3 功能模型,描述系统中各个数据值的转变。对象图,状态转换图和数据流图分别被用于描述这3个模型。(1991) Coad和Yourdon采用以下的OOA步骤来确定一个多层OO模型(5个层次):找出类和对象,识别结构和关系,确定主题,定义属性,定义服务。5 个步骤分别对应模型的5个层次,即类和对象层,主题层,结构层,属性层和服务层。他们的OOD方法既是多层次的又是多方面的 (multicomponent)。层次机构和OOA一样。多方面包括:问题域,人与人的交互,任务管理和数据管理。 Ivar Jacobson 提出了Objectory方法(或Jacbson法),一种他在瑞典Objective系统中开发的面向对象软件工程方法。Jacbson的方法特别强调了“Use Case”的使用。 Use Case成为分析模型的基础,用交互图(Interaction Diagram)进一步描述后就形成设计的模型。Use cases同时也驱动测试阶段的测试工作。到目前为止,Jacbson法是最为完整的工业方法。 (1992) 以上所述的方法还有许多的变种,无法一一列出。近年来,随着各种方法的演变,它们之间也互相融合。1995年,Booch,Rumbaugh和Jacbson联手合作,提出了第一版的UML(Unified Modelling Language),一体化建模语言。(目前已经成为OO建模语言的事实标准)7 管理问题 当组织向面向对象的开发技术转向时,支持软件开发的管理活动也必然要有所改变。承诺使用OO技术即意味要改变开发过程,资源和组织结构。 (Goldberg 1995) OO开发的迭代、原型以及无缝性消除了传统开发模式不同阶段之间的界限。新的界限必须被重新确定。同时,一些软件测度的方法也不在适用了。“代码行数” LOC(Lines of Code)绝对过时了。重用类的数目,继承层次的深度,类与类之间关系的数目,对象之间的耦合度,类的个数以及大小显得更有意义。在OO的软件测度方面的工作还是相当新的,但也已经有了一些参考文献。(Lorenz 1993) 资源分配和人员配置都需要重新考虑。开发小组的规模逐步变小,擅长重用的专家开始吃香。重点应该放在重用而非LOC上。重用的真正实现需要一套全新的准则。在执行软件合同的同时,库和应用框架也必须建立起来。长期的投资策略,以及对维护这些可重用财富的承诺和过程,变的更加重要。 至于软件质量保证,传统的测试活动仍是必须的,但它们的计时和定义必须有所改变。例如,将某个功能“走一遍”将牵涉到激活一个剧情(scenario),一系列对象互相作用,发送消息,实现某个特定功能。测试一个 OO系统是另一个需要进一步研究的课题。发布一个稳定的原型需要不同与以往控制结构化开发的产品的配置管理。 另一个管理方面要注意的问题是合适的工具支持。一个面向对象的开发环境是必须的。同时需要的还包括:一个类库浏览器,一个渐增型编译器,支持类和对象语义的调试器,对设计和分析活动的图形化支持和引用检查,配置管理和版本控制工具,以及一个象类库一样的数据库应用。 除非面向对象开发的历史足以提供有关资源和消耗的数据,否则成本估算也是一个问题。计算公式中应该加入目前和未来的重用成本。最后,管理也必须明白在向面向对象方法转变的过程中要遇到的风险。如消息传递、消息传递的爆炸增长、动态内存分配和释放的代价。还有一些起步风险,如对合适的工具,开发战略的熟悉,以及适当的培训,类库的开发等。8 向面向对象转变 这个转变的时期可能相当长。培训是必须的。一个实验性质的向导项目也是有必要的。建议不要使用结构化和面向对象像结合的办法。越来越多的证据表明,成功需要完全的 OO解决方案 9 未来 总的来说,面向对象的技术是以前的软件开发技术自然演进的成果,对许多应用领域的软件开发都极具前途。借用Maurice Wilkes在他图灵奖颁奖仪式上的演讲的话:“对象是软件界从70年代以来最激动人心的革新之一。” (1996) 然而,面向对象的开发并非是包医百病的灵丹妙药,其发展还远未成熟。可是尽管OO技术的未来还未确定,但在90年代初期的一些预言都已实现。 (Winblad 1990) 类库和应用程序框架在市场上已经可用。应用和环境之间的透明信息存取业已实现。支持用户在应用之间通信的的环境以及面向对象的继承多媒体工具包正在涌现。随着经验的积累,OO的发展将日渐流行,OO技术也将日趋成熟。当然,OO技术也有可能为某种处理更高一级抽象的开发技术取代或融合。这些都只是猜想。虽然在不远的将来,谈论对象无疑会显得过时,但现在,还有许多的问题等着我们去付出真正的热情。 
现代包装设计的文化观 摘要 我们应把现代包装设计作为一种文化形态来对待,从文化结构的三个层面,我们可以看出包装设计文化的结构是由内层的观众意识层,中层的组织制度层和外层的物质层所构成。三者互为联系,包装设计文化既有民族性,又有时代性,它们表现在文化结构的不同层面上。共同构成了包装设计文化的整体。 关键词:设计文化结构 民族性 时代性 著名文化人类学家马林洛夫斯基说过"在人类社会生活中,一切生物的需要己转化为文化的需要;"现代包装设计正是一门以文化为本位,以生活为基础,以现代为导向的设计学科。因此我们无论是在理论上,还是在实践中,都应把包装设计作为一种文化形态来对待:在现代社会中,设计理论的研究已不仅是一门学科的深入剖析,而应是多种学科交叉的统观。把包装设计活动作为一种文化现象来观照,也就不仅是简单的物质功能的满足和精神需求能一言蔽之的,其中的内涵是现代设计师们所必须探究的。 文化是人类历史实践过程中所创造物资财富和精神财富的总和,那么包装设计文化是否可以说是包括人们的一切行为方式和满足这些行为方式所创造的事事物物,以及基于这些方面所形成的心理观念。一般说来,这些有许多设计文化要素构成的复合整体,可分为三个层次。 第一,包装设计的物质层,它是设计文化的表层,主要指包含了设计文化要素的物质载体,它具有物质性、基础性、易变性的特征。如各种包装设计部门和包装设计产品,交换商品的场所以及消费者在使用包装产品中的消费行为等; 第二,包装设计组织制度层。这是设计文化的中层,也是设计文化内层的物化。它有较强的时代性和连续性:主要包括协调设计系统各要素之间的关系,规范设计行为并判断、矫正设计的组织制度。世界上包装设计文化比较先进的国家都有自己相应的较为完整的组织制度。而包装设计文化比较落后的国家,组织制度大都不完整。 第三,包装设计的观念层。它是一种文化心理状态,所以也可以认为是设计文化的意识层。它处于核心和主导地位,是设计系统各要素一切活动的基础和依据。科技的发展,生产力的提高和文化的进步,带来的对包装设计文化的冲击,主要就表现在生产和生活观念、价值观念、思维观念、审美观念、道德伦理观念、民族心理观念等方面上。它是设计文化结构中最为稳定的部分,也是设计文化的灵魂,它存在于人的内心,并发展变化,最终会直接或间接地在组织制度层上得到表现。并由此规定自己的发展和规律,吸收、改造或排斥异质文化要素,左右设计文化的发展趋势。 包装设计文化结构的三个方面,彼此相关,形成一个系统,构成了包装设计文化的有机整体。包装设计文化的物质层,是最活跃的因素,它变动活跃,交流方便频繁,同时,包装设计文化的变化发展又总是首先在它的身上得到体现。如我国的改革开放,学习国外的先进科学、文化与技术,产品的渗入正扮演着这场文化冲击的先导的角色;在市场上,产品包装更新换代.层出不穷。而组织制度层是最权威的因素,它规定包装设计文化的整体性质,是设计的群际关系得以维系的重要纽带,更是包装设计得以科学有效实施的保障。这一层面由一整套内在的准则系统所构成,从而成为包装设计师从事设计活动的准绳。不同的设计观念会带来不同的行为方式和社会结果,认识到新环境所强加于我们的新要求,并掌握符合这样新要求的新思想、新观念和新手段,这正是设计观念的新高度。三者间互相依存,互相结合,互相渗透,并融合反映在每一个具体的包装设计活动和设计作品中。 包装文化要素在时空中传播,在一定空间中存在,即同一社会人群相关的必然中,产生了包装设计文化的民族性,由于文化在一定时间内存在,即同一定的社会历史变迁相关的必然中,产生了包装设计文化的时代性和民族性,构成了包装设计文化的社会属性和本质属性。 包装设计文化的民族性,涉及到文化的发生学,正因为全世界的文化不是来自于同一源头,当然就有了民族性的问题。世界上每一个民族,由于不同的自然条件和社会条件的制约,都形成与其他民族不问的语言、习惯、道德、思维、价值和审美观念,因而也就必然形成与众不同的民族文化。包装设计文化的民族性主要表现在包装设计文化结构的观念层面上,它反映了整个民族的心理共性。不同的民族,不同的环境造成的不同的文化观念,直接或间接地表现在自己的设计活动和产品中。如德国设计的科学性、逻辑性和严谨、理性的造型风格,日本的新颖、灵巧、轻薄玲珑而有充满人情味的特点,以及意大利设计的优雅与浪漫情调等,这些无不诞生于他们不同民族的文化观念的氛围中,再如中国包装设计风格上的平稳、圆满寓意和形式上的完整性、对称性、也正是我国人民内向心理特征和相对保守的社会意识的折射。 由于设计组织制度脱胎于设计的意识观念、是设计意识的物化、是民族设计意识的派生、于是它同人们设计观念指导下的活动方式和实践成果,都因此拉上了不同的民族色彩,打上了民族性的烙印。 包装设计文化既是民族的,又是时代的。 一个民族共同形成之后,便形成了漫长曲折的历史发展过程,在这—历史进程的不同阶段上,该民族文化分别会表现出一系列的时代性特征。只要我们承认包装设计文化的承接性和发展性,就有包装设计文化的时代性存在。这是因为包装设计文化首先是一个历史发展的过程,是该民族各个时代的设计文化的叠合及承接,是以该时代的现实的物质社会为基础,是传统设计文化的积淀和不断扬弃的对立统一、历史性与现实性的对立统一。 包装设计文化有其时代性,主要反映在包装设计文化的组织制度和物质外层上。但设计是紧随时代、重在观念的。在经济全球化、科技迅猛发展的今天.社会主观形式都已发生根本的改变.尤其是信息的广泛高速的传播,开放的观念激荡愈趋激烈,社会结构与价值观念、审美观念等的多元化,人与人交往的频繁,社会及人要求的不断增加,工业文明的异化所带来的能源、环境和生态的危机,面对这一切我们是否能适应它、利用它、使包装设计成为该时代的产物,这已成为当今设计师的重要任务。 包装设计文化的时代性特征,很自然地使我们的设计活动和产品不能用一个绝对的标准去衡量。不同的时代都有自己的标准,不能把今天的或昨天的当作绝对的、唯一的标准。对于历史的设计文化的评判必须认识到本身就是历史的。文化的时代性决定了一切历史的认识本身都是历史的,每一时代的包装设计文化都有其绝对的内容,都有自己的观念体系、都有自己的历史发展状态、都有这个时代的烙印,所以也都相应地具有时代的局限性,没有这些认识、我们就不能对包装设计文化的时代性有一个全面的把握。 包装设计文化的民族性与时代性既是内容又是形式,这两种基本属性,在包装设计文化结构的三个层面上,一般说来,物质层面更富时代性,因而是最活跃的因素,最易被人们所接受,所流行。心理层面具有较强的民族性,较为稳定而保守,因而变化越来缓慢。当两种异质的包装设计文化在平等或不平等的条件下接触时,首先被互相发现的多是物质的外层、习之即久,逐渐可以认识到中层即理论组织制度层的层面。最后,方能体味各自的核心层面即心理观念层面。日本战后包装业的发展,以及我国包装业自改革开放从引进物质技术设备开始、到各种先进的组织管理制度的引进,一直到现代包装设计观念的渗入都说明了这一点。 每一个民族的包装设计文化形成一个设计文化系统,每一民族的一定时代的包装设计文化也形成了自己的文化系统,而不同的包装设计文化系统里都包含了一些共同的文化因素,也包含了一些不同的文化要素,前者表现了包装设计文化的普遍性,后者表现了包装设计文化的特殊性。每一民族的包装设计文化,又都有其人类性的部分。包装设计的人类性寓于民族性之中,永恒性寓于时代性之中,普通性富于特殊性之中,这是辩证统一的包装设计文化观。 因此、我认为我国的包装设计无论是思维方式、价值判断方式、社会组织方式等许多方面,都当随着时代的前进、而不断地多方位吸收、更新,以建立健全一个既有民族性、又有时代性的新的包装设计文化系统,这是时代的要求、历史的必然、是我国包装设计水平跻身于世界先进之林的关键所在。 [本文系中国包协包装教育委员会第七次全体会议优秀论文之一]
我帮您 请+Q三三零四四就二五七 要数据 理论 图像 结合分析!