By "Oracle Database development", I mean, more or less, writing SQL and PL/SQL. I assume in this post that you have access to Oracle Database (which you can get via Cloud services, Docker, GitHub and OTN).
A. Use a powerful IDE, designed with database programming in mind.
There are lots of editors out there, and many IDEs that work with Oracle Database. Sure, you could use Notepad, but OMG the productivity loss. You could also use a popular editor like Sublime, and then it get it working with Oracle.
I suggest, however, that you download and install Oracle's own own, free, powerful IDE: SQL Developer.
B. Enable compile-time warnings and PL/Scope.
The database has tons of useful functionality burned right into it, ready for you to use. For example, when PL/SQL program units are compiled, Oracle can give you feedback (aka, "compile-time warnings) to improve the quality and performance of your code.
In addition, PL/Scope - when enabled - will gather information about your identifiers and (in 12.2) SQL statements. This will allow you to do some very impressive impact analysis of your code.
Most developers are not aware of these features and so leave them turned off. Here's my suggestion for SQL Developer users:
Open up Preferences, type "compile" in the search field. Then change your settings to match these:
A. Use a powerful IDE, designed with database programming in mind.
There are lots of editors out there, and many IDEs that work with Oracle Database. Sure, you could use Notepad, but OMG the productivity loss. You could also use a popular editor like Sublime, and then it get it working with Oracle.
I suggest, however, that you download and install Oracle's own own, free, powerful IDE: SQL Developer.
B. Enable compile-time warnings and PL/Scope.
The database has tons of useful functionality burned right into it, ready for you to use. For example, when PL/SQL program units are compiled, Oracle can give you feedback (aka, "compile-time warnings) to improve the quality and performance of your code.
In addition, PL/Scope - when enabled - will gather information about your identifiers and (in 12.2) SQL statements. This will allow you to do some very impressive impact analysis of your code.
Most developers are not aware of these features and so leave them turned off. Here's my suggestion for SQL Developer users:
Open up Preferences, type "compile" in the search field. Then change your settings to match these:
In other words:
1. Enable all warnings.
This way, whenever you compile a program unit, Oracle will give you advice about ways to improve your code.
2. Treat all "severe" warnings as compile-time errors.
If the PL/SQL team thinks these warnings are critical in some way, then I want to make my production code is free of such warnings. By setting this caregory to ERROR, I ensure that the code will not compile unless it is "clean".
3. Tweak your optimization level up to 3 (all the good stuff plus subprogram inlining).
And even more important, take whatever steps are appropriate in your development environment to ensure that production code is compiled at this level of optimization as well. Check out this guidance from the PL/SQL dev team for more details.
4. Turn on PL/Scope.
You can then execute queries against your code to get information regarding naming conventions, sub-optimal code, and opportunities for performance improvements.
C. Decide RIGHT NOW on logging and instrumentation.
Before you start writing you next program, accept this reality: your code will be full of bugs. You will need to trace execution as well as log those bugs, in order to get your code ready for production and then keep it running smoothly in production.
You need a logging utility for this, and I suggest you use the open-source, widely-used Logger utility available from GitHub.