BurningTimesAi/코어코드/NerdNavis.Framework
깃 관리자 fb51e94d88 feat(core): Tier 1 잔여 3종 — Event · Container · Data (PD님 #36 즉시 수행 지시)
- Event: EventBus (타입 안전 정적 버스) + Raw.RawEventBus (문자열 키 특수 용도)
- Container: ObservableList / ObservableDictionary / ObservableQueue (UniList/UniEventList/UniObserverList 3종 통합 대체)
- Data: IDataRow / DataTable<TKey,TRow> / DataTableSO / DataTableLoader (CSV RFC 4180 최소 + JsonUtility) / DataTableLoadedEvent
- 단위 테스트 5종 신설 (EventBus · 3 Observable · DataTable)
- 설계 근거: 프로젝트/코어프레임워크/04_Tier1_3종_상호작용_설계_v1.md (P18)
- Tier 1 총 16/16종 완료. DAG: Data/Container → Event (순환 없음)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-17 20:31:14 +09:00
..
Documentation~ feat(core): NerdNavis.Framework 코어코드를 조직 레포에 통합 (PD님 직접 지시) 2026-04-16 16:44:27 +09:00
Editor feat(core): NerdNavis.Framework 코어코드를 조직 레포에 통합 (PD님 직접 지시) 2026-04-16 16:44:27 +09:00
Runtime feat(core): Tier 1 잔여 3종 — Event · Container · Data (PD님 #36 즉시 수행 지시) 2026-04-17 20:31:14 +09:00
Tests feat(core): Tier 1 잔여 3종 — Event · Container · Data (PD님 #36 즉시 수행 지시) 2026-04-17 20:31:14 +09:00
.gitattributes feat(core): NerdNavis.Framework 코어코드를 조직 레포에 통합 (PD님 직접 지시) 2026-04-16 16:44:27 +09:00
.gitignore feat(core): NerdNavis.Framework 코어코드를 조직 레포에 통합 (PD님 직접 지시) 2026-04-16 16:44:27 +09:00
CHANGELOG.md feat(core): Tier 1 잔여 3종 — Event · Container · Data (PD님 #36 즉시 수행 지시) 2026-04-17 20:31:14 +09:00
README.md feat(core): NerdNavis.Framework 코어코드를 조직 레포에 통합 (PD님 직접 지시) 2026-04-16 16:44:27 +09:00
package.json feat(core): NerdNavis.Framework 코어코드를 조직 레포에 통합 (PD님 직접 지시) 2026-04-16 16:44:27 +09:00

README.md

NerdNavis.Framework

너드나비스 자체 범용 Unity 프레임워크.

개요

기존 외부 의존 코어(NerdNavisCore)가 이전·퇴사로 사용 불가해짐에 따라, 너드나비스가 자체적으로 보유·유지하는 범용 코어를 새로 구축한다. 수상한 잡화점 등 사내 프로젝트에서 반복되는 패턴을 Tier 단위로 흡수하여 차기 프로젝트부터 바로 활용 가능한 형태로 제공한다.

설치 (Unity Package Manager)

https://burning.i234.me/NerdNavis/NerdNavis.Framework.git

Unity 에디터 → Package Manager → +Add package from git URL... → 위 URL 입력.

특정 버전 고정:

https://burning.i234.me/NerdNavis/NerdNavis.Framework.git#v0.1.0

폴더 구조

Runtime/
├── Core/
│   ├── Patterns/      # MonoSingleton 등
│   ├── Coroutine/     # CoroutineRunner
│   └── Util/          # ValidationEx, ObjectEx, FormatEx, EnumEx, EnumToInt, Log
├── UI/
│   ├── UGUI/          # InfiniteScrollView, SpriteAtlasRegistry, BackKeyHandler
│   └── Components/    # SafeAreaBorder
├── Addressable/       # AddressableHandle, AutoReleaseComponent (Tier 2)
└── Security/          # CryptoUtil, ICryptoProvider (Tier 3)

Editor/                # 에디터 전용 유틸
Tests/                 # Runtime/Editor 테스트
Documentation~/        # Unity 임포트 제외 (~ 접두)

개발 원칙

  • 네이밍: My*·u* 접두 금지, PascalCase 준수, FilGoodBanditsNerdNavis.*
  • 의존성 단절: 프로젝트 특수 enum/테이블 참조 제거
  • 제네릭 우선: 하드코딩 메서드는 제네릭 팩토리로 재설계
  • 싱글톤 최소화: 필요 최소 외 DI/이벤트 기반으로 전환

자세한 내용은 개발실/코어_설계/01_아키텍처_개요_v1.md, 02_수상한잡화점_추출대상_v1.md 참조.

라이선스

사내 사용. 외부 배포 금지.