Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Droidcon India - 2016 - Rebuilding India's larg...
Search
Adnan A M
November 10, 2016
Programming
0
320
Droidcon India - 2016 - Rebuilding India's largest entertainment app
Slides to my presentation at DroidCon India 2016
Adnan A M
November 10, 2016
Tweet
Share
More Decks by Adnan A M
See All by Adnan A M
Abridge Coding Guidelines
adnan321
0
35
A developer's guide to wealth
adnan321
0
240
What the Hook ?
adnan321
0
72
Scoping Your Storage
adnan321
2
140
What The Context ?
adnan321
2
200
Putting Work Manager To Work
adnan321
0
92
OOP To FP
adnan321
1
190
Putting Work Manager To Work
adnan321
1
140
A slice of Android Slices - droidcon London 2018
adnan321
0
97
Other Decks in Programming
See All in Programming
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
440
開発効率向上のためのリファクタリングの一歩目の選択肢 ~コード分割~ / JJUG CCC 2024 Fall
ryounasso
0
420
Realtime API 入門
riofujimon
0
140
色々なIaCツールを実際に触って比較してみる
iriikeita
0
310
推し活の ハイトラフィックに立ち向かう Railsとアーキテクチャ - Kaigi on Rails 2024
falcon8823
6
2.6k
レガシーシステムにどう立ち向かうか 複雑さと理想と現実/vs-legacy
suzukihoge
14
2k
役立つログに取り組もう
irof
28
9.3k
Kaigi on Rails 2024 - Rails APIモードのためのシンプルで効果的なCSRF対策 / kaigionrails-2024-csrf
corocn
5
3.7k
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
280
プロジェクト新規参入者のリードタイム短縮の観点から見る、品質の高いコードとアーキテクチャを保つメリット
d_endo
1
1.1k
EventSourcingの理想と現実
wenas
6
2.2k
外部システム連携先が10を超えるシステムでのアーキテクチャ設計・実装事例
kiwasaki
1
280
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Adopting Sorbet at Scale
ufuk
73
9.1k
What's new in Ruby 2.0
geeforr
343
31k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
505
140k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
GraphQLとの向き合い方2022年版
quramy
43
13k
Done Done
chrislema
181
16k
Building Applications with DynamoDB
mza
90
6.1k
Designing Experiences People Love
moore
138
23k
Transcript
Rebuilding BookMyShow By Adnan A M
Agenda 1. Overview 2. Why re-write ? 3. What did
we change ? 4. What’s different ? 5. What is the effort involved ? 6. What does the future look like ?
Overview
Ground-up Rewrite
UI/UX
3,00,000 lines of code
8 passionate developers 10,000 cups of coffee & 180 days
of absolute fun !
Should you rewrite ?
Why Re-write ?
Problems Challenges
Spaghetti Code Image Source : del.h
No naming conventions
Lack of reusability/modularity
Tightly Coupled
Scalability Image Source : Deposit Photos
Redundant Duplicate code
Hard to refactor
Regression Bugs Image Source : softwaretestingtricks.com
A/B Tests Did the audience like this text better on
the left as compared to having this on the right ?
What did we do ?
Architecture Image Source : del.h
MVP
User Experience
Smart Filters Image Source : del.h
Seat Layout - Quick Switch Image Source : del.h
Contextual Synopsis Image Source : del.h
Unit Testing Image Source : Deposit Photos
What’s different ?
Packaging
Sub package structure
Standalone Modules
Network - Public API Network Manager App Retrofit
Analytics Module Analytics Manager App Analytics code
Self Sufficient Views Image Source : Deposit Photos
Get me that view ! View Provider Activity Build View
Return Built View
Get me that view !
API Param Builder Simple human readable API request builders
Simple POJO’s
• Improved Readability • Auto - Complete
Dimension naming Thou shalt name things better !
Regular naming style OR
Embracing Generic & Specific conventions
Learning/Outcomes
MVP is an architecture ? Image Source : Deposit Photos
Multi-Dex - The dreadful 64k limit Image Source : Medium
Maintenance Image Source : http://hannesdorfmann.com/
New features Image Source : http://hannesdorfmann.com/
The Future
Dynamic View Rendering
Automatic Code Generation
Asynchronous Event Driven Architecture
Thank You Adnan A M Website - www.adnan.am Twitter -
@AdnanM0123