首页 计算机科学与编程导论 课程简介

Course Form for WHU Summer School International 2024

Course Title

Introduction to Computer Science and   Programming

计算机科学与编程导论

Teacher

Mustafa Misir, Assoc.   Prof. of Data and Computational Science

First day of classes

08/07/2024

Last day of classes

11/07/2024

Course Credit

1

Course Description

Course Introduction

    Computer Science (CS) is the study of computation, automation, and   information. It spans theoretical disciplines such as algorithms, theory of   computation, information theory, and automation, to practical disciplines   including the design and implementation of hardware and software. Algorithms   and Data Structures are central to CS.

    As an introductory course, fundamental knowledge on a variety of CS   topics will be offered while providing essential computational problem-solving   skills with hands on programming experience, in Python. This course is open   to everyone, with no prerequisites. Successfully completing it will serve as   a solid foundation for other courses in CS and relevant majors such as Computer Engineering, Information Sciences, Software Engineering, and Data   Science. It can also bring new concepts and tools to other domains such as   Social Sciences, Arts, Humanities and Natural Sciences.

Objective

By   the end of this course, you will be able to:

· grasp common computing   and programming terms and concepts.

· employ common   programming patterns to solve problems through Python.

· formulate problems   computationally and solve them through programming.

Assignments (essay or other forms)

 

Theoretical and Programming

 

Text Books and Reading Materials

There is no official textbook for this course. Nevertheless, the   following books can be used as references:

· Introduction to Computation and Programming Using Python:   With Application to Computational Modeling and Understanding Data, John   V. Guttag (3rd Edition), 2021, MIT Press [ Source Code in Python ]

· Introducing Python for Computer Science and Data Scientists,   Paul Deitel, Harvey Deitel (1st Edition), 2020, Pearson

· Computer Science: an   Interdisciplinary Approach, Robert Sedgewick, Kevin Wayne (1st Edition),   2016, Addison Wesley

· Explorations in Computing: An Introduction to Computer   Science and Python Programming, John S. Conery (1st Edition), 2014,   Chapman and Hall/CRC

· Foundations   of Computer Science: C Edition, Al Aho, Jeff Ullman (1st Edition), 1994 /   1995, W.H. Freeman (Free Book)

· Computer Science: An Overview, Glenn Brookshear, Dennis   Brylow-Pearson (13th Edition), 2018, Pearson

· Computer   Science Distilled: Learn the Art of Solving Computational Problems,   Wladston Ferreira Filho (1st Edition), 2017, Code Energy LLC

· Data Structures and Algorithms in Python, Michael T.   Goodrich, Roberto Tamassia, Michael H. Goldwasser (1st Edition), 2013, Wiley

· Python Programming: An Introduction to Computer Science,   John Zelle (3rd Edition), 2016, Franklin, Beedle & Associates

· Problem Solving with Algorithms and Data Structures using   Python, Brad Miller and David Ranum, Franklin (2nd Edition), 2011, Beedle   & Associates (Free Book)

· Starting out with Python, Tony Gaddis (5th Edition),   2021, Pearson

· Python Programming and Numerical Methods: A Guide for   Engineers and Scientists , Qingkai Kong, Timmy Siauw, Alexandre   Bayen (1st Edition), 2020, Academic Press (Free   Book)

· Think   Python: How to Think Like a Computer Scientist, Allen B. Downey (2nd   Edition), 2016, O'Reilly Press (Free Book)

· How to Think Like a Computer Scientist: Learning with Python   3, Peter Wentworth, Jeffrey Elkner, Allen B. Downey, Chris Meyers (3rd   Edition), 2012 (Free Book)

· A Programmer's Guide to Computer Science (Vol. 1),   William M. Springer II (1st Edition), 2019, Jaxson Media

· A Programmer's Guide to Computer Science (Vol. 2),   William M. Springer II (1st Edition), 2020, Jaxson Media

· A Byte of Python,   Swaroop C. H. (4th Edition), 2016 (Free Book)

· Project Python, Devin   Balkcom, 2011 (Free Book)

· Python for Everybody:   Exploring Data in Python 3, Charles Severance, 2016 (Free Book)

· Automate The   Boring Stuff With Python, Al Sweigart (2nd Edition), 2019, No Starch   Press (Free Book)

· Beyond the Basic   Stuff with Python: Best Practices for Writing Clean Code, Al Sweigart   (1st Edition), 2020, No Starch Press (Free   Book)

· Python Programming in Context, Bradley N. Miller, David   L. Ranum, Julie Anderson (3rd Edition), 2019, Jones & Bartlett Learning

· A Hands-On,   Project-Based Introduction to Programming, Eric Matthes (2nd Edition),   2016, No Starch Press (Free Book)

· Learn Python 3 the Hard Way, Zed A. Shaw (1st Edition),   2017, Addison-Wesley

· Introducing   Python: Modern Computing in Simple Packages, Bill Lubanovic (2nd   Edition), 2019, O'Reilly Press

· Clean Code in Python: Develop Maintainable and Efficient Code,   Mariano Anaya (2nd Edition), 2021, Packt

· The Self-Taught Computer Scientist: The Beginner's Guide to Data   Structures & Algorithms, Cory Althoff (1st Edition), 2021, Wiley

· The   Big Book of Small Python Projects: 81 Easy Practice Programs, Al Sweigart   (1st Edition), 2021, No Starch Press (Free   Book)

· Invent Your   Own Computer Games with Python, Al Sweigart (4th Edition), 2016, No   Starch Press (Free Book)

· Cracking Codes   with Python: An Introduction to Building and Breaking Ciphers, Al   Sweigart (1st Edition), 2018, No Starch Press (Free   Book)