GI3008 GIS Customization and Scripting Syllabus:
GI3008 GIS Customization and Scripting Syllabus – Anna University Regulation 2021
COURSE OBJECTIVES:
This course enables the student to understand the fundamentals of GIS customization using the programming concepts, testing and troubleshooting in the developmental frameworks.
UNIT I INTRODUCTION TO GIS CUSTOMIZATION FUNDAMENTALS
Need for Customization in GIS, Introduction to customization environments and platforms, Introducing Python, Introducing Model Builder, Programming Basics – Objects, Classes, Methods, Functions, Attributes and Variables. Introduction to Data types and Arguments
UNIT II PROGRAMMING IN GIS AND BASICS
Objects in GIS -maps, tables, layers, symbols and features, Programming with Objects, Concept of Lists, Loops, Decision structures, Strings, Inheritance, Polymorphism, encapsulation, and abstraction
UNIT III GIS DATA ACCESS AND MANIPULATIONS
Reading Attribute Data, accessing data fields, reading through records. Retrieving records using attribute and spatial queries, working with cursors, Working with raster data, Events and Triggers, Reading and Parsing text files, Writing Geometries, Working with Map Documents
UNIT IV TESTING AND TROUBLESHOOTING
Testing concepts – Unit testing, Integration testing, recursive testing and performance testing. Trouble shooting and identifying problems, Diagnosis, Using the spyder debugger, Printing messages from the geoprocessor, Code standardization and Optimization technique
UNIT V GIS DEVELOPMENTAL FRAMEWORKS
Introduction to Desktop Development Frameworks (Python, .net, Java), Web Development frameworks (JS, Angular, React, Leaflets), Mobile Development Frameworks (Android, IOS, Xamarin), Database Customization frameworks (PL/SQL, Post GIS/Postgres)
TOTAL:45 PERIODS
COURSE OUTCOMES:
On completion of the course, the student is expected to
CO1 Employ different programming languages commonly used in GIS customization and describe how to use these technologies to expand upon existing GIS software functionality.
CO2 Perform object-oriented programming tasks using various programming languages, such as Python.
CO3 Analyze procedures and interactions for workflows within GIS.
CO4 Program small-scale GIS-based models in Python, integrated within a GIS software.
CO5 Recognize and employ general software engineering concepts and good programming methods and practices.
TEXT BOOKS:
1. Headfirst Python, 2nd Edition, Paul Berry,2010.
REFERENCES:
1.QGIS Python Programming Cookbook, Joel Lawhead,2015.
2.Python Scripting for ArcGIS Pro, Paul A. Zandbergen,2020.
3.Learn Python the Hard Way, Second Edition, Zed Shaw,2012.
4.Modeling our World, Second Edition. Esri Press, Michel Zeiler,2010.
