- Broschiertes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
Full stack web developers are always in demand-do you have the skillset? Between these pages you'll learn to design websites with CSS, structure them with HTML, and add interactivity with JavaScript. You'll master the different web protocols, formats, and architectures and see how and when to use APIs, PHP, web services, and other tools and languages. With information on testing, deploying, securing, and optimizing web applications, you'll get the full frontend and backend instructions you need!
Highlights include:
1) Frontend programming 2) Backend programming 3) HTML 4) CSS 5)…mehr
Andere Kunden interessierten sich auch für
- Jennifer Niederst RobbinsHTML5 - kurz & gut12,90 €
- Paul McFedriesHTML, CSS, & JavaScript All-in-One For Dummies28,99 €
- Christian WenzPHP 8 und MySQL49,90 €
- Code CampusJavaScript für Einsteiger - In einfachen Schritten zum Programmier-Experten: Der leicht verständliche und praxisnahe Leitfaden zum professionellen Programmieren im Handumdrehen15,90 €
- Philip AckermannFullstack-Entwicklung (eBook, ePUB)39,92 €
- Code CampusHTML5 und CSS3 für Einsteiger - In einfachen Schritten zum Programmier-Experten: Der leicht verständliche und praxisnahe Leitfaden zum professionellen Programmieren im Handumdrehen15,90 €
- Joseph SteinbergCybersecurity All-in-One For Dummies38,99 €
-
-
-
-
-
-
-
-
-
-
-
-
-
Full stack web developers are always in demand-do you have the skillset? Between these pages you'll learn to design websites with CSS, structure them with HTML, and add interactivity with JavaScript. You'll master the different web protocols, formats, and architectures and see how and when to use APIs, PHP, web services, and other tools and languages. With information on testing, deploying, securing, and optimizing web applications, you'll get the full frontend and backend instructions you need!
Highlights include:
1) Frontend programming
2) Backend programming
3) HTML
4) CSS
5) JavaScript
6) APIs
7) Single-page applications
8) Web architecture
9) Testing
10) Deployment
11) Security
12) Optimization
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Highlights include:
1) Frontend programming
2) Backend programming
3) HTML
4) CSS
5) JavaScript
6) APIs
7) Single-page applications
8) Web architecture
9) Testing
10) Deployment
11) Security
12) Optimization
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Produktdetails
- Produktdetails
- Rheinwerk Computing
- Verlag: Rheinwerk Computing / Rheinwerk Verlag
- Artikelnr. des Verlages: 459/22437
- Seitenzahl: 740
- Erscheinungstermin: 4. Januar 2024
- Englisch
- Abmessung: 257mm x 178mm x 45mm
- Gewicht: 1583g
- ISBN-13: 9781493224371
- ISBN-10: 1493224379
- Artikelnr.: 67197847
- Herstellerkennzeichnung
- Rheinwerk Publishing Inc.
- 2 Heritage Drive
- 11201 Quincy, MA, US
- Info@rheinwerk-verlag.de
- www.rheinwerk-verlag.de
- Rheinwerk Computing
- Verlag: Rheinwerk Computing / Rheinwerk Verlag
- Artikelnr. des Verlages: 459/22437
- Seitenzahl: 740
- Erscheinungstermin: 4. Januar 2024
- Englisch
- Abmessung: 257mm x 178mm x 45mm
- Gewicht: 1583g
- ISBN-13: 9781493224371
- ISBN-10: 1493224379
- Artikelnr.: 67197847
- Herstellerkennzeichnung
- Rheinwerk Publishing Inc.
- 2 Heritage Drive
- 11201 Quincy, MA, US
- Info@rheinwerk-verlag.de
- www.rheinwerk-verlag.de
· ... Foreword ... 23
· ... Preface ... 25
· ... Intended Audience ... 26
· ... Structure of the Book ... 26
· ... How Should I Read This Book? ... 26
· ... Acknowledgments ... 27
· 1 ... Understanding the Basics ... 29
· 1.1 ... Terminology ... 29
· 1.2 ... Structure of Web Applications ... 32
· 1.3 ... Full Stack Development ... 36
· 1.4 ... Tools for Full Stack Developers ... 42
· 1.5 ... Summary and Outlook ... 50
· 2 ... Structuring Web Pages with HTML ... 51
· 2.1 ... Introduction ... 51
· 2.2 ... Using the Most Important Elements ... 56
· 2.3 ... Summary and Outlook ... 77
· 3 ... Designing Web Pages with CSS ... 79
· 3.1 ... Introduction ... 79
· 3.2 ... Applying Colors and Text Formatting ... 91
· 3.3 ... Lists and Tables ... 103
· 3.4 ... Understanding the Different Layout Systems ... 112
· 3.5 ... Summary and Outlook ... 129
· 4 ... Making Web Pages Interactive with JavaScript ... 133
· 4.1 ... Introduction ... 133
· 4.2 ... Variables, Constants, Data Types, and Operators ... 140
· 4.3 ... Using Control Structures ... 144
· 4.4 ... Functions and Error Handling ... 147
· 4.5 ... Objects and Arrays ... 151
· 4.6 ... Summary and Outlook ... 154
· 5 ... Using Web Protocols ... 157
· 5.1 ... Hypertext Transfer Protocol ... 157
· 5.2 ... Bidirectional Communication ... 174
· 5.3 ... Summary and Outlook ... 178
· 6 ... Using Web Formats ... 181
· 6.1 ... Data Formats ... 182
· 6.2 ... Image Formats ... 193
· 6.3 ... Video and Audio Formats ... 199
· 6.4 ... Summary and Outlook ... 204
· 7 ... Using Web APIs ... 207
· 7.1 ... Changing Web Pages Dynamically Using the DOM API ... 208
· 7.2 ... Loading Data Synchronously via Ajax and the Fetch API ... 218
· 7.3 ... Other Web APIs ... 223
· 7.4 ... Summary and Outlook ... 227
· 8 ... Optimizing Websites for Accessibility ... 229
· 8.1 ... Introduction ... 229
· 8.2 ... Making Components of a Website Accessible ... 236
· 8.3 ... Testing Accessibility ... 254
· 8.4 ... Summary and Outlook ... 258
· 9 ... Simplifying CSS with CSS Preprocessors ... 261
· 9.1 ... Introduction ... 261
· 9.2 ... Using Sass ... 264
· 9.3 ... Summary and Outlook ... 285
· 10 ... Implementing Single-Page Applications ... 287
· 10.1 ... Introduction ... 287
· 10.2 ... Setup ... 290
· 10.3 ... Components: The Building Blocks of a React Application ... 293
· 10.4 ... Styling Components ... 298
· 10.5 ... Component Hierarchies ... 302
· 10.6 ... Forms ... 307
· 10.7 ... The Context API ... 310
· 10.8 ... Routing ... 314
· 10.9 ... Summary and Outlook ... 316
· 11 ... Implementing Mobile Applications ... 319
· 11.1 ... The Different Types of Mobile Applications ... 319
· 11.2 ... Responsive Design ... 326
· 11.3 ... Cross-Platform Development with React Native ... 338
· 11.4 ... Summary and Outlook ... 349
· 12 ... Understanding and Using Web Architectures ... 351
· 12.1 ... Layered Architectures ... 352
· 12.2 ... Monoliths and Distributed Architectures ... 358
· 12.3 ... MV* Architectures ... 367
· 12.4 ... Summary and Outlook ... 371
· 13 ... Using Programming Languages on the Server Side ... 373
· 13.1 ... Types of Programming Languages ... 374
· 13.2 ... Programming Paradigms ... 378
· 13.3 ... What Are the Programming Languages? ... 385
· 13.4 ... Summary and Outlook ... 395
· 14 ... Using JavaScript on the Server Side ... 399
· 14.1 ... JavaScript on Node.js ... 399
· 14.2 ... Using the Integrated Modules ... 409
· 14.3 ... Implementing a Web Server ... 413
· 14.4 ... Summary and Outlook ... 423
· 15 ... Using the PHP Language ... 425
· 15.1 ... Introduction to the PHP Language ... 425
· 15.2 ... Installing PHP and the Web Server Locally ... 425
· 15.3 ... Variables, Data Types, and Operators ... 427
· 15.4 ... Using Control Structures ... 435
· 15.5 ... Functions and Error Handling ... 439
· 15.6 ... Using Classes and Objects ... 445
· 15.7 ... Developing Dynamic Websites with PHP ... 450
· 15.8 ... Summary and Outlook ... 460
· 16 ... Implementing Web Services ... 463
· 16.1 ... Introduction ... 463
· 16.2 ... SOAP ... 465
· 16.3 ... REST ... 471
· 16.4 ... GraphQL ... 488
· 16.5 ... Summary and Outlook ... 493
· 17 ... Storing Data in Databases ... 495
· 17.1 ... Relational Databases ... 496
· 17.2 ... Non-Relational Databases ... 518
· 17.3 ... Summary and Outlook ... 524
· 18 ... Testing Web Applications ... 527
· 18.1 ... Automated Tests ... 527
· 18.2 ... Test Coverage ... 537
· 18.3 ... Test Doubles ... 539
· 18.4 ... Summary and Outlook ... 544
· 19 ... Deploying and Hosting Web Applications ... 547
· 19.1 ... Introduction ... 547
· 19.2 ... Container Management ... 557
· 19.3 ... Summary and Outlook ... 569
· 20 ... Securing Web Applications ... 571
· 20.1 ... Vulnerabilities ... 572
· 20.2 ... Encryption and Cryptography ... 579
· 20.3 ... Same-Origin Policies, Content Security Policies, and Cross-Origin Resource Sharing ... 584
· 20.4 ... Authentication ... 593
· 20.5 ... Summary and Outlook ... 597
· 21 ... Optimizing the Performance of Web Applications ... 599
· 21.1 ... Introduction ... 599
· 21.2 ... Options for Optimization ... 609
· 21.3 ... Summary and Outlook ... 627
· 22 ... Organizing and Managing Web Projects ... 631
· 22.1 ... Types of Version Control Systems ... 632
· 22.2 ... The Git Version Control System ... 635
· 22.3 ... Summary and Outlook ... 648
· 23 ... Managing Web Projects ... 651
· 23.1 ... Classic Project Management versus Agile Project Management ... 651
· 23.2 ... Agile Project Management Based on Scrum ... 654
· 23.3 ... Summary and Outlook ... 665
· ... Appendices ... 669
· A ... HTTP ... 669
· B ... HTML Elements ... 691
· C ... Tools and Command References ... 703
· D ... Conclusion ... 715
· E ... The Author ... 717
· ... Index ... 719
· ... Preface ... 25
· ... Intended Audience ... 26
· ... Structure of the Book ... 26
· ... How Should I Read This Book? ... 26
· ... Acknowledgments ... 27
· 1 ... Understanding the Basics ... 29
· 1.1 ... Terminology ... 29
· 1.2 ... Structure of Web Applications ... 32
· 1.3 ... Full Stack Development ... 36
· 1.4 ... Tools for Full Stack Developers ... 42
· 1.5 ... Summary and Outlook ... 50
· 2 ... Structuring Web Pages with HTML ... 51
· 2.1 ... Introduction ... 51
· 2.2 ... Using the Most Important Elements ... 56
· 2.3 ... Summary and Outlook ... 77
· 3 ... Designing Web Pages with CSS ... 79
· 3.1 ... Introduction ... 79
· 3.2 ... Applying Colors and Text Formatting ... 91
· 3.3 ... Lists and Tables ... 103
· 3.4 ... Understanding the Different Layout Systems ... 112
· 3.5 ... Summary and Outlook ... 129
· 4 ... Making Web Pages Interactive with JavaScript ... 133
· 4.1 ... Introduction ... 133
· 4.2 ... Variables, Constants, Data Types, and Operators ... 140
· 4.3 ... Using Control Structures ... 144
· 4.4 ... Functions and Error Handling ... 147
· 4.5 ... Objects and Arrays ... 151
· 4.6 ... Summary and Outlook ... 154
· 5 ... Using Web Protocols ... 157
· 5.1 ... Hypertext Transfer Protocol ... 157
· 5.2 ... Bidirectional Communication ... 174
· 5.3 ... Summary and Outlook ... 178
· 6 ... Using Web Formats ... 181
· 6.1 ... Data Formats ... 182
· 6.2 ... Image Formats ... 193
· 6.3 ... Video and Audio Formats ... 199
· 6.4 ... Summary and Outlook ... 204
· 7 ... Using Web APIs ... 207
· 7.1 ... Changing Web Pages Dynamically Using the DOM API ... 208
· 7.2 ... Loading Data Synchronously via Ajax and the Fetch API ... 218
· 7.3 ... Other Web APIs ... 223
· 7.4 ... Summary and Outlook ... 227
· 8 ... Optimizing Websites for Accessibility ... 229
· 8.1 ... Introduction ... 229
· 8.2 ... Making Components of a Website Accessible ... 236
· 8.3 ... Testing Accessibility ... 254
· 8.4 ... Summary and Outlook ... 258
· 9 ... Simplifying CSS with CSS Preprocessors ... 261
· 9.1 ... Introduction ... 261
· 9.2 ... Using Sass ... 264
· 9.3 ... Summary and Outlook ... 285
· 10 ... Implementing Single-Page Applications ... 287
· 10.1 ... Introduction ... 287
· 10.2 ... Setup ... 290
· 10.3 ... Components: The Building Blocks of a React Application ... 293
· 10.4 ... Styling Components ... 298
· 10.5 ... Component Hierarchies ... 302
· 10.6 ... Forms ... 307
· 10.7 ... The Context API ... 310
· 10.8 ... Routing ... 314
· 10.9 ... Summary and Outlook ... 316
· 11 ... Implementing Mobile Applications ... 319
· 11.1 ... The Different Types of Mobile Applications ... 319
· 11.2 ... Responsive Design ... 326
· 11.3 ... Cross-Platform Development with React Native ... 338
· 11.4 ... Summary and Outlook ... 349
· 12 ... Understanding and Using Web Architectures ... 351
· 12.1 ... Layered Architectures ... 352
· 12.2 ... Monoliths and Distributed Architectures ... 358
· 12.3 ... MV* Architectures ... 367
· 12.4 ... Summary and Outlook ... 371
· 13 ... Using Programming Languages on the Server Side ... 373
· 13.1 ... Types of Programming Languages ... 374
· 13.2 ... Programming Paradigms ... 378
· 13.3 ... What Are the Programming Languages? ... 385
· 13.4 ... Summary and Outlook ... 395
· 14 ... Using JavaScript on the Server Side ... 399
· 14.1 ... JavaScript on Node.js ... 399
· 14.2 ... Using the Integrated Modules ... 409
· 14.3 ... Implementing a Web Server ... 413
· 14.4 ... Summary and Outlook ... 423
· 15 ... Using the PHP Language ... 425
· 15.1 ... Introduction to the PHP Language ... 425
· 15.2 ... Installing PHP and the Web Server Locally ... 425
· 15.3 ... Variables, Data Types, and Operators ... 427
· 15.4 ... Using Control Structures ... 435
· 15.5 ... Functions and Error Handling ... 439
· 15.6 ... Using Classes and Objects ... 445
· 15.7 ... Developing Dynamic Websites with PHP ... 450
· 15.8 ... Summary and Outlook ... 460
· 16 ... Implementing Web Services ... 463
· 16.1 ... Introduction ... 463
· 16.2 ... SOAP ... 465
· 16.3 ... REST ... 471
· 16.4 ... GraphQL ... 488
· 16.5 ... Summary and Outlook ... 493
· 17 ... Storing Data in Databases ... 495
· 17.1 ... Relational Databases ... 496
· 17.2 ... Non-Relational Databases ... 518
· 17.3 ... Summary and Outlook ... 524
· 18 ... Testing Web Applications ... 527
· 18.1 ... Automated Tests ... 527
· 18.2 ... Test Coverage ... 537
· 18.3 ... Test Doubles ... 539
· 18.4 ... Summary and Outlook ... 544
· 19 ... Deploying and Hosting Web Applications ... 547
· 19.1 ... Introduction ... 547
· 19.2 ... Container Management ... 557
· 19.3 ... Summary and Outlook ... 569
· 20 ... Securing Web Applications ... 571
· 20.1 ... Vulnerabilities ... 572
· 20.2 ... Encryption and Cryptography ... 579
· 20.3 ... Same-Origin Policies, Content Security Policies, and Cross-Origin Resource Sharing ... 584
· 20.4 ... Authentication ... 593
· 20.5 ... Summary and Outlook ... 597
· 21 ... Optimizing the Performance of Web Applications ... 599
· 21.1 ... Introduction ... 599
· 21.2 ... Options for Optimization ... 609
· 21.3 ... Summary and Outlook ... 627
· 22 ... Organizing and Managing Web Projects ... 631
· 22.1 ... Types of Version Control Systems ... 632
· 22.2 ... The Git Version Control System ... 635
· 22.3 ... Summary and Outlook ... 648
· 23 ... Managing Web Projects ... 651
· 23.1 ... Classic Project Management versus Agile Project Management ... 651
· 23.2 ... Agile Project Management Based on Scrum ... 654
· 23.3 ... Summary and Outlook ... 665
· ... Appendices ... 669
· A ... HTTP ... 669
· B ... HTML Elements ... 691
· C ... Tools and Command References ... 703
· D ... Conclusion ... 715
· E ... The Author ... 717
· ... Index ... 719
· ... Foreword ... 23
· ... Preface ... 25
· ... Intended Audience ... 26
· ... Structure of the Book ... 26
· ... How Should I Read This Book? ... 26
· ... Acknowledgments ... 27
· 1 ... Understanding the Basics ... 29
· 1.1 ... Terminology ... 29
· 1.2 ... Structure of Web Applications ... 32
· 1.3 ... Full Stack Development ... 36
· 1.4 ... Tools for Full Stack Developers ... 42
· 1.5 ... Summary and Outlook ... 50
· 2 ... Structuring Web Pages with HTML ... 51
· 2.1 ... Introduction ... 51
· 2.2 ... Using the Most Important Elements ... 56
· 2.3 ... Summary and Outlook ... 77
· 3 ... Designing Web Pages with CSS ... 79
· 3.1 ... Introduction ... 79
· 3.2 ... Applying Colors and Text Formatting ... 91
· 3.3 ... Lists and Tables ... 103
· 3.4 ... Understanding the Different Layout Systems ... 112
· 3.5 ... Summary and Outlook ... 129
· 4 ... Making Web Pages Interactive with JavaScript ... 133
· 4.1 ... Introduction ... 133
· 4.2 ... Variables, Constants, Data Types, and Operators ... 140
· 4.3 ... Using Control Structures ... 144
· 4.4 ... Functions and Error Handling ... 147
· 4.5 ... Objects and Arrays ... 151
· 4.6 ... Summary and Outlook ... 154
· 5 ... Using Web Protocols ... 157
· 5.1 ... Hypertext Transfer Protocol ... 157
· 5.2 ... Bidirectional Communication ... 174
· 5.3 ... Summary and Outlook ... 178
· 6 ... Using Web Formats ... 181
· 6.1 ... Data Formats ... 182
· 6.2 ... Image Formats ... 193
· 6.3 ... Video and Audio Formats ... 199
· 6.4 ... Summary and Outlook ... 204
· 7 ... Using Web APIs ... 207
· 7.1 ... Changing Web Pages Dynamically Using the DOM API ... 208
· 7.2 ... Loading Data Synchronously via Ajax and the Fetch API ... 218
· 7.3 ... Other Web APIs ... 223
· 7.4 ... Summary and Outlook ... 227
· 8 ... Optimizing Websites for Accessibility ... 229
· 8.1 ... Introduction ... 229
· 8.2 ... Making Components of a Website Accessible ... 236
· 8.3 ... Testing Accessibility ... 254
· 8.4 ... Summary and Outlook ... 258
· 9 ... Simplifying CSS with CSS Preprocessors ... 261
· 9.1 ... Introduction ... 261
· 9.2 ... Using Sass ... 264
· 9.3 ... Summary and Outlook ... 285
· 10 ... Implementing Single-Page Applications ... 287
· 10.1 ... Introduction ... 287
· 10.2 ... Setup ... 290
· 10.3 ... Components: The Building Blocks of a React Application ... 293
· 10.4 ... Styling Components ... 298
· 10.5 ... Component Hierarchies ... 302
· 10.6 ... Forms ... 307
· 10.7 ... The Context API ... 310
· 10.8 ... Routing ... 314
· 10.9 ... Summary and Outlook ... 316
· 11 ... Implementing Mobile Applications ... 319
· 11.1 ... The Different Types of Mobile Applications ... 319
· 11.2 ... Responsive Design ... 326
· 11.3 ... Cross-Platform Development with React Native ... 338
· 11.4 ... Summary and Outlook ... 349
· 12 ... Understanding and Using Web Architectures ... 351
· 12.1 ... Layered Architectures ... 352
· 12.2 ... Monoliths and Distributed Architectures ... 358
· 12.3 ... MV* Architectures ... 367
· 12.4 ... Summary and Outlook ... 371
· 13 ... Using Programming Languages on the Server Side ... 373
· 13.1 ... Types of Programming Languages ... 374
· 13.2 ... Programming Paradigms ... 378
· 13.3 ... What Are the Programming Languages? ... 385
· 13.4 ... Summary and Outlook ... 395
· 14 ... Using JavaScript on the Server Side ... 399
· 14.1 ... JavaScript on Node.js ... 399
· 14.2 ... Using the Integrated Modules ... 409
· 14.3 ... Implementing a Web Server ... 413
· 14.4 ... Summary and Outlook ... 423
· 15 ... Using the PHP Language ... 425
· 15.1 ... Introduction to the PHP Language ... 425
· 15.2 ... Installing PHP and the Web Server Locally ... 425
· 15.3 ... Variables, Data Types, and Operators ... 427
· 15.4 ... Using Control Structures ... 435
· 15.5 ... Functions and Error Handling ... 439
· 15.6 ... Using Classes and Objects ... 445
· 15.7 ... Developing Dynamic Websites with PHP ... 450
· 15.8 ... Summary and Outlook ... 460
· 16 ... Implementing Web Services ... 463
· 16.1 ... Introduction ... 463
· 16.2 ... SOAP ... 465
· 16.3 ... REST ... 471
· 16.4 ... GraphQL ... 488
· 16.5 ... Summary and Outlook ... 493
· 17 ... Storing Data in Databases ... 495
· 17.1 ... Relational Databases ... 496
· 17.2 ... Non-Relational Databases ... 518
· 17.3 ... Summary and Outlook ... 524
· 18 ... Testing Web Applications ... 527
· 18.1 ... Automated Tests ... 527
· 18.2 ... Test Coverage ... 537
· 18.3 ... Test Doubles ... 539
· 18.4 ... Summary and Outlook ... 544
· 19 ... Deploying and Hosting Web Applications ... 547
· 19.1 ... Introduction ... 547
· 19.2 ... Container Management ... 557
· 19.3 ... Summary and Outlook ... 569
· 20 ... Securing Web Applications ... 571
· 20.1 ... Vulnerabilities ... 572
· 20.2 ... Encryption and Cryptography ... 579
· 20.3 ... Same-Origin Policies, Content Security Policies, and Cross-Origin Resource Sharing ... 584
· 20.4 ... Authentication ... 593
· 20.5 ... Summary and Outlook ... 597
· 21 ... Optimizing the Performance of Web Applications ... 599
· 21.1 ... Introduction ... 599
· 21.2 ... Options for Optimization ... 609
· 21.3 ... Summary and Outlook ... 627
· 22 ... Organizing and Managing Web Projects ... 631
· 22.1 ... Types of Version Control Systems ... 632
· 22.2 ... The Git Version Control System ... 635
· 22.3 ... Summary and Outlook ... 648
· 23 ... Managing Web Projects ... 651
· 23.1 ... Classic Project Management versus Agile Project Management ... 651
· 23.2 ... Agile Project Management Based on Scrum ... 654
· 23.3 ... Summary and Outlook ... 665
· ... Appendices ... 669
· A ... HTTP ... 669
· B ... HTML Elements ... 691
· C ... Tools and Command References ... 703
· D ... Conclusion ... 715
· E ... The Author ... 717
· ... Index ... 719
· ... Preface ... 25
· ... Intended Audience ... 26
· ... Structure of the Book ... 26
· ... How Should I Read This Book? ... 26
· ... Acknowledgments ... 27
· 1 ... Understanding the Basics ... 29
· 1.1 ... Terminology ... 29
· 1.2 ... Structure of Web Applications ... 32
· 1.3 ... Full Stack Development ... 36
· 1.4 ... Tools for Full Stack Developers ... 42
· 1.5 ... Summary and Outlook ... 50
· 2 ... Structuring Web Pages with HTML ... 51
· 2.1 ... Introduction ... 51
· 2.2 ... Using the Most Important Elements ... 56
· 2.3 ... Summary and Outlook ... 77
· 3 ... Designing Web Pages with CSS ... 79
· 3.1 ... Introduction ... 79
· 3.2 ... Applying Colors and Text Formatting ... 91
· 3.3 ... Lists and Tables ... 103
· 3.4 ... Understanding the Different Layout Systems ... 112
· 3.5 ... Summary and Outlook ... 129
· 4 ... Making Web Pages Interactive with JavaScript ... 133
· 4.1 ... Introduction ... 133
· 4.2 ... Variables, Constants, Data Types, and Operators ... 140
· 4.3 ... Using Control Structures ... 144
· 4.4 ... Functions and Error Handling ... 147
· 4.5 ... Objects and Arrays ... 151
· 4.6 ... Summary and Outlook ... 154
· 5 ... Using Web Protocols ... 157
· 5.1 ... Hypertext Transfer Protocol ... 157
· 5.2 ... Bidirectional Communication ... 174
· 5.3 ... Summary and Outlook ... 178
· 6 ... Using Web Formats ... 181
· 6.1 ... Data Formats ... 182
· 6.2 ... Image Formats ... 193
· 6.3 ... Video and Audio Formats ... 199
· 6.4 ... Summary and Outlook ... 204
· 7 ... Using Web APIs ... 207
· 7.1 ... Changing Web Pages Dynamically Using the DOM API ... 208
· 7.2 ... Loading Data Synchronously via Ajax and the Fetch API ... 218
· 7.3 ... Other Web APIs ... 223
· 7.4 ... Summary and Outlook ... 227
· 8 ... Optimizing Websites for Accessibility ... 229
· 8.1 ... Introduction ... 229
· 8.2 ... Making Components of a Website Accessible ... 236
· 8.3 ... Testing Accessibility ... 254
· 8.4 ... Summary and Outlook ... 258
· 9 ... Simplifying CSS with CSS Preprocessors ... 261
· 9.1 ... Introduction ... 261
· 9.2 ... Using Sass ... 264
· 9.3 ... Summary and Outlook ... 285
· 10 ... Implementing Single-Page Applications ... 287
· 10.1 ... Introduction ... 287
· 10.2 ... Setup ... 290
· 10.3 ... Components: The Building Blocks of a React Application ... 293
· 10.4 ... Styling Components ... 298
· 10.5 ... Component Hierarchies ... 302
· 10.6 ... Forms ... 307
· 10.7 ... The Context API ... 310
· 10.8 ... Routing ... 314
· 10.9 ... Summary and Outlook ... 316
· 11 ... Implementing Mobile Applications ... 319
· 11.1 ... The Different Types of Mobile Applications ... 319
· 11.2 ... Responsive Design ... 326
· 11.3 ... Cross-Platform Development with React Native ... 338
· 11.4 ... Summary and Outlook ... 349
· 12 ... Understanding and Using Web Architectures ... 351
· 12.1 ... Layered Architectures ... 352
· 12.2 ... Monoliths and Distributed Architectures ... 358
· 12.3 ... MV* Architectures ... 367
· 12.4 ... Summary and Outlook ... 371
· 13 ... Using Programming Languages on the Server Side ... 373
· 13.1 ... Types of Programming Languages ... 374
· 13.2 ... Programming Paradigms ... 378
· 13.3 ... What Are the Programming Languages? ... 385
· 13.4 ... Summary and Outlook ... 395
· 14 ... Using JavaScript on the Server Side ... 399
· 14.1 ... JavaScript on Node.js ... 399
· 14.2 ... Using the Integrated Modules ... 409
· 14.3 ... Implementing a Web Server ... 413
· 14.4 ... Summary and Outlook ... 423
· 15 ... Using the PHP Language ... 425
· 15.1 ... Introduction to the PHP Language ... 425
· 15.2 ... Installing PHP and the Web Server Locally ... 425
· 15.3 ... Variables, Data Types, and Operators ... 427
· 15.4 ... Using Control Structures ... 435
· 15.5 ... Functions and Error Handling ... 439
· 15.6 ... Using Classes and Objects ... 445
· 15.7 ... Developing Dynamic Websites with PHP ... 450
· 15.8 ... Summary and Outlook ... 460
· 16 ... Implementing Web Services ... 463
· 16.1 ... Introduction ... 463
· 16.2 ... SOAP ... 465
· 16.3 ... REST ... 471
· 16.4 ... GraphQL ... 488
· 16.5 ... Summary and Outlook ... 493
· 17 ... Storing Data in Databases ... 495
· 17.1 ... Relational Databases ... 496
· 17.2 ... Non-Relational Databases ... 518
· 17.3 ... Summary and Outlook ... 524
· 18 ... Testing Web Applications ... 527
· 18.1 ... Automated Tests ... 527
· 18.2 ... Test Coverage ... 537
· 18.3 ... Test Doubles ... 539
· 18.4 ... Summary and Outlook ... 544
· 19 ... Deploying and Hosting Web Applications ... 547
· 19.1 ... Introduction ... 547
· 19.2 ... Container Management ... 557
· 19.3 ... Summary and Outlook ... 569
· 20 ... Securing Web Applications ... 571
· 20.1 ... Vulnerabilities ... 572
· 20.2 ... Encryption and Cryptography ... 579
· 20.3 ... Same-Origin Policies, Content Security Policies, and Cross-Origin Resource Sharing ... 584
· 20.4 ... Authentication ... 593
· 20.5 ... Summary and Outlook ... 597
· 21 ... Optimizing the Performance of Web Applications ... 599
· 21.1 ... Introduction ... 599
· 21.2 ... Options for Optimization ... 609
· 21.3 ... Summary and Outlook ... 627
· 22 ... Organizing and Managing Web Projects ... 631
· 22.1 ... Types of Version Control Systems ... 632
· 22.2 ... The Git Version Control System ... 635
· 22.3 ... Summary and Outlook ... 648
· 23 ... Managing Web Projects ... 651
· 23.1 ... Classic Project Management versus Agile Project Management ... 651
· 23.2 ... Agile Project Management Based on Scrum ... 654
· 23.3 ... Summary and Outlook ... 665
· ... Appendices ... 669
· A ... HTTP ... 669
· B ... HTML Elements ... 691
· C ... Tools and Command References ... 703
· D ... Conclusion ... 715
· E ... The Author ... 717
· ... Index ... 719