Finally trying to understand and learn Object Oriented
Posted 09 March 2012 - 03:08 PM
Well, I have finally decided that noew is the time to do this, while I have a couple busy projects I have been able to find some extra time during the day to start learning.
I have already watched this webinar:
I have started to look at the Actor Framework (https://decibel.ni.c.../docs/DOC-17193), which might be a good design platform for me to ultimately learn and use, BUT I am open to any other suggestions on what to read and look at to get a better understanding of OO.
Posted 09 March 2012 - 03:51 PM
Founder and general mischief maker on www.labview-tools.com.
SQlite aficionado and websocket zealot.
If it 'aint in LabVIEW, then you 'aint got a clue!
Posted 09 March 2012 - 04:35 PM
Oh I agree, even though it is advanced, I have some understanding of how it executes. but starting small is the best way to approach it
My recommendation would be to start small.
The actor framework to me seems like a rather advanced OOP concept. Although I really do like it.
Posted 09 March 2012 - 05:10 PM
if I understand it correctly. ATM ATM.lvclass has the ATM.CTL. int he ATM.ctl there is the information for multip[le Account PWs, Names and amounts. and when a function ( deposit or withdrawl) is made the ATM object is updated allowing it to reflect the change but for each change the Object ( in this case the Atm.ctl) still needs to be sent throug a shift register to track correctly with every subsequent change. I think I have a better grasp now and may try to write something simple based off of the ATM Class model example posted.
Posted 09 March 2012 - 05:17 PM
Posted 09 March 2012 - 07:56 PM
From what I have seen of the AF it is nowhere near as error-prone as the QSM. It may turn out my concerns are unfounded. I actually hope that is the case. However, for better or worse the AF appears to be on the cusp of becoming the next QSM for the LVOOP crowd (meaning commonly accepted as a one size fits all solution,) and given all the crazy problems I've seen with QSM implementations that worries me.
Assuming you already understand OOP fundamentals (and it appears you do,) Head First Design Patterns is the first book I recommend for people starting to learn how to design OOP applications. After that the list opens up quite a bit. (Object Thinking, Design Patterns, The Object Oriented Thought Process, Practical API Design, etc...)
Personally, I'd avoid using exam examples as the basis for anything other than learning how to pass the exam. Constraints imposed by the exam conditions (like the time limit) can lead to short-term design decisions that are not immediately clear to users unfamiliar with OOP, and those decisions might not be compatible with your requirements. I know I wasn't particularly happy with the code I turned in for my CLA exam. (Mostly... I thought the code was great on the exam I failed. I thought the code sucked on the exam I passed.)
There are a few of the NI example exams coded in LVPOOP here.
That said, I have not looked at AQ's sample test implementation. It may be a beautiful example of how to design a sustainable LVOOP application. *shrug*
Edited by Daklu, 09 March 2012 - 08:10 PM.
Certified LabVIEW Architect
Dak's First Law of Problem Solving: If the solution looks simple, I don't know enough about the problem.
Yes, the QSM is flexible. So is Jello. That doesn't make it good construction material.
There are two secrets to success:
Secret #1 - Never tell everything you know.