# Solidity Basics.

## What is Solidity?

Solidity is an object-oriented, high-level language for implementing smart contracts. Smart contracts are programs that govern the behavior of accounts within the Ethereum state.

Solidity is a "statically typed" language. Statically typed is a programming language characteristic in which variable types are explicitly declared and thus are determined at compile time.

Solidity language supports the following general  [value types](https://docs.soliditylang.org/en/v0.8.7/types.html#value-types) :


 - 
  **Boolean**: It returns a true or false value. 


 - 
  **Integers**: The int/unit for both unsigned and signed integers are supported by Solidity.   


 - 
  **Address**: An address can carry up to a 20-byte value. 


 - 
  **String Literals**: String literals are depicted using either double or single quotes.  They imply trailing value zeroes. 


 - 
  **Modifier**:  Modifiers ensure the fulfillment of the predefined conditions before code execution.


 - 
  **Mappings**: Mappings return values related to a given storage site. 

With Solidity, you can create contracts for uses such as voting, crowdfunding, blind auctions, multi-signature wallets, and the popular kid on the block(NFTs). 

I will be deep-diving into Solidity in upcoming articles. I hope you enjoyed this short introduction to Solidity. Stay Safe and Happy coding! :)

 
