LibShare-typeOrmGenerator

  • 为什麽要写这篇呢?

    新任务开发总会遇到一些麻烦的前置动作(ex. 设计DB schema 、建立table 、准备ORM 使用的entity..),这些动作虽然繁琐,不过却要小心仔细,否则後续错误就会手牵手一个个跑出来,到时候反覆修改耗费时间与心力,更让人觉得阿杂,以前觉得有就好了拉~,现在开始注重精准这件事,这就是成长吗?XD

    今年要纪录的套件是 typeorm-model-generator ,是他让我可以不用在型别字里行间挣扎、是他让我获得开发中悠闲喝一杯咖啡的时间、说让我延缓老化都不为过,他的主要的功能是,直接帮你从 已经开好的DB 转成为 专案中使用的Entity,而且关联关系也帮你照顾到罗~

    ref: https://www.npmjs.com/package/typeorm-model-generator

  • 有什麽重点呢?

    • 什麽是ORM?

      ORM (Object-Relational Mapping),我的理解是 将资料库映射为物件,让开发者可以直接透过操作物件的方式,存取资料,且通常ORM都会支援大部分资料库操作(ex. mysql 、postgresql),这降低专案与资料库的耦合,不会因为更换资料库,而需要资料提取逻辑.

      如果没有使用ORM,那麽不仅要撰写 raw sql ,且在後续更换资料库时,需要花时间去调整对应心资料库的sql,但其实使用 ORM 相对的,你需要依赖ORM帮你转的sql语法,可能比较无法做效能的调整、复杂的sql,但大部分ORM 还是有提供让你直接下sql的选择的
      ref:
      ORM介绍及ORM优点、缺点 http://blog.twbryce.com/what-is-orm/

    • 简单说说这个套件吧

      现况这个套件状态为维护、但不开发新功能,每周下载量(5000~6000),根据作者说法是,目前typeOrm设计还是有些问题,导致资料缺失的情况,且重大issue似乎都没有处理,也迟迟等不到最新的更新,因此作者认为目前开发新功能已非他的最高优先.
      所以我会把这件事放心里、并注意是否有相关资料缺失的情况,但至少在现有的专案下,这依旧是一个好用的工具呢

  • 所以咧

    • 趁这这次机会了解了ORM观念,以前看不懂,这次在了解就大概知道在做啥了
    • 开发过程中,可以花一些时间找帮助开发的小工具(省时、省心力、提高正确性),让自己有愉快的开发生活
    • 使用套件前,可以先注意套件目前的年纪、短期更新频繁度、issue内容、下载数量等,帮助自己评估套件的支援性、稳定性等

<<:  CSS微动画 - 弹出来的选单 Part.1

>>:  第16天 - PHP 简易登入(3)_判断身分

Day 06 - 私有云VPC设置

今天我们来研究看看私有云VPC吧 VPC的价值: 懂得如何运用VPC,提供我们一套更好的安全机制,来...

Day14 - 动态 新增/删除 Collection 项目(二) - Html Helper

这篇调整的方向是 透过 Partial View 来 Render Collection 项目 透过...

Day22 Redis架构实战-高可用性使用Sentinel机制

Redis高可用性 # 高可用配置 ---> Redis (Replica) client -...

Day 29 : 撰写LineBot,利用短短三天认识自动化机器人(下)

今天来继续接着昨天的LineBot。我们昨天讲到,我们可以使用ngrok来让程序连上公开网路,也就是...

[DAY 01] 在台南想瘦是不可能的吧...那就一起胖吧=w=

这一次被公司派往盐水支援自动化专案 每天最期待的就是下班後要吃什麽 是要待在盐水吃意面 还是要去新营...