چه کسانی این کتاب را می‌خوانند

دانشجوعلاقه‌مند یادگیری
کتابخوان حرفه‌ایلذت مطالعه
نویسندهالهام‌گیری

Programming in Two Semesters: Using Python and Java (Texts in Computer Science)

Quentin Charatan, Aaron Kans

قیمت نهایی

۴۹٬۰۰۰ تومان

نسخه اصلی و اورجینال

بلافاصله پس از خرید، فایل کتاب روی دستگاه شما آمادهٔ دانلود است.

تحویل فوری
پرداخت امن
ضمانت فایل
پشتیبانی

مشخصات کتاب

سال انتشار
۲۰۲۲
فرمت
PDF
زبان
انگلیسی
حجم فایل
۳۱٫۴ مگابایت
شابک
9783031013256، 9783031013263، 9783031013270، 9783031013287، 3031013255، 3031013263، 3031013271، 303101328X

دربارهٔ کتاب

This highly accessible textbook teaches programming from first principles. In common with many programming courses, it uses Python as the introductory programming language before going on to use Java as the vehicle for more advanced programming concepts. The first part, which teaches Python, covers fundamental programming concepts, such as data types and control structures and functions. It introduces more complex data types such as lists and dictionaries and also deals with file handling. It introduces object-oriented concepts and ends with a case study bringing together all the topics of the first semester. The second part uses Java to teach advanced concepts and centres around object-oriented programming, teaching key object-oriented concepts such as inheritance and polymorphism. The semester again ends with an advanced case study bringing together all the topics of the second semester. Topics and features: Assumes no prior knowledge, and makes the transition from Python to Java a smooth process Features numerous exercises and also an illustrative case study for each language Examines procedural and object-oriented methodologies, as well as design principles Covers such advanced topics as interfaces and lambda expressions, exceptions and Collections Includes a chapter on graphics programming in Python using Tkinter Introduces the latest Java technology for graphical interfaces, JavaFX Explains design concepts using UML notation Offering a gentle introduction to the field and assuming no prerequisite background, Programming in Two Semesters is the ideal companion to undergraduate modules in software development or programming. In addition, it will serve as a strong primer for professionals looking to strengthen their knowledge of programming with these languages. Dr Quentin Charatan is a former Principal Lecturer and now visiting lecturer at the same institution. Dr Aaron Kans is the Head of the Computer Science and Digital Technologies Department in the School of Architecture, Computing & Engineering at the University of East London, UK Preface Contents Semester One: Python 1 Python: The First Step 1.1 Introduction 1.2 Software 1.3 Programming 1.4 Downloading and Installing the Interpreter 1.5 Your First Program 1.6 Adding Comments to a Program 1.7 Self-test Questions 1.8 Programming Exercises 2 Python: Building Blocks 2.1 Introduction 2.2 Output in Python 2.3 An Interactive Program 2.4 Variables and Types 2.5 Arithmetic Operators 2.6 Expressions in Python 2.7 More About Output 2.8 Input in Python 2.9 Formatting Strings 2.10 Type Casting 2.11 Escape Sequences 2.12 Self-test Questions 2.13 Programming Exercises 3 Python Control Structures: Selection 3.1 Introduction 3.2 Making Choices 3.3 The ‘if’ Statement 3.3.1 Comparison Operators 3.3.2 Multiple Instructions Within an ‘if’ Statement 3.4 The ‘if...else’ Statement 3.5 Logical Operators 3.6 Nested ‘if...else’ Statements 3.7 Self-test Questions 3.8 Programming Exercises 4 Python Control Structures: Iteration 4.1 Introduction 4.2 The ‘for’ Loop 4.2.1 Varying the Loop Counter 4.2.2 The Body of the Loop 4.2.3 Revisiting the Loop Counter 4.3 The ‘while’ Loop 4.4 The ‘break’ Statement 4.5 The ‘continue’ Statement 4.6 A Couple of Pitfalls 4.7 The ‘try ... except’ Statement 4.8 Self-test Questions 4.9 Programming Exercises 5 Python: Functions and Modules 5.1 Introduction 5.2 Declaring and Defining Functions 5.3 Calling a Function 5.4 Function Input and Output 5.5 More Examples of Functions 5.6 Variable Scope 5.7 Global Variables: The Pitfalls 5.8 Using Functions in Menu-Driven Programs 5.9 Built-In Functions 5.10 String Functions 5.11 Modules 5.12 Self-test Questions 5.13 Programming Exercises 6 Python Collections: Lists and Tuples 6.1 Introduction 6.2 Creating Lists 6.3 Accessing List Elements 6.4 Passing Lists as Parameters 6.5 Returning a List from a Function 6.6 More List Functions 6.7 Queues and Stacks 6.8 Creating a List Using Comprehension 6.9 Tuples 6.10 Variable Length Parameter Lists 6.11 Self-test Questions 6.12 Programming Exercises 7 Python Collections: Dictionaries and Sets 7.1 Introduction 7.2 Dictionaries 7.3 Creating Dictionaries 7.4 More Dictionary Functions 7.5 Creating a Dictionary Using Comprehension 7.6 Keyworded Variable Length Parameter Lists 7.7 Sets 7.8 Creating a Set Using Comprehension 7.9 Self-test Questions 7.10 Programming Exercises 8 Object-Oriented Python: Part 1 8.1 Introduction 8.2 Classes and Objects 8.3 Properties 8.4 The Rectangle Class 8.5 Testing the Rectangle Class 8.6 The BankAccount Class 8.7 Collections of Objects 8.8 Designing and Implementing Classes in Python 8.9 Implementing the BankAccount Class 8.10 A Bank Application 8.11 Class Variables 8.12 The __str__ Method 8.13 Encapsulation 8.14 Self-test Questions 8.15 Programming Exercises 9 Object-Oriented Python: Part 2 9.1 Introduction 9.2 Defining Inheritance 9.3 Implementing Inheritance in Python 9.4 Extending the Rectangle Class 9.5 Method Overriding 9.6 Built-in Object Functions 9.7 Some Benefits of Object-Oriented Programming 9.8 Self-test Questions 9.9 Programming Exercises 10 Python: Working with Files 10.1 Introduction 10.2 Input and Output 10.3 Input and Output Devices 10.4 File Handling 10.4.1 Encoding 10.4.2 Access 10.5 Reading and Writing to Text Files 10.6 Exceptions Associated with File Handling 10.7 Practical Examples 10.7.1 Adding File Handling to the Waiting List Application 10.7.2 Adding File Handling to the Bank Application 10.8 Reading into a Buffer 10.9 Reading and Writing to Binary Files 10.10 Deleting and Renaming Files 10.11 Self-test Questions 10.12 Programming Exercises 11 Python Graphics with Tkinter 11.1 Introduction 11.2 Tkinter: An Overview 11.3 Your First Graphics Program 11.4 Configuring Components 11.5 An Interactive Graphics Application 11.6 Binding to Multiple Events 11.7 Keyboard Events 11.8 Other Common Events 11.9 More About Labels 11.10 More About the Pack Layout Manager 11.11 A Graphical User Interface (GUI) for the Rectangle Class 11.12 The Grid Layout Manager 11.13 The Canvas Widget 11.14 The Place Layout Manager 11.15 The Variable Class 11.16 Check Boxes and Radio Buttons 11.17 Themed Widgets (and Combo Boxes) 11.18 Self-test Questions 11.19 Programming Exercises 12 Python Case Study 12.1 Introduction 12.2 The Requirements Specification 12.3 The Design 12.4 Implementing the Payment Class 12.5 Implementing the PaymentList Class 12.6 Testing the PaymentList Class 12.7 Implementing the Tenant Class 12.8 Implementing the TenantList Class 12.9 Design of the GUI 12.10 Designing the Event-Handlers 12.11 Implementing the Hostelapplication Program 12.12 Testing the System 12.13 What Next? 12.14 Self-test Questions 12.15 Programming Exercises Semester Two: Java 13 Java: Input, Output and Data Types 13.1 Introduction 13.2 Programming in Java 13.3 Integrated Development Environments (IDEs) 13.4 Your First Java Program 13.4.1 Analysis of the “Hello World” Program 13.4.2 Adding Comments to a Java Program 13.5 println Versus print 13.6 Variables in Java 13.7 Creating Constants 13.8 Expressions in Java 13.9 The FindCost Program 13.10 Input in Java: The Scanner Class 13.11 Self-test Questions 13.12 Programming Exercises 14 Java Control Structures 14.1 Introduction 14.2 Making Choices in Java 14.2.1 The ‘if’ Statement 14.2.2 The ‘if...else’ Statement 14.2.3 Nested ‘if...else’ Statements 14.2.4 The ‘switch’ Statement 14.3 Iteration in Java 14.3.1 The ‘for’ Loop 14.3.2 The ‘while’ Loop 14.3.3 The ‘do...while’ Loop 14.3.4 Picking the Right Loop 14.4 Menu-Driven Programs in Java 14.5 The ‘break’ and ‘continue’ Statements 14.6 Self-test Questions 14.7 Programming Exercises 15 Java Methods 15.1 Introduction 15.2 Declaring and Defining Methods 15.3 Calling a Method 15.4 Method Input and Output 15.5 More Examples of Methods 15.6 Method Overloading 15.7 Built-in Methods of the Math Class 15.8 Self-test Questions 15.9 Programming Exercises 16 Java Arrays 16.1 Introduction 16.2 Creating an Array in Java 16.3 Accessing Array Elements 16.4 The Enhanced ‘for’ Loop 16.5 Passing Arrays as Parameters 16.6 Some Useful Array Methods 16.6.1 Array Maximum 16.6.2 Array Summation 16.7 Variable Arguments 16.8 Returning an Array from a Method 16.9 The Arrays Class 16.10 Multidimensional Arrays 16.10.1 Creating a Two-Dimensional Array 16.10.2 Initializing Two-Dimensional Arrays 16.10.3 Processing Two-Dimensional Arrays 16.10.4 The MonthlyTemperatures Program 16.11 Ragged Arrays 16.12 Self-test Questions 16.13 Programming Exercises 17 Object-Oriented Java: Part 1 17.1 Introduction 17.2 Classes and Objects in Java 17.2.1 The Rectangle Class 17.2.2 The RectangleTester Program 17.3 Strings 17.3.1 The Methods of the String Class 17.3.2 Comparing Strings 17.3.3 Entering Strings Containing Spaces 17.4 Our Own Scanner Class for Keyboard Input 17.5 The BankAccount Class 17.6 Passing Objects as Parameters 17.7 Arrays of Objects 17.8 Implementing the Rectangle Class 17.9 Implementing the BankAccount Class 17.10 The static Keyword 17.11 Initializing Attributes 17.12 The EasyScanner Class 17.13 Self-test Questions 17.14 Programming Exercises 18 Object-Oriented Java: Part 2 18.1 Introduction 18.2 The Employee and PartTimeEmployee Classes 18.3 Implementing Inheritance in Java 18.4 Method Overriding 18.5 Abstract Classes 18.6 Abstract Methods 18.7 The Final Modifier 18.8 The Object Class 18.9 Self-test Questions 18.10 Programming Exercises 19 Java: Interfaces and Lambda Expressions 19.1 Introduction 19.2 An Example 19.3 Interfaces 19.4 Lambda Expressions 19.4.1 The Syntax of Lambda Expressions 19.4.2 Variable Scope 19.4.3 Example Programs 19.4.4 Method References—The Double Colon Operator 19.5 Wrapper Classes and Autoboxing 19.6 Generics 19.7 Other Interfaces Provided with the Java Libraries 19.8 Self-test Questions 19.9 Programming Exercises 20 Java: Exceptions 20.1 Introduction 20.2 Predefined Exception Classes in Java 20.3 Handling Exceptions 20.4 The ‘try-with-resources’ Construct 20.5 Exceptions in Graphical Applications 20.6 Using Exceptions in Your Own Classes 20.7 Creating Your Own Exception Classes 20.8 Self-test Questions 20.9 Programming Exercises 21 The Java Collections Framework 21.1 Introduction 21.2 The List Interface and the ArrayList Class 21.2.1 Creating an ArrayList Collection Object 21.2.2 The Interface Type Versus the Implementation Type 21.2.3 List Methods 21.3 The Enhanced for Loop and Java Collections 21.4 The forEach Loop 21.5 The Map Interface and the HashMap Class 21.5.1 Map Methods 21.5.2 Iterating Through the Elements of a Map 21.6 The Set Interface and the HashSet Class 21.7 Using Your Own Classes with Java’s Collection Classes 21.7.1 The Book Class 21.7.2 An Alternative Implementation 21.8 Sorting a Collection 21.8.1 Sorting Other Objects 21.9 Self-test Questions 21.10 Programming Exercises 22 Java: Working with Files 22.1 Introduction 22.2 File Handling in Java 22.3 Reading and Writing to Text Files 22.4 Reading and Writing to Binary Files 22.5 Reading a Text File Character by Character 22.6 Object Serialization 22.7 Random Access Files 22.8 Self-test Questions 22.9 Programming Exercises 23 Introducing JavaFX 23.1 Introduction 23.2 JavaFX: An Overview 23.3 2D Graphics: The SmileyFace Class 23.4 Event-Handling in JavaFX: The ChangingFace Class 23.5 Some More 2D Shapes 23.6 An Interactive Graphics Class 23.7 Number Formatting 23.8 A Graphical User Interface (GUI) for the Rectangle Class 23.9 Containers and Layouts 23.9.1 More About HBox and VBox 23.9.2 GridPane 23.9.3 StackPane 23.10 Key Events 23.11 More Input Options 23.11.1 Combo Boxes 23.11.2 Check Boxes and Radio Buttons 23.11.3 Drop-Down Menus 23.11.4 Pop-Up Dialogues 23.12 Self-test Questions 23.13 Programming Exercises 24 Java Case Study 24.1 Introduction 24.2 Packages 24.3 Javadoc 24.4 System Overview 24.5 Requirements Analysis and Specification 24.6 Design 24.7 Enumerated Types in UML 24.8 Implementation 24.8.1 Implementing Enumerated Types in Java 24.8.2 The Runway Class 24.8.3 The Plane Class 24.8.4 The Airport Class 24.9 Testing 24.10 Design of the JavaFX Interface 24.11 The TabPane Class 24.12 The AirportFrame Class 24.13 Self-test Questions 24.14 Programming Exercises Appendix Compiling and Running Java Programs Outline placeholder Apache NetBeans Other Popular IDEs Index

قیمت نهایی

۴۹٬۰۰۰ تومان