본문 바로가기
프로그래밍/Dart

[Dart] 11. Dart의 "웹 개발"

by iwbap 2024. 6. 19.
728x90

Dart 학습: 웹 개발

Dart는 강력한 언어로, 웹 애플리케이션 개발에서도 유용하게 사용할 수 있습니다. 이번 글에서는 Dart로 웹 프로젝트를 설정하고 기본 구조를 만드는 방법, HTML과 CSS 파일을 연동하는 방법, 그리고 HTTP 클라이언트를 사용하여 HTTP 요청을 처리하는 방법에 대해 알아보겠습니다.


1. Dart 웹 애플리케이션: 웹 프로젝트 설정 및 기본 구조

Dart로 웹 애플리케이션을 개발하기 위해서는 프로젝트를 설정하고 기본 구조를 구성해야 합니다. 이를 위해 stagehand라는 템플릿 도구를 사용할 수 있습니다.

 

웹 프로젝트 설정:

 

1. Dart SDK 설치 : 먼저 Dart SDK가 설치되어 있어야 합니다. Dart 공식 사이트에서 설치 방법을 확인하세요.

 

2. Stagehand 설치 : stagehand는 다양한 Dart 프로젝트 템플릿을 제공하는 도구입니다.

 

dart pub global activate stagehand

 

 

3. 새 프로젝트 생성 : 새로운 웹 프로젝트를 생성합니다.

 

mkdir my_dart_web_app
cd my_dart_web_app
stagehand web-simple

 

 

4. 패키지 설치 : 프로젝트의 의존성을 설치합니다.

 

dart pub get

 

 

5. 프로젝트 구조 : 기본 프로젝트 구조는 다음과 같습니다.

 

[css]

 

my_dart_web_app/
├── web/
│   ├── index.html
│   ├── main.dart
├── pubspec.yaml

 

기본 구조 설명:

  • web/index.html : 웹 애플리케이션의 HTML 파일입니다.
  • web/main.dart : Dart 코드가 작성될 파일입니다.
  • pubspec.yaml : 프로젝트의 설정 파일로, 의존성을 관리합니다.

2. HTML 및 CSS 연동: HTML과 CSS 파일과 연동

Dart 웹 애플리케이션에서 HTML과 CSS 파일을 연동하여 UI를 구성할 수 있습니다.

 

HTML 파일 연동:

 

1. index.html 수정 : web/index.html 파일을 열고, 다음과 같이 수정합니다.

 

[html]

 

<!DOCTYPE html>
<html>
<head>
  <title>My Dart Web App</title>
  <link rel="stylesheet" href="styles.css">
</head>
<body>
  <h1>Hello, Dart!</h1>
  <p id="output">Waiting for Dart...</p>
  <script defer src="main.dart.js"></script>
</body>
</html>

 

 

CSS 파일 추가:

 

1. styles.css 생성 : web 디렉터리에 styles.css 파일을 생성하고, 다음과 같이 작성합니다.

 

[css]

 

body {
  font-family: Arial, sans-serif;
  background-color: #f0f0f0;
  margin: 0;
  padding: 20px;
}

h1 {
  color: #333;
}

 

 

Dart 파일 수정:

 

1. main.dart 수정 : web/main.dart 파일을 열고, 다음과 같이 수정합니다.

 

[dart]

 

import 'dart:html';

void main() {
  querySelector('#output')?.text = 'Hello from Dart!';
}

 

 

애플리케이션 실행:

 

1. 웹 서버 실행 : Dart에서 제공하는 webdev 도구를 사용하여 웹 서버를 실행합니다.

 

dart pub global activate webdev
webdev serve

 

2. 브라우저에서 확인 : 브라우저에서 http://localhost:8080을 열어 애플리케이션을 확인합니다.


3. HTTP 요청: HTTP 클라이언트 사용법

Dart에서는 http 패키지를 사용하여 HTTP 요청을 쉽게 처리할 수 있습니다.

 

HTTP 패키지 설치:

 

1. pubspec.yaml 수정 : pubspec.yaml 파일에 http 패키지를 추가합니다.

 

[yaml]

 

dependencies:
  http: ^0.13.3

 

2. 패키지 설치: 패키지를 설치합니다.

 

dart pub get

 

 

HTTP 요청 처리:

 

1. main.dart 수정 : web/main.dart 파일을 열고, 다음과 같이 수정하여 HTTP GET 요청을 처리합니다.

 

[dart]

 

import 'dart:html';
import 'package:http/http.dart' as http;

void main() {
  querySelector('#output')?.text = 'Fetching data...';
  fetchData();
}

Future<void> fetchData() async {
  var url = Uri.parse('https://jsonplaceholder.typicode.com/posts/1');
  var response = await http.get(url);

  if (response.statusCode == 200) {
    var data = response.body;
    querySelector('#output')?.text = data;
  } else {
    querySelector('#output')?.text = 'Request failed with status: ${response.statusCode}';
  }
}

 

위의 예제에서 http 패키지를 사용하여 JSONPlaceholder API에서 데이터를 가져오고, 가져온 데이터를 HTML 요소에 표시합니다.

 

 

애플리케이션 실행:

1. 웹 서버 실행 : Dart에서 제공하는 webdev 도구를 사용하여 웹 서버를 실행합니다.

 

webdev serve

 

2. 브라우저에서 확인 : 브라우저에서 http://localhost:8080을 열어 애플리케이션을 확인합니다. JSONPlaceholder API에서 가져온 데이터가 페이지에 표시됩니다.


이 글에서는 Dart로 웹 애플리케이션을 개발하는 방법에 대해 알아보았습니다. 웹 프로젝트를 설정하고 기본 구조를 만드는 방법, HTML과 CSS 파일을 연동하는 방법, 그리고 HTTP 클라이언트를 사용하여 HTTP 요청을 처리하는 방법을 이해하고 활용하면 더 복잡한 웹 애플리케이션을 쉽게 개발할 수 있습니다. Happy Coding!

728x90