[idea]对于前端里面一些事情的看法
一些是自己的想法,另一些是看博客或者书籍里面得出的,随手记在这里。
基于页面的开发
最初的前端资源模式是基于页面的,像最开始接触web、开发web时候,一般是新建页面-引入jQuery-新建index.css\page-1.css\page-2.css等-新建index.js\page-1.js等,完全是基于页面的。
基于页面的静态资源管理是最开始“刀耕火种”的产物,倒是比再久之前写内联样式、script标签要好的多(实现了页面样式\脚本和页面骨架之间的分离,但是属于很粗浅的分离),但是这种模式在使用中就暴露了很多问题:
(1)资源重复:很多页面样式代码\js函数代码都是在不断重复;开发很多时候是CTRL+C\V,然后再改一个小参数而已;
(2)维护困难:如果需要修改某页面中的一个按钮,需要翻到对应的page-x.css,然后再手动修;如果别的页面也有相似按钮,就需要再找到另一个文件,完全是人工的浪费时间的修改维护;
(3)开发难度大:这种基于页面的随性方式给了开发者很多空间, 不必管XXX,做出来就行;但是如果从页面级别上升到业务级别,在整套的业务代码下的开发就变得蛋疼了;页面引入了十几个js文件,window.onload函数不知不觉被写了多遍或者造成了全局变量污染命名空间的事情;静态资源管理也出现了问题,一个页面引了十几个文件,如果需要调整,则手动到模板文件里修改;
页面越大、逻辑越复杂这种模式的弊端就越明显。
这种基于页面的开发让我想起了在面试时跟面试官说的一道问题,老大问我”你对模块化是怎么看的“,我当时举了个例子说”原来的这种写法和不用框架、不用模式写php一样,意大利面条似的开发,代码混成一片“。
所以这种模式面临的问题需要解决,解决方案也就是模块化和组件化。
[idea]对于前端里面一些事情的看法的更多相关文章
- 前端开发面试知识点大纲--摘自jackyWHJ
前端开发面试知识点大纲:HTML&CSS: 对Web标准的理解.浏览器内核差异.兼容性.hack.CSS基本功:布局.盒子模型.选择器优先级及使用.HTML5.CSS3.移动端适应 Ja ...
- 淘宝前端工程师:国内WEB前端开发十日谈
一直想写这篇"十日谈",聊聊我对Web前端开发的体会,顺便解答下周围不少人的困惑和迷惘.我不打算聊太多技术,我想,通过技术的历练,得到的反思应当更重要. 我一直认为自己是" ...
- Web前端开发十日谈
=========================================================================== 原文章: http://kb.cnblogs.c ...
- 【WEB前端经验之谈】没有速成,只有不断积累。
2013年8月25日,我人生中的第一份正式工作开始了,第一份工作做的是当时学习的asp.net,用的是C#语言. 到第一家公司上班是公司是做一个OA系统,不过我去的时候大部分都已经完成了,剩下的都是细 ...
- 【理论面试篇】收集整理来自网络上的一些常见的 经典前端、H5面试题 Web前端开发面试题
##2017.10.30收集 面试技巧 5.1 面试形式 1) 一般而言,小公司做笔试题:大公司面谈项目经验:做地图的一定考算法 2) 面试官喜欢什么样的人 ü 技术好. ...
- 绝对精品推荐做前端的看下:Web前端开发体会十日谈
20151208感悟: 前端人的角度来看的话,感觉像是阅读一个大牛前端的全部武功的一个秘籍说明,里面的思想高价值蛋白真是太多太多,推荐看. Web前端开发体会十日谈 一直想写这篇“十日谈”,聊聊我对W ...
- 前端架构师亲述:前端工程师成长之路的 N 问 及 回答
问题回答者:黄轶,目前就职于 Zoom 公司担任前端架构师,曾就职于滴滴和百度. 1. 前端开发 问题 大佬,能分享下学习路径么,感觉天天忙着开发业务,但是能力好像没有太大提升,不知道该怎么充实自己 ...
- 前端网老姚浅谈:怎么学JavaScript?
作者:小不了链接:https://zhuanlan.zhihu.com/p/23265155来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 鉴于时不时,有同学私信问我( ...
- 再谈 Go 语言在前端的应用前景
12 月 23 日,七牛云 CEO & ECUG 社区发起人许式伟先生在 ECUG Con 2018 现场为大家带来了主题为<再谈 Go 语言在前端的应用前景>的内容分享. 本文是 ...
随机推荐
- laravel上传文件到七牛云存储
背景 最近在用PHP和laravel框架做一个图片网站,需要将图片存贮到云端,搜索下了对比了下功能,发现七牛云存储不错(主要小流量免费),便选择使用七牛作为图片存储空间. 要实现的功能很简单,选择本地 ...
- 视频描述(Video Captioning)调研
Video Analysis 相关领域介绍之Video Captioning(视频to文字描述)http://blog.csdn.net/wzmsltw/article/details/7119238 ...
- uwsgi的使用
uwsgi是一个WEB服务器,只要用于python部分,类似于nginx ,apache 1 使用pip命令安装 pip install uwsgi 安装成功以后 可以做一个简单的测试 2 新建一个t ...
- mac使用备注
快捷键: 掌握好多手势和快捷键可以有效的提高工作效率,触控板和快捷键基本让你可以脱离鼠标. Command+Tab 任意情况下切换应用程序 - 向前循环 Shift ...
- 6 MySQL--表--完整性约束
参考:https://www.cnblogs.com/alice-bj/p/8824693.html 完整性约束: http://www.cnblogs.com/linhaifeng/articles ...
- Incorrect string value: '\xF0\x9F\x98\x84\xF0\x9F
问题描述:从新浪微博抓取消息保存到MySQL数据中,对应数据库字段为varchar,字符编码utf-8.部分插入成功,部分插入失败,报错如标题. 在网上查询,有人说是编码问题,建议修改编码格式,比如改 ...
- editplus 链接FTP失败,超时
最近在用editplus链接服务器是出现了超时连接不上的情况 检查后发现FTP配置没问题 后来打开高级设置后发现没有配置端口号 配置后登陆成功
- MyBatis 动态SQL注意事项
- 关于ErrorPage
JSP里创建一个网页test.jsp, 让这个网页上面出现一个错误, 再创建一个切换页面error.jsp, 使test.jsp如果出现错误就切换到error.jsp上, 但是怎么试都是出现一个网页上 ...
- final关键字的简单理解
final可以修饰类,方法,变量. 1.final修饰的类,不可以被继承. 2.final修饰方法,可以把方法锁定,以防任何继承类修改它的含义. 3.fianl修饰的变量,如果是基本数据类型的变量,则 ...