Learning the Object Oriented Programming concepts such as classes, interfaces, overriding, and inheritance.
The student will learn the mechanics of editing and compiling a simple program written in C++ beginning with a discussion of the essential elements of C++ programming: variables, loops, expressions, functions, and string class. Next, the student will cover the basics of object-oriented programming: classes, inheritance, templates, exceptions, and file manipulation. The student will then review function and class templates and the classes that perform output and input of characters to/from files. This course will also cover the topics of namespaces, exception handling, and preprocessor directives. In the last part of the course, the student will learn some slightly more sophisticated programming techniques that deal with data structures such as linked lists and binary trees. Upon successful completion of this course, students will be able to: Compile and execute code written in C++ language; Work with the elementary data types and conditional and iteration structures; Define and use functions, pointers, arrays, struct, unions, and enumerations; Write C++ using principles of object-oriented programming; Write templates and manipulate the files; Code and use namespaces, exceptions, and preprocessor instructions; Write a code that represents linked lists and binary trees; Translate simple word problems into C++ language. (Computer Science 107)
In GEOG 489, you will learn advanced applications of Python for developing and customizing GIS software, designing user interfaces, solving complex geoprocessing tasks, and leveraging open source. The course consists of readings, walkthroughs, projects, quizzes, and discussions about advanced GIS programming concepts and techniques, and a final term project. It complements the material covered in GEOG 485: GIS Programming and Customization. Software covered in the course includes: Esri ArcGIS Pro/arcpy, Jupyter Notebook, Esri ArcGIS API for Python, QGIS, GDAL/OGR. Students will also use of the Git version control software for code management, and learn techniques for distributing Python applications to end users.
Slide deck that explains SOLID, an acronym for five OOD principles promoted by Robert C.
Martin and used in object-oriented programming to develop better software. Includes examples.