转行学开发,代码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—前端开发的模块化和组件化的更多相关文章

  1. Android 开发:由模块化到组件化(一)

    在Android SDK一文中,我们谈到模块化和组件化,现在我们来聊聊组件化开发背后的哪些事.最早是在广告SDK中应用组件化,但是同样适用于普通应用开发 以下高能,请做好心理准备,看不懂请发私信来交流 ...

  2. Android 开发:由模块化到组件化

    在Android SDK一文中,我们谈到模块化和组件化,现在我们来聊聊组件化开发背后的哪些事.最早是在广告SDK中应用组件化,但是同样适用于普通应用开发 以下高能,请做好心理准备,看不懂请发私信来交流 ...

  3. [Android Pro] 由模块化到组件化(一)

    cp from : https://blog.csdn.net/dd864140130/article/details/53645290 在Android SDK一文中,我们谈到模块化和组件化,现在我 ...

  4. 面试指南」JS 模块化、组件化、工程化相关的 15 道面试题

    JS 模块化.组件化.工程化相关的 15 道面试题 1.什么是模块化? 2.简述模块化的发展历程? 3.AMD.CMD.CommonJS 与 ES6 模块化的区别? 4.它们是如何使用的? 5.exp ...

  5. 模块化Vs组件化

    模块化&组件化 原因 图解 模块化Module 概念 使用 目的 依赖 架构定位 内容:组件内的Script 组件化 概念 使用 目的:复用,解耦 依赖 架构定位 内容:template.st ...

  6. 微信小程序开发之路之组件化

    类似于页面,自定义组件拥有自己的 wxml 模版和 wxss 样式. 官方链接 组件化,反过来理解,写重复的页面,方法,写第二遍就烦了,抽取出来就是组件化,可以理解为公用的方法 对于通用的数据,最先想 ...

  7. vue前端开发那些事——vue组件开发

    vue的学习曲线不是很陡(相比其它框架,如anglarjs),官方文档比较全面,分为基础篇和高级篇.我们刚开始学习的时候,肯定像引用jquery那样,先把vue的js引进来,然后学习基础内容.如果仅仅 ...

  8. UI组件化介绍

    组件化相关概念 怎么理解组件化开发 https://www.cnblogs.com/zs-note/p/7093323.html 前端组件化框架之路 https://blog.csdn.net/hap ...

  9. Vue.js-组件化前端开发新思路

    Vue.js-组件化前端开发新思路 12017.04.14 18:31:25字数 6228阅读 5632 本文章是我最近在公司的一场内部分享的内容.我有个习惯就是每次分享都会先将要分享的内容写成文章. ...

随机推荐

  1. JDK 13 的 12 个新特性,真心涨姿势了

    作者:木九天 my.oschina.net/mdxlcj/blog/3107021 1.switch优化更新 JDK11以及之前的版本: switch (day) { case MONDAY: cas ...

  2. JDK11 | 第五篇 : 启动单个Java源代码文件的程序

    文章首发于公众号<程序员果果> 地址 : https://mp.weixin.qq.com/s/h1L4FmzVSix434gVt8Fc7w 一.简介 JEP330-启动单文件代码程序(L ...

  3. vue中如何实时修改输入的值

    vue中如何实时修改输入的值 经常看到需要对用户输入的值进行实时修改,有时是需要修改为指定的展示内容,有时候是用来校验,禁止用户输入非法数据,总之是一个常见的需求吧,只是自己一直没有特意去关注.思来想 ...

  4. ionic -v2版本项目结构

    myApp │  config.xml  //项目配置文件,包名.名称.minSdkVersion等都在此处配置 │  ionic.config.json │  package.json  //项目依 ...

  5. HTTPS证书转换成PEM格式

    PEM 格式的证书文件(*.pem)一般为以下格式: 注意:PEM 格式证书文件可用 notepad++ 等文本编辑器打开. CER / CRT 格式证书转换为 PEM 格式 对于 CER / CRT ...

  6. iOS App中 使用 OpenSSL 库

    转自:http://blog.csdn.net/kmyhy/article/details/6534067 在你的 iOS App中 使用 OpenSSL 库 ——译自x2on的“Tutorial: ...

  7. service mesh学习规划

    istio go语言 谷歌开发 现有产品功能(每个功能具体支持哪些方式,优缺点) 服务注册发现 流量劫持 路由 负载均衡 熔断降级 流量控制(限流.流量分配) 重试机制 日志管理 支持的协议 监控(健 ...

  8. SpringBoot 利用freemaker生成静态页面

    1. <!-- freemarker模板 --> <dependency> <groupId>org.springframework.boot</groupI ...

  9. Vue.js 技术揭秘学习 (1) new Vue 发生了什么

    Vue 初始化主要就干了几件事情,合并配置,初始化生命周期,初始化事件中心,初始化渲染,初始化 data.props.computed.watcher 等等.

  10. 【串线篇】spring boot页面模板引擎

    如JSP.Velocity.Freemarker.Thymeleaf SpringBoot推荐的Thymeleaf:语法更简单,功能更强大: 一.引入thymeleaf <dependency& ...