Description:An exploration of core programming techniques for engineers. Readers learn to solve real engineering problems. Hardcore Programming for Engineers is about solving mechanical engineering problems using a computer. These problems require good programming skills and some knowledge of computer graphics, geometry, regular expressions, and other technologies that are covered in this book but which are typically hard to find in one text alone. The book covers all the essential ingredients that make up engineering applications with a focus on code quality and automated unit testing to ensure that code does what it is supposed to do, without errors. The "hardcore" approach means that readers do everything themselves and write a lot of code. The approach takes much longer than using existing libraries but it's key to acquiring a deeper understanding of how things work. The reader codes everything from a library that deals with 2D geometry to a finished engineering application that reads data from a text file, parses it, and produces a vector image as a result. In the process, readers gain a full understanding of how many disciplines come together to solve a problem, how to build small libraries to solve individuals problems, and how to make it all work together seamlessly.