Refresh your C++ days! This resource is not only an excellent resource to interview questions, I found the answers interesting enough to float your thoughts upon. Compiled by Dr. Fatih Kocan, Wael Kdouh, and Kathryn Patterson. Though, I am not sure how long this PDF is going to stay there.
My first love "was" and "is" C++ - just that I have been unable to spend time with it since I switched to .NET development stack. The world of dots. While rest of the class was moving into the Java and qualifying for the certifications of UML, the challenge of understanding C++ attracted me more into it. Luckily I got a chance to learn more about C++ from a university senior, now in Microsoft, Haroon Ahmed. He was the inspiration that I wrote multilingual chat server in plain VC++ and made it to the AQ Khan Research Labs, an state level software development competition.
In .NET, the emphasis is more on business, than the mere UI library that you had to create before developing your logic. Or everytime you start your Doc-View architected C++ application, you had to provide everything that would make your business logic work. And then move to business logic. More side-kick code was required to develop an app. And in .NET, seldom - very seldom, we find ourselves implementing the OnPaint, OnDraw, people do not know about the PreTranslateMessage(), yep I'm talking about VC++, WNDPROC, the DispatchMessage method. The power that VC++ brought with it - Absolute - the God Language.
Plus, the concept of CLR; the .NET exe and dll aren't really exe/dll. They are just the intermediate language for the CLR that would JIT the .EXE/DLL and turn that into machine language. How easy it is to disassemble your code! that hurts. (0:
Just so this may interests you, when a managed module is invoked, the OS(windows) "thinks" that its just another "normal"(win32) executable; then it tells the windows loader to load the file; the loader reads the idata section, and when it finds the reference of mscoree.dll, it knows that it now needs to load the managed module in CLR; and then eventually managed module's IL is JIT'ted(Just in time compilation) into native code; which means, MSCorEE.dll compiles IL to native CPU instructions. I wrote about it sometime ago.
But still, if you are to develop a mission critical system, or software that does some real time process, or rendering realtime data, with zero delays, and zero compromise on performance - C++ is the way to go.
Well, also, if you want more, for instance to know about STL, ATL, COM, DCOM development using VC++, check out the CODEGURU.com website. It has excellent, invaluable resources in their VC++ section.
Wednesday, March 23, 2011
C++ Refresher Course - Interview Questions and Answers
Subscribe to:
Post Comments (Atom)
Popular Posts
-
Windows Communication Foundation (WCF): Why use MessageContract when DataContract is there? Keeping it simple, stupid (KISS): Data contra...
-
Sometime back a question was asked to develop a well performant parser– there was no restriction defined in the question whatsoever as to wh...
-
I did a small in-house presentation for the young architects in our company and though of sharing my findings. We compared different ORMs, a...
-
Couple of days ago I came across the following question over our local web blog, and following is what I replied. Question: [Discuss]: A...
-
Crystal Reports: PrintControl.Cab ActiveX problem Problem: I have a crystal report (some version) with asp.net (usually v2.0), I am using...
-
Crystal Report Viewer "This field name is not known.” Error! I was using Crystal Reports Viewer control in my ASP.NET web application; whe...
-
How bypass integrated authentication using WebBrowser control? Well, sometime back, I was hosting the WebBrowser control over WinForm and ...
-
Recently, I had to go through the implementation of a cheque clearing system; so, either because of the naive skull sticked on the top of my...
-
Problem Response is really slow when a page of ASP.NET/MVC web(site or app) is accessed first time. It takes around(depending?) 4/5 second...
-
This post is inspired by Jurgen Appelo ’s blog post , where he asks top 100 questions that a software developer should know. The questions a...
0 comments:
Post a Comment