Directories ¶
Path | Synopsis |
---|---|
ch01-introToGo
|
|
01-hw
The aim of this code to produce simple outputs using fmt package.
|
The aim of this code to produce simple outputs using fmt package. |
03-variables
The aim of this go code is to get familiar with variable definitions in GoLang
|
The aim of this go code is to get familiar with variable definitions in GoLang |
05-forLoops
The aim of this program is to get familiar with for loops
|
The aim of this program is to get familiar with for loops |
06-input
The aim of this go code to get familiar with the fmt.Scanln() function to get user input from the console.
|
The aim of this go code to get familiar with the fmt.Scanln() function to get user input from the console. |
07-commandLineArguments
The aim of this program is to get familiar with the os.Args slice.
|
The aim of this program is to get familiar with the os.Args slice. |
08-process
The aim of this program is to get familiar with differentiating os.Args() by returned err values from conversion(strconv.Atoi(), strconv.ParseFloat()) functions.
|
The aim of this program is to get familiar with differentiating os.Args() by returned err values from conversion(strconv.Atoi(), strconv.ParseFloat()) functions. |
09-goroutines
This program aims to shortly show the execution of goRoutines.
|
This program aims to shortly show the execution of goRoutines. |
13-customLog
The aim of this program is to get familiar with logging into custom files.
|
The aim of this program is to get familiar with logging into custom files. |
14-customLogLineNumber
This go program is aimed to generate custom log entries using different flags.
|
This go program is aimed to generate custom log entries using different flags. |
15-multipleLogs
The aim of this program to show how to write logs to multiple files
|
The aim of this program to show how to write logs to multiple files |
16-stats
The aim of this program is to generate simple standard deviation calculator.
|
The aim of this program is to generate simple standard deviation calculator. |
ch02-basicGoDataTypes
|
|
01-error
The aim of this program is to get familiar with custom error message returning using errors package and fmt package
|
The aim of this program is to get familiar with custom error message returning using errors package and fmt package |
03-overflows
The aim of this program is to observe maximum and minimum integer values
|
The aim of this program is to observe maximum and minimum integer values |
04-text
The aim of this program is to get familiar with strings and runes
|
The aim of this program is to get familiar with strings and runes |
05-intString
The aim of this code to get familiar with the string-to-int and int-to-string conversions
|
The aim of this code to get familiar with the string-to-int and int-to-string conversions |
06-unicode
The aim of this program is to check the printability of a given string's characters
|
The aim of this program is to check the printability of a given string's characters |
08-convertTimes
The aim of this program is to get familiar with type package, and time conversion / time parsing
|
The aim of this program is to get familiar with type package, and time conversion / time parsing |
09-constants
The aim of this program is to get familiar with constant generator iota
|
The aim of this program is to get familiar with constant generator iota |
10-typedConstants
The aim of this program is to understand the difference between typed (type declared explicity) and untyped constants.
|
The aim of this program is to understand the difference between typed (type declared explicity) and untyped constants. |
11-goSlices
The aim of this program is to get familiar with slices
|
The aim of this program is to get familiar with slices |
12-capLen
The aim of this program is to understand the length and capacity of slices
|
The aim of this program is to understand the length and capacity of slices |
14-byteSlices
The aim of this program is to get familiar with byteSlices
|
The aim of this program is to get familiar with byteSlices |
16-sliceArrays
The aim of this program is to get familiar with the slice/array relationship and the connection of newly created slice (that is part of a slice) variables with their ancestor (original slice)
|
The aim of this program is to get familiar with the slice/array relationship and the connection of newly created slice (that is part of a slice) variables with their ancestor (original slice) |
19-pointers
The aim of this program is to understand pointers
|
The aim of this program is to understand pointers |
20-slice2array
The aim of this program is to understand slice to array pointer and slice to array casting
|
The aim of this program is to understand slice to array pointer and slice to array casting |
22-randomNumbers
The aim of this program is to get familiar with random number generation
|
The aim of this program is to get familiar with random number generation |
23-genPass
The aim of this program is to utilize random number generation to generate strong passwords
|
The aim of this program is to utilize random number generation to generate strong passwords |
24-cryptoRand
The aim of this program is to get familiar with crypto/rand package
|
The aim of this program is to get familiar with crypto/rand package |
25-stats
The aim of this program is to introduce normalization for the statistics application
|
The aim of this program is to introduce normalization for the statistics application |
ch03-compositeDataTypes
|
|
01-nilMap
The aim of this program is to understand the nil assignment to a map variable
|
The aim of this program is to understand the nil assignment to a map variable |
02-forMaps
The aim of this program is to learn iterate over maps
|
The aim of this program is to learn iterate over maps |
03-structures
The aim of this program is to get familiar with struct date type
|
The aim of this program is to get familiar with struct date type |
04-sliceStruct
The aim of this program is to understand the slices that contain struct variables
|
The aim of this program is to understand the slices that contain struct variables |
05-diffRegExp
The aim of this program is to differentaite regexp.Compile() and regexp.MustCompile() functions
|
The aim of this program is to differentaite regexp.Compile() and regexp.MustCompile() functions |
06-nameSurRE
The aim of this program is to learn regex expressions for checking user inputs
|
The aim of this program is to learn regex expressions for checking user inputs |
07-intRE
The aim of this program is to get familiar with regex checking for integers
|
The aim of this program is to get familiar with regex checking for integers |
08-csvData
The aim of this program is to read data from csv and store it into another file
|
The aim of this program is to read data from csv and store it into another file |
ch04-goGenerics
|
|
01-hw
The aim of this program is to differentiate generic functions with other functions
|
The aim of this program is to differentiate generic functions with other functions |
02-allowed
The aim of this program is to understand constraints in generic functions
|
The aim of this program is to understand constraints in generic functions |
03-numeric
The aim of this program is to learn how to apply custom interface for generic function constraints
|
The aim of this program is to learn how to apply custom interface for generic function constraints |
04-supertypes
The aim of this program is to understand supertypes
|
The aim of this program is to understand supertypes |
05-sliceConstraint
The aim of this program is to understand slice constraints for generic functions
|
The aim of this program is to understand slice constraints for generic functions |
06-newDT
The aim of this program is to get familiar with new datatype declaration for generic functions
|
The aim of this program is to get familiar with new datatype declaration for generic functions |
07-structures
The main package is defined, indicating this is an executable program
|
The main package is defined, indicating this is an executable program |
08-cmpPackage
The aim of this program is to understand cmp package
|
The aim of this program is to understand cmp package |
09-slicesPackage
The aim of this program is to get familiar with slices package
|
The aim of this program is to get familiar with slices package |
10-mapsPackage
The aim of this packages is to get familiar with maps package
|
The aim of this packages is to get familiar with maps package |
ch05-reflectionAndInterfaces
|
|
01-reflection
The aim of this program is to get familiar with reflect package This package is used in order to determine the data types of elements of structs, retrieve their values.
|
The aim of this program is to get familiar with reflect package This package is used in order to determine the data types of elements of structs, retrieve their values. |
02-setValues
The aim of this program is to dynamically changing the values of the fields of a structure without knowing the internals of the structure in advance.
|
The aim of this program is to dynamically changing the values of the fields of a structure without knowing the internals of the structure in advance. |
03-methods
The aim of this program is to get familiar with type methods
|
The aim of this program is to get familiar with type methods |
04-sort
The aim of this program is to understand implemeting sort.Interface to create our own sort functions
|
The aim of this program is to understand implemeting sort.Interface to create our own sort functions |
05-empty
The aim of this program is to get familiar with the use case of empty interface
|
The aim of this program is to get familiar with the use case of empty interface |
06-typeSwitch
The aim of this program is to execute different functions based on the type of a variable using type switches.
|
The aim of this program is to execute different functions based on the type of a variable using type switches. |
07-assertions
The aim of this program is to learn the type assertions for empty interface implementations
|
The aim of this program is to learn the type assertions for empty interface implementations |
08-mapEmpty
The aim of this program is to deal with data that its type is unknown using interface{}
|
The aim of this program is to deal with data that its type is unknown using interface{} |
09-errorInt
The aim of this program is to understand custom error definitions by implementing error interface
|
The aim of this program is to understand custom error definitions by implementing error interface |
10-shape2D.go
The aim of this program is to define custom interface and implement it with defined struct type
|
The aim of this program is to define custom interface and implement it with defined struct type |
11-objO
The aim of this program is to get familiar with OOP concepts.
|
The aim of this program is to get familiar with OOP concepts. |
12-genericsInterfaces
The aim of this program is to compare generics and interface implementations So if we need to deal with multiple data types, using generics is more efficient, since otherwise we need to define each data type using switch type.
|
The aim of this program is to compare generics and interface implementations So if we need to deal with multiple data types, using generics is more efficient, since otherwise we need to define each data type using switch type. |
13-genericsReflection
The aim of this program is to compare generics with reflect package implementations Reflect makes the code harder to understand, use generics as much as possible
|
The aim of this program is to compare generics with reflect package implementations Reflect makes the code harder to understand, use generics as much as possible |
14-stats
The aim of this program is to introduce custom sort behavior to statistics app
|
The aim of this program is to introduce custom sort behavior to statistics app |
ch06-goPackagesAndFunctions
|
|
01-functions
The aim of this program is to get familiar with anonymous functions
|
The aim of this program is to get familiar with anonymous functions |
03-sorting
The aim of this program is to get familiar with functions that accept function as input argument, like sort.Slice
|
The aim of this program is to get familiar with functions that accept function as input argument, like sort.Slice |
04-returnFunction
The aim of this program is to get familiar with functions that return functions
|
The aim of this program is to get familiar with functions that return functions |
05-variadic
The aim of this function is to get familiar with variadic functions, which accept unknown count of variables of declared type
|
The aim of this function is to get familiar with variadic functions, which accept unknown count of variables of declared type |
06-defer
The aim of this program is to understand the LIFO behaviour of defer keyword
|
The aim of this program is to understand the LIFO behaviour of defer keyword |
07-testSQLite
The aim of this program is to get familiar with the usage of external packages
|
The aim of this program is to get familiar with the usage of external packages |
08-connectSQLite3
The aim of this program is to understand basic operations (create, insert, delete) with sqlite3 database
|
The aim of this program is to understand basic operations (create, insert, delete) with sqlite3 database |
09-sqlite06
Source: https://github.com/tunacinsoy/sqlite06 The aim of this program is to define most-used operations on sqlite db and provide these functions as go package named sqlite06
|
Source: https://github.com/tunacinsoy/sqlite06 The aim of this program is to define most-used operations on sqlite db and provide these functions as go package named sqlite06 |
10-usePackage
The aim of this program is to test previously created package `github.com/tunacinsoy/sqlite06`
|
The aim of this program is to test previously created package `github.com/tunacinsoy/sqlite06` |
11-sqlite06WithDoc
It is highly recommended that each Go package you create has a block comment preceding the package declaration that introduces developers to the package, and also explains what the package does.
|
It is highly recommended that each Go package you create has a block comment preceding the package declaration that introduces developers to the package, and also explains what the package does. |
01-ioInterface
The aim of this program is to learn how to implement io Interfaces (reader and writer) to create custom read and write operations.
|
The aim of this program is to learn how to implement io Interfaces (reader and writer) to create custom read and write operations. |
05-devRandom
The aim of this program is to use `/dev/random` system device to generate seed for random number generator.
|
The aim of this program is to use `/dev/random` system device to generate seed for random number generator. |
06-readSize
The aim of this program is to perform file read based on specified byte size as user input.
|
The aim of this program is to perform file read based on specified byte size as user input. |
07-writeFile
The aim of this program is to explore various ways of writing to a file.
|
The aim of this program is to explore various ways of writing to a file. |
08-encodeDecode
The aim of this program is to understand json marshaling and unmarshaling Usage: `go run encodeDecode.go`
|
The aim of this program is to understand json marshaling and unmarshaling Usage: `go run encodeDecode.go` |
ch12
|
|
Click to show internal directories.
Click to hide internal directories.