Nessa conferência estiveram presentes as pessoas mais importantes no mundo de PL/SQL.
Entre as diversas sessões apresentadas gostaria de mencionar algumas:
- Steven Feuerstein na sua Keynote "Wake up and Smell the …"
...Roses
"Nós somos uns sortudos! Tudo o que temos de fazer é resolver problemas (puzzle), escrever a solução e ser pagos por isso!"
...The cofee
"Temos responsabilidade perante a sociedade: somos o interface entra as máquinas e a humanidade." Programar com ética. Se não formos nós, quem será?
E já agora cuidem do vosso corpo e em especiasl do vosso cérebro: bebam água, façam exercício e pausas frequentes.
...the Methodologies
"A comunidade do PL/SQL só quer "get the job done"" sem se preocupar muito com metodologias. Falou-se aqui das mais recentes como Extreme Programming, Agile Software Development, Test-Driven-Development e da antiga Structured Programming.
"PL/SQL is the COBOL of the 21st century."
Como sempre Steven mencionou por alto a sua mantra: não a GOTOs, variáveis globais e a código maior que 50 linhas!
A esta junta-se outra: não programar o mesmo SQL 2 vezes. De preferência não usar SQL!
Explicando esta última afirmação que é estranha no contexto de DBs: a ideia é ter uma libraria extensa e testada de todos os SQLs necessários de modo a que estes estejam optimizados.
- "PL/SQL Design Patterns - Pre-Inventing the Wheel" pelo Alex Nuijten que dando nomes "de patterns" a várias técnicas de programação, não mencionou nada que eu já não utiliza-se como pattern. No entanto e esse foi a parte mais interessante mencionou uma técnica de alteração automática de código PL/SQL e isso foi bastante interessante! Foi focado o uso de Aspect Object Programming em PL/SQL.
Sobre este assunto ver por exemplo:
http://www.revealnet.com/newsletter-v7/0906_B.htm
http://technology.amis.nl/blog/?p=1083
http://technology.amis.nl/blog/?p=1086
http://technology.amis.nl/blog/?p=1089
http://technology.amis.nl/blog/?p=1090
http://technology.amis.nl/blog/?p=1123
-Bryn Llewellyn na sua keynote "The Wonders of Oracle 11g PL/SQL"
Veio confirmar algumas da coisas que já mencionei num post passado
- possibilidade de usar sequencias sem utilizacao da tabela dual (sequence.nextval).
- cache de resultados de SQL e de PL/SQL ( /*+result_cache*/ )
- Fine Grained Dependancy Tracking - quando se altera uma tabela/procedimento (por exemplo uma nova coluna) não vai invalidar todos os objectos relacionados
- Os DML triggers são mais rápidos e poder-se-á estipular uma ordem de corrida. Poder-se-á mesmo ter triggers que são ao mesmo tempo before after row e statement.
- Novo tipo : SIMPLE_INTEGER mais rápido que o PLS_INTEGER e não pode ser nulo.
Atenção:O SIMPLE_INTEGER não faz ouverflow....se ultrapassado volta ao valor mais baixo!!
- optimzação INLINE: O optimizador irá colocar as funções/procedimentos "mais pequenos" de um pacote "inline" nos procedimentos/funções desse pacote (não inter-package :-( )
Vou adorar trocar os meus
select a_seq.nextval into a from dual;
por a:=a_seq.nextval;
No entanto, uma coisa que não vai aparecer na 11.1 é a contextualizar a compilação de um package, isto é a sua compilação não ficar presa (locked) por estar a ser usado :-).
...
Por agora é tudo mas voltarei com mais coisas sobre a OPP 2007
No comments:
Post a Comment
Os comentários são moderados.
The comments are moderated.