Page 8 - Computer science 868 Class 12
P. 8

SECTION B
                    The programming element in the syllabus (Sections B and C) is aimed at algorithmic problem solving and
                    not merely rote learning of Java syntax. The Java version used should be 5.0 or later. For programming, the
                    students can use any text editor and the javac and java programs or any other development environment:
                    for example, BlueJ, Eclipse, NetBeans etc. BlueJ is strongly recommended for its simplicity, ease of use and
                    because it is very well suited for an ‘objects first’ approach.


                    3.   Implementation of algorithms to solve problems
                        The students are required to do lab assignments in the computer lab concurrently with the lectures.
                       Programming  assignments  should  be  done  such  that  each  major  topic  is  covered  in  at  least  one
                       assignment.  Assignment  problems  should  be  designed  so  that  they  are  sufficiently  challenging.
                       Students must do algorithm design, address correctness issues, implement and execute the algorithm
                       in Java and debug where necessary.
                       Self explanatory.

                    4.   Programming in Java (Review of Class XI Sections B and C)

                        Note that items 4 to 13 should  be introduced almost simultaneously  along  with  classes  and  their
                       definitions.
                       While reviewing, ensure that new higher order problems are solved using these constructs.

                    5.   Objects
                       (a)  Objects as data (attributes) + behaviour (methods); object as an instance of a class. Constructors.

                       (b)  Analysis of some real-world programming examples in terms of objects and classes.
                       (c)   Basic input/output using Scanner and Printer classes from JDK; input/output exceptions. Tokens in
                           an input stream, concept of whitespace, extracting tokens from an input stream (String Tokenizer
                           class).

                    6.   Primitive values, Wrapper classes, Types and casting

                        Primitive values and types: byte, int, short, long, float, double, boolean, char. Corresponding wrapper
                       classes for each primitive type. Class as type of the object. Class as mechanism for user defined types.
                       Changing types through user defined casting and automatic type coercion for some primitive types.

                    7.   Variables, Expressions
                        Variables as names for values; named constants (final), expressions (arithmetic and logical) and their
                       evaluation (operators, associativity, precedence). Assignment operation; difference between left hand
                       side and right hand side of assignment.

                    8.   Statements, Scope
                        Statements; conditional (if, if else, if else if, switch case, ternary operator), looping (for, while, do while,
                       continue, break); grouping statements in blocks, scope and visibility of variables.

                    9.   Methods
                        Methods (as abstractions for complex user defined operations on objects), formal arguments and actual
                       arguments  in  methods;  different  behaviour  of  primitive  and  object  arguments.  Static  method  and
   3   4   5   6   7   8   9   10   11   12   13