Added contents for Go Roadmap ( Packages, Urfave cli, Gorm, Beego, Gin, Revel ) (#1933)

* Added Content

* Added contents

Co-authored-by: “Mohamed <“dmdbilal8604@gmail.com”>
Co-authored-by: Kamran Ahmed <kamranahmed.se@gmail.com>
pull/1929/head^2
Mohamed Bilal 2 years ago committed by GitHub
parent 3c8d8861e0
commit ebdbbcc616
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 11
      content/roadmaps/106-javascript/content/102-javascript-datatypes/101-object/101-prototypal-inheritance.md
  2. 6
      content/roadmaps/106-javascript/content/102-javascript-datatypes/101-object/102-builtin-objects.md
  3. 3
      content/roadmaps/106-javascript/content/103-javascript-type-casting/101-explicit-type-casting.md
  4. 10
      content/roadmaps/106-javascript/content/104-javascript-data-structures/100-indexed-collections/readme.md
  5. 13
      content/roadmaps/106-javascript/content/104-javascript-data-structures/101-keyed-collections/readme.md
  6. 11
      content/roadmaps/106-javascript/content/109-javascript-functions/106-built-in-functions.md
  7. 2
      content/roadmaps/106-javascript/content/112-javascript-asynchronous-javascript/104-promises/100-async-await.md
  8. 5
      content/roadmaps/109-golang/content/100-go-basics/109-packages.md
  9. 2
      content/roadmaps/109-golang/content/102-go-building-clis/101-urfave-cli.md
  10. 8
      content/roadmaps/109-golang/content/103-go-orms/100-gorm.md
  11. 2
      content/roadmaps/109-golang/content/104-go-web-frameworks/100-beego.md
  12. 4
      content/roadmaps/109-golang/content/104-go-web-frameworks/101-gin.md
  13. 6
      content/roadmaps/109-golang/content/104-go-web-frameworks/102-revel.md

@ -1,14 +1,9 @@
# Prototypal inheritance
# Prototypal Inheritance
In JavaScript, objects have a special hidden property `[[Prototype]]`, that is either null or references another object. That object is called "a prototype".
When we read a property from object, and it's missing, JS automatically takes it from the prototype. This is called "protoypal inheritance".
Syntax:
`ChildObject.__proto__ = ParentObject`
The Prototypal Inheritance is a feature in javascript used to add methods and properties in objects. It is a method by which an object can inherit the properties and methods of another object. Traditionally, in order to get and set the Prototype of an object, we use Object.getPrototypeOf and Object.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink badgeText='Official Website' colorScheme='blue' href='https://developer.mozilla.org/en-US/docs/Web/JavaScript/Inheritance_and_the_prototype_chain'>JavaScript MDN Docs</BadgeLink>
<BadgeLink badgeText='Official Website' colorScheme="blue" href='https://www.geeksforgeeks.org/prototypal-inheritance-using-__proto__-in-javascript/'>GeeksForGeeks – JavaScript Tutorial</BadgeLink>
<BadgeLink badgeText='Official Website' colorScheme="blue" href='https://javascript.info/prototype-inheritance'>The Modern JavaScript Tutorial</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://javascript.info/prototype-inheritance'>Prototype Inheritance</BadgeLink>

@ -11,4 +11,8 @@ Built-in objects, or "global objects", are those built into the language specifi
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects'>Built-in Objects</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects'>Built-in Objects</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects'>Standard built-in objects</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.tutorialride.com/javascript/javascript-built-in-objects.htm'>JavaScript Built-in Objects</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.scaler.com/topics/javascript-built-in-objects/'>Built-in Objects</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/YLCtw8Ms5Q4'>JavaScript Built-in Objects</BadgeLink>

@ -5,3 +5,6 @@ Type casting means transferring data from one data type to another by explicitly
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://developer.mozilla.org/en-US/docs/Glossary/Type_Conversion'>Type conversion</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.tutorialspoint.com/explain-typecasting-in-javascript'>What is typecasting in JavaScript</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.c-sharpcorner.com/article/type-conversions-in-javascript/'>Type Conversion</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.scaler.com/topics/javascript/type-conversion-in-javascript/'>Type casting</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/VQLYiFqetZM'>Data Type Conversion</BadgeLink>

@ -1 +1,9 @@
# Indexed collections
# Indexed collections
Indexed Collections are collections that have numeric indices i.e. the collections of data that are ordered by an index value. In JavaScript, an array is an indexed collection. An array is an ordered set of values that has a numeric index.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.geeksforgeeks.org/javascript-indexed-collections/'>Indexed Collections</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Indexed_collections'>What is Indexed collections?</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.tutorialspoint.com/indexed-collections-in-javascript'>Indexed collections in JavaScript</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/XYq9QpgAx8g'>Javascript Arrays</BadgeLink>

@ -1,10 +1,9 @@
# Keyed collections
# Keyed Collections
Keyed collections are collections of data that are ordered by a key and not index. They are associative in nature.
`Map` and `Set` objects contain elements which are iterable in the order of insertion.
Keyed collections are data collections that are ordered by key not index. They are associative in nature. Map and set objects are keyed collections and are iterable in the order of insertion.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Keyed_collections'>JavaScript MDN Docs</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://www.tutorialspoint.com/keyed-collections-in-javascript'>Tutorialspoint – JavaScript Tutorial</BadgeLink>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://medium.com/@jimmyfarillo/keyed-collections-in-javascript-set-vs-map-vs-weakset-vs-weakmap-f50d86052da2'>Medium - Keyed Collections in JavaScript</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Keyed_collections'>Keyed collections</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://blog.logrocket.com/es6-keyed-collections-maps-and-sets/'>ES6 keyed collections- Maps and sets</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.freecodecamp.org/news/how-to-use-javascript-collections-map-and-set/'>How to use Keyed collections</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/4UqSqF4foy4'>Creating keyed collection</BadgeLink>

@ -1 +1,10 @@
# Built in functions
# Built in functions
- A JavaScript **method** is a property containing a **function definition** . In other words, when the data stored on an object is a function we call that a method.
- To differenciate between properties and methods, we can think of it this way: **A property is what an object has, while a method is what an object does.**
- Since JavaScript methods are actions that can be performed on objects, we first need to have objects to start with. There are several objects built into JavaScript which we can use.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.tutorialspoint.com/javascript/javascript_builtin_functions.htm'>JavaScript Built-in Functions</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://dev.to/elpepebenitez/built-in-methods-in-javascript-4bll'>Built-in Methods in Javascript</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.tutorialride.com/javascript/javascript-built-in-functions.htm'>Built-in Functions:</BadgeLink>

@ -1,4 +1,4 @@
# Async await
# Async/Await
`async/await` is a special syntax to work with promises in a more comfortable fashion.
We use `async` keyword to declare a async function that return a Promise, and the `await` keyword makes a function wait for a Promise.

@ -1,8 +1,11 @@
# Packages
Discover what is a Go package, how to structure your code to create and use them, and also how to use external packages and manage those dependencies.
Packages are the most powerful part of the Go language. The purpose of a package is to design and maintain a large number of programs by grouping related features together into single units so that they can be easy to maintain and understand and independent of the other package programs. This modularity allows them to share and reuse. In Go language, every package is defined with a different name and that name is close to their functionality like “strings” package and it contains methods and functions that only related to strings.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.golang-book.com/books/intro/11'>How to create a package in Go</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://go.dev/doc/modules/managing-dependencies'>How to manage external dependencies in Go</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Search Packages' href='https://pkg.go.dev/'>Go Packages explorer</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://pkg.go.dev/std'>Standard library</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.geeksforgeeks.org/packages-in-golang/'>Packages in Golang</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.programiz.com/golang/packages'>Go Packages</BadgeLink>

@ -5,3 +5,5 @@ Urfave cli is a simple, fast, and fun package for building command line apps in
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='GitHub Repository' href='https://github.com/urfave/cli'>Urfave cli Github Repo</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://cli.urfave.org/'>Urfave cli Website</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://blog.hackajob.co/how-to-build-cli-in-go/'>How to Build cli in Go</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://zerokspot.com/weblog/2021/01/25/building-a-cli-using-urfave-cli/'>Building CLI using urfave cli</BadgeLink>

@ -1 +1,7 @@
# Gorm
# Gorm
The GORM is fantastic ORM library for Golang, aims to be developer friendly. It is an ORM library for dealing with relational databases. This gorm library is developed on the top of database/sql package. The overview and feature of ORM are: Full-Featured ORM (almost)
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://gorm.io/docs/index.html'>Gorm</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://pkg.go.dev/gorm.io/gorm'>Gorm Package</BadgeLink>

@ -1,6 +1,6 @@
# Beego
Beego is an open-source, high-performance web framework for the Go programming language.
Beego is used for rapid development of enterprise application in Go, including RESTful APIs, web apps and backend services. It is inspired by Tornado, Sinatra and Flask. beego has some Go-specific features such as interfaces and struct embedding.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://github.com/beego/beego'>Github Repository</BadgeLink>

@ -3,5 +3,5 @@
Gin is a high-performance HTTP web framework written in Golang (Go). Gin has a martini-like API and claims to be up to 40 times faster. Gin allows you to build web applications and microservices in Go.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://github.com/gin-gonic/gin'>Github Repository</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://gin-gonic.com/'>Official Website</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://github.com/gin-gonic/gin'>Gin</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://pkg.go.dev/github.com/gin-gonic/gin'>Gin Web Framework</BadgeLink>

@ -1,7 +1,7 @@
# Revel
Revel web development is a near full-stack web framework. The purpose of Revel is to make it easier for developers to build web applications using the MVC (Model-View-Controller) architecture pattern.
Revel organizes endpoints into Controllers. They provide easy data binding and form validation. Revel makes Go Templates simple to use at scale. Register functionality to be called before or after actions.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://github.com/revel/revel'>Github Repository</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://revel.github.io/'>Official Website</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://revel.github.io/tutorial/index.html'>Revel</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://pkg.go.dev/github.com/revel/revel'>Revel Packages</BadgeLink>

Loading…
Cancel
Save