自2009年注册第一个域名,2010年开通运营第一个网站始,至今已开发、运营网站近13年,期间,踩过不少坑、流过不少汗、熬过不少通宵,一路摸爬滚打下来,渐渐摸清了这条路,在此做一小结。

俗话说,“麻雀虽小,五脏俱全”,再小的网站,也必须具备一些基本的要素。

大的方面,包括以下几项:

  1. 页面、交互设计
  2. 前端开发
  3. 后端开发
  4. 网站运营知识
  5. 网站运维知识
  6. 其它琐碎的细节

具体而言:

  1. UI设计,即页面的直观印象;
  2. UI又涉及PS等的使用;
  3. UE设计,即用户的交互行为,涉及用户体验;
  4. 进一步,UE设计前涉及用户行为埋点、采集,用户心理分析,用户画像等等;
  5. 无论UI,还是UE,还需要关注技术的演进,通过新技术、新思想不断迭代、优化;
  6. 前端技术选型,及前端架构设计;
  7. 前端开发,包括:HTML、CSS、JavaScript/TypeScript;
  8. 富客户端(RIA)应用还涉及大量CSS、Canvas动画;
  9. 移动互联时代,还涉及移动端开发,包括响应式设计,各种三方库等;
  10. 服务端选型及架构,动态网站必需;
  11. 服务端开发,包括:Java、PHP、Node.js等;
  12. 无论前端,还是服务端,都涉及数据结构、算法、设计模式等计算机基础知识;
  13. 无论前端,还是服务端,还都涉及性能优化;
  14. 数据库,内容、用户注册、评论、点赞、收藏等等数据的存储,动态网站必需;
  15. 数据库又包括库表设计、查询语句优化等等;
  16. 还可能包括内容的全文搜索、相关内容推荐等;
  17. 缓存,提升网站响应速度,间接提升用户体验,涉及Redis、MemCache等;
  18. 日志,记录问题日志、访问日志、操作日志等,方便问题排查、追溯、回滚、取证等;
  19. (单机)集群、分布式网站,还需要考虑并发、负载均衡;
  20. CDN、边缘计算,提升内容加载速度,直接提升用户体验;
  21. Nginx、Apache、Tomcat等服务器的运维知识;
  22. Linux知识;
  23. SEO;
  24. SEO涉及各种工具的使用;
  25. 访问统计,搜索统计,用户数据分析;
  26. 用户留存、转化分析,及优化;
  27. 数据统计、数据大屏;
  28. 网站安全设计,包括CSRF、DDos、HTTPS、限流、验证码、机器人/爬虫、密码安全、用户隐私数据保护(脱敏等)、防重复提交等等;
  29. 第三方接口、服务,包括各种开放平台、应用等,如:微信、QQ、支付宝、新浪微博、GitHub、百度、Facebook、Twitter等;
  30. ……

若再细分,从实操的角度划分,则多达数百项,上述列表的每一项拆分出来,都是一门大学问。

可见,想要建设、运营好一个网站,也实非易事。实际上,目前网络上大部分的网站,无论企业的还是个人的,都极少满足上述所有条件,尤其在用户体验、安全设计方面,都是空白,即大众口中的“能用就好”。即便是大厂,在用户体验这块,也是一团浆糊,鲜少有做的好的。

因此,大部分想要建设网站的个人、公司往往都会选择已有的系统进行二次开发,甚至直接使用开源产品。但,即便强大如WordPress,也依然无法满足一些基本的要求,譬如:网站响应速度、用户体验、国内的本地化(功能、习惯)等等。更不用说那些以功能、营销为主的产品了,都是妥妥的一锤子买卖。

在网站可用性、易用性、安全性方面,国内的互联网还任重道远……