什么是设计 设计的原则
设计是把一种计划、规划、设想通过某种形式传达出来的活动过程。相信大家都不太了解设计的概念,以下是由小编整理关于什么是设计的内容,希望大家喜欢!
设计的基本含义
设计,指设计师有目标有计划的进行技术性的创作与创意活动。设计的任务不只是为生活和商业服务,同时也伴有艺术性的创作。
根据工业设计师Victor Papanek 的定义,设计(Design)是为构建有意义的秩序而付出的有意识的直觉上的努力。更详细的定义如下:
第一步:理解用户的期望、需要、动机,并理解业务、技术和行业上的需求和限制。
第二步:将这些所知道的东西转化为对产品的规划(或者产品本身),使得产品的形式、内容和行为变得有用、能用,令人向往,并且在经济和技术上可行。(这是设计的意义和基本要求所在)
这个定义可以适用于设计的所有领域,尽管不同领域的关注点从形式、内容到行为上均有所不同。
随着现代科技的发展、知识社会的到来、创新形态的嬗变,设计也正由专业设计师的工作向更广泛的用户参与演变,以用户为中心的、用户参与的创新设计日益受到关注,用户参与的创新2.0模式正在逐步显现。用户需求、用户参与、以用户为中心被认为是新条件下设计创新的重要特征,用户成为创新2.0的关键词,用户体验也被认为是知识社会环境下创新2.0模式的核心。设计不再是专业设计师的专利,以用户参与、以用户为中心也成为了设计的关键词,Fab Lab、Living Lab等的创新设计模式的探索正在成为设计的创新2.0模式。
最简单的关于设计的定义、就是一种“有目的的创作行为”。
然而设计也是一种职业。例如在电影业中有场景设计一职,在印刷业中,有包装设计一职。与英文使用不同的是、英文的Designer一词、在中文使用时、设计与设计师两个词都能共同称呼。而由设计这个字沿伸出来有相当多的理论和议题,以设计为职业的社会环境通常就叫做设计界。
设计界因欧美国家发展理论历史悠久,故设计史和相关理论,常以欧美的工业设计,建筑设计为两大主流。
由于设计行为一般都解释为有明确目标的,因此在近代将与设计意涵相反的创作,称为乱数、随机等等。
在西方,大型的设计系统,往往以Architecture建筑来称呼。这边指的建筑并非具体的建筑学、而是一种抽象的形容。
设计的发展
个人制造,正是知识社会环境下创新2.0形态在设计、制造领域的典型体现。麻省理工学院(Massachusettes Institute of Technology,MIT)比特和原子研究中心发起的Fab Lab基于对从个人通讯到个人计算,再到个人制造的社会技术发展脉络,试图构建以用户为中心的,面向应用的融合从设计、制造,到调试、分析及文档管理各个环节的用户创新制造环境。2006年,国际顶级学术期刊Nature对MIT研究人员围绕Fab Lab理念在全球范围内的努力和尝试进行了专题报道和讨论。
设计、发明、创造将不只发生在拥有昂贵实验设备的大学或研究设计机构,也将不仅仅属于少数专业科研人员,而有机会在任何地方由任何人完成,这就是Fab Lab创新2.0模式的核心理念。相关构想和实践对于充分调动社会参与科技创新与设计的热情,丰富公众参与科技创新的手段,构建创新型城市、创新型国家具有重要的借鉴价值。Fab Lab即微观装配实验室(Fabrication Laboratory),是美国MIT比特与原子研究中心发起的一项新颖的实验——一个拥有几乎可以设计制造任何产品和工具的小型的工厂。该中心主任Gershenfeld教授认为,迄今为止,数字革命的发展已经经历了两个重要的阶段,分别是个人通讯和个人计算。以移动技术为代表的普适计算的发展通过上述两个阶段的发展,无所不在的个人通讯网络及个人计算已经形成。如今,人类正处于第三次数字革命的前夕,在这次以“个人制造”为核心的革命中,相关的材料技术和信息技术已经露出苗头。从某种意义上说,Fab Lab正是这即将到来的革命大潮前跃起的浪花。
设计的原则
单一职责原则:(SRP)一个类,最好只做一件事,只有一个引起它变化的原因。
开放-封闭原则:(OCP:The Open-Closed Principle)软件实体(类,模块,函数等等)应该是可以扩展的,但是不可修改的。
依赖倒转原则:(DIP)这个原则的内容是:要依赖于抽象,不要依赖于具体。或者说是:要针对接口编程,不要对实现编程(Program to an interface,not an implementation)。高层模块不应该依赖底层模块,两个都应该依赖抽象。
里氏代换原则:(Liskov Substitution Principle,LSP)在一个软件系统中,子类应该可以替换任何基类能够出现的地方,并且经过替换以后,代码还能正常工作。
迪米特原则:(Least Knowledge Principle,LKP)最少知识原则,又称为“Law of Demeter”,如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的方法的话,可以通过第三者转发这个调用。