Introduction to Windows Programming and MFC Training in Arvada
We offer private customized training for groups of 3 or more attendees.
|
||
Course Description |
||
This course teaches advanced programming techniques using the Win32 API and MFC. It is intended for experienced MFC developers who wish to better understand the fundamental architecture of Windows NT/2000 and Windows 95/98 and to utilize advanced programming techniques to create industrial strength applications.
Module 1 begins with an overview of the Win32 architecture and the Win32 API. There is a discussion of the fundamentals of SDK Windows programming and MFC programming without the wizards. It then covers advanced MFC and Win32 programming topics including multi-threaded programming, DLLs, and interprocess communication. The fundamentals of COM are introduced, including the use of Visual C++ compiler support to create COM client programs.
Module 2 covers database programming topics for C++ programmers. ODBC is covered, including a sample program showing ODBC programming at the API level. The MFC CDatabase, CRecordset and CRecordView classes are discussed in detail. There is coverage of parameterized queries and joins. Microsoft's Universal Data Access architecture is introduced, including a discussion of OLE DB. ActiveX Data Objects (ADO) programming in C++ is covered. An appendix covers programming with DAO.
Module 3 is devoted to various advanced aspects of MFC programming, pertaining primarily to the user interface. There is extended treatment of the Win32 common controls, including the tree view control and image lists. Advanced features of document/view are covered, including multiple document types, multiple views, and multiple panes. Advanced menu techniques are covered. Dynamic toolbars and dialog bars are discussed. Advanced features of GDI are covered, including bitmaps, metafiles and printing. Use of the Windows system registry is covered.
Extensive programming examples and exercises are provided using Visual C++ 6.0. Besides doing standalone exercises, during the course the student will develop several cumulative Windows applications. Self-extracting files are provided containing all the examples and laboratory exercises in the course.
Course Length: 5 Days
Course Tuition: $2090 (US) |
Prerequisites |
|
A basic knowledge of Windows programming using MFC and the Visual C++ development environment |
Course Outline |
Win32 Architecture and Programming
Win32 Programming
Dynamic Link Libraries
Introduction to Threads Using MFC
Processes in Win32
Interprocess Data Communication
COM Fundamentals
Appendix A. Visual C++ COM Support
Form Views and Data Entry
Introduction to ODBC
MFC Database Classes
More About ODBC
ActiveX Data Objects Appendix A. Data Access Objects
Windows Common Controls
Windows System Registry
Advanced Document/View Architecture
Advanced Menus and Toolbars
Coordinate Transformations |
Course Directory [training on all levels]
- .NET Classes
- Agile/Scrum Classes
- Ajax Classes
- Android and iPhone Programming Classes
- Blaze Advisor Classes
- C Programming Classes
- C# Programming Classes
- C++ Programming Classes
- Cisco Classes
- Cloud Classes
- CompTIA Classes
- Crystal Reports Classes
- Design Patterns Classes
- DevOps Classes
- Foundations of Web Design & Web Authoring Classes
- Git, Jira, Wicket, Gradle, Tableau Classes
- IBM Classes
- Java Programming Classes
- JBoss Administration Classes
- JUnit, TDD, CPTC, Web Penetration Classes
- Linux Unix Classes
- Machine Learning Classes
- Microsoft Classes
- Microsoft Development Classes
- Microsoft SQL Server Classes
- Microsoft Team Foundation Server Classes
- Microsoft Windows Server Classes
- Oracle, MySQL, Cassandra, Hadoop Database Classes
- Perl Programming Classes
- Python Programming Classes
- Ruby Programming Classes
- Security Classes
- SharePoint Classes
- SOA Classes
- Tcl, Awk, Bash, Shell Classes
- UML Classes
- VMWare Classes
- Web Development Classes
- Web Services Classes
- Weblogic Administration Classes
- XML Classes
C++ Programming Uses & Stats
Difficulty
|
Popularity
|
Year Created 1983 |
Pros
Popular:
C/C++ is everywhere. In particular, they power more technologies than we give it credit for.
Flexible:
C++ is a multi-paradigm coding language. This means that it supports other styles such as procedural programming as well as Object-Oriented Programming.
Fast:
Because it is compiled, C++ gains a lot of speed. and is the language of choice for some applications as an example in the finance industry, where small differences in speed in high-frequency trading platforms can make the difference between a profit or a loss.
Job Opportunities:
C++ developers are high in demand. There are over 14,000 C++ open positions on linkedIn alone.
Similarity to Other Languages:
Many other languages like C, C#, and Java have very similar syntax to C++, making them easy to learn for those that already know C++.
|
Cons
Difficult to Learn:
C++ syntax is complex and the standard library is small, making C++ difficult to learn for someone with little programming experience. Although, it's believed to be more difficult to learn C++ than other languages, more accurately it probably takes a bigger investment of your time and effort to learn than some other languages.
Strict Syntax:
There is not much flexibility to the syntax, so it can be difficult to write code in a readable way.
Little Memory Management:
C++ does very little memory management, forcing the programmer to do most of it themselves.
Debugging Issues:
C++ can be difficult and complex to debug when it is used for web applications.
|
C++ Programming Job Market |
Average Salary
|
Job Count
|
Top Job Locations
New York City |
Complimentary Skills to have along with C++ Programming
C/C++ are the grandfather of most other languages. Once you understand C syntax and (OOP) Object Oriented Programming, you're well on your way to greener pastures. Since the .NET development ecosystem spans a wide array of capabilities and tools, it is difficult for .NET developers to know which .NET development skills and training to pursue in order to increase their marketability — and earning potential. For that reason, learning supplemental languages such as Java, JavaScript, Python, C/C++, and others is expected in today’s competitive skill-set driven playing field. |