A Complete Guide for Learning a New Programming Language.
Here is a Complete Guide / Checklist which can help you learn a specific language via a guided path. Hope it helps and easen your journey of learning a new programming language.
Firstly, Start by knowing the basics of the language like
1. What the Language is mainly used for ?
2. Is the Language Compiler based or Interpretor based ?
3. What are some of the Features of the Language which are not in other Language?
Now You Know most of the Basics and you have an overview of the Language; Let’s Start by Learning the Language. The most important aspect of any language/framework or any other new technology is to Install the Necessary Softwares/IDE/Compiler etc and get the system locally running. Now that you have a System Locally, we can start learning the Actual Language. Start by Learning the Basics :
- Hello World
- Comments — (Single / MultiLine Comments)
- IO / Performing basic Terminal based input / output operations
- Variables
- Datatypes — (Primitives and Non-Primitives)
- String Datatype with its Properties
- Number (Int / float / double) Datatype
- TypeCasting a Number
- Built-in Standard Function
- Operators and Their Types
Now move on to Conditionals and learn about :
- Conditionals
- Only If
- If Else
- Nested If Else
- Ternary Operator
- Break and Continue Statements
Now move on to learning about the Loops :
- For Loop
- While Loop
- Do While Loop
- For Each Loop (if available)
Now move on Functional/Procedural Programming and learn about:
- Functions / Methods
- Declaring and Defining a Function
- Function Parameters and Arguments
- Calling / Invoking a Function
- Call by Value / Call By Reference
- Scope of Varibles — Local / Global
- Function OverLoading
- Recursive Funcitons
Here are some Additional Libraries which are highly essential :
- RegEX
- Date API (Language Built in Date API to get Local Date and Time)
- File IO
- Creating a File
- Reading a File Content
- Updating a File Content
- Deleting a File Content
Yo Ho !! So far you have mastered the Functional Programming Part of the Programming Language and you can now create create almost anything and everything you want and you can think. So give yourself sometime to absorb all these concepts and get back to learning OOPS when you are refreshed. Start by learning the Basics like :
- Intro to OOPS (Object-Oriented Programming)
- Basic of OOPs
- Creating a Custom Class
- Creating an Object of the Class (Instantiatoin of the Class)
- Attributes and Methods
- Creating a Class with Some Attributes and Methods — (Consider Attributes as the Properties / Adjective and Methods as Verbs and Class/Objec as the Noun)
- Access Modifiers and defining the scope of Variable of a Custom Class
- Constructors
- Constructor OverLoading
Now that you have some basic understanding of Object-Oriented Programming; It’s time to learn about the Principles of OOPS:
Encapsulation
- Encapsulating the Data of Custom Class by making it private and making methods to Get and Set the Data
- Getters
- Setters
Abstraction
- Concept of Abstraction and Hiding Data / Details / Complexity from the Users
- Concept of Abstract Classes
Inheritance
- Concept of Inheritance
- Concept of Base Class / Parent Class / Super Class and Derived Class / Child Class / Sub Class
Polymorphism
- Method Overriding
- Creating Multiples Classes from the Base Class
Congratulations !! If you have made it so far. You have learned all the Basics and Intermediate Stuffs of the Language. Now you can explore External Libraries / Frameworks / Packages made publicly available by the language and Unlock the true potential of that language. Follow Abdul Rehman Kalsekar @arkalsekar for more such contents.