自2009年注册第一个域名,2010年开通运营第一个网站始,至今已开发、运营网站近13年,期间,踩过不少坑、流过不少汗、熬过不少通宵,一路摸爬滚打下来,渐渐摸清了这条路,在此做一小结。
俗话说,“麻雀虽小,五脏俱全”,再小的网站,也必须具备一些基本的要素。
大的方面,包括以下几项:
- 页面、交互设计
- 前端开发
- 后端开发
- 网站运营知识
- 网站运维知识
- 其它琐碎的细节
具体而言:
- UI设计,即页面的直观印象;
- UI又涉及PS等的使用;
- UE设计,即用户的交互行为,涉及用户体验;
- 进一步,UE设计前涉及用户行为埋点、采集,用户心理分析,用户画像等等;
- 无论UI,还是UE,还需要关注技术的演进,通过新技术、新思想不断迭代、优化;
- 前端技术选型,及前端架构设计;
- 前端开发,包括:HTML、CSS、JavaScript/TypeScript;
- 富客户端(RIA)应用还涉及大量CSS、Canvas动画;
- 移动互联时代,还涉及移动端开发,包括响应式设计,各种三方库等;
- 服务端选型及架构,动态网站必需;
- 服务端开发,包括:Java、PHP、Node.js等;
- 无论前端,还是服务端,都涉及数据结构、算法、设计模式等计算机基础知识;
- 无论前端,还是服务端,还都涉及性能优化;
- 数据库,内容、用户注册、评论、点赞、收藏等等数据的存储,动态网站必需;
- 数据库又包括库表设计、查询语句优化等等;
- 还可能包括内容的全文搜索、相关内容推荐等;
- 缓存,提升网站响应速度,间接提升用户体验,涉及Redis、MemCache等;
- 日志,记录问题日志、访问日志、操作日志等,方便问题排查、追溯、回滚、取证等;
- (单机)集群、分布式网站,还需要考虑并发、负载均衡;
- CDN、边缘计算,提升内容加载速度,直接提升用户体验;
- Nginx、Apache、Tomcat等服务器的运维知识;
- Linux知识;
- SEO;
- SEO涉及各种工具的使用;
- 访问统计,搜索统计,用户数据分析;
- 用户留存、转化分析,及优化;
- 数据统计、数据大屏;
- 网站安全设计,包括CSRF、DDos、HTTPS、限流、验证码、机器人/爬虫、密码安全、用户隐私数据保护(脱敏等)、防重复提交等等;
- 第三方接口、服务,包括各种开放平台、应用等,如:微信、QQ、支付宝、新浪微博、GitHub、百度、Facebook、Twitter等;
- ……
若再细分,从实操的角度划分,则多达数百项,上述列表的每一项拆分出来,都是一门大学问。
可见,想要建设、运营好一个网站,也实非易事。实际上,目前网络上大部分的网站,无论企业的还是个人的,都极少满足上述所有条件,尤其在用户体验、安全设计方面,都是空白,即大众口中的“能用就好”。即便是大厂,在用户体验这块,也是一团浆糊,鲜少有做的好的。
因此,大部分想要建设网站的个人、公司往往都会选择已有的系统进行二次开发,甚至直接使用开源产品。但,即便强大如WordPress,也依然无法满足一些基本的要求,譬如:网站响应速度、用户体验、国内的本地化(功能、习惯)等等。更不用说那些以功能、营销为主的产品了,都是妥妥的一锤子买卖。
在网站可用性、易用性、安全性方面,国内的互联网还任重道远……