day33—前端开发的模块化和组件化
转行学开发,代码100天——2018-04-18
今天是记录前端开发中模块化、组件化的知识。关于何为模块化,何为组件化以及为何要如此,目前还是处于一个只可意会不可言传的理解应用阶段。
当然,这样的存在也能想到其好处——方便你我他!
一个模块案例展示如下:

其HTML内容:
<div class="nav">
<ul>
<li class="current">
<a href="#">推荐</a>
</li>
<li>
<a href="#">排行榜</a>
</li>
<li>
<a href="#">歌单</a>
</li>
<li >
<a href="#">主播电台</a>
</li>
<li >
<a href="#">歌手</a>
</li>
<li>
<a href="#">新碟上架</a>
</li>
</ul>
</div>
一个导航栏中,nav下的个元素均是与nav相关元素。因此其各元素CSS样式命名可按照如下方式进行整体化区分:
/* nav begin */
.nav{ }
.nav ul{ }
.nav li{ }
.nav li a{ }
.nav li .current{ }
.nav li .current{ }
.nav-1 ul{ }
/* nav end */
案例中,模块容器为class为nav,也就是或nav代表了这个导航模块。通过这种方式区分后,便于查找-修改等设置,也便于其他开发者阅读。
有了对模块的认识,在开发中常常需要对外观相似,语义相同的模块进行扩展。可通过“nav-?”方式进行CSS样式的编写,以实现代码代价最小化,避免了大量重复代码的编写。
.nav-1 ul{ }
组件:是一系列相关联的结构组成的整体,是对多模块内通用内容的抽象。
换言之,就是通过代码优化,实现代码更大的通用性。
同样组件也存在着扩展。
组件化及组件的扩展,都有避免重复造轮子的优势。其次就是便是实现多人协同。
(组件,跟“类”的概念很相像。) 其次,在开发中通过模块化和组件化以更高效的方式完成开发工作,同时在这个过程中可通过“
规范”进行不同开发者之间的高效沟通。 规范包括:命名规范,格式规范等。 对于一个初级开发者来说,首先了解这些代码编写思想非常有必要,便于大家一开始就养成规范编码的习惯,也能更好地适应团队协同开发工作。 于此,在提醒并要求自己,从现在开始培养规范意识,提高代码编写的规范性,可读性,可维护性等。
day33—前端开发的模块化和组件化的更多相关文章
- Android 开发:由模块化到组件化(一)
在Android SDK一文中,我们谈到模块化和组件化,现在我们来聊聊组件化开发背后的哪些事.最早是在广告SDK中应用组件化,但是同样适用于普通应用开发 以下高能,请做好心理准备,看不懂请发私信来交流 ...
- Android 开发:由模块化到组件化
在Android SDK一文中,我们谈到模块化和组件化,现在我们来聊聊组件化开发背后的哪些事.最早是在广告SDK中应用组件化,但是同样适用于普通应用开发 以下高能,请做好心理准备,看不懂请发私信来交流 ...
- [Android Pro] 由模块化到组件化(一)
cp from : https://blog.csdn.net/dd864140130/article/details/53645290 在Android SDK一文中,我们谈到模块化和组件化,现在我 ...
- 面试指南」JS 模块化、组件化、工程化相关的 15 道面试题
JS 模块化.组件化.工程化相关的 15 道面试题 1.什么是模块化? 2.简述模块化的发展历程? 3.AMD.CMD.CommonJS 与 ES6 模块化的区别? 4.它们是如何使用的? 5.exp ...
- 模块化Vs组件化
模块化&组件化 原因 图解 模块化Module 概念 使用 目的 依赖 架构定位 内容:组件内的Script 组件化 概念 使用 目的:复用,解耦 依赖 架构定位 内容:template.st ...
- 微信小程序开发之路之组件化
类似于页面,自定义组件拥有自己的 wxml 模版和 wxss 样式. 官方链接 组件化,反过来理解,写重复的页面,方法,写第二遍就烦了,抽取出来就是组件化,可以理解为公用的方法 对于通用的数据,最先想 ...
- vue前端开发那些事——vue组件开发
vue的学习曲线不是很陡(相比其它框架,如anglarjs),官方文档比较全面,分为基础篇和高级篇.我们刚开始学习的时候,肯定像引用jquery那样,先把vue的js引进来,然后学习基础内容.如果仅仅 ...
- UI组件化介绍
组件化相关概念 怎么理解组件化开发 https://www.cnblogs.com/zs-note/p/7093323.html 前端组件化框架之路 https://blog.csdn.net/hap ...
- Vue.js-组件化前端开发新思路
Vue.js-组件化前端开发新思路 12017.04.14 18:31:25字数 6228阅读 5632 本文章是我最近在公司的一场内部分享的内容.我有个习惯就是每次分享都会先将要分享的内容写成文章. ...
随机推荐
- Git-第一篇认识git,核心对象,常用命令
1.git一般使用流程 4大核心对象:工作区.暂存区.本地库.远端库. 2.常用命令 1>git init:初始化本地仓库 2>git clone:克隆仓库到指定地方 3>git a ...
- Java学习day5程序控制流程二
循环结构: 循环语句的四个组成部分:1.初始化部分(init_statement) 2.循环条件部分(test_exp) 3.循环体部分(body_statement) 4.迭代部分(after_st ...
- BZOJ 3252题解(贪心+dfs序+线段树)
题面 传送门 分析 此题做法很多,树形DP,DFS序+线段树,树链剖分都可以做 这里给出DFS序+线段树的代码 我们用线段树维护到根节点路径上节点权值之和的最大值,以及取到最大值的节点编号x 每次从根 ...
- java synchronized实现可见性对比volatile
问题: 大家可以先看看这个问题,看看这个是否有问题呢? 那里有问题呢? public class ThreadSafeCache { int result; public int getResult( ...
- JS相比TS的缺点(或TS的优点)
JS只有在运行时,才会抛出错误, JS里有任何的拼写错误 都不会提示错误 JS运行时报的错,指向也未必是错误的源头,也就是说:A类里因为书写代码有误,会造成运行时其他的类报错如B JS无法做到不同pa ...
- WinForm:如何在ListBox中添加CheckBox
http://www.cnblogs.com/myshell/archive/2010/09/24/1834184.html 最近因为做WinForm的项目,遇到这个问题,当时以为CheckedLis ...
- Sublime text设置快捷键让编写的HTML文件在打指定浏览器预览
作者:浪人链接:https://www.zhihu.com/question/27219231/answer/43608776来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出 ...
- 浅析API和SDK
前言 最近有小伙伴咨询胡哥关于API和SDK的概念以及区别,今天给大家来阐述下我的理解,手动微笑.gif. API 1. 定义 API(Application Programming Interfac ...
- python之流程控制升级
python之流程控制:if elif else while for 一.流程控制之if: 1.1为什要有if判断:让计算机能像人一样代替人类工作,那么计算机应该有对于事务的读错,真假,是否可行的 ...
- Linux下C语言实现ATM取款机,消息队列版本
链接:https://pan.baidu.com/s/1oBavXBuZul7ZAEBL1eYfRA 提取码:ffhg Mybank ATM取款机实验,消息队列实现本实验用的是Centos71.在服务 ...