Professional Documents
Culture Documents
Application
Development.
.NET
Rustam Vahidov
Philosophy
BTM 380
Introduction
Application Development Phases
Planning
Analysis
Understanding the required functionality
Design
Overall
Detailed
Implementation
Construction
Testing
Development Methodologies
Waterfall
Sequential: one phase has to be completed before next one
starts
Development Methodologies
Prototyping
Evolutionary
Build system in small increments
Evaluate and modify
The prototype evolves into the final system
Throwaway
When the users accept the prototype, scrap it and
start design and implementation of the system
The CPU
Main memory
Secondary storage devices
Input devices
Output devices
The CPU
The central processing unit is the part that
actually runs programs
The most important part of a computer
Today CPUs are microprocessor
Commonly used CPU vendors are Intel and AMD
Main Memory
The computers work area
Where the computer loads instructions of
programs and data for processing
Commonly known as RAM, random-access
memory
Designed for CPUs to quickly access data stored
at any random location in the RAM
Input
Device
Central
Processing
Unit
Main
Memory
Output
Device
Secondary
Storage
Software
Categorized mainly into system
software and application software
System software are programs that control
and manage the basic operations of a
computer.
Application software are programs that
perform special tasks
Programming Languages
Machine languages: sequences of 0s and 1s
Assembly languages: use short words known as
mnemonics to write program
Must be translated by assembler
Still considered low-level languages
Language generations
1st
Language generations
2nd
Assembly languages
Based on mnemonics (abbreviated instructions)
Assemblers: translate into machine code, resolves
symbolic references into addresses
Today: limited to direct hardware manipulation,
performance critical uses
Language Generations
3rd
Machine independence
C#
C
C++
PHP
Objects
Most programming languages use objectoriented programming in which a program
component is called an object
Program objects have properties (or fields) and
methods
Properties data stored in an object
Methods the operations an object can perform
Form object
Label objects
TextBox objects
Button objects
Controls
Objects that are visible in a program
GUI are known as controls
Commonly used controls are Labels,
Buttons, and TextBoxes
They enhance the functionality of your
programs
Algorithm, Pseudocode,
Flowchart
An algorithm is a set of well-defined, logical
steps that must be taken to perform a task
An algorithm that is written out in plain
English is called pseudocode
A flowchart is a diagram that graphically
depicts the steps of an algorithm
Project
History of Object-Oriented
Programming (OOP)
Simula (1961-1964, 1967)
Smalltalk (1971-1980)
Term OOP
C++ (1985)
Superset of C
Java (1995)
Platform-independence
C# (2001)
Python, Eiffel, PowerBuilder, VB,
.NET Overview
.NET features
.NET framework
Class library
Data access
Windows forms
Security
XML/SOAP
Threading
File I/O
Web Forms, etc.
Execution environment
Memory management
Exception Handling
Garbage collection
Security Services
IL example
.method public static void Main() cil managed
{
.entrypoint
.custom instance void
[mscorlib]System.STAThreadAttribute::.ctor() = ( 01 00 00
00 )
// Code size 17 (0x11)
.maxstack 8 IL_0000: ldstr "About Visual Basic!"
IL_0005: call void
[mscorlib]System.Console::WriteLine(string)
IL_000a: call string
[mscorlib]System.Console::ReadLine()
IL_000f: pop
IL_0010: ret
} // end of method Module1::Main
.NET Framework
Integrated
Development
Environment
C#
compiler
Common
Language
Runtime
Solution
Assembly
Project
Intermediate Language (IL)
Source files
Class references