Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEAT] iOS 3주차 과제 #12

Merged
merged 17 commits into from
Nov 11, 2021
Merged

[FEAT] iOS 3주차 과제 #12

merged 17 commits into from
Nov 11, 2021

Conversation

noah0316
Copy link
Collaborator

@noah0316 noah0316 commented Oct 29, 2021

📌 관련 이슈

iOS 3주차 과제를 진행했습니다!!

📌 변경 사항 및 이유

3주차 과제는 TableView와 CollectionView의 적용입니다!

📌 PR Point

그동안 코드를 너무 중구난방으로 짰다는 걸 느껴,
이제라도 MVC 패턴을 적용하며 연습해보고 싶어 차근차근 적용중입니다!
도전과제도 언넝 해보도록 하겠습니다!

- HomeManager.swift: Thumbnail 모델과, Channel 모델을 관리해주는
  HomeManager 추가
- Thumbnail.swift: TableView 관련 모델 추가
- HomeVC+TableView.swift : UITableViewDelegate, UITableViewDataSource 구현
- Channel.swift: CollectionView 관련모델 Channel추가
- HomeVC+CollectionView.swift: UICollectionViewDelegate,
  UICollectionViewDataSource, UICollectionViewDelegateFlowLayout 구현
Copy link
Member

@yangsubinn yangsubinn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

전 승현님 코드 볼때마다 놀라여.... 항상 많이 배웁니다.... 감사함다 수고하셨습니다아🙇‍♀️


import UIKit

extension HomeVC: UICollectionViewDelegate {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

오와... extension으로 빠지는 부분들을 다른 파일로 빼주신건가여?
따로 빠져있는건 처음 봤는데, 이렇게 하니까 한 파일에 코드가 비교적 짧아져서 훨씬 보기 편하네여....
저도 나중에 코드 너무 길어지면 시도해봐야겠어여..👍

Copy link
Collaborator Author

@noah0316 noah0316 Oct 29, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

오와... extension으로 빠지는 부분들을 다른 파일로 빼주신건가여?
따로 빠져있는건 처음 봤는데, 이렇게 하니까 한 파일에 코드가 비교적 짧아져서 훨씬 보기 편하네여....
저도 나중에 코드 너무 길어지면 시도해봐야겠어여..👍

한번에 extension파일로 빼보고 싶었는데 ㅎㅎ 리팩토링 때 시도해봐야겠어요 ㅎㅎ

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

extension 파일로 따로 빼서 관리하고 싶었는는데 실천한 승현슨배.. 멋잇다...

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

와 extension만 한 파일로 관리라니 멋지다....

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

슨배님들이 더더더 멋있고..🥇🥇🥇


struct Thumbnail {
var thumbNailImage: UIImage
var profileImage: UIImage
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

요것은... 혹싀 빈칸.......?
제가 빈칸잽이 캐치미 선배덜 아래서 자라난 아요라.... 빈칸보면 가만 못있거든여.... 선배릠..... 혹싀 의도하신걸까여..? 그렇담 조용히 돌아가겠슴다....

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

요것은... 혹싀 빈칸.......? 제가 빈칸잽이 캐치미 선배덜 아래서 자라난 아요라.... 빈칸보면 가만 못있거든여.... 선배릠..... 혹싀 의도하신걸까여..? 그렇담 조용히 돌아가겠슴다....

앜ㅋㅋㅋㅋ으앟ㅎㅎㅎ급하게 한다고 Foundation도 못지웠네요 ㅜ 언넝 지워서 다시 올리겠습니다 ㅎㅎ
swiftlint를 돌려봐야하나🤔 므찐 캐치미 선배님덜.. 감사합니다 ㅎㅎ👍👍

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ㅋㅋㅋㅋㅋ 빈칸지적 넘 웃겨요 수빈슨배

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

빈칸ㅋㅋㅋㅋㅋㅋㅋㅋㅋ

Copy link
Member

@hellozo0 hellozo0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

승현슨배 넘 고생했다!
도전과제 언능 후루룩 뚝딱 할 수 있을거야! extension파일 따로 뺀거 보고 아..나도 빨리 해봐야겠다...
라는 생각을 했다,, 역시,,, 당신,,, YB 생태계 파괴자... 멈춰..!


import UIKit

extension HomeVC: UICollectionViewDelegate {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

extension 파일로 따로 빼서 관리하고 싶었는는데 실천한 승현슨배.. 멋잇다...


struct Thumbnail {
var thumbNailImage: UIImage
var profileImage: UIImage
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ㅋㅋㅋㅋㅋ 빈칸지적 넘 웃겨요 수빈슨배

Copy link

@hwangJi-dev hwangJi-dev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

갓승현은 당장 금잔디파를 대상으로 swift 문법 강의를 해주어라!
진짜 대박쓰,, 오늘도 많이 배워감~~~~~!!!!


import UIKit

extension HomeVC: UICollectionViewDelegate {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

와 extension만 한 파일로 관리라니 멋지다....

Comment on lines 14 to 21
@IBOutlet weak var tableView: UITableView! {
didSet {
tableView.delegate = self
tableView.dataSource = self
registerTableViewXib()
}
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

didSet 활용 넘 조아요~~~~!

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

didSet 활용은 지은 선배로 부터 시작되어 일년에 한바퀴 돌면서 받는 사람에게 행운을 주었고..


import UIKit

struct HomeManager {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

아니 이 파일 뭐냐고,, 진짜 유용성 몬데... 그리고 다음에 Swift 문법 강의 해주면 안돼 ...? ? ? ? ? ? ? ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@noah0316 진짜로... 문법 강의 좀 해주세요.... 감사합니다~🍎


struct Thumbnail {
var thumbNailImage: UIImage
var profileImage: UIImage

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

빈칸ㅋㅋㅋㅋㅋㅋㅋㅋㅋ

- UIView+ : UI관련 설정을 IB에서 처리하기 위한 UIView 기능확장(border, color)
- CellProtocol : 제네릭을 사용하는 곳에서 custom type, method를 더
  이용하기 쉽게 추가해보았습니다.
- ManagerProtocol : extension을 이용해 기능을 확장할 때 어떤 Manager와
  관련된 extension인지 더 명확하게 표기하기 위해 프로토콜을
  선언해주었습니다.
- ChannelCVC, ThumbnailTVC, HomeManager
- Swift에서 전역변수를 사용하여 인스턴스를 생성하면, 사용시점에 초기화
  되고, GCD의 dispatch_once가 자동적용되어 Thread-Safe하게 사용할 수
  있다고 합니다!(Swift 3.0+)
@Suyeon9911
Copy link
Member

슬쩍 구경하고 갑니다.. 와비 생태계 파괴자 인정... ㅎ !!!

@noah0316
Copy link
Collaborator Author

noah0316 commented Nov 1, 2021

슬쩍 구경하고 갑니다.. 와비 생태계 파괴자 인정... ㅎ !!!

@Suyeon9911 어훟ㅎㅎ아직 한참 멀었습니다..구경와주셔서 너무 감사함다 ㅎㅎ🙇‍♂️🙇‍♂️

@noah0316 noah0316 merged commit d59af3d into main Nov 11, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants