SlideShare a Scribd company logo
1 of 70
Download to read offline
2 0 1 8 / 5 / 2 7
J u n T a k a h a s h i
<Swift > Swift vol31
P A G E 2
P A G E 3
@taka_jun1983 jun19831009
㊗
P A G E 4
P A G E 5
P A G E 6
P A G E 7
P A G E 8
P A G E 9
P A G E 10P A G E 10
P A G E 11P A G E 11
P A G E 12P A G E 12
!" " "
P A G E 13P A G E 13
P A G E 14P A G E 14
P A G E 15P A G E 15
P A G E 16
P A G E 17P A G E 17
P A G E 18
P A G E 19P A G E 19
P A G E 20P A G E 20
P A G E 21
View Controller
Presenter
UseCase
Model
P A G E 22P A G E 22
P A G E 23P A G E 23
P A G E 24
P A G E 25
Prott
1VC1StoryBoard1 1StoryBoard
StoryBoard 1VC1StoryBoard
P A G E 26P A G E 26
P A G E 27P A G E 27
P A G E 28
https://github.com/MengTo/Spring
P A G E 29
https://github.com/xmartlabs/Eureka
P A G E 30
https://github.com/SwipeCellKit/SwipeCellKit
P A G E 31
https://github.com/marcosgriselli/ViewAnimator
P A G E 32
https://github.com/airbnb/lottie-ios
P A G E 33
https://github.com/MessageKit/MessageKit
P A G E 34
https://github.com/ArtSabintsev/Siren/
P A G E 35
https://github.com/dzenbot/DZNEmptyDataSet
P A G E 36
https://github.com/cwRichardKim/RKNotificationHub
P A G E 37
https://github.com/ninjaprox/NVActivityIndicatorView
P A G E 38
https://github.com/mac-cain13/R.swift
P A G E 39P A G E 39
P A G E 40
Jun Takahashi
THANKS FOR YOUR
ATTENTION
P A G E 41P A G E 41
P A G E 42P A G E 42
P A G E 43
https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html
https://developer.apple.com/library/content/documentation/Gen
eral/Conceptual/CocoaEncyclopedia/Model-View-
Controller/Model-View-Controller.html
https://dzone.com/articles/an-overview-of-
architectural-design-patterns-for-i
P A G E 44
View
Controller
Presenter UseCase
Model
Repository DataStore
EntityTranslater
P A G E 45P A G E 45
P A G E 46P A G E 46
https://peaks.cc/iOS_architecture
P A G E 47P A G E 47
P A G E 48
View
Controller
Presenter UseCase
Model
Repository DataStore
EntityTranslater
P A G E 49
View
Controller
Presenter UseCase
Model
P A G E 50P A G E 50
P A G E 51
View
Controller
Presenter UseCase
Model
P A G E 52
View Controller
Presenter
UseCase
Model
P A G E 53
View
Controller
Presenter
Presenter
P A G E 54
View
Controller
Presenter
P A G E 55
Presenter
UseCase
UseCase
Presenter
P A G E 56
UseCase
…
P A G E 57
UseCase
P A G E 58
Model
UseCase
DB
Presenter
P A G E 59
Model
UseCase
P A G E 60
UseCase
P A G E 61
View
Controller
Presenter
UseCase
P A G E 62P A G E 62
P A G E 63P A G E 63
View Controller
ViewWillAppear
Presenter
P A G E 64P A G E 64
hoge
UseCase
Presenter
P A G E 65P A G E 65
DB
Model
UseCase
P A G E 66P A G E 66
Model
P A G E 67P A G E 67
UseCase
P A G E 68P A G E 68
UseCase
Presenter
P A G E 69P A G E 69
ViewController
UIKit
user
fuga
P A G E 70P A G E 70

More Related Content

What's hot

TYPO3 Contribution for beginners
TYPO3 Contribution for beginnersTYPO3 Contribution for beginners
TYPO3 Contribution for beginnersFrank Nägler
 
Git grep cpan
Git grep cpanGit grep cpan
Git grep cpancPanel
 
A practical 30m intro to Git vcs
A practical 30m intro to Git vcsA practical 30m intro to Git vcs
A practical 30m intro to Git vcsOlivier Garcia
 
#3 - Git - Branching e Merging
#3 - Git - Branching e Merging#3 - Git - Branching e Merging
#3 - Git - Branching e MergingRodrigo Branas
 
Git tutorial for CS320 Students
Git tutorial for CS320 StudentsGit tutorial for CS320 Students
Git tutorial for CS320 Studentsmuratkrty
 
Q4.11: Toolchain Process
Q4.11: Toolchain ProcessQ4.11: Toolchain Process
Q4.11: Toolchain ProcessLinaro
 
PGXユーザ勉強会#12 G2GML開発進捗
PGXユーザ勉強会#12  G2GML開発進捗PGXユーザ勉強会#12  G2GML開発進捗
PGXユーザ勉強会#12 G2GML開発進捗Shota Matsumoto
 
JAZOON'13 - Andres Almiray - Rocket Propelled Java
JAZOON'13 - Andres Almiray - Rocket Propelled JavaJAZOON'13 - Andres Almiray - Rocket Propelled Java
JAZOON'13 - Andres Almiray - Rocket Propelled Javajazoon13
 
Understanding pseudoversion- GolangDC
Understanding pseudoversion- GolangDCUnderstanding pseudoversion- GolangDC
Understanding pseudoversion- GolangDCMitali Bisht
 
Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) :: 한국 카오스엔지니어링 밋업
Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) ::  한국 카오스엔지니어링 밋업Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) ::  한국 카오스엔지니어링 밋업
Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) :: 한국 카오스엔지니어링 밋업Channy Yun
 

What's hot (11)

TYPO3 Contribution for beginners
TYPO3 Contribution for beginnersTYPO3 Contribution for beginners
TYPO3 Contribution for beginners
 
Git grep cpan
Git grep cpanGit grep cpan
Git grep cpan
 
A practical 30m intro to Git vcs
A practical 30m intro to Git vcsA practical 30m intro to Git vcs
A practical 30m intro to Git vcs
 
#3 - Git - Branching e Merging
#3 - Git - Branching e Merging#3 - Git - Branching e Merging
#3 - Git - Branching e Merging
 
Git tutorial for CS320 Students
Git tutorial for CS320 StudentsGit tutorial for CS320 Students
Git tutorial for CS320 Students
 
Q4.11: Toolchain Process
Q4.11: Toolchain ProcessQ4.11: Toolchain Process
Q4.11: Toolchain Process
 
PGXユーザ勉強会#12 G2GML開発進捗
PGXユーザ勉強会#12  G2GML開発進捗PGXユーザ勉強会#12  G2GML開発進捗
PGXユーザ勉強会#12 G2GML開発進捗
 
JAZOON'13 - Andres Almiray - Rocket Propelled Java
JAZOON'13 - Andres Almiray - Rocket Propelled JavaJAZOON'13 - Andres Almiray - Rocket Propelled Java
JAZOON'13 - Andres Almiray - Rocket Propelled Java
 
Introduction to Git (Greg Lonnon)
Introduction to Git (Greg Lonnon)Introduction to Git (Greg Lonnon)
Introduction to Git (Greg Lonnon)
 
Understanding pseudoversion- GolangDC
Understanding pseudoversion- GolangDCUnderstanding pseudoversion- GolangDC
Understanding pseudoversion- GolangDC
 
Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) :: 한국 카오스엔지니어링 밋업
Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) ::  한국 카오스엔지니어링 밋업Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) ::  한국 카오스엔지니어링 밋업
Game Day in Action for Chaos Engineering - 윤석찬 (AWS 테크에반젤리스트) :: 한국 카오스엔지니어링 밋업
 

Similar to 初心者が半年間iOS開発をして思ったことなど

Developing Apps With React Native
Developing Apps With React NativeDeveloping Apps With React Native
Developing Apps With React NativeAlvaro Viebrantz
 
Poetic Dream - Deep Learning Maker Portfolio (Harvard REA Version)
Poetic Dream - Deep Learning Maker Portfolio (Harvard REA Version)Poetic Dream - Deep Learning Maker Portfolio (Harvard REA Version)
Poetic Dream - Deep Learning Maker Portfolio (Harvard REA Version)Kevin (Yu-Teng) Li
 
Functional IoT: Hardware and Platform
Functional IoT: Hardware and PlatformFunctional IoT: Hardware and Platform
Functional IoT: Hardware and PlatformKiwamu Okabe
 
Emacs verilog-mode is coming to Debian, again
Emacs verilog-mode is coming to Debian, againEmacs verilog-mode is coming to Debian, again
Emacs verilog-mode is coming to Debian, againKiwamu Okabe
 
[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby
[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby
[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・MobyAkihiro Suda
 
Edge trends mizuno-template
Edge trends mizuno-templateEdge trends mizuno-template
Edge trends mizuno-templateshintaro mizuno
 
Openlaw - A Project of Alphalaw
Openlaw - A Project of AlphalawOpenlaw - A Project of Alphalaw
Openlaw - A Project of AlphalawSunghyun Kim
 
讓程式展現樂趣-玩出實驗精神與創造力 - PythonEdition
讓程式展現樂趣-玩出實驗精神與創造力 - PythonEdition讓程式展現樂趣-玩出實驗精神與創造力 - PythonEdition
讓程式展現樂趣-玩出實驗精神與創造力 - PythonEditionJustin Lin
 
Metasepi team meeting #20: Start! ATS programming on MCU
Metasepi team meeting #20: Start! ATS programming on MCUMetasepi team meeting #20: Start! ATS programming on MCU
Metasepi team meeting #20: Start! ATS programming on MCUKiwamu Okabe
 
Everything you didn't know you needed
Everything you didn't know you neededEverything you didn't know you needed
Everything you didn't know you neededHenry Schreiner
 
UIT#4 ページ遷移Animation & Skeleton screen をWebViewアプリに実装した体験談
UIT#4 ページ遷移Animation & Skeleton screen  をWebViewアプリに実装した体験談UIT#4 ページ遷移Animation & Skeleton screen  をWebViewアプリに実装した体験談
UIT#4 ページ遷移Animation & Skeleton screen をWebViewアプリに実装した体験談Shoyo Kyou
 
【ECCV 2018】Audio-Visual Event Localization in Unconstrained Videos
【ECCV 2018】Audio-Visual Event Localization in Unconstrained Videos【ECCV 2018】Audio-Visual Event Localization in Unconstrained Videos
【ECCV 2018】Audio-Visual Event Localization in Unconstrained Videoscvpaper. challenge
 
Model Serving via Pulsar Functions
Model Serving via Pulsar FunctionsModel Serving via Pulsar Functions
Model Serving via Pulsar FunctionsArun Kejariwal
 
SPARQLでG空間アプリハンズオン
SPARQLでG空間アプリハンズオンSPARQLでG空間アプリハンズオン
SPARQLでG空間アプリハンズオンHackCamp_Shihori
 
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016崇之 清水
 

Similar to 初心者が半年間iOS開発をして思ったことなど (20)

Graalvm with Groovy and Kotlin - Madrid GUG 2019
Graalvm with Groovy and Kotlin - Madrid GUG 2019Graalvm with Groovy and Kotlin - Madrid GUG 2019
Graalvm with Groovy and Kotlin - Madrid GUG 2019
 
Developing Apps With React Native
Developing Apps With React NativeDeveloping Apps With React Native
Developing Apps With React Native
 
Graalvm with Groovy and Kotlin - Greach 2019
Graalvm with Groovy and Kotlin - Greach 2019Graalvm with Groovy and Kotlin - Greach 2019
Graalvm with Groovy and Kotlin - Greach 2019
 
Poetic Dream - Deep Learning Maker Portfolio (Harvard REA Version)
Poetic Dream - Deep Learning Maker Portfolio (Harvard REA Version)Poetic Dream - Deep Learning Maker Portfolio (Harvard REA Version)
Poetic Dream - Deep Learning Maker Portfolio (Harvard REA Version)
 
Functional IoT: Hardware and Platform
Functional IoT: Hardware and PlatformFunctional IoT: Hardware and Platform
Functional IoT: Hardware and Platform
 
Emacs verilog-mode is coming to Debian, again
Emacs verilog-mode is coming to Debian, againEmacs verilog-mode is coming to Debian, again
Emacs verilog-mode is coming to Debian, again
 
[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby
[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby
[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby
 
Copy of GDSC Hacktober.pptx
Copy of GDSC Hacktober.pptxCopy of GDSC Hacktober.pptx
Copy of GDSC Hacktober.pptx
 
Edge trends mizuno-template
Edge trends mizuno-templateEdge trends mizuno-template
Edge trends mizuno-template
 
Openlaw - A Project of Alphalaw
Openlaw - A Project of AlphalawOpenlaw - A Project of Alphalaw
Openlaw - A Project of Alphalaw
 
讓程式展現樂趣-玩出實驗精神與創造力 - PythonEdition
讓程式展現樂趣-玩出實驗精神與創造力 - PythonEdition讓程式展現樂趣-玩出實驗精神與創造力 - PythonEdition
讓程式展現樂趣-玩出實驗精神與創造力 - PythonEdition
 
Metasepi team meeting #20: Start! ATS programming on MCU
Metasepi team meeting #20: Start! ATS programming on MCUMetasepi team meeting #20: Start! ATS programming on MCU
Metasepi team meeting #20: Start! ATS programming on MCU
 
Everything you didn't know you needed
Everything you didn't know you neededEverything you didn't know you needed
Everything you didn't know you needed
 
UIT#4 ページ遷移Animation & Skeleton screen をWebViewアプリに実装した体験談
UIT#4 ページ遷移Animation & Skeleton screen  をWebViewアプリに実装した体験談UIT#4 ページ遷移Animation & Skeleton screen  をWebViewアプリに実装した体験談
UIT#4 ページ遷移Animation & Skeleton screen をWebViewアプリに実装した体験談
 
【ECCV 2018】Audio-Visual Event Localization in Unconstrained Videos
【ECCV 2018】Audio-Visual Event Localization in Unconstrained Videos【ECCV 2018】Audio-Visual Event Localization in Unconstrained Videos
【ECCV 2018】Audio-Visual Event Localization in Unconstrained Videos
 
Model Serving via Pulsar Functions
Model Serving via Pulsar FunctionsModel Serving via Pulsar Functions
Model Serving via Pulsar Functions
 
Edge trends mizuno
Edge trends mizunoEdge trends mizuno
Edge trends mizuno
 
SPARQLでG空間アプリハンズオン
SPARQLでG空間アプリハンズオンSPARQLでG空間アプリハンズオン
SPARQLでG空間アプリハンズオン
 
Angboard
AngboardAngboard
Angboard
 
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016
 

Recently uploaded

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
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
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
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
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
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 

Recently uploaded (20)

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
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
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
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
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
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 

初心者が半年間iOS開発をして思ったことなど

  • 1. 2 0 1 8 / 5 / 2 7 J u n T a k a h a s h i <Swift > Swift vol31
  • 2. P A G E 2
  • 3. P A G E 3 @taka_jun1983 jun19831009 ㊗
  • 4. P A G E 4
  • 5. P A G E 5
  • 6. P A G E 6
  • 7. P A G E 7
  • 8. P A G E 8
  • 9. P A G E 9
  • 10. P A G E 10P A G E 10
  • 11. P A G E 11P A G E 11
  • 12. P A G E 12P A G E 12 !" " "
  • 13. P A G E 13P A G E 13
  • 14. P A G E 14P A G E 14
  • 15. P A G E 15P A G E 15
  • 16. P A G E 16
  • 17. P A G E 17P A G E 17
  • 18. P A G E 18
  • 19. P A G E 19P A G E 19
  • 20. P A G E 20P A G E 20
  • 21. P A G E 21 View Controller Presenter UseCase Model
  • 22. P A G E 22P A G E 22
  • 23. P A G E 23P A G E 23
  • 24. P A G E 24
  • 25. P A G E 25 Prott 1VC1StoryBoard1 1StoryBoard StoryBoard 1VC1StoryBoard
  • 26. P A G E 26P A G E 26
  • 27. P A G E 27P A G E 27
  • 28. P A G E 28 https://github.com/MengTo/Spring
  • 29. P A G E 29 https://github.com/xmartlabs/Eureka
  • 30. P A G E 30 https://github.com/SwipeCellKit/SwipeCellKit
  • 31. P A G E 31 https://github.com/marcosgriselli/ViewAnimator
  • 32. P A G E 32 https://github.com/airbnb/lottie-ios
  • 33. P A G E 33 https://github.com/MessageKit/MessageKit
  • 34. P A G E 34 https://github.com/ArtSabintsev/Siren/
  • 35. P A G E 35 https://github.com/dzenbot/DZNEmptyDataSet
  • 36. P A G E 36 https://github.com/cwRichardKim/RKNotificationHub
  • 37. P A G E 37 https://github.com/ninjaprox/NVActivityIndicatorView
  • 38. P A G E 38 https://github.com/mac-cain13/R.swift
  • 39. P A G E 39P A G E 39
  • 40. P A G E 40 Jun Takahashi THANKS FOR YOUR ATTENTION
  • 41. P A G E 41P A G E 41
  • 42. P A G E 42P A G E 42
  • 43. P A G E 43 https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html https://developer.apple.com/library/content/documentation/Gen eral/Conceptual/CocoaEncyclopedia/Model-View- Controller/Model-View-Controller.html https://dzone.com/articles/an-overview-of- architectural-design-patterns-for-i
  • 44. P A G E 44 View Controller Presenter UseCase Model Repository DataStore EntityTranslater
  • 45. P A G E 45P A G E 45
  • 46. P A G E 46P A G E 46 https://peaks.cc/iOS_architecture
  • 47. P A G E 47P A G E 47
  • 48. P A G E 48 View Controller Presenter UseCase Model Repository DataStore EntityTranslater
  • 49. P A G E 49 View Controller Presenter UseCase Model
  • 50. P A G E 50P A G E 50
  • 51. P A G E 51 View Controller Presenter UseCase Model
  • 52. P A G E 52 View Controller Presenter UseCase Model
  • 53. P A G E 53 View Controller Presenter Presenter
  • 54. P A G E 54 View Controller Presenter
  • 55. P A G E 55 Presenter UseCase UseCase Presenter
  • 56. P A G E 56 UseCase …
  • 57. P A G E 57 UseCase
  • 58. P A G E 58 Model UseCase DB Presenter
  • 59. P A G E 59 Model UseCase
  • 60. P A G E 60 UseCase
  • 61. P A G E 61 View Controller Presenter UseCase
  • 62. P A G E 62P A G E 62
  • 63. P A G E 63P A G E 63 View Controller ViewWillAppear Presenter
  • 64. P A G E 64P A G E 64 hoge UseCase Presenter
  • 65. P A G E 65P A G E 65 DB Model UseCase
  • 66. P A G E 66P A G E 66 Model
  • 67. P A G E 67P A G E 67 UseCase
  • 68. P A G E 68P A G E 68 UseCase Presenter
  • 69. P A G E 69P A G E 69 ViewController UIKit user fuga
  • 70. P A G E 70P A G E 70