精华内容
下载资源
问答
  • 原型的形式有哪些
    2022-07-06 13:10:13

     

    快速原型模型有哪几种?各有何特点?
    答: 1 )快速原型模型的分类
    原型模型又称快速原型模型,它是增量模型的另一种形式。它是在开发真实系统之前,构造一个原型,在该原型的基础上,逐渐完成整个
    系统的开发工作。根据原型的不同作用,可以分为探索型模型、实验型模型和演化型模型三类。
    2 )三种快速原型模型的特点
    ① 探索型模型
    这种类型的原型模型是把原型用于开发的需求分析阶段,目的是要弄清用户的需求,确定所期望的特性,并探索各种方案的可行性。它主
    要针对开发目标模糊,用户与开发者对项目都缺乏经验的情况,通过对原型的开发来说明用户的需求。
    更多相关内容
  • JS编程中最常用两种对象类定义的方式。不管是利用下面2种方式的那一种,都可以达到相同的效果!
  • 线框图并非是原型,但即使是经验丰富的设计师也可能会将两者混为一谈。实际上,两者的差别还是非常多且明显的,那么就让我们通过这篇文章分辨清楚这俩概念,一劳永逸。线框图是产品设计的低保真呈现方式。它三个...
  • 一个好的APP原型设计理念很容易被糟糕的界面和体验毁于一旦,如今市面很多的原型工具可以帮助我们解决问题,但如何选择原型工具却成为设计师们最头疼的事情,一方面是由于不懂哪些工具适合自己,另一方面又没有...

      移动应用开发如火如荼的至今,一个好的APP原型设计理念很容易被糟糕的界面和体验毁于一旦,如今市面有很多的原型工具可以帮助我们解决问题,但如何选择原型工具却成为设计师们最头疼的事情,一方面是由于不懂哪些工具适合自己,另一方面又没有多余的时间去挨个使用。那么今天,我就来为大家介绍以下8种原型设计工具,供大家参考使用。

    1.Axure

    网站地址:Axure RP - UX Prototypes, Specifications, and Diagrams in One Tool

    Axure RP是美国Axure Software Solution公司旗舰产品,是一个专业的快速产品原型工具,让负责定义需求和规格、设计功能和界面的专家能够快速创建应用软件或Web网站的线框图、流程图、原型和规格说明文档。作为专业的原型工具,它能快速、高效的创建原型,同时支持多人协作设计和版本控制管理。

     优点:变化多端的操作,自带组件库并支持强大的第三方组件库,提供强大的交互支持,完整的教程及支持文档,支持原型预览。

     缺点:学习曲线较高,性价比不高,专业需求度高。

     适用人群:适用于追求强交互效果及细节产品经理及设计师,需要具有一定经验或较强专业性。

    价格:

    axure的使用环境通过下图进行说明。

    1、主菜单和工具栏:执行常用操作,如文件打开、保存文件,格式化控件,自动生成原型和规格说明书等操作;

    2、站点地图面板:对所设计的页面(包括线框图和流程图)进行添加、删除、重命名和组织页面层次;

    3、控件面板:该面版包含线框图控件和流程图控件,另外,你还可以载入已有的部件库(*.rplib文件)创建自己的部件库;

    4、模块面板:一种可以复用的特殊页面,在该面板中可进行模块的添加、删除、重命名和组织模块分类层次;

    5、线框图工作区:线框图工作区也叫页面工作区,线框图工作区是你进行原型设计的主要区域,在该区域中你可以设计线框图、流程图、自定义部件、模块;

    6、页面属性:这里可以设置当前页面的样式,添加与该页面有关的注释,以及设置页面加载时触发的事件onpageload;

    7、部件消息交互面板:这里可以设置部件在操作过程中的消息传递;

    8、元件属性:这里可以设置选中元件的标签、样式,添加与该元件有关的注释,以及设置页面加载时触发的事件;

    9、部件管理:在这里可以添加、删除动态面板的状态,以及状态的排序,也可以在这里设置动态面板的标签;当绘制原型动态面板被覆盖时,我们可以在这里通过点击选中相应的动态面板,也可以双击状态进入编辑。

    详细使用过程可参考:原型设计工具——axure认识与使用_xpbob的博客-CSDN博客

    2.墨刀

    网站地址:墨刀-在线产品设计协作一体化平台

    墨刀,一款在线的移动应用原型与线框图工具。借助于墨刀,创业者、产品经理及UI/UX设计师能够快速构建移动应用产品原型,并向他人演示。

    优点:容易学会,内置组件多,可以云端保存工作,通过分享链接就可以分享原型给别人看了,支持sketch文稿导入和自动标注。

    缺点:不自由,首先这也于墨刀的产品定位有关,清晰定位为移动端原型设计工具,因此在交互效果上、控件组合上,操作面板的选择上都不如AXURE 灵活,并且效果切换因为是采用连线的方式,有时候会让使用者脑子错乱的感觉。并且目前原型的交互效果系统自带的还比较少,但基本满足日常所有原型的使用。另外需要充费才能够使用更强大的共享创建功能。

    价格:

    适用人群:需要做简单的demo和领导沟通的设计师。

    使用案例:

     3.Invision

    网站地址:InVision | Digital product design, workflow & collaboration

    InVision是一款基于网页的在线原型设计和协作工具。 设计师可简单上传各种原型设计界面或部件图片(当然,设计师首先需要通过其他图片软件,比如Sketch或PhotoShop等绘制相关图片),为其添加热区,并根据演示需要,独自或协作制作完成多样的原型交互动画。

    优点:主打“交互原型”和“协作”,支持sketch和ps设计稿导入做交互。

    缺点:对于国内用户来说会有服务器速度的问题。

    价格:

    适用人群:设计师更多的将其作为原型演示工具,便于收集多方设计反馈。

    4.Proto.io

    网站地址:Proto.io - Prototyping for all

    Proto.io是一个专门用于移动应用的产品原型工具——可以构建和部署全交互式的移动应用的原型,并且可以模拟出相似的成品。基于Web的在线环境,它可以让你制作流行的 iPhone,iPad,Android 手机以及任何带有屏幕界面的产品原型。并且它可以运行在大多数的浏览器中,并提供了3个重要的接口:dashboard、编辑器以及播放器。

    优点:丰富的UI元素,且可以自定义;支持多屏互动和组件交互,可以从Dropbox上传设计图。

    缺点:不支持实时预览,交互动效较多时动画不够流畅,性价比不高。

    价格:免费试用15天 专业版(5个项目)1924 RMB/人/年

     适用人群:擅长于使用Web浏览器的产品经理或设计师。

    使用案例:

     

    5.Mockplus

    工具地址:http://www.mockplus.cn/features

    Mockplus是一款快速简单的原型设计工具,主要适用于新手产品经理和设计师。

    优点:封装3000个图标和200个组件,操作简单快速,学习成本低。在最近发布的版本中支持团队协作功能,审阅和评论非常方便,听说在即将到来的3.2版本中,支持将Sketch的设计文档导出为Mockplus的mp项目文件。导出后,你可以在Mockplus中打开它。说了很久的页面流程图也终于要面世了。Mockplus的页面流程图可以做到:

    – 即时生成;

    – 你可以选择展示全部或任意多个页面的流程图;

    – 智能生成流程链接线,同时也可以手动调整;

    – 展示页面的批注信息;

    – 一次导出页面流程图。

    缺点:不支持手势操作,函数和动态面板。官网教程较少,例子模板没有具体的操作步骤。

    价格:基础版永久免费,付费版118元/年,终身版:699元,无需另外付费更新版本。

    适用人群:各阶段的产品经理及UI/UX设计师,追求中低保真,交互效果,快速原型,新手或专业人群皆适宜。

    使用案例:

     

    6.Fluid UI

    网站地址:FluidUI.com - Create Web and Mobile Prototypes in Minutes

     Fluid UI是一款用于移动开发的原型设计工具,它能够帮助设计师快速高效地完成产品原型图的设计。

    优点:Fluid UI 内置超过1700款的线框图和手机UI控件,并且还会经常进行更新,适合跨平台开发者。而且是html5版,全平台支持!

    缺点:不够直观,免费版只能创建一个1个项目和10个页面

    价格:付费版25美元/月,可以创建10个项目和无数个页面以及使用所有组件库。

    适用人群:适合习惯使用多平台的产品经理及设计师。

    7.Balsamiq Mockups

    网站地址:Balsamiq Wireframes - Industry Standard Low-Fidelity Wireframing Software | Balsamiq

    它是一款低保真的线框图工具,主要用于原型设计的初始阶段。

    优点:内置了大量的模块,在需要的时候在搜索框里找,然后拖到画布里面进行排序组合,画图很快速,功能强大(比如在tab选择框里可以选择哪个tab是active,哪些是default的)。很快就能画出想要的app原型。如果你还觉得BM内置的模块点少?Mockups To Go 可以满足你需要的大部分需求!

    缺点:Balsamiq Mockups里面画的只是草稿,没有配色,没有设计风格。它只是每个页面的布局,不能进行交互展示。

    价格:个人版89美元,可以根据项目数量来购买。

    适用人群:需要生成简单原型(草图)的产品经理或设计师。

    使用案例:

    8.Justinmind

    网站地址:Free prototyping tool for web & mobile apps - Justinmind

    中文网站地址:Justinmind中文网 - 为移动设计而生!

    Justmind是一款为移动而生的原型设计工具,虽然它没有像Axure那么火,但是对移动APP的原型设计支持似乎比axure更好。

    优点:高保真,支持手势操作。Justinmind的新小部件库包括所有的苹果IOS图标,还添加了Android Nougat UI工具包。并且在版本7.6.0中与Microsoft Team Foundation Server集成,添加一些新的现成屏幕,如苹果音乐播放列表,库和播放器屏幕,和苹果通知屏幕。

    缺点:学习成本高,定义为高保真,需要设计人员懂的美工,又要懂的产品。Justinmind导出的html文件限制很强,需要特定的浏览器,还需要安装插件。动态面板无状态交互。

    价格:29美元/月,终身版:495美元,Justinmind终身版仅支持一年的大小版本更新。 如果你想在第一年后继续使用新版,则需每年花费额外的$ 99保持更新。

    适用人群:追求高保真原型的产品经理及设计师。

    使用案例:

    展开全文
  • 首先来分析构造函数和原型链两种实现继承方式的缺陷: 构造函数(对象冒充)的主要问题是必须使用构造函数方式,且无法继承通过原型定义的方法,这不是最好的选择。不过如果使用原型链,就无法使用带参数的构造函数...
  • 这是某项目1.06版原型,因此针对上一个版本原型修改了哪些内容,我在第一页做了说明我用来说明产品页面结构和主要功能流程首先是结构:然后是流程关于全局设计、交互的统一说明这是界面这是模块功能的流程这是内容与...
  • 原型不设计

    2021-03-02 20:38:35
    在风起云涌的互联网浪潮中,产品迭代的速度越来越快。...(流程是每个群体的工作方式,好像我们的长相,很难完全一样,并且时常改变,不能盖棺定论。)简而言之,传统的原型设计往往是定位于概念设计或整个设
  • 前言 JavaScript 不包含传统的类继承模型,而是使用 prototypal 原型模型。... 原型 10年前,我刚学习JavaScript的时候,一般都是用如下方式来写代码: 代码如下: var decimalDigits = 2, tax = 5; f
  • 数据资源目录,把数据资源与目录的形式展示,包括对数据资源目录的新增、 变更、保存草稿、增加标签、类别、目录纠错、纠错反馈等。新增、变更的目录需要经审核员审核通过才上线。从而提高数据资产带来的效益,保障...
  • 深入了解js原型模式

    2020-12-11 23:55:06
    在js中,创建对象的方式有工厂模式和构造函数模式等; 而构造函数模式最大的问题在于:构造函数中的每个方法都需要在实例对象中重新创建一遍,不能复用,所以为了解决这一个问题,就需要使用原型模式来创建对象。 ...
  • 本文实例讲述了JavaScript使用原型原型链实现对象继承的方法。...在Javascript中,每个函数都一个原型属性prototype指向自身的原型,而由这个函数创建的对象也一个proto属性指向这个原型,而函数的
  • 但早期并没有统一规范,所以大部分浏览器自己实现了该私有属性,多以__proto__的方式进行访问,该属性指向实例对象obj的构造函数的原型对象(prototype)。 二、原型对象 prototype 每个构造函数(本身也是对象)一...

    一、原型(属性)__proto__

    每个实例对象(obj)的私有属性,在ECMAScript中规定obj.[[Prototype]]符号表示实例对象的原型。但早期并没有统一规范,所以大部分浏览器自己实现了该私有属性,多以__proto__的方式进行访问,该属性指向实例对象obj的构造函数的原型对象(prototype)。

    二、原型对象 prototype

    每个构造函数(本身也是对象)有一个prototype属性,表示它的原型对象。其本身作为一个对象也具有一个原型属性__proto__。同时构造函数的原型对象有一个constructor属性,它指向构造函数本身。看上去有点绕,引用冴羽大佬博客里的一张图片作展示,就看的很清楚了。

    å®ä¾ååä¸æé å½æ°çå³ç³»å¾

     

    三、原型链 prototype chain

    向上述这样,一个实例对象-->构造函数的原型对象-->构造函数的原型对象的构造函数原型对象-->...-->null,就构成了一条原型链。根据定义,null没有原型(属性),作为这个原型链中的最后一个环节。举个例子

    const a = {a: 1} // a ---> Object.prototype ---> null
    console.log(a.__proto__ === Object.prototype) // true
    console.log(Object.getPrototypeOf(a) === Object.prototype) // true
    console.log(a.__proto__.__proto__ === null) // true
    console.log(Object.getPrototypeOf(Object.getPrototypeOf(a)) === null) // true

    四、ES6对原型的实现

    在ES6中,__proto__这一私有属性规范化,通过Object.getPrototypeOf(obj)和Object.setPrototypeOf(obj)来访问。

    五、原型继承

    Object.create(obj) 新建一个对象实例,这个对象实例的原型(属性)指向obj。举个例子

    const b = Object.create(a) // b ---> a ---> Object.prototype ---> null
    console.log(b.__proto__ === a) // true
    console.log(Object.getPrototypeOf(b) === a) // true
    console.log(b.__proto__.__proto__ === Object.prototype) // true
    console.log(Object.getPrototypeOf(Object.getPrototypeOf(b)) === Object.prototype) // true
    console.log(b.__proto__.__proto__.__proto__ === null) // true
    console.log(Object.getPrototypeOf(Object.getPrototypeOf(Object.getPrototypeOf(b))) === null) // true

    六、总结

    JS一切都是对象,JS只有这一种“结构”,每个对象都有一个私有属性称之为原型(__proto__),它指向该对象的构造函数的原型对象(prototype),而原型对象也有原型(__proto__),一直到最后指向null,null没有原型,就到了原型链的尽头。

    展开全文
  • js代码-原型赋值继承方式
  • 本文通过实例向大家讲述了js实例属性和原型属性,详情请看注释,看不懂的话,请放弃javascript吧。
  • 客户关系管理系统(简称:CRM)是最典型的企业产品应用之一, 主要用于为企业提高核心竞争力,利用信息技术以及互联网技术协调企业与顾客间在销售、营销和服务上的交互,从而提升其管理方式,向客户提供创新式的个性...
  • 描述了什么是原型原型链,还有有关的六大继承方式

    1.原型和原型链:

    • 每一个构造函数都有一个原型对象 (prototype)
    • 每一个原型对象都包含一个指向构造函数的指针 ( constructor)
    • 每一个实例也都包含一个指向原型对象的指针_ proto _

    在这里插入图片描述

    • 所有函数的默认原型都是Object的实例,都包含一个内部指针,指向Object.prototype, (这正是所有自定义类型都会继承toString() valueOf()等默认方法的根本原因)

    • 根据这样一种关系,形成了链条关系,这就是所谓的原型链的基本概念

    在这里插入图片描述

    根据这种原型链的关系,可以用来实现继承,本质是重写原型对象,使原型对象的prototype指向一个新类型的实例

    • 对一个构造函数实例化后,它的原型链指向什么?

    参考答案:

    指向该构造函数实例化出来对象的原型对象。

    对于构造函数来讲,可以通过 prototype 访问到该对象。

    对于实例对象来讲,可以通过隐式属性 __proto__ 来访问到。

    2.继承:(六大方法)

    • 使用原型链实现继承:

      原理是重写原型对象,将实例对象指向的原型对象重写为另一个类型的实例对象

      function SuperType() {
          this.prototype = true;
      }
      SuperType.prototype.getSuperValue = function(){
          return this.prototype;
      };
      function SubType() {
          this.subprototype = false;
      }
      //继承了SuperType
      SubType.prototype = new SuperType();
      SubType.prototype.getSubValue = function () {
          return this.subprototype;
      };
      var instance = new SubType();
      console.log(instance.getSuperValue());//true
      console.log(instance.getSubValue());//false
      

      缺点:

      • 在原型对象上的属性,会被所有实例对象共享 (一个实例对象对原型上的属性修改了,所有实例对象的原型上的属性都会被修改)

      • 无法传递参数给你继承过来的属性方法

    • 借用构造函数实现继承:

      在构造函数中通过call(),apply()去调用另一个类型的构造函数,实现继承另一个类型的实例对象身上的方法和属性

      使用call( ) 和 apply( )传递参数

      • **优点:**相对第一种方法来说,借用构造函数的方法,可以向继承过来的属性方法传递参数,

      • **缺点:**只使用借用构造函数的方法实现继承,那么所需要继承的函数都在构造函数里定义,就没有函数复用可言

    • 组合继承:(上述两种方法组合在一起使用)

      使用原型链方法继承原型上的属性和方法,使用构造函数来继承实例里的属性

      • 优点: 融合了上述两种方法的优点,可以使用构造函数来继承实例里的属性传入参数 ,然后使用原型链方法继承原型上的属性和方法实现函数复用

      • **缺点:**每次都要调用两次超类型的构造函数

        • 第一次在子类型的原型对象中调用 (new一个超类型的实例对象),

        • 第二次在子类型的构造函数中调用 (通过apply,call调用超类型的构造函数)

    • 原型式继承:

      因为可以使用原型对象的constructor构造函数来生成实例对象的一个特点, 所以道格拉斯提出可以声明一个类似原型对象的函数给它传一个object参数,然后在函数内部创建一个临时的构造函数,让构造对象的prototype指向传进来的object对象,最后返回这个构造函数构造的对象实例. (模拟使用原型对象创建实例对象的过程)

      原理上讲,是对传进来的object对象进行了一次浅克隆,

      function object(o){
          function F() {}
          F.prototype = o;
          return new F();
      }
      
      • ECMAScript新增Object.create()这个方法规范了原型式继承
      • 所有通过这样的方式构造的实例对象,都会共享你传进去的object对象上的基本类型值属性和引用类型值属性
    • 寄生式继承:

      原理和寄生构造函数和工厂模式有点类似,就是封装一个继承的函数,这个函数给人感觉是他自己干了所有的工作最后返回一个对象

      实际上函数里面使用原型式继承的那个函数object(),传进去一个对象,得到一个返回来的对象后,在对象身上添加一些方法来强调这个对象,然后再返回这个对象.

      function object(o){
          function F() {}
          F.prototype = o;
          return new F();
      }
      function createAnother(original){
          var clone = object(original);//通过调用函数创建一个新对象
          clone.sayHi = function () {//以某种方式来增强这个对象
              console.log("Hi");
          };
          return clone; //返回这个对象
      }
      

      相当于对原型式继承进行了封装,在它的基础上在封装函数的内部给返回来的新的对象添加了你所要定义的方法,最后还是返回这个对象

      • **优点:**如果你继承的东西主要是一个对象,而不是什么自定义类型等别的东西的时候,寄生式继承就很有用,因为它针对的是对象的一个继承
      • **缺点:**跟借用构造函数实现继承一样,不能实现函数复用,每创造一个对象,对象的身上就已经有你自定义的属性里了,
    • 寄生组合式继承:

      通过借用构造函数来继承属性,通过原型链的混成形式来继承方法**(实现函数复用)**

      原型链的混成形式是指,用原型式继承方式的object函数传进去超类型的构造函数的原型对象,返回了一个对象,将子类型的原型对象重写成这个返回来的对象,

      (使用超类型的构造函数的原型对象的副本)

      然后将重写了的原型对象的constructor指向子类型的构造函数,用来增强对象

      整个过程可以这样描述:

      (子类型是你要用的,超类型是你要继承的)

      1. 封装了一个函数,传进去两个参数,一个是子类型的构造函数,一个是超类型的构造函数
      2. 使用原型式继承方式的object,传进去超类型的构造函数的原型对象,返回来一个新的对象,(对原型对象进行了浅克隆)
      3. 将新出的对象的constrcutor重写为子类型的构造函数,用来增强对象
      4. 将子类型的原型对象重改为这个新的对象

      弥补了因为重写原型对象,而失去原有的constructor属性

    展开全文
  • 主要介绍了javascript 原型原型链的理解及应用,结合实例形式分析了javascript原型原型链的具体原理、功能、使用方法及操作注意事项,需要的朋友可以参考下
  • 新版的组件类型依然基本跟旧版本保持一致,但是我们对80%以上的独立组件都利用Axure RP9的特性进行了梳理和调整,使其在风格和使用方式上更加标准和统一。另外,我们采纳了一些对保真度更高要求的用户反馈的建议,...
  •  既然你想了解继承,证明你对JavaScript面向对象已经一定的了解,如还有什么不理解的可以参考《面向对象JS基础讲解,工厂模式、构造函数模式、原型模式、混合模式、动态原型模式》,接下来讲一般通过那些方法完成...
  • 为对象原型prototype添加属性的的方法, 需要的朋友可以参考下。
  • 本文实例讲述了javaScript...隐式原型链:在一般环境下无法访问,即不可见,在FireFox下可以通过__proto__方式访问;隐式原型链用于javascript引擎内部对原型链的搜寻,通过显示原型链来设置;   一、prototype和__pr
  • 主要介绍了JS常见创建类的方法,结合实例形式总结分析了工厂方式,构造器方式,原型方式,联合方式等常见的javascript创建类的常用技巧与相关注意事项,需要的朋友可以参考下
  • 在Javascript中,如果我们一个对象但是又不知道它的构造函数时,如何获取它的原型对象呢? 在Chrome中或是FireFox浏览器中,我们可以直接使用对象的__proto__属性获取它的原型对象。 代码如下: <!– lang: js ...
  • JavaScript中对象创建的方式有两种:工厂方法(Factory Functions)、构造器方法(Constructor Functions) 。 工厂方法 工厂方法在编程领域是一个非类或构造器的返回对象的方法。在JavaScript中,任何返回不使
  • 原型正是实现javascript继承的很重要的一种方法! 我们首先来看以下代码: 代码如下: function person(name, age) { this.name = name; this.age = age; } person.prototype.getInfo = function() { alert(...
  • 作品名称:企业类系统管理平台(通用模板)高保真交互原型 作品类型:源于实际项目按照功能重新设计 模板主要适用:企业内部进行已开发的系统进行登记统计的功能。 适用行业:互联网、公司内部、通用性、专用性的...
  • 在讨论原型继承之前,先回顾一下关于创建自定义类型的方式,这里推荐将构造函数和原型模式组合使用,通过构造函数来定义实例自己的属性,再通过原型来定义公共的方法和属性。 这样一来,每个实例都自己的实例属性...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 446,525
精华内容 178,610
热门标签
关键字:

原型的形式有哪些