移动应用开发——作业1
题目一:请查找资料,简单描述Web应用开发框架Vue.js、React.js、Angular.js的特点,及在移动应用方面的发展,每种400字至600字。
1. Web应用开发框架——Vue.js:
特点:
- Vue.js是一套用于构建用户界面的渐进式JavaScript框架。 自带有各种可用于构建用户界面的备选工具,被设计为可以自底向上逐层应用。核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用(SPA)提供驱动。
- Vue.js应用于小型应用。渐进式构建能力是 vue.js 最大的优势,vue 有一个简洁而且合理的架构,使得它易于理解和构建。vue 有一个强大的充满激情人群的社区,这使得为一个空白项目创建一个综合的解决方案变得容易。
- Vue 既可以在单独的页面上用来解决简单的任务,也可以作为成熟的工业应用程序的基础。Vue.js 是一个用于构建图形用户界面的高级框架。它也可以与一些现代工具和附加库一起,用于构建复杂的单向应用程序。
- Vue.js是一个轻巧、高性能、可组件化的MVVM库,同时拥有非常容易上手的API实现响应的数据绑定和组合的视图组件。核心是一个响应的数据绑定系统。;
- Vue.js是一个构建数据驱动的Web界面的库。
- Vue.js模块化,目前最热的方式是在项目中直接使用ES6的模块化,结合Webpack进行项目打包;
- Vue.js组件化,创造单个component后缀为.vue的文件,包含template(html代码),script(es6代码),style(css样式);
- Vue.js通过简单的API(应用程序编程接口)提供高效的数据绑定和灵活的组件系统。
在移动应用方面的发展和应用:
Vue.js 是一个优秀的前端界面开发 JavaScript 库,它主要的特点有。
- 轻量级的框架
能够自动追踪依赖的模板表达式和计算属性,提供 MVVM 数据绑定和一个可组合的组件系统,具有简单、灵活的 API,更加容易理解,能够更快上手。 - 双向数据绑定
声明式渲染是数据双向绑定的主要体现,同样也是 Vue.js 的核心,允许采用简洁的模板语法将数据声明式渲染整合进 DOM。 - 指令
Vue.js 与页面进行交互,主要通过内置指令来完成的,指令的作用是当其表达式的值改变时相应地将某些行为应用到 DOM 上。 - 组件化
组件(Component)是 Vue.js 最强大的功能之一。组件可以扩展 HTML 元素,封装可重用的代码。在 Vue 中,父子组件通过 props 传递通信,从父向子单向传递。子组件与父组件通信,通过触发事件通知父组件改变数据。这样就形成了一个基本的父子通信模式。
在开发中组件和 HTML、JavaScript 等有非常紧密的关系时,可以根据实际的需要自定义组件,使开发变得更加便利,可大量减少代码编写量。
组件还支持热重载(hotreload)。做了修改时不会刷新页面,只是对组件本身进行立刻重载,不会影响整个应用当前的状态。CSS 也支持热重载。 - 客户端路由
Vue-router 是 Vue.js 官方的路由插件,与 Vue.js 深度集成,用于构建单页面应用。Vue 单页面应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来,传统的页面是通过超链接实现页面的切换和跳转的。 - 状态管理
状态管理实际就是一个单向的数据流,State 驱动 View 的渲染,而用户对 View 进行操作产生 Action,使 State 产生变化,从而使 View 重新渲染,形成一个单独的组件。
2. Web应用开发框架——React.js:
特点:
- React 是由Facebook带来的开源JavaScript库。可以被用于构建交互式、有状态、且可重用的用户界面(UI)。呈现具有高性能、且复杂的UI的基本功能。同时可以与虚拟化的文档对象模型(DOM)协同使用,以提供高稳定性的Web应用程序。
- React相对简单和专注。可以轻松掌握概念,并了解单向数据体系结构的好处,简化大量的用户界面应用程序。借助 React 库,可以轻松地创建交互式用户界面。集成 React 时,不需要更改当前项目的代码,只负责渲染界面。
- React更多地面向 JavaScript 而不是 TypeScript,更便于创建原生 Android 和 iOS 移动应用程序;拥有大量适用于各种场合的第三方库(多于 Angular)。
- React采用声明范式,可以轻松描述应用。通过对DOM的模拟,最大限度地减少与DOM的交互。可以与已知的库或框架很好地配合。
- React速度快:在UI渲染过程中,React通过在虚拟DOM中的微操作来实现对实际DOM的局部更新。跨浏览器兼容:虚拟DOM帮助解决了跨浏览器问题,提供了标准化的AP。模块化:为程序编写独立的模块化UI组件,方便进行隔离。单向数据流:Flux是一个用于在JavaScript应用中创建单向数据层的架构,它随着React视图库的开发而被Facebook概念化。兼容性好。
在移动应用方面的发展和应用:
- react声明式开发:命令式开发:原生js和jq写代码的时候,大部分代码都是在操作dom。声明式开发:面向数据编程,不需要直接去控制dom,只要把数据操作好,react自己会去操作dom,可以节省很多操作dom的代码。
- react可以和其他框架并存react所控制的dom就是id为root的dom,页面上的其他dom元素你页可以使用jq等其他框架。
- react组件化,通过继承react的Component去创建一个组件。
- react是单向数据流,父组件传递给子组件的数据,子组件能够使用,但是不能直接通过this.props修改。否则会报错。子组件要传值给父组件,或者要修改父组件的代码,都是要通过父组件传递过来的方法去实现。让数据清晰代码容易维护。react是视图层框架
- react函数式编程,项目中大部分都是函数,连html都是由render函数去实现的。方便代码维护,复杂的函数可以拆分成多个函数。在前端自动化测试也很方便,只需要给函数一个参数,看他的输出就可。
3. Web应用开发框架——Angular.js:
特点:
- Angular是Google提供的一种开源的前端Web应用程序框架。通过其模型-视图-控制器(MVC)式的架构,能够轻松地进行各种开发、维护和测试。不但适用于构建具有高活跃性和交互性的Web应用场景,还广受单页面式应用程序的欢迎。应用在大型超大型web应用开发上。
- Angular方便在一个大型的框架内获取技术资源,框架内的技术很容易移植;方便在框架中训练开发人员,在短期内获得一定的开发能力。
- Angular 差不多是一个完整的开发环境。它包含一整套程序,包括 TypeScript 编译器、AOT 编译器和 Web 服务器。Angular 的 Web 服务器用于调试使用这个框架开发的站点。它是用同一个 Angular CLI 实用程序启动的,要启动 Angular CLI,你需要在 Windows 命令行中进入项目文件夹,并执行ng serve命令。
- Angular易于扩展,可以很轻松地扩展应用来提供实用的新功能。易于维护, 应用程序很容易调试,Bug 很容易修复,有良好的 go mod 和端到端测试支持。Angular 基于浏览器的内部功能可以创建符合标准的 Web 应用程序,包含最新的功能(例如,各种 HTML5 API)、流行的工具和框架。
- Angular有良好的应用程序结构,双向数据绑定,指令,HTML模板,可嵌入、注入和测试。是一个比较完善的前端框架,包含服务,模板,数据双向绑定,模块化,路由,过滤器,依赖注入等所有功能, ng模块化比较大胆的引入了Java的一些东西(依赖注入),能够很容易的写出可复用的代码,对于敏捷开发的团队来说非常有帮助。模板功能强大丰富,自带了极其丰富的angular指令。自定义指令,自定义指令后可以在项目中多次使用。
在移动应用方面的发展和应用:
- Angular.js是google开发者设计和开发的一套前端开发框架,帮助简化前端开发的负担。AngularJS 通过新的属性和表达式扩展了 HTML。AngularJS 可以构建一个单一页面应用程序
- Angular.js有良好的应用程序结构:使用 AngularJS,可以通过MVC(模型 - 视图 - 控制器)或MVVM (模型 - 视图 - 视图模型)模式来组织源代码。AngularJS 是一个 MVW 框架,其中W代表可以用于任何项目。可以组织你的代码模块,可显著提高应用程序的可测试性和可维护性。数据、业务逻辑、视图的分离。
- Angular.js双向数据绑定。可以声明绑定的模型到 HTML 元素。当模型发生变化时,视图会自动更新,反之亦然。这可以减少大量的传统样板代码,保持模型和视图同步。
- Angular.js指令:自定义Directive。
- Angular.jsHTML 模板:AngularJS 使用 HTML 模板,设计人员可以按照通常的方式创建用户界面,而开发人员可以使用声明性绑定语法很容易配合不同的UI组件的数据模型。
- Angular.js依赖注入。ng模块化比较大胆的引入了Java的一些东西(依赖注入),能够很容易的写出可复用的代码。
题目二:简单描述目前自己已经掌握的Web开发技术,有相关项目经历的可以描述一下。
大三上期末生产实习选择了web班,学习了基础的HTML+CSS+JS内容,最后完成了一个模拟小米商城的首页
移动应用开发——作业1相关推荐
- 安卓作业----慕课移动应用开发作业15之模仿实现微信界面效果(二)
此篇综合运用自定义ActionBar.ContextMenu.PopupWindow.Fragment.ViewPager 以及RecyclerView等实现微信页面效果. 同时这也是中国大学慕课移动 ...
- 安卓作业----慕课移动应用开发作业13之使用自定义RecyclerView.ItemDecoration实现列表悬浮顶部效果
此博客通过RecyclerView.TextView等进行界面布局,使用自定义RecyclerView.Adapter.RecyclerViewAdapter.ViewHolder以及自定义Recyc ...
- 移动开发作业:三种近场通信技术的特点及对其未来应用场景的分析预测
本次作业的内容为:请分析三种近场通信技术的特点,对未来近场通信技术的应用场景进行分析与预测: 近场通信 现在所说的近场通信技术,往往指的是Near Field Communication,简称NFC, ...
- 【渝粤题库】陕西师范大学163103 旅游资源与开发 作业 (高起专)
陕西师范大学 内 部 题 库 教育 (yuyueshool) 编制 陕西师范大学 内 部 题 库 教育 (yuyueshool) 编制 <旅游资源与开发(高专)>作业 单选题 1.旅游资源 ...
- 汽院移动终端软件开发作业
1.开发一个APP,程序运行后的界面如下 设计一个APP,运行时显示第1个界面.点击"计算"按钮,显示第2个界面,并将第1数.第2个数的和显示在第2个界面中.点击"返回& ...
- JavaScript与Ajax开发作业
JavaScript与Ajax开发练习 刚学完JavaScript,把作业记录一下,仅供参考. 支持请点赞三连 **从第二题到最后的源码请参考: 链接: https://pan.baidu.com/s ...
- 软件工程结对开发作业02
开发人员: 程序分析,代码编程:信1505-1班 毛松林: 代码复审与代码测试:信1505-1班 张 浩, 一开始看到这到题的时候,我简直没有一点思路.老师提示说是可以先求出所有正整数的和,然后找出 ...
- 移动应用开发——作业3
题目一:使用Javascript代码编写一个"杭州亚运会倒计时"网页,要求适合于手机上展示.时间能精确到秒,显示的时间格式,可自己定,例如:286天12时36分20秒. 截图和效果 ...
- 小型数据库系统开发作业
文章目录 题目 数据库设计 UI界面开发展示 题目 自学上层应用访问数据库的方式(如ODBC.ADO.JDBC.MySQLi或者其它),根据您使用的上层语言(不限语言(但要求与自己完成的文件管理数据实 ...
- Java Web应用开发——作业一
一.单项选择题(共5题,50.0分) 1 主流的Web应用程序开发技术不包括( )(10.0分) A.PHP B.Java Web C.ASP.NET D.C++ 正确答案: D 2 以下哪个概念或者 ...
最新文章
- 我爱Java系列---【 maven依赖版本冲突的解决方法】
- Mysql错误1045解决方法
- Linux复习资料——MySQL-client-5.6.50-1.el7.x86_64与MySQL-server-5.6.50-1.el7.x86_64包安装MySQL全过程
- [转] c#中 多线程访问winform控件
- [转]详细介绍如何做关联
- python模块下载连接清华镜像的具体步骤_anaconda | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror...
- OpenStack 的Nova组件详解
- JS的Touch事件们
- SAP License:雾里看花系列——SAP顾问应该脱离”保姆”的角色
- mysql报错1241_flask内的mysql插入语句报错:1241, 'Operand should contain 1 column(s)
- 启动和停止数据库——停止例程
- 装饰器补充、三元表达式、生成式、匿名函数
- 用AOP思想改造一个服务器的数据存储
- 写论文、搞科研、读大学必备的28款软件。
- python使用while实现无限循环_python 基础之while无限循环
- 【管理】企业项目的OKR实战
- php怎么使用sendcloud,高级功能 - SendCloud 文档中心 - SendCloud 文档中心
- FFmpeg给mp4视频加上旋转90度的代码
- CentOS 6.4 拨号上网全攻略
- 在C语言中使用else if判断数字是正数还是负数或是零。