0% found this document useful (0 votes)
34 views

Abeer-Reem Programming

The document discusses computer programming and provides details on: 1) Computer programming involves writing code that provides instructions for computers, applications, and software programs to perform specific tasks. 2) Programmers translate problems into computer instructions by writing code, testing programs, and fixing issues to help users. 3) A brief history of programming is provided, noting early programmed devices and the first computer program written by Ada Lovelace in 1843.

Uploaded by

ruxlix
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views

Abeer-Reem Programming

The document discusses computer programming and provides details on: 1) Computer programming involves writing code that provides instructions for computers, applications, and software programs to perform specific tasks. 2) Programmers translate problems into computer instructions by writing code, testing programs, and fixing issues to help users. 3) A brief history of programming is provided, noting early programmed devices and the first computer program written by Ada Lovelace in 1843.

Uploaded by

ruxlix
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Jizan University

Faculty Of Public Health and Tropical Medicine


Department of Health Information
Computer Programming
Programming

Abeer Jobran Almalki 202000204


Reem Alwan Khrdly 201906044
Computer Programming

Computers can do amazing things, from basic laptops capable of simple word
processing and spreadsheet functions to incredibly complex supercomputers
completing millions of financial transactions a day and controlling the infrastructure
that makes modern life possible. But no computer can do anything until a computer
programmer tells it to behave in specific ways. That’s what computer programming is
all about.

Computer programming is the process that professionals use to write code that
instructs how a computer, application or software program performs. At its most
basic, computer programming is a set of instructions to facilitate specific actions. If
you're wondering what a computer programmer is, it's a professional that creates
instructions for a computer to execute by writing and testing code that enables
applications and software programs to operate successfully.

At its most basic, computer programming is little more than a set of instructions to
facilitate specific actions. Based on the requirements or purposes of these instructions,
computer programming can be as simple as adding two numbers. It can also be as
complex as reading data from temperature sensors to adjust a thermostat, sorting data
to complete intricate scheduling or critical reports or taking players through multi-
layered worlds and challenges in games.
What Programmers Do?

In general, the programmer's job is to translate issue solutions into computer


instructions. That is, the programmer creates the instructions for a computer program,
runs those instructions on the computer, tests the program to ensure that it is
functioning properly, and makes changes to the program. The programmer also
creates a program report. All of these operations are performed to assist a user in
meeting a demand, such as paying staff, charging consumers, or admitting students to
college.
The programming operations listed above might be done individually, however a
programmer generally interacts with a range of individuals. For example, if a program
is part of a larger system of programs, the programmer works with other programmers
to ensure that the programs work effectively together. As a programmer, you could
also have coordination meetings with users, managers, systems analysts, and
colleagues who assess your work in the same way that you evaluate theirs.

History of computer programming

For ages, programmable gadgets have existed. The Persian Banu Musa brothers built
a programmed music sequencer in the 9th century, and detailed an automated
mechanical flute player in the Book of Ingenious Devices. In 1206, the Arab inventor
Al-Jazari built a programmed drum machine, which used pegs and cams to allow a
musical mechanical automaton to play various rhythms and drum patterns. By altering
the "program" - a sequence of pasteboard cards with holes punched in them – the
Jacquard loom could make completely varied weaves in 1801.

The first computer program was written in 1843 by mathematician Ada Lovelace,
who released an algorithm for calculating a sequence of Bernoulli numbers that was
meant to be run by Charles Babbage's Analytical Engine.

Modern programming

Quality requirements
Whatever the approach to development may be, the final program must satisfy some
fundamental properties. The following properties are among the most important:

Reliability: how frequently a program's output is accurate. This is contingent on the


conceptual soundness of algorithms as well as the minimizing of programming faults
such as resource management errors (e.g., buffer overflows and race situations) and
logic errors (such as division by zero or off-by-one errors).
Robustness: how efficiently a computer foresees faults and how well it prevents them
(not bugs). This might include things like erroneous, unsuitable, or corrupt data, a
lack of critical resources like memory, operating system services, and network
connections, user mistake, and unplanned power outages.

Usability: the ergonomics of a program: the ease with which a human can use it for its
intended or, in some situations, unexpected goals. Regardless of other factors, such
challenges can make or break a company's success. This includes a variety of textual,
graphical, and even hardware features that increase the user interface's clarity,
intuitiveness, cohesion, and completeness.

Portability: a set of computer hardware and operating system platforms on which a


program's source code may be built, interpreted, and executed. This is dependent on
variations in the programming capabilities supplied by various platforms, such as
hardware and operating system resources, expected hardware and operating system
behavior, and the availability of platform-specific compilers (and occasionally
libraries) for the source code language.
Maintainability: the ease with which a program's current or future developers can
make changes to it in order to improve it, personalize it, correct bugs and security
flaws, or adapt it to new contexts. In this case, good practices throughout the early
stages of development make all the difference. This attribute may not be immediately
evident to the end user, but it can have a substantial impact on a program's long-term
success.

Efficiency/performance: A measure of how much system resources a program uses


(processing time, memory space, sluggish devices like disks, network bandwidth, and,
to some extent, user interaction): the lower the number, the better. This also entails
careful resource management, such as clearing up temporary files and preventing
memory leaks. This is frequently discussed in the context of a particular programming
language. Even slower languages, like as Python, may run programs immediately
from a human perspective, despite the fact that the language has an impact on
performance. For applications that bottleneck the system, speed, resource utilization,
and performance are vital, but effective use of programmer time is also important and
is connected to cost: more hardware may be cheaper.

Readability of source code

Readability in computer programming relates to how easily a human reader can


understand the purpose, control flow, and functioning of source code. It has an impact
on the qualities listed above, such as portability, usefulness, and, most significantly,
maintainability.
Because programmers spend most of their time reading, trying to understand, reusing,
and altering existing source code rather than generating new source code, readability
is critical. Bugs, inefficiencies, and duplicate code are all common outcomes of
unreadable code. According to a research, a few basic readability changes made code
shorter and cut the time it took to grasp it in half.

It is frequently easier to comprehend code if you use a consistent programming style.


Readability, on the other hand, is more than just a matter of programming style.
Readability is influenced by a variety of variables that have little or nothing to do with
the computer's ability to effectively build and execute the code. Some of these
elements are:

• Different indent styles (whitespace)


• Comments
• Decomposition
• Naming conventions for objects (such as variables, classes, functions,
procedures, etc.)

The source code editor frequently handles the display parts of this (such as indents,
line breaks, color highlighting, and so on), but the content portions reflect the
programmer's aptitude and talents.

Several visual programming languages have also been created with the goal of
addressing readability issues by using non-traditional techniques to code organization
and display. Integrated development environments (I.D.Es) strive to bring all of this
assistance together. Readability may be improved using techniques such as code
refactoring.

The different types of programming


languages:

• Procedural Programming Language.


• Functional Programming Language.
• Object-oriented Programming
Language.
• Scripting Programming Language.
• Logic Programming Language.
• C++ Language.
• C Language.
• Pascal Language.
Procedural Programming Language:

A procedural language is a type of computer programming language that specifies a


series of well-structured steps and procedures within its programming context to
compose a program. It contains a systematic order of statements, functions and
commands to complete a computational task or program.
Procedural programming is a programming paradigm, derived from imperative
programming, based on the concept of the procedure call. Procedures (a type of
routine or subroutine) simply contain a series of computational steps to be carried out.
Any given procedure might be called at any point during a program's execution,
including by other procedures or itself. The first major procedural programming
languages appeared circa 1957–1964.

Using a procedural language to create a program can be accomplished using a


programming editor or IDE, like Adobe Dreamweaver, Eclipse, or Microsoft Visual
Studio. These editors help users develop programming code using one or more
procedural languages, test the code, and fix bugs in the code.

Functional Programming Language.

Functional programming languages are specially designed to handle symbolic


computation and list processing applications. Functional programming is based on
mathematical functions. Some of the popular functional programming languages
include: Lisp, Python, Erlang, Haskell, Clojure, etc.

Functional programming languages are categorized into two groups:

• Pure Functional Languages − These types of functional languages support


only the functional paradigms. For example − Haskell.
• Impure Functional Languages − These types of functional languages support
the functional paradigms and imperative style programming. For example −
LISP.
• Functional Programming – Characteristics
• The most prominent characteristics of functional programming are as follows

• Functional programming languages are designed on the concept of
mathematical functions that use conditional expressions and recursion to
perform computation.
Functional programming offers the following advantages :

• Bugs-Free Code − Functional programming does not support state, so there


are no side-effect results and we can write error-free codes.
• Efficient Parallel Programming − Functional programming languages have
NO Mutable state, so there are no state-change issues. One can program
"Functions" to work parallel as "instructions". Such codes support easy
reusability and testability.
• Efficiency − Functional programs consist of independent units that can run
concurrently. As a result, such programs are more efficient.
• Supports Nested Functions − Functional programming supports Nested
Functions.
• Lazy Evaluation − Functional programming supports Lazy Functional
Constructs like Lazy Lists, Lazy Maps, etc.

Scripting Programming Language:

A scripting language or script language is a programming language for a runtime


system that automates the execution of tasks that would otherwise be performed
individually by a human operator.
Scripting languages are usually interpreted at runtime rather than compiled.
A scripting language's primitives are usually elementary tasks or API calls
clarification needed, and the scripting language allows them to be combined into more
programs.

Environments that can be automated through scripting include application software,


text editors, web pages, operating system shells, embedded systems, and computer
games.

A scripting language can be viewed as a domain-specific language for a particular


environment; in the case of scripting an application, it is also known as an extension
language. Scripting languages are also sometimes referred to as very high-level
programming languages, as they sometimes operate at a high level of abstraction, or
as control languages, particularly for job control languages on mainframes.
Reference

1. https://www.techopedia.com/definition/8982/procedural-language
2. https://en.m.wikipedia.org/wiki/Procedural_programming
3. https://www.computerhope.com/jargon/p/proclang.htm
4. https://www.tutorialspoint.com/functional_programming/functional_program
ming_introduction.htm
5. https://en.m.wikipedia.org/wiki/Scripting_language
6. https://homepage.cs.uri.edu/faculty/wolfe/book/Readings/Reading13.htm
7. https://en.wikipedia.org/wiki/Computer_programming

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy