Unit 2.3: Programming Languages and Tools

Programming Basics

  • Programming languages = how humans communicate with computers

  • Compiled languages = translated all at once, faster

  • Interpreted languages = run line-by-line, easier to debug

  • High-level languages (Python, Java) = easier to use

  • Low-level languages (C, Assembly) = more control, harder


Main Programming Languages

  • Python = easy, used for AI, data science, web development

  • Java = versatile, platform-independent, used for large applications

  • C++ = fast, used for games and system software


Build vs Buy

  • Build (custom):

    • Pros: fully customized, scalable

    • Cons: expensive, time-consuming, needs developers

  • Buy (off-the-shelf):

    • Pros: fast, cheaper upfront, vendor support

    • Cons: limited customization, may not fit perfectly


Hybrid Approach

  • Buy software and customize it

  • Balanced cost, speed, and flexibility

  • Still requires some developer skills


Development Tools

  • IDE = workspace to write, edit, and debug code

  • Compiler = converts code into machine language

  • Interpreter = runs code line-by-line