0% found this document useful (0 votes)
1 views6 pages

Advance Computer Programming-LAB

The document outlines the course structure for CS3623: Advanced Computer Programming, including a weekly lab plan with specific topics and activities. Key areas of focus include Java programming, object-oriented concepts, exception handling, GUI development, database connectivity, and multithreading. The course culminates in a project presentation and includes mid-term and final exams.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1 views6 pages

Advance Computer Programming-LAB

The document outlines the course structure for CS3623: Advanced Computer Programming, including a weekly lab plan with specific topics and activities. Key areas of focus include Java programming, object-oriented concepts, exception handling, GUI development, database connectivity, and multithreading. The course culminates in a project presentation and includes mid-term and final exams.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Course Code CS3623

Course Title Advanced Computer Programming


Credit Hours 3(2+1)
Prerequisites Object Oriented Programming

Weekly Lab Plan:


Week Topics Activities
Introduction To IDE, Introduction to java Lab Task:
and its component 1. Install and configure Java
Brief history of Development Kit (JDK)
Java, Features/characteristics of on your system
Java, Java compilation Process, Types of 2. Install an IDE
Java Applications, Java Development (Eclipse/IntelliJ/NetBeans)
Kit, Java Editions, and Java Development and explore its features
Tools 3. Create, compile and run a
simple "Hello World"
program using:
1 o Command prompt
o IDE
4. Experiment with basic
Java syntax by modifying
the Hello World program

Difference between JRE, JDK, JVM, and Lab Task:


JIT, Java Execution Flow 1. Write a program that
Compiling and Execution of Java demonstrates different
Program through Command Prompt, path primitive data types
and CLASSPATH, Anatomy of Java 2. Create a program that uses
Program various operators
(arithmetic, relational,
logical)
3. Develop a simple
calculator program that
2 takes two numbers and
performs basic operations
4. Experiment with Scanner
class for console input and
JOptionPane for dialog
input

Lab Task:
To obtain input from the console using 1. Create a Student class with
the Scanner class attributes (name, rollNo,
To obtain input using age) and methods
the JOptionPane input dialog boxes 2. Implement a BankAccount
To use identifiers to name variables, class with
constants, methods, and classes deposit/withdraw methods
To use constants to store permanent data 3. Create multiple objects of
To declare Java primitive data these classes and
3 types: byte, short, int, long, float, double, demonstrate their usage.
and char 4. Write a program showing
To use Java operators to write numeric method overloading
expressions
To use short hand operators
To cast value of one type to another type
To represent a string using the String type
To demonstrate defining classes and
creating objects
To create objects using constructors
To access objects via object reference
variables
To define a reference variable using a
reference type
To access an object’s data and methods
using the object member access operator
(.)
To define data fields of reference types
and assign default values for an object’s
data fields
Review of OO programming using java, Lab Task:
Inheritance, Polymorphism 1. Implement inheritance
Encapsulation, and Abstract and Interface with a Person->Student-
classes >GraduateStudent
hierarchy
2. Create an interface and
4 implement it in a class
3. Demonstrate
polymorphism through
method overriding
4. Create an abstract class
with concrete and abstract
methods

Abstract method and an Abstract class, Lab Task:


Interface, Interface as a Type, Interface
vs. Class, defining an Interface,
Implementing an Interface, 1. Write programs
Implementing multiple Interface's, demonstrating try-catch-
Inheritance among Interface's finally blocks
Overview of exceptions and exception 2. Create custom exception
handling, To explore the advantages of classes and throw them in
5 using exception handling, To write a try- a program
catch block to handle exceptions, To use 3. Handle different types of
the finally clause in a try-catch block, exceptions (checked and
Checked vs Unchecked Exceptions, To unchecked)
declare exceptions in a method header, 4. Implement a program that
To throw exceptions in a method, To re- reads numbers from a file
throw exceptions in a catch block, To with proper exception
define custom exception classes handling

File and I/O Stream Lab Task:


Object Serialization and Externalization 1. Write a program to read
from and write to text files
2. Create a program that
serializes and deserializes
6 objects
3. Implement a simple
contact book that
saves/loads contacts
to/from a file
4. Compare different I/O
stream classes

Graphical User Interface (GUI) using Lab Task:


Swing, GUI Helper classes, Creation of 1. Create a simple window
GUI Components with basic components
Frames, Layout Manager, Layout (JButton, JLabel,
Manager Types, Flow Layout, Grid JTextField)
Layout, Border Layout, Multiple Panels 2. Experiment with different
7 in a Frame, JPanel and Graphics, layout managers
Multiple Panels in a Frame, Color Class, (FlowLayout,
BorderLayout,
GridLayout)
3. Build a temperature
converter GUI (Celsius to
Fahrenheit)
4. Create a form with
multiple input fields and a
submit button
Procedural vs Event-Driven Lab Task:
Programming, Event classes, Event 1. Implement action listeners
Information, Selected User Actions, for buttons in a calculator
Delegation Model, Inner class listener, GUI
The delegation model with inner class 2. Create a program that
listener, Anonymous inner classes, Event changes background color
Handler. Using coding based on user selection
8 3. Develop a simple drawing
application with mouse
events
4. Build a GUI with multiple
event listeners (mouse,
keyboard, button)

MID TERM EXAM


Building GUI Through Drag And Drop, Lab Task:
Use Of Event Listeners 1. Create a student
Building Fully Functional GUIs With registration form with
Event Listeners And Layout Managers, various Swing components
Java Wrapper Classes, Writing Programs 2. Implement a menu system
9 Using String And Associated Classes with file operations
And Important String Functions 3. Build a simple text editor
with file open/save
functionality
4. Create a GUI that uses
JTable to display tabular
data

JDBC, Relational Databases, ODBC, Lab Task:


SQL Statements 1. Set up a database
Inserting, Updating connection with
MySQL/JavaDB
2. Create a program that
executes simple SQL
10 queries
3. Implement CRUD
operations for a student
database
4. Write a program that
displays database metadata

Deleting Records, Meta Data Lab Task:


JDBC Revision 1. Implement prepared
statements for secure
database operations
2. Create a program that
handles transactions
11 3. Build a GUI front-end for
database operations
4. Implement a simple login
system with database
authentication

Using Lambda Expressions Lab Task:


Example of Lambda Expression 1. Convert anonymous inner
classes to lambda
expressions
2. Implement functional
12 interfaces using lambdas
3. Use lambda expressions
with Java's built-in
functional interfaces
4. Create a program that uses
lambda expressions for
event handling

Concurrency and Threading, single Lab Task:


thread 1. Create and run simple
Multi-threading threads by extending
Thread class
13 2. Implement Runnable
interface to create threads
3. Demonstrate thread
lifecycle states
4. Create a program showing
thread priorities

Network Programming TCP Lab Task:


Network Programming UDP 1. Implement thread
synchronization for a
shared resource
2. Create a producer-
consumer problem
14 solution
3. Develop a simple TCP
client-server chat
application
4. Implement a UDP time
server-client program

Distributed Applications using RMI Lab Task:


Documenting and packaging java 1. Create a simple RMI
applications application
2. Implement a remote
15 calculator service
3. Package a Java application
as a JAR file
4. Generate JavaDoc
documentation for a
sample project

Project Presentation Lab Task:


 Finalize and demonstrate
course projects
 Peer review of projects
 Project code walkthroughs
Each lab session should include:
16 1. Demonstration of key
concepts by the instructor
2. Hands-on implementation
by students
3. Debugging exercises
4. Small challenges to
reinforce learning
5. Review and Q&A session

FINAL TERM EXAM

You might also like