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
Swift Weekly 2017-03-07
Search
Johnlin
March 07, 2017
Programming
140
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Swift Weekly 2017-03-07
Johnlin
March 07, 2017
More Decks by Johnlin
See All by Johnlin
用 MLIR 實作 一個 Ruby IR (intermediate representation)
johnlinvc
0
330
Unearth Ruby builtin Gems 發掘 Ruby 的內建 Gems
johnlinvc
0
420
Ruby 型別檢查工具簡介
johnlinvc
0
630
Swift Actor 實作探索
johnlinvc
0
210
用 mruby 來寫跨平台工具
johnlinvc
0
130
Actor model 簡介
johnlinvc
0
240
一起玩 Helm 3
johnlinvc
1
160
為什麼 App 卡卡的
johnlinvc
2
1.3k
如何使用 byebug 來除錯 Ruby 程式
johnlinvc
0
280
Other Decks in Programming
See All in Programming
新卒PdEのリアル
ryu1013
1
270
AIと壁打ちしながら進めるコスト管理
fufuhu
2
1.9k
AIを上手に使っていこうとしたら越境せざるを得なくなった話 〜実践1年で見えた境界を越えなければならない理由と進め方〜 / Crossing borders with AI
tomoyakitaura
2
990
Foundry Localでエージェント開発
seosoft
0
120
T3DD26: From RAGs to Riches
martinhelmich
0
140
Press start. Python's next generation.
willingc
PRO
3
300
20260828_品質と開発生産性を両立させる、AI時代のE2Eテストの考え方
magicpod
0
130
ハーネス設計入門 〜プロンプト、コンテキストの次〜
kinopeee
53
34k
思考垂れ流し開発 ~音声入力 × AIエージェント × 開発ハーネスによる試行錯誤~
npostring
0
810
MySQLとPostgreSQLって何が違うの?
akagami
PRO
0
160
ソフトウェアエンジニアにとっての生成AI - 特性を知って使い倒す / generative ai for software enginner
kishida
7
2.3k
Seeing Through Serverless: Observability for AWS Lambda with ADOT and CloudWatch Application Signals
seike460
PRO
1
110
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
67k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
Building the Perfect Custom Keyboard
takai
2
860
Amusing Abliteration
ianozsvald
1
280
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
320
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
700
ラッコキーワード サービス紹介資料
rakko
1
4.7M
Producing Creativity
orderedlist
PRO
348
41k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Building Applications with DynamoDB
mza
96
7.2k
Transcript
Swift पใ 2017/03/07 John Lin @johnlinvc
From the core • swift-evolution swift-users ။ඃኺ mailing list
ൖ ౸ Discourse ஃ • Swift 4 ։࢝ୈೋ֊։ᚙ • Swift 4 తᚙྲྀఔቮެ։
swift-evolution swift-users ။ඃ ኺ mailing list ൖ౸ Discourse ஃ
• ༻ஃൺֱཧ፺ਘɻ • ။อཹemailࣜɼDiscourse ՄҎ༻ email ᚙจ ճจ
Swift 4 ։࢝ୈೋ֊։ᚙ • ቮៃୡఔࣜᛰԼ૬༰ • ABI ᜦఆཹ౸Ҏޙ࠶၏ • ։࢝၏Ҏલ㘸ཁ၏ୠؐᔒ၏త
Swift 4 ։࢝ୈೋ֊։ᚙ • ߋత String ʢඪੋ㐝ഊ Perl) • Integer
Protocol • ڧԽ Collection • ڧԽ Genericʢᔟܕʣ
Swift 4 తᚙྲྀఔቮެ։ • Swift 4 Լࢧԉ Swift 3.1 ఔࣜᛰ
• Swift 4 ՄҎ༻ Swift 3 త Package • ༬ܭ 2017 ळఱᚙ
Evolution • SE-0151 ݅ཧثࢦఆSwift ൛ຊ • SE-0152 ݅ࢦఆ݅ཧث൛ຊ • SE-0153
႔ཧ @NSCopying తෆҰகߦҝ • SE-0154 ሡ Dictionary త Keys Values վಛ త Collection
SE-0151 ݅ཧثࢦఆSwift ൛ຊ • ՄҎࡏPackage.swift ཫఆٛࢧԉత Swift ൛ຊɻ • ᔒሜతब݅ཧثੋ䬟Ұ൛ɻ
SE-0152 ݅ࢦఆ݅ཧث൛ ຊ • ༻ swift package tools-version --set <value>
ိઃఆ package త tools ൛ຊɼՄҎࡏ Package.swift ࠷ ্໘ଧ //swift-tools-version: 3.0.0 • ᔒઃత༬ઃ 3.0.0 • ။Լ૬༰ • Өڹ Package.swift ՄҎࢧԉత֨ࣜ
SE-0152 ݅ࢦఆ݅ཧث൛ ຊ
SE-0153 ႔ཧ @NSCopying త ෆҰகߦҝ • @NSCopy త Attribute ጯ֘။ሣ݅၏
deep copyɼ 㗞ੜ৽త݅ɻ • Swift ᔒ㭎๏खಈࢦఆཁ༻ Attribute ؐੋ iVarɻ • ኺObj-c ትိత׳ྫੋࡏ init ཫ༻ iVarɼଖଞํ ༻ Attributeɻ • ॴҎࡏ init ཫ႔ཧ NSCopy త౦။ᆦᎃ
SE-0153 ႔ཧ @NSCopying త ෆҰகߦҝ class Person : NSObject, NSCopying
{ var name:String var job:String init(name:String, job:String) { self.name=name self.job=job } func copy(with zone: NSZone? = nil) -> Any { let clone = Person.init(name: name, job: job) return clone } }
SE-0153 ႔ཧ @NSCopying త ෆҰகߦҝ class Pet { @NSCopying var
owner: Person init(owner:Person) { self.owner=owner } }
SE-0153 ႔ཧ @NSCopying త ෆҰகߦҝ
SE-0153 ႔ཧ @NSCopying త ෆҰகߦҝ • ಁա compiler త ∍ຐ๏ɼՌ
attribute ੋ @NSCopying ɼ बෆ༻ivar վ༻ attribute
SE-0154 ሡ Dictionary త Keys Values վಛత Collection •
ݱࡏཁፙಛఆత key ຫɻ • আඇ༻ಛఆతሜ๏࠽။շɻ • վಛ collection ޙ။Ұᒬշ
Community • ༗ਓ༻ Swift ሜྃҰݸ Swiftenv https://github.com/ mominul/swiftup