You are on page 1of 5

2/23/2017 yetanotherinsignificantProgrammingNotes

yet another insignificant...

programming notes
How- Client- Server-
| Java | Database | | | Webapp | Game | OpenGL | C/C++ | Android
To Side Side

Before Getting Started... Java Programming Part I


Programmer's Survival Guide for Windows For FirstTime Programmers
Programmer's Survival Guide for Mac & Ubuntu 1. Introduction to Java Programming

For New Comers to Java & OOP


IM1003 Objectoriented 2. Java Basics
Programming Exercises: Java Basics
How to install JDK 8 3a. OOP Basics
Week 3 Eclipse OR NetBeans 3b. OOP Composition, Inheritance & Polymorphism

Java Basics 3c. OOP WrappingUp

1. Introduction to Java Programming Exercises: OOP

2. Java Basics 4a. String is Special

Exercises: Java Basics 4b. Enumeration enum


4c. Exception Handling & Assertion
Java OOP
4d. Java Reference
3a. OOP Basics
3b. OOP Composition, Inheritance & Polymorphism
Power Users
3c. OOP WrappingUp
Exercises: OOP Data Representation Integers, FloatingPoint
Numbers & Character Sets
4a. String is Special
Regular Expression Regex
Java Graphics
5a. Graphical User Interface GUI
Java Programming Part II
5b. Custom Graphics
Intermediate Java
Exercises: Graphics Programming
5a. Graphical User Interface GUI
Case Study / Assignment
5b. Graphical User Interface GUI Part II
Graphics Programming Assignment Sudoku
5c. Custom Graphics
Graphics Programming Assignment Mine Sweeper
Exercises: Graphics Programming
Case Study: Graphics Programming Tictactoe
Case Study: Graphics Programming Tictactoe
Case Study: Graphics Programming Part II AI
IM2073 Web Programming 5d. Applet & WebStart Application

Session 1: How to Install MySQL Server and Get 5e. Swing Templates, Misc & HowTo
Started with SQL 6a. Multithreading
Session 2a: Introduction to Java Database 6b. Basic Input & Output I/O
Programming
6c. Advanced I/O
https://www.ntu.edu.sg/home/ehchua/programming/#Java 1/5
2/23/2017 yetanotherinsignificantProgrammingNotes

Session 2b: How to Install Tomcat Server and Get 6d. Networking
Started with Java Servlet Programming 7a. The Collection Framework
Session 3: WebApp Case Study 7b. Generics
7c. Annotation
IM2073 Mobile Programming
Special Topics in Java
Project Instructions Java Unit Testing JUnit & TestNG
Session 1: Android How to install & Get Started Java Build Ant & Maven [TODO]
Session 2: Android Basics: User Interfaces and Calendar, Date and Time
Activities
XML and Java
For your project: Android Networking
Regular Expression Regex and Java
JavaBeans
How to Install & Get Started... Java Logging Framework
JDK 8 Java Native Interface JNI
Environment Variables PATH, CLASSPATH,
Java Appendices
JAVA_HOME
JDK API Documentation
Eclipse 4.6 for Java
Packages and CLASSPATH
NetBeans 8.2 for Java
Java Archive JAR
Eclipse 4.3 Kepler for C/C++
Java Miscellaneous HowTo
CodeBlocks for C/C++
JDK 1.6's New Features [TODO]
Tomcat 7/8
JDK 1.7's New Features
More Tomcat 7
Apache 2.2 How to Install
Java ME
Apache 2.2 How to Configure
Apache 2 with Tomcat 6 1. Java ME: Getting Started, Basics & Game
Programming
MySQL 5.7
MySQL 5.6
Git Java Game Programming
Wiki Text 1. Introduction: The World of Bouncing Balls
NTU VPN 2. 2D Graphics, Java 2D and Images
3. Playing Sound
Windows
4. Java Game Framework
Programmer's Survival Guide for Windows
Windows Basics
Cygwin & MinGW for Windows ClientSide Programming
Visual C++ 2010/2008 Express HTML/CSS Basics
HTML/CSS Intermediate
Unix, Ubuntu Linux & Mac OS
HTML/CSS Tips & HowTo
Programmer's Survival Guide for Mac & Ubuntu
JavaScript Basics
Unix Basics
jQuery & Ajax
Ubuntu Desktop Install & Setup
JavaScript/jQuery Advanced Examples
Ubuntu Server Install & Setup
HTML5/CSS3 Advanced Features
Mac OS JDK, MySQL, Tomcat...
Bootstrap, Font Awesome, Parsley and Others
Error Messages
Angular JS
Common Error Messages JDK, MySQL, Tomcat....

https://www.ntu.edu.sg/home/ehchua/programming/#Java 2/5
2/23/2017 yetanotherinsignificantProgrammingNotes

Android Database Programming


Android How to install & Get Started MySQL
Android Basics and User Interfaces 1. MySQL 1: How to Install and Get Started
Android More Basics 2. MySQL 2: By Examples for Beginners

Android Custom 2D Graphics 3. Relational Database Design


Android 3D Graphics in OpenGL ES 4. MySQL 3: Intermediate
Android Networking 5. SQL Sample Databases
Android Native Development Kit NDK 6. MySQL 4: Miscellaneous

JDBC
Arduino 1. Introduction to Java Database Programming
JDBC
Arduino Get Started
2. Intro to JDBC Part 2
3. JDBC Intermediate
Software Notes
PostgreSQL
Recommended Shareware/Freeware
1. PostgreSQL: Get Started
Windows, Office, Firefox, Dreamweaver & Others

Serverside Programming
ICPC
Java Servlet/JSP
Getting Started
0. How to Install Tomcat and Get Started
Tips, Trick & Tweaks
1. Java Servlets Case Study
PC^2 U/C
2. Java Servlets
3. Tomcat's Java Servlet Examples Explained
4. More on Tomcat
5. Java Servlets Case Study Continue
6. Getting Started with JSP by Examples
7. JavaServer Pages JSP
8. JavaServer Faces JSF
9. Java Web Database Applications
10. Struts
11. Java Web Services

PHP
0. Setup AMP Apache/MySQL/PHP
1. PHP Basics
2. PHP/MySQL Webapps
3. OOP in PHP
5. PHP Miscellaneous
6. PHP Unit Testing

Perl
1. Perl Basics
2. Regular Expression, File IO & Text Processing

Python
1. Python Basics
https://www.ntu.edu.sg/home/ehchua/programming/#Java 3/5
2/23/2017 yetanotherinsignificantProgrammingNotes

2. Python Database & Webapp


3. Python Webapp with Flask

Node.js
1. Node.js Basics

Webapps
Basics
Terminology

Testing
Webapp Acceptance Testing with Selenium

Security
Advanced Webapps Security

Misc
Advanced Webapps Tips

Web Protocols
HTTP 1: Basics
HTTP 2: State Management
HTTP 3: Authentication
HTTP 4: SSL

3D Graphics & OpenGL


Setup on Various Platforms
OpenGL in C/C++
JOGL 2.0|JOGL 1.1
LWJGL 2.8
Java 3D

Computer Graphics with OpenGL


CG 1. Introduction to OpenGL
CG 2. Computer Graphics Basic Theory
CG 3. OpenGL Examples
CG 3. Computer Graphics Curves & Surfaces
[TODO]
CG 4. OpenGL Shading Language GLSL [TODO]
References & Resources

OpenGL|ES
3D Graphics in OpenGL ES for Android

Physics Engine
Bullet Physics & JBullet Physics Engine

C/C++ Programming
https://www.ntu.edu.sg/home/ehchua/programming/#Java 4/5
2/23/2017 yetanotherinsignificantProgrammingNotes

C++ Programming Language


0. C++ Introduction
1. C++ Basics
2. C++ More Basics
3. C++ OOP Basics
4. C++ Pointers, References & Dynamic Allocation
5. C++ OOP Examples
6. C++ OOP Inheritance & Polymorphism
7. C++ Operator Overloading
8. C++ Template & Generic Programming
9. C++ Strings
10. C++ Libraries & STL
11. C++ IO Streams & File IO
12. C++ Misc, Tips & Traps
13. Data Structure and Algorithm in C++

C Programming Language
0. C Introduction
1. C Basics

C/C++ Compilers and IDEs


GCC and Make
CodeBlocks for C/C++
Eclipse for C/C++
Visual C++

Last modified: January, 2017

Feedback, comments, corrections, and errata can be sent to Chua HockChuan ehchua@ntu.edu.sg |TOP
These are my teaching notes which I share with anyone interested. I update some articles more often than others, based on feedback
received on the usefulness of the articles.

https://www.ntu.edu.sg/home/ehchua/programming/#Java 5/5

You might also like