重新学习web后端开发-001-写在前面的话

384 阅读3分钟

"长风破浪会有时 直挂云帆济沧海" —— 李白

1. 为什么会写这个系列

随着互联网技术飞速的非常,web开发一直都是互联网技术的重要部分之一。在作者十余年的工作中,经历了从程序员到高级工程师,然后开始负责项目,慢慢的带团队,再到负责系统架构和整个技术团队管理,期间还参与产品设计、平台运营等方面工作。从技术人员角度来看,我见到有很多入行1-2年的程序员,往往在技术方向上比较迷茫,尽管有了一些项目的经验积累,但还存在很多技术上的不足和盲点。

在我看来,学习技术的过程就是一个从简单->复杂->简单的过程。前期从简单的项目入手,跟着前辈学习,进行模仿,逐渐的会发现需要考虑很多的细节,仅仅就是一个简单的"CRUD",就包含了很多之前没有想到的细节。有句话是这样说的:“魔鬼往往存在细节中”。如果你忽视了它,有可能会带来严重的后果。在这一阶段,技术开始变得复杂起来,因为你遇到的场景和需求越来越多,要考虑的问题也越来越多。

写这个系列的本意就是从头梳理下现代化web开发过程中需要掌握的知识(会适当的涉及到一些比较底层的知识),实际出现的问题以及解决问题的思路和方法。同时希望能够对有一定开发经验的人员提供一些帮助。

2. 面向的读者(who)

适合有一定经验的web后端开发人员阅读。

3. 系列主要内容 (what)

本系列名称为《重新学习web后端开发》,主要涉及到以下几个部分:

  • web开发的基础知识,比如:http协议基础知识。
  • web开发常见的技术问题如何解决?比如前端跨域问题,接口幂等问题,事物处理,并发处理,接口安全等
  • 接口设计和开发比较好的实践和踩过的坑。
  • 前后端分离开发模式下的主要问题以及解决方法。
  • 可能还有关于设计思想,微服务架构,效率工具等方面的内容。

其它:

  • 本系列代码使用Go语言。

没有使用作者更为熟悉的java,主要是因为Go语言简洁明了,可以更为基础的学习相关技术。

后续有可能会写一些关于spring boot、spring cloud方面的进行分享。

  • 系列所有代码托管在GitHub上。相关项目会有两个,一个是前端中后台管理,另一个是后端服务接口。

计划实现一个相对通用的用户管理模块。具体见github上的项目说明。

  • 项目地址:

    • [后端服务接口 uranus] https://github.com/netbsder/uranus
    • [前端中后台管理 uranus-web-manage] https://github.com/netbsder/uranus-web-manage

4. uranus项目说明

4.1 概述

uranus项目旨在为用户提供开箱即用的常见web系统的基本服务,帮助用户提高开发效率。它包括两个子项目,uranus-web-manage和uranus-service。

uranus项目

在本系列文章中,我们将通过该项目来阐述web后端开发的过程及细节。

4.1.1 uranus

通用web后端服务接口,包括统一用户管理服务(ucms),短信服务(sms),对象存储服务(oss)、邮件服务(ems)、微信接口服务(wechat)。uranus-service内的服务拆分成多个服务模块,并且所有服务模块是无状态的,一方面便于水平扩展,另一方面便于后续向微服务架构迁移。

4.1.2 uranus-web-manage

uranus中后台管理系统界面

...待完善

4.2 uranus简单部署

uranus简单部署