南京万和IT培训中心
招生热线:400-656-3385

学校地址:南京中山北路26号新晨国际大厦24层

大数据应用:前端模块化开发的价值

  随着大数据将各行各业的用户、方案提供商、服务商、运营商以及整个生态链上游厂商融合到一个大环境中,大数据应用前端开发变得越来越复杂。早js(javascript)需求简单,是一种面向过程的写法,也就是写函数,后来引入面向对象的开发思想,到现在写成类。随着应用程序的增多,js代码复杂度越来越高,如何管理、组织、优化成为摆在企业技术部门面前的一个现实问题。

  模块化开发并不新鲜,但在 国内web 领域,无论是前端开发还是新生岗位,都保留着比较落后的编码习惯。直到近年,随着各种前端框架的推广和流行,模块化开发理念才被广泛接受和应用。本文将从实际项目中遇到问题出发,讲述模块化可以解决js代码中的哪些问题,以及如何使用 sea.js 进行前端模块化开发。

  一、命名冲突

  在项目开发过程中,我们通常会将一些通用的、底层的功能抽象出来,独立成一个个函数,一种面向过程的写法,并像模像样地把这些函数统一放在 base.js 里。需要时,引入该文件即可。这是一个很好的编码习惯,通用功能被封装成一个便利的工具包,方便以后使用。

  但这一方式有个致命缺点,就是它只适用于团队人数较少时,如果人数不断增多,就会出现命名冲突、函数被覆盖等问题。如何解决?我们发现,如果借鉴后端语言命名空间的方式,将前端也引入命名空间来组织函数,通过命名空间,就能缓解冲突。但这一方式同时也带来了另一问题,就是为了调用一个简单的方法,需要记住很长的命名空间,结果就是代码量上去了,增加了系统记忆负担。

  二、烦琐的文件依赖

  另一个问题,基于 base.js编写的前端通用函数库,节省了重复建设时间。但当项目团队中的a某某调用到某个通用函数后,页面总是提示错误。经过排查,发现原因是页面没有引入base.js,进而导致页面无法正常工作,这是在做前端开发时经常遇到的问题。如果在项目初期,则上面的文件依赖还在可控范围内,但当项目逐渐推进,越来越复杂时,众多文件之间的依赖就会让人抓狂。

  之所以出现上面问题,是因为文件依赖没有很好的管理起来。在前端页面里,大部分脚本的正常运行还是目前依旧是通过人为检测代码的方式来保 证。当团队较小时,这一方式不会出现什么问题。但当团队越来越大,业务越来越复杂后,这一问题就会凸显,而依赖问题如果不解决,为后续工作展开带来许多问题。

  三、sea.js解决两大困扰

  sea.js 是一个成熟的开源项目,目标是给前端开发提供简单、极 致的模块化开发体验。

  使用 sea.js编写js文件时,需要遵守 cmd模块定义规范。一个文件就是一个模块,通过define来定义模块, exports 向外提供接口(define、exports、require都可简单理解为sea.js中的语法关键字)。

  通过 require('./base.js') 可以拿到 base.js 中通过 exports 暴露的接口。这是一项简单的工作,作为前端工程师,对 css这一代码并不陌生:

  @import url("base.css");

  sea.js 增加的 require 语法关键字,就如 css 文件中的 @import 一样,给我们的源码赋予了依赖引入功能。如果你是后端开发工程师,对这一方式更不会陌生,java、python、c# 等语言中,都有 include、import 等功能。通过这一方式,在页面中使用 base.js 将变得非常简单。

  四、sea.js是如何解决上面遇到的两个问题的呢?

  首先,利用 exports 暴露接口意味着不需要命名空间,更不需要全局变量。这是一种彻底解决命名冲突的方案。

  其次,通过 require 引入依赖,可以让依赖内置,开发者只需关心当前模块的依赖,其他事情 sea.js 会自动处理好。对模块开发者来说,这是一种很好的关注度分离,可以让编码人员专注于自己的模块。

  除了可以解决命名冲突和依赖管理问题,使用 sea.js 进行模块化开发还可以带来以下好处:

  1.模块的版本管理。通过简单配置,可以比较轻松地实现模块的版本管理。

  2.提高可维护性。模块化可以让每个文件的职责单一,有利于代码维护。

  3.前端性能优化。sea.js使用的异步加载模块,对提高页面性能非常有益。

  模块化开发给前端编码带来了解决数据量急剧增加所产生问题的新思路和方法,sea.js在编码中的应用,不仅减轻了编码人员的工作量,也大大提升了页面性能,合理利用这一技术,对前端编码人员大有裨益。


文中图片素材来源网络,如有侵权请联系删除
申请试听
为您选课

课程介绍

目前从事大数据应用开发工作的人员工资已经远超普通技术开发者,初级月薪在2万左右,已经达到50万。Hadoop对累积了海量数据资产的企业来说意义非凡。Hadoop可以在商业服务器集群上分布数据和执行并行处理,还能侦测和处理对于分布式处理至关重要的故障。大数据的兴起促成了底层开源Hadoop技术的繁荣:它成本更为低廉、部署更为简单、能够存储文本等非结构化数据,可满足企业所需。目前,Hadoop在国内的应用愈加广泛,尤其是在电信业和金融业。Hadoop除了具备低成本分布式硬件和数据冗余安全模式之外,

课程特点:

本课程深入介绍Hadoop技术架构以及Hadoop运作机制。学完本课程后,学员可以独立设计、规划及部署生产环境的Hadoop集群,掌握Hadoop基本运维思路和方法,对Hadoop集群进行管理和优化。

课程目标:

掌握Linux操作系统的基本命令和简单维护 深入理解Hadoop架构 掌握Hadoop HDFS的设计原理 掌握Hadoop HDFS常用操作命令 掌握Hadoop MapReduce的设计原理 熟悉Hadoop MapReduce程序开发基本流程 掌握Hadoop 1.x与hadoop2.x的主要区别 独立实施Hadoop集群以及对集群进行监控 了解Zookeeper基本原理以及实施Zookeeper集群 了解Hbase基本原理以及实施Hbase集群 了解Hadoop调优的基本思路和方法

适合对象:

熟练使用Linux系统,对数据库和SQL语句有一定了解的人员。

预备知识:

了解Linux操作系统,对云计算有所认识。

课程内容:

Linux系统安装和配置 Linux系统进程和用户管理 Linux文件和目录创建和配置 Linux RPM和YUM配置管理

课时:128课时

江苏万和简介:

江苏万和计算机培训中心创立于1993年,是江苏地区成立早、规模大的专业IT教育培训机构。作为专业IT高端技术培训解决方案供应商,立足于为企业客户和个人客户提供全球先进的IT技术培训服务,21年来已培养了各类专业IT技术人才超过90000人,成为中国十大IT培训品牌。中心作为Microsoft、Redhat、0racle、Cisco、IBM、Citrix、VMWare、Huawei、Adobe及AutoDesk等众多厂商的培训机构,提供国际化、标准化的国际认证课程培训服务,涉及IT职业发展的各个领域。

江苏万和同时拥有30多位厂商认证讲师,有着丰富的项目实施经验,平均授课8000课时以上且在市中心甲等写字楼拥有2000平方的教学场地,20间专业培训教室以及0racle、Cisco、Microsoft、Redhat、华为五大企业应用实验室。

江苏万和作为江苏省国际服务外包人才培训基地、南京市国际服务外包人才培训机构,服务的对象覆盖了包括政府、金融、电信运营商、电力、生产制造、石油化工、消费品、IT等众多行业,与数千家软件企业建立起战略合作伙伴关系。

优惠活动:前来江苏万和计算机培训中心报名任何IT课程均可送200元考试抵用券

地址:南京市中山北路26号新晨国际大厦(地铁鼓楼站4A出口)

办学特色

的培训品牌 经过21年坚持不懈的努力,通过规范化、标准化、专业化服务流程实施,江苏万和计算机培训中心已发展成为华东地区大的专业IT培训机构,成为江苏省国际服务外包人才培训基地、南京市国际服务外包人才培训机构及南京市软件人才培训基地,中国十大IT培训品牌之一! 的课程体系 目前,江苏万和计算机培训中心提供的专业IT培训课程,针对不同的培训诉求,分成职业能力提升课程和就业实训课程两大门类,涵盖了网络技术、开发技术、数据库技术、中间件技术、虚拟化技术、信息安全技术、IT应用技术、数码艺术、游戏动漫设计和网络营销等十大技术方向,帮助客户进行IT职业发展的提升!

成熟的就业体系

江苏万和服务的企业客户超过2000家,包括了爱立信、福特、西门子、LG、百胜集团、富士通、圣戈班等全球500强企业,覆盖了包括政府、金融、电信运营商、电力、生产制造、石油化工、消费品、IT等众多行业,与数百家软件企业建立起战略合作伙伴关系,与软通动力、文思创新、海辉软件、亚信联创、东软集团、联迪恒星、润和软件、诚迈科技等众多中国软件百强企业建立了稳固的人才合作伙伴关系。

万和的使命

让客户享受IT知识更新的价值

万和的目标

打造中国的IT教育品牌

万和的价值观

质量 诚信 积极 合作 行动

万和的教育理念

知识、技能、经验提升,增强竞争力,保持竞争优势,从容面对各种挑战。

万和的特点

专业化——因专业而精彩

以上就是数据库培训课程的全部内容介绍,如需了解更多的数据库培训班、课程、价格、试听等信息,也可以点击进入 数据库 相关频道,定制专属课程,开始您的学习之旅。

申请免费试听
全国招生热线