Skip to main content

Do you support us?

Business address
0x1D24D8f27ea73ff604C7685246bdC6ae55bddaEF

Adding colorful layer called typed constants

Sometime we need extra tools for advance problems like magician or wizard use their magic gown , advance spells . If You see Harry potter in your childhood then you remember. Without type constants everything fine but if you become a master then you know how to use advances tools. if you interested in more examples then visit

             Advance tools                                          Description
1      Typed Constants                                           solve your problem in your style
2.      Untyped Constants                                      use in scientific research
3.      grpc/protobuf                                              scale out your application (microservice)
4.       goroutines                                                   application optimization
5.       packages                                                      application deploy
There Are few advances tools  which add extra layers or enhance application power. There're so many, when a time come i will introduce them.

Problem is that you convert kelvin into celsius. 
package main
import (
"fmt"
)
type Kelvin float64
type Celsius float64
const (
AbsoluteZeroKelvin Celsius = 273.15
AbsoluteZeroCelsius Kelvin = 273.15
)
func main() {
var k Kelvin = 1
var c Celsius = 1
kelv := KtoC(k)
cels := CtoK(c)
fmt.Println("value of kelvin", kelv , "value of celsius", cels )
}
func KtoC(k Kelvin) Celsius{
return Celsius(k - AbsoluteZeroCelsius)
}
func CtoK(c Celsius) Kelvin{
return Kelvin(AbsoluteZeroKelvin + c)
}
 type Kelvin float64
       First this at package level which means place after import and second it start with Uppercase. If a variable , constants , type declare at package level and start with uppercase then it's means it access other packages too.
 If you write structs in C you know this line create a new type name Kelvin and it's datatype value in float

AbsoluteZeroCelsius Kelvin = 273.15
This is a way to initialize your type, if you want.
Second it's also help you in conversion

func KtoC(k Kelvin) Celsius
In golang func means this is the function
KtoC is the name of the function
k Kelvin here k is a contain-variable of this type
Celsius called return type of a function.

If you look at example functions after return
Celsius(k - AbsoluteZeroCelsius)
this convert back into required datatype.
This is just a flavour of sweet pie,
soon we discuss them in very
details along with other advance tools.

Write an algorithm that take mass of object and
acceleration and tells you
how much force body applied

Comments

Popular posts from this blog

Rosicrucian cipher

In 1513 Cornelius Agrippa introduce early form Rosicrucian Cipher in his books Occult of Philosophy. Geometric and simple substitution cipher are well known ciphers      Pigpen , Freemason, Napoleon and tic tac toe ciphers in which alphabets or symbols arrange in grids.  This is an anagram, "How to reconstruct a data " lets encode the message.       Pigpen cipher , Rosicrucian and Tic tac toe Cipher                      Thank you have a good day.    

Enumerate

Golang provide  own enumerate method which is easy and very powerful. I will show you enumerate with in a sec. When i code enumerate in java, believe me i don't understand why it's used? So i never play from this card at that time, but recently when i start learning go. Now i used where it's used and why? Enumerate basically a counting method. Code   package main import ( " fmt " ) type Weekend int const ( Sunday Weekend = iota Monday Tuesday Wednesday Thursday Friday Saturday ) func main () { fmt. Printf ( " %d " ,Saturday) } If you remember adding color layer then you familiar from this code.  First i create my own type called weekend then used this type.  Iota-generator:   Things that confuse you Sunday Weekend = iota & Monday without value. Before we start Iota-generator first we understand monday without type or value         const ( c = 1 // c : 1 d      // d : 1 ) fmt.Pr

Every Object have a structure

If you start your programming career from c , then you know little about structs. Later Struct replace by classes in object oriented programming. However Go inherit from C. Structs :     With the help of structs, programmer can develop any type of structure         List        Stack        Queue        Trees        Graphs package main import ( " fmt " ) type Students struct { ID int Name string } var record Students func Id ( i int ) int { record. ID = i return record. ID } func Name ( name string ) string { record. Name = name return record. Name } func main () { var id int = 0 var name string = " ali " fmt. Println ( " id: " , Id (id), " name: " , Name (name)) } When we want to create custom type such as Celsius type Celsius float64, same with structs type Students structs except type need data type and in structs. You tells that's struct. Inside Structs