Framework-based Software Development in C++


Book Description

Appropriate for a graduate level course in Computer Science or Software Engineering. The first book that presents a software development methodology for building C++ class frameworks using emerging object standards: CORBA, STL, and ODMG-93. It may be viewed as a software developers handbook, one that explains how to use Object-Oriented Design the way in which it was originally intended.




F# for C# Developers


Book Description

Extend your C# skills to F#—and create data-rich computational and parallel software components faster and more efficiently. Focusing on F# 3.0 and Microsoft Visual Studio 2012, you’ll learn how to exploit F# features to solve both computationally-complex problems as well as everyday programming tasks. Topics include: C# and F# data structures; F# for functional, object-oriented, and imperative programming; design patterns; type providers; and portable support for Windows 8. You’ll examine real-world applications, including Windows 8-style HTML5 and JavaScript apps, along with cloud and service apps. You’ll write your own type provider. And you’ll see how to expand F# computation power to high-performance GPU computing.




Category Theory for Programmers (New Edition, Hardcover)


Book Description

Category Theory is one of the most abstract branches of mathematics. It is usually taught to graduate students after they have mastered several other branches of mathematics, like algebra, topology, and group theory. It might, therefore, come as a shock that the basic concepts of category theory can be explained in relatively simple terms to anybody with some experience in programming.That's because, just like programming, category theory is about structure. Mathematicians discover structure in mathematical theories, programmers discover structure in computer programs. Well-structured programs are easier to understand and maintain and are less likely to contain bugs. Category theory provides the language to talk about structure and learning it will make you a better programmer.





Book Description




C Programming Language


Book Description

C++ was written to help professional C# developers learn modern C++ programming. The aim of this book is to leverage your existing C# knowledge in order to expand your skills. Whether you need to use C++ in an upcoming project, or simply want to learn a new language (or reacquaint yourself with it), this book will help you learn all of the fundamental pieces of C++ so you can begin writing your own C++ programs.This updated and expanded second edition of Book provides a user-friendly introduction to the subject, Taking a clear structural framework, it guides the reader through the subject's core elements. A flowing writing style combines with the use of illustrations and diagrams throughout the text to ensure the reader understands even the most complex of concepts. This succinct and enlightening overview is a required reading for all those interested in the subject .We hope you find this book useful in shaping your future career & Business.




Real-World Functional Programming


Book Description

Functional programming languages like F#, Erlang, and Scala are attractingattention as an efficient way to handle the new requirements for programmingmulti-processor and high-availability applications. Microsoft's new F# is a truefunctional language and C# uses functional language features for LINQ andother recent advances. Real-World Functional Programming is a unique tutorial that explores thefunctional programming model through the F# and C# languages. The clearlypresented ideas and examples teach readers how functional programming differsfrom other approaches. It explains how ideas look in F#-a functionallanguage-as well as how they can be successfully used to solve programmingproblems in C#. Readers build on what they know about .NET and learn wherea functional approach makes the most sense and how to apply it effectively inthose cases. The reader should have a good working knowledge of C#. No prior exposure toF# or functional programming is required. Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book.




User Interface Design for Programmers


Book Description

Most programmers' fear of user interface (UI) programming comes from their fear of doing UI design. They think that UI design is like graphic design—the mysterious process by which creative, latte-drinking, all-black-wearing people produce cool-looking, artistic pieces. Most programmers see themselves as analytic, logical thinkers instead—strong at reasoning, weak on artistic judgment, and incapable of doing UI design. In this brilliantly readable book, author Joel Spolsky proposes simple, logical rules that can be applied without any artistic talent to improve any user interface, from traditional GUI applications to websites to consumer electronics. Spolsky's primary axiom, the importance of bringing the program model in line with the user model, is both rational and simple. In a fun and entertaining way, Spolky makes user interface design easy for programmers to grasp. After reading User Interface Design for Programmers, you'll know how to design interfaces with the user in mind. You'll learn the important principles that underlie all good UI design, and you'll learn how to perform usability testing that works.




F# in Action


Book Description

F# is engineered to make functional programming practical and accessible. This book will get you started writing your first simple, robust, and high performing functional code. F# lets you keep your code simple even in the most complex applications—and it’s the perfect language for taking your first steps in functional programming. This practical, example-driven guide shows you how to build professional applications the F# way. In F# in Action you will learn how to: Write performant and robust systems with succinct F# code Model domains quickly, easily and accurately with F#’s type system Design solutions using functional programming patterns Ingest and process disparate data sources Develop data-driven web applications Unit test F# code Effectively model data using a variety of techniques Use scripts to rapidly explore domains F# in Action is based on author and Microsoft F# MVP Isaac Abraham’s years of experience working with developers as an F# consultant. It upgrades .NET development skills with the core principles of functional programming, and you’ll soon see how F#’s functional-first approach makes it easy to learn this powerful paradigm. Forewords by Phillip Carter and Tomas Petricek. About the technology F# is a uniquely powerful programming language. Its “light touch” approach to functional programming helps you deliver error-free code without a lot of complex math and academic theory. Simply put, F# exists to help you write better software faster, and this book will show you how. About the book F# in Action teaches you to write professional quality applications in F#. For each concept, feature, and technique you’ll find hands-on examples, starting with simple data transformations and progressing all the way to a full-size web app. Throughout the book, you’ll take advantage of battle-tested .NET tools to take on a wide range of tasks—from data analysis to interoperability with C#. What's inside Model domains with F#’s type system Ingest and process disparate data sources Unit test F# code Use scripts to rapidly explore domains About the reader For readers comfortable with any OO or FP language. Prior .NET knowledge not required! About the author Isaac Abraham is an experienced .NET developer, trainer, and Microsoft MVP for his contributions to the .NET community. Technical editor on this book was Michael Ciccotti. Table of Contents 1 Introducing F# 2 Hands on with F# 3 F# Syntax Basics 4 F# Fundamentals 5 Shaping data 6 Functions and modules 7 Working with collections 8 Patterns and unions 9 Building rich domains 10 Working effectively with data 11 F# Interop 12 Asynchronous programming 13 Web programming 14 Testing F# code 15 Pure functional programming 16 Where next?




The Practice of Programming


Book Description

With the same insight and authority that made their book The Unix Programming Environment a classic, Brian Kernighan and Rob Pike have written The Practice of Programming to help make individual programmers more effective and productive. The practice of programming is more than just writing code. Programmers must also assess tradeoffs, choose among design alternatives, debug and test, improve performance, and maintain software written by themselves and others. At the same time, they must be concerned with issues like compatibility, robustness, and reliability, while meeting specifications. The Practice of Programming covers all these topics, and more. This book is full of practical advice and real-world examples in C, C++, Java, and a variety of special-purpose languages. It includes chapters on: debugging: finding bugs quickly and methodically testing: guaranteeing that software works correctly and reliably performance: making programs faster and more compact portability: ensuring that programs run everywhere without change design: balancing goals and constraints to decide which algorithms and data structures are best interfaces: using abstraction and information hiding to control the interactions between components style: writing code that works well and is a pleasure to read notation: choosing languages and tools that let the machine do more of the work Kernighan and Pike have distilled years of experience writing programs, teaching, and working with other programmers to create this book. Anyone who writes software will profit from the principles and guidance in The Practice of Programming.




C# Design and Development


Book Description

John P. Mueller demonstrates how you can fine-tune your skill set to create an elegant design that will scale well and produce reliable, speedy, secure, and efficient code. You?ll explore several applications and design strategies using C# and you?ll learn the best approaches for various system configurations. Mueller shares expert advice on how to create better applications by using fine-tuned design strategies and new methods for writing applications using less code, which improves efficiency. Topics include understanding the application lifecycle, defining a design strategy, designing with speed and security in mind, scripting the IDE, working with controls and components, testing, debugging and quality assurance, serializing XML, working with LINQ, augmenting applications using F#, and much more.