0% found this document useful (0 votes)
77 views26 pages

Computer Fundamental CSE 111: Programming Languages

The document compares and contrasts Ethernet hubs, switches, and routers. It explains that hubs simply broadcast all incoming traffic to all ports, switches learn port locations and only forward traffic to relevant ports, and routers perform additional functions like dynamic IP address assignment and network address translation between local and internet networks. It then discusses different generations of programming languages from machine code to modern languages and provides examples of commonly used languages like SQL, Java, JavaScript, C++, Python, PHP, Ruby on Rails, and Swift.

Uploaded by

Azharul Islam
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
77 views26 pages

Computer Fundamental CSE 111: Programming Languages

The document compares and contrasts Ethernet hubs, switches, and routers. It explains that hubs simply broadcast all incoming traffic to all ports, switches learn port locations and only forward traffic to relevant ports, and routers perform additional functions like dynamic IP address assignment and network address translation between local and internet networks. It then discusses different generations of programming languages from machine code to modern languages and provides examples of commonly used languages like SQL, Java, JavaScript, C++, Python, PHP, Ruby on Rails, and Swift.

Uploaded by

Azharul Islam
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 26

Computer Fundamental

CSE 111
Programming Languages
What is the difference between Ethernet hub,
switch and router?
All these three devices has the common goal for you, connecting your
computer with other computers, network devices, or even with other
networks.
Each of the devices has two or more connectors called ports into which
the cables can be plugged in to make connection.
Ethernet hub
• A Ethernet hub is least expensive among these three, also least
intelligent, least complicated. Its job is very simple-anything that
comes in one port is sent out to the others.
• For example, if a message comes in for computer “A”, that message is
sent out all the other ports.
Cont’d
• Similar, when computer “A” responds, its response also goes out to
every other port on the Ethernet hub.
Switches
• A switch does essentially what a hub does, but more efficiently. By
paying attention to the traffic that comes across it, it can “learn”
where particular addresses are.
• Initially a switch knows nothing and simply sends on incoming
message to all ports.
• However the switch has learned something-it knows on which
connecting the sender of the message is located. Thus when machine
“A” responds to the message, the switches only need to send that
message out to the once connection.
Cont’d
• In addition to sending the response through to the originator, the
switch has now learned something else-it now knows on which
connection machine “A” is located.
• That means the subsequent message destined for machine “A” need
only by sent to that one port.
• Switches learn the location of the devices that they are connected to
almost instantaneously. The net result is that most network traffic
only goes where it needs to rather than to every port, saves network
from data traffic jam.
Router
• Router is the smartest and most complicated of the bunch. A simple
way to think of a router is as a computer that can be handle. Many
routers today are, in fact, little computers dedicated to the task of
routing network traffic.
• As far as simple traffic routing is concerned, a router operates exactly
as switch, learning the location of the computers on its connections
and routing traffic only to those computers.
Cont’d
• Consumer grade routers perform at the minimum two additional and
important DHCP- Dynamic Host Configuration Protocol is the way
dynamic IP address are assigned. A device asks for an IP address to be
assigned to it from “upstream” and DHCP server responds with an IP
address assignment.
• A router connected to the ISP provided internet connection with
typically ask your ISP’s server for an IP address; this will be your IP
address on the internet.
• Local computers, on the other hand, will ask the router for an IP
address and there addresses are local to your network.
Cont’d
• NAT-network address translation is the way that the router translates
the IP address of packets that cross the internet/local network
boundary.
Programming Languages
• A programming language is a formal computer language designed to
communicate instructions to a machine, particularly a computer.
Programming languages can be used to create programs to control the
behavior of a machine or to express algorithms.

• Programming Languages- Generations


1. 1st generation machine code
2. 2nd generation assembly
3. 3rd generation imperative
4. 4th generation data query, analysis and reporting
Cont’d
• First and second generation are counted in low level language. A low
level language is the machine code and assembly code.
• Third and fourth generation are counted in high level language. A
programming language that allows programs to be written using
English keywords and its platform independent (not always true).
Low Level Languages Advantages
• Achieves smaller memory footprint (compact).
• Achieves better code optimization and therefore code will run faster and more
efficiently.
• Allows direct manipulation if the registers on the processors, give high levels of
control.
• Processors in these systems may be slow and have limited memory so the
efficiency of assembly language or machine code is needed. Also useful real
time control systems where speed is very important.
• Since you are writing at machine level you control the level of the code created.
• Can be easily modified.
Disadvantages
High Level Languages
Cont’d
Cont’d
Programming Language
Programming Languages
• SQL (Server Query Language): pronounced ‘sequel’, database
technologies such as MySQL, PostgreSQL and Microsoft SQL server
power big business, small business and everywhere. All android
phones and iPhones have access to a SQL database called SQLite and
many mobile apps developed Google, Skype and DropBox use it
directly.
Java
• The tech community recently celebrated the 20th anniversary of Java.
It’s one of the most widely adopted programming languages, used by
some 9 million developers and running on 7 billion devices
worldwide. It’s also the programming language used to develop all
native Android apps. Java’s popularity with developers is due to the
fact that the language is grounded in readability and simplicity. Java
has staying power since it has long-term compatibility, which makes
sure older applications continue to work now into the future. It’s not
going anywhere anytime soon and is used to power company
websites like LinkedIn.com, Netflix.com and Amazon.com.
JavaScript
• JavaScript – not to be confused with Java – is another one of the world’s
most popular and powerful programming languages, and is used to spice
up web pages by making them interactive. For example, JavaScript can be
used to add effects to web pages, display pop-up messages or to create
games with basic functionality. It’s also worth noting that JavaScript is the
scripting language of the World Wide Web and is built right into all major
web browsers including Internet Explorer, FireFox and Safari. Almost every
website incorporates some element of JavaScript to add to the user
experience, adding to the demand for JavaScript developers. In recent
years JavaScript has also gained use as the foundation of Node.js, a server
technology that among other things enables real-time communication.
C#
• Dating from 2000, C# (pronounced C-sharp) is a relatively new
programming language designed by Microsoft for a wide range of
enterprise applications that run on the .NET Framework. An evolution
of C and  C++, the C# language is simple, modern, type safe and object
oriented.
C++
• C++ (pronounced C-plus-plus) is a general purpose object-oriented
programming language based on the earlier ‘C’ language. Developed
by Bjarne Stroustrup at Bell Labs, C++ was first released in 1983.
Stroustrup keeps an extensive list of applications written in C++. The
list includes Adobe and Microsoft applications, MongoDB databases,
large portions of Mac OS/X and is the best language to learn for
performance-critical applications such as “twitch” game development
or audio/video processing.
Python
• Python is a general purpose programming language that was named
after the Monty Python (so you know it’s fun to work with)! Python is
simple and incredibly readable since closely resembles the English
language. It’s a great language for beginners, all the way up to
seasoned professionals. Python recently bumped Java as the language
of choice in introductory programming courses with eight of the top
10 computer science departments now using Python to teach coding,
as well as 27 of the top 39 schools. Because of Python’s use in the
educational realm, there are a lot of libraries created for Python
related to mathematics, physics and natural processing. PBS, NASA
and Reddit use Python for their websites.
PHP
• Created by Danish-Canadian programmer Rasmus Lerdorf in 1994,
PHP was never actually intended to be a new programming language.
Instead, it was created to be a set of tools to help Rasmus maintain
his Personal Home Page (PHP). Today, PHP (Hypertext Pre-Processor)
is a scripting language, running on the server, which can be used to
create web pages written in HTML. PHP tends to be a popular
languages since its easy-to use by new programmers, but also offers
tons of advanced features for more experienced programmers.
Ruby on Rails
• Like Java or the C language, Ruby is a general purpose programming
language, though it is best known for its use in web programming,
and Rails serves as a framework for the Ruby Language. Ruby on Rails
has many positive qualities including rapid development, you don’t
need as much code, and there are a wide variety of 3rd party libraries
available. It’s used from companies ranging from small start-ups to
large enterprises and everything in-between. Hulu, Twitter, Github
and Living Social are using Ruby on Rails for at least one of their web
applications.
iOS/Swift
• In 2014, Apple decided to invent their own programming language. The result
was Swift – a new programming language for iOS and OS X developers to create
their next killer app. Developers will find that many parts of Swift are familiar
from their experience of developing in C++ and Objective-C. Companies
including American Airlines, LinkedIn, and Duolingo have been quick to adopt
Swift, and we’ll see this language on the rise in the coming years.

• Any great craftsman has a belt full of tools, each a perfect choice for certain
situations. Similarly, there will never be just a single programming language,
and each language will evolve and improve over time to keep pace with
innovation.

You might also like