Now I don’t know if I’m worthy enough to be called a ‘PeopleSoft Techie’ but I have done some developments in PeopleSoft. I found the whole ‘Ruby on Rails’ quite similar to the way we develop in PeopleSoft. Let me elaborate on this a bit.
“Rails is an MVC (model, view, controller) framework where Rails provides all the layers and they work together seamlessly”
Developments in PeopleSoft are also based on a MVC framework that comes with the Enterprise PeopleTools Framework. We have a ‘Data Model’-Model, ‘User Interface’ (Page Definitions and all)–View, and ‘Component Processor’-Controller forms the base for our PeopleSoft related developments.
“Scaffolding-Rails can automatically create a full set of CRUD (Create, Retrieve, Update, and Delete) operations and views on any database table”
The best part of developing an application in PS is that you don’t have to write a single piece of code for your Database transactions. It’s taken care by the whole Enterprise PeopleTools Frame work. The Creation, Updation and Deletion of database entries of your Component records is taken care by the PeopleTools Framework.
“Active Record is the part of Rails that handles the automatic mapping of your database tables to your runtime model objects. It's the M in MVC, and it is Rails' implementation of an ORM layer.”
The Active record is similar to Component Record that we have in PeopleSoft App Designer. The Component Record(s) has a firm binding to the Component (PeopleSoft Component) that we design in PeopleSoft. You'll never need to see or use SQL when accessing or updating your database the same as in the Rails framework.
There is this concept of ‘Associations’ in Rails where you can tell Active Record about the relationships with related tables in your model classes, and Active Record will generate a slew of navigation methods that make it easy for your code to access related data. The same can be found in the concept of usage of Scrolls in PeopleSoft Components.
“Call backs-As Active Record creates and destroys model objects and creates and updates them in the database, you can monitor these events in the object's life cycle using callbacks. You can use callbacks to handle complex business logic, modify data before Rails writes it to the database”
This is very similar to the Events that we have in our definitions(Component/Page/Record/Field) in PeopleSoft. For Example
Rails Callback<==>PeopleSoft Event
before_save<==>Save PreChange
before_create<==>Row Insert
I’ve still have not gone through what the ‘Ruby on Rails’ framework does and provides in detail, I’m still in the re-search mode on this topic. From what I read about the framework, these similarities just seemed to make sense to me. Looking forward for some views and comments on the same.
Well till we meet again, the question of course “Ruby on Rails as a development framework- to be or not to be?”
Answer: “Yes ‘Ruby on Rails’ is on a real nice track. It’s definitely to be.”
No comments:
Post a Comment