航空订单课程配套教材-全栈工程师的自我修养

航空订单课程配套教材-全栈工程师的自我修养

第一周:地基篇 —— 架构思维与数据灵魂 【本周目标】:不写一行垃圾代码,理解“状态机”与“ORM”的真正含义。1. 核心概念背诵(面试必考) MVC架构 (MVC Architecture): 我们不把所有代码写在一个文件里。 Model (实体层): 也就是 User, Order。它们是数据的载体,对应数据...

kkuo
Dec 13, 2025•10 min read

第一周:地基篇 —— 架构思维与数据灵魂

【本周目标】:不写一行垃圾代码,理解“状态机”与“ORM”的真正含义。

1. 核心概念背诵(面试必考)

  • MVC架构 (MVC Architecture):

    • 我们不把所有代码写在一个文件里。

    • Model (实体层): 也就是 User, Order。它们是数据的载体,对应数据库的表。

    • Repository (数据访问层): 负责跟数据库说话(CRUD)。我们用 JPA,是为了不写繁琐的 SQL。

    • Service (业务逻辑层): 这里是“大脑”。计算价格、判断能不能退票,都在这里。

    • Controller (接口层): 也就是“柜台”。负责接待前端的请求。

  • JPA与ORM (Object-Relational Mapping):

    • 解释: 数据库懂 SQL,Java 懂对象。ORM 就是翻译官,把 Java 的 Order 对象自动变成数据库里的 INSERT 语句。

  • 状态机 (State Machine):

    • 为什么不用 if-else? 订单状态流转是很复杂的(待支付 -> 已支付 -> 已出票 -> 已取消)。

    • 如果用 if,代码会变成面条。用状态机(或枚举控制),能确保“已取消”的订单绝对不能变成“已支付”。这叫“业务健壮性”。

2. 必须掌握的日语术语 (针对日企)

  • DB設計 (DB Sekkei): 数据库设计。

  • 主キー (Shu-ki) / 外部キー (Gaibu-ki): 主键 / 外键。

  • 排他制御 (Haita Seigyo): 这一点在订单系统极重要。虽然本周只讲基础,但要记住这个词,意思是防止两个人买同一张票。

3. 课后复盘自问

“我为什么要画 ER 图?直接写代码不行吗?”
答: ER 图是地基。如果表结构设计错了(比如用户和订单没有关联外键),后面的代码写得再好也是危楼。


第二周:规则篇 —— API 契约与守门人

【本周目标】:懂得如何设计“别人愿意用”的接口,并像保镖一样守护系统。

1. 核心概念背诵

  • RESTful API:

    • 不仅仅是 URL。它是一种风格。

    • GET 查,POST 增,PUT 改,DELETE 删。

    • 面试话术: “我的接口设计遵循 RESTful 规范,使用标准的 HTTP 状态码(200, 404, 500),保证前后端协作的效率。”

  • JWT (JSON Web Token):

    • 以前的做法: 服务器记在 Session 里(就像餐厅前台有个大本子记会员)。

    • 现在的做法 (JWT): 给用户发一张加密的“手环”。服务器不用查本子,只看手环是不是真的。

    • 好处: 无状态 (Stateless),这对服务器扩展非常重要(Docker 部署的前提)。

  • 依赖注入 (Dependency Injection / IoC):

    • Spring 的核心。不需要我 new OrderService(),Spring 容器会自动帮我把 Service 送到 Controller 里。

2. 必须掌握的日语术语

  • 認証 (Ninsho): 认证(你是谁?Login)。

  • 認可 (Ninka): 授权(你能干什么?Admin/User)。

  • トークン (Token): 令牌(这里指 JWT)。

  • 脆弱性 (Zeijakusei): 漏洞。我们用 Spring Security 就是为了防止脆弱性。

3. 课后复盘自问

“为什么 Swagger (OpenAPI) 这么重要?”
答: 在日本开发中,文档 (Document) 就是生命。Swagger 能够自动生成文档,减少了前后端扯皮的时间,这就是“工数削減 (Kosū Sakugen)”。


第三周:交互篇 —— 组件化与用户体验

【本周目标】:从“后台黑箱”走向“前台门面”,理解现代前端的思维方式。
(注:课程大纲中提及 Angular 语法,但此处以 React 为主进行通用描述,因为 React 市场更广,逻辑共通)

1. 核心概念背诵

  • 组件化 (Component-Based):

    • 不要把一个网页写成几千行的 HTML。

    • 把页面拆成:Header, Sidebar, OrderList, OrderItem。就像乐高积木一样拼装。

  • 单页应用 (SPA - Single Page Application):

    • 以前换页面要白屏刷新。现在 React/Angular 只是偷偷替换了 DOM 里的内容,体验像原生 App 一样丝滑。

  • 异步通信与 Promise:

    • 前端找后端要数据(Axios/Fetch)是异步的。

    • 必须背诵: 在数据回来之前,页面不能卡死,必须展示 Loading 动画。这是合格前端的基本素养。

  • 跨域 (CORS):

    • 前端在 localhost:3000,后端在 localhost:8080。浏览器处于安全考虑会拦截请求。我们需要在后端配置 Allowed Origins。

2. 必须掌握的日语术语

  • 画面遷移 (Gamen Sen-i): 页面跳转。

  • 非同期 (Hi-douki): 异步。

  • 連携 (Renkei): 联调/对接。比如“Front-Back Renkei”(前后端联调)。

3. 课后复盘自问

“什么是前后端分离?”
答: 前端只负责画图和拿数据,不处理业务逻辑;后端只负责处理逻辑和给数据,不负责画图。两者通过 JSON 格式的数据进行对话。


第四周:交付篇 —— 自动化与工程化

【本周目标】:摆脱“手工作坊”,进入“工业化生产”时代。这也是你区别于培训班学生的最大亮点。

1. 核心概念背诵

  • Docker (容器化):

    • 痛点: “在我电脑上能跑,在服务器上报错。”

    • 解决: Docker 把代码、JDK、Tomcat 全部打包成一个镜像 (Image)。只要有 Docker,哪里都能跑。

    • 面试金句: “我使用 Docker 实现了环境的一致性,消除了 'Works on my machine' 的问题。”

  • CI/CD (持续集成/持续部署):

    • CI: 每次 git push,GitHub Actions 自动帮我编译、跑测试。测试不过,不许合并。

    • CD: 代码合并后,自动部署到服务器。

    • 价值: 极大地提高了发布速度,降低了人工部署出错的概率。

  • YAML 配置:

    • 理解 .yml 文件的缩进格式。无论是 Docker Compose 还是 GitHub Actions,都靠它指挥。

2. 必须掌握的日语术语

  • 環境構築 (Kankyou Kouchiku): 环境搭建。

  • デプロイ (Deploy): 部署。

  • 自動化 (Jidouka): 自动化。日企非常喜欢这个词。

  • 本番環境 (Honban Kankyou): 生产环境/正式环境。

3. 课后复盘自问

“面试官问我:你的项目是怎么上线的?”
答(背诵): “我搭建了一套基于 GitHub Actions 的 CI/CD 流水线。当我推送代码时,流水线会自动构建 Docker 镜像并推送到 Docker Hub,然后通过 SSH 触发云服务器拉取最新镜像并重启容器。全过程无需人工干预。”


给学员的最终通关锦囊

  1. 关于报错:

    • 遇到 Bug,第一步看 Console (控制台)。

    • 第二步,复制报错信息(Caused by...),直接谷歌。

    • 切记: 不要在没有看报错信息的情况下直接问助教“为什么跑不起来”,这是职场大忌。

  2. 关于提交作业:

    • Git Commit Message 必须规范。

    • ❌ update

    • ✅ feat: 添加订单状态流转逻辑 或 fix: 修复JWT解析失败的bug

  3. 心态建设:

    • 这四周很难,你会掉头发。但只要你挺过去,独立做出了这个 CI/CD 自动化的航空系统,你就超过了 80% 只会写 CRUD 的应届生。

Comments (0)