Review Guide 1 Review Guide Table of Contents OOPS 2 JAVA 3 C 4 DatabaseSQL 6 Web Development 7 SDLC 9 UML 11 2 Review Guide OOPS Resources http en orgwikiObject oriented programming.Review Guide 1 Review Guide Table of Contents OOPS 2 JAVA 3 C 4 DatabaseSQL 6 Web Development 7 SDLC 9 UML 11 2 Review Guide OOPS Resources http en orgwikiObject oriented programming.
Trang 1Table of Contents
OOPS 2
JAVA 3
C# 4
Database/SQL 6
Web Development 7
SDLC 9
UML 11
Trang 2OOPS
Resources:
http://en.wikipedia.org/wiki/Object-oriented_programming
Object-oriented programming (OOP) is a programming paradigm using "objects" – usually instances of a class – consisting
of data fields and methods together with their interactions – to design applications and computer programs Programming techniques may include features such as data abstraction, encapsulation, messaging, modularity, polymorphism,
and inheritance Many modern programming languages now support forms of OOP, at least as an option
Resources:
http://docs.oracle.com/javase/tutorial/java/concepts/
http://codebetter.com/raymondlewallen/2005/07/19/4-major-principles-of-object-oriented-programming/
http://www.codeproject.com/Articles/22769/Introduction-to-Object-Oriented-Programming-Concep
Topics (Click to follow the link):
What Is an Object?
What Is a Class?
What Is Inheritance?
What Is an Interface?
What Is a Package?
Introduction
Background
Prerequisites
The Main Content
What is OOP?
What is an Object?
What is a Class?
How to identify and design a Class?
What is Encapsulation (or information hiding)?
What is Association?
What is the difference between Association, Aggregation and Composition?
What is Abstraction and Generalization?
What is an Abstract class?
What is an Interface?
What is the difference between a Class and an Interface?
What is the difference between an Interface and an Abstract class?
What is Inheritance?
Trang 3JAVA
Resources:
http://en.wikipedia.org/wiki/Java_(programming_language)
Java is a programming language originally developed by James Gosling at Sun Microsystems (which has since merged into Oracle Corporation) and released in 1995 as a core component of Sun Microsystems' Java platform The language derives much
of its syntax from C and C++, but it has fewer low-level facilities than either of them Java applications are
typically compiled tobytecode (class file) that can run on any Java virtual machine (JVM) regardless of computer architecture Java is a general-purpose, concurrent, class-based, object-oriented language that is specifically designed to have as few
implementation dependencies as possible It is intended to let application developers "write once, run anywhere" (WORA), meaning that code that runs on one platform does not need to be recompiled to run on another Java is as of 2012 one of the most popular programming languages in use, particularly for client-server web applications, with a reported 10 million users
Resources:
http://docs.oracle.com/javase/tutorial/java/index.html
Topics (Click to follow the link):
Object-Oriented Programming Concepts teaches you the core concepts behind object-oriented programming: objects, messages, classes, and inheritance This lesson ends by showing you how these concepts translate into code Feel free to skip this lesson if you are already familiar with object-oriented programming
Language Basics describes the traditional features of the language, including variables, arrays, data types, operators, and
control flow
Classes and Objects describe how to write the classes from which objects are created, and how to create and use the
objects
Interfaces and Inheritance describes interfaces—what they are, why you would want to write one, and how to write one
This section also describes the way in which you can derive one class from another That is, how a subclass can inherit fields and methods from a superclass You will learn that all classes are derived from the Object class, and how to modify
the methods that a subclass inherits from super classes
Numbers and Strings describe how to use Number and String objects The lesson also shows you how to format data for
output
Generics are a powerful feature of the Java programming language They improve the type safety of your code, making
more of your bugs detectable at compile time
Packages are a feature of the Java programming language that helps you to organize and structure your classes and their
relationships to one another
Trang 4C#
Resources:
http://www.csharp-station.com/Tutorial/CSharp/SmartConsoleSetup.aspx
http://msdn.microsoft.com/en-us/library/aa645597(v=vs.71).aspx
C# (pronounced "C sharp") is a simple, modern, object-oriented, and type-safe programming language It will immediately be familiar to C and C++ programmers C# combines the high productivity of Rapid Application Development (RAD) languages and the raw power of C++
Visual C# NET is Microsoft's C# development tool It includes an interactive development environment, visual designers for building Windows and Web applications, a compiler, and a debugger Visual C# NET is part of a suite of products, called Visual Studio NET, that also includes Visual Basic NET, Visual C++ NET, and the JScript scripting language All of these languages provide access to the Microsoft NET Framework, which includes a common execution engine and a rich class library The NET Framework defines a "Common Language Specification" (CLS), a sort of lingua franca that ensures seamless interoperability between CLS-compliant languages and class libraries For C# developers, this means that even though C# is a new language, it has complete access to the same rich class libraries that are used by seasoned tools such as Visual Basic NET and Visual C++ .NET C# itself does not include a class library
Getting Started with Visual C# with Examples
http://msdn.microsoft.com/en-us/library/dd492171.aspx
Microsoft has extensive resources for C# with Visual Studio This page is the home of the Microsoft created resource for a programmatic tutorial start with C#
If you are a C++ programmer interested in learning C#
http://msdn.microsoft.com/en-us/library/yyaad03b(v=vs.90).aspx
This link is helpful for anyone who has experience with C++ but not C# It shows similarities and differences between the two languages
If you are a Java programmer interested in learning C#:
http://msdn.microsoft.com/en-us/library/ms228358(v=vs.90).aspx
This link is helpful for anyone who has experience with java but not C# It shows similarities and differences between the two languages
Building Web Sites with ASP.NET
http://www.asp.net/aspnet/overview/making-websites-with-aspnet/making-websites-with-aspnet
ASP.NET is the framework that Microsoft has created to make websites quickly and efficiently programmable This link has a video that explains just that
Trang 5Software Installation VS 2012 Express for Desktop (Mandatory) and Web (Optional)
http://www.microsoft.com/en-us/download/details.aspx?id=34673 -Desktop
http://www.microsoft.com/en-us/download/details.aspx?id=30669 - Web
These are the download links for Visual Studio 2012 Express for Desktop and Web Desktop is needed for programming examples and Web is only needed if you want to proceed with web development practice After the installation completes, check for updates on Windows Update Install any relevant updates and restart your computer if you are prompted to do so The first time you start Visual Studio Express, the program prompts you for a registration code To get the code, follow the instructions on the screen
You need a Windows Live ID to register If you use Messenger, Hotmail, or Xbox Live, you already have a Windows Live ID If not, you can sign up at the following website: https://signup.live.com/signup.aspx?lic=1
NOTE: PLEASE BE SURE TO NOT INSTALL TRIAL VERSION 2012/2010 VISUAL STUDIO PROFESSIONAL
Trang 6DATABASE/SQL
Resources:
http://www.databasedir.com/what-is-rdbms/
RDBMS stands for Relational Database Management System RDBMS data is structured in database tables, fields and records Each RDBMS table consists of database table rows Each database table row consists of one or more database table fields
RDBMS store the data into collection of tables, which might be related by common fields (database table columns) RDBMS also provide relational operators to manipulate the data stored into the database tables Most RDBMS use SQL as database query language
Edgar Codd introduced the relational database model Many modern DBMS do not conform to the Codd’s definition of a RDBMS, but nonetheless they are still considered to be RDBMS
The most popular RDBMS are MS SQL Server, DB2, Oracle and MySQL
Resources:
http://www.w3schools.com/sql/default.asp
http://www.sqlcourse.com/intro.html
Topics (Click to follow the link):
SQL Intro
SQL Syntax
SQL Select
SQL Distinct
SQL Where
SQL And & Or
SQL Order By
SQL Insert
SQL Update
SQL Delete
SQL Select Into
SQL Create DB
SQL Create Table
SQL Constraints
SQL Not Null
SQL Unique
SQL Primary Key
SQL Foreign Key
Trang 7Web Development
HyperText Markup Language (HTML) is the main markup language for displaying web pages and other information that can be
displayed in a web browser
HTML is written in the form of HTML elements consisting of tags enclosed in angle brackets (like <html>), within the web page content HTML tags most commonly come in pairs like <h1>and </h1>, although some tags, known as empty elements, are unpaired, for example <img> The first tag in a pair is the start tag, the second tag is the end tag (they are also called opening tags and closing tags) In between these tags web designers can add text, tags, comments and other types of text-based content
The purpose of a web browser is to read HTML documents and compose them into visible or audible web pages The browser does not display the HTML tags, but uses the tags to interpret the content of the page
HTML elements form the building blocks of all websites HTML allows images and objects to be embedded and can be used to create interactive forms It provides a means to create structured documents by denoting structural semantics for text such as headings, paragraphs, lists, links, quotes and other items It can embed scripts in languages such as JavaScript which affect the
behavior of HTML webpages
Resources:
http://en.wikipedia.org/wiki/HTML
http://www.w3schools.com/html/default.asp
http://docs.webplatform.org/wiki/html/tutorials
Topics (Click to follow the link):
HTML Introduction
HTML Basic
HTML Elements
HTML Attributes
HTML Headings
HTML Paragraphs
HTML Formatting
HTML Links
HTML Tables
HTML Lists
HTML Forms
Trang 8Cascading Style Sheets (CSS)
The technology used to style HTML pages
Resources:
http://docs.webplatform.org/wiki/css/tutorials
JavaScript
This is a lightweight programming language used to make web pages dynamic and user friendly
Resources:
http://www.afterhoursprogramming.com/tutorial/JavaScript/Overview/
jQuery
This is a JavaScript library that makes common functions and tasks easy to do that are done all the time in JavaScript
Resources:
http://try.jquery.com/levels/1/challenges/1
http://learn.jquery.com/about-jquery/how-jquery-works/
eXtensible Markup Language (XML)
This is a file type that allows you to organize data
Resources:
http://msdn.microsoft.com/en-us/library/ms256177(v=vs.110).aspx
Trang 9SDLC
Resources:
http://en.wikipedia.org/wiki/Systems_Development_Life_Cycle
SDLC (Software Development Life Cycle) is the process of developing software through business needs, analysis, design,
implementation and maintenance
Phases
Investigation
The 1st stage of SDLC is the investigation phase During this stage, business opportunities and problems are identified, and information technology solutions are discussed Multiple alternative projects may be suggested and their feasibility analyzed Operational feasibility is assessed, and it is determined whether or not the project fits with the current business environment, and
to what degree it addresses business objects In addition, an economic feasibility investigation is conducted to judge the costs and benefits of the project Technical feasibility must also be analyzed to determine if the available hardware and software resources are sufficient to meet expected specifications A legal feasibility study is important to discover any potential legal ramification The results of the feasibility study can then be compiled into a report, along with preliminary specifications When the investigation stage ends, a decision whether or not to move forward with the project should be made If it is decided to move
Trang 10System analysis
The goal of system analysis is to determine where the problem is in an attempt to fix the system.This step involves breaking down the system in different pieces to analyze the situation, analyzing project goals, breaking down what needs to be created and attempting to engage users so that definite requirements can be defined
Design
In systems design the design functions and operations are described in detail, including screen layouts, business rules, process diagrams and other documentation The output of this stage will describe the new system as a collection of modules or
subsystems
The design stage takes as its initial input the requirements identified in the approved requirements document For each
requirement, a set of one or more design elements will be produced as a result of interviews, workshops, and/or prototype efforts
Design elements describe the desired software features in detail, and generally include functional hierarchy diagrams, screen layout diagrams, tables of business rules, business process diagrams, pseudo-code, and a complete entity-relationship diagram with a full data dictionary These design elements are intended to describe the software in sufficient detail that skilled
programmers may develop the software with minimal additional input design
Testing
The code is tested at various levels in software testing Unit, system and user acceptance testings are often performed This is a grey area as many different opinions exist as to what the stages of testing are and how much, if any iteration occurs Iteration is not generally part of the waterfall model, but usually some occur at this stage In the testing the whole system is test one by one Following are the types of testing:
Defect testing the failed scenarios, including defect tracking
Operations and maintenance
The deployment of the system includes changes and enhancements before the decommissioning or sunset of the
system Maintaining the system is an important aspect of SDLC As key personnel change positions in the organization, new changes will be implemented, which will require system.
Trang 11UML
Resources:
http://edn.embarcadero.com/article/31863
http://pt.wikipedia.org/wiki/Ficheiro:Restaurant-UML-SEQ.gif