[Day 30] 最後一天了,来复习看看我们学了些什麽

今天是铁人赛的最後一天了,我们花点时间来看看这三十天我们都介绍了些什麽。

首先,我们介绍了一下 Kotlin Exposed 是怎样的一个框架(Day 1

然後,我们建立了专案(Day 2),并安装好了框架(Day 3),准备後续的开发。

我们先利用 H2 资料库,和资料库进行了串接(Day 4)。然後介绍了第一种和资料库互动的方式:DSL(Domain Specific Language),并介绍了DSL 的使用方式(Day 5Day 6)。

接着,我们介绍了另一种和资料库互动的方式:DAO(Data Access Object),并介绍了透过 DAO 和资料库互动的方式(Day 7Day 8),并且介绍了怎麽利用 DAO 的关联功能,来建立资料和资料之间的关系(Day 9Day 10Day 11

为了要解决 DAO 容易发生的 N+1 问题,我们提到怎麽使用 eager loading(Day 12

为了提升效率,我们利用了 Kotlin 内建 coroutine 的特性,提到了suspendedTransactionAsyncDay 13

为了让连线从测试用的 H2 转到正式使用的 MySQL,我们提到了怎麽更换连线的资料库(Day 14

接着,为了让我们的专案能更加稳定,我们加上了自动测试(Day 15Day 16Day 17)。

并且,为了让测试更好看懂,我们以函数编程的概念来重构测试(Day 18Day 19Day 20)。

我们提到了单元测试和整合测试(Day 21),提到了测试用到的五种 test double(Day 22Day 23 ),提到了和时间相关的测试怎麽处理(Day 24),还有什麽是依赖反转(Day 25

我们提到了 DAO 和 DSL 在使用上的差异,以及什麽场景下适合使用什麽方式(Day 26

最後我们提到了几个和资料库相关的需求,虽然没有在 Exposed 框架里面实作,但是我们可以透过其他套件或框架来达成,比方说 connection pool(HikariCP),migration(Flyway),API Server( Ktor)。

希望这三十天的旅程让各位有所收获!我们明年见!


<<:  Day 20: 人工智慧在音乐领域的应用 (AI作曲-基因演算法三 突变)

>>:  19. 好的面试官不只要有能力,更要懂得同理

当TrustView(档案加密软件) 白老鼠的惨痛过程记录 ~

外部稽核要求文件需要有保护的机制 , 所以我们引进了 ~ 加密了哪些软件产生的文件 ? Micros...

day8 : logging集中(中)

昨天成功地取得了vector agent搜集的metric和logger,在使用上因为metric算...

[Day 14] 多棵决策树更厉害:随机森林 (Random forest)

随机森林 (Random forest) 今日学习目标 随机森林介绍 随机森林的树是如何生成?随机森...

创业经营(二)软件版本控管

软件版本周期:是电脑软件的发展及发行过程,从 Pre-alpha(准预览版本)发展到 Alpha(预...

Day17 Vue Component(元件)

元件(Component)是Vue里主要也是最强大的特性之一,它提供了THML DOM元素的扩充性,...