Maintainable JavaScript

Maintainable JavaScript
Author :
Publisher : "O'Reilly Media, Inc."
Total Pages : 241
Release :
ISBN-10 : 9781449328122
ISBN-13 : 1449328121
Rating : 4/5 (22 Downloads)

Synopsis Maintainable JavaScript by : Nicholas C. Zakas

You may have definite ideas about writing code when working alone, but team development requires that everyone use the same approach. With the JavaScript practices in this book—including code style, programming tips, and automation—you will learn how to write maintainable code that other team members can easily understand, adapt, and extend. Author Nicholas Zakas assembled this collection of best practices as a front-end tech leader at Yahoo!, after completing his own journey from solo hacker to team player. He also includes rules recommended by other industry authorities. Use these tips and techniques to help your team set aside individual preferences and function at a higher level. Establish specific code conventions for your team Use tools such as JSLint and JSHint to keep your team on track Adopt style guidelines, such as basic formatting, to help your team produce uniform code Apply several programming practices to solve problems and improve code quality Create an automated JavaScript build system using a variety of utilities Integrate browser-based JavaScript testing with tools such as the YUI Test Selenium Driver

Clean Code in JavaScript

Clean Code in JavaScript
Author :
Publisher : Packt Publishing Ltd
Total Pages : 527
Release :
ISBN-10 : 9781789957297
ISBN-13 : 178995729X
Rating : 4/5 (97 Downloads)

Synopsis Clean Code in JavaScript by : James Padolsey

Get the most out of JavaScript for building web applications through a series of patterns, techniques, and case studies for clean coding Key FeaturesWrite maintainable JS code using internal abstraction, well-written tests, and well-documented codeUnderstand the agents of clean coding like SOLID principles, OOP, and functional programmingExplore solutions to tackle common JavaScript challenges in building UIs, managing APIs, and writing statesBook Description Building robust apps starts with creating clean code. In this book, you’ll explore techniques for doing this by learning everything from the basics of JavaScript through to the practices of clean code. You’ll write functional, intuitive, and maintainable code while also understanding how your code affects the end user and the wider community. The book starts with popular clean-coding principles such as SOLID, and the Law of Demeter (LoD), along with highlighting the enemies of writing clean code such as cargo culting and over-management. You’ll then delve into JavaScript, understanding the more complex aspects of the language. Next, you’ll create meaningful abstractions using design patterns, such as the Class Pattern and the Revealing Module Pattern. You’ll explore real-world challenges such as DOM reconciliation, state management, dependency management, and security, both within browser and server environments. Later, you’ll cover tooling and testing methodologies and the importance of documenting code. Finally, the book will focus on advocacy and good communication for improving code cleanliness within teams or workplaces, along with covering a case study for clean coding. By the end of this book, you’ll be well-versed with JavaScript and have learned how to create clean abstractions, test them, and communicate about them via documentation. What you will learnUnderstand the true purpose of code and the problems it solves for your end-users and colleaguesDiscover the tenets and enemies of clean code considering the effects of cultural and syntactic conventionsUse modern JavaScript syntax and design patterns to craft intuitive abstractionsMaintain code quality within your team via wise adoption of tooling and advocating best practicesLearn the modern ecosystem of JavaScript and its challenges like DOM reconciliation and state managementExpress the behavior of your code both within tests and via various forms of documentationWho this book is for This book is for anyone who writes JavaScript, professionally or otherwise. As this book does not relate specifically to any particular framework or environment, no prior experience of any JavaScript web framework is required. Some knowledge of programming is assumed to understand the concepts covered in the book more effectively.

JavaScript: The Good Parts

JavaScript: The Good Parts
Author :
Publisher : "O'Reilly Media, Inc."
Total Pages : 174
Release :
ISBN-10 : 9780596554873
ISBN-13 : 0596554877
Rating : 4/5 (73 Downloads)

Synopsis JavaScript: The Good Parts by : Douglas Crockford

Most programming languages contain good and bad parts, but JavaScript has more than its share of the bad, having been developed and released in a hurry before it could be refined. This authoritative book scrapes away these bad features to reveal a subset of JavaScript that's more reliable, readable, and maintainable than the language as a whole—a subset you can use to create truly extensible and efficient code. Considered the JavaScript expert by many people in the development community, author Douglas Crockford identifies the abundance of good ideas that make JavaScript an outstanding object-oriented programming language-ideas such as functions, loose typing, dynamic objects, and an expressive object literal notation. Unfortunately, these good ideas are mixed in with bad and downright awful ideas, like a programming model based on global variables. When Java applets failed, JavaScript became the language of the Web by default, making its popularity almost completely independent of its qualities as a programming language. In JavaScript: The Good Parts, Crockford finally digs through the steaming pile of good intentions and blunders to give you a detailed look at all the genuinely elegant parts of JavaScript, including: Syntax Objects Functions Inheritance Arrays Regular expressions Methods Style Beautiful features The real beauty? As you move ahead with the subset of JavaScript that this book presents, you'll also sidestep the need to unlearn all the bad parts. Of course, if you want to find out more about the bad parts and how to use them badly, simply consult any other JavaScript book. With JavaScript: The Good Parts, you'll discover a beautiful, elegant, lightweight and highly expressive language that lets you create effective code, whether you're managing object libraries or just trying to get Ajax to run fast. If you develop sites or applications for the Web, this book is an absolute must.

Test-driving JavaScript Applications

Test-driving JavaScript Applications
Author :
Publisher :
Total Pages : 0
Release :
ISBN-10 : 1680501747
ISBN-13 : 9781680501742
Rating : 4/5 (47 Downloads)

Synopsis Test-driving JavaScript Applications by : Venkat Subramaniam

"Design and code JavaScript applications with automated tests. Fire up your editor and get hands-on through practical exercises and effective automated testing and designing maintainable, modular code"--Back cover.

Mastering JavaScript Functional Programming

Mastering JavaScript Functional Programming
Author :
Publisher : Packt Publishing Ltd
Total Pages : 457
Release :
ISBN-10 : 9781839217425
ISBN-13 : 1839217421
Rating : 4/5 (25 Downloads)

Synopsis Mastering JavaScript Functional Programming by : Federico Kereki

Explore the functional programming paradigm and the different techniques for developing better algorithms, writing more concise code, and performing seamless testing Key FeaturesExplore this second edition updated to cover features like async functions and transducers, as well as functional reactive programmingEnhance your functional programming (FP) skills to build web and server apps using JavaScriptUse FP to enhance the modularity, reusability, and performance of appsBook Description Functional programming is a paradigm for developing software with better performance. It helps you write concise and testable code. To help you take your programming skills to the next level, this comprehensive book will assist you in harnessing the capabilities of functional programming with JavaScript and writing highly maintainable and testable web and server apps using functional JavaScript. This second edition is updated and improved to cover features such as transducers, lenses, prisms and various other concepts to help you write efficient programs. By focusing on functional programming, you’ll not only start to write but also to test pure functions, and reduce side effects. The book also specifically allows you to discover techniques for simplifying code and applying recursion for loopless coding. Gradually, you’ll understand how to achieve immutability, implement design patterns, and work with data types for your application, before going on to learn functional reactive programming to handle complex events in your app. Finally, the book will take you through the design patterns that are relevant to functional programming. By the end of this book, you’ll have developed your JavaScript skills and have gained knowledge of the essential functional programming techniques to program effectively. What you will learnSimplify JavaScript coding using function composition, pipelining, chaining, and transducingUse declarative coding as opposed to imperative coding to write clean JavaScript codeCreate more reliable code with closures and immutable dataApply practical solutions to complex programming problems using recursionImprove your functional code using data types, type checking, and immutabilityUnderstand advanced functional programming concepts such as lenses and prisms for data accessWho this book is for This book is for JavaScript developers who want to enhance their programming skills and build efficient web applications. Frontend and backend developers who use various JavaScript frameworks and libraries like React, Angular, or Node.js will also find the book helpful. Working knowledge of ES2019 is required to grasp the concepts covered in the book easily.

Mastering JavaScript Functional Programming

Mastering JavaScript Functional Programming
Author :
Publisher : Packt Publishing Ltd
Total Pages : 378
Release :
ISBN-10 : 9781787289734
ISBN-13 : 1787289737
Rating : 4/5 (34 Downloads)

Synopsis Mastering JavaScript Functional Programming by : Federico Kereki

Master Functional Programming techniques with this comprehensive guide for writing cleaner, safer, high-performing JavaScript codes About This Book Become proficient and skilled with Functional Programming in JavaScript to solve real-world development problems Successfully apply Functional Programming concepts and techniques to everyday JavaScript programming Bring modularity, reusability, testability, and performance to your web apps Who This Book Is For If you are a JavaScript developer and want to apply functional programming techniques, then this book is for you. Only a basic knowledge of the concepts of functional programming is required for this book. What You Will Learn Create more reliable code with closures and immutable data Convert existing methods into pure functions, and loops into recursive methods Develop more powerful applications with currying and function composition Separate the logic of your system from implementation details Implement composition and chaining techniques to simplify coding Use functional programming techniques where it makes the most sense In Detail Functional programming is a programming paradigm for developing software using functions. Learning to use functional programming is a good way to write more concise code, with greater concurrency and performance. The JavaScript language is particularly suited to functional programming. This book provides comprehensive coverage of the major topics in functional programming with JavaScript to produce shorter, clearer, and testable programs. You'll delve into functional programming; including writing and testing pure functions, reducing side-effects, and other features to make your applications functional in nature. Specifically, we'll explore techniques to simplify coding, apply recursion for loopless coding, learn ways to achieve immutability, implement design patterns, and work with data types. By the end of this book, you'll have developed the JavaScript skills you need to program functional applications with confidence. Style and approach This book takes an easy-to-follow, step-by-step tutorial approach. You will make the most of JavaScript programming with a focus on the progression of functional programming techniques, styles, and detailed information about JavaScript libraries.

Programming Elm

Programming Elm
Author :
Publisher : Pragmatic Bookshelf
Total Pages : 384
Release :
ISBN-10 : 9781680507171
ISBN-13 : 1680507176
Rating : 4/5 (71 Downloads)

Synopsis Programming Elm by : Jeremy Fairbank

Elm brings the safety and stability of functional programing to front-end development, making it one of the most popular new languages. Elm's functional nature and static typing means that run-time errors are nearly impossible, and it compiles to JavaScript for easy web deployment. This book helps you take advantage of this new language in your web site development. Learn how the Elm Architecture will help you create fast applications. Discover how to integrate Elm with JavaScript so you can update legacy applications. See how Elm tooling makes deployment quicker and easier. Functional programming offers safer applications with decreased runtime errors, but functional solutions that are type safe and easy to use have been hard to find, until the Elm language. Elm has the benefits of functional languages while compiling to JavaScript. This book provides a complete tutorial for the Elm language, starting with a simple static application that introduces Elm syntax, modules, and the virtual DOM, to exploring how to create a UI using functions. See how Elm handles the issues of state in functional languages. You'll continue to build up larger applications involving HTTP requests for communication. Integrate your Elm applications with JavaScript so you can update legacy applications or take advantage of JavaScript resources. Elm also provides built-in tooling to alleviate the tooling creep that's so common in JavaScript. This book covers Elm's deployment and testing tools that ease development confusion. Dive into advanced concepts including creating single-page applications, and creating performance improvements. Elm expert Jeremy Fairbank brings his years of web development experience to teaching how to use Elm for front-end development. Your web UIs will be faster, safer, and easier to develop with Elm and this tutorial. What You Need: You will need the latest version of Elm, 0.19, along with a browser to run the examples in this book.

Effective JavaScript

Effective JavaScript
Author :
Publisher : Addison-Wesley
Total Pages : 231
Release :
ISBN-10 : 9780132902250
ISBN-13 : 0132902257
Rating : 4/5 (50 Downloads)

Synopsis Effective JavaScript by : David Herman

“It’s uncommon to have a programming language wonk who can speak in such comfortable and friendly language as David does. His walk through the syntax and semantics of JavaScript is both charming and hugely insightful; reminders of gotchas complement realistic use cases, paced at a comfortable curve. You’ll find when you finish the book that you’ve gained a strong and comprehensive sense of mastery.” —Paul Irish, developer advocate, Google Chrome “This is not a book for those looking for shortcuts; rather it is hard-won experience distilled into a guided tour. It’s one of the few books on JS that I’ll recommend without hesitation.” —Alex Russell, TC39 member, software engineer, Google In order to truly master JavaScript, you need to learn how to work effectively with the language’s flexible, expressive features and how to avoid its pitfalls. No matter how long you’ve been writing JavaScript code, Effective JavaScript will help deepen your understanding of this powerful language, so you can build more predictable, reliable, and maintainable programs. Author David Herman, with his years of experience on Ecma’s JavaScript standardization committee, illuminates the language’s inner workings as never before—helping you take full advantage of JavaScript’s expressiveness. Reflecting the latest versions of the JavaScript standard, the book offers well-proven techniques and best practices you’ll rely on for years to come. Effective JavaScript is organized around 68 proven approaches for writing better JavaScript, backed by concrete examples. You’ll learn how to choose the right programming style for each project, manage unanticipated problems, and work more successfully with every facet of JavaScript programming from data structures to concurrency. Key features include Better ways to use prototype-based object-oriented programming Subtleties and solutions for working with arrays and dictionary objects Precise and practical explanations of JavaScript’s functions and variable scoping semantics Useful JavaScript programming patterns and idioms, such as options objects and method chaining In-depth guidance on using JavaScript’s unique “run-to-completion” approach to concurrency

Learning React

Learning React
Author :
Publisher : Addison-Wesley Professional
Total Pages : 747
Release :
ISBN-10 : 9780134843575
ISBN-13 : 0134843576
Rating : 4/5 (75 Downloads)

Synopsis Learning React by : Kirupa Chinnathambi

Learning React A hands-on guide to building web applications using React and Redux As far as new web frameworks and libraries go, React is quite the runaway success. It not only deals with the most common problems developers face when building complex apps, it throws in a few additional tricks that make building the visuals for such apps much, much easier. What React isn’t, though, is beginner-friendly and approachable. Until now. In Learning React, author Kirupa Chinnathambi brings his fresh, clear, and very personable writing style to help web developers new to React understand its fundamentals and how to use it to build really performant (and awesome) apps. The only book on the market that helps you get your first React app up and running in just minutes, Learning Reactis chock-full of colorful illustrations to help you visualize difficult concepts and practical step-by-step examples to show you how to apply what you learn. Build your first React app Create components to define parts of your UI Combine components into other components to build more complex UIs Use JSX to specify visuals without writing full-fledged JavaScript Deal with maintaining state Work with React’s way of styling content Make sense of the mysterious component lifecycle Build multi-page apps using routing and views Optimize your React workflow using tools such as Node, Babel, webpack, and others Use Redux to make managing your app data and state easy Contents at a Glance 1 Introducing React 2 Building Your First React App 3 Components in React 4 Styling in React 5 Creating Complex Components 6 Transferring Properties 7 Meet JSX... Again! 8 Dealing with State in React 9 Going from Data to UI in React 10 Events in React 11 The Component Lifecycle 12 Accessing DOM Elements in React 13 Setting Up Your React Dev Environment 14 Working with External Data in React 15 Building an Awesome Todo List App in React 16 Creating a Sliding Menu in React 17 Avoiding Unnecessary Renders in React 18 Creating a Single-Page App in React Using React Router 19 Introduction to Redux 20 Using Redux with React

Mastering JavaScript Design Patterns

Mastering JavaScript Design Patterns
Author :
Publisher : Packt Publishing Ltd
Total Pages : 290
Release :
ISBN-10 : 9781785880353
ISBN-13 : 1785880357
Rating : 4/5 (53 Downloads)

Synopsis Mastering JavaScript Design Patterns by : Simon Timms

Write reliable code to create powerful applications by mastering advanced JavaScript design patterns About This Book Learn how to use tried and true software design methodologies to enhance your JavaScript code Discover robust JavaScript implementations of classic and advanced design patterns Packed with easy-to-follow examples that can be used to create reusable code and extensible designs Who This Book Is For This book is ideal for JavaScript developers who want to gain expertise in object-oriented programming with JavaScript and the new capabilities of ES-2015 to improve their web development skills and build professional-quality web applications. What You Will Learn Harness the power of patterns for tasks ranging from application building to code testing Rethink and revitalize your code with the use of functional patterns Improve the way you organize your code Build large-scale apps seamlessly with the help of reactive patterns Identify the best use cases for microservices Get to grips with creational, behavioral, and structural design patterns Explore advanced design patterns including dependency injection In Detail With the recent release of ES-2015, there are several new object-oriented features and functions introduced in JavaScript. These new features enhance the capabilities of JavaScript to utilize design patterns and software design methodologies to write powerful code. Through this book, you will explore how design patterns can help you improve and organize your JavaScript code. You'll get to grips with creational, structural and behavioral patterns as you discover how to put them to work in different scenarios. Then, you'll get a deeper look at patterns used in functional programming, as well as model view patterns and patterns to build web applications. This updated edition will also delve into reactive design patterns and microservices as they are a growing phenomenon in the world of web development. You will also find patterns to improve the testability of your code using mock objects, mocking frameworks, and monkey patching. We'll also show you some advanced patterns including dependency injection and live post processing. By the end of the book, you'll be saved of a lot of trial and error and developmental headaches, and you will be on the road to becoming a JavaScript expert. Style and approach Packed with several real-world use cases, this book shows you through step-by-step instructions how to implement the advanced object-oriented programming features to build sophisticated web applications that promote scalability and reusability.