Code browsers (Was: RE: how to ensure atomic code in a kernel mod e driver)

> ----------

From: xxxxx@storagecraft.com[SMTP:xxxxx@storagecraft.com]
Reply To: xxxxx@lists.osr.com
Sent: Saturday, December 06, 2003 12:06 AM
To: xxxxx@lists.osr.com
Subject: [ntdev] RE: how to ensure atomic code in a kernel mode
driver

Wow! With C, I need no code browser! No BSCMAKE! No lots of mouse clicks
to a
tree. Just “findstr” or “grep” the function name. Period.

With C++, I need these extra tools which are lesser usable then MSVC’s
toolbar
button which invokes “findstr”.

This increases complexity and provides nothing useful.

More files to open. More mouse clicks to do. More hand moves from keyboard
to
mouse (the known usability criteria). Need in BSCMAKE (never used it). And
for
what?

For productivity. It has nothing with C versus C++ holy war, code browser is
a tool which can increase your productivity several times. It is obvious you
never used it; maybe you should try. Findstr or grep are just primitive
attepmts to achieve the same functionality with less comfort. I can compare
because use both C/C++ with code browser and another C-like language without
it from the same editor. With browser I can see what I need at least 10
times faster; all necessary is one hotkey to see symbol definition and
another one to go back. No mouse necessary and destination file needs to be
opened in any case if you want to see context. I believe also in VS IDE
browse function can be mapped to a hotkey but don’t know for sure because
haven’t used it for years.

BscMake tool (not quite necessary for browsing) gives you another useful
info: references. With grep it is also possible but there is always a
possibility you forget to search some file or find a reference which isn’t
really used because of some #ifdef before. BSC database contains information
as compiler sees it which is invaluable sometimes (especially when working
on big piece of code written by somebody else).

Finally, I have to agree with one your point for C language. C++ implicit
namespace use (including this pointer and inheritance) makes code browser
task much harder if BSC info isn’t available. If it is hard for software, it
is also harder for developer so well written C code is usually more
readable.

P.S. It is funny to see how Alberto both directly and indirectly generates
90% of traffic in this list :wink:

Best regards,

Michal Vodicka
STMicroelectronics Design and Application s.r.o.
[michal.vodicka@st.com, http:://www.st.com]