• Complain

it-ebooks - C++ Best Practices

Here you can read online it-ebooks - C++ Best Practices full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2017, publisher: iBooker it-ebooks, genre: Computer. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

it-ebooks C++ Best Practices
  • Book:
    C++ Best Practices
  • Author:
  • Publisher:
    iBooker it-ebooks
  • Genre:
  • Year:
    2017
  • Rating:
    5 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

C++ Best Practices: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "C++ Best Practices" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

it-ebooks: author's other books


Who wrote C++ Best Practices? Find out the surname, the name of the author of the book and a list of all author's works by series.

C++ Best Practices — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "C++ Best Practices" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Preface
Preface

C++ Best Practices: A Forkable Coding Standards Document

This document is meant to be a collaborative discussion of the best practices in C++. It complements books such as Effective C++ (Meyers) and C++ Coding Standards (Alexandrescu, Sutter). We fill in some of the lower level details that they don't discuss and provide specific stylistic recommendations while also discussing how to ensure overall code quality.

In all cases brevity and succinctness is preferred. Examples are preferred for making the case for why one option is preferred over another. If necessary, words will be used.

C Best Practices - image 1
C++ Best Practices by Jason Turner is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Disclaimer

This document is based on my personal experiences. You are not supposed to agree with it 100%. It exists as a book on GitHub so that you can fork it for your own uses or submit back proposed changes for everyone to share.

This book has inspired an O'Reilly video: Learning C++ Best Practices

Use the Tools Available
Use The Tools Available

An automated framework for executing these tools should be established very early in the development process. It should not take more than 2-3 commands to checkout the source code, build, and execute the tests. Once the tests are done executing, you should have an almost complete picture of the state and quality of the code.

Source Control

Source control is an absolute necessity for any software development project. If you are not using one yet, start using one.

  • GitHub - allows for unlimited public repositories, must pay for a private repository.
  • Bitbucket - allows for unlimited private repositories with up to 5 collaborators, for free.
  • SourceForge - open source hosting only.
  • GitLab - allows for unlimited public and private repositories, unlimited CI Runners included, for free.
  • Visual Studio Online (http://www.visualstudio.com/what-is-visual-studio-online-vs) - allows for unlimited public repositories, must pay for private repository. Repositories can be git or TFVC. Additionally: Issue tracking, project planning (multiple Agile templates, such as SCRUM), integrated hosted builds, integration of all this into Microsoft Visual Studio. Windows only.
Build Tool

Use an industry standard widely accepted build tool. This prevents you from reinventing the wheel whenever you discover / link to a new library / package your product / etc. Examples include:

  • CMake
    • Consider: https://github.com/sakra/cotire/ for build performance
    • Consider: https://github.com/toeb/cmakepp for enhanced usability
    • Utilize: https://cmake.org/cmake/help/v3.6/command/target_compile_features.html for C++ standard flags
  • Conan - a crossplatform dependency manager for C++
  • C++ Archive Network (CPPAN) - a crossplatform dependency manager for C++
  • Waf
  • FASTBuild
  • Ninja - can greatly improve the incremental build time of your larger projects. Can be used as a target for CMake.
  • Bazel - Note: MacOS and Linux only.
  • gyp - Google's build tool for chromium.
  • maiken - Crossplatform build tool with Maven-esque configuration style.
  • Qt Build Suite - Crossplatform build tool From Qt.
  • meson - Open source build system meant to be both extremely fast, and, even more importantly, as user friendly as possible.
  • premake

Remember, it's not just a build tool, it's also a programming language. Try to maintain good clean build scripts and follow the recommended practices for the tool you are using.

Continuous Integration

Once you have picked your build tool, set up a continuous integration environment.

Continuous Integration (CI) tools automatically build the source code as changes are pushed to the repository. These can be hosted privately or with a CI host.

  • Travis CI
    • works well with C++
    • designed for use with GitHub
    • free for public repositories on GitHub
  • AppVeyor
    • supports Windows, MSVC and MinGW
    • free for public repositories on GitHub
  • Hudson CI / Jenkins CI
    • Java Application Server is required
    • supports Windows, OS X, and Linux
    • extendable with a lot of plugins
  • TeamCity
    • has a free option for open source projects
  • Decent CI
    • simple ad-hoc continuous integration that posts results to GitHub
    • supports Windows, OS X, and Linux
    • used by ChaiScript
  • Visual Studio Online (http://www.visualstudio.com/what-is-visual-studio-online-vs)
    • Tightly integrated with the source repositories from Visual Studio Online
    • Uses MSBuild (Visual Studio's build engine), which is available on Windows, OS X and Linux
Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «C++ Best Practices»

Look at similar books to C++ Best Practices. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «C++ Best Practices»

Discussion, reviews of the book C++ Best Practices and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.