Some many years ago my teacher taught us to program Xilinx Spartan II development board. He taught us to think of the hardware element we wanted to invoke (logic gate, adder, shift register, etc) and then check the Xilinx XTS manual for the Verilog code pattern that implements that hardware (In Chapter 2 of the manual: XST HDL Coding Techniques).
Now, moving to Altera and following several tutorials and guidelines I don't find mentions of code patterns. Everything is coded based on what behavior you want, almost like coding C, without an awareness of what hardware behavior you're invoking, which is exactly what my teacher taught us we shouldn't do.
So, this leaves me with a few questions: Does Altera provide code patterns for Quartus II (I have a Cyclone II devel board), like Xilinx does with XTS? What is the most advised design technique?