Details

C++ Software Interoperability for Windows Programmers


C++ Software Interoperability for Windows Programmers

Connecting to C#, R, and Python Clients

von: Adam Gladstone

62,99 €

Verlag: Apress
Format: PDF
Veröffentl.: 28.01.2022
ISBN/EAN: 9781484279663
Sprache: englisch
Anzahl Seiten: 225

Dieses eBook enthält ein Wasserzeichen.

Beschreibungen

<div>Get up-to-speed quickly and connect modern code written in C#, R, and Python to an existing codebase written in C++. This book for practitioners is about software interoperability in a Windows environment from C++ to languages such as C#, R, and Python. Using a series of example projects, the book demonstrates how to connect a simple C++ codebase packaged as a static or dynamic library to modern clients written in C#, R, and Python. The book shows you how to develop the in-between components that allow disparate languages to communicate.&nbsp;</div><div><br></div><div><br></div>This book addresses a fundamental question in software design: given an existing C++ codebase, how does one go about connecting that codebase to clients written in C#, R, and Python? How is the C++ functionality exposed to these clients? One answer may be to rewrite the existing codebase in the target language. This is rarely, if ever, feasible and this book’s goal is to save you the pain and the high costof throwing out valuable existing code by showing you how to make that older code function alongside and with the more modern languages that are commonly in use today. The knowledge you will gain from reading this book will help you broaden your architectural choices and take advantage of the growing amount of talent around newer languages.<div><br></div><div><br></div><div><b>What You Will Learn</b></div><div><ul><li>Build components that connect C++ to other languages</li><li>Translate between the C++ type system and the type systems of C#, R, and Python</li><li>Write a managed assembly targeting the .NET framework</li><li>Create C++ packages for use in R/Studio</li><li>Develop Python modules based on high-performance C++ code</li><li>Overcome the difficulties and pitfalls involved in cross-language development</li></ul></div><div><br></div><div><b>Who This Book Is For</b></div><div><br></div>Software developers who are looking for ways to extend existing systems written in C++ usingmodern languages. Readers should have some programming experience, particularly in C++. Readers should also be familiar with common development tools such as Visual Studio, R/Studio, Visual Studio Code, and CodeBlocks.&nbsp;<br><div><br></div>
<div><b>Part I: Foundations.-</b><b> </b>Chapter 1: Preliminaries (ch01.docx).- Chapter 2: C++ Components and C++ Clients (ch02.docx).- <b>Part II: C++/CLI and .NET.-</b><b> </b>Chapter 3: Building a C++/CLI Wrapper (ch03.docx). Chapter 4: C# Clients: Consuming the Managed Wrapper (ch04.docx).- <b>Part III: R and Rcpp.-</b><b> </b>Chapter 5 Building an R Package (ch05.docx).- Chapter 6 Exposing Functions using Rcpp (ch06.docx).-<b> </b><b>Part IV Python.-</b> Chapter 7 Building a Python Extension Module (ch07.docx).- Chapter 8 Module Development with Boost.Python and PyBind (ch08.docx).- Chapter 9 Conclusion (ch09.docx).- Appendix 1 Boost Libraries (app01.docx).- Appendix 2 CMake (app02.docx).<br></div><div><br></div>
<b>Adam Gladstone</b>&nbsp;is a software developer with more than 20 years of experience in investment banking, building software mostly in C++ and C#. For the last few years, he has been developing data science and machine learning skills, particularly in Python and R after completing a degree in Math & Statistics. He currently works at Virtu Financial Inc. in Madrid as an Analyst Programmer. In his free time, he develops tools for natural language processing.<div><br></div><div><p><br></p><div> <p>&nbsp;</p><div><br></div></div></div>
Get up-to-speed quickly and connect modern code written in C#, R, and Python to an existing codebase written in C++. This book for practitioners is about software interoperability in a Windows environment from C++ to languages such as C#, R, and Python. Using a series of example projects, the book demonstrates how to connect a simple C++ codebase packaged as a static or dynamic library to modern clients written in C#, R, and Python. The book shows you how to develop the in-between components that allow disparate languages to communicate.&nbsp;<div><br></div><div><br></div>This book addresses a fundamental question in software design: given an existing C++ codebase, how does one go about connecting that codebase to clients written in C#, R, and Python? How is the C++ functionality exposed to these clients? One answer may be to rewrite the existing codebase in the target language. This is rarely, if ever, feasible and this book’s goal is to save you the pain and the high cost of throwingout valuable existing code by showing you how to make that older code function alongside and with the more modern languages that are commonly in use today. The knowledge you will gain from reading this book will help you broaden your architectural choices and take advantage of the growing amount of talent around newer languages.<div><br></div><div>What You Will Learn<br></div><div><ul><li>Build components that connect C++ to other languages</li><li>Translate between the C++ type system and the type systems of C#, R, and Python</li><li>Write a managed assembly targeting the .NET framework</li><li>Create C++ packages for use in R/Studio</li><li>Develop Python modules based on high-performance C++ code</li><li>Overcome the difficulties and pitfalls involved in cross-language development</li></ul></div><div><br></div><div><br></div>
Shows you how existing software can be extended using modern languages and their frameworks Covers interoperability with C#, R, and Python—three fast-growing and widely adopted languages Teaches you how to build Windows components that use C++ libraries

Diese Produkte könnten Sie auch interessieren:

Tuning the Snowflake Data Cloud
Tuning the Snowflake Data Cloud
von: Andrew Carruthers
Preis: 56,99 €
MLOps with Ray
MLOps with Ray
von: Hien Luu, Max Pumperla, Zhe Zhang
Preis: 62,99 €