Undergraduate Topics in Computer Science (UTiCS) delivers high-quality
instructional content for undergraduates studying in all areas of computing and
information science. From core foundational and theoretical material to final-year
topics and applications, UTiCS books take a fresh, concise, and modern approach
and are ideal for self-study or for a one- or two-semester course. The texts are all
authored by established experts in their fields, reviewed by an international advisory
board, and contain numerous examples and problems. Many include fully worked
In a surprisingly short period of time, Visual Studio Code has become very popular among web
developers. Part of that is because it’s fast, lightweight, and is available on the three main platforms
(Windows, Mac, Linux). But it also boasts several features that set it apart from the competition. This
includes support for IntelliSense, refactoring capabilities, and an extensive ecosystem of extensions.
But even beyond the features that help developers craft code, there is also debugging support. It’s possible
to open a .NET Core project from within Visual Studio Code and get end-to-end execution and
debugging functionality.
The goal of this book is to help developers become not just familiar, but productive in Visual Studio
Code. It starts with an introduction to the editing features of the workspace and continues with the
more advanced functionality (including refactoring and key bindings). The book finishes with an
extensive look at the extensibility of Visual Studio Code, so that you can add whatever functionality
you need to make you days more productive.
This book covers the very essentials of the CDI API and aims at
explaining the various constructs in a way that is easy to understand and
relate to. The ultimate goal is to help you, the everyday Java developer,
write better code. Throughout the book, you will be working on a simple
restaurant application, seeing when and how the various CDI API
constructs can be used.
Microsoft SQL Server has become an eminent relational database management system (RDBMS) in the
marketplace. The SQL Server engine has come a long way from being just another RDBMS; it’s an end-toend
business intelligence platform with built-in options for reporting; extract, transform, load (ETL); data
mining; and high availability/disaster recovery (HA/DR). Its rich feature set provides a comprehensive
solution for deploying, managing, monitoring, maintaining, auditing, reporting, and backing up and
restoring databases; building data warehouses; and more! You will learn all about this as you journey
through this book toward achieving healthy SQL.
Whether it’s small, medium, or large enterprise infrastructures, it is common for organizations to
have deployed multiple SQL Server instances in their environments, and as companies deploy various
applications, many have had to deal with what’s known as SQL sprawl. This is the 1:1 ratio explosion
of deploying every new application to its own SQL Server. The implementation of multiple SQL Server
instances has made it difficult for database administrators to manage and maintain them. It is not
uncommon to eventually embark on a SQL Server database consolidation project with the assistance of a
qualified SQL Server database professional.
Another common scenario is that third-party vendors will deploy their applications on back-end SQL
Server instances and leave their clientele to their own devices. They will install SQL Server even though it’s
doubtful that they know what the proper installation and configuration settings are. The goal of a vendor is
to install and set up its application without regard for the ongoing health or performance of SQL Server. This
is known as “Set it and forget it.”
In a situation of “Set it and forget it,” as the application usage increases, as new records are continuously
inserted, updated, and deleted, and as users place demand on the application, response times will
eventually slow down, as will the overall performance of the SQL Server database back end. Indexes become
fragmented, excessive page splitting occurs, and backups are not properly configured.
All these issues that occur on the back-end SQL Server instance frustrate users, and organizations don’t
usually have the database administrator (DBA) skill set in-house to fix these performance problems. Often
the application vendor will not even have the right know-how or database expertise required to resolve these
issues. In these situations, there are a myriad of questions that companies and database professionals need
to ask themselves. For example, can SQL Server perform better? Can the application scale if it is necessary?
Do we have a recent backup? Is there a disaster recovery plan? Can the database be restored?