1
00:00:00,660 --> 00:00:07,800
In this video, we are going to learn what is a CDK cloud development kit.

2
00:00:08,850 --> 00:00:15,780
A CDK Cloud Tool Kit is an open source software development framework to define your cloud application

3
00:00:15,780 --> 00:00:19,140
resources using familiar programming language.

4
00:00:19,870 --> 00:00:26,290
So provisioning cloud applications can be a challenging process that requires you to perform manual

5
00:00:26,290 --> 00:00:31,960
actions, write custom scripts, maintain templates, or learn domain specific languages.

6
00:00:33,030 --> 00:00:40,110
A.W. CDK, using the familiarity and expressive power of programming language for modeling your application

7
00:00:40,110 --> 00:00:41,190
infrastructures.

8
00:00:42,920 --> 00:00:49,820
CDK provides high level components called constructs that preconfigured cloud resources with proven

9
00:00:49,820 --> 00:00:50,540
defaults.

10
00:00:50,540 --> 00:00:55,490
So you can read cloud application with easy using the Cdcc constructs.

11
00:00:56,120 --> 00:01:04,720
A Cdcc provides a library of constructs in many programming language to easily automate aid infrastructures.

12
00:01:05,120 --> 00:01:12,830
In addition, these constructs can be customised and can be used to provision your application infrastructures,

13
00:01:14,120 --> 00:01:20,960
aid, cdcc provisions, your resources in a safe, repeatable manner through a cloud formation.

14
00:01:20,960 --> 00:01:29,990
So that means cdcc using cloud formation on behind of the chicken and edible Cdcc provide the writing

15
00:01:29,990 --> 00:01:33,740
infrastructure with familiar language object oriented programming language.

16
00:01:33,860 --> 00:01:40,370
It is also allows you to compose and share your own custom constructs, incorporating your organisation

17
00:01:40,370 --> 00:01:44,150
requirement and helping you to expedite new projects.

18
00:01:45,790 --> 00:01:52,510
So a fabulous cloth development kit is an open source software development framework to define cloud

19
00:01:52,510 --> 00:01:57,160
infrastructure, encode and provision it through a cloud formation.

20
00:01:57,190 --> 00:02:04,360
It offers a high level, object oriented abstraction to define a resources imperatively using the power

21
00:02:04,360 --> 00:02:06,040
of modern programming languages.

22
00:02:06,070 --> 00:02:07,510
It is so important.

23
00:02:07,510 --> 00:02:14,980
So using the CBC's library of infrastructure constructs, you can easily encapsulate the best practices

24
00:02:14,980 --> 00:02:20,320
in your infrastructure definition, and also you can share it without worrying about the boilerplate

25
00:02:20,320 --> 00:02:20,920
logic.

26
00:02:21,280 --> 00:02:27,870
By this way, you can also create serverless patterns and implement these patterns as a infrastructure

27
00:02:27,880 --> 00:02:30,070
level using the CDK libraries.

28
00:02:30,670 --> 00:02:37,000
The ADA SDK has first class support for TypeScript, JavaScript, Python, Java and C sharp.

29
00:02:38,860 --> 00:02:45,250
So basically we can also infrastructure is code with a cloud formation.

30
00:02:45,250 --> 00:02:50,460
So even CDK uses the cloud formation at the beginning of the scan.

31
00:02:50,470 --> 00:02:57,490
So while we are using data with CDK, if we have cloud formation, why you why we need to use a CDK.

32
00:02:58,240 --> 00:03:04,090
A CDK converts the code written into supporting programming language to go that formation secret before

33
00:03:04,090 --> 00:03:04,750
the execution.

34
00:03:05,590 --> 00:03:13,660
So that means cloud formation required to scripts, template scripts, but CDK converts to the code

35
00:03:13,660 --> 00:03:17,830
which we are writing the programming language, object oriented language.

36
00:03:17,860 --> 00:03:24,130
And by this way, we can use more powerful and we can develop more powerful infrastructure using the

37
00:03:24,130 --> 00:03:26,320
object oriented programming, language, power.

38
00:03:26,620 --> 00:03:31,660
And of course, only behind all of this you can see the K using the converting these codes to the cloud

39
00:03:31,660 --> 00:03:32,860
formation templates.

40
00:03:33,880 --> 00:03:39,700
So what are the benefits using the CDK instead of rho cloud formation templates?

41
00:03:39,700 --> 00:03:41,830
So let me explain the benefits.

42
00:03:41,890 --> 00:03:48,580
The first benefit is, as we explained before, choosing a programming language of our choice.

43
00:03:49,420 --> 00:03:53,920
We all have a preferred programming language that we are comfortable with.

44
00:03:53,950 --> 00:04:00,010
So ideally, CDK currently supports JavaScript, TypeScript, Python, Java, C, sharp and go programming

45
00:04:00,010 --> 00:04:03,280
language that you can write and develop your infrastructures.

46
00:04:04,750 --> 00:04:10,150
You can pick your preferred programming language and start provisioning your application first sector

47
00:04:10,150 --> 00:04:11,320
with minimum code.

48
00:04:11,380 --> 00:04:18,180
So ADA SDK enables you to model application infrastructure using TypeScript, Python, Java and dot

49
00:04:18,190 --> 00:04:18,700
net.

50
00:04:19,000 --> 00:04:26,500
With CDK developers, you can use existing IDE or testing tools and workflow patterns.

51
00:04:26,500 --> 00:04:30,400
It's like a development application, traditional application development.

52
00:04:30,400 --> 00:04:32,860
You can develop your infrastructure very easily.

53
00:04:33,490 --> 00:04:37,810
The second benefit is it is powered by a cloud formation.

54
00:04:38,230 --> 00:04:44,770
So a double SDK enables you to define your infrastructure with code and provision it through using the

55
00:04:45,250 --> 00:04:46,210
cloud formation.

56
00:04:47,500 --> 00:04:53,560
You can get all the benefits of cloud formation, including the repeatable deployments, easy rollbacks

57
00:04:53,560 --> 00:04:55,180
and drift detection.

58
00:04:55,940 --> 00:05:01,940
One of the main advantages of using the programming language over the JSON or HTML template file is

59
00:05:01,940 --> 00:05:06,710
that we can use programming constructs when we link infrastructure.

60
00:05:07,040 --> 00:05:13,280
For example, you can use if then as logic to select the provisioning infrastructure based on the different

61
00:05:13,280 --> 00:05:14,120
criterias.

62
00:05:14,630 --> 00:05:20,870
You can also use loops to execute a sequence of instructions until a certain condition is met.

63
00:05:20,900 --> 00:05:27,710
These are the really great features when you are using the SDK, developing your infrastructure.

64
00:05:28,850 --> 00:05:35,990
The third benefit is we can say that using autocomplete and inline documentation, another perk of using

65
00:05:35,990 --> 00:05:41,570
programming language is that you get autocomplete and inline documentation while coding the infrastructure.

66
00:05:41,750 --> 00:05:46,640
This saves a lot of time as you don't have to refer to documentation often.

67
00:05:47,120 --> 00:05:53,080
So we will also see the autocomplete and inline documentation when developing our infrastructure with

68
00:05:53,090 --> 00:05:54,670
using a cbdc.

69
00:05:54,770 --> 00:05:58,420
I will show you how we can read documentation and user documentation.

70
00:05:58,430 --> 00:06:00,110
It is very useful.

71
00:06:01,330 --> 00:06:06,050
Another benefit is deploy infrastructure and runtime code together.

72
00:06:06,650 --> 00:06:12,860
A double SDK enables you to reference your runtime code assets in the same project with the same programming

73
00:06:12,860 --> 00:06:13,520
language.

74
00:06:13,550 --> 00:06:20,390
For example, you can include your A Lambda runtime code or Docker container image in your CDK project.

75
00:06:20,690 --> 00:06:27,890
And when you deploy your application, the CDK framework automatically uploads and configures the services

76
00:06:27,890 --> 00:06:29,390
with your runtime assets.

77
00:06:29,780 --> 00:06:36,050
When the CDK deployment is complete, you will have a fully functional application so you don't have

78
00:06:36,050 --> 00:06:39,920
to separate your input sector automation code from your application code.

79
00:06:40,010 --> 00:06:43,520
We already see this when we learn to monitor repo.

80
00:06:43,640 --> 00:06:50,360
We will also follow this principle or CDK infrastructure automation code and our application code will

81
00:06:50,360 --> 00:06:51,470
be the same repository.

82
00:06:51,950 --> 00:06:55,280
CDK links both of these types of code together.

83
00:06:55,370 --> 00:07:02,150
For example, you can provision an S3 bucket with static web hosting enabled and associate the HTML

84
00:07:02,150 --> 00:07:06,890
JavaScript CSS single page of application code in the CDK code itself.

85
00:07:09,240 --> 00:07:12,880
Another benefit is developer friendly command line interface.

86
00:07:13,480 --> 00:07:22,090
So the ADA SDK has CLI and CLI enables you to interact with your CDK applications and enables functionalities

87
00:07:22,090 --> 00:07:28,990
such as synthesizing a C C cloud formation template, showing the difference between the running stack

88
00:07:28,990 --> 00:07:35,680
and proposed change, confirming security related chains prior to deployment and deploying multiple

89
00:07:35,680 --> 00:07:42,700
stacks across multiple environments that are first class, first class command line interface support

90
00:07:42,700 --> 00:07:43,750
in the Cdcc.

91
00:07:43,810 --> 00:07:50,410
We will also see in the upcoming videos we can run Cdcc synthesised CDCC diff for different cdcc deploy.

92
00:07:50,440 --> 00:07:52,480
This kind of commands are very useful.
