SlideShare ist ein Scribd-Unternehmen logo
1 von 57
Downloaden Sie, um offline zu lesen
Basics&of&Computer&Science
Maxim&Zaks
@iceX33
Things'I'learned'on'the'job,'a3er'my'CS'degree
Computer)Science)is:
Shoveling*Data*Around
Things'I'learned'on'the'job,'a3er'my'CS'degree
Computer)Science)is:
Consuming)Electricity
Things'I'learned'on'the'job,'a3er'my'CS'degree
Fast%code%produces%less%Data
Things'I'learned'on'the'job,'a3er'my'CS'degree
Things'I'learned'on'the'job,'a3er'my'CS'degree
How$do$we$represent$data$in$Swi/?
Things'I'learned'on'the'job,'a3er'my'CS'degree
By#Value:
Tuple,'Struct'or'Enum
By#Reference:
Class,&Func+on
Things'I'learned'on'the'job,'a3er'my'CS'degree
Value&Types&are&not&sharable!
Things'I'learned'on'the'job,'a3er'my'CS'degree
Taking'a'car'for'a'drive
Things'I'learned'on'the'job,'a3er'my'CS'degree
Value&types&are&cheaper&to&create
Things'I'learned'on'the'job,'a3er'my'CS'degree
typealias TPerson = (name:String, age:Int, male:Bool)
+-----------------------------------------+--------------------------------------------------+
struct SPerson{ | class CPerson{
let name : String | let name : String
let age : Int | let age : Int
let male : Bool | let male : Bool
} |
| init(name : String, age : Int, male : Bool){
+-----------------------------------------+ self.name = name
enum EPerson { | self.age = age
case Male(name: String, age : Int) | self.male = male
case Female(name : String, age : Int) | }
| }
func name()->String{ |
switch self { |
case let Male(name, _): |
return name |
case let Female(name, _): |
return name |
} |
} |
} +
Things'I'learned'on'the'job,'a3er'my'CS'degree
Benchmark*in*ms
• 000.00786781311035156*Tuple*10M
• 000.00405311584472656*Enum*10M
• 000.003814697265625*Struct*10M
• 813.668251037598*Class*10M
Things'I'learned'on'the'job,'a3er'my'CS'degree
How$do$we$represent$a$collec/on$of$
data?
Things'I'learned'on'the'job,'a3er'my'CS'degree
Data$Structures
Things'I'learned'on'the'job,'a3er'my'CS'degree
Reference'or'Array'Based
Things'I'learned'on'the'job,'a3er'my'CS'degree
Performance*Characteris0cs
• Add$(Prepand$/$Append$/$Insert)
• Get$(First$/$Last$/$ByIndex$/$ByValue)
• Find$(Biggest$/$Smallest)$
• Delete$(ByIndex$/$ByValue)
• Concatenate
Things'I'learned'on'the'job,'a3er'my'CS'degree
Swi$%Data%Structures
Array,&Dic*onary,&Set,&String
All#defined#as#Struct
Things'I'learned'on'the'job,'a3er'my'CS'degree
Once%upon%a%*me,%(before%Swi4%2)
I"decided"to"implement"my"own"List
Things'I'learned'on'the'job,'a3er'my'CS'degree
+-----------------------------------+-------------------------------------------------------------+
|
private protocol List{ | public struct ListNode<T> : List {
var tail : List {get} | public let value : T
} | private let _tail : List
+-----------------------------------+ private var tail : List {
| return _tail
private struct EmptyList : List{ | }
var tail : List { |
return EmptyList() | private init(value: T, tail : List){
} | self.value = value
} | self._tail = tail
| }
|
| public subscript(var index : UInt) -> ListNode<T>?{
+-----------------------------------+ var result : List = self
| while(index>0){
| result = result.tail
| index--
infix operator => { | }
associativity right | return result as? ListNode<T>
precedence 150 | }
} |
| }
+-----------------------------------+-------------------------------------------------------------+
public func => <T>(lhs: T, rhs: ListNode<T>?) -> ListNode<T> {
if let node = rhs {
return ListNode(value: lhs, tail: node)
}
return ListNode(value: lhs, tail: EmptyList())
}
Things'I'learned'on'the'job,'a3er'my'CS'degree
Benchmark*in*ms
• 208.853006362915+List+1K
• 000.30207633972168+BoxEList+1K
• 000.0660419464111328+ClassList+1K
• 000.0400543212890625+EEList+1K
• 000.0429153442382812+Array+1K
Things'I'learned'on'the'job,'a3er'my'CS'degree
WTF$happened?
Things'I'learned'on'the'job,'a3er'my'CS'degree
Let's&talk&about&Pure&Func2onal&
Programming
Things'I'learned'on'the'job,'a3er'my'CS'degree
Things'I'learned'on'the'job,'a3er'my'CS'degree
Purely'Func+onal'Data'Structure:
No#Destruc+ve#updates
Persistent((not(ephemeral)
Things'I'learned'on'the'job,'a3er'my'CS'degree
Why$is$it$important?
Things'I'learned'on'the'job,'a3er'my'CS'degree
Referen&al)transparency
Things'I'learned'on'the'job,'a3er'my'CS'degree
An#expression#always#evaluates#to#the#same#
result#in#any#context:
2"+"3
array.count
Things'I'learned'on'the'job,'a3er'my'CS'degree
Purely'Func+onal'Data'Structure:
No#Destruc+ve#updates
Persistent((not(ephemeral)
Things'I'learned'on'the'job,'a3er'my'CS'degree
But$our$hardware$memory$is$
destruc1ve$and$ephemeral
(Physics)
Things'I'learned'on'the'job,'a3er'my'CS'degree
Things'I'learned'on'the'job,'a3er'my'CS'degree
Structural(Sharing
Things'I'learned'on'the'job,'a3er'my'CS'degree
Things'I'learned'on'the'job,'a3er'my'CS'degree
Swi$
Reference'vs.'Value'Type
Things'I'learned'on'the'job,'a3er'my'CS'degree
Value&Type&are&not&sharable!
So#no#structural#sharing#is#posible
Things'I'learned'on'the'job,'a3er'my'CS'degree
Benchmark*in*ms
• 208.853006362915+List+1K
• 000.30207633972168+BoxEList+1K
• 000.0660419464111328+ClassList+1K
• 000.0400543212890625+EEList+1K
• 000.0429153442382812+Array+1K
Things'I'learned'on'the'job,'a3er'my'CS'degree
enum EEList<Element> {
case End
indirect case Node(Element, next: EEList<Element>)
var value: Element? {
switch self {
case let Node(x, _):
return x
case End:
return nil
}
}
}
extension EEList {
func cons(x: Element) -> EEList {
return .Node(x, next: self)
}
}
Things'I'learned'on'the'job,'a3er'my'CS'degree
Why$are$Swi+$data$structures$
defined$as$structs?
Things'I'learned'on'the'job,'a3er'my'CS'degree
Swi$%data%structure%types%are%
facades%which%support
No#Destruc+ve#updates
Persistent((not(ephemeral)
Things'I'learned'on'the'job,'a3er'my'CS'degree
Is#there#(me#to#talk#about#
Singletons?
Things'I'learned'on'the'job,'a3er'my'CS'degree
Thank&you!
Things'I'learned'on'the'job,'a3er'my'CS'degree
Singleton)is)a)globaly)shared)
instance
Things'I'learned'on'the'job,'a3er'my'CS'degree
How$many$shared$instances$do$you$see$here?
private var fibRow = [0, 1, 2]
public func fibM(number:Int)->Int{
if number >= fibRow.count {
fibRow.append(fibM(number-2)+fibM(number-1))
}
return fibRow[number]
}
Things'I'learned'on'the'job,'a3er'my'CS'degree
Named&func+ons&are&shared&
instances
Things'I'learned'on'the'job,'a3er'my'CS'degree
Sharing(means(coupling
Things'I'learned'on'the'job,'a3er'my'CS'degree
Coupling)means
• Tough'to'test
• And'tough'to'reuse
The$problem$with$object0oriented$languages$is$they've$got$all$this$
implicit$environment$that$they$carry$around$with$them.$You$wanted$
a$banana$but$what$you$got$was$a$gorilla$holding$the$banana$and$the$
en<re$jungle.
—"Joe"Armstrong
Things'I'learned'on'the'job,'a3er'my'CS'degree
We#can#solve#the#coupling#problem#
by#abstract#type#defini7ons
Things'I'learned'on'the'job,'a3er'my'CS'degree
+----------------+ +----------------+
| | | |
| SomethingA +-------> | AbstractB |
| | | |
+----------------+ +-------+--------+
^
|
|
|
+-------+--------+
| |
| SomethingB |
| |
+----------------+
Things'I'learned'on'the'job,'a3er'my'CS'degree
What%about%shared%state?
Isn't&share&nothing
(self&sufficient).architecture.be3er?
Things'I'learned'on'the'job,'a3er'my'CS'degree
Shared'resources:
• Memory
• I/O
• Network
Things'I'learned'on'the'job,'a3er'my'CS'degree
Things'I'learned'on'the'job,'a3er'my'CS'degree
Not$that$bigger$problem$for
iOS/OSX&developers.
Things'I'learned'on'the'job,'a3er'my'CS'degree
Apple%takes%cares%of%it:
• default...
• shared...
• main...
Things'I'learned'on'the'job,'a3er'my'CS'degree
Be#aware#of#Amdahl's#law
The$speedup$of$a$program$using$mul2ple$processors$in$parallel$
compu2ng$is$limited$by$the$2me$needed$for$the$sequen2al$frac2on$
of$the$program.
—"Wikipedia
Things'I'learned'on'the'job,'a3er'my'CS'degree
Now$I$am$done$:)
Things'I'learned'on'the'job,'a3er'my'CS'degree
Ques%ons?
Things'I'learned'on'the'job,'a3er'my'CS'degree
Thank&you
Things'I'learned'on'the'job,'a3er'my'CS'degree
Links:
• PerformanceTest
• Fibonacci
• Fork2Join2illustra6on
• Linked2List2implementa6on2with2Swi=22Enum
• Pure2Func6onal2Data2Structures
Things'I'learned'on'the'job,'a3er'my'CS'degree

Weitere ähnliche Inhalte

Was ist angesagt?

Python workshop intro_string (1)
Python workshop intro_string (1)Python workshop intro_string (1)
Python workshop intro_string (1)
Karamjit Kaur
 

Was ist angesagt? (9)

Strings
StringsStrings
Strings
 
Lists
ListsLists
Lists
 
Analytics functions in mysql, oracle and hive
Analytics functions in mysql, oracle and hiveAnalytics functions in mysql, oracle and hive
Analytics functions in mysql, oracle and hive
 
R intro 20140716-advance
R intro 20140716-advanceR intro 20140716-advance
R intro 20140716-advance
 
PLOTCON NYC: Behind Every Great Plot There's a Great Deal of Wrangling
PLOTCON NYC: Behind Every Great Plot There's a Great Deal of WranglingPLOTCON NYC: Behind Every Great Plot There's a Great Deal of Wrangling
PLOTCON NYC: Behind Every Great Plot There's a Great Deal of Wrangling
 
Python workshop intro_string (1)
Python workshop intro_string (1)Python workshop intro_string (1)
Python workshop intro_string (1)
 
R part iii
R part iiiR part iii
R part iii
 
FNT 2015 PDIS CodeEU - Zanimljiva informatika - 02 Djordje Pavlovic - Live_ch...
FNT 2015 PDIS CodeEU - Zanimljiva informatika - 02 Djordje Pavlovic - Live_ch...FNT 2015 PDIS CodeEU - Zanimljiva informatika - 02 Djordje Pavlovic - Live_ch...
FNT 2015 PDIS CodeEU - Zanimljiva informatika - 02 Djordje Pavlovic - Live_ch...
 
Statistical computing 01
Statistical computing 01Statistical computing 01
Statistical computing 01
 

Andere mochten auch

Haru ocean lake
Haru ocean lakeHaru ocean lake
Haru ocean lake
adys_25
 
CSC Toronto 4 march 2013
CSC Toronto 4 march 2013CSC Toronto 4 march 2013
CSC Toronto 4 march 2013
Rick Huijbregts
 
Chapter 2 theoretical approaches to change and transformation
Chapter 2   theoretical approaches to change and transformationChapter 2   theoretical approaches to change and transformation
Chapter 2 theoretical approaches to change and transformation
BHUOnlineDepartment
 
Performance Arts Awards Graded Examinations in Street Dance | RSL
Performance Arts Awards Graded Examinations in Street Dance | RSLPerformance Arts Awards Graded Examinations in Street Dance | RSL
Performance Arts Awards Graded Examinations in Street Dance | RSL
Francesca Denton
 

Andere mochten auch (20)

SXSW GAW Miners - Session Visual Aides
SXSW GAW Miners - Session Visual AidesSXSW GAW Miners - Session Visual Aides
SXSW GAW Miners - Session Visual Aides
 
Hechos estructurales que afecten a la poblacion wayúu
Hechos estructurales que afecten a la poblacion wayúuHechos estructurales que afecten a la poblacion wayúu
Hechos estructurales que afecten a la poblacion wayúu
 
Grimpeurs et managers : en prise directe sur le risque
Grimpeurs et managers : en prise directe sur le risqueGrimpeurs et managers : en prise directe sur le risque
Grimpeurs et managers : en prise directe sur le risque
 
El bullying
El bullyingEl bullying
El bullying
 
Resolução 39/14 - Conarq: DIRETRIZES PARA A IMPLEMENTAÇÃO DE REPOSITÓRIOS D...
Resolução 39/14 - Conarq:   DIRETRIZES PARA A IMPLEMENTAÇÃO DE REPOSITÓRIOS D...Resolução 39/14 - Conarq:   DIRETRIZES PARA A IMPLEMENTAÇÃO DE REPOSITÓRIOS D...
Resolução 39/14 - Conarq: DIRETRIZES PARA A IMPLEMENTAÇÃO DE REPOSITÓRIOS D...
 
Haru ocean lake
Haru ocean lakeHaru ocean lake
Haru ocean lake
 
Clinical Trials and the Disney Effect
Clinical Trials and the Disney EffectClinical Trials and the Disney Effect
Clinical Trials and the Disney Effect
 
CSC Toronto 4 march 2013
CSC Toronto 4 march 2013CSC Toronto 4 march 2013
CSC Toronto 4 march 2013
 
Wind Turbine Case Study - June, 2014
Wind Turbine Case Study - June, 2014Wind Turbine Case Study - June, 2014
Wind Turbine Case Study - June, 2014
 
Newsletters : outil d'hier ou d'aujourd'hui
Newsletters : outil d'hier ou d'aujourd'huiNewsletters : outil d'hier ou d'aujourd'hui
Newsletters : outil d'hier ou d'aujourd'hui
 
Agilept
AgileptAgilept
Agilept
 
Grading survey results
Grading survey resultsGrading survey results
Grading survey results
 
How I Learned To Stop Worrying And Love Test Driven Development
How I Learned To Stop Worrying And Love Test Driven DevelopmentHow I Learned To Stop Worrying And Love Test Driven Development
How I Learned To Stop Worrying And Love Test Driven Development
 
Tango Quotes & Insights by TangoILONA 2012
Tango Quotes & Insights by TangoILONA 2012Tango Quotes & Insights by TangoILONA 2012
Tango Quotes & Insights by TangoILONA 2012
 
Commons & community economies: entry points to design for eco-social justice?
Commons & community economies: entry points to design for eco-social justice?Commons & community economies: entry points to design for eco-social justice?
Commons & community economies: entry points to design for eco-social justice?
 
Chapter 2 theoretical approaches to change and transformation
Chapter 2   theoretical approaches to change and transformationChapter 2   theoretical approaches to change and transformation
Chapter 2 theoretical approaches to change and transformation
 
معوقات النشر الدولي في البحوث الاجتماعيه الملف الاصلى بعد الاضافه 2
معوقات النشر  الدولي في البحوث  الاجتماعيه الملف  الاصلى بعد الاضافه 2معوقات النشر  الدولي في البحوث  الاجتماعيه الملف  الاصلى بعد الاضافه 2
معوقات النشر الدولي في البحوث الاجتماعيه الملف الاصلى بعد الاضافه 2
 
Boost Tour 1.50.0 All
Boost Tour 1.50.0 AllBoost Tour 1.50.0 All
Boost Tour 1.50.0 All
 
Guide du don d'organes 2015 de l'Agence de Biomédecine
Guide du don d'organes 2015 de l'Agence de BiomédecineGuide du don d'organes 2015 de l'Agence de Biomédecine
Guide du don d'organes 2015 de l'Agence de Biomédecine
 
Performance Arts Awards Graded Examinations in Street Dance | RSL
Performance Arts Awards Graded Examinations in Street Dance | RSLPerformance Arts Awards Graded Examinations in Street Dance | RSL
Performance Arts Awards Graded Examinations in Street Dance | RSL
 

Ähnlich wie Basics of Computer Science

Short Intro to PHP and MySQL
Short Intro to PHP and MySQLShort Intro to PHP and MySQL
Short Intro to PHP and MySQL
Jussi Pohjolainen
 
Please solve the TODO parts of the following probelm incl.pdf
Please solve the TODO parts of the following probelm  incl.pdfPlease solve the TODO parts of the following probelm  incl.pdf
Please solve the TODO parts of the following probelm incl.pdf
aggarwalopticalsco
 
Micro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicateMicro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicate
Kiev ALT.NET
 
Problem 1 Show the comparison of runtime of linear search and binar.pdf
Problem 1 Show the comparison of runtime of linear search and binar.pdfProblem 1 Show the comparison of runtime of linear search and binar.pdf
Problem 1 Show the comparison of runtime of linear search and binar.pdf
ebrahimbadushata00
 
C++ projectMachine Problem 7 - HashingWrite a program to do the .pdf
C++ projectMachine Problem 7 - HashingWrite a program to do the .pdfC++ projectMachine Problem 7 - HashingWrite a program to do the .pdf
C++ projectMachine Problem 7 - HashingWrite a program to do the .pdf
feelinggift
 
Refer to my progress on this assignment belowIn this problem you w.pdf
Refer to my progress on this assignment belowIn this problem you w.pdfRefer to my progress on this assignment belowIn this problem you w.pdf
Refer to my progress on this assignment belowIn this problem you w.pdf
arishmarketing21
 
Ruby Language - A quick tour
Ruby Language - A quick tourRuby Language - A quick tour
Ruby Language - A quick tour
aztack
 

Ähnlich wie Basics of Computer Science (20)

Beyond php - it's not (just) about the code
Beyond php - it's not (just) about the codeBeyond php - it's not (just) about the code
Beyond php - it's not (just) about the code
 
Beyond php - it's not (just) about the code
Beyond php - it's not (just) about the codeBeyond php - it's not (just) about the code
Beyond php - it's not (just) about the code
 
Short Intro to PHP and MySQL
Short Intro to PHP and MySQLShort Intro to PHP and MySQL
Short Intro to PHP and MySQL
 
Please solve the TODO parts of the following probelm incl.pdf
Please solve the TODO parts of the following probelm  incl.pdfPlease solve the TODO parts of the following probelm  incl.pdf
Please solve the TODO parts of the following probelm incl.pdf
 
Lean & Mean Tokyo Cabinet Recipes (with Lua) - FutureRuby '09
Lean & Mean Tokyo Cabinet Recipes (with Lua) - FutureRuby '09Lean & Mean Tokyo Cabinet Recipes (with Lua) - FutureRuby '09
Lean & Mean Tokyo Cabinet Recipes (with Lua) - FutureRuby '09
 
Web API Filtering - Challenges, Approaches, and a New Tool
Web API Filtering - Challenges, Approaches, and a New ToolWeb API Filtering - Challenges, Approaches, and a New Tool
Web API Filtering - Challenges, Approaches, and a New Tool
 
Beyond php - it's not (just) about the code
Beyond php - it's not (just) about the codeBeyond php - it's not (just) about the code
Beyond php - it's not (just) about the code
 
When to NoSQL and when to know SQL
When to NoSQL and when to know SQLWhen to NoSQL and when to know SQL
When to NoSQL and when to know SQL
 
A Map of the PyData Stack
A Map of the PyData StackA Map of the PyData Stack
A Map of the PyData Stack
 
Micro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicateMicro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicate
 
Problem 1 Show the comparison of runtime of linear search and binar.pdf
Problem 1 Show the comparison of runtime of linear search and binar.pdfProblem 1 Show the comparison of runtime of linear search and binar.pdf
Problem 1 Show the comparison of runtime of linear search and binar.pdf
 
Scala 2 + 2 > 4
Scala 2 + 2 > 4Scala 2 + 2 > 4
Scala 2 + 2 > 4
 
Beyond PHP - It's not (just) about the code
Beyond PHP - It's not (just) about the codeBeyond PHP - It's not (just) about the code
Beyond PHP - It's not (just) about the code
 
BGOUG15: JSON support in MySQL 5.7
BGOUG15: JSON support in MySQL 5.7BGOUG15: JSON support in MySQL 5.7
BGOUG15: JSON support in MySQL 5.7
 
C++ projectMachine Problem 7 - HashingWrite a program to do the .pdf
C++ projectMachine Problem 7 - HashingWrite a program to do the .pdfC++ projectMachine Problem 7 - HashingWrite a program to do the .pdf
C++ projectMachine Problem 7 - HashingWrite a program to do the .pdf
 
Refer to my progress on this assignment belowIn this problem you w.pdf
Refer to my progress on this assignment belowIn this problem you w.pdfRefer to my progress on this assignment belowIn this problem you w.pdf
Refer to my progress on this assignment belowIn this problem you w.pdf
 
Sql abstract from_query
Sql abstract from_querySql abstract from_query
Sql abstract from_query
 
Advanced Data Visualization in R- Somes Examples.
Advanced Data Visualization in R- Somes Examples.Advanced Data Visualization in R- Somes Examples.
Advanced Data Visualization in R- Somes Examples.
 
Arrays in C++
Arrays in C++Arrays in C++
Arrays in C++
 
Ruby Language - A quick tour
Ruby Language - A quick tourRuby Language - A quick tour
Ruby Language - A quick tour
 

Mehr von Maxim Zaks

Swift the implicit parts
Swift the implicit partsSwift the implicit parts
Swift the implicit parts
Maxim Zaks
 
96% macoun 2013
96% macoun 201396% macoun 2013
96% macoun 2013
Maxim Zaks
 
Diagnose of Agile @ Wooga 04.2013
Diagnose of Agile @ Wooga 04.2013Diagnose of Agile @ Wooga 04.2013
Diagnose of Agile @ Wooga 04.2013
Maxim Zaks
 
Start playing @ mobile.cologne 2013
Start playing @ mobile.cologne 2013Start playing @ mobile.cologne 2013
Start playing @ mobile.cologne 2013
Maxim Zaks
 
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
Maxim Zaks
 
Don&rsquo;t do Agile, be Agile @NSConf 2013
Don&rsquo;t do Agile, be Agile @NSConf 2013Don&rsquo;t do Agile, be Agile @NSConf 2013
Don&rsquo;t do Agile, be Agile @NSConf 2013
Maxim Zaks
 

Mehr von Maxim Zaks (20)

Entity Component System - a different approach to game and app development
Entity Component System - a different approach to game and app developmentEntity Component System - a different approach to game and app development
Entity Component System - a different approach to game and app development
 
Nitty Gritty of Data Serialisation
Nitty Gritty of Data SerialisationNitty Gritty of Data Serialisation
Nitty Gritty of Data Serialisation
 
Wind of change
Wind of changeWind of change
Wind of change
 
Data model mal anders
Data model mal andersData model mal anders
Data model mal anders
 
Talk Binary to Me
Talk Binary to MeTalk Binary to Me
Talk Binary to Me
 
Entity Component System - for App developers
Entity Component System - for App developersEntity Component System - for App developers
Entity Component System - for App developers
 
Beyond JSON - An Introduction to FlatBuffers
Beyond JSON - An Introduction to FlatBuffersBeyond JSON - An Introduction to FlatBuffers
Beyond JSON - An Introduction to FlatBuffers
 
Beyond JSON @ Mobile.Warsaw
Beyond JSON @ Mobile.WarsawBeyond JSON @ Mobile.Warsaw
Beyond JSON @ Mobile.Warsaw
 
Beyond JSON @ dot swift 2016
Beyond JSON @ dot swift 2016Beyond JSON @ dot swift 2016
Beyond JSON @ dot swift 2016
 
Beyond JSON with FlatBuffers
Beyond JSON with FlatBuffersBeyond JSON with FlatBuffers
Beyond JSON with FlatBuffers
 
Entity system architecture with Unity @Unite Europe 2015
Entity system architecture with Unity @Unite Europe 2015 Entity system architecture with Unity @Unite Europe 2015
Entity system architecture with Unity @Unite Europe 2015
 
UIKonf App & Data Driven Design @swift.berlin
UIKonf App & Data Driven Design @swift.berlinUIKonf App & Data Driven Design @swift.berlin
UIKonf App & Data Driven Design @swift.berlin
 
Swift the implicit parts
Swift the implicit partsSwift the implicit parts
Swift the implicit parts
 
Currying in Swift
Currying in SwiftCurrying in Swift
Currying in Swift
 
Promise of an API
Promise of an APIPromise of an API
Promise of an API
 
96% macoun 2013
96% macoun 201396% macoun 2013
96% macoun 2013
 
Diagnose of Agile @ Wooga 04.2013
Diagnose of Agile @ Wooga 04.2013Diagnose of Agile @ Wooga 04.2013
Diagnose of Agile @ Wooga 04.2013
 
Start playing @ mobile.cologne 2013
Start playing @ mobile.cologne 2013Start playing @ mobile.cologne 2013
Start playing @ mobile.cologne 2013
 
Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013Under Cocos2D Tree @mdvecon 2013
Under Cocos2D Tree @mdvecon 2013
 
Don&rsquo;t do Agile, be Agile @NSConf 2013
Don&rsquo;t do Agile, be Agile @NSConf 2013Don&rsquo;t do Agile, be Agile @NSConf 2013
Don&rsquo;t do Agile, be Agile @NSConf 2013
 

Kürzlich hochgeladen

Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 

Kürzlich hochgeladen (20)

Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 

Basics of Computer Science