SlideShare a Scribd company logo
1 of 63
Download to read offline
Storyboardsvs.
Interface Buildervs.
Code
DifferentMethods
StoryboardsHas morethan oneviewand managestransitions
Supported byApple
Interface Builder
Interface Builder
Circa1993
Code
Storyboards
Oneapplication, one
storyboard
Oneapplication, one storyboard
Storyboards
Storyboards
BREAK INTO PIECES
» Authentication / Registration
BREAK INTO PIECES
» Authentication / Registration
» Multi-step Order Forms
BREAK INTO PIECES
» Authentication / Registration
» Multi-step Order Forms
» Wizards, Tutorials, etc.
BREAK INTO PIECES
» Authentication / Registration
» Multi-step Order Forms
» Wizards, Tutorials, etc.
» Master-Detail
BREAK INTO PIECES:WHY?
<viewControllerLayoutGuide type="top" id="cIm-e0-
J51"/>
<viewControllerLayoutGuide type="bottom" id="a0L-h9-
sNL"/>
BREAK INTO PIECES:WHY?
CONFLICT
WHENTO USE
ADVANTAGES
» Easier Transitions
WHENTO USE
ADVANTAGES
» Easier Transitions
» No alloc] init]
WHENTO USE
ADVANTAGES
» Easier Transitions
» No alloc] init]
» Visual Tool
WHENTO USE
ADVANTAGES
» Easier Transitions
» No alloc] init]
» Visual Tool
» Static Table Views
WHENTO USE
ADVANTAGES
» Easier Transitions
» No alloc] init]
» Visual Tool
» Static Table Views
» More than one Cell Templates
WHENTO USE
ADVANTAGES
» Easier Transitions
» No alloc] init]
» Visual Tool
» Static Table Views
» More than one Cell Templates
» Less file count
WHEN NOTTO USE
» Complex custom UI
» UI with too many clear backgrounds
» Already implemented with code or XIBs
Storyboard Pros +
Storyboard Pros +
PERFORMANCE
» Only the initial view is allocated
Storyboard Pros +
PROTOTYPING
» Can be used to quickly create prototypes
Storyboard Pros +
VISUAL
» For those who are better with visuals
Storyboard Pros +
AUTO-LAYOUT
» We'll come back to this
I should use storyboardsthen.
Storyboard Cons -
REUSABILITY
Storyboard Cons -
DATAFLOW
Storyboard Cons -
DATAFLOW
» prepareForSegue:
Storyboard Cons -
CONFLICT
Interface Builder
Interface Builder
Old.
Interface Builder
Old. ButNSString is oldtoo.
Interface Builder
MultipleFilesforSingleviewsorSingleFilesforMultiple
relatedviews
Interface Builder
EveryviewhasitsownXIBfile.
Interface Builder
EveryviewhasitsownXIBfile.
“After all, that's what Object-Oriented programming
stands for.”
-- Some programmer dude
WHENTO USE
» Modal Views
WHENTO USE
» Modal Views
» Login/Register screens
WHENTO USE
» Modal Views
» Login/Register screens
» Reusable Views (templates, table cells)
WHENTO USE
» Modal Views
» Login/Register screens
» Reusable Views (templates, table cells)
» Everywhere basically
Interface Builder Pros +
Reusability
» Prepare once, use everywhere
Interface Builder Pros +
VisualTool
» See what you are making
Interface Builder Pros +
Auto-Layout
Interface Builder Cons -
Localization
» It's not easy for the unexperienced
Code
Code
» When IB and Storyboards aren't enough
Code
» Understanding what's under the hood.
Code
» Use coding only for a project at least once.
Code Pros +
Performance
Code Pros +
Reusability
» Good for small changes on similar views
» Open Source
Code Cons -
DonkeyCorpseamountofCode
Code Cons -
SeeingResultsAin'tEasy
» Iterate/Run/Debug/Iterate Cycle
Code Cons -
NotImminent
» Changes to the layout can't be applied that fast.
Code Cons -
Anti-Prototyping
» Say farewell to your loved ones if you are trying
this.
Code Cons -
Auto-Layout
[NSLayoutConstraint constraintWithItem:self.button1
attribute:NSLayoutAttributeRight
relatedBy:NSLayoutRelationEqual toItem:self.button2
attribute:NSLayoutAttributeLeft multiplier:1.0
constant:-12.0];
ThewayIwork
THANKS
@seyfoyun - @wearethreadco

More Related Content

Similar to Storyboards vs XIBs vs Code

AWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWSAWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWS
Amazon Web Services
 
On Failure and Resilience
On Failure and ResilienceOn Failure and Resilience
On Failure and Resilience
Mike Brittain
 

Similar to Storyboards vs XIBs vs Code (20)

Breaking down your build: Architectural patterns for a more efficient pipelin...
Breaking down your build: Architectural patterns for a more efficient pipelin...Breaking down your build: Architectural patterns for a more efficient pipelin...
Breaking down your build: Architectural patterns for a more efficient pipelin...
 
Manchester Expert Talks (April 2017) - Breaking Down Your Build: Architectura...
Manchester Expert Talks (April 2017) - Breaking Down Your Build: Architectura...Manchester Expert Talks (April 2017) - Breaking Down Your Build: Architectura...
Manchester Expert Talks (April 2017) - Breaking Down Your Build: Architectura...
 
Advanced Visual Test Automation with Selenium
Advanced Visual Test Automation with SeleniumAdvanced Visual Test Automation with Selenium
Advanced Visual Test Automation with Selenium
 
Evolving Mobile Architectures
Evolving Mobile ArchitecturesEvolving Mobile Architectures
Evolving Mobile Architectures
 
Pipeline conference 2017 - Breaking down your build: architectural patterns f...
Pipeline conference 2017 - Breaking down your build: architectural patterns f...Pipeline conference 2017 - Breaking down your build: architectural patterns f...
Pipeline conference 2017 - Breaking down your build: architectural patterns f...
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS
 
SeConf2015: Advanced Automated Visual Testing With Selenium
SeConf2015: Advanced Automated Visual Testing With SeleniumSeConf2015: Advanced Automated Visual Testing With Selenium
SeConf2015: Advanced Automated Visual Testing With Selenium
 
AWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWSAWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWS
 
Javaland 2017: "You´ll do microservices now". Now what?
Javaland 2017: "You´ll do microservices now". Now what?Javaland 2017: "You´ll do microservices now". Now what?
Javaland 2017: "You´ll do microservices now". Now what?
 
Nanos gigantium humeris insidentes (design patterns inside symfony 2)
Nanos gigantium humeris insidentes (design patterns inside symfony 2)Nanos gigantium humeris insidentes (design patterns inside symfony 2)
Nanos gigantium humeris insidentes (design patterns inside symfony 2)
 
An Introduction to Web Components
An Introduction to Web ComponentsAn Introduction to Web Components
An Introduction to Web Components
 
SYN247 - Migrating Web Interface Customizations to StoreFront
SYN247 - Migrating Web Interface Customizations to StoreFrontSYN247 - Migrating Web Interface Customizations to StoreFront
SYN247 - Migrating Web Interface Customizations to StoreFront
 
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaCloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
 
On Failure and Resilience
On Failure and ResilienceOn Failure and Resilience
On Failure and Resilience
 
Serverless in production (O'Reilly Software Architecture)
Serverless in production (O'Reilly Software Architecture)Serverless in production (O'Reilly Software Architecture)
Serverless in production (O'Reilly Software Architecture)
 
Improving velocity through abstraction
Improving velocity through abstractionImproving velocity through abstraction
Improving velocity through abstraction
 
PHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM iPHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM i
 
Sexy React Stack
Sexy React StackSexy React Stack
Sexy React Stack
 
How do I run microservices in production using Docker.
How do I run microservices in production using Docker.How do I run microservices in production using Docker.
How do I run microservices in production using Docker.
 
Banshun - OSGi-less modularity for Spring
Banshun - OSGi-less modularity for SpringBanshun - OSGi-less modularity for Spring
Banshun - OSGi-less modularity for Spring
 

Recently uploaded

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Recently uploaded (20)

BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 

Storyboards vs XIBs vs Code