Code Monkey home page Code Monkey logo

photolibrary's Introduction

PhotoLibrary

앱 구조

Data flow

스크린샷 2023-11-01 오전 10 15 50

Depdency Diagram

스크린샷 2023-11-04 오후 9 33 14

Repository에서 디바이스로부터 모든 이미지를 받아와서 ViewModel로 넘겨 줍니다. ViewModel은 화면 상태와 관련된 business logic의 책임을 담당합니다. Business Logic으로는 한 row에 몇개의 column 사진들이 보여야하는지, PHCachingImageManager로 PHAsset의 이미지들을 어떻게 UIImage로 만들어오는지 등을 담당하게 하였습니다. 이러한 과정들은 어떻게 수많은 유저의 이미지들을 메모리 이슈 없이 가져올지를 위해 고안된것입니다. 이런식으로 책임 분리가 명확하게 해서 유지보수를 유리하게 했습니다.

시연 영상

3, 4, 5로 변경 기능

RPReplay_Final1698765899


사진을 누르면 해당 사진이 보이는 기능

RPReplay_Final1698766147 (1)


유저의 모든 이미지들을 불러오고 스크롤 해도 메모리에 이슈가 없습니다.

RPReplay_Final1698767102

photolibrary's People

Contributors

umakim avatar

Watchers

 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.