AWS SDK와 AWS Amplify

갱밍·2023년 9월 19일

AWS SDK와 AWS Amplify 차이점 알아보기

🌈 오늘은 AWS SDK와 AWS Amplify에 대해 이야기해보려 합니다. 언뜻 보면 비슷해보이지만, 두 도구는 분명한 차이점이 있답니다ㅎㅎ

AWS SDK

AWS SDK는 Amazon Web Services의 서비스를 쉽게 이용할 수 있도록 도와주는 개발자 도구킷이에요. AWS SDK를 사용하면 프로그래밍 언어로 AWS 서비스에 직접 연결할 수 있어요. 이게 포인트입니다. SDK는 Amplify보다 좀 더 '직접적'인 친구입니다!! 저수준의 제어에 용이하죠.

예를 들어, JavaScript용 AWS SDK를 사용하여 S3 버킷에 객체를 업로드하는 코드는 다음과 같습니다:

const AWS = require('aws-sdk');

const s3 = new AWS.S3();

const params = {
  Bucket: 'my-bucket',
  Key: 'my-key',
  Body: 'Hello!'
};

s3.upload(params, function(err, data) {
  if (err) {
    console.error("Error", err);
  } else {
    console.log("Upload Success", data.Location);
  }
});

📌 자세한 내용은 AWS SDK 공식 문서를 참조하세요.

AWS Amplify

AWS Amplify는 AWS 서비스를 더 쉽고 편리하게 사용할 수 있게 하는 라이브러리이자, 프레임워크에요. 특히 웹 및 모바일 앱 개발을 쉽고 빠르게 하기 위해 만들어진 친구에요! AWS 서비스에 대한 이해가 없어도 사용할 수 있다는게 가장 큰 장점입니다.

AWS Amplify를 사용하여 JavaScript로 동일한 S3 업로드 작업을 수행하는 코드는 다음과 같이 작성할 수 있어요:

import { Storage } from 'aws-amplify';

async function uploadFile(file) {
  try {
    const result = await Storage.put('my-key', file);
    console.log('File uploaded successfully:', result);
  } catch (error) {
    console.error('Error uploading file:', error);
  }
}

훨씬 코드가 짧죠? SDK는 필요한 파라미터도 많았는데, amplify는 알아서 다 해준답니다~

📘 자세한 내용은 AWS Amplify 공식 문서를 참조하세요.

AWS SDK와 AWS Amplify의 차이

정리하자면 두 도구 모두 AWS 서비스와 연동하여 작업을 돕지만, AWS Amplify는 특히 프론트엔드 개발에 더 집중되어 있습니다. 반면 AWS SDK는 좀 더 저수준의 API 작업에 중점을 두고 있어요.

  • AWS SDK:
    저수준 API 접근 가능
    더 많은 커스터마이징 옵션 제공
    * 다양한 AWS 서비스와 직접적인 통합 가능

  • AWS Amplify:
    사용자 친화적이고 높은 수준의 API 제공
    빠른 프로토타이핑과 개발 가능
    * 모바일 및 프론트엔드 개발에 특화

결론

사실 커스텀이 필요한 기능이 아니라면 Amplify로도 충분할 것 같아요!
훨씬 더 간편하고, 오류도 적게 나더라고요.
프론트, 특히나 서버리스 환경에서 아주 강점을 보입니다.

하지만 기술 선택은 프로젝트의 요구 사항에 따라 달라지니, 각각을 비교해보고 본인의 프로젝트에 가장 적합한 도구를 선택해보세요!

다들 화이팅🍀

profile
공부 기록 중입니다

2개의 댓글

글 잘읽었습니다

1개의 답글