Slide 4
Slide 4 text
既存の構成 Bakground
サービス開始から 7 年以上 Update
● 2017 年 : JavaScript + Express
● 2020 年 : TypeScript + Express
○ ts-migrate を使って一括移行
● 2021 年 : TypeScript + Nest.js
ミツモアのリファクタリング系の記事
● 苦しくないTypeScriptのすゝめ - ミツモア Tech blog
● jscodeshift で Moment.js を Day.js に一括置換した話 -
ミツモア Tech blog
4
src
├── models
│ └── users.ts
├── routes
│ └── users.ts
└── server.ts
async function create(
req: express.Request,
res: express.Response
) {
const { email, lastName } = req.body
// some logic (ex. validation)
const user = await User.create({ email, lastName })
res.json(user)
}
import { users } from 'src/routes'
app.use(
'/api/users’,
express
.Router()
.get('/', authenticate, users.list)
.get('/:id', authenticate, users.show)
.post('/', authenticate, users.create)
...
)