// good
part of '../../my_library.dart';
// bad
part of my_library;
예제 구조
my_package
└─ lib
└─ api.dart
test
└─ api_test.dart
// in api_test.dart
// bad
import '../lib/api.dart';
-> Dart에서는 위의 두가지 import가 전혀 관계없는 라이브러리에 대한 import로 간주함 따라서 아래와 같은 규칙을 지켜야한다
// in api_test.dart
// good
import 'package:my_package/api.dart';
예제 구조
my_package
└─ lib
├─ src
│ └─ stuff.dart
│ └─ utils.dart
└─ api.dart
test
│─ api_test.dart
└─ test_utils.dart
// lib/api.dart
import 'src/stuff.dart';
impott 'src/utils.dart';
// lib/src/utils.dart
import '../api.dart';
import 'stuff.dart';
// test/api_test.dart
import 'package:my_package/api.dart'; // 'lib'에 도달하지 못함.
import 'test_utils.dart'; // 'test'라는 같은 폴더에 존재.