From 6139b1e39197e066e75fc9210b1c585708cc6746 Mon Sep 17 00:00:00 2001 From: Jacob Rockland Date: Sat, 4 Mar 2017 16:26:29 -0700 Subject: [PATCH] clarified Go's handling of object oriented programming --- carvalue.go | 57 --------------------------------------------- go-vs-swift.pdf | Bin 162454 -> 164485 bytes go-vs-swift.tex | 60 ++++++++++++++++++++++++++++++++++++++++++++---- 3 files changed, 56 insertions(+), 61 deletions(-) delete mode 100644 carvalue.go diff --git a/carvalue.go b/carvalue.go deleted file mode 100644 index efb9e0a..0000000 --- a/carvalue.go +++ /dev/null @@ -1,57 +0,0 @@ -package main - -import ( - "fmt" -) - -type CarValue interface { - value() float64 -} - -type Car struct { - Make string - Year int -} - -func (c *Car) value() float64 { - switch { - case c.Year >= 2000 && c.Year < 2010: - return 6500 - case c.Year >= 2010 && c.Year < 2020: - return 9000 - default: - return 3000 - } -} - -func NewCar(make string, year int) *Car { - return &Car{make, year} -} - -type Tesla struct { - Car -} - -func (t *Tesla) value() float64 { - switch { - case t.Year >= 2010 && t.Year < 2015: - return 18000 - default: - return 24000 - } -} - -func NewTesla(year int) *Tesla { - return &Tesla{*NewCar("Tesla", year)} -} - -func value(c CarValue) float64 { - return c.value() -} - -func main() { - herbie := NewCar("Volkswagen", 1963) - model3 := NewTesla(2017) - fmt.Println("Herbie is worth", value(herbie)) - fmt.Println("Model3 is worth", value(model3)) -} diff --git a/go-vs-swift.pdf b/go-vs-swift.pdf index 286f8474f0dd2616d11bb3514e2bf49895ae5171..d91b7f7964e99415f5d4ad565a359afc25a88280 100644 GIT binary patch delta 49579 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 diff --git a/go-vs-swift.tex b/go-vs-swift.tex index 85efd7a..abefc22 100644 --- a/go-vs-swift.tex +++ b/go-vs-swift.tex @@ -7,7 +7,7 @@ \title{Go vs. Swift: The Languages of The Modern Tech Giants} \author{Jake Rockland \\ github.com/jakerockland/go-vs-swift} -\date{December 20, 2016} +\date{March 4, 2017} \usepackage{url} @@ -26,7 +26,7 @@ \section{Introduction} -The current technology landscape is often driven by two major companies: Apple and Google. With market capitalizations of \$623.61 billion \footnote{\url{http://finance.yahoo.com/quote/aapl}} and \$554.6 billion \footnote{\url{http://finance.yahoo.com/quote/goog}}, respectively, Apple (\$AAPL) and Google (\$GOOG) are the two highest valued public companies in the world at the time of writing. Along with making top-class products that millions of consumers use on a regular basis, both Apple and Google have continually contributed to an ecosystem of tools built for developers to create new software, whether for their platforms or not. In the past decade, one way this has manifested is in the development of two new programming languages, Swift and Go. +The current technology landscape is often driven by two major companies: Apple and Google. With market capitalizations of \$729.01 billion \footnote{\url{http://finance.yahoo.com/quote/aapl}} and \$575.73 billion \footnote{\url{http://finance.yahoo.com/quote/goog}}, respectively, Apple (\$AAPL) and Google (\$GOOG) are the two highest valued public companies in the world at the time of writing. Along with making top-class products that millions of consumers use on a regular basis, both Apple and Google have continually contributed to an ecosystem of tools built for developers to create new software, whether for their platforms or not. In the past decade, one way this has manifested is in the development of two new programming languages, Swift and Go. The similar statuses of Apple and Google as technology behemoths of the modern world, as well as the similar timing of the releases of Swift and Go, drives us to explore first what pushed these companies to develop two new programming languages and second how these two languages are similar and how they differ. We will explore this by first looking at the historical context and initial goals of these languages, then look to the outside influences of each language, followed by a comparison of the design decisions made for each, finally we will conclude with a consideration of the future prospects for each language. @@ -275,9 +275,61 @@ \section{Object Oriented Programming Support} While Swift offers good support for the object-oriented paradigm, many Swift developers favor a similar but decidedly different paradigm that Swift also readily supports called Protocol Oriented Programming. The protocol-oriented paradigm emphasizes generalization and interfaces over inheritance and sub-classing, which many argue allows for clearer, lighter, and more modular code \footnote{\url{krakendev.io/blog/subclassing-can-suck-and-heres-why}} \footnote{\url{https://www.andrewcbancroft.com/2016/06/12/is-protocol-oriented-swift- better-than-object-oriented-swift/}}. -Whether or not Go supports Object Oriented Programming is very much a matter of definition. The official project documentations points towards the unsatisfying answer of “Yes and no” \footnote{\url{https://golang.org/doc/faq#Is_Go_an_object-oriented_language}}. Go supports the creation of something similar to an object via the struct, a custom data type. However, due to its lack of inheritance, attempting to emulate the above Swift example in Go is not straightforward \footnote{\url{http://spf13.com/post/is-go-object-oriented/}} \footnote{\url{https://nathany.com/good/}}. +Whether or not Go supports Object Oriented Programming is very much a matter of definition. The official project documentations points towards the unsatisfying answer of “Yes and no” \footnote{\url{https://golang.org/doc/faq#Is_Go_an_object-oriented_language}}. Go supports the creation of something similar to an object via the struct, a custom data type. Go lacks support for inheritance, but allows those who wish to embrace the object oriented design paradigm to do so through composition instead—favoring design patterns similar to those found in Swift's protocol-oriented paradigm. \footnote{\url{http://spf13.com/post/is-go-object-oriented/}} \footnote{\url{https://nathany.com/good/}}. -Thus, support for the object-oriented paradigm provides one key difference between the two languages—Swift is designed with native support for Object Oriented Programming, whereas Go’s support is somewhat lacking. +To illustrate this compositional approach, consider the following implementation of the Tesla example in Go: + +\begin{minted}{go} +/* base `Car` type */ +type Car struct { + Make string + Year int +} + +/* `Car` type constructor */ +func NewCar(make string, year int) Car { + return Car{make, year} +} + +/* returns the value for given car */ +func (c Car) value() float64 { + switch { + case c.Year >= 2000 && c.Year < 2010: return 6500.0 + case c.Year >= 2010 && c.Year < 2020: return 9000.0 + default: return 3000.0 + } +} + +/* `Tesla` type, composed of `Car` type */ +type Tesla struct { + Car +} + +/* `Tesla` type constructor */ +func NewTesla(year int) Tesla { + return Tesla{NewCar("Tesla", year)} +} + +/* overrides the value for Tesla cars */ +func (t Tesla) value() float64 { + switch { + case t.Year >= 2010 && t.Year < 2015: return 18000.0 + default: return 24000.0 + } +} + +/* interface for car value */ +type CarValue interface { + value() float64 +} + +/* shared value function, returns the value of given car */ +func value(c CarValue) float64 { + return c.value() +} +\end{minted} + +Thus, support for the object-oriented paradigm provides one key difference between the two languages—Swift is designed with native support for Object Oriented Programming, both in through inheritance and composition, whereas Go’s support is limited to a compositional approach. \section{Concurrent Programming Support}