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
40
A developer's guide to wealth
adnan321
0
250
What the Hook ?
adnan321
0
77
Scoping Your Storage
adnan321
2
150
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
Jakarta EE meets AI
ivargrimstad
0
620
Domain-Driven Design (Tutorial)
hschwentner
13
22k
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
14
4.8k
React 19アップデートのために必要なこと
uhyo
8
1.6k
Jasprが凄い話
hyshu
0
180
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
320
SwiftUI Viewの責務分離
elmetal
PRO
2
280
TCAを用いたAmebaのリアーキテクチャ
dazy
0
220
複数のAWSアカウントから横断で 利用する Lambda Authorizer の作り方
tc3jp
0
120
Lambdaの監視、できてますか?Datadogを用いてLambdaを見守ろう
nealle
2
730
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
7
4.2k
The Clean ArchitectureがWebフロントエンドでしっくりこないのは何故か / Why The Clean Architecture does not fit with Web Frontend
twada
PRO
49
16k
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
A better future with KSS
kneath
238
17k
How STYLIGHT went responsive
nonsquared
99
5.4k
A Tale of Four Properties
chriscoyier
158
23k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
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