|
Paul, this is a fantastic post! I for one really appreciate the work you've done on this one... Mike rpg400-l-bounces@xxxxxxxxxxxx wrote on 28/06/2005 15:36:08: > Greg, > > I think you're really trying to learn two types of programming. The first > is to 'structured programming' - break the code down into pieces and how do > you organize those pieces. The second is 'object oriented programming' - > structure your data as well as your code. Structured Programming is more > 80's technology which Object-Oriented Programming is more 90's technology. > ILE deals more with structured programming but OS400 does have objects so > it's an odd mix of structured and object oriented technology. You can apply > object oriented concepts to structured programming so it's worth studying > both even though ILE RPG isn't an object oriented language. > > Structured programming (http://en.wikipedia.org/wiki/Structured_programming) > had a lot of different proponents back in the 80's - James Martin, Edward > Yourdon & Michael Jackson were authors I read. I personally liked Jackson's > method for designing a program > (http://en.wikipedia.org/wiki/Jackson_Structured_Programming) because it was > a data oriented approach. The program structure was derived from the format > of your data inputs and outputs. > > Object-Oriented Programming > (http://en.wikipedia.org/wiki/Object-oriented_programming) goes further than > structured programming. Instead of having a program that reads in data, > does something with it then spits out data/reports you have objects which > wrap the data with code. Then you put the objects together into systems. > The concept of a program separate from the data disappears. Booch, > Rumbaugh, and Meyer are all good authors on this topic. > > The Code Complete book already mentioned is more about Software Engineering > (http://en.wikipedia.org/wiki/Software_development). You can look a > programming from three different points of view - a trade, an art, or a > profession. Software Engineering is working towards turning programming > into a profession. I.E. you must know x, y, z and follow specific > guidelines to be a Software Engineer. Right now we're not sure what x,y & z > are so don't let someone masquerading as a Software Engineer intimidate you. > > There is another topic called Patterns with a different view on designing > systems. Patterns are a way to describe how objects work together to make a > system. They are techniques you can use to solve more specific problems in > a design. They are sort of templates you use to write your code. The > Design Patterns book (http://en.wikipedia.org/wiki/Design_Patterns) by > Gamma, et.al. (nicknamed the Gang of Four) is the first and best book on > patterns. I wouldn't recommend this book until you understand something > about object oriented programming. Patterns might be the x,y & z of > Software Engineering. > > You know more about object oriented programming than you might think. > You've been working on a successful object based (everything is object > oriented except there is no inheritance) operating system so a lot of the > concepts will be familiar. You have a leg up on a mainframe, unix or PC > programmer trying to learn about object oriented technology. Learning will > never end so don't be concerned if you don't know everything - you never > will. > > Paul > > -- > Paul Morgan > Senior Programmer Analyst - Retail > J. Jill Group > 100 Birch Pond Drive, PO Box 2009 > Tilton, NH 03276-2009 > Phone: (603) 266-2117 > Fax: (603) 266-2333 > > Greg wrote > > > It describes the tools one can use to do those things, but doesn't teach > > me the principles I can apply to break business problems into modular > > programming constructs. How to break out of a monolithic approach to > > thinking about logic flow, into an **ORGANIZED** modular approach, using > > small reusable pieces. > > > > I know, some people can study a tool, and intuitively know how they > > would want to use it. Perhaps these are the only people who should > > really be using the tool. I'm not like that. > > > > I think what I'm talking about is the distinction between the art and > > the science of programming. I don't know if the art can be learned, but > > I'd like to try. I'm hoping someone has written a book on it. > > > > Posts from Joe Pluta and Alan Campin and others indicate that one needs > > to study these high level programming/software engineering principles in > > order to do good programming. > > > > Maybe someone could suggest some specific authors/titles ? > > > > -- > This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list > To post a message email: RPG400-L@xxxxxxxxxxxx > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > or email: RPG400-L-request@xxxxxxxxxxxx > Before posting, please take a moment to review the archives > at http://archive.midrange.com/rpg400-l. > >
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.