Difference between revisions of "Spring 2021: Programming in Java (PSCS)"

From MKWiki
Jump to navigation Jump to search
 
(22 intermediate revisions by the same user not shown)
Line 5: Line 5:
  
 
== Course Overview ==
 
== Course Overview ==
* As per the [http://mkbhandari.com/mkwiki/data/fall2020/spSyllabus1.pdf '''COURSE Guidelines'''] '''Yet to be finalized'''
+
* As per the '''COURSE Guidelines''', yet to be finalized.
  
 
== Lectures ==
 
== Lectures ==
Line 17: Line 17:
 
| style="width: 8%" | Lecture 01 (Jan 05)
 
| style="width: 8%" | Lecture 01 (Jan 05)
 
| style="width: 60% | '''''Introduction''''': History of Java, Java Features, First Sample Program, Java Virtual Machine(JVM) Architecture.
 
| style="width: 60% | '''''Introduction''''': History of Java, Java Features, First Sample Program, Java Virtual Machine(JVM) Architecture.
| style="width: 15%" | [http://mkbhandari.com/mkwiki/data/fall2020/1IntroSS.pdf '''0.pdf''']
+
| style="width: 15%" | [http://mkbhandari.com/mkwiki/data/spring2021/Java(PSCS)/1Intro.pdf '''1.pdf''']
| Chapter 1 (Additional R1)
+
| Chapter 1 (R1)
 +
|-
 +
| Lecture 02 (Jan 12)
 +
| '''''OOPs Principles''''': Object, Class, Encapsulation, Abstraction, Inheritance, Polymorphism.
 +
| style="width: 15%" | [http://mkbhandari.com/mkwiki/data/spring2021/Java(PSCS)/2OOPs.pdf '''2.pdf''']
 +
| Chapter 2 (R1)
 +
|-
 +
| Lecture 03 (Jan 19, Feb 01)
 +
| ''''' Java Programming Fundamentals''''': Data Types, Variables, Operators, Keywords, Naming Convention, Decision Making(if, switch), Looping(for, while), Type Casting.
 +
| style="width: 15%" | Read/Download Lecture 03 from [http://www.mkbhandari.com/mkwiki/Spring_2020:_Programming_in_Java]
 +
| Chapter 3,4,5 (R1)
 +
|-
 +
| Lecture 04 (Feb 02)
 +
| ''''' Classes and Objects''''': Creating Classes and objects, Constructors(default, no-parameter, parameterized, ''this'' keyword, etc
 +
| style="width: 15%" | [http://mkbhandari.com/mkwiki/data/spring2021/Java(PSCS)/4Classes.pdf '''4.pdf''']
 +
| Chapter 6 (R1)
 +
|-
 +
| Lecture 05 (Feb 09)
 +
| ''''' Inheritance''''': Inheritance basics, ...
 +
| style="width: 15%" | Read/Download Lecture 10 from [http://www.mkbhandari.com/mkwiki/Spring_2020:_Programming_in_Java]
 +
| Chapter 8 (R1)
 
|}
 
|}
  
 
== Assignments and Tests==
 
== Assignments and Tests==
  
===Class Assignments===
+
===Home Assignments===
 
* ''Home Assignment (HA) No. 1'', Difference between JDK, JRE, and JVM. [12/01/2021]
 
* ''Home Assignment (HA) No. 1'', Difference between JDK, JRE, and JVM. [12/01/2021]
 +
* ''Home Assignment (HA) No. 2'', Difference between C++ and Java. [02/02/2021]
 +
* ''Home Assignment (HA) No. 3'', Difference between OOPs and POPs. [02/02/2021]
  
 
===Class Assignments===
 
===Class Assignments===
 
* ''Assignment No. 1'', Posted on Google Classroom, '''Submission Deadline:''' **/**/2021
 
* ''Assignment No. 1'', Posted on Google Classroom, '''Submission Deadline:''' **/**/2021
 
* ''Assignment No. 2'', Posted on Google Classroom, '''Submission Deadline:''' **/**/2021
 
* ''Assignment No. 2'', Posted on Google Classroom, '''Submission Deadline:''' **/**/2021
 +
* ''Assignment No. 3'', Posted on Google Classroom, '''Submission Deadline:''' **/**/2021
  
 
===Tests===
 
===Tests===
Line 36: Line 59:
  
 
== Resources ==
 
== Resources ==
* '''R1''': Aho, A., Lam, M., Sethi, R., & Ullman, J. D. (2006). Compilers: Principles, Techniques, and Tools. 2nd edition. Addison Wesley.
+
* '''R1''': Herbert Schildt, The Complete Reference, 9th Edition, MGH Education (India). ['''''Tentative''''']
* '''R2''': Chattopadhyaya, S. (2011). System Software. P H I Learning.
+
* '''Web 1:''' The Java™ Tutorials [https://docs.oracle.com/javase/tutorial/]
* '''Additional R1''': Beck, L. & Manjula, D. (1996). System Software: An Introduction to System Programming. 3rd edition. Pearson Education.
+
* '''Web 2:''' Java T Point Tutorial  [https://www.javatpoint.com/java-tutorial]
* '''Additional R2''': Dhamdhere, D. M. (2015). Systems Programming. Tata McGrawHill.
+
* '''Web 3:''' NTU notes on Java [https://www3.ntu.edu.sg/home/ehchua/programming/index.html#Java]

Latest revision as of 17:27, 23 April 2021

Logistics

  • Class Timings: Tuesdays 1:00 pm - 3:00 pm (5th and 6th slot)
  • Classroom: Online
  • Lab Timings: Mondays (8:45 am - 12:45 pm (1st to 4thslot)

Course Overview

  • As per the COURSE Guidelines, yet to be finalized.

Lectures

Lecture Topic Lecture Slides Readings
Lecture 01 (Jan 05) Introduction: History of Java, Java Features, First Sample Program, Java Virtual Machine(JVM) Architecture. 1.pdf Chapter 1 (R1)
Lecture 02 (Jan 12) OOPs Principles: Object, Class, Encapsulation, Abstraction, Inheritance, Polymorphism. 2.pdf Chapter 2 (R1)
Lecture 03 (Jan 19, Feb 01) Java Programming Fundamentals: Data Types, Variables, Operators, Keywords, Naming Convention, Decision Making(if, switch), Looping(for, while), Type Casting. Read/Download Lecture 03 from [1] Chapter 3,4,5 (R1)
Lecture 04 (Feb 02) Classes and Objects: Creating Classes and objects, Constructors(default, no-parameter, parameterized, this keyword, etc 4.pdf Chapter 6 (R1)
Lecture 05 (Feb 09) Inheritance: Inheritance basics, ... Read/Download Lecture 10 from [2] Chapter 8 (R1)

Assignments and Tests

Home Assignments

  • Home Assignment (HA) No. 1, Difference between JDK, JRE, and JVM. [12/01/2021]
  • Home Assignment (HA) No. 2, Difference between C++ and Java. [02/02/2021]
  • Home Assignment (HA) No. 3, Difference between OOPs and POPs. [02/02/2021]

Class Assignments

  • Assignment No. 1, Posted on Google Classroom, Submission Deadline: **/**/2021
  • Assignment No. 2, Posted on Google Classroom, Submission Deadline: **/**/2021
  • Assignment No. 3, Posted on Google Classroom, Submission Deadline: **/**/2021

Tests

  • Test 1, **/**/2021.
  • Test 2, **/**/2021.
  • Test 3, **/**/2021.

Resources

  • R1: Herbert Schildt, The Complete Reference, 9th Edition, MGH Education (India). [Tentative]
  • Web 1: The Java™ Tutorials [3]
  • Web 2: Java T Point Tutorial [4]
  • Web 3: NTU notes on Java [5]