Category: Programming

Think Like a Programmer: An Introduction to Creative Problem Solving

By V. Anton Spraul

Rewire your brain

Examples during this ebook are written in C++, yet will increase your skill to imagine like a programmer in any language.

The genuine problem of programming isn't really studying a language's syntax—it's studying to creatively clear up difficulties so that you can construct whatever nice. during this one of a kind textual content, writer V. Anton Spraul breaks down the ways in which programmers clear up difficulties and teaches you what different introductory books usually forget about: how you can Think Like a Programmer. every one bankruptcy tackles a unmarried programming inspiration, like periods, tips, and recursion, and open-ended workouts all through problem you to use your wisdom. you are going to additionally find out how to:

  • Split difficulties into discrete parts to cause them to more straightforward to solve
  • Make the main of code reuse with services, periods, and libraries
  • Pick definitely the right info constitution for a selected job
  • Master extra complicated programming instruments like recursion and dynamic memory
  • Organize your techniques and strengthen innovations to take on certain types of problems

Although the book's examples are written in C++, the artistic problem-solving options they illustrate transcend any specific language; actually, they typically succeed in outdoor the area of laptop technology. because the so much skillful programmers be aware of, writing nice code is an inventive art—and step one in developing your masterpiece is studying to Think Like a Programmer.

Show description

Smashing CoffeeScript

Brew the correct code with CoffeeScript

If you are acquainted with JavaScript and the often-frustrating technique of growing advanced functions, a pleasant cup of CoffeeScript may help. CoffeeScript is a programming language that compiles into JavaScript and simplifies the total improvement method. you can now faucet the whole strength of CoffeeScript with Smashing CoffeeScript. This full-color, useful publication explains CoffeeScript language, syntax, and techniques, and should quickly have you ever generating concise and caliber code. eventually, you will create RIAs and cellular apps quicker, with much less hassle.

  • Gets builders up and operating on CoffeeScript, a programming language that compiles into JavaScript and simplifies the method of creating software
  • Helps you produce higher JavaScript and extra quickly
  • Introduces the language, syntax, and methods of CoffeeScript
  • Covers the advance of either cellular and wealthy web apps
  • Explores the HTML5 function set, real-time conversation, and utilizing CoffeeScript inside node.js projects

Developers, mixture a few larger JavaScript with CoffeeScript and Smashing CoffeeScript.

Show description

OpenGL SuperBible: Comprehensive Tutorial and Reference (6th Edition)

By Graham Sellers, Richard S Wright Jr., Nicholas Haemel

OpenGL® SuperBible, 6th Edition, is the definitive programmer’s consultant, instructional, and reference for the world’s major 3D API for real-time special effects, OpenGL 4.3. the easiest all-around creation to OpenGL for builders in any respect degrees of expertise, it truly explains either the most recent API and vital similar recommendations. You’ll locate updated, hands-on information for all points of recent OpenGL improvement on either laptop and cellular structures, together with changes, texture mapping, shaders, buffers, geometry administration, and lots more and plenty more.

 

Extensively revised, this variation offers many new OpenGL 4.3 beneficial properties, together with compute shaders, texture perspectives, oblique attracts, and more advantageous API debugging. it's been reorganized to concentration extra tightly at the API, to hide the complete pipeline prior, and that will help you completely comprehend the interactions among OpenGL and pictures hardware.

 

Coverage includes

  • A functional advent to the necessities of realtime 3D graphics
  • Core OpenGL 4.3 strategies for rendering, differences, and texturing
  • Foundational math for growing fascinating 3D pics with OpenGL
  • Writing your individual shaders, with examples to get you started
  • Cross-platform OpenGL, together with crucial platform-specific API initialization fabric for Linux, OS X, and Windows
  • Vertex processing, drawing instructions, primitive processing, fragments, and framebuffers
  • Using compute shaders to harness today’s photographs playing cards for greater than graphics
  • Monitoring and controlling the OpenGL photos pipeline
  • Advanced rendering: mild simulation, inventive and non-photo-realistic rendering, and deferred shading
  • Modern OpenGL debugging and function optimization

Bonus fabric and pattern code can be found from the spouse website, openglsuperbible.com.

Show description

Modern C++ Programming with Test-Driven Development: Code Better, Sleep Better

By Jeff Langr

If you software in C++ you have been missed. Test-driven improvement (TDD) is a latest software program improvement perform which can dramatically lessen the variety of defects in platforms, produce extra maintainable code, and provides you the boldness to alter your software program to fulfill altering wishes. yet C++ programmers were overlooked via these selling TDD--until now. during this e-book, Jeff Langr promises hands-on classes within the demanding situations and rewards of doing TDD in C++.

Modern C++ Programming With Test-Driven Development, the one finished remedy on TDD in C++ offers you every thing you want to learn about TDD, and the demanding situations and advantages of enforcing it on your C++ structures. Its many specified code examples take you step by step from TDD fundamentals to complicated suggestions. As a veteran C++ programmer, you are already writing high quality code, and also you work flat out to take care of code caliber. It does not need to be that hard.

In this booklet, you are going to learn:

easy methods to use TDD to enhance legacy C++ systems

how one can establish and take care of complicated procedure dependencies

how one can do dependency injection, that is rather tough in C++

tips on how to use trying out instruments for C++ that reduction TDD

new C++11 positive factors that facilitate TDD

As you develop in TDD mastery, you will discover find out how to preserve a tremendous C++ approach from changing into a layout mess over the years, in addition to specific C++ hassle spots to prevent. you will discover out tips on how to hinder your checks from being a upkeep burden and the way to imagine in TDD with no giving up your hard-won C++ talents. eventually, you will see tips on how to develop and maintain TDD on your team.

Whether you are a whole unit-testing amateur or an skilled tester, this e-book will lead you to mastery of test-driven improvement in C++.

What You Need

A C++ compiler working lower than home windows or Linux, ideally one who helps C++11. Examples provided within the e-book have been equipped below gcc 4.7.2.

Google Mock 1.6 (downloadable at no cost; it comprises Google try out in addition) or an alternative C++ unit checking out software. such a lot examples within the booklet are written for Google Mock, however it isn't really tough to translate them for your software of choice.

an outstanding programmer's editor or IDE.

cmake, ideally. after all, you should use your personal hottest make too. CMakeLists.txt documents are supplied for every undertaking. Examples supplied have been outfitted utilizing cmake model 2.8.9.

quite a few freely-available third-party libraries are used because the foundation for examples within the publication. those include:- cURL- JsonCpp- enhance (filesystem, date_time/gregorian, set of rules, assign)Several examples use the develop headers/libraries. just one instance makes use of cURL and JsonCpp.

Show description

An Introduction to Python and Computer Programming (Lecture Notes in Electrical Engineering)

This publication introduces Python programming language and primary strategies in algorithms and computing. Its target market comprises scholars and engineers with very little history in programming, who have to grasp a realistic programming language and research the elemental pondering in computing device science/programming. the most contents come from lecture notes for engineering scholars from all disciplines, and has acquired excessive rankings. Its fabrics and ordering were adjusted many times in response to lecture room reception. in comparison to substitute textbooks available in the market, this booklet introduces the underlying Python implementation of quantity, string, record, tuple, dict, functionality, type, example and module gadgets in a constant and easy-to-understand manner, making task, functionality definition, functionality name, mutability and binding environments comprehensible inside-out. through giving the abstraction of implementation mechanisms, this e-book builds a fantastic knowing of the Python programming language.

Show description

Programming in Objective-C (6th Edition) (Developer's Library)

By Stephen G. Kochan

Updated for OS X 10.9 Mavericks, iOS 7, and Xcode 5

Programming in Objective-C is a concise, conscientiously written educational at the fundamentals of Objective-C and object-oriented programming for Apple's iOS and OS X systems.

The booklet makes no assumptions approximately past event with object-oriented programming languages or with the interval (which Objective-C is predicated upon). due to this, either newcomers and skilled programmers alike can use this ebook to quick and successfully study the basics of Objective-C. Readers may also examine the techniques of object-oriented programming with no need to first research the entire intricacies of the underlying interval.

This new angle to studying, mixed with many small software examples and workouts on the finish of every bankruptcy, makes Programming in Objective-C ideal for both lecture room use or self-study.

This version has been absolutely up to date to include new Objective-C positive aspects and applied sciences brought with Xcode five, iOS 7, and Mac OS X Mavericks.

“The top e-book on any programming language that I’ve ever learn. so that you can examine Objective-C, purchase it.”—Calvin Wolcott

“An first-class source for a brand new programmer who desires to study Objective-C as their first programming language—a woefully underserved market.”—Pat Hughes

Show description

Sams Teach Yourself C++ in One Hour a Day (7th Edition)

By Siddhartha Rao

Learn C++ in precisely One Hour a Day

Completely up to date for the C++11 commonplace, Sams educate your self C++ in a single Hour an afternoon presents the language from a realistic standpoint, aiding you easy methods to use C++11 to create quicker, less complicated, and extra effective C++ purposes.

  • Master the basics of C++ and object-oriented programming
  • Understand how C++11 positive factors assist you write compact and effective code utilizing suggestions comparable to lambda expressions, movement constructors, and project operators
  • Learn the traditional Template Library, together with bins and algorithms utilized in so much real-world C++ functions
  • Test your wisdom and services utilizing workouts on the finish of each lesson

Learn by yourself time, at your individual velocity:

  • No earlier programming adventure required
  • Learn C++11, object-oriented programming, and research
  • Write quick and strong C++ courses, assemble the resource code with a gcc compiler, and create executable records
  • Use the traditional Template Library’s (STL) algorithms and bins to put in writing feature-rich but good C++ purposes
  • Develop subtle programming recommendations utilizing lambda expressions, shrewdpermanent tips, and flow constructors
  • Learn to extend your program’s strength with inheritance and polymorphism
  • Master the positive aspects of C++ through studying from programming specialists
  • Learn C++11 beneficial properties that let you application compact and high-performance C++ applications

TABLE OF CONTENTS

PART I: THE BASICS

LESSON 1: Getting begun with C++11

LESSON 2: The Anatomy of a C++ Program

LESSON three: utilizing Variables, stating Constants

LESSON four: coping with Arrays and Strings

LESSON five: operating with Expressions, Statements, and Operators

LESSON 6: Controlling software Flow

LESSON 7: Organizing Code with services

LESSON eight: guidelines and References Explained

PART II: basics OF OBJECT-ORIENTED C++ PROGRAMMING

LESSON nine: periods and Objects

LESSON 10: enforcing Inheritance

LESSON eleven: Polymorphism

LESSON 12: Operator forms and Operator Overloading

LESSON thirteen: Casting Operators

LESSON 14: An creation to Macros and Templates

PART III: studying the traditional TEMPLATE LIBRARY (STL)

LESSON 15: An creation to the normal Template Library

LESSON sixteen: The STL String Class
LESSON 17: STL Dynamic Array Classes
LESSON 18: STL record and forward_list
LESSON 19: STL Set Classes
LESSON 20: STL Map Classes

PART IV: extra STL

LESSON 21: knowing functionality Objects

LESSON 22: C++11 Lambda Expressions
LESSON 23: STL Algorithms
LESSON 24: Adaptive bins: Stack and Queue
LESSON 25: operating with Bit Flags utilizing STL

PART V: complicated C++ CONCEPTS

LESSON 26: realizing shrewdpermanent Pointers

LESSON 27: utilizing Streams for enter and Output
LESSON 28: Exception Handling
LESSON 29: Going Forward

APPENDIXES

A: operating with Numbers: Binary and Hexadecimal

B: C++ Keywords

C: Operator Precedence

D: Answers

E: ASCII Codes

Show description

Practical Maintenance Plans in SQL Server: Automation for the DBA

By Bradley Beard

This publication is an entire advisor to constructing and preserving upkeep plans for SQL Server Database directors. upkeep plans too frequently encompass a backup job and that’s it, yet there's a lot more which could and has to be performed to make sure the integrity of your most vital corporation source – the knowledge you're tasked to regulate and defend. This ebook walks even the most recent of clients via making a strong, computerized upkeep plan.

Automate your activity utilizing SQL Server Agent to leverage the ability of upkeep Plans to bring genuine, proactive recommendations to universal matters. agenda universal initiatives reminiscent of backups and index rebuilds to run instantly, and get early-warning notifications of drawing close difficulties in relation to source utilization and question functionality. by the point your boss understands to name you a few challenge, you’ll have already referred to as him to explain your answer.

The huge majority of books by no means relatively hide the subject of inheriting a database server with a number of reside databases; the typical thread is that the databases could be created and maintained by way of the reader ceaselessly and ever. within the genuine global, that situation hardly ever occurs. Practical upkeep Plans in SQL Server covers that state of affairs and gives you with the data and instruments had to get cozy writing your personal upkeep plans for any SQL Server database, no matter if created through you or inherited.

  • Shows the various projects that may be run in a upkeep plan.
  • Explains how and why these initiatives should be implemented.
  • Provides a roadmap to making your individual customized upkeep plan.

What you'll Learn
  • Implement a totally automatic backup upkeep plan
  • Be alerted to functionality difficulties and outages prior to your boss
  • Learn the different sorts of database upkeep tasks
  • Plan the workflow of initiatives inside a upkeep plan
  • Automate your paintings by way of imposing customized upkeep plans

Who This e-book Is For

Practical upkeep Plans in SQL Server is for any point of database administrator, yet particularly it’s for these directors with a true have to manage a robust upkeep plan quick. New and professional directors will get pleasure from the e-book for its powerful studying development of visible aids together with reasons and eventualities. Practical upkeep Plans in SQL Server is the fitting “new rent” reward for brand new database directors in any organization.

Show description

Sinatra: Up and Running

By Alan Harris, Konstantin Haase

Take benefit of Sinatra, the Ruby-based net software library and domain-specific language utilized by GitHub, LinkedIn, Engine backyard, and different well-known companies. With this concise publication, you are going to speedy achieve operating wisdom of Sinatra and its minimalist method of construction either standalone and modular internet applications.

Sinatra serves as a light-weight wrapper round Rack middleware, with syntax that maps heavily to capabilities uncovered via HTTP verbs, which makes it perfect for net providers and APIs. when you've got adventure development purposes with Ruby, you will speedy examine language basics and notice under-the-hood thoughts, with the aid of a number of functional examples. Then you will get hands-on event with Sinatra through construction your individual weblog engine.

  • Learn Sinatra's middle suggestions, and start by means of construction an easy application
  • Create perspectives, deal with classes, and paintings with Sinatra path definitions
  • Become accustomed to the language's internals, and take a more in-depth examine Rack
  • Use varied subclass equipment for development versatile and powerful architectures
  • Put Sinatra to paintings: construct a web publication that takes good thing about provider hooks supplied via the GitHub API

Show description

Boost C++ Application Development Cookbook

By Antony Polukhin

With increase libraries you could relatively unharness the ability of C++. discover ways to construct functions speedier and higher via a cookbook process that makes use of lots of recipes to make all of it really easy to assimilate and apply.

Overview

  • Explores tips to write a software as soon as after which apply it to Linux, home windows, MacOS, and Android working systems
  • Includes daily use recipes for multithreading, networking, metaprogramming, and conventional programming from a lift library developer
  • Take good thing about the genuine strength of advance and C++, to get an exceptional grounding in utilizing it in any project

In Detail

Boost libraries are built through pros, proven on a number of structures and processor architectures, and comprise trustworthy suggestions for a variety of projects. This Cookbook takes you on a trip of simplifying the method of software improvement and publications you thru writing ideal purposes fast.

"Boost C++ program improvement Cookbook" provide you with a few transparent step by step recipes to help you make the most of the true energy of develop and C++, whereas providing you with an exceptional grounding in utilizing it in any project.

"Boost C++ software improvement Cookbook" seems on the enhance libraries, and breaks down the secret and confusion approximately which library to take advantage of during which scenario. it's going to take you thru a couple of transparent, sensible recipes to help you to use the available solutions.

Boost C++ software improvement Cookbook begins with educating the fundamentals of increase libraries which are now often a part of C++11 and go away no likelihood for reminiscence leaks. dealing with assets becomes a section of cake. We’ll see what sort of paintings may be performed at bring together time and what improve bins can do. Do you're thinking that multithreading is a burden? now not with develop. imagine writing moveable and quickly servers is most unlikely? You’ll be stunned! Compilers and working structures fluctuate an excessive amount of? no longer with improve. From manipulating photographs to graphs, directories, timers, documents, strings – every person will locate an attractive topic.

You will study every thing for the advance of top of the range quick and transportable purposes. Write a application as soon as after which you should use it on Linux, home windows, MacOS, Android working systems.

What you are going to study from this book

  • Get acquainted with new info kinds for daily use
  • Use tips to deal with resources
  • Get to grips with compile-time computations and assertions
  • Use improve libraries for multithreading
  • Learn approximately Parallel execution of other task
  • Perform universal string-related initiatives utilizing improve libraries
  • Split all of the approaches, computations, and interactions to initiatives and procedure them independently
  • Learn the fundamentals of operating with graphs
  • Explore diversified helper macros used to discover compiler, platform and improve features
  • Use chosen C++11 good points in C++03

Approach

This e-book follows a cookbook strategy, with distinctive and sensible recipes that use improve libraries.

Who this ebook is written for

This e-book is superb for builders new to spice up, and who're seeking to increase their wisdom of improve and notice a few undocumented information or methods. It’s assumed that you'll have a few adventure in C++ already, besides being acquainted with the fundamentals of STL. a number of chapters would require a few earlier wisdom of multithreading and networking. you're anticipated to have no less than one solid C++ compiler and compiled model of increase (1.53.0 or later is recommended), as a way to be used through the routines inside of this book.

Show description