Skip to content

Session1 Notes

Ishant Kumar edited this page Jul 8, 2022 · 1 revision

Intro To Java PL Problem | is always mathemtical hence, to solve them we need equations :) Time -> Least Possible Time Accuracy -> without errors and precise

    Driver   -> who drives | OLA CAB Driver
    Computer -> who computes
                Time
                Accuracy

    PL is a language to interact with Computer by creating a program
    To solve a Problem        


Where Which PL ?

    Several PLs
    C/C++, Java, Python, JavaScript

    PLs they solve problems in domains
    OS -> C/C++
    Desktop/Mobile App -> Java Python C++
    Web App -> Java Python JavaScript
    ML & AI -> Python
    Data Analysis -> Python, R

    Backend -> Java

Setups
    JDK | Latest Version as available to download

    Step1:
    Java Development Kit
    (It consists of Compiler, Run Time Enviroment and more tools for developers to write and execute programs in java)
        Path Setup especially for windows Users

    Test 3 commands :)
    java -version
    java
    javac    

    Step2:
    IDE: Eclipse IDE, IntelliJ, Visual Studio Code

    Step3:
    replit.com -> Online IDE

    (SW: is a piece of program which you can run on your computer)
    Software Development Architecture

    OLA/Uber -> Book a Cab
    Model [DATA STRUCTURES] -> STORAGE | Space Complexity
        Data | Storage Container
        source loaction, destination location, type of cab, payment method

    View [User Experience | UX] -> Screens/Visuals
        UI | User Interface
        Visual Interface i.e. Screen | Input Fields, Maps, Buttons etc

    Controller [ALGORITHMS] -> TIME | Time Compelxity
        Logic
        compute the shortest distance
        compute the route with least traffic
        compute the nearest available driver

Java Program & Compilation Process

Dave: Orange Juice Vendor

Oranges     ->  Source

Juicer      -> Processing

Liquid Juice -> Result

Packaging

\_/          -> Final Result | Galss Filled With Juice


MyApp.cpp   ->  Source Code | High Level Code
Oranges

Compiler    -> Processing (Spelling Mistakes, Syntaxes)

MyApp.obj   -> Result (Object Code) | Low Level Code

Packaging

MyApp.exe   -> End Result | A software which can run on OS
Runs on only Windows OS
MyApp.dmg
MyApp.sh

MyApp.java  - Source Code | High Level Code 
Carrots

Compiler

MyApp.class -> Tetra Pack 

No More Packaging

MyApp.py Apple

Thats It


Features of Java


Data Types

MODEL -> Storage Container
         (Which can store data)
         Data -> Number
              -> Text

              1. Single Value Containers
                 Primitive Data Types :)
                    Integral
                    Floating Point
                    Character
                    Logical

              2. Multi Value Containers
                  Reference Data Types :)
                    String
                    Arrays
                    
                    Objects
                    Dynamic Data Structures :)      



CONTROLLER -> Logical Computations
    1. Operators                | Computations
    2. Conditional Constructs   | Decision Flows
    3. Iterations


VIEW -> CONSOLE VIEW i.e. User Interations on Console

Clone this wiki locally