introduction to go-lang

Post on 06-Aug-2015

124 Views

Category:

Presentations & Public Speaking

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Introduction ToIntroduction ToGo-LangGo-Lang

www.folio3.com@folio_3

Folio3 – OverviewFolio3 – Overview

www.folio3.com @folio_3

Who We Are

We are a Development Partner for our customers

Design software solutions, not just implement them

Focus on the solution – Platform and technology agnostic

Expertise in building applications that are:

Mobile Social Cloud-based Gamified

What We Do Areas of Focus

Enterprise

Custom enterprise applications

Product development targeting the enterprise

Mobile

Custom mobile apps for iOS, Android, Windows Phone, BB OS

Mobile platform (server-to-server) development

Social Media

CMS based websites for consumers and enterprise (corporate, consumer,

community & social networking)

Social media platform development (enterprise & consumer)

Folio3 At a Glance Founded in 2005

Over 200 full time employees

Offices in the US, Canada, Bulgaria & Pakistan

Palo Alto, CA. Sofia, Bulgaria

Karachi, Pakistan

Toronto, Canada

Areas of Focus: Enterprise Automating workflows

Cloud based solutions

Application integration

Platform development

Healthcare

Mobile Enterprise

Digital Media

Supply Chain

Some of Our Enterprise Clients

Areas of Focus: Mobile Serious enterprise applications for Banks,

Businesses

Fun consumer apps for app discovery,

interaction, exercise gamification and play

Educational apps

Augmented Reality apps

Mobile Platforms

Some of Our Mobile Clients

Areas of Focus: Web & Social Media Community Sites based on

Content Management

Systems

Enterprise Social Networking

Social Games for Facebook &

Mobile

Companion Apps for games

Some of Our Web Clients

www.folio3.com @folio_3

Introduction ToIntroduction ToGo-LangGo-Lang

History

History

Name derived from Gopher

Created by Google Engineers

A language for the multi core processor

Search for Faster, Compiled and ease of Programming

Features

Multi platform Language

Static Language

Type-safe / Memory-safe

Garbage collected

Fast Compilation

Features

Structs instead of classes

No Inheritance

No overloading

Concurrency

Multiple return values

Installation

Download from http://golang.org/doc/install

Untar/Unzip from the folder

Set the following Environment variables

GOROOT => Installation directory of Go (Windows =

c:\windows\)

PATH => $GOROOT\bin

GOPATH => $GOROOT;(Add other library folders

separated by ;)

What are Structs ?

Collection of fields Similar concept to classes in Object oriented languages

What are structs ?

Structs can also have functions just like classes.

Concurrency Go Lang provides the easiest way to create a new

thread. using the go construct before the function executes

the function in a new thread. These are referred to as Go-Routines.

Channels

Channels are the pipes that connect concurrent

goroutines. You can send values into channels from one

goroutine and receive those values into another

goroutine.

Channels

We pass an object to channel by using <- operator on

the right side. Similarly, using the <- operator on the

left side of the channel will read off of it.

Compilation/Deployment

Go code can be compiled into binary code and does

not need Go enviroment to run

Simply running “go install script.go” will create a

binary file of the same name(without .go) extension in

the GO_BIN directory.

Contact

For more details about our services, please get in touch

with us.

contact@folio3.com

US Office: (408) 365-4638

www.folio3.com

top related