Must know programming concepts

 Must know concepts of programming and development

Programming might seem overwhelming at first, especially for beginners. But don't worry! By understanding a few key concepts, you'll be well on your way to becoming a coding pro. In this blog post, we'll explore some basic programming ideas that are essential for anyone starting out. Let's get started!

The topics are:

  • Database
  • Compile Time and Runtime
  • Server-side and Client-side
  • Static and Dynamic Page
  • Statically and Dynamically Typed Language
  • Variables

Database

A database is where you can store and organize lots of information. It's a structured way to store data, like names, numbers, or even pictures. Databases make it easy to search, sort, and retrieve information whenever you need it. They're used in many applications, like websites, mobile apps, and even in businesses to keep track of customer data. It's like having a powerful tool to manage and access data efficiently!

Compile Time and Runtime:

Compile time refers to the phase in the software development process when the source code of a program is translated into machine-readable code by a compiler. During this phase, the compiler checks the syntax, type correctness, and other static properties of the code. Any errors or issues are identified at compile time, allowing them to be fixed before the program is executed.

Runtime refers to the period when a program is executing or running on a computer. It is the stage where the compiled code is executed and produces the desired output. During runtime, the program interacts with system resources, such as memory, CPU, and input/output devices, to perform its tasks.

Server-side and Client-side

Server-side includes interacting with databases(stored data), processing form data(like username and password), generating dynamic content(that can change or update in real-time based on user interactions or other factors on website), and more.

Client-side languages can change how a web page looks and behaves. They can do things adding cool animations, and updating information in real-time. It's like giving the web page superpowers!

Static and Dynamic Page

-- A Static page is a web page that remains the same for every user and doesn't change unless the website owner manually updates it. The content of a static page is fixed and doesn't respond to user interactions or input. 

-- Examples of static pages include informational websites, company profiles, or personal blogs that don't have interactive features.

-- A Dynamic page can display personalized information, respond to user actions, and interact with databases or APIs.

-- Examples of dynamic pages include social media feeds, e-commerce sites with shopping carts, or web applications that require user input.

Statically and dynamically typed language

-- In Statically type languages are where variable types are explicitly declared and checked at compile time. This means that you need to specify the type of each variable when you declare it, and the compiler enforces type checking to ensure that only compatible operations are performed on variables.

--  In Dynamically typed languages the type of a variable is determined at runtime based on the value assigned to it. You can assign different types of values to the same variable, and the language allows for more flexibility in terms of type conversions and operations.

A variable is like a container that holds a value. It's a way to give a name to a piece of data so that you can refer to it later in your code. Variables can have different types, depending on the kind of data they hold. Some common variable types include: - String ,Number ,Boolean ,etc.


Conclusion

  • Database: Stores and organizes data for easy retrieval in applications.
  • Compile Time and Runtime: Compile time checks errors, runtime executes code.
  • Server-side and Client-side: Server-side interacts with databases, client-side changes webpage appearance.
  • Static and Dynamic Page: Static pages remain unchanged, dynamic pages respond to user input.
  • Statically and Dynamically Typed Language: Statically typed languages enforce type declarations, dynamically typed languages determine types at runtime.