

 AWS Cloud9 tidak lagi tersedia untuk pelanggan baru. Pelanggan yang sudah ada AWS Cloud9 dapat terus menggunakan layanan seperti biasa. [Pelajari selengkapnya](https://aws.amazon.com/blogs/devops/how-to-migrate-from-aws-cloud9-to-aws-ide-toolkits-or-aws-cloudshell/)

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# TypeScript tutorial untuk AWS Cloud9
<a name="sample-typescript"></a>

Tutorial ini menunjukkan cara bekerja dengan TypeScript dalam lingkungan AWS Cloud9 pengembangan.

Mengikuti tutorial ini dan membuat sampel ini dapat mengakibatkan biaya ke AWS akun Anda. Ini termasuk kemungkinan biaya untuk layanan seperti Amazon EC2 dan Amazon S3. Untuk informasi selengkapnya, lihat [Harga Amazon EC2](https://aws.amazon.com/ec2/pricing/) dan [Harga Amazon S3](https://aws.amazon.com/s3/pricing/).

**Topics**
+ [Prasyarat](#sample-typescript-prereqs)
+ [Langkah 1: Pasang alat yang diperlukan](#sample-typescript-install)
+ [Langkah 2: Menambahkan kode](#sample-typescript-code)
+ [Langkah 3: Jalankan kode](#sample-typescript-run)
+ [Langkah 4: Instal dan konfigurasikan AWS SDK untuk JavaScript di Node.js](#sample-typescript-sdk)
+ [Langkah 5: Tambahkan kode AWS SDK](#sample-typescript-sdk-code)
+ [Langkah 6: Jalankan kode AWS SDK](#sample-typescript-sdk-run)
+ [Langkah 7: Bersihkan](#sample-typescript-clean-up)

## Prasyarat
<a name="sample-typescript-prereqs"></a>

Sebelum Anda menggunakan sampel ini, pastikan pengaturan Anda memenuhi persyaratan berikut:
+ **Anda harus memiliki lingkungan pengembangan AWS Cloud9 EC2 yang ada.** Contoh ini mengasumsikan bahwa Anda sudah memiliki lingkungan EC2 yang terhubung ke instans Amazon EC2 yang menjalankan Amazon Linux atau Server. Ubuntu Jika Anda memiliki jenis lingkungan atau sistem operasi yang berbeda, Anda mungkin perlu menyesuaikan petunjuk sampel ini untuk menyiapkan alat terkait. Untuk informasi selengkapnya, lihat [Menciptakan lingkungan di AWS Cloud9](create-environment.md).
+ **Anda memiliki AWS Cloud9 IDE untuk lingkungan yang ada sudah terbuka.** Saat Anda membuka lingkungan, AWS Cloud9 buka IDE untuk lingkungan itu di browser web Anda. Untuk informasi selengkapnya, lihat [Membuka lingkungan di AWS Cloud9](open-environment.md).

## Langkah 1: Pasang alat yang diperlukan
<a name="sample-typescript-install"></a>

Pada langkah ini, Anda menginstal TypeScript dengan menggunakan Node Package Manager (**`npm`**). Untuk memasang ** `npm` **, Anda menggunakan Node Version Manager (** `nvm` **). Jika Anda tidak memiliki ** `nvm` **, Anda memasangnya pada langkah ini terlebih dulu.

1. Dalam sesi terminal di AWS Cloud9 IDE, konfirmasikan TypeScript apakah sudah diinstal dengan menjalankan TypeScript compiler baris perintah dengan **`--version`**opsi. (Untuk memulai sesi terminal baru, pada bilah menu, pilih **Jendela**, **Terminal Baru**.) Jika berhasil, output berisi nomor TypeScript versi. Jika TypeScript diinstal, lewati ke depan[Langkah 2: Menambahkan kode](#sample-typescript-code).

   ```
   tsc --version
   ```

1. Konfirmasi apakah ** `npm` ** sudah terpasang dengan menjalankan ** `npm` ** dengan opsi ** `--version` **. Jika berhasil, output berisi nomor versi ** `npm` **. Jika **`npm`**diinstal, lewati ke langkah 10 dalam prosedur ini untuk digunakan **`npm`**untuk menginstal TypeScript.

   ```
   npm --version
   ```

1. Jalankan perintah ** `yum update` ** untuk (Amazon Linux) atau ** `apt update` ** untuk (Ubuntu Server) untuk membantu memastikan pembaruan keamanan terbaru dan perbaikan bug terpasang.

   Untuk Amazon Linux:

   ```
   sudo yum -y update
   ```

   Untuk Ubuntu Server:

   ```
   sudo apt update
   ```

1. Untuk menginstal **`npm`**, mulailah dengan menjalankan perintah berikut untuk men-download Node Version Manager (**`nvm`**). (**`nvm`**adalah skrip shell Bash sederhana yang berguna untuk menginstal dan mengelola versi Node.js. Untuk informasi selengkapnya, lihat [Pengelola Versi Node](https://github.com/creationix/nvm/blob/master/README.md) di GitHub situs web.)

   ```
   curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
   ```

1. Untuk mulai menggunakan ** `nvm` ** , tutup sesi terminal dan mulai lagi, atau cari file `~/.bashrc` yang berisi perintah untuk memuat ** `nvm` **.

   ```
   . ~/.bashrc
   ```

1. Konfirmasi apakah ** `nvm` ** sudah terpasang dengan menjalankan ** `nvm` ** dengan opsi ** `--version` **.

   ```
   nvm --version
   ```

1. Instal versi terbaru 16 dari Node.js dengan menjalankan **`nvm`**. (**`npm`**termasuk dalam Node.js.)

   ```
   nvm install v16
   ```

1. Konfirmasi bahwa Node.js terpasang dengan menjalankan versi baris perintah dari Node.js dengan opsi ** `--version` **.

   ```
   node --version
   ```

1. Konfirmasi apakah ** `npm` ** sudah terpasang dengan menjalankan ** `npm` ** dengan opsi ** `--version` **.

   ```
   npm --version
   ```

1. Instal TypeScript **`npm`**dengan menjalankan dengan **`-g`**opsi. Ini diinstal TypeScript sebagai paket global di lingkungan.

   ```
   npm install -g typescript
   ```

1. Konfirmasikan yang TypeScript diinstal dengan menjalankan TypeScript kompiler baris perintah dengan **`--version`**opsi.

   ```
   tsc --version
   ```

## Langkah 2: Menambahkan kode
<a name="sample-typescript-code"></a>

1. Di AWS Cloud9 IDE, buat file bernama`hello.ts`. (Untuk membuat file, pada bilah menu, pilih **File**, **File Baru**. Untuk menyimpan file, pilih **File**, **Simpan**.)

1. Di sebuah terminal di IDE, dari direktori yang sama seperti file `hello.ts`, jalankan ** `npm` ** untuk memasang pustaka `@types/node`.

   ```
   npm install @types/node
   ```

   Hal ini menambahkan folder `node_modules/@types/node` dalam direktori yang sama dengan file `hello.ts`. Folder baru ini berisi definisi tipe Node.js yang TypeScript perlu nanti dalam prosedur ini untuk `console.log` dan `process.argv` properti yang akan Anda tambahkan ke `hello.ts` file.

1. Tambahkan kode berikut ke file `hello.ts`:

   ```
   console.log('Hello, World!');
   
   console.log('The sum of 2 and 3 is 5.');
   
   const sum: number = parseInt(process.argv[2], 10) + parseInt(process.argv[3], 10);
   
   console.log('The sum of ' + process.argv[2] + ' and ' +
     process.argv[3] + ' is ' + sum + '.');
   ```

## Langkah 3: Jalankan kode
<a name="sample-typescript-run"></a>

1. Di terminal, dari direktori yang sama dengan `hello.ts` file, jalankan TypeScript kompiler. Menentukan file `hello.ts` dan pustaka tambahan untuk disertakan.

   ```
   tsc hello.ts --lib es6
   ```

   TypeScript menggunakan `hello.ts` file dan satu set file pustaka ECMAScript 6 (ES6) untuk mentranspile TypeScript kode dalam `hello.ts` file menjadi JavaScript kode yang setara dalam file bernama`hello.js`.

1. Di jendela **Lingkungan**, buka file `hello.js`.

1. Pada bilah menu, pilih **Jalankan**, **Jalankan Konfigurasi**, **Jalankan Konfigurasi Baru**.

1. Di tab **[Baru] - Diam**, pilih **Runner: Otomatis**, lalu pilih **Node.js**.

1. Untuk **Perintah**, ketik `hello.js 5 9`. Dalam kode, `5` mewakili `process.argv[2]`, dan `9` mewakili `process.argv[3]`. (`process.argv[0]`mewakili nama runtime (`node`), dan `process.argv[1]` mewakili nama file (`hello.js`).)

1. Pilih **Jalankan**, dan bandingkan output Anda. Setelah Anda selesai, pilih **Berhenti**.

   ```
   Hello, World!
   The sum of 2 and 3 is 5.
   The sum of 5 and 9 is 14.
   ```

![\[Output Node.js setelah menjalankan kode di AWS Cloud9 IDE\]](http://docs.aws.amazon.com/id_id/cloud9/latest/user-guide/images/ide-nodejs-simple.png)


**catatan**  
Alih-alih membuat konfigurasi run baru di IDE, Anda juga dapat menjalankan kode ini dengan menjalankan perintah ** `node hello.js 5 9` ** dari terminal.

## Langkah 4: Instal dan konfigurasikan AWS SDK untuk JavaScript di Node.js
<a name="sample-typescript-sdk"></a>

Anda dapat menyempurnakan sampel ini untuk menggunakan AWS SDK for JavaScript di Node.js untuk membuat bucket Amazon S3, mencantumkan bucket yang tersedia, lalu menghapus bucket yang baru saja dibuat.

Pada langkah ini, Anda menginstal dan mengkonfigurasi AWS SDK untuk JavaScript di Node.js. SDK menyediakan cara mudah untuk berinteraksi dengan AWS layanan seperti Amazon S3, dari JavaScript kode Anda. Setelah Anda menginstal AWS SDK untuk JavaScript di Node.js, Anda harus menyiapkan manajemen kredensional di lingkungan Anda. SDK membutuhkan kredensil ini untuk berinteraksi dengan layanan. AWS 

### Untuk menginstal AWS SDK untuk JavaScript di Node.js
<a name="sample-typescript-sdk-install-sdk"></a>

Dalam sesi terminal di AWS Cloud9 IDE, dari direktori yang sama dengan `hello.js` file dari[Langkah 3: Jalankan kode](#sample-typescript-run), jalankan **`npm`**untuk menginstal AWS SDK untuk JavaScript di Node.js.

```
npm install aws-sdk
```

Perintah ini menambahkan beberapa folder ke folder `node_modules` dari [Langkah 3: Jalankan kode](#sample-typescript-run). Folder ini berisi kode sumber dan dependensi untuk AWS SDK untuk JavaScript di Node.js. Untuk informasi selengkapnya, lihat [Menginstal SDK untuk JavaScript](https://docs.aws.amazon.com/sdk-for-javascript/latest/developer-guide/installing-jssdk.html) di *Panduan AWS SDK untuk JavaScript Pengembang*.

### Untuk mengatur pengelolaan kredensial di lingkungan Anda
<a name="sample-typescript-sdk-creds"></a>

Setiap kali Anda menggunakan AWS SDK for JavaScript di Node.js untuk memanggil AWS layanan, Anda harus menyediakan satu set kredensional dengan panggilan tersebut. Kredensi ini menentukan apakah AWS SDK untuk JavaScript di Node.js memiliki izin yang sesuai untuk melakukan panggilan tersebut. Jika kredensial tidak mencakup izin yang sesuai, panggilan akan gagal.

Pada langkah ini, Anda menyimpan kredensial Anda di dalam lingkungan. Untuk melakukannya, ikuti petunjuk di [Menelepon Layanan AWS dari lingkungan di AWS Cloud9](credentials.md), lalu kembali ke topik ini.

Untuk informasi tambahan, lihat [Mengatur Kredensial di Node.js](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/setting-credentials-node.html) di *Panduan Developer AWS SDK untuk JavaScript *.

## Langkah 5: Tambahkan kode AWS SDK
<a name="sample-typescript-sdk-code"></a>

Pada langkah ini, Anda menambahkan beberapa kode lagi, kali ini untuk berinteraksi dengan Amazon S3 untuk membuat bucket, daftarkan bucket Anda yang tersedia, lalu hapus bucket yang baru saja Anda buat. Anda akan menjalankan kode ini nanti.

1. Di AWS Cloud9 IDE, di direktori yang sama dengan `hello.js` file di langkah sebelumnya, buat file bernama`s3.ts`.

1. Dari terminal di AWS Cloud9 IDE, di direktori yang sama dengan `s3.ts` file, aktifkan kode untuk memanggil operasi Amazon S3 secara asinkron dengan menjalankan **`npm`**dua kali untuk menginstal pustaka asinkron untuk dan lagi untuk. TypeScript JavaScript

   ```
   npm install @types/async # For TypeScript.
   npm install async        # For JavaScript.
   ```

1. Tambahkan kode berikut ke file `s3.ts`:

   ```
   import * as async from 'async';
   import * as AWS from 'aws-sdk';
   
   if (process.argv.length < 4) {
     console.log('Usage: node s3.js <the bucket name> <the AWS Region to use>\n' +
       'Example: node s3.js my-test-bucket us-east-2');
     process.exit(1);
   }
   
   const AWS = require('aws-sdk'); // To set the AWS credentials and AWS Region.
   const async = require('async'); // To call AWS operations asynchronously.
   
   const s3: AWS.S3 = new AWS.S3({apiVersion: '2006-03-01'});
   const bucket_name: string = process.argv[2];
   const region: string = process.argv[3];
   
   AWS.config.update({
     region: region
   });
   
   const create_bucket_params: any = {
     Bucket: bucket_name,
     CreateBucketConfiguration: {
       LocationConstraint: region
     }
   };
   
   const delete_bucket_params: any = {
     Bucket: bucket_name
   };
   
   // List all of your available buckets in this AWS Region.
   function listMyBuckets(callback): void {
     s3.listBuckets(function(err, data) {
       if (err) {
   
       } else {
         console.log("My buckets now are:\n");
   
         for (let i: number = 0; i < data.Buckets.length; i++) {
           console.log(data.Buckets[i].Name);
         }
       }
   
       callback(err);
     });
   }
   
   // Create a bucket in this AWS Region.
   function createMyBucket(callback): void {
     console.log("\nCreating a bucket named '" + bucket_name + "'...\n");
   
     s3.createBucket(create_bucket_params, function(err, data) {
       if (err) {
         console.log(err.code + ": " + err.message);
       }
   
       callback(err);
     });
   }
   
   // Delete the bucket you just created.
   function deleteMyBucket(callback): void {
     console.log("\nDeleting the bucket named '" + bucket_name + "'...\n");
   
     s3.deleteBucket(delete_bucket_params, function(err, data) {
       if (err) {
         console.log(err.code + ": " + err.message);
       }
   
       callback(err);
     });
   }
   
   // Call the AWS operations in the following order.
   async.series([
     listMyBuckets,
     createMyBucket,
     listMyBuckets,
     deleteMyBucket,
     listMyBuckets
   ]);
   ```

## Langkah 6: Jalankan kode AWS SDK
<a name="sample-typescript-sdk-run"></a>

1. Di terminal, dari direktori yang sama dengan `s3.ts` file, jalankan TypeScript kompiler. Menentukan file `s3.ts` dan pustaka tambahan untuk disertakan.

   ```
   tsc s3.ts --lib es6
   ```

   TypeScript menggunakan `s3.ts` file, AWS SDK untuk JavaScript di Node.js, pustaka async, dan satu set file pustaka ECMAScript 6 (ES6) untuk mengubah kode dalam `s3.ts` file menjadi TypeScript kode yang setara dalam file JavaScript bernama. `s3.js`

1. Di jendela **Lingkungan**, buka file `s3.js`.

1. Pada bilah menu, pilih **Jalankan**, **Jalankan Konfigurasi**, **Jalankan Konfigurasi Baru**.

1. Di tab **[Baru] - Diam**, pilih **Runner: Otomatis**, lalu pilih **Node.js**.

1. Untuk **Command**`s3.js YOUR_BUCKET_NAME THE_AWS_REGION `, ketik, di mana ` YOUR_BUCKET_NAME ` nama bucket yang ingin Anda buat lalu hapus, dan ` THE_AWS_REGION ` merupakan ID AWS Region untuk membuat bucket. Sebagai contoh, untuk Wilayah US East (Ohio)., gunakan `us-east-2`. Untuk selengkapnya IDs, lihat [Amazon Simple Storage Service (Amazon S3) di](https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) halaman. *Referensi Umum Amazon Web Services*
**catatan**  
Nama bucket Amazon S3 harus unik di seluruh AWS—bukan hanya akun Anda. AWS 

1. Pilih **Jalankan**, dan bandingkan output Anda. Setelah Anda selesai, pilih **Berhenti**.

   ```
   My buckets now are:
   
   Creating a new bucket named 'my-test-bucket'...
   
   My buckets now are:
   
   my-test-bucket
   
   Deleting the bucket named 'my-test-bucket'...
   
   My buckets now are:
   ```

## Langkah 7: Bersihkan
<a name="sample-typescript-clean-up"></a>

Untuk mencegah tagihan yang sedang berlangsung ke AWS akun Anda setelah selesai menggunakan sampel ini, Anda harus menghapus lingkungan. Untuk petunjuk, lihat [Menghapus lingkungan di AWS Cloud9](delete-environment.md).