EDP项目结构规范心得
本文结合最近心得,希望对项目结构方面知识进行归纳,包括两部分
一、目录结构的说明
二、目录结构标准规范(以百度efe团队为例)
下面切入正题:
一、项目目录结构说明:


项目结构具体说明:
1.src目录:
src目录用于存放开发时源文件,发布时 必须(MUST) 被删除。包括字体font,js,less等。

2.public目录:
可以作为根目录,所谓根目录是指最上一级的目录,比如一个目录对应的是 www.example.com/,例如:本篇博客中,我们要以public目录为根目录;
在www.example.com/controller/action,项目中很多的静态资源在public下面,也就是:www.example.com/img/a.jpg(等同于在在项目的路径为:
public/img/a.jpg,那么自然:
根目录对等的本地项目路径为:www.example.com/=C:\users\个人信息\桌面\软件项目\Intellij\home\public
www.example.com/img/a.jpg=C:\users\个人信息\桌面\软件项目\Intellij\home\public\img\a.jpg
3.test目录
test目录用于存放测试用例以及开发阶段的模拟数据。该目录在发布时 必须(MUST) 被删除。

4.views目录:存放模板动态页面的URL规则 ,里面常常放置tpl文件。如图:

5.asset目录:用于存放用于线上访问的静态资源。

6.common目录为业务公共目录,用于存放业务项目的业务公共文件。
总结:develop和src用于开发,编译的时候会被替换成public,asset在你访问的时候,会改名为src。
二、项目结构标准规范
1.资源分类
分成两大类
源代码资源:指开发者编写的源代码,包括js、html、css、template等。
内容资源:指希望做为内容提供给访问者的资源,包括图片、字体、flash、pdf等。
2.目录命名原则
简洁。有习惯性缩写的单词 必须(MUST) 采用容易理解的缩写。如:源代码目录使用src,不使用source。下面是更多例子:
img: 图片。 不允许(MUST NOT) 使用image、images、imgs等。
js: javascript脚本。 不允许(MUST NOT) 使用script、scripts等。
css: 样式表。 不允许(MUST NOT) 使用style、styles等。
swf: flash。 不允许(MUST NOT) 使用flash等。
src: 源文件目录。 不允许(MUST NOT) 使用source等。
dep: 引入的第三方依赖包目录。 不允许(MUST NOT) 使用lib、library、dependency等。
不允许(MUST NOT) 使用复数形式。如:imgs、docs是不被允许的。
EDP项目结构规范心得的更多相关文章
- Java开发学习心得(三):项目结构
[TOC] 3 项目结构 经过前面一系列学习,差不多对Java的开发过程有了一定的了解,为了能保持一个良好的项目结构,考虑到接下来要进行开发,还需要学习一下Java的项目结构 下面以两个项目结构为参照 ...
- python基础-软件目录结构规范
一.定义目录结构目的 可读性高: 不熟悉这个项目的代码的人,一眼就能看懂目录结构,知道程序启动脚本是哪个,测试目录在哪儿,配置文件在哪儿等等.从而非常快速的了解这个项目. 可维护性高: 定义好组织规则 ...
- Java Web 项目目录规范
一.项目结构 这里和其他项目区别不大,我将模板抽离出来,更容易分析和理解: 解释一下:js主要包括extends(引入第三方的js).module(项目模块自己的js).lib(引用包,这里也可以继续 ...
- python基础之迭代器、装饰器、软件开发目录结构规范
生成器 通过列表生成式,我们可以直接创建一个列表.但是,受到内存限制,列表容量肯定是有限的.而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大 ...
- JavaWeb项目前端规范(采用命名空间使js深度解耦合)
没有规矩不成方圆,一个优秀的代码架构不仅易于开发和维护,而且是一门管理与执行的艺术. 这几年来经历了很多项目,对代码之间的强耦合及书写不规范,维护性差等问题深恶痛绝.在这里,通过仔细分析后,结合自己的 ...
- iOS新建项目文件管理规范
当我们进入到新的公司的第一天,看到以前老员工编写的代码,找个东西累死人咧,那个抓耳挠腮的啊,一般情况下都有想揍人的赶脚. 哈哈,不忙,先想一下自己的代码!想一下自己写的代码怎么才能新来的人一眼就能看懂 ...
- C#项目代码规范
C#项目代码规范 前言 小菜就是小菜,几个人搞出来的项目,让公司大牛稍微看了下,最后送出了惨不忍睹四个字.命名各种各样,五花八门,大写英文.小写英文.大写拼音.小写拼音.英文和拼音组合.字母和特殊 ...
- 开源项目live555学习心得
推荐:伊朗美女找丈夫比找工作难女人婚前一定要看清三件事 × 登录注册 疯狂少男-IT技术的博客 http://blog.sina.com.cn/crazyboyzhaolei [订阅][手机订 ...
- (三) Angular2项目框架搭建心得
前言: 在哪看到过angular程序员被React程序员鄙视,略显尴尬,确实Angular挺值得被调侃的,在1.*版本存在的几个性能问题,性能优化的"潜规则"贼多,以及从1.*到2 ...
随机推荐
- C#之WinForm界面分辨率问题
在做上一个C#小工具的时候,当时为了处理界面最大化,分辨率问题,只是简单的用各种···Panle控价简单随意的处理控件的大小位置,字体什么的就随缘了(貌似有点不负责任啊,嘿嘿~). 所以在开始第二个C ...
- C# GDI
绘制实心矩形 using (Graphics gp = Graphics.FromImage(bmBlank)) { //... ; Rectangle rec = , y, , );//画一个白块, ...
- Locust压力测试使用总结
https://blog.csdn.net/jojoy_tester/article/details/77926470 参考网址 上次做接口压力测试前一直研究使用jmeter,本以为可以拿来使用了, ...
- KMP算法不同写法之间区别
网上之所以有这么多版本的KMP算法,是因为有的人写的是最大长度串版本的,有的人写的是next数组版本的(具体区别看下面博文),有的人写的是next优化版的,有的人写的是未优化的,不同人写的循环方法不同 ...
- 洛谷 P3586 [POI2015]LOG
P3586 [POI2015]LOG 题目描述 维护一个长度为n的序列,一开始都是0,支持以下两种操作:1.U k a 将序列中第k个数修改为a.2.Z c s 在这个序列上,每次选出c个正数,并将它 ...
- 洛谷P4173 残缺的字符串(FFT)
传送门 话说为什么字符串会和卷积扯上关系呢……到底得脑洞大到什么程度才能想到这种东西啊……大佬太珂怕了…… 因为通配符的关系,自动机已经废了 那么换种方式考虑,如果两个字符串每一位对应的编码都相等,那 ...
- CLH同步队列
原文链接:https://blog.csdn.net/chenssy/article/details/60781148 AQS内部维护着一个FIFO队列,该队列就是CLH同步队列. CLH同步队列是一 ...
- 平衡树学习笔记(5)-------SBT
SBT 上一篇:平衡树学习笔记(4)-------替罪羊树 所谓SBT,就是Size Balanced Tree 它的速度很快,完全碾爆Treap,Splay等平衡树,而且代码简洁易懂 尤其是插入节点 ...
- zookeeper客户端使用第三方(Curator)封装的Api操作节点
1.为什么使用Curator? Curator本身是Netflix公司开源的zookeeper客户端: Curator 提供了各种应用场景的实现封装: curator-framework 提供了f ...
- java 反射 处理 空值
package org.zkdg.utils.spring.annotations.impl; import java.lang.annotation.Annotation; import java. ...