如何打造一个"逼格"的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 ...
随机推荐
- Yii2 的快速配置 api 服务 yii2-fast-api
yii2-fast-api yii2-fast-api是一个Yii2框架的扩展,用于配置完善Yii2,以实现api的快速开发. 此扩展默认的场景是APP的后端接口开发,因此偏向于实用主义,并未完全采用 ...
- 日常-acm-鸡兔同笼
已知鸡和兔总数量n,总腿数m.输入n和m,依次输出鸡的数量和兔的数量.如果无解,则输出No answer. 样例输入: 14 32 样例输出: 12 2 样例输入: 10 16 样例输出: No an ...
- Android(java)学习笔记121:BroadcastReceiver之 自定义广播
广播使用: 电台:对外发送信号.---------电台发送广播(可以自定义) 收音机:接收电台的信号.-----广播接收者 这里,我们就说明自定 ...
- Contour Features 边界特征
查找轮廓 findContours cv2.findContours(image, mode, method[, contours[, hierarchy[, offset]]]) → image ...
- tpcc-mysql运行结果解读
前言 首先我们需要知道tpcc-mysql是干什么的.TPC-C是专门针对联机交易处理系统(OLTP系统)的规范,一般情况下我们也把这类系统称为业务处理系统.tpcc-mysql是percona基于T ...
- hd - MFM/IDE 硬盘设备
描述 DESCRIPTION hd* 开头的设备是以裸模式(raw mode)访问MFM/IDE类型硬盘的块设备. 第一个IDE驱动控制器上的主盘(主设备号3)是 hda ;从盘是 hdb. 第二个I ...
- N17_判断树B是不是树A的子结构
题目描述 输入两棵二叉树A,B,判断B是不是A的子结构.(ps:我们约定空树不是任意一个树的子结构) package new_offer; /** * 输入两棵二叉树A,B,判断B是不是A的子结构.( ...
- python_88_xml模块
xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单例如创建xmltest.xml文件内容如上 注:/代表自结束符号 <?xml version=&quo ...
- bp神经网络原理
bp(back propagation)修改每层神经网络向下一层传播的权值,来减少输出层的实际值和理论值的误差 其实就是训练权值嘛 训练方法为梯度下降法 其实就是高等数学中的梯度,将所有的权值看成自变 ...
- composer安装laravel-u-editor及其使用
前言 使用的框架是laravel5.1,是composer搭建的,可以直接配置composer,如果不是composer搭建的larave,需要先安装composer,具体安装发放可以参考compo ...