Slashdot Mirror


Sun's Joshua Bloch On OOP/OOD In Java

f00zbll writes: "A good article about development and OOP/OOD. The lessons apply to most OO languages and OOD. Interview with Joshua Bloch over at Javaworld. Ignore the fact that Java is owned by Sun and use the tips to help your work/project/development."

3 of 28 comments (clear)

  1. Fights with managers by dolphinuser · · Score: 2, Interesting
    Bloch: "Precisely. In fact, people who try to "do the quickest slop you can throw down" often take longer to produce a working system than people who carefully design the components. But certainly, API design helps if you consider cost over time".

    This is one of the most common fights between us (developers) and management. Often managers are only interested on the fastest route, without considering the maintenance costs down the road.

    I'll be emaling my manager a link to this story (anonimously, of course. I want to keep my job ;-)

    John

    --
    The drops of water don't know themselves to be a river; and yet the river flows.
  2. Re:Business vs Academic by cwinters · · Score: 2, Interesting

    Did you read the same article I did? Designing robust APIs, decomposing modules and interfaces into simple and testable pieces, defensive programming are all hallmarks of high quality large-scale systems. Articles addressing your concerns have a place -- hey, maybe you could write one! -- but this article is clearly meant for a different audience.

    Chris

    --

    Chris
    M-x auto-bs-mode

  3. Auhhh :-) by sinserve · · Score: 3, Interesting

    This guy just gave me the encouragement I needed.

    As a /standalone/ programmer/designer/analyst, I
    developed this API design philosphy on my own.
    Actually, I have evolved to it.

    If you are in a one-mans shop, or do alot of coding
    for a specific domain, try to roll out your own
    layer of helper APIs on top of the system provided ones.

    I work on win32 and ODBC: I have my own class
    hierchies of *standard* dialogs for DB applications.
    Ex: the ActiveX components for DB Appz (advanced
    list views, financial stats, bar charts and graphs, etc.)
    are really resource greedy (the updating required
    for a dynaset database connection, with millions
    of records being fetched per minute is very
    expensive.)
    So I wrote some ready to run classes, that take
    care of the interface (with all the company logos
    and standard look-and-feel stuff.)
    then wrote some other classes to wrap around the
    "CResultView" classes, and finally,
    wrote some classes that *know* about our strange
    servers, and are optimized for them (including
    a connection "language" I derived, which is nothing
    more than a hand optimization of the subset of
    SQL accepted by oracle.)

    So, if the shop is good to you, be good to them
    and put your talent to work.
    The API method works, and I am a living witness for it.