tag:blogger.com,1999:blog-4818542164384221282.post7342416087250627367..comments2024-03-25T17:53:49.828+08:00Comments on Grassroots Oracle: Steven Feuerstein Perth Review - Session 2 - Writing Maintainable CodeScott Wesleyhttp://www.blogger.com/profile/18106937181788036683noreply@blogger.comBlogger3125tag:blogger.com,1999:blog-4818542164384221282.post-39532792734651852272009-08-30T22:18:21.512+08:002009-08-30T22:18:21.512+08:00Thanks for the writeup, Scott. Just a couple of qu...Thanks for the writeup, Scott. Just a couple of quick responses:<br /><br />1. You wrote "Always (is this a bug?) return a subtype - never a specific datatype, ie: VARCHAR2(100)"<br /><br />To be clear, what I said and say is: Any declaration of a variable in the form VARCHAR2(N) should be considered a bug. You should anchor every declaration using %TYPE or %ROWTYPE. If that is not possible, then define a SUBTYPE and anchor to that. The objective is to always have a "single point of definition."<br /><br />1. Table APIs: my impression from talking to developers over the years is that very few of us work in an environment in which the overhead of an API would be unacceptable. That is, very few of us have to worry about microseconds in elapsed time. If that is true for you, then I don't think you will see a noticeable performance impact from a data access layer. In fact, many developers report an overall improvement in performance (fewer parses, easier to find and optimize SQL).Steven Feuersteinhttps://www.blogger.com/profile/16619706770920320550noreply@blogger.comtag:blogger.com,1999:blog-4818542164384221282.post-13095122017156302512009-08-20T16:53:37.453+08:002009-08-20T16:53:37.453+08:00How silly of me to forget PL/SQL Developer! I'...How silly of me to forget PL/SQL Developer! I've used that a few times in the past and <i>personally</i> I prefer it to Toad. <br /><br />I've never utilised the plugins and templates to their full extent. <br /><br />I'll have a meander through your blog/website, cheers!Scott Wesleyhttps://www.blogger.com/profile/18106937181788036683noreply@blogger.comtag:blogger.com,1999:blog-4818542164384221282.post-42474604309819542062009-08-20T14:26:16.015+08:002009-08-20T14:26:16.015+08:00In the development utilities I think you missed PL...In the development utilities I think you missed <a href="http://www.allroundautomations.com/plsqldev/" rel="nofollow">PL/SQL Developer</a>. This great tool also provides a nice plug-in framework which can really help in development. Check the plugins I have created at <a href="bar-solutions.com" rel="nofollow">bar-solutions.com</a>.<br />On the subject of the table API's. I have written a number of blogposts on using CodeGen and especially the QDA (Quest Development Architecture) on my site. It takes some getting used to using the TAPI's, but if you know one, you know 'em all. Check my <a href="blog.bar-solutions.com" rel="nofollow">blog</a> and especially the CodeGen and the QNXO category.<br /><a href="http://bar-solutions.com/weblog/?p=55" rel="nofollow">QDA reduces code</a> is about the difference in code doing stuff the 'old' way and when using the QDA.<br />Otherwise, good post.Patrick Barelhttps://www.blogger.com/profile/04234439984999344625noreply@blogger.com