SlideShare ist ein Scribd-Unternehmen logo
1 von 3
| Build a Mobile Experience

www.innovationm.com

iOS - Best Architecture, Design and Coding
Practices

Corporate Office:
InnovationM Mobile Technologies
E-3 (Ground Floor), Sector-3, Noida 201301 (India)
t: +91 8447 227337 | e: info@innovationm.com
| Build a Mobile Experience

www.innovationm.com

iOS – Best Architecture, Design and Coding Practices
We have identified some of the best practices that we need to follow while working on
architecture, design and development of iOS applications. We will keep on adding more
and more to it. Stay tuned…

Best Coding Practices
Image files naming convention
There are four types of devices that we need to support while developing iOS
Application. These are:
1. iPhone (Non-Retina)
2. iPhone (Retina)
3. iPad (Non-Retina)
4. iPad (Retina)
Naming convention:
Image is username.png. There are 4 images created for supporting 4 types of devices.
Here is the naming convention:
iPhone:
username~iphone.png (Non-Retina)
username@2x~iphone.png (Retina)
iPad:
username~ipad.png (Non-Retina)
username@2x~ipad.png (Retina)

How to refer them in the code and storyboard
Corporate Office:
InnovationM Mobile Technologies
E-3 (Ground Floor), Sector-3, Noida 201301 (India)
t: +91 8447 227337 | e: info@innovationm.com
| Build a Mobile Experience

www.innovationm.com

Referring this image in the code:
[UIImage imageNamed:@"username"];

Referring this image in the storyboard:
iPhone storyboard:
<imageView userInteractionEnabled=”NO” contentMode=”scaleAspectFit”
horizontalHuggingPriority=”251″ verticalHuggingPriority=”251″ image= “username.png”
translatesAutoresizingMaskIntoConstraints=”NO” id=”4d0-HY-bjJ”>
<rect key=”frame” x=”11″ y=”14″ width=”23″ height=”23″/>
<autoresizingMask key=”autoresizingMask” widthSizable=”YES” heightSizable=”YES”/>
<constraints>
<constraint firstAttribute=”height” constant=”23″ id=”M1s-uZ-vgv”/>
<constraint firstAttribute=”width” constant=”23″ id=”lrU-RP-6NN”/>
</constraints>
</imageView>

iPad storyboard:
<imageView userInteractionEnabled=”NO” contentMode=”scaleAspectFit”
horizontalHuggingPriority=”251″ verticalHuggingPriority=”251″ image= “username.png”
translatesAutoresizingMaskIntoConstraints=”NO” id=”4d0-HY-bjJ”>
<rect key=”frame” x=”11″ y=”13″ width=”25″ height=”25″/>
<autoresizingMask key=”autoresizingMask” widthSizable=”YES” heightSizable=”YES”/>
<constraints>
<constraint firstAttribute=”width” constant=”25″ id=”NeQ-Pc-jIn”/>
<constraint firstAttribute=”height” constant=”25″ id=”v7K-G6-sTx”/>
</constraints>
</imageView>

Benefits:
1. When you run the app then OS will pick-up the right image for non-retina / retina
device and also for iPhone and iPad.
2. Ease of managing the images.

Source: http://blogs.innovationm.com/ios-best-architecture-design-and-coding-practices/

Corporate Office:
InnovationM Mobile Technologies
E-3 (Ground Floor), Sector-3, Noida 201301 (India)
t: +91 8447 227337 | e: info@innovationm.com

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (9)

SMACC: How to Create a Medical App
SMACC: How to Create a Medical AppSMACC: How to Create a Medical App
SMACC: How to Create a Medical App
 
#Mohit resume
#Mohit resume#Mohit resume
#Mohit resume
 
Ai open poweruniversityoforegon_ver2
Ai open poweruniversityoforegon_ver2Ai open poweruniversityoforegon_ver2
Ai open poweruniversityoforegon_ver2
 
Fkili cv
Fkili cvFkili cv
Fkili cv
 
Pekka_E_CV
Pekka_E_CVPekka_E_CV
Pekka_E_CV
 
Islam Mohamed Ahmed Cv
Islam Mohamed Ahmed  CvIslam Mohamed Ahmed  Cv
Islam Mohamed Ahmed Cv
 
Code 101
Code 101Code 101
Code 101
 
Ios
IosIos
Ios
 
Eecs 441 app first presentation (final draft)
Eecs 441 app  first presentation (final draft)Eecs 441 app  first presentation (final draft)
Eecs 441 app first presentation (final draft)
 

Andere mochten auch

азиза ахметова+протезы+инвалиды
азиза ахметова+протезы+инвалидыазиза ахметова+протезы+инвалиды
азиза ахметова+протезы+инвалидыАнара Исакаева
 
12-Qualification-A
12-Qualification-A12-Qualification-A
12-Qualification-ASocheata Oum
 
122315-Oum-Socheata-Certificate
122315-Oum-Socheata-Certificate122315-Oum-Socheata-Certificate
122315-Oum-Socheata-CertificateSocheata Oum
 
Cookpad 24 contest 2012
Cookpad 24 contest 2012Cookpad 24 contest 2012
Cookpad 24 contest 2012R. Ayakix
 
12-Qualification-E
12-Qualification-E12-Qualification-E
12-Qualification-ESocheata Oum
 
Rumah tanggap iklim
Rumah tanggap iklimRumah tanggap iklim
Rumah tanggap iklimFirman Akbar
 
Driving value from mobile: Getting the strategy right - Steve Barden, Laura O...
Driving value from mobile: Getting the strategy right - Steve Barden, Laura O...Driving value from mobile: Getting the strategy right - Steve Barden, Laura O...
Driving value from mobile: Getting the strategy right - Steve Barden, Laura O...LINE_Communications
 
курманова айдана+кондитерская фаас+конкуренты
курманова айдана+кондитерская фаас+конкурентыкурманова айдана+кондитерская фаас+конкуренты
курманова айдана+кондитерская фаас+конкурентыАйдана Курманова
 
Curso de comunicación
Curso de comunicaciónCurso de comunicación
Curso de comunicaciónleonidherrera
 
Λαϊκισμός
ΛαϊκισμόςΛαϊκισμός
Λαϊκισμόςchavalesnick
 
Λαϊκότητα
ΛαϊκότηταΛαϊκότητα
Λαϊκότηταsokaniak
 
The_Shell_Edition_7 Copy
The_Shell_Edition_7 CopyThe_Shell_Edition_7 Copy
The_Shell_Edition_7 Copybenjaminhaslem
 
10 маркетинговых предсказаний на 2017 год
10 маркетинговых предсказаний на 2017 год10 маркетинговых предсказаний на 2017 год
10 маркетинговых предсказаний на 2017 годmfive
 
Lentera news ed. #22 Maret 2016
Lentera news ed. #22 Maret 2016Lentera news ed. #22 Maret 2016
Lentera news ed. #22 Maret 2016Ananta Bangun
 
Lentera news ed.#23 April 2016
Lentera news  ed.#23 April 2016Lentera news  ed.#23 April 2016
Lentera news ed.#23 April 2016Ananta Bangun
 
Lentera News edisi September 2015 | Bijak Kata Bijak Berbagi
Lentera News edisi September 2015 | Bijak Kata Bijak BerbagiLentera News edisi September 2015 | Bijak Kata Bijak Berbagi
Lentera News edisi September 2015 | Bijak Kata Bijak BerbagiAnanta Bangun
 

Andere mochten auch (19)

азиза ахметова+протезы+инвалиды
азиза ахметова+протезы+инвалидыазиза ахметова+протезы+инвалиды
азиза ахметова+протезы+инвалиды
 
12-Qualification-A
12-Qualification-A12-Qualification-A
12-Qualification-A
 
122315-Oum-Socheata-Certificate
122315-Oum-Socheata-Certificate122315-Oum-Socheata-Certificate
122315-Oum-Socheata-Certificate
 
Cookpad 24 contest 2012
Cookpad 24 contest 2012Cookpad 24 contest 2012
Cookpad 24 contest 2012
 
The_Shell_Issue2
The_Shell_Issue2The_Shell_Issue2
The_Shell_Issue2
 
12-Qualification-E
12-Qualification-E12-Qualification-E
12-Qualification-E
 
Rumah tanggap iklim
Rumah tanggap iklimRumah tanggap iklim
Rumah tanggap iklim
 
THE_SHELL_ISSUE_3
THE_SHELL_ISSUE_3THE_SHELL_ISSUE_3
THE_SHELL_ISSUE_3
 
Driving value from mobile: Getting the strategy right - Steve Barden, Laura O...
Driving value from mobile: Getting the strategy right - Steve Barden, Laura O...Driving value from mobile: Getting the strategy right - Steve Barden, Laura O...
Driving value from mobile: Getting the strategy right - Steve Barden, Laura O...
 
курманова айдана+кондитерская фаас+конкуренты
курманова айдана+кондитерская фаас+конкурентыкурманова айдана+кондитерская фаас+конкуренты
курманова айдана+кондитерская фаас+конкуренты
 
Curso de comunicación
Curso de comunicaciónCurso de comunicación
Curso de comunicación
 
Λαϊκισμός
ΛαϊκισμόςΛαϊκισμός
Λαϊκισμός
 
Habilidades de comunicacion para emprendedores
Habilidades de comunicacion para emprendedoresHabilidades de comunicacion para emprendedores
Habilidades de comunicacion para emprendedores
 
Λαϊκότητα
ΛαϊκότηταΛαϊκότητα
Λαϊκότητα
 
The_Shell_Edition_7 Copy
The_Shell_Edition_7 CopyThe_Shell_Edition_7 Copy
The_Shell_Edition_7 Copy
 
10 маркетинговых предсказаний на 2017 год
10 маркетинговых предсказаний на 2017 год10 маркетинговых предсказаний на 2017 год
10 маркетинговых предсказаний на 2017 год
 
Lentera news ed. #22 Maret 2016
Lentera news ed. #22 Maret 2016Lentera news ed. #22 Maret 2016
Lentera news ed. #22 Maret 2016
 
Lentera news ed.#23 April 2016
Lentera news  ed.#23 April 2016Lentera news  ed.#23 April 2016
Lentera news ed.#23 April 2016
 
Lentera News edisi September 2015 | Bijak Kata Bijak Berbagi
Lentera News edisi September 2015 | Bijak Kata Bijak BerbagiLentera News edisi September 2015 | Bijak Kata Bijak Berbagi
Lentera News edisi September 2015 | Bijak Kata Bijak Berbagi
 

Ähnlich wie iOS Design and Coding Practices_InnovationM

Why iOS Development Is The Most Secured One?
Why iOS Development Is The Most Secured One?Why iOS Development Is The Most Secured One?
Why iOS Development Is The Most Secured One?KariSystems1
 
Choose the Best iOS Development in Chennai for Amazing Facilities
Choose the Best iOS Development in Chennai for Amazing FacilitiesChoose the Best iOS Development in Chennai for Amazing Facilities
Choose the Best iOS Development in Chennai for Amazing FacilitiesKariSystems1
 
Personal Note On Software Engineering
Personal Note On Software EngineeringPersonal Note On Software Engineering
Personal Note On Software EngineeringHeidi Maestas
 
Arunkarthick_iOS_CV (4)
Arunkarthick_iOS_CV (4)Arunkarthick_iOS_CV (4)
Arunkarthick_iOS_CV (4)Arun Karthick
 
Process of iOS App Development
Process of iOS App DevelopmentProcess of iOS App Development
Process of iOS App DevelopmentWDP Technologies
 
UX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experienceUX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experienceRaj Lal
 
20220728-iOSAppDev-MobileAppDev.pptx
20220728-iOSAppDev-MobileAppDev.pptx20220728-iOSAppDev-MobileAppDev.pptx
20220728-iOSAppDev-MobileAppDev.pptxSuman Garai
 
Isha_chaoji_3_plus_iOS
Isha_chaoji_3_plus_iOSIsha_chaoji_3_plus_iOS
Isha_chaoji_3_plus_iOSIsha Chaoji
 

Ähnlich wie iOS Design and Coding Practices_InnovationM (20)

Why iOS Development Is The Most Secured One?
Why iOS Development Is The Most Secured One?Why iOS Development Is The Most Secured One?
Why iOS Development Is The Most Secured One?
 
Choose the Best iOS Development in Chennai for Amazing Facilities
Choose the Best iOS Development in Chennai for Amazing FacilitiesChoose the Best iOS Development in Chennai for Amazing Facilities
Choose the Best iOS Development in Chennai for Amazing Facilities
 
Supratik_CV_Photo
Supratik_CV_PhotoSupratik_CV_Photo
Supratik_CV_Photo
 
AalokParikh_CV
AalokParikh_CVAalokParikh_CV
AalokParikh_CV
 
MSR iOS Tranining
MSR iOS TraniningMSR iOS Tranining
MSR iOS Tranining
 
Supratik_CV_Photo
Supratik_CV_PhotoSupratik_CV_Photo
Supratik_CV_Photo
 
Supratik_CV_Photo
Supratik_CV_PhotoSupratik_CV_Photo
Supratik_CV_Photo
 
Resume
ResumeResume
Resume
 
Resume keyur
Resume keyurResume keyur
Resume keyur
 
Personal Note On Software Engineering
Personal Note On Software EngineeringPersonal Note On Software Engineering
Personal Note On Software Engineering
 
Profile_Stephen_05564o
Profile_Stephen_05564oProfile_Stephen_05564o
Profile_Stephen_05564o
 
Ios
IosIos
Ios
 
IOS
IOSIOS
IOS
 
Introducción a iOS
Introducción a iOSIntroducción a iOS
Introducción a iOS
 
Arunkarthick_iOS_CV (4)
Arunkarthick_iOS_CV (4)Arunkarthick_iOS_CV (4)
Arunkarthick_iOS_CV (4)
 
Process of iOS App Development
Process of iOS App DevelopmentProcess of iOS App Development
Process of iOS App Development
 
UX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experienceUX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experience
 
20220728-iOSAppDev-MobileAppDev.pptx
20220728-iOSAppDev-MobileAppDev.pptx20220728-iOSAppDev-MobileAppDev.pptx
20220728-iOSAppDev-MobileAppDev.pptx
 
Resume
ResumeResume
Resume
 
Isha_chaoji_3_plus_iOS
Isha_chaoji_3_plus_iOSIsha_chaoji_3_plus_iOS
Isha_chaoji_3_plus_iOS
 

Mehr von InnovationM

How to use data binding in android
How to use data binding in androidHow to use data binding in android
How to use data binding in androidInnovationM
 
Capture image on eye blink
Capture image on eye blinkCapture image on eye blink
Capture image on eye blinkInnovationM
 
How to use geolocation in react native apps
How to use geolocation in react native appsHow to use geolocation in react native apps
How to use geolocation in react native appsInnovationM
 
Android 8 behavior changes
Android 8 behavior changesAndroid 8 behavior changes
Android 8 behavior changesInnovationM
 
Understanding of react fiber architecture
Understanding of react fiber architectureUnderstanding of react fiber architecture
Understanding of react fiber architectureInnovationM
 
Automatic reference counting (arc) and memory management in swift
Automatic reference counting (arc) and memory management in swiftAutomatic reference counting (arc) and memory management in swift
Automatic reference counting (arc) and memory management in swiftInnovationM
 
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...InnovationM
 
How prototype works in java script?
How prototype works in java script?How prototype works in java script?
How prototype works in java script?InnovationM
 
React – Let’s “Hook” up
React – Let’s “Hook” upReact – Let’s “Hook” up
React – Let’s “Hook” upInnovationM
 
Razorpay Payment Gateway Integration In iOS Swift
Razorpay Payment Gateway Integration In iOS SwiftRazorpay Payment Gateway Integration In iOS Swift
Razorpay Payment Gateway Integration In iOS SwiftInnovationM
 
Paytm integration in swift
Paytm integration in swiftPaytm integration in swift
Paytm integration in swiftInnovationM
 
Line Messaging API Integration with Spring-Boot
Line Messaging API Integration with Spring-BootLine Messaging API Integration with Spring-Boot
Line Messaging API Integration with Spring-BootInnovationM
 
Basic fundamental of ReactJS
Basic fundamental of ReactJSBasic fundamental of ReactJS
Basic fundamental of ReactJSInnovationM
 
Basic Fundamental of Redux
Basic Fundamental of ReduxBasic Fundamental of Redux
Basic Fundamental of ReduxInnovationM
 
Integration of Highcharts with React ( JavaScript library )
Integration of Highcharts with React ( JavaScript library )Integration of Highcharts with React ( JavaScript library )
Integration of Highcharts with React ( JavaScript library )InnovationM
 
Serialization & De-serialization in Java
Serialization & De-serialization in JavaSerialization & De-serialization in Java
Serialization & De-serialization in JavaInnovationM
 
Concept of Stream API Java 1.8
Concept of Stream API Java 1.8Concept of Stream API Java 1.8
Concept of Stream API Java 1.8InnovationM
 
How to Make Each Round of Testing Count?
How to Make Each Round of Testing Count?How to Make Each Round of Testing Count?
How to Make Each Round of Testing Count?InnovationM
 
Model View Presenter For Android
Model View Presenter For AndroidModel View Presenter For Android
Model View Presenter For AndroidInnovationM
 

Mehr von InnovationM (20)

How to use data binding in android
How to use data binding in androidHow to use data binding in android
How to use data binding in android
 
Capture image on eye blink
Capture image on eye blinkCapture image on eye blink
Capture image on eye blink
 
Mob x in react
Mob x in reactMob x in react
Mob x in react
 
How to use geolocation in react native apps
How to use geolocation in react native appsHow to use geolocation in react native apps
How to use geolocation in react native apps
 
Android 8 behavior changes
Android 8 behavior changesAndroid 8 behavior changes
Android 8 behavior changes
 
Understanding of react fiber architecture
Understanding of react fiber architectureUnderstanding of react fiber architecture
Understanding of react fiber architecture
 
Automatic reference counting (arc) and memory management in swift
Automatic reference counting (arc) and memory management in swiftAutomatic reference counting (arc) and memory management in swift
Automatic reference counting (arc) and memory management in swift
 
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...
 
How prototype works in java script?
How prototype works in java script?How prototype works in java script?
How prototype works in java script?
 
React – Let’s “Hook” up
React – Let’s “Hook” upReact – Let’s “Hook” up
React – Let’s “Hook” up
 
Razorpay Payment Gateway Integration In iOS Swift
Razorpay Payment Gateway Integration In iOS SwiftRazorpay Payment Gateway Integration In iOS Swift
Razorpay Payment Gateway Integration In iOS Swift
 
Paytm integration in swift
Paytm integration in swiftPaytm integration in swift
Paytm integration in swift
 
Line Messaging API Integration with Spring-Boot
Line Messaging API Integration with Spring-BootLine Messaging API Integration with Spring-Boot
Line Messaging API Integration with Spring-Boot
 
Basic fundamental of ReactJS
Basic fundamental of ReactJSBasic fundamental of ReactJS
Basic fundamental of ReactJS
 
Basic Fundamental of Redux
Basic Fundamental of ReduxBasic Fundamental of Redux
Basic Fundamental of Redux
 
Integration of Highcharts with React ( JavaScript library )
Integration of Highcharts with React ( JavaScript library )Integration of Highcharts with React ( JavaScript library )
Integration of Highcharts with React ( JavaScript library )
 
Serialization & De-serialization in Java
Serialization & De-serialization in JavaSerialization & De-serialization in Java
Serialization & De-serialization in Java
 
Concept of Stream API Java 1.8
Concept of Stream API Java 1.8Concept of Stream API Java 1.8
Concept of Stream API Java 1.8
 
How to Make Each Round of Testing Count?
How to Make Each Round of Testing Count?How to Make Each Round of Testing Count?
How to Make Each Round of Testing Count?
 
Model View Presenter For Android
Model View Presenter For AndroidModel View Presenter For Android
Model View Presenter For Android
 

Kürzlich hochgeladen

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 

Kürzlich hochgeladen (20)

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 

iOS Design and Coding Practices_InnovationM

  • 1. | Build a Mobile Experience www.innovationm.com iOS - Best Architecture, Design and Coding Practices Corporate Office: InnovationM Mobile Technologies E-3 (Ground Floor), Sector-3, Noida 201301 (India) t: +91 8447 227337 | e: info@innovationm.com
  • 2. | Build a Mobile Experience www.innovationm.com iOS – Best Architecture, Design and Coding Practices We have identified some of the best practices that we need to follow while working on architecture, design and development of iOS applications. We will keep on adding more and more to it. Stay tuned… Best Coding Practices Image files naming convention There are four types of devices that we need to support while developing iOS Application. These are: 1. iPhone (Non-Retina) 2. iPhone (Retina) 3. iPad (Non-Retina) 4. iPad (Retina) Naming convention: Image is username.png. There are 4 images created for supporting 4 types of devices. Here is the naming convention: iPhone: username~iphone.png (Non-Retina) username@2x~iphone.png (Retina) iPad: username~ipad.png (Non-Retina) username@2x~ipad.png (Retina) How to refer them in the code and storyboard Corporate Office: InnovationM Mobile Technologies E-3 (Ground Floor), Sector-3, Noida 201301 (India) t: +91 8447 227337 | e: info@innovationm.com
  • 3. | Build a Mobile Experience www.innovationm.com Referring this image in the code: [UIImage imageNamed:@"username"]; Referring this image in the storyboard: iPhone storyboard: <imageView userInteractionEnabled=”NO” contentMode=”scaleAspectFit” horizontalHuggingPriority=”251″ verticalHuggingPriority=”251″ image= “username.png” translatesAutoresizingMaskIntoConstraints=”NO” id=”4d0-HY-bjJ”> <rect key=”frame” x=”11″ y=”14″ width=”23″ height=”23″/> <autoresizingMask key=”autoresizingMask” widthSizable=”YES” heightSizable=”YES”/> <constraints> <constraint firstAttribute=”height” constant=”23″ id=”M1s-uZ-vgv”/> <constraint firstAttribute=”width” constant=”23″ id=”lrU-RP-6NN”/> </constraints> </imageView> iPad storyboard: <imageView userInteractionEnabled=”NO” contentMode=”scaleAspectFit” horizontalHuggingPriority=”251″ verticalHuggingPriority=”251″ image= “username.png” translatesAutoresizingMaskIntoConstraints=”NO” id=”4d0-HY-bjJ”> <rect key=”frame” x=”11″ y=”13″ width=”25″ height=”25″/> <autoresizingMask key=”autoresizingMask” widthSizable=”YES” heightSizable=”YES”/> <constraints> <constraint firstAttribute=”width” constant=”25″ id=”NeQ-Pc-jIn”/> <constraint firstAttribute=”height” constant=”25″ id=”v7K-G6-sTx”/> </constraints> </imageView> Benefits: 1. When you run the app then OS will pick-up the right image for non-retina / retina device and also for iPhone and iPad. 2. Ease of managing the images. Source: http://blogs.innovationm.com/ios-best-architecture-design-and-coding-practices/ Corporate Office: InnovationM Mobile Technologies E-3 (Ground Floor), Sector-3, Noida 201301 (India) t: +91 8447 227337 | e: info@innovationm.com