
India · 2021 regulation
CHRIST (Deemed to be University)
94 labpractica voor het CHRIST-leerplan.
De B.Tech CSE volgens de regeling van 2021, met de nadruk op Java en databases. Elke les verloopt in stappen en wordt gecompileerd en gecontroleerd door een echte toolchain op je eigen computer: het model beoordeelt je code achteraf, het bepaalt niet of je geslaagd bent.
Bijgewerkt
Semester per semester
Opleiding: B.Tech Computer Science and Engineering. Regeling: 2021 regulation. Open een vak om de practicumonderdelen te zien en het labpracticum dat GroutCode bij elk onderdeel meelevert.
Semester 1
1 vak5 lablessenC- CS134PC
Computer Programming
5
lessen
- Array Statistics and Manipulation
- Fibonacci with Decision Making and Loops
- 1Array Statistics and ManipulationOnderdeel I · Algorithms and Flowcharts, Constants, Variables and Datatypes, Operators, Managing Input and Output Operations
- 2Fibonacci with Decision Making and LoopsOnderdeel II · Decision Making And Branching, Looping
- 3Array Sorting with User-Defined FunctionsOnderdeel III · Arrays, User Defined Functions
- 4Pointer Basics and Array AccessOnderdeel IV · Pointers
- 5String Reversal with StructuresOnderdeel V · Strings, Derived Types, Files
Semester 3
3 vakken15 lablessenSQLJava- CS331PSQL
Database Management Systems
5
lessen
- ER Model to Relational Schema Mapping
- SQL Query Building for Relational Database Design
- 1ER Model to Relational Schema MappingOnderdeel I · INTRODUCTION AND CONCEPTUAL MODELING
- 2SQL Query Building for Relational Database DesignOnderdeel II · RELATIONAL MODEL
- 3B+ Tree Index ImplementationOnderdeel III · DATA STORAGE AND QUERY PROCESSING
- 4Transaction Isolation Levels in SQLiteOnderdeel IV · TRANSACTION MANAGEMENT
- 5XML Data Processing with SQLiteOnderdeel V · CURRENT TRENDS
- CS332PJava
Data Structures and Algorithms
5
lessen
- Understanding Data Structure Classification
- Stack Implementation with Array
- 1Understanding Data Structure ClassificationOnderdeel I · INTRODUCTION
- 2Stack Implementation with ArrayOnderdeel II · LISTS, STACKS AND QUEUES
- 3Binary Search Tree ImplementationOnderdeel III · TREES
- 4Insertion Sort ImplementationOnderdeel IV · SORTING
- 5Implementing Breadth-First Search for Unweighted Shortest PathOnderdeel V · GRAPHS
- MICS331PJava
INTRODUCTION TO DATA STRUCTURES AND ALGORITHMS
5
lessen
- Generic Array Sorting with Bubble Sort
- Stack Implementation with Array Representation
- 1Generic Array Sorting with Bubble SortOnderdeel I · INTRODUCTION
- 2Stack Implementation with Array RepresentationOnderdeel II · LISTS, STACKS AND QUEUES
- 3Binary Search Tree InsertionOnderdeel III · TREES
- 4Insertion Sort ImplementationOnderdeel IV · SORTING
- 5Topological Sort ImplementationOnderdeel V · GRAPHS
Semester 4
4 vakken20 lablessenCJavaPython- CS432PC
Operating Systems
5
lessen
- Process State Management
- CPU Scheduling Algorithm Implementation
- 1Process State ManagementOnderdeel I · INTRODUCTION
- 2CPU Scheduling Algorithm ImplementationOnderdeel II · PROCESS MANAGEMENT
- 3Synchronization and deadlock: Peterson, semaphores, philosophers and the bankerOnderdeel III · PROCESS SYNCHRONIZATION AND DEADLOCKS
- 4Simulate FIFO Page ReplacementOnderdeel IV · MEMORY MANAGEMENT AND VIRTUAL MEMORY
- 5File System Directory ImplementationOnderdeel V · FILE SYSTEM INTERFACE AND FILE SYSTEM IMPLEMENTATION & MASS STORAGE STRUCTURE
- CS433PJava
Programming Paradigm
5
lessen
- Creating a Student Class with OOP Fundamentals
- Inheritance and Polymorphism with Animal Hierarchy
- 1Creating a Student Class with OOP FundamentalsOnderdeel I · OBJECT-ORIENTED PROGRAMMING: FUNDAMENTALS
- 2Inheritance and Polymorphism with Animal HierarchyOnderdeel II · OBJECT-ORIENTED PROGRAMMING: INHERITANCE
- 3Building a Simple Swing Drawing ApplicationOnderdeel III · EVENT-DRIVEN PROGRAMMING
- 4Generic Method ImplementationOnderdeel IV · GENERIC PROGRAMMING
- 5Fork-Join Parallel SumOnderdeel V · CONCURRENT PROGRAMMING
- IOT451Python
Python for IOT
5
lessen
- Python List Manipulation with Sorting
- Implementing a Basic Sorting Function with Conditional Logic
- 1Python List Manipulation with SortingOnderdeel I · INTRODUCTION TO PYTHON
- 2Implementing a Basic Sorting Function with Conditional LogicOnderdeel II · CONTROL FLOW AND FUNCTIONS
- 3List Manipulation and MethodsOnderdeel III · DATA STRUCTURES
- 4Text File Word CounterOnderdeel IV · FILES, MODULES, PACKAGES
- 5Sorting Algorithms with PythonOnderdeel V · PYTHON FOR DATA ANALYSIS AND MACHINE LEARNING
- MICS432PJava
INTRODUCTION TO PROGRAMMING PARADIGM
5
lessen
- Creating a Student Class with Basic OOP Concepts
- Creating a Class Hierarchy with Inheritance
- 1Creating a Student Class with Basic OOP ConceptsOnderdeel I · OBJECT-ORIENTED PROGRAMMING: FUNDAMENTALS
- 2Creating a Class Hierarchy with InheritanceOnderdeel II · OBJECT-ORIENTED PROGRAMMING: INHERITANCE
- 3The event model behind AWT and Swing: listeners, mouse dispatch, MVC, layoutsOnderdeel III · EVENT-DRIVEN PROGRAMMING
- 4Generic Method Implementation with Type SafetyOnderdeel IV · GENERIC PROGRAMMING
- 5Fork-Join Framework: Parallel Sum of ArrayOnderdeel V · CONCURRENT PROGRAMMING
Semester 5
5 vakken25 lablessenJavaNode.jsPython- CS533PJava
Design and Analysis of Algorithms
5
lessen
- Binary Search Implementation
- Selection Sort Implementation
- 1Binary Search ImplementationOnderdeel I · INTRODUCTION AND FUNDAMENTALS OF THE ANALYSIS OF ALGORITHM EFFICIENCY
- 2Selection Sort ImplementationOnderdeel II · ALGORITHM DESIGN TECHNIQUES
- 3Merge Sort ImplementationOnderdeel III · ALGORITHM DESIGN TECHNIQUES
- 4Knapsack Problem with Dynamic ProgrammingOnderdeel IV · ALGORITHM DESIGN TECHNIQUES
- 5N-Queens Problem with BacktrackingOnderdeel V · ALGORITHM DESIGN TECHNIQUES
- CS541E02Node.js
Internet and Web programming
5
lessen
- HTML5 Document Structure Builder
- CSS Property Selector Parser
- 1HTML5 Document Structure BuilderOnderdeel I · HTML5
- 2CSS Property Selector ParserOnderdeel II · CSS3
- 3JavaScript Functions and DOM ManipulationOnderdeel III · JAVASCRIPT
- 4Inside MariaDB: escaping, data types, string and date functions, accounts and grantsOnderdeel IV · NOSQL
- 5Building a Simple HTTP Server with Node.jsOnderdeel V · CASE STUDY: Node.js
- CSOE561E01Node.js
Web Programming Concepts
5
lessen
- Building a Simple HTTP Server
- HTML5 Document Structure Validator
- 1Building a Simple HTTP ServerOnderdeel I · INTRODUCTION TO WEB PROGRAMMING
- 2HTML5 Document Structure ValidatorOnderdeel II · HTML5
- 3JavaScript Array Sorting with Bubble SortOnderdeel III · JAVASCRIPT
- 4CSS Property Selector ParserOnderdeel IV · CSS3
- 5jQuery Selectors ImplementationOnderdeel V · jQuery
- CSOE561E03Java
Data Structures
5
lessen
- Data Structure Classification and Operations
- Stack Implementation with Array Representation
- 1Data Structure Classification and OperationsOnderdeel I · INTRODUCTION
- 2Stack Implementation with Array RepresentationOnderdeel II · LISTS, STACKS AND QUEUES
- 3Binary search trees, AVL rotations and a separate-chaining hash tableOnderdeel III · TREES
- 4Insertion Sort ImplementationOnderdeel IV · SORTING
- 5Graph algorithms: topological sort, BFS, Dijkstra and PrimOnderdeel V · GRAPHS
- CSOE561E04Python
Python for Engineers
5
lessen
- Python Basics: Variables, Literals, and Operations
- Implementing Bubble Sort Algorithm
- 1Python Basics: Variables, Literals, and OperationsOnderdeel I · INTRODUCTION
- 2Implementing Bubble Sort AlgorithmOnderdeel II · CONDITIONAL STATEMENTS LOOPING AND ARRAY
- 3Function Return Values and ScopesOnderdeel III · FUNCTIONS
- 4String Formatting and Exception Handling in ModulesOnderdeel IV · MODULES
- 5Creating a Basic Bank Account ClassOnderdeel V · FUNDAMENTALS OF OOP
Semester 6
3 vakken15 lablessenCSQLPython- CS632PC
COMPILER DESIGN
5
lessen
- Compiler Phases Implementation
- Building a Lexical Analyzer with DFA
- 1Compiler Phases ImplementationOnderdeel I · INTRODUCTION TO COMPILERS
- 2Building a Lexical Analyzer with DFAOnderdeel II · LEXICAL ANALYSIS
- 3LL(1) Parser ImplementationOnderdeel III · SYNTAX ANALYSIS
- 4Symbol Table Implementation for Type CheckingOnderdeel IV · SYNTAX DIRECTED TRANSLATION & RUN TIME ENVIRONMENT
- 5DAG-based Optimization of Basic BlocksOnderdeel V · CODE OPTIMIZATION AND CODE GENERATION
- CS642E03SQL
ADVANCED DATABASES
5
lessen
- ER-to-Relational Mapping with SQLite
- Object Database Querying with SQLite
- 1ER-to-Relational Mapping with SQLiteOnderdeel I · DATABASE MANAGEMENT
- 2Object Database Querying with SQLiteOnderdeel II · ADVANCED DATABASES
- 3Transaction Schedule Analysis with SQLiteOnderdeel III · QUERY AND TRANSACTION PROCESSING
- 4Concurrency Control with Two-Phase LockingOnderdeel IV · CONCURRENCY CONTROL AND RECOVERY
- 5Database Security Privilege ManagementOnderdeel V · DATABASE SECURITY
- CSHO631AIPPython
ARTIFICIAL INTELLIGENCE AND MACHINE LEARNING
5
lessen
- Simple Linear Regression: Least Squares Fit
- Polynomial Regression Implementation
- 1Simple Linear Regression: Least Squares FitOnderdeel I · Regression
- 2Polynomial Regression ImplementationOnderdeel II · Multiple and Non Linear Regression
- 3Invariance, stability and scattering: why CNN features survive shiftsOnderdeel III · Convolutional Neural Networks I
- 4LISTA Algorithm ImplementationOnderdeel IV · Convolutional Neural Networks II
- 5Autoencoders, VAEs, GANs and maximum entropy from first principlesOnderdeel V · Deep Unsupervised Learning
Semester 7
3 vakken14 lablessenJavaPythonSQL- CS763E02Java
Java Programming
4
lessen
- Java Basics: Variables and Data Types
- Creating and Using Java Classes with Inheritance
- 1Java Basics: Variables and Data TypesOnderdeel I · INTRODUCTION TO JAVA PROGRAMMING
- 2Creating and Using Java Classes with InheritanceOnderdeel II · CLASS, OBJECTS AND INHERITANCE
- 3Implementing a Sortable InterfaceOnderdeel III · INTERFACES, PACKAGES AND EXCEPTION HANDLING
- 4Reading and Writing Text Files with Java StreamsOnderdeel IV · COLLECTIONS AND INPUT / OUTPUT
- 5APPLET AND JDBC
- CS763E03Python
Basics of Artificial Intelligence
5
lessen
- Uniformed Search Strategies Implementation
- Implementing A* Search Algorithm
- 1Uniformed Search Strategies ImplementationOnderdeel I · INTRODUCTION
- 2Implementing A* Search AlgorithmOnderdeel II · SEARCHING TECHNIQUES
- 3First-order inference: unification, forward and backward chaining, resolutionOnderdeel III · KNOWLEDGE REPRESENTATION
- 4Decision Tree Learning from ObservationsOnderdeel IV · LEARNING
- 5A CNN and an RNN from scratch: convolution, pooling, recurrence, LSTMOnderdeel V · DEEP LEARNING
- MICS735PSQL
DATABASE SYSTEM
5
lessen
- ER Model to Relational Schema Mapping
- Relational Algebra and SQL Queries
- 1ER Model to Relational Schema MappingOnderdeel I · INTRODUCTION AND CONCEPTUAL MODELING
- 2Relational Algebra and SQL QueriesOnderdeel II · RELATIONAL MODEL
- 3B+ Tree Index ImplementationOnderdeel III · DATA STORAGE AND QUERY PROCESSING
- 4Transaction Schedule AnalysisOnderdeel IV · TRANSACTION MANAGEMENT
- 5XML Data Processing with SQLiteOnderdeel V · CURRENT TRENDS
Het volledige leerplan van 108 vakken is in de app uitgewerkt, inclusief de theorievakken. De lessen zijn geschreven bij de vakcodes met practicumwerk, en de lijst groeit met elke release.
GroutCode is niet verbonden aan of goedgekeurd door CHRIST (Deemed to be University). Vakcodes en vaktitels zijn overgenomen uit de gepubliceerde regelingsdocumenten van de instelling.
Zo verloopt een practicum
Dezelfde vijf stappen bij elke les, in elke taal.
- 1
Kies je leerplan
Kies je universiteit of examenorgaan en het semester of de klas waarin je zit. De vakkenlijst is de officiële regeling zoals die is overgenomen, geen benadering.
- 2
Open een labpracticum
Elke les is een practicum in stappen bij een specifiek vak, met een startbestand dat je bewerkt en een testbestand dat je met rust laat.
- 3
Schrijf de code zelf
In het startbestand staan de signatures en de TODO's. Jij werkt ze uit in de editor, in de taal die je vak daadwerkelijk gebruikt.
- 4
Draai de controles
De toolchain compileert en draait de tests: 8 tot 15 stuks verspreid over de les, één per stap, zodat je ziet welke wijziging wat kapotmaakte.
- 5
Krijg de review
Zodra de tests slagen, leest het model je uitwerking en vertelt het je welke invoer hem laat vastlopen. Het meldt zelf nooit of je geslaagd of gezakt bent.
Waarom de compiler beoordeelt en niet het model
De voor de hand liggende manier om een AI-labtool te bouwen, is het model de code van de student te laten lezen en te laten zeggen of die klopt. Het is ook de manier die een tool oplevert die niemand kan vertrouwen. Een model vertelt je dat je code werkt terwijl de compiler iets anders zegt, en laat je zakken op een stijl die het toevallig niet aanstaat.
Daarom zijn de twee taken gescheiden:
- Het model ontwerpt de les, schrijft het startbestand en de tests, en leest, zodra de tests slagen, wat jij daadwerkelijk hebt geschreven, om je te vertellen welke invoer het laat vastlopen.
- De toolchain bepaalt of het compileert en of elke stap slaagt. Dat oordeel staat vast en het model velt het nooit.
En waarom stappen in plaats van één grote opdracht
Een practicum van 40 tot 60 minuten met één keer Run aan het eind geeft een beginner één stukje feedback per uur, en dat komt pas nadat alle beslissingen al genomen zijn. Elke les hier bestaat uit 8 tot 15 stappen, elk met een eigen instructie en een eigen controle, zodat je ziet welke wijziging wat kapotmaakte terwijl je je die wijziging nog herinnert.
Veelgestelde vragen
Ondersteunt GroutCode de CHRIST 2021 regulation?
Ja. GroutCode bevat de overgenomen CHRIST 2021 regulation voor B.Tech Computer Science and Engineering, 108 vakken, met 94 uitgewerkte labpractica die aan specifieke vakcodes zijn gekoppeld. Het leerplan is overgenomen uit de officiële documenten, en van elk document zijn de bron en de checksum in de app vastgelegd.
Welke talen gebruiken de CHRIST-practica?
Java (34 lessen), Python (20 lessen), C (15 lessen), SQL (15 lessen), Node.js (10 lessen). De taal is per vakcode ingesteld en niet afgeleid uit de titel, omdat hetzelfde vak op verschillende instellingen in verschillende talen wordt gegeven.
Schrijft de AI het practicum gewoon voor me?
Nee. In het startbestand staan de signatures en de TODO's; jij werkt ze uit. De toolchain, niet het model, bepaalt of je code compileert en of elke stap slaagt, zodat de AI je niet kan wijsmaken dat je code werkt terwijl de compiler het er niet mee eens is. Wat het daarna wel doet, is je uitwerking lezen en aanwijzen welke invoer hem laat vastlopen.
Werken de practica offline?
De lessen, het leerplan en de testrunner zitten in de app en draaien lokaal, dus de cyclus van compileren en controleren werkt zonder verbinding. Voor de reviewstap aan het eind wordt een model gebruikt; dat kan een lokaal model zijn of een cloudmodel met je eigen sleutel.
Wat moet ik geïnstalleerd hebben?
GroutCode kijkt welke toolchains er op je computer staan en vertelt je wat er ontbreekt en hoe je dat oplost. Je hebt de compiler of interpreter nodig voor de taal die je vak gebruikt: een C-compiler, een JDK, Python, Node of SQLite.
Andere leerplannen

KTU
APJ Abdul Kalam Technological University
Het 2024-schema van de technische universiteit van Kerala, met CSE, IT, AI & DS en ECE vanaf het derde semester.
85
lablessen

VTU
Visvesvaraya Technological University
Het 2022-schema van Karnataka voor CSE, ISE, AI-ML, AI-DS en ECE, inclusief de aparte labvakken.
123
lablessen

Anna University
Anna University, Chennai
De B.E. CSE van Anna University volgens Regulations 2021, van programmeren in Python en C tot de labs datastructuren en OOP.
31
lablessen
Doe je CHRIST-labwerk met de controles ingebouwd
GroutCode zit bij elke Grout Suite-licentie inbegrepen. Gratis te downloaden voor Windows en macOS.
Download GroutCode