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
350
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
38
A developer's guide to wealth
adnan321
0
250
What the Hook ?
adnan321
0
76
Scoping Your Storage
adnan321
2
140
What The Context ?
adnan321
2
200
Putting Work Manager To Work
adnan321
0
94
OOP To FP
adnan321
1
190
Putting Work Manager To Work
adnan321
1
150
A slice of Android Slices - droidcon London 2018
adnan321
0
100
Other Decks in Programming
See All in Programming
sappoRo.R #12 初心者セッション
kosugitti
0
260
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
0
190
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
520
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
tasshi
0
220
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
270
コミュニティ駆動 AWS CDK ライブラリ「Open Constructs Library」 / community-cdk-library
gotok365
2
140
CI改善もDatadogとともに
taumu
0
120
第3回 Snowflake 中部ユーザ会- dbt × Snowflake ハンズオン
hoto17296
4
370
Grafana Cloudとソラカメ
devoc
0
170
Amazon S3 TablesとAmazon S3 Metadataを触ってみた / 20250201-jawsug-tochigi-s3tables-s3metadata
kasacchiful
0
170
Formの複雑さに立ち向かう
bmthd
1
850
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
740
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Done Done
chrislema
182
16k
Why Our Code Smells
bkeepers
PRO
336
57k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
BBQ
matthewcrist
87
9.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
9
450
Side Projects
sachag
452
42k
Making Projects Easy
brettharned
116
6k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
A designer walks into a library…
pauljervisheath
205
24k
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