Muutke küpsiste eelistusi

E-raamat: From Computing to Computational Thinking

(Kent State University, OH, USA)
  • Formaat: EPUB+DRM
  • Ilmumisaeg: 20-Jul-2017
  • Kirjastus: Chapman & Hall/CRC
  • Keel: eng
  • ISBN-13: 9781351630221
  • Formaat - EPUB+DRM
  • Hind: 93,59 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: EPUB+DRM
  • Ilmumisaeg: 20-Jul-2017
  • Kirjastus: Chapman & Hall/CRC
  • Keel: eng
  • ISBN-13: 9781351630221

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

Computational Thinking (CT) involves fundamental concepts and reasoning, distilled from computer science and other computational sciences, which become powerful general mental tools for solving problems, increasing efficiency, reducing complexity, designing procedures, or interacting with humans and machines. An easy-to-understand guidebook,From Computing to Computational Thinking gives you the tools for understanding and using CT. It does not assume experience or knowledge of programming or of a programming language, but explains concepts and methods for CT with clarity and depth.

Successful applications in diverse disciplines have shown the power of CT in problem solving. The book uses puzzles, games, and everyday examples as starting points for discussion and for connecting abstract thinking patterns to real-life situations. It provides an interesting and thought-provoking way to gain general knowledge about modern computing and the concepts and thinking processes underlying modern digital technologies.

Preface xiii
Introduction xvii
1 Why Did the Chicken Cross the Road?
1(22)
1.1 The Computer
1(2)
1.2 Turing Machine
3(2)
CT: Abstract Away
5(1)
1.3 A Brief History of Computers
5(2)
1.4 Software
7(1)
1.5 Programming
8(1)
1.6 Syntax and Semantics
9(1)
CT: Beware of Semantics
10(1)
1.7 Flowcharts
10(3)
CT: Ready for All Contingencies
12(1)
CT: First Things First
12(1)
CT: Check before Proceeding
12(1)
1.8 Algorithms
13(2)
CT: Make It an Algorithm
14(1)
CT: Consider Extreme Cases
14(1)
1.9 Pseudo Code
15(2)
CT: Step by Step
17(1)
1.10 The Euclidean GCD Algorithm
17(1)
CT: Apply Domain Knowledge
18(1)
1.11 Goals and How to Get There
18(1)
CT: Break It Down
19(1)
1.12 Road Crossing
19(4)
Exercises
22(1)
2 Bits, Bytes, and Words
23(24)
2.1 Digital Computers
23(3)
2.2 Binary Numbers
26(5)
CT: Meaning of Symbols
29(1)
2.2.1 Numbers in Other Bases
29(1)
CT: Evaluate Different Options
30(1)
2.3 Positive and Negative Integers
31(2)
2.4 Modular Arithmetic
33(3)
CT: Mind Resource Limitations
35(1)
CT: Symbols Can Be Deceiving
35(1)
2.5 Base Conversion
36(1)
CT: Start from the End
37(1)
2.6 Characters
37(3)
2.6.1 US-ASCII
37(1)
2.6.2 Unicode
38(2)
CT: Data Context
40(1)
2.7 Editing Text
40(3)
2.8 Data Output
43(4)
CT: Deliver the Message
44(1)
Exercises
45(2)
3 True or False
47(22)
3.1 Digital Electronic Circuits
47(6)
CT: Notice the Logic
48(3)
CT: Bottom Up
51(1)
CT: Create a Virtuous Cycle
52(1)
3.2 Boolean Algebra
53(1)
3.2.1 Expressions and Laws
53(1)
3.2.2 Universal Gates
54(1)
3.3 Decision Making
54(4)
CT: Logic Checks
56(1)
3.3.1 Conditions and Implications
56(2)
CT: Follow the Logic
58(1)
3.4 Logic Applied to Bits
58(3)
CT: Combine Basic Components
61(1)
3.5 Logic and Iteration
61(8)
3.5.1 The while Loop
61(1)
3.5.2 The for Loop
62(4)
CT: Perform Everyday Programming
66(1)
Exercises
67(2)
4 Who Is the Master?
69(26)
4.1 What Is an Operating System?
69(1)
4.2 Operating System Kernel
70(1)
4.2.1 System Programs
70(1)
4.3 Open Source Software
71(1)
CT: Promote Free and Open
72(1)
4.4 Graphical User Interface
72(1)
4.5 Desktop Overview
73(2)
4.5.1 Desktop Components
73(2)
CT: Know Your Arena
75(1)
4.6 Are You Talking to Me?
75(2)
4.6.1 Input Focus
75(1)
CT: Pay Attention to Details
76(1)
4.6.2 Event Handling
76(1)
4.7 Command-Line Interface
77(3)
CT: Mind the Trade-Off
80(1)
4.8 Files
80(4)
4.8.1 File Content Types
81(1)
4.8.2 File Tree
81(2)
CT: Learn from Trees
83(1)
4.8.3 File Management and Access Control
83(1)
4.9 Processes
84(6)
CT: Keep It in Context
85(1)
CT: Capture the State
86(1)
4.9.1 Process Lifecycle
86(1)
4.9.2 Process Address Space
87(1)
4.9.3 Virtual Address Space Layout
88(1)
4.9.4 Address Mapping
89(1)
CT: Timesharing
90(1)
4.10 Managing Tasks
90(2)
4.11 Up and Running
92(3)
CT: Better Control Better System
92(2)
Exercises
94(1)
5 Hello There!
95(26)
5.1 What Is a Network?
95(1)
5.2 The Internet
96(2)
5.3 Local and Wide Area Networks
98(2)
5.4 Internet Architecture
100(2)
CT: Redundancy for Safety
100(1)
CT: One and All
101(1)
5.5 Wireless Networking
102(1)
5.6 Networking Protocols
103(2)
CT: Follow Protocol
104(1)
5.7 IP Addresses
105(1)
5.8 Domain Names
105(1)
5.9 Client and Server
106(2)
CT: Interoperate
107(1)
5.10 Peer to Peer
108(1)
5.11 DNS Service
109(2)
CT: Indirection Adds Flexibility
110(1)
5.12 DNS Servers and Resolvers
111(2)
CT: Decentralize
112(1)
5.13 Domain Registration
113(1)
5.13.1 Accessing Domain Registration Data
113(1)
5.14 Packet Switching
114(1)
5.15 Cloud Computing
115(6)
CT: Backup in the Cloud
117(2)
Exercises
119(2)
6 Home Sweet Homepage :-)
121(26)
6.1 What Is a Web Server?
121(1)
6.2 Web Browsers
122(1)
6.3 A Brief History of the Web
123(1)
6.4 URLs
124(4)
CT: Be Aware of the Implicit Context
126(1)
6.4.1 URL Encoding
126(1)
CT: Wear Different Hats
127(1)
6.5 HTML and HTML5
128(2)
CT: Mark It Up
130(1)
6.6 Webpage Styling
130(1)
6.7 Web Hosting
130(2)
CT: Really Use Your Website
131(1)
CT: Be Careful with Online Information
131(1)
6.8 Dynamic Generation of Webpages
132(2)
6.8.1 Active Server Pages
133(1)
6.8.2 Database Access
134(1)
6.9 Client-Side Scripting
134(1)
6.10 Hypertext Transfer Protocol
135(3)
6.10.1 HTTP Caching
137(1)
CT: Cache for Speed
138(1)
6.11 Website Development
138(1)
CT: Develop for Users
139(1)
6.12 Web Search Engines
139(2)
CT: Google It
140(1)
CT: Believe It or Not
140(1)
6.13 Web Services
141(1)
6.14 Standard Web Technologies
142(5)
Exercises
144(3)
7 Keeping It Safe
147(28)
7.1 Login
148(4)
7.1.1 Website Login
148(1)
CT: Safeguard Security Realms
149(2)
CT: Prevent Illicit Login
151(1)
7.2 HTTPS and SSL/TLS
152(1)
7.3 What Is a Digital Certificate?
153(2)
7.4 Cryptography
155(5)
7.4.1 Symmetric Cryptosystems
157(2)
CT: Secure Sensitive Files
159(1)
CT: Add Security Layers
159(1)
7.5 Public-Key Cryptography
160(2)
CT: Breakthrough
160(2)
CT: Beware of Bugs
162(1)
7.6 RSA Public-Key Algorithm
162(2)
7.7 Digital Signature
164(1)
CT: Sign Digitally
164(1)
7.8 Message Digests
164(3)
7.9 Secure Email
167(3)
7.9.1 Secure Email with Thunderbird
167(2)
CT: Free from Surveillance
169(1)
7.10 Security Attacks and Defenses
170(5)
CT: All for One and One for All
171(3)
Exercises
174(1)
8 Solve That Problem
175(26)
8.1 Solving Puzzles
175(3)
8.1.1 Egg Frying
175(1)
8.1.2 Liquid Measuring
176(1)
8.1.3 A Magic Tray
177(1)
8.2 Sorting
178(4)
8.2.1 Bubble Sort
178(2)
8.2.2 Improved Bubble Sort
180(1)
CT: Cut It Down
180(1)
CT: Build It Up
181(1)
CT: Stepwise Refinement
181(1)
CT: Version 2.0
182(1)
8.3 Recursion
182(4)
CT: Remember Recursion
183(1)
8.3.1 Quicksort
184(2)
8.4 Recursive Solution Formula
186(1)
CT: Apply the Recursion Magic
186(1)
8.5 Tower of Hanoi
187(3)
8.6 Eight Queens
190(3)
8.7 General Backtracking
193(1)
8.8 Tree Traversals
194(1)
CT: Form Tree Structures
195(1)
8.9 Complexity
195(2)
CT: Weigh Speed vs. Complexity
196(1)
8.10 Heuristics
197(4)
CT: Devise Heuristics
197(3)
Exercises
200(1)
9 Data Everywhere
201(28)
CT: Garbage in, Garbage Out
201(1)
9.1 Digital Images
202(2)
9.1.1 Representing Color
202(2)
9.2 Raster Image Encoding
204(2)
9.2.1 Raster Image Formats
204(1)
CT: Small Is Beautiful
205(1)
9.2.2 Vector Graphics
205(1)
9.2.3 Scalable Vector Graphics
205(1)
9.3 Audio and Video
206(2)
9.3.1 Digital Audio
206(1)
9.3.2 Audio Encoding Formats
207(1)
9.4 Digital Video
208(2)
9.4.1 Video Containers
208(1)
9.4.2 Video Codecs
209(1)
9.5 Format of Data and Files
210(2)
CT: Interpreting Data
210(1)
CT: Data Is Application Dependent
211(1)
CT: Save Trees with PDF
211(1)
9.6 Data Sharing
212(1)
9.7 Document Markup
212(4)
9.7.1 What Is XML?
213(1)
9.7.2 XML Document Format
214(1)
9.7.3 XML for News Syndication
214(1)
CT: Markup for Interoperability
215(1)
9.8 Data Compression
216(4)
CT: Compression Is Not Encryption
217(1)
9.8.1 LZ Deflation
217(1)
9.8.2 Huffman Code
218(2)
CT: Customize for Efficiency
220(1)
9.9 Data Structures
220(2)
CT: Synthesize and Simplify
222(1)
9.10 What Is a Database?
222(3)
9.10.1 Relational Databases
222(1)
9.10.2 SQL: Structured Query Language
223(1)
CT: Combine Web and Database
224(1)
9.10.3 Big Data
225(1)
CT: Data to Insight
225(1)
9.11 Protecting Personal Data
225(4)
CT: Guard Personal Data
226(1)
Exercises
227(2)
10 Get That App
229(20)
10.1 Key Programs
230(2)
CT: Remind Yourself
231(1)
CT: Install That App
231(1)
10.2 Knowing Your Apps
232(2)
CT: Learn That App
233(1)
CT: No App, No Way
233(1)
10.3 Program Configuration and Customization
234(1)
CT: Configure and Enjoy
234(1)
10.4 Process Cooperation
234(2)
CT: Coordinate or Else
235(1)
10.5 Machine Language Programs
236(1)
10.6 Assembly Language Programs
237(1)
10.7 High-Level Programs
238(2)
10.8 Compilers
240(2)
CT: Bootstrapping
241(1)
10.9 Software Development
242(1)
10.10 Object-Oriented Programming
242(4)
CT: Compartmentalize
242(1)
10.10.1 OOP Advantages
243(1)
10.10.2 OOP Concepts
244(1)
CT: Expose Only the Interface
244(2)
10.11 Object-Oriented Design
246(3)
Exercises
247(2)
Epilogue
249(2)
CT: Reprogram Your Brain
249(2)
Website and Interactive Demos 251(2)
Bibliography 253(2)
Index 255
Paul S. Wang , PhD, is professor of computer science at Kent State University, Ohio. He received his PhD from MIT. He has published 10 computer science textbooks, all of which have been well-received in the US and worldwide. Several have been translated into other languages.