⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 the oo design process2.mht

📁 VC书籍介绍C++的应用的TheOODesignProcess.zip 电子书好用的
💻 MHT
📖 第 1 页 / 共 5 页
字号:
            sufficient up-front analysis. </P>
            <P>Looking back at the incipient problem statement, you'll =
notice=20
            that I haven't mentioned computers anywhere. I'm describing =
the=20
            problem, not a computer program. The problem domain, here, =
is=20
            parenting, not banking. Consequently, the statement is =
written for a=20
            parent, not a banker, to read. </P>
            <P>Also, note the relatively simple structure of the =
sentences.=20
            Avoid the passive voice and other turgid academic prose =
styles like=20
            the plague. A simple declarative sentence=20
            (subject/verb/direct-object) identifies the initiator of an =
action=20
            (the subject), the operation performed (the verb) and the =
receiver=20
            of the message that requests the operation (the direct =
object). The=20
            passive voice only identifies the last two of these three =
parts. Use=20
            "I," "you," and so forth whenever it makes sense to do so. =
</P><A=20
            name=3D6>
            <P><STRONG class=3Dsubhead>Happy trails </STRONG><BR>So =
that's it for=20
            this month. We've made a start by defining the basic =
problem. Next=20
            month I'll continue the exercise, flushing out and refining =
the=20
            problem statement so that it will be sufficiently useful. =
</P><A=20
            name=3Dresources>
            <P><STRONG class=3Dsubhead>Resources </STRONG>
            <UL>
              <LI>Read a great editorial in the March/April, 2000 issue =
of IEEE=20
              Software on the confusion of paperwork with progress. The=20
              editorial is called "<A=20
              =
href=3D"http://computer.org/software/so2000/pdf/s2011.pdf">Cargo=20
              Cult Software Engineering</A>" by Steve McConnell.<BR><BR>
              <LI>Learn more about UI design in <I>About Face: The =
Essentials of=20
              User Interface Design</I> by Alan Cooper (IDG Books). It =
is ironic=20
              that the author of a great book about UI design is also =
the=20
              "father of Visual Basic," the tool responsible for many of =
the=20
              worst user interfaces ever foisted on the computing =
public. Cooper=20
              has a lot of opinions, some of which I agree with and some =
of=20
              which I don't. (In particular, I don't think of a program =
as a UI=20
              with intelligent warts hanging off of it, as Cooper seems =
to do).=20
              Nonetheless, Cooper is always entertaining, and there's a =
lot of=20
              good advice here.
              <P></P>
              <P>I find that most of the books on UI design are written =
either=20
              by programmers (who put the convenience of the programmer =
above=20
              the needs of the user) or graphic artists (who put =
concepts like=20
              art, impact, and originality above the needs of the user). =
In=20
              either case, the user loses. It's refreshing to read a =
book about=20
              UI design written by a knowledgable programmer who not =
only=20
              insists on putting the user first, but also has a good =
design=20
              sense.</P>
              <P>From the Cooper Design "Manifesto" on Cooper Design's =
Web site:=20
              In fact, most of today's software might as well have an =
interface=20
              like this: <BR><IMG alt=3D"Error screen" height=3D136=20
              =
src=3D"http://www-106.ibm.com/developerworks/library/oo-design2/error.gif=
"=20
              width=3D375><BR></P></LI></UL><A name=3Dauthor>
            <P><STRONG class=3Dsubhead>About the author =
</STRONG><BR>Allen Holub=20
            has been working in the computer industry since 1979. He is =
widely=20
            published in magazines (<I>Dr. Dobb's Journal</I>, =
<I>Programmers=20
            Journal</I>, <I>Byte</I>, <I>MSJ</I>, among others) and is a =

            Contributing Editor to the online magazine <A=20
            href=3D"http://www.javaworld.com/">JavaWorld</A>. He has =
eight books=20
            to his credit, the latest of which (<A=20
            =
href=3D"http://www.amazon.com/exec/obidos/ASIN/1893115100/alleiholuasso">=
<I>Taming=20
            Java Threads</I></A>) covers the traps and pitfalls of Java=20
            threading. He's been designing and building object-oriented =
software=20
            for longer than he cares to remember. After eight years as a =
C++=20
            programmer, Allen abandoned C++ for Java programming in =
early 1996.=20
            He's been teaching programming (first C, then C++ and MFC, =
now=20
            OO-Design and Java programming) both on his own and for the=20
            University of California Berkeley Extension since 1982. =
Allen offers=20
            both public classes and in-house training in Java technology =
and=20
            object-oriented design topics. He also does object-oriented =
design=20
            consulting and contract Java programming. Visit Allen's Web =
site at=20
            <A =
href=3D"http://www.holub.com/">http://www.holub.com/</A>.</P><!-- End =
paper --><BR></TD>
          <TD vAlign=3Dtop width=3D8><!-- gutter--><IMG height=3D1=20
            src=3D"http://www-106.ibm.com/developerworks/images/c.gif"=20
          width=3D8>&nbsp;</TD></TR><!-- gutter -->
        <TR height=3D8 vAlign=3Dtop>
          <TD vAlign=3Dtop width=3D8><!-- gutter --></TD>
          <TD vAlign=3Dtop width=3D8><!-- gutter --></TD>
          <TD vAlign=3Dtop width=3D8><!-- gutter --></TD></TR>
        <TR height=3D8 vAlign=3Dtop>
          <TD vAlign=3Dtop width=3D8><!-- gutter --></TD>
          <TD vAlign=3Dtop width=3D8><!-- rate article form -->
            <TABLE border=3D0 cellPadding=3D0 cellSpacing=3D0 =
width=3D"100%">
              <TBODY>
              <TR>
                <TD height=3D1 width=3D"100%"><SPACER type=3D"block"=20
              height=3D"1"></TD></TR>
              <TR>
                <TD align=3Dleft bgColor=3D#3333cc height=3D3 =
vAlign=3Dtop=20
                  width=3D"100%"><IMG border=3D0 height=3D3=20
                  =
src=3D"http://www-106.ibm.com/developerworks/images/blueline.gif"=20
                  width=3D"100%"></TD></TR>
              <TR vAlign=3Dtop>
                <TD>
                  <FORM=20
                  =
action=3Dhttp://www9.software.ibm.com/dworks/ratings.nsf/RateArticle?Crea=
teDocument=20
                  method=3Dpost><!-- paste title here --><INPUT =
name=3DArticleTitle=20
                  type=3Dhidden value=3D"Beginning to design software"> =
<!-- paste zone here --><INPUT name=3DZone type=3Dhidden=20
                  value=3DComponents> <INPUT name=3DRedirectURL =
type=3Dhidden=20
                  =
value=3Dhttp://www.ibm.com/developer/beta-feedback-thankyou.html>=20
                  <FONT face=3D"HELVETICA, HELV, ARIAL" =
size=3D-1><B>What do you=20
                  think of this article?</B></FONT>
                  <P>
                  <TABLE border=3D0 cellPadding=3D0 cellSpacing=3D0 =
width=3D570>
                    <TBODY>
                    <TR vAlign=3Dtop>
                      <TD><INPUT name=3DRating type=3Dradio =
value=3D5><FONT=20
                        face=3D"HELVETICA, HELV, ARIAL" =
size=3D-1>Killer!=20
                      (5)</FONT></TD>
                      <TD><INPUT name=3DRating type=3Dradio =
value=3D4><FONT=20
                        face=3D"HELVETICA, HELV, ARIAL" size=3D-1>Good =
stuff=20
                        (4)</FONT></TD>
                      <TD><INPUT name=3DRating type=3Dradio =
value=3D3><FONT=20
                        face=3D"HELVETICA, HELV, ARIAL" size=3D-1>So-so; =
not bad=20
                        (3)</FONT></TD>
                      <TD><INPUT name=3DRating type=3Dradio =
value=3D2><FONT=20
                        face=3D"HELVETICA, HELV, ARIAL" size=3D-1>Needs =
work=20
                        (2)</FONT></TD>
                      <TD><INPUT name=3DRating type=3Dradio =
value=3D1><FONT=20
                        face=3D"HELVETICA, HELV, ARIAL" size=3D-1>Lame!=20
                    (1)</FONT></TD></TR></TBODY></TABLE><BR><FONT=20
                  face=3D"HELVETICA, HELV, ARIAL"=20
                  size=3D-1><B>Comments?</B></FONT><BR><TEXTAREA =
cols=3D52 name=3DComments rows=3D3 wrap=3Dvirtual></TEXTAREA>=20
                  <BR><BR><INPUT type=3Dsubmit value=3D"Submit =
feedback">=20
                  </FORM></FONT></P></TD></TR></TBODY></TABLE><!-- end =
rate article form --></TD>
          <TD vAlign=3Dtop width=3D8><!--gutter--></TD></TR>
        <TR height=3D8 vAlign=3Dtop>
          <TD vAlign=3Dtop width=3D8><!--gutter--></TD>
          <TD vAlign=3Dtop width=3D8><!--gutter--></TD>
          <TD vAlign=3Dtop =
width=3D8><!--gutter--></TD></TR></TBODY></TABLE><!-- end content =
--></TD></TR></TBODY></TABLE><!-- FOOTER -->
<TABLE border=3D0 cellPadding=3D0 cellSpacing=3D0>
  <TBODY>
  <TR>
    <TD width=3D150>
      <TABLE border=3D0 cellPadding=3D0 cellSpacing=3D0 width=3D150>
        <TBODY>
        <TR bgColor=3D#000000>
          <TD class=3Dmast width=3D49><A class=3Dnav=20
            href=3D"http://www.ibm.com/privacy/"=20
          style=3D"COLOR: #ffffff">Privacy</A></TD>
          <TD bgColor=3D#959595 width=3D1><IMG alt=3D"" border=3D0 =
height=3D20=20
            src=3D"http://www.ibm.com/i/c.gif" width=3D1></TD>
          <TD class=3Dmast width=3D49><A class=3Dnav=20
            href=3D"http://www.ibm.com/legal/" style=3D"COLOR: =
#ffffff">Legal</A></TD>
          <TD bgColor=3D#959595 width=3D1><IMG alt=3D"" border=3D0 =
height=3D20=20
            src=3D"http://www.ibm.com/i/c.gif" width=3D1></TD>
          <TD class=3Dmast width=3D49><A class=3Dnav=20
            href=3D"http://www.ibm.com/contact/"=20
          style=3D"COLOR: #ffffff">Contact</A></TD>
          <TD bgColor=3D#959595 width=3D1><IMG alt=3D"" border=3D0 =
height=3D21=20
            src=3D"http://www.ibm.com/i/c.gif" width=3D1></TD></TR>
        <TR bgColor=3D#ffffff>
          <TD width=3D49><IMG alt=3D"" border=3D0 height=3D1=20
            src=3D"http://www.ibm.com/i/c.gif" width=3D49></TD>
          <TD width=3D1><IMG alt=3D"" border=3D0 height=3D1=20
            src=3D"http://www.ibm.com/i/c.gif" width=3D1></TD>
          <TD width=3D49><IMG alt=3D"" border=3D0 height=3D1=20
            src=3D"http://www.ibm.com/i/c.gif" width=3D49></TD>
          <TD width=3D1><IMG alt=3D"" border=3D0 height=3D1=20
            src=3D"http://www.ibm.com/i/c.gif" width=3D1></TD>
          <TD width=3D49><IMG alt=3D"" border=3D0 height=3D1=20
            src=3D"http://www.ibm.com/i/c.gif" width=3D49></TD>
          <TD width=3D1><IMG alt=3D"" border=3D0 height=3D1=20
            src=3D"http://www.ibm.com/i/c.gif" =
width=3D1></TD></TR></TBODY></TABLE></TD>
    <TD width=3D"100%">
      <TABLE border=3D0 cellPadding=3D0 cellSpacing=3D0 width=3D"100%">
        <TBODY>
        <TR bgColor=3D#000000>
          <TD><IMG alt=3D"" border=3D0 height=3D21 =
src=3D"http://www.ibm.com/i/c.gif"=20
            width=3D1></TD></TR>
        <TR bgColor=3D#ffffff>
          <TD><IMG alt=3D"" border=3D0 height=3D1 =
src=3D"http://www.ibm.com/i/c.gif"=20
            =
width=3D1></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></BODY></HT=
ML>

------=_NextPart_000_0080_01C1008B.BF399280
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www-106.ibm.com/developerworks/i/mast_logo.gif

R0lGODlhlgAZAJEAAABmmf///wAAAAAAACwAAAAAlgAZAAACuJSPqcvtD6OcVIKLs968+w+G4kiW
Y4Wm6sq2jgnH8kzXn4vn+q7a/g8MynjEonEnTCqXwaPzCYV4AtRqAGDNYrQaLvMLBkTHZOg0e0Vr
0Rl2+K0sy+c6ULVL3eYv1vYdDihEN0iIYren58bXh8UY+GhTKDnZcHjlp9iYdvcH6TlESUVJaYl3

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -