Database Programming Intro

Application is about data

Data is the most important aspect of an application. Whether you are developing application for the consumer, large enterprises, embedded devices, industrial automation control systems, accounting systems, customer relationship management, enterprise resource planning and etc.,

All application are written to interact with different kind of data, such as:

  • Data about customers, products and services
  • Telemetry data from embedded and IoT devices
  • Data about different machinery and equipment's operating status
  • Business transaction data
  • Patient data for healthcare
  • Lab and research data for medical, science and engineering
  • Election voting data
  • Data about social media
  • Etc.

An application's value is directly link to the data it interact with. Without data, an application has no value.

Developing Application Needs More Than Coding

Regardless of the chosen programming language and development platform, in order to develop an application, you need to have clear understanding about the aplication's objectives, targeted audiences, required input (data) and expected output (data).

In an application development project, coding is actually the easier part.

One of the key challenges in developing application is the architecting of the application to meet the prescribed objectives, using design patterns and development methodology that produce a manageable code base best suited for the project's life-cycle.

In addit with the best return on investment, while minimize the risk of technology obsolescence that forces unnecessary re-development.

Structured and un-structured data

Depending on the application and intended purposes, data can be in different forms:

  • Structured and un-structured data in different type of files, such as Excel, CSV, JSON, XML, Text and etc.
  • Structured data in different type of databases, such as Microsoft SQL Server, MySQL, MariaDB, Oracle, PostgreSQL, SQLite, Azure SQL Table, CosmoDB, MongoDB and etc.

In general, most database application are written to interact with structured data, or transform un-structured data into structured before processing.

Databases 101

SQL and NoSQL

LINQ

Structured Query Language (SQL)