6/54
Jan30-Feb5
iOS
SideProject
Instagram
App
iPhone
进度规划
Milestone
One 是我模仿 Instagram 的一个iOS App。
Milestone-0 已经完成,但只是停留在能用的程度上。
Milestone-1 会是一个打磨、改进、重构的过程。主要在UI,代码,后端的Model,用户体验。
这篇是对于 Milestone-1 的计划总结,Milestone-0的总结,还有一点深度改进留给 Milestone-2。
Milestone-1
Estimated Time: 28.5 days, Mar 11 Done
Actual Time: Feb 2 - Feb 23, 2017, 22 days, Awesome work!
Thoughts
- M1 的计划比想象中的还要顺利,每个Issue都是提前完成
- 当计划提前时,也要有所准备。做的快可以把后面几天的活拿来做。然后没活可做时再Plan。
- Github Issue要尽量小,容易实行
- 每个Issue给出 Tag,比如优先级,Milestone,执行时间
- M1 的Issue不能太复杂,例如Refactor的一些工作没有完成就是因为太大了。而且不知道如何去做。一般来说一个Milestone应该有一个总的目标。所有的Issue都是围绕这个目标展开。 M1的目标应该是从UI和Feature上进一步的改进。至于Refactor和架构上的改进应该放在M2。
- 不明确目的的Issue,太大的Issue 往往不知道如何下手。
- 每次都有一点小的改进会激励自己不断去完善App。
Demo
Screenshot
Main Screens
Other Screens
Feature - 4.5 days
- Search tab - 2 days
- Hook Discovery Post collection view
- Fix Search bar UI
- Notification tab - 1 day
- Cell tap action - navigate to user, post, comments
- User name label action - navigate to profile page
- fetch user profile image
- Notification Popup Icon Feature - 1 day
- If there is new notification, we show a NUX UI
- Design the icon
- Add how many likes for this post - 0.5 day
UI - 4 days
- Add App Title on Navigation Bar - 0.5 day
- Login Screen Enhance - 1 day
- Button and background
- Remove Tab bar text - 0.5 day
- Post Bar - 0.5 day
- Add post button on the top right
- Add placeholder icon for post image view
- Add Settings button on top right, move log out function inside settings - 1 day
- Profile Page Enhance - 0.5 day
- Make the profile image in profile tab smaller
- Make the posts, follower, following font spacing equal
Refactor - 5.5 days
- Comments VC - 0.5 day
- Add uuid and postID for comment model
- Create alert helper class - 1 day
- Refactor FollowVC and FollowingVC - 2 days
- Refactor GuestVC and HomeVC, they should share common codes - 2 days
Network - 4 days
- Move a network request helper class - 2 day
- Replace all server username and id to uuid - 2 days
Icon - 3 days
- Feed Icon - 0.5 day
- log out icon - 0.5 day
- Edit Profile Page all icons - 1 day
- Create Icon for 'delete', 'reply', 'complain' buttons - 0.5 day
- Design App icon - 0.5 day
Others - 4 days
- Setup Travis - 1 day
- Private, fileprivate vars and func - 1 day
- Improve Readme - 1 day
- Replace print error with error library - 1 day
Bug - 3.5 days
-
53 - 0.5 day
- iOS - fix comment navigation bug
- iOS - Delete hashtag function
- Replace textField with textView in the commentVC - 1 day
- Collection View in Profile Page is flushing - 0.5 day
- Fix edit user page error - 0.5 day
- Fix all optional, guard let, force unwrapped issue - 1 day
Timeline
Design Useful Link
Milestone-0 总结
总结
- Dec 19, 2016 开工,Jan 31, 2017 完工。耗时 44 天。
- 实际时间总体是计划时间的2倍,所以要预留计划时间1倍的buffer time。
- 计划Jan 9完工,实际Jan 31完工。而且是非常粗糙的版本。比计划延后22天完成。
- 前期主要是对于Parse API不熟悉,所以很多都是跟着讲座一步一步写代码,比较费时。
- 后期是自己有点懒,另外经常会有突发时间,所以进度放缓。
Demo Video
可以看到Demo中App Crash了2-3次,很多功能还非常粗陋。
But, done is better than perfect!
有一个原型就有动力去改进了。
Screenshot
未记录时间的前期工作
Dec 19
Introduction to Course or First Steps To Become a Professional
3 个讲座
06:02
No Parse Account? Not a Problem!
5 个讲座
47:58
Dec 21
Instagram Users: sign up, login, reset password, designing, alignment
13 个讲座
02:01:12
Dec 22
Creating Home profile Page of Logged-in User exactly as in instagram
6 个讲座
01:11:48
Dec 23 - 24
Creating Followers and Following Users Page
3 个讲座
39:10
Going Guest to some User
8 个讲座
01:20:03
Dec 26
Editing Users Information
5 个讲座
01:03:48
Milestone-2 备忘
- Use IGListKit to replace CollectionView
- Fancy UIImagePickerController
- Add Facebook / Google Login
- Any Pic App
- 参考 Lofter, Instagram, 500px, Flickr, VSCO
- 加入 FastImage Library
Rev
Rev | Date | Note |
---|---|---|
1.0 | 2017-02-24 | M1 完成,增加总结 |