inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

UIKit - iOS14 실무 가이드 <iOS앱 진짜 개발자 되기>

To do App_3

질문있습니다!

140

xornjs1423

작성한 질문수 10

0

강의를 들으면서 코딩을하다가 만약에 여러곳 view controller에서 data를 fehch,update,delete할수 있단 생각에
 
CoreDataManger라는 클래스를 따로만들어서 여기에다가 함수들을 구현했습니다.

class CoreDataManager{

    static let shared = CoreDataManager()

    

    var context : NSManagedObjectContext{

        return persistentContainer.viewContext

    }

    var todoList = [TodoList]()

    private init(){

        

    }

    

    

    func fetchData(){

        let fetchRequest : NSFetchRequest<TodoList> = TodoList.fetchRequest()

        

        do{

             try context.fetch(fetchRequest)

        }catch{

            print(error)

        }

    }

    // MARK: - Core Data stack

 

    lazy var persistentContainer: NSPersistentContainer = {

       

        let container = NSPersistentContainer(name: "TodoApp")

        container.loadPersistentStores(completionHandler: { (storeDescription, error) in

            if let error = error as NSError? {

                fatalError("Unresolved error \(error), \(error.userInfo)")

            }

        })

        return container

    }()

    // MARK: - Core Data Saving support

 

    func saveContext () {

        let context = persistentContainer.viewContext

        if context.hasChanges {

            do {

                try context.save()

            } catch {

                let nserror = error as NSError

                fatalError("Unresolved error \(nserror), \(nserror.userInfo)")

            }

        }

    }

}

 
이렇게 구현해서 View Controller에서 싱글톤으로 접근해서 사용 하려고 합니다.
이런 구현방식이 view controller에서 연산을 수행하는 것보다 효율적인지 여쭤보고 싶습니다!
강의 항상 잘 듣고 있습니다 감사합니다

 

swift ios

답변 1

0

iOS Developer - 이정

안녕하세요

질문주신 내용처럼 실제로도 싱글톤으로 따로 만들어 많이 사용하고 있습니다.

이런 방식이 문제되진 않으니 편하게 사용하시면 될 것 같습니다.

 

 

클로저내의 return 질문

0

58

1

movieapp 3 46분 실행이 안돼요ㅜㅜ

0

196

2

missing constraints 에러

0

232

1

콘솔창 print 내용 안 뜸

0

226

1

키보드 떠 있는 상태 만들기

0

323

1

pageViewController 호출시점

0

384

2

20:01 쯤에서

0

296

1

WebView와 이니시스 결제

0

611

1

movie App 영상이 안나오고 소리만 나옵니다.

0

580

2

to do app 강의중에

0

259

1

UIKit 요소에 대하여...

0

319

1

기업 내부용 앱을 만들어 설치하고 싶다면?

0

606

1

Break Point 사용법

0

417

2

클론 프로젝트 코드 요청드립니다.

0

324

1

extension UIColor

0

251

1

TintColor란 정확히 무엇인가요?

0

651

1

computedProperty 와 func 는 각각 언제 사용하면 좋나요?

0

262

2

force cast 질문입니다.

0

217

1

Optional 관련 질문드립니다.

0

255

1

ToDoApp에서 셀간의 간격 설정에 관한 질문

0

332

1

45도 회전의 경우

0

716

2

파일 여는 방법에 대해서 질문 드립니다

0

236

1

navigation backgrouncolor가 파스텔톤으로 적용되지 않는 건에 대하여

0

326

2

To do App 질문있습니다.

0

217

1