WEB软件开发的结构原则,包括目录结构、数据结构、代码结构、公用信息、文件和数据存放等。
WEB开发主要针对的是B/S结构的软件开发。
一个合格的Web开发人员都应该了解WEB软件开发的结构原则。
WEB软件开发结构十条原则
一、 目录结构清楚,不宜过深,复杂,路径最好用相对地址
二、 命名适当
三、 常变内容、界面使用模板较好
四、 公共信息统一存储
五、 Include文件不可嵌入较多
六、 目录下不可存储太多内容文件
七、 数据结构要设计合理
八、 数据校验应在服务器端
九、 连接数据库近晚,断开连接近早
十、 尽量少使用SESSION与COOKIE
WEB软件开发结构原则详细说明:
(一) 目录结构清楚,不宜过深,复杂,路径最好用相对地址
什么样的目录放什么样的内容,这样便于管理,使WEB程序的目录结构,清楚明了,一看便知道某个文件夹下存储了哪些功能模块与内容。若随便存放,时间一长久自己都将不从了解某目录是用来做什么的。如:经常要使用的可执行文件最要存放在(项目根目录)根目录,这样做主要是便于了解其作用,同时也为在程序中少输入些地址字符。程序所用到的图片统一存放在根目录下images目录中,若项目较大,分枝较多,可再在其目录下建立也分枝程序相关的目录名,存储相关的图片内容。程序的配置文件与常用共公函数类库存放在include目录中,存放在此目录下的函数类库文件扩展名得命名为:.php切不命名为.inc .ini之类为扩展名的文件,主要是防此此类文件可供用户下载,或查阅其源码内容,这样对其调用方便明确。模板文件应存储在根目录下templates目录中,扩展名为.html,如果项目较大,分类较多,模板文件可分类存放在下极目录中。临时文件存储在根目录tmp目录中,此目录通常设置为任何人都可读可写。使用相对地址主要是方便程序移植。
(二) 命名适当
命名最好是以程序用来作什么用来命名。若一个单词就要描述则用小写单词来命名,若要用多个单词方能代表,也以小写单词之间加下划线连接。要注意命名不可过长,这样就不方便了,虽然能表达的更明确,但打字难打啊。程序中函数命名也可与此相同。不好之上也有,那就是每次命名都得要花时间去想个较合适的名字,由其是对于是我们这种英文水评较差的人来说可不是一件容易的事啊。(惨啊,哈哈!)
(三) 常变内容、界面使用模板较好
常变内容、界面使用模板较好,这是因为当我某天感觉某不页面不美观时尚时,我想更换较新较好的界面,这时就用得上了。如果是按照传统的制作将HTML页面内容放在程序中处理输入时,较麻烦非得要更改程序不可,这可能会带来较大的不便万一更改出错,这就不太好了。(程序有很长一段时没有维护了,突然要改,一时之间是难免不发生改错的情况发生)。若是使用了模板则不用改程序,只要更改一下模板文件就行了。好了说了这么我模板的好处,好像传统的做法没有一点好处是的,好像分文不值是的,也不是,模板也有它不好的地方,现在我也来说说它是怎么个不好的。传统做法是把HTML代码嵌入在WEB程序中,这样做的好处是,执行速度要比使用模板的要快,这是因为它不用经过任何处理就能直接输出,而模板就不一样啦。模板先要打开读取模板文件到字符串变量可数组字符串变量中,这是要时间的吧?读处完了之后还得花时间用字符串操作函数替换模板中模板变量吧?替换完成了方能进入输出。传统做法与使用模板作法,您觉得哪个好呢?(我个人认为如果是开发访问量相当大的网站,选择传统的作法是一个不错的选择,我所说的是相对不是绝对,如果访问量再大那就不能用脚本语言去写了,那得用CGI + Socket + Demon了。不说了,说远了,哈哈)
(四) 公共信息统一存储
公共信息统一存储,这主要为了方便团队开发时都能进行调用用的最常的函数,不用每个开发人员都复制一份或自己写一份存储在程序文件中,这样做浪费空间同时效率效果也不好。
(五) Include文件不可嵌入较多
Include文件不可嵌入较多,这是因为每次程序include某个文件时,是要打开读取这个文件的,这是要时间的哦,再就是说处理路径时可能会遇到较难发现的BUG问题。
(六) 目录下不可存储太多内容文件
目录下不可存储太多内容文件,你有没有发现?每当你进入windows的system32文件夹时通常打开的时间要比打开其它文件夹时要长久点呢?这主要是因为system32这个文件夹中文件较多,当你打开系统得花时间查找文件并显示吧?如果文件较多较大时最好是分目录分盘符来处理。假若您的机器够好够强劲的话,就当我没说过,那就得另当别论了。
(七) 数据结构要设计合理
数据结构要设计合理,如果数据结构设计不合理的话,不管你的程序写的多精典,写得我容易,也不是不能发挥其最大作用与价值的。这就相当于一个女人的胸部最大最丰满,但人不够高,而且又黑,身体又不好,身架又残疾,你会说她美丽完美吗?程序也一样,有些代码沉长又不起作用,存在也没有什么用。数据结构要精简明了。
(八) 数据校验应在服务器端
数据校验应在服务器端,这是因为就算是他人不从我们的页面输入数据,自己做了个链接地址(GET)或自己做了个表单用POST方式传送数据,我们的程序也将进入核对查验。若是放在客户端,他人就能用以上方法逃过审核了。但这样做也有他不好之处,那就是当数据量大时,服务器会负载运行,审核数据完整性是可开销时间与系统资源的。在客户端就不会占用服务器太多的资源,因为他占用的是用户的资源。
(九) 连接数据库近晚,断开连接近早
连接数据库近晚,断开连接近早,这主要是因为连接数据是要时间的吧?连接上了不即时使用也要占用系统资源吧?连接数据库连接数量是有限制的吧?所以得尽晚连接,尽早断开连接,这个做能使占用系统资源最少,为下一次连接提供条件。
(十) 尽量少使用SESSION与COOKIE
尽量少使用SESSION与COOKIE,因为使用SESSION是要占用系统资源的,SESSION是存储在服务器端的,每次读取SESSION中的数据是要较大开销的。COOKIE虽然不占用服务器资源,但COOKIE不太安全。
NetFetch补充:
良好的结构是成功的开始。
1、不仅图片需要单独存放,Css文件,js文件,Flash文件等纯静态文件皆应单独存储在根目录下相对应的文件夹。
2、公共文件统一存储。如页头、页脚、导航等
3、公共变量统一定义。如站点名称、联系信息、版权信息等
4、Css、Js、程序代码均根据内容和结构保存文件。如Css定义,可依次分为基础元素定义、特殊元素定义;还可以分为首页专用Css,栏目Css等。程序代码主要根据功能和模块来划分结构。
- 大小: 52.6 KB
- 大小: 38.4 KB
分享到:
相关推荐
【标题】"精通Eclipse,Web 开发-Java体系结构工具,框架及整合应用光盘"揭示了本书或光盘内容的核心,主要聚焦于使用Eclipse进行Web开发,以及Java在构建体系结构、工具和框架方面的应用。这涉及到Java开发中的多个...
《Web开发敏捷之道-应用Rails进行敏捷Web开发-第三版》是针对现代Web开发的一本经典教程,专注于使用Ruby on Rails框架实现敏捷开发方法。这本书的中文版为中国的开发者提供了便利,使他们能够更好地理解和应用这个...
Web服务是一种基于互联网的软件应用程序接口(API),它允许不同系统之间进行通信和数据交换,以实现业务流程的集成。本资源包“Web服务的开发图片和文档”为初学者提供了一个全面的学习路径,帮助他们理解和掌握Web...
在“Web开发实例PPT”中,我们主要探讨的是如何运用Web技术来构建实际的业务系统,例如人事管理系统和购物广场商务系统。这些项目案例涵盖了Web开发的核心知识点,旨在帮助开发者提升技能,理解如何将理论知识应用于...
测试驱动开发(Test-Driven Development, TDD)是一种软件开发方法论,强调在编写任何功能代码之前先编写测试。这种方法的核心在于通过测试来指导开发过程,确保软件的质量和稳定性。本书通过Python语言及其流行框架...
课程内容包括软件体系结构概论、软件体系结构建模、软件体系结构风格、软件体系结构描述、动态软件体系结构、Web服务体系结构、基于体系结构的软件开发、软件体系结构的分析与测试、软件体系结构评估、软件产品线...
1. **框架与技术栈**:在现代Web开发中,常见的后台框架有Spring Boot、Django、Laravel等。考虑到标题中的"admin-web",这个项目很可能采用了Spring Boot,因为它在Java后端开发中广泛用于构建微服务和管理界面。...
本实训生培养方案旨在帮助学员掌握Java Web开发的核心技能,包括面向对象编程基础、数据结构、Java集合框架、设计模式、开发工具使用、数据库操作、前端技术、后端技术、高级Java特性以及软件工程等方面的知识。...
在Web前端开发中,命名规则是至关重要的,它关乎到代码的可读性、可维护性和团队协作效率。本文将详细解析Smart UI前台开发中的HTML命名规范和JavaScript命名规范。 一、HTML命名规范 HTML命名主要遵循以下原则: ...
书中会先介绍Python的基础语法,如变量、数据类型、控制结构(条件语句、循环)、函数、类与对象等,这些都是Web开发的基础。 2. **Web框架**:Python有许多优秀的Web框架,如Django、Flask、Tornado等。书中的项目...
- **软件工程定义**:软件工程是在软件开发、运行及维护过程中应用的一系列工程原则和方法的学科,目标在于提高软件的质量、生产力并降低开发成本。 - **软件工程的发展历史**: - **第一阶段(1950年代-1960年代)...
在软件开发领域,基础知识是构建高效、稳定和可维护应用的关键。"软件开发基础1-01"这一主题涵盖了入门级的编程概念和技术,旨在为初学者提供一个坚实的起点。以下是一些重要的知识点: 1. **编程语言基础**:软件...
本篇文章将从给定的文档片段出发,深入探讨敏捷软件开发的核心理念、原则以及设计模式,并结合其目录结构对各章节的关键知识点进行概述。 #### 敏捷软件开发的核心概念 - **不可预知性与不可沟通性**:在软件开发...
在开发技术领域,Web开发是构建互联网应用的核心技术之一,特别是在民族文化遗产保护的Web展示系统建设中,这一技术的应用显得尤为重要。Web展示系统是将丰富的文化遗产数据以数字化、互动化的方式呈现给公众的重要...
在Web应用软件开发实习中,实习生将深入学习和实践一系列关键技能,这些技能对于成为成功的Web开发者至关重要。Web应用软件开发涵盖了前端、后端以及两者之间的交互,涉及到的技术栈广泛,包括但不限于HTML、CSS、...