codesquad-member-2020 / airbnb-03 Goto Github PK
View Code? Open in Web Editor NEW숙소예약 서비스 - 3팀
숙소예약 서비스 - 3팀
UI 요소들 layout 구현
CollectionView 커스텀 클래스
CollectionViewDelegateFlowLayout
CellSize 설정
CollectionViewDataSource
StayCell Layout 구현
addSubviews extension 구현
alertView로 에러 처리
재시도 / 확인 처리
Stay 배열을 네트워크를 통해 데이터를 가져오면
StayCell에 대한 뷰모델 바인딩을 구현
ViewModelBindable 프로토콜 구현
StayViewModel 구현
StayListViewModel 구현
xib 사용
최상단 텍스트 검색
StayList -> StayDetail -> SectionDetail(?)에 쓸 NavigationController
네트워크 매니저 클래스
static function으로 구현
UseCase로 StayList 요청 관련 url 정리
오토레이아웃 관련 메소드를 extension으로 구현
썸네일 이미지 부분 제외 상세설명 부분 구현
DescriptionStackView
AttributtedString with UIImage
ReviewsLabel - AttributtedString
SuperHostLabel - AttributtedString
PriceLabel - AttributtedString
AttributtedString extension으로 더 편하게 사용하는 방법
뷰 파일들이 많아져서 보기가 불편해서 그룹을 만들어서 정리하겠습니다.
pageControl 추가
scrollViewDelegate 클래스 생성
scrollView에서 페이징할 수 있도록 처리
: 웹서버가 존재하는 EC2 서버 구축
: DB서버가 존재하는 RDS 서버 구축
: DB서버 보안을 위한 VPC 설정
: EC2서버 접속을 위한 KeyPair 공유 혹은 User 생성
: Nginx 설치
: Mysql 설치
constraints() 메소드의 size 파라미터를 CGSize 타입으로 처리하고 있는데,
width, height 가 0이면 적용이 안되게 구현을 해놓았다.
하지만 이는 논리적이지 못해서 수정이 필요하다.
ViewController에서 네트워크 요청
collectionView에 업데이트
이 부분은 stayListCollectionView 클래스 파일에 가면, 제가 그 안에서 delegate를 지정해놨는데, 여기서 delegate를 변경해서 그럴거에요.
Originally posted by @corykim0829 in https://github.com/_render_node/MDExOlB1bGxSZXF1ZXN0NDIzMDEzNjIz/pull_requests/unread_timeline
상단에서 고정되어있지 않고 스크롤되면 같이 올라갈 수 있도록 headerView로 구현
프로젝트 생성
gitignore 추가
Only Portrait
스토리보드 제거
Root ViewController
마일스톤 생성
현재 썸네일 이미지를 스크롤뷰 페이징으로 구현하려고, XIB에 scrollView를 추가하고 stackView가 scrollView의 subview로 있는 상황에서, stackView가 비어있으면 scrollView의 frame이 잡히지 않아서 constraint 에러가 발생합니다.
그래서 stackView에 뷰 하나를 넣고 isHidden을 해서 먼저 처리를 했습니다.
좋지 않은 방법이라 생각되어서 scrollView 부분은 코드로 구현해야할 것 같다는 생각이 드네요
scrollViewDelegate를 별개의 클래스로 구현하지 말고, 바로 extension으로 채택해서 사용하는 방식으로 구현
상세 페이지 재사용을 고려하여, 코드로 구현
기존 XIB에 사용된 코드 리팩토링
이미지들(썸네일 이미지)을 담을 뷰 자체를 XIB 또는 코드로 처리
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.