《Web前端开发最佳实践》——第2章 高效Web前端开发2.1 前端代码的结构组织和文件的命名

简介:

本节书摘来自华章计算机《Web前端开发最佳实践》一书中的第2章,第2.1节,作者:党 建 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

第2章 高效Web前端开发

本章首先将概述Web前端开发中的相关最佳实践,如前端代码文件组织、前端代码重构、前端框架的选择,以及前端开发过程中实用的开发辅助工具等,帮助读者提高前端开发的效率。好的开发方式在项目中会起到事半功倍的效果,并且可确保开发过程中的代码结构清晰,易维护。本章然后会介绍前端代码的基本命名规范和格式规范,良好的命名规范和规整的格式让代码看起来干净整洁,也体现了开发者良好的职业素养,应该说命名规范、整齐的格式不仅是开发过程中的一种约定,而且是程序员之间良好沟通的桥梁。

2.1 前端代码的结构组织和文件的命名

代码的组织和代码文件的命名并没有最优的形式,但是无论什么代码,它们所遵循的原则是相同的,即在同一个项目中代码的组织结构一定要清晰,同类型的代码文件或者相同模块的代码文件尽量归类到相同的文件夹中,文件的命名规则须统一并且命名要有意义。
(1)代码文件组织结构
前端代码文件主要包含JavaScript、CSS、HTML等文件,以及这些代码文件相关的图片、Flash、音视频等资源文件。如何合理地组织这些文件是项目成败的关键因素之一,对于该文件,既要考虑结构清晰、一目了然,还要考虑代码的复用。基于这样的原则,惯用的做法是同类文件放在一起,并按模块划分文件
结构。
如下是一种常用的前端文件的组织结构:

  • js(放置JavaScript代码)
  • lib(放置框架JavaScript文件)
  • custom.js
  • css(放置CSS样式代码)
  • lib(放置框架CSS文件)
  • images(放置用于样式中的背景图)
  • reset.css(统一元素默认样式的样式文件)
  • custom.css(业务相关样式文件)
  • resource(放置页面图片文件以及其他类型资源文件)
  • index.html

代码文件整体按照文件类型的不同归类,同一类型的代码文件则需要按照具体的业务模块来划分,切忌把多个模块的代码编写到同一个文件中。划分的粒度以最大化代码复用为标准,这样做的优点是易于维护和管理。不同模块的代码放置到不同的文件中也更有利于多人协作开发。图2-1是实际项目中的一个示例。


11dc1cdad28305b54ede4ab9dcdb5824107ed389

如果每种分类下面的文件过多,则可以根据对应的模块来归类到不同的模块文件夹中。例如,某个项目业务模块很多,导致前端JavaScript脚本文件数量过多,如果这些文件放置到同一个文件夹中,将会增加维护的困难。如果按照模块的不同新建不同的文件夹,并把同一模块相关的代码文件放置在对应的模块文件夹中,则代码文件的结构更加清晰。
细心的读者可能会发现代码文件的细化会使代码文件的数量增多,相应地进行网站加载时请求的数量也会增加,这样会导致网页整体的加载时间变长。的确,加载文件数量增加会影响页面加载的速度,所以,发布时需要合并相应的代码文件。值得庆幸的是,有相关的工具或插件可以弥补这一不足,比较著名的有雅虎(Yahoo)公司开发的YUI Compressor和微软公司开发的Web Optimization。YUI Compressor是基于Java平台开发的,在Java平台下应用较多,而Web Optimization则是基于.NET平台开发,所以在ASP.NET开发的项目中广泛应用。
(2)代码文件的命名
代码文件命名的原则主要是名称需要表明文件对应的模块内容、对应的版本号和文件的格式等,如jQuery的文件命名为jquery-1.8.2.min.js,其中,jquery表明文件的内容,1.8.2表明文件的版本号,min表明此文件为文件的压缩格式版本。如果文件为子模块文件,则在文件名中用点号或短横线来表明父子关系,如Bootstrap框架中响应式设计模块对应的CSS文件的命名为:bootstrap-responsive.css。
相关文章
|
XML 安全 前端开发
一行代码搞定禁用 web 开发者工具
在如今的互联网时代,网页源码的保护显得尤为重要,特别是前端代码,几乎就是明文展示,很容易造成源码泄露,黑客和恶意用户往往会利用浏览器的开发者工具来窃取网站的敏感信息。为了有效防止用户打开浏览器的 Web 开发者工具面板,今天推荐一个不错的 npm 库,可以帮助开发者更好地保护自己的网站源码,本文将介绍该库的功能和使用方法。 功能介绍 npm 库名称:disable-devtool,github 路径:/theajack/disable-devtool。从 f12 按钮,右键单击和浏览器菜单都可以禁用 Web 开发工具。 🚀 一行代码搞定禁用 web 开发者工具 该库有以下特性: • 支持可配
1556 22
|
前端开发 Cloud Native Java
Java||Springboot读取本地目录的文件和文件结构,读取服务器文档目录数据供前端渲染的API实现
博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
Java||Springboot读取本地目录的文件和文件结构,读取服务器文档目录数据供前端渲染的API实现
|
JSON 前端开发 API
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
1076 5
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
|
前端开发
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
1276 1
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
|
开发框架 .NET PHP
ASP.NET Web Pages - 添加 Razor 代码
ASP.NET Web Pages 使用 Razor 标记添加服务器端代码,支持 C# 和 Visual Basic。Razor 语法简洁易学,类似于 ASP 和 PHP。例如,在网页中加入 `@DateTime.Now` 可以实时显示当前时间。
|
人工智能 前端开发
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
536 0
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
|
移动开发 前端开发 JavaScript
前端开发实战:利用Web Speech API之speechSynthesis实现文字转语音功能
前端开发实战:利用Web Speech API之speechSynthesis实现文字转语音功能
2764 1
|
存储 前端开发 JavaScript
从 Web 2.0 到 Web 3.0:前端开发的历史与未来
【10月更文挑战第4天】本文探讨了从 Web 2.0 到 Web 3.0 的前端开发演变过程。Web 2.0 时代,前端开发者从静态网页设计走向复杂交互,技术框架如 jQuery、React 和 Vue 带来了巨大的变革。而 Web 3.0 以区块链技术为核心,带来了去中心化的互联网体验,前端开发者面临与区块链交互、去中心化身份验证、分布式存储等新挑战。文章总结了 Web 2.0 和 Web 3.0 的核心区别,并为开发者提供了如何应对新技术的建议,帮助他们在新时代中掌握技能、设计更安全的用户体验。
670 0
从 Web 2.0 到 Web 3.0:前端开发的历史与未来
|
存储 安全 前端开发
在前端开发中需要考虑的常见web安全问题和攻击原理以及防范措施
在前端开发中需要考虑的常见web安全问题和攻击原理以及防范措施
2011 0
|
存储 前端开发 API
前端开发中,Web Storage的存储数据的方法localstorage和sessionStorage的使用及区别
前端开发中,Web Storage的存储数据的方法localstorage和sessionStorage的使用及区别
670 0

热门文章

最新文章

  • 1
    前端如何存储数据:Cookie、LocalStorage 与 SessionStorage 全面解析
    1257
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
    572
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
    434
  • 4
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
    434
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
    548
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
    726
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
    1413
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
    315
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
    1168
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
    509