Skip to content

Features

Jeff Berman edited this page Jun 6, 2017 · 9 revisions

Better Object Builder features

Some of the major benefits of using a Better Object Builder / Git / RDi development environment are:

  • Consistent, repeatable software builds
  • At-a-glance version history
  • Easily examine code from any point in time
  • Easily compare code changes between any two points in time
  • Flexible source code version control to fit any development workflow
  • Git and Make are ubiquitous; volumes of documentation and help exist
  • Automated builds are possible
  • Speedy delta builds -- only new and changed code (and code dependent on the changed code) is compiled
  • Many dependencies are automatically detected and maintained
  • Fast transfer of source files from PC to IBM i
  • One-button builds
  • Open source. Free to use and free to modify.

Obviously, we think Bob is pretty great. But, in fairness, there are some challenges to be aware of:

  • Learning curve -- Git and Make are amazing but can also be quite complex. Fortunately, the vast wealth of online information will help you recover from any mistake.
  • Installation -- Installing the IBM i prerequisites currently consists of many manual steps. IBM is working on reducing this, so installation will be easier in the near future.
  • PASE -- Since Git (if installed on the IBM i) and Make run in PASE, some familiarity with a Unix-like shell is helpful. It may be a little outside your comfort zone, but it is a tremendous skill to have. We have performed search-and-replace instructions on thousands of source files using Sed and regular expressions in mere seconds, and used Grep to almost instantly discover every source file using a specific physical file.
  • At its current stage in development, changes to service programs and files result in rebuilds of everything using them. This is to avoid signature violations and level checks. This will be addressed in a future version of Bob.

Supported object types

These IBM i object types are currently supported.

Object Type Object Attribute
*CMD -
*FILE DSPF, LF, PF, PRTF
*MENU UIM
*MODULE C, CLLE, RPGLE, SQLC, SQLRPGLE
*PGM -
*PNLGRP -
*QMQRY -
*SRVPGM -
*WSCST -