Skip to content

airamez/learn-coding.kotlin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About this course

The main goal of this course is to empower any person to learn computer programming with a clear and practical approach that matches the quality and content levels of a graduation course. I already have a similar volunteer project where I teach computer programming target the Portuguese speakers.

We will learn from scratch using the program language Kotlin (https://kotlinlang.org/) and no previous knowloadge is required (just the basic four math operations). We will cover everythink that is required to make a Junior Computer Programming. I will do my best to make the classes as easy is possible, however you need to do you part as well. You can´t act like someone that is going to a gym and just sitting and looking around. You need to put the effort to get any benefit.

All classes will be a live youtube streaming so you can participate and make questions. I will try to have all classes at the same days and time to make easier for you to schedule for it, however it is not that important to join the live classes. I am doing that way just to force me to focus and to mimic a in person class experience (it does work better for me as I was professor for decades).

This repository will be used to store the English version of the course. Below are the url for this course content:

The information about the brazilian content are below (Just in case you have a brazilian friend):

  • Github Repository
  • Youtube Playlist
  • This course material is all in English but in the live classes I speak in portuguese.
  • Another difference is that the portuguese course uses C# ad programming language.

Schedule:

  • Tuesdays and Thursdays at 8PM

About the author

José Santos (better known as Zé Maria) is a software engineer and veteran professor who started in the world of computing in his teens and before the advent of the internet. He had a distinguished career by working in academia as a professor at the Federal Technical School of Sergipe, Tiradentes University, FANESE, and the Federal University of Sergipe. He worked as an IT consultant, programmer, network administrator, systems analyst, and technical leader in Brazil, Canada, and currently in the United States, working in large companies, most recently at Microsoft and currently at Intuit. He was very active as an athlete and won several titles in different sports, including: swimming, volleyball, tae-kwo-do, and full-contact.

In addition to being a nerd, he was a competent athlete in different sports.

Course Content

Quick Overview about Software Engineering

  • Application Layers
    • User Interface (UI) or Front-End
      • Console
      • Desktop
      • Mobile
      • Web
    • Server-Side
    • Data
  • Data Processing Model
    • Input: Data
    • Processing
    • Output: Information
  • Algorithm x Program

Introduction to Coding with "Kotlin"

  • IDE - Integrated Development Environment
  • Hello World
  • Comments
  • Variables and Types
  • Input & Output (I/O)
    • Type Casting
    • Type Conversion
    • String Interpolation
  • Basic Operations
  • Random Numbers
  • Logical Expression
  • Math Operations
  • if
  • switch
  • for
  • while
  • do while
  • break and continue
  • Modularization
    • Subprogram, Subroutine, Routine
    • Function
    • Procedure
    • Parameters types
    • Recursion
  • Array
  • Multi-Dimensional Array
  • Char
  • Strings
  • Method Main with Args
  • Version Control
    • Git
      • Introduction
      • Conflicts
      • Branches
      • Pull Request (PR)
  • Objects Oriented Programming
    • Abstraction
    • Class
    • Object
    • Constructors
    • Encapsulation
      • Access Modifiers
        • Private
        • Public
        • Protected
        • Internal
      • Set and Get
      • Property
    • Inheritance
    • Overload
    • Override
    • Polymorphism
    • The object class
    • Interface
    • Abstract
    • Sealed
    • Static
    • Indexers
    • Operator overload
    • Relationship
      • Composition
      • Aggregation
    • Full Demo
  • Exceptions
  • Unit Testing
  • Parameter type: params
  • Struct
  • Tuple
  • Introduction to Data Structures
    • Linked List
    • Doubled Linked List
    • Queue
    • Stack
    • Set
    • Hashtable
    • Tree
      • Binary Tree
        • Traversal
          • In-Order
          • Pre-Order
          • Post-Order
          • By level
      • Binary Search Tree (BST)
        • Insert
        • Find
        • In-Order Traversal
        • Remove
    • Heap
      • Definition
      • Heapify
      • Add (Push)
      • Remove (Pop)
      • Heap as array
    • Graphs
      • Definition
      • Components
      • Types
      • Basic Operation
      • Find Connection
        • Depth First Search (DFS)
        • Breadth First Search (BFS)
      • Find Path
        • Depth First Search (DFS)
        • Breadth First Search (BFS)
  • Big O Notation
  • Binary Search
  • Sorting
    • Bubble
    • Selection
    • Insertion
    • Quick
    • Merge
    • Heap
  • Generics
  • Kotlin Data Structures
    • List
    • Queue
    • Stack
    • Set
    • Hash/Map
    • Dictionary
    • PriorityQueue
  • Kotlin API
    • Files
      • Text
      • XML
      • JSON
    • DateTime
    • etc

Introduction to SQL

  • Database Server
    • SQL Server
  • Relational Database
    • Table
    • Field
    • Record
    • Data Modeling
      • Relationships
        • Primary Key
        • Foreign Key
  • SQL
    • Create Table
    • Insert
    • Update
    • Delete
    • Select
      • Sorting
      • Join
      • MAX, MIN, SUM and AVG
      • Count
      • Group By

Accessing databases using Kotlin

Introduction to Web Development

  • HTML
  • CSS
  • JavaScript
  • Web Development Java Script Framework
    • Angular
    • React

Web Services/API

Classes

Class # Youtube Video Files
1 commning soon (07/15/2024) 8pm PST N/A

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages