What is a window?
Window is a rectangular portion of the monitor's screen that display its contents like menu, icon, a text file or an image file apparently independent of the res of the display screen .
What is a GUI?
GUI - Graphical User Interface is an environment that can work with the graphical objects and allow the event based interactions with the program
There are 3 GUI elements :
- The Explorer - manages the GUI
- The Task bar - grey bar on the bottom of the window with the icons of active programs, clock, calendar and other utilities.
- The Start Menu - A once button approach for accessing programs, help and system settings
The components of GUI
- Icons : for representing applications/ programs
- Menu : including placement and names of the options and styles
- Tiled window : to view multiple windows of programs or data or multiple view of a single program or data block simultaneously
- Dialog box : to select an option/ file/ setting. When an option is selected, previous selection will be turned off
- Check box : for selection of multiple options as in specifying program or file attributes
- Scroll bar : along the edges to show the relative position of the contents such as the beginning or the end of he text or to move to a different position such as another part of a spreadsheet
- Support for pointing device typically, a mouse to select and drag screen elements
Features of GUI
- It makes the computer operations easier to learn and use.
- It allows multi tasking by allowing multiple programs to be displayed simultaneously, resulting in a large increase in flexibility.
- Multiple windows can be opened simultaneously
- An icon- small picture or symbol, represents applications, program, file, device and drive on the desktop and within application programs
- Commands are issued in GUI using a mouse or touch pad or track ball to move the pointer on the screen for selecting objects
- UNIX OS development was started in the year 1969 at the AT & T Bell Laboratory.
- Some of the team members were were withdrawn from the MULTICS Project and started working on the UNIX OS.
- Thompson and Dennis Richie designed and developed a simple multi tasking OS supporting two users.
- It had an elegant file system, command interpreter and a set of utilities.
- One of the members named Brian suggested the name UNICS in the year 1970s.
BSD UNIX
- Berkley has worked on the UNIX OS that was developed by the AT & T Laboratory and created his own UNIX OS named, BSD UNIX.
- A student called Bill Joy defined a standard editor of the UNIX system, called as VI Editor that used C Shell.
- better file management
- more versatile main features
- better method for linking files
Nov 1983 :
Microsoft announced MICROSOFT WINDOWS , an extension of MS DOS Operating System that would provide a graphical operating environment for PC users
Nov 1985 :
Windows 1.0 was released.It has easy to use graphical user interface, device independent graphics and multi tasking supportIt includes, MS DOS executive, Clock, Calendar, Notepad, Terminal, Calculator, Control Panel, Program Information File (PIF), Editor, Print Spooler, Clip board, RAM drive, Windows Write, Windows PaintMicrosoft called it as a new software environment for developing and running applications that use bitmap displays and mouse pointing devices.With this, the GUI era begun
July 1993 :
Windows NT ( formerly, Windows New Technology) as releasedIt was a new milestone of the companyWindows NT was the 1st Microsoft Operating System to combine support for high end client/server business applications with the industry's leading personal productivity applications
1995 :
Windows 95 was released
1998 :
Windows 98 was releasd
Feb 2000:
Windows 2000 professional, upgraded from Windows NT 4.0, was releasedIt made hardware installations easier than the NT4.0 by adding support for a wide variety of plug and play hardware, incuding advanced network and wireless products, USB devices, etc.
Aug 2001 :
WindowsXP was released.
- UNIX is an operating system that was first developed in 1960s.
- It is a suitable multi user, multi tasking operating system for servers, desktops and laptops.
- It also has a GUI similar to the Microsoft Windows.
- There are mainly 3 versions of UNIX:
What is Structured Programming?
Structured programming is a subset of procedural programming
that enforces a logical structure on the program being written to make it more
efficient and easier to understand and modify structure
What are the features of Structured Programming?
- Emphasis on doing things (algorithm)
- Large programs are divided into smaller programs known as
functions
- Most of the functions share the global data
- Functions transform data from one form to another
- Employs top-down approach
List down some program paradigms.
- Procedural programming – COBOL, FORTRAN, Pascal, C
- Functional Programming – LISP
- Logic Programming – PROLOG
- Structured Programming
- Object Oriented Programming
- 4th Generation Programming – Dbase
- Visual / Event Driven Programming – Visual Basic
Define Event Driven Programming.
Event Driven Programming is a programming paradigm or system
architecture that decomposes a program into a set of event handlers.The primary source of events is hardware I/O
What is an event?
An event can be anything such as , button click or mouse
click on a window
Explain how an Event Driven Programming works, with a simple
example.
- Event Driven Programming is a programming paradigm or system
architecture that decomposes a program into a set of event handlers.
- An event can be anything such as : mouse click or button
click on window.
- The primary source of events is hardware I/O.
- Each window is sent messages via function calls that tell it
what has happened based on the events, which are then processed accordingly.
- If a button is clicked, the parent window is sent a message
via a function call to tell what has happened
- Each window has a window procedure that handles all of the
messages sent to it.
Differentiate Procedural and Event Driven Programming.
Procedural Programming Code : We write the set of
instructions, and they are executed in the sequence specified or decided by the
logic
Event Driven Programming Code : It waits for certain events
to occur and then react accordingly
e.g:
Calculation of a math problem :
Procedural Programming
Because, the algorithm to solve the math problem can be programmed
sequentially.
Web Browser / GUI :
Event driven programming
Because, events are good to handle a lot of things at once,
or stuff we might not expect to happen or expect to happen, just not sure when.
Explain Windows Programming Paradigms.
- A Paradigm is essentially a high level model of what
computation is about.
- Following are some programming paradigms :
- Procedural :
- It focus on grouping organizations and/or code by similar
operations or by operations that can be done on them.
- e.g : COBOL, FORTRAN, Pascal, C
- Functional :
- Program contains entirely functions.
- Program itself is written as function which receives inputs as
arguments and output as result.
- There is no assignment statements, thus, a variable value
once assigned will never change
- It acts as an abstract for solution to polymorphism.
- Function can create or manipulate other functions.
- Logical :
- Basic constructs of logical programming : term and
statements are inherited from logic
- There are 3 types of statements in logical programming :
facts, rules and queries
- Logical relationship between various entities are declared
- Programmer writes the database of term and rules.
- User supplies the queries
- System tries to prove it. If it matches a fact, then succeeds.
- Logical Programming Languages, tend to be declarative
languages.
- They concentrate more on the relationship between the parts
of the problem, rather than the sequence to solve the problem
- Structured
- Structured Programming is a subset of procedural programming
paradigm that enforces a logical structure on the program being written to make
it more efficient and easy to understand and modify structure
- There are 3 types of structures that can be used in a
program : Sequence, Decision and Loop
- Object Oriented
- Here, Data type and Function type of data structures are
defined.
- Data structure become the object with data and function.
- Relationship between objects can be created. E.g :
Inheritance.
- 4th Generation Languages (4GL) :
- 1GL - Machine Language - String of 1, 0
- 2GL - Assembly Language
- 3GL -
- High Level Languages like C, C++, etc.
- These programs are compiled into machine language using Java Virtual Machine as a part of the OS
- 4GL
- These are closer to the natural languages than 3GL
- Most of the languages used to retrieve database are 4GL
- Visual / Event Driven : Visual Programming
- It is programming paradigm or system architecture that decomposes a program into a set of event handlers.
- Events can be anything such as , button click or mouse click on window
- The primary source of events is hardware IO
- Each window is sent messages via function calls, telling it what has happened, based on the events, which are then processed accordingly.
- Each window has a window procedure that handles all of the messages sent to it.