Coder Social home page Coder Social logo

ios-wanted-gyrodata's Introduction

πŸ“ˆ GyroData App

μ‚¬μš©μžμ˜ κΈ°κΈ°μ—μ„œ 가속도, 자이둜 값을 μΈ‘μ •ν•˜λŠ” μ• ν”Œλ¦¬μΌ€μ΄μ…˜μž…λ‹ˆλ‹€.

ν”„λ‘œμ νŠΈ κΈ°κ°„: 23.1.30 ~ 23.2.5 (7일) νŒ€μ›: 인호, μ• μ’…, ν•˜λͺ¨

πŸ“– λͺ©μ°¨

  1. νŒ€ μ†Œκ°œ
  2. κΈ°λŠ₯ μ†Œκ°œ
  3. 적용 기술
  4. 폴더 ꡬ쑰

πŸ§‘β€πŸ’» νŒ€ μ†Œκ°œ

인호 μ• μ’… ν•˜λͺ¨
CoreData, ListScene FileManager, MeasureScene, GraphView CoreMotion, DetailScene, GraphView

πŸ“± κΈ°λŠ₯ μ†Œκ°œ

1.메인 리슀트

νŽ˜μ΄μ§• μ‚­μ œ

2.가속도, 자이둜 μΈ‘μ •ν™”λ©΄

가속도 μΈ‘μ • 자이둜 μΈ‘μ •

3.μΈ‘μ •λ‚΄μš© View, Playν™”λ©΄

κ·Έλž˜ν”„ Play

βš™ 적용 기술

MVVM

  • ViewController의 μ½”λ“œκ°€ λ°©λŒ€ν•΄μ§€λŠ” 것을 λ°©μ§€ν•˜κ³ , 뷰에 λ³΄μ—¬μ§ˆ 데이터 및 λΉ„μ¦ˆλ‹ˆμŠ€ 둜직의 뢄리λ₯Ό λͺ…ν™•νžˆ ν•˜κΈ° μœ„ν•΄ MVVM을 μ μš©ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • 데이터 및 λΉ„μ¦ˆλ‹ˆμŠ€ λ‘œμ§μ€ ViewModel, 뷰의 μƒνƒœ κ΄€λ¦¬λŠ” ViewController, λ·°λ₯Ό μƒμ„±ν•˜λŠ” λ‘œμ§μ€ View둜 λΆ„λ¦¬ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

CoreData & FileManager

  • CoreDataμ—λŠ” λͺ¨λΈμ˜ 생성 일자, μΈ‘μ • κΈ°κ°„, μΈ‘μ • νƒ€μž…(Gyo, Acc), UUID값을 μ €μž₯ν•©λ‹ˆλ‹€.
  • FileManagerμ—λŠ” μΈ‘μ •ν•œ κ²°κ³Όκ°’ 배열을 μ €μž₯ν•˜κ³ , λͺ¨λΈμ˜ UUID값을 톡해 μ ‘κ·Όν•©λ‹ˆλ‹€.

CoreMotion

  • μ‚¬μš©μž 기기의 Gyro & Acc값을 μΈ‘μ •ν•©λ‹ˆλ‹€.
  • Gyro & Acc μΈ‘μ • κΈ°λŠ₯의 κ³΅ν†΅λ˜λŠ” 뢀뢄을 ν”„λ‘œν† μ½œμ— κ΅¬ν˜„ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

GraphView

  • UIBezierPathλ₯Ό μ΄μš©ν•˜μ—¬ κ·Έλž˜ν”„λ₯Ό κ·Έλ €μ€λ‹ˆλ‹€.
  • 뷰에 격자λ₯Ό λ³΄μ—¬μ£ΌλŠ” λΆ€λΆ„κ³Ό κ·Έλž˜ν”„λ₯Ό λ³΄μ—¬μ£ΌλŠ” 뢀뢄을 λΆ„λ¦¬ν•˜μ—¬ κ΅¬ν˜„ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

πŸ“‚ 폴더 ꡬ쑰

β”œβ”€β”€ Info.plist
β”œβ”€β”€ MotionDataModel.xcdatamodeld
β”‚Β Β  └── MotionDataModel.xcdatamodel
β”‚Β Β      └── contents
β”œβ”€β”€ Resource
β”‚Β Β  β”œβ”€β”€ Assets.xcassets
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AccentColor.colorset
β”‚Β Β  β”‚Β Β  β”‚Β Β  └── Contents.json
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AppIcon.appiconset
β”‚Β Β  β”‚Β Β  β”‚Β Β  └── Contents.json
β”‚Β Β  β”‚Β Β  └── Contents.json
β”‚Β Β  └── Base.lproj
β”‚Β Β      └── LaunchScreen.storyboard
└── Source
    β”œβ”€β”€ App
    β”‚Β Β  β”œβ”€β”€ AppDelegate.swift
    β”‚Β Β  └── SceneDelegate.swift
    β”œβ”€β”€ Error
    β”‚Β Β  β”œβ”€β”€ CoreDataError.swift
    β”‚Β Β  β”œβ”€β”€ FileManagingError.swift
    β”‚Β Β  └── MotionManagerError.swift
    β”œβ”€β”€ GraphView
    β”‚Β Β  β”œβ”€β”€ GraphBackgroundView.swift
    β”‚Β Β  β”œβ”€β”€ GraphView.swift
    β”‚Β Β  └── GraphViewModel.swift
    β”œβ”€β”€ Model
    β”‚Β Β  β”œβ”€β”€ MotionCoordinate.swift
    β”‚Β Β  β”œβ”€β”€ MotionData.swift
    β”‚Β Β  β”œβ”€β”€ MotionMeasures.swift
    β”‚Β Β  └── MotionType.swift
    β”œβ”€β”€ Protocol
    β”‚Β Β  β”œβ”€β”€ CoreDataManageable.swift
    β”‚Β Β  β”œβ”€β”€ FileManagerProtocol.swift
    β”‚Β Β  └── MotionManagerable.swift
    β”œβ”€β”€ Scene
    β”‚Β Β  β”œβ”€β”€ DetailScene
    β”‚Β Β  β”‚Β Β  β”œβ”€β”€ DetailView.swift
    β”‚Β Β  β”‚Β Β  β”œβ”€β”€ DetailViewController.swift
    β”‚Β Β  β”‚Β Β  └── DetailViewModel.swift
    β”‚Β Β  β”œβ”€β”€ ListScene
    β”‚Β Β  β”‚Β Β  β”œβ”€β”€ DateFormatter +.swift
    β”‚Β Β  β”‚Β Β  β”œβ”€β”€ MainViewController.swift
    β”‚Β Β  β”‚Β Β  β”œβ”€β”€ MainViewModel.swift
    β”‚Β Β  β”‚Β Β  β”œβ”€β”€ MotionCellViewModel.swift
    β”‚Β Β  β”‚Β Β  └── MotionDataCell.swift
    β”‚Β Β  └── MeasureScene
    β”‚Β Β      β”œβ”€β”€ MeasureViewController.swift
    β”‚Β Β      └── MeasureViewModel.swift
    └── Service
        β”œβ”€β”€ AccelerometerMotionManager.swift
        β”œβ”€β”€ FileHandleManager.swift
        β”œβ”€β”€ GyroMotionManager.swift
        └── MeasureTimer.swift

ios-wanted-gyrodata's People

Contributors

inho-98 avatar jonghancha avatar lxodud avatar soo941226 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.