NIE-EPC
NIE-EPC course pages
Annotation
Students will learn how to use modern features of the current C++ language versions for creating software. The main focus will be on effectivity and efficiency, whether it means writing portable and maintainable source code, or creating correct computer programs with low requirements for system memory and CPU runtime.
Characteristics
The NIE-EPC course in intended for students with true interest in programming in current versions of the C++ language. The focus is put on modern form of programming in C++ and the effective use of this programming language, meaning both efficient utilization of computer system resources and effective code writing and its subsequent maintenance. The goal of the course is also understanding of “nature and philosophy” of C++.
Requirements
NIE-EPC follows the BIE-PA1 and BIE-PA2 courses and students are supposed to perfectly master their material. Besides, a selected knowledge from the BIE-SAP and BIE-OSY courses are required as well.
Warning:
It is strongly recommended not to enroll in this course in case of no prior C++ knowledge and experience.
Study materials
The primary study material are the lecture slides. Other suitable sources are, for instance:
- C++ Reference: http://en.cppreference.com/w/cpp[1].
- C++ language Standard: complete but hard-to-read source. If you are in doubts, always look for the answer in the corresponding version of the Standard. Final versions are paid, but the access to the “draft” versions may be obtained for free, for instance, via https://isocpp.org/std/the-standard webpage. Frequently, the actual draft online version http://eel.is/c++draft/ is used as well, which allows to reference individual sections, paragraphs, and even sentences.
- Stack Overflow forum: https://stackoverflow.com/. Likely not needed to be introduced; it represents an invaluable source of information for solution of particular problems.
- CppCon conference lectures: https://www.youtube.com/user/CppCon/videos.
- C++ Core Guidelines: http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines. Timely and lively project with the goal of providing a set of rules and recommendations for effective use of modern C++. The editors Bjarne Stroustrup and Herb Sutter guarantee high quality of information.
- Effective Modern C++: If I should recommend a single book, it would be this one written by Scott Mayers. It describes in detail the most fundamental differences between “old” (98/03) and “modern” (11/14) C++.
- Not to be mistaken for the reference http://www.cplusplus.com/reference/, which includes a relatively large amount of incorrect and misleading information. ↩