如何打造一个"逼格"的web前端项目
最近利用空余的时间(坐公交车看教程视频),重新了解了前后端分离,前端工程化等概念学习,思考如何打造一个“逼格”的web前端项目。
前端准备篇
前端代码规范:制定前端开发代码规范文档。
PS:重中之中,为了下一步实现前端工程化。
编码风格有很多。团队代码规范一定要统一。便于维护web项目。
接口文档规范:制定RESTful架构接口规范文档。
PS:果断使用用apiDoc构建API文档。美观好看,易于维护。
还用Word或者Excel写文档,太low了。
前后端分离:简单理解为前端代码不影响后端代码,后端代码不影响前端代码。
PS:个人感觉就是有点像C/S架构,web前端 == apk || ipa 。
前端工程化(模块化):简单理解为前端代码不再零散,有组织,有规范的管理起来。
PS:个人感觉就是把后端mvc模式中v与c层都交了前端处理。
前端渐进式(PWA):依靠缓存,Web Workers等现代技术打造的渐进式web应用。
PS:有点像hybrid app,但无需原生代码,可离线,可推送web应用。
前端代码篇
html:当然采用最新的html5标签。
PS:值得一提的是,不要滥用html5的标签,比如section与div标签。
css:使用CSS Modules,让css局部模块化,保证css全局唯一性。
PS:建议配合webpack一起使用。
使用sass预处理,让css模块化,便于维护与管理css。
PS:我确实有点抵触css预处理,觉得没什么用,后来使用了css预处理自后,感觉真的很方便,
我选用sass是因为很多css框架都有集成sass,便于使用而已。
使用PostCSS后处理,让css标准化,写出高质量的css。
PS:后处理器基本是把sublime text里面的前端插件都搬过来了,完全实现前端自动化。
js:使用html5新api。
PS:html5 api更容易操作dom,实现一些新功能,比如拖拽。
使用ES6/ES7/ES8的语法。
PS:js终于变成真正的javascript了,语法与java相似度更高了。
使用jquery库。
PS: jquery永远不会过时,因为jquery有强大的插件。
使用js mvvm框架Angular.js或vue.js
PS:mvvm框架让web前端更易于提高web性能。当然啦,具体问题具体分析,慎用mvvm框架。
据个人感觉,vue.js比较适合移动端web项目,体积小,性能高。
Angular.js比较适合PC端大型项目,功能强大。
前端构建工具篇
nodejs:一个从Chrome浏览器提取出来的强大的js解析器(js运行环境)。
PS:与java的JRE类似,一个高性能的运行环境。
webpack:一个出色的前端打包构建工具。
PS:webpack真的是个神奇的打包工具,实现前端模块化的神器。
补充:现在一个前端的开发主流工具就使用脚手架(命令行工具),比如:vue的vue-cli。能迅速构架web应用项目,搭建开发环境与发布项目。
如何打造一个"逼格"的web前端项目的更多相关文章
- 论如何在服务器上部署一个自己的web前端项目
就在前两天,有新人通过邮箱问到笔者,如何部署自己的web前端项目?笔者在此详细介绍. 一.购买云服务器 配置用户名密码.安全组 二.下载Xshell于Xftp工具 用于登录服务器和文件上传 三.在li ...
- Angular02 通过angular-cli来搭建web前端项目
利用angular-cli的常见命令: npm i --save 包名 -> 软件依赖 npm i --save-dev 包名 -> 开发依赖 ng new 项 ...
- HBuilder:一个不错的web前端IDE(代码编辑器)
Web前端开发,2000之后基本就是三剑客的天下.到现在DW也是不错的HTMLcoder,如今的前端开发早已是JS的天下.但是DW对于JS方面就弱爆了.DW虽然支持JS语法高亮也支持JQuery Jq ...
- 如何使用 vue-cli 3 的 preset 打造基于 git repo 的前端项目模板
vue-cli 之 Preset vue-cli 插件开发指南 TLDR 背景介绍 vue-cli 3 完全推翻了 vue-cli 2 的整体架构设计,所以当你需要给组里定制一份基于 vue-cli ...
- 如何创建一个Asp .Net Web Api项目
1.点击文件=>新建=>项目 2.创建一个Asp .NET Web项目 3.选择Empty,然后选中下面的MVC和Web Api,也可以直接选择Web Api选项,注意将身份验证设置为无身 ...
- Flutter随笔(二)——使用Flutter Web + Docker + Nginx打造一个简单的Web项目
前言 Flutter作为一个跨平台UI框架,功能十分强大,仅用一套代码便能编译出Android.iOS.Web.windows.macOS.Windows.Linux等平台上的应用,各平台应用体验高度 ...
- 如何才能成为一个合格的web前端工程师
转载原文地址:https://juejin.im/post/5cc1da82f265da036023b628 开篇前端开发是一个非常特殊的行业,它的历史实际上不是很长,但是知识之繁杂,技术迭代速度之快 ...
- web前端项目中遇到的一些问题总结(08.23更新)
个人网站 https://iiter.cn 程序员导航站 开业啦,欢迎各位观众姥爷赏脸参观,如有意见或建议希望能够不吝赐教! 写一些最近工作中Vue项目中遇到的问题. 巴啦啦小魔仙,污卡拉,全身变,小 ...
- Angular01 利用grunt搭建自动web前端开发环境、利用angular-cli搭建web前端项目
搭建angular开发环境 一.下载并安装node 官网地址:点击前往 二.利用npm安装cnpm 安装好node后就可以使用npm命令啦 查看版本:npm -v 安装cnpm:npm install ...
随机推荐
- asp.net mvc整合Nhibernate的配置方法
http://blog.csdn.net/xz2001/article/details/8452794 http://www.cnblogs.com/GoodHelper/archive/2011/0 ...
- Effective C++ 重要条款
学习c++的童鞋们,这本书不能错过,最近在学校图书馆借来这本书,准备好好啃啃它了,先把它的基本内容过一遍吧. 改变旧有的的C习惯 条款1:尽量以const和inline取代#define. 条款2:尽 ...
- Web端 页面跳转 页面传值
要把 Default.aspx 页面 TextBox1中的值 传值到 Default.aspx Label上去 C#服务端跳转页面 Response 响应请求对象 Redi ...
- 通用的MIME类型:application/octet-stream
按照内容类型排列的 Mime 类型列表 类型/子类型 扩展名 application/envoy evy application/fractals fif application/futurespla ...
- CodeForces 52C Circular RMQ (线段树)
线段树区间更新维护最小值...记得下放标记... 如果线段树上的一个完整区间被修改,那么最小值和最大值增加相应的值后不变, 会改变是因为一部分改变而另外一部分没有改变所以维护一下就好. 询问的时候也要 ...
- python_104_面向对象总结
参考(都要认真看看):http://www.cnblogs.com/alex3714/articles/5188179.html http://www.cnblogs.com/alex3714/art ...
- python 嵌套作用域 闭包函数
#闭包函数 def multiplier(factor): def multiplyByFactory(number): return number*factor return multiplyByF ...
- 学习JavaScript你必须掌握的8大知识点!
大知识点! 一.JavaScript思维导图之<变量>的学习 二. JavaScript思维导图之<函数基础> 三.JavaScript思维导图之<基本dom操作 ...
- ssh整合思想 Spring与Hibernate的整合 项目在服务器启动则自动创建数据库表
Spring整合Hibernate Spring的Web项目中,web.xml文件会自动加载,以出现欢迎首页.也可以在这个文件中对Spring的配置文件进行监听,自启动配置文件, 以及之前Struts ...
- c++作业:递归调用,例题4.5 求第五个人的年龄
递归调用,例题4.5 求第五个人的年龄 #include <iostream> using namespace std; int age(int num){ int a; ) a=; el ...