写出诗一样的代码

HTML 规范

基础规范

1.HTML文件必须加上 DOCTYPE 声明,并统一使用 HTML5 的文档声明:

<!DOCTYPE html>

2.推荐使用属性值 cmn-Hans-CN(简体, 中国大陆),但是考虑浏览器和操作系统的兼容性,目前仍然使用 zh-CN 属性值

<html lang="zh-CN">
<meta charset="UTF-8">

3.为了能让浏览器更好的解析代码以及能让代码具有更好的可读性,有如下约定:

  • 所有具有开始标签和结束标签的元素都要写上起止标签,某些允许省略开始标签或和束标签的元素亦都要写上。
  • 空元素标签都不加 “/” 字符

推荐

<div>
    <h1>我是h1标题</h1>
    <p>我是一段文字,我有始有终,浏览器能正确解析</p>
</div>

不推荐

<div>
    <h1>我是h1标题</h1>
    <p>我是一段文字,我有始无终,浏览器亦能正确解析
</div>

4.书写风格
HTML标签名、类名、标签属性和大部分属性值统一用小写
推荐

<div class="demo"></div>

不推荐

<div class="DEMO"></div>
   
<DIV CLASS="DEMO"></DIV>

5.特殊字符引用
文本可以和字符引用混合出现。这种方法可以用来转义在文本中不能合法出现的字符
推荐

<a href="#">more&gt;&gt;</a>

不推荐

<a href="#">more>></a>

6.代码缩进
统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)

<div class="jdc">
   <a href="#"></a>
</div>

7.代码嵌套
元素嵌套规范,每个块状元素独立一行,内联元素可选
推荐

<div>
   <h1></h1>
   <p></p>
</div>	
<p><span></span><span></span></p>

不推荐

<div>
   <h1></h1><p></p>
</div>	
<p> 
   <span></span>
   <span></span>
</p>

段落元素与标题元素只能嵌套内联元素
推荐

<h1><span></span></h1>
<p><span></span><span></span></p>

不推荐

<h1><div></div></h1>
<p><div></div><div></div></p>

html注释

1.单行注释
注释内容前后各一个空格字符,注释位于要注释代码的上面,单独占一行
推荐

<!-- Comment Text -->
<div>...</div>

不推荐

<div>...</div><!-- Comment Text -->	
	
<div><!-- Comment Text -->
    ...
</div>

2.模块注释
一般用于描述模块的名称以及模块开始与结束的位置

<!-- S Comment Text A -->	
<div class="mod_a">
    ...
</div>
<!-- E Comment Text A -->

模板

基础模板

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>HTML5标准模版</title>
</head>
<body>
	
</body>
</html>

移动端

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, shrink-to-fit=no" >
<meta name="format-detection" content="telephone=no" >
<title>移动端HTML模版</title>
	
<!-- S DNS预解析 -->
<link rel="dns-prefetch" href="">
<!-- E DNS预解析 --> 

<!-- S 线上样式页面片,开发请直接取消注释引用 -->
<!-- #include virtual="" -->
<!-- E 线上样式页面片 -->

<!-- S 本地调试,根据开发模式选择调试方式,请开发删除 --> 
<link rel="stylesheet" href="css/index.css" >
<!-- /本地调试方式 -->

<link rel="stylesheet" href="http://srcPath/index.css" >
<!-- /开发机调试方式 -->
<!-- E 本地调试 -->

</head>
<body>

</body>
</html>

pc模板

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="keywords" content="your keywords">
<meta name="description" content="your description">
<meta name="author" content="author,email address">
<meta name="robots" content="index,follow">
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
<meta name="renderer" content="ie-stand">
<title>PC端HTML模版</title>

<!-- S DNS预解析 --> 
<link rel="dns-prefetch" href="">
<!-- E DNS预解析 --> 

<!-- S 线上样式页面片,开发请直接取消注释引用 -->
<!-- #include virtual="" -->
<!-- E 线上样式页面片 -->

<!-- S 本地调试,根据开发模式选择调试方式,请开发删除 --> 
<link rel="stylesheet" href="css/index.css" >
<!-- /本地调试方式 -->

<link rel="stylesheet" href="http://srcPath/index.css" >
<!-- /开发机调试方式 -->
<!-- E 本地调试 -->

</head>
<body>

</body>
</html>

CSS 规范

基础规范

1.代码风格
样式书写一般有两种:一种是紧凑格式

.jdc{ display: block;width: 50px;}

一种是展开格式

.jdc{
    display: block;
    width: 50px;
}

2.代码大小写
样式选择器,属性名,属性值关键字全部使用小写字母书写,属性字符串允许使用大小写。

/* 推荐 */
.jdc{
	display:block;
}
	
/* 不推荐 */
.JDC{
	DISPLAY:BLOCK;
}

3.代码缩进
统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)

.jdc {
    width: 100%;
    height: 100%;
}

4.代码易读性

/* 推荐 */
.jdc {
    color: rgba(255,255,255,.5);
}
	
/* 不推荐 */
.jdc {
    color: rgba( 255, 255, 255, 0.5 );
}
/* 推荐 */
.jdc {
    margin: 0 10px;
}
/* 不推荐 */
.jdc {
    margin: 0px 10px;
}
/* 推荐 */
.jdc { 
	font-family: 'Hiragino Sans GB';
}

/* 不推荐 */
.jdc { 
	font-family: "Hiragino Sans GB";
}

scss使用

1.嵌套

.jdc {
    .abc {}
}

2.属性嵌套

.jdc {
    background: {
        color: red;
        repeat: no-repeat;
        image: url(/img/icon.png);
        position: 0 0;
    }
}

3.变量—可复用属性尽量抽离为页面变量,易于统一维护

$color: red;
.jdc {
    color: $color;
    border-color: $color;
}

4.混合(mixin)

@mixin radius($radius:5px) {
    -webkit-border-radius: $radius;
    border-radius: $radius;
}
.jdc_1 {
    @include radius; //参数使用默认值
}

还有extend继承,for 循环,each 循环,function 函数等使用,大大减少重复代码。

代码注释

1.单行注释

/* Comment Text */
.jdc{}

2.模块注释

/* Module A
---------------------------------------------------------------- */
.mod_a {}

3.文本信息注释

@charset "UTF-8";
/**
 * @一段css说明
 * @wangjie
 * @date 20202-7-15
 */

JS 规范

基础规范

1.变量命名
当命名变量时,主流分为驼峰式命名(constiableName)和下划线命名(constiable_name)两大阵营。

建议在各团队中统一

2.缩进
对象字面量的键和值之间不能存在空格,且要求对象字面量的冒号和值之间存在一个空格
不推荐

const obj = { 'foo' : 'haha' }

推荐

const obj = { 'foo': 'haha' }

3.构造函数首字母大写

const fooItem = new Foo()

4.链式赋值
不推荐

const a = b = c = 1

推荐

const a = 1
const b = 1
const c = 1

5.函数声明

function func (x) {
  // ...
}

代码注释

1.单行注释

// 一段js
function func (x) {}

2.模块注释

/* 一段js
---------------------------------------------------------------- */
function func (x) {}

3.文本注释

/**
 * @一段js说明
 * @wangjie
 * @date 20202-7-15
 */

命名规范

1.目录命名

  • 项目文件夹:zt-szhxgs-web/zt-xx-xx-web/zt-xx-xx-mobile-web
  • 样式文件夹:css
  • 脚本文件夹:js
  • 样式类图片文件夹:img

2.HTML/CSS文件命名
确保文件命名总是以字母开头而不是数字,且字母一律小写,以下划线连接且不带其他标点符号

<!-- HTML -->
jdc.html
jdc_list.html
jdc_detail.html

<!-- SCSS -->
jdc.scss
jdc_list.scss
jdc_detail.scss

3.ClassName命名
ClassName的命名应该尽量精短、明确,必须以字母开头命名,且全部字母为小写,单词之间统一使用下划线 “_” 连接

  • 在子孙模块数量可预测的情况下,严格继承祖先模块的命名前缀
<div class="modulename">
   <div class="modulename_cover"></div>
   <div class="modulename_info"></div>
</div>
  • 全站公共模块:以 mod_ 开头;业务公共模块:以 业务名_mod_ 开头
<div class="mod_yours"></div>

<div class="zt_mod_yours"></div>

图片规范

常见的图片格式有 GIF、PNG8、PNG24、JPEG、WEBP,根据图片格式的特性和场景需要选取适合的图片格式。

  • CSS Sprites 使用
    减少请求数
    加速图片的显示
    维护更新成本大
    更多的内存消耗,特别是大体积或有过多空白的 Sprites 图
    图片渗漏,相邻的不需展示的图片有可能出现在展示元素中,特别是在高清设备移动设备上
  • css url引入
    减少请求数
    转换文件体积大,大约比原始的二进制大33%
    图片显示相对较慢,需要更多的CPU消耗

vue项目规范

单模块vue项目

VueProject
├── public ------------------ vue 入口文件夹
├    ├── static -------- 静态资源(图片、字体等大型静态文件)
├── dist ------------------ 打包文件(build之后)
├── node-modules ----------- 依赖包
├── src -------------------- 项目核心文件
├    ├── api -------- 请求
├    ├── assets ------------ 静态资源
├        ├── img ---------- 图片等其他资源
├    ├── config -------- 公共配置
├    ├── components -------- 公共组件
├    ├── router ------------ 路由
├    ├── views------------ 业务功能
├    ├── mixin/global------------ 其他公共
├    ├── style ------------ 样式
├    ├── utils ------------ 公共方法
├    ├── vuex ------------- 应用级数据(Vuex)
├    ├── App.vue ----------- 根组件
├    ├── main.js ----------- 入口文件
├── .gitignore ------------- git上传需要忽略的文件配置
├── .postessre.js ---------- 转换css的工具
├── package.json ----------- 项目基本信息
├── vue.config.js ----------- vue 打包配置文件
├── README.md -------------- 项目说明

多模块项目

多模块vue项目开发链接

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 我用Java代码一首 将它的美丽藏在心底 用程序裹挟着灵魂的声音 释放出藏身之处的情感用变量捕捉节奏的脉搏 使得每个字眼都如鸟啼 将思维中的梦境表达成文字 呈现出句的情趣用函数组织起每句话 让数字描绘出一幅画 将程序编的美妙曲线 把心智中的想法描绘出来 ### 回答2: 在茫茫代码的宇宙中, Java舞动着优雅的笔踪, 编织着琳琅的行, 在屏幕上绽放着智慧之花。 import java.util.Scanner; public class Poem { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入你美丽的名字:"); String name = scanner.nextLine(); System.out.println("请输入你的梦想:"); String dream = scanner.nextLine(); System.out.println("请输入你的爱好:"); String hobby = scanner.nextLine(); System.out.println("我的" + name + "啊,你的梦想是" + dream + "。"); System.out.println("在编程的世界里,你展现了卓越的才能,"); System.out.println("用Java代码创造了无尽的可能,"); System.out.println("让世界见证了你的光辉。"); System.out.println("你的" + hobby + "像代码一样美丽,"); System.out.println("绽放出无限的创意和快乐,"); System.out.println("让每一行代码都充满了情感。"); System.out.println("当我们敲击键盘的那一刻,"); System.out.println("世界停止了呼吸,你的行绽放了生机。"); } } 这是一首简单的用Java代码创作的歌。歌通过输入美丽的名字、梦想和爱好来生成个性化的句。这首歌向那些在编程世界中创造出美丽代码的人们致敬,表达了他们的才能和创造力。编程如同一样,充满了智慧和创意,每一行代码都像是歌中的句一样,充满了情感和生机。编程世界里,Java展现了优雅的舞姿,用它的代码之花绽放着智慧和创造力。 ### 回答3: 寒夜凝霜漫天飘,江畔篝火照人心。 枝头鸟儿纷纷鸣,寂寞闻香自作行。 花开花落映湖畔,阳光洒落照翠微。 清风徐来拂心弦,意悠然在眼前。 编码之舞舞出句,算法之海浪涌心湖。 类与方法交相辉映,变量常量点亮思路。 代码美得如同画卷,细腻典雅如文集。 百般辗转思路奇,编码之道已见迹。 递归循环间演绎,程序如歌奏雅曲。 数据结构谱乐章,设计模式融入句。 注释注入程序灵魂,调试排错如风流。 JAVA编程如艺术品,赋予世界无限妙。 程序世界如此广,涵盖天上地下间。 电脑智能彰显力量,JAVA语言翻开天。 从初始化到结束处,每一步骤都有痕。 代码思维成织血脉,开发纪元展新篇。 继承封装多态出神机,面向对象尽显威。 泛型接口集合间舞,异常处理在其中呈。 设计模式提供解决,高效优雅成常态。 JAVA编码如行云流水,意尽情展无忧。 作终结如此言,JAVA代码世界永远鲜。 优雅高效的奇迹,编程之路一直在前。 用代码篇挥洒,JAVA程序永不消散。 让我们相约动手创作,用JAVA编篇荡漾。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值