Win a copy of Mesos in Action this week in the Cloud/Virtualizaton forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Code diagramming

 
Jack Franz
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I'm having difficulties with designing my classes to fit my needs. More specifically, I find that I sometimes miss the forest for the trees when writing my code, which makes the individual classes usually work well on their own but somewhat awkwardly with each other. Is there a tool/program I can use to quickly lay out my plans for an individual subsystem of my program manually so that I can organize my thoughts better? I would draw the diagrams myself on a piece of paper, but unfortunately, my handwriting isn't very good and I sometimes have difficulties reading what I write.
 
Steve Kedzie
Greenhorn
Posts: 22
BSD Java Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Jack,

There are many software tools available for modeling software and some will be free, while others can be expensive. LibreOffice Draw is free/open source and is available for *nix / Windows / Mac. If you're on Windows and don't mind spending some money, Microsoft Visio 2013 is a popular diagraming/modeling package. Pencil Project, Dia, Diagramly, and LucidChart are free alternatives to Visio. If you're on *nix, a search in your package manager should help as well. I have minimal experience with Mac, but a web search will probably give you more products than you ever wanted for all platforms.

Steve
 
Tim Cooke
Sheriff
Pie
Posts: 2980
123
Clojure IntelliJ IDE Java
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
My favourite software design tool is a pencil, paper, and an eraser. If your handwriting is a bit 'free-form' then try writing slower to improve it, the extra time taken will give you more time to consider your design options.
 
Steve Kedzie
Greenhorn
Posts: 22
BSD Java Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Tim's post reminded me of a plastic drawing tool I saw a number of years ago. It was intended for software design with paper and pencil and had hollowed out shapes like diamonds, circles, and triangles of various sizes. You could just trace the shapes you needed and connect them with lines and arrows, similar to UML diagrams and such. I can't tell you if the thing even exists these days or what it was called (it was bundled with a book when I saw it), but it may help you with pencil and paper design if you can find one. I would check art supply stores or college book/supplies stores. Good luck!

Steve
 
Tim Cooke
Sheriff
Pie
Posts: 2980
123
Clojure IntelliJ IDE Java
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You're thinking of one of these
 
Campbell Ritchie
Sheriff
Pie
Posts: 48981
60
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
That selfsame template can be boiught on eBay for £1.50 + 60p postage.
 
J. Kevin Robbins
Bartender
Posts: 1759
19
Chrome Firefox Browser jQuery Linux MySQL Database Netbeans IDE
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Tim Cooke wrote:You're thinking of one of these

Ugh. That reminds of my COBOL class some 30+ years ago. I have to admit, I usually wrote the code first, then went back and created a diagram that matched the code. Maybe that's why I never became a COBOL programmer.
 
Campbell Ritchie
Sheriff
Pie
Posts: 48981
60
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
J. Kevin Robbins wrote: . . . I usually wrote the code first, then went back and created a diagram that matched the code. . . .
I thought that was how everybody created UML diagrams
 
Steve Kedzie
Greenhorn
Posts: 22
BSD Java Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Tim Cooke wrote:You're thinking of one of these

That's exactly what I was thinking about! I'm half tempted to track one down for myself now.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic