TY - BOOK AU - Liang, Y. Daniel TI - Introduction to Programming Using Python SN - 978-93-325-5184-8 U1 - 005.133 PY - 2018///; c2017 CY - Chennai PB - Pearson India Education Services Pvt. Ltd. KW - Computer Science Engineering KW - Programming N1 - Introduction to Programming Using Python is intended for use in the introduction to programming course. Daniel Liang is known for his “fundamentals-first” approach to teaching programming concepts and techniques. “Fundamentals-first” means that students learn fundamental programming concepts like selection statements, loops and functions, before moving into defining classes. Students learn basic logic and programming concepts before moving into object-oriented programming and GUI programming. Another aspect of Introduction to Programming Using Python is that in addition to the typical programming examples that feature games and some math, Liang gives an example or two early in the chapter that uses a simple graphic to engage the students. Rather than asking them to average 10 numbers together, they learn the concepts in the context of a fun example that generates something visually interesting. Fundamentals-first approach introduces basic programming concepts and techniques on selections, loops, functions, before writing custom classes. Liang introduces and uses objects in Chapter 3, but defining custom classes is covered later in Chapter 7. Problem-driven approach teaches programming in a problem-driven way that focuses on problem solving rather than syntax. Liang captures students’ interest by using interesting examples in a broad context (areas include math, science, business, financials, gaming, animation and multimedia). Appropriate syntax and libraries are introduced in order to solve the problems. Flexible GUI Coverage gives instructors the flexibility to skip graphics topics or cover these topics later in the course. The book use Python’s built-in Turtle graphics module in Chapters 1-6 and Tkinter in the rest of the book. Both Turtle and Tkinter are simple, easy to learn and valuable pedagogical tools for teaching the fundamentals of programming and object-oriented programming. GUI Examples are offered early in every chapter and a special set of GUI exercises appears at the end of every chapter; Contents: Chapter 1 Introduction to Computers, Programs and Python Chapter 2 Elementary Programming Chapter 3 Introduction to Functions, Strings and Objects Chapter 4 Selections Chapter 5 Loops Chapter 6 Functions Chapter 7 Object-Oriented Programming Chapter 8 Thinking in Objects Chapter 9 GUI Programming Using Tkinter Chapter 10 Lists Chapter 11 Multi-dimensional Lists Chapter 12 Inheritance and Polymorphism Chapter 13 Files and Exception Handling Chapter 14 Tuples, Sets and Dictionaries Chapter 15 Recursion Chapters 16-23 are bonus Web chapters on DS Chapter 16 Developing Efficient Algorithms Chapter 17 Sorting Chapter 18 Linked Lists, Stacks, Queues and Priority Queues Chapter 19 Binary Search Trees Chapter 20 AVL Trees Chapter 21 Hashing Chapter 22 Graphs and Applications Chapter 23 Weighted Graphs and Applications ER -