-
-
czj2008szdf | 当前状态:在线
总积分:722 2024年可用积分:0
注册时间: 2008-07-04
最后登录时间: 2019-07-13
-
ifix学习七部曲
czj2008szdf 发表于 2009/5/4 19:34:39 1067 查看 2 回复 [上一主题] [下一主题]
手机阅读
第一步要做的:
如果你从未使用过任何组态平台,那么你需要了解组态软件的基本概念,什么叫组态软件,他嫩做什么、怎么做的——也就是工作机制(具体请参考相关资料),然后再开始进一步学习。如果你对组态平台有一定的经验,那么你起步会很容易,因为各组态系统的基本功能和用法是非常近似的,仔细阅读ifix电子书或154教程,就可以很快掌握这些基本组态功能的实现方法。在学习过程中,如果遇到某些和编程相关的地方,可以简单了解然后跳过。
第二步要做的:
ifix除了基本的图形组态功能以外,还提供了强大的、基于VBA平台的脚本功能。所以,如果你想让你的组态画面,具备除基本组态以外的更高级的功能,那么你就必须熟练掌握VBA编程,建议通过学习VB6.0来获得这种能力,因为VBA可以理解为VB6的子集(需要注意,更高的VB版本如VB.NET和VB2005并不适合)。买一本《VB6+从入门到精通》一类的书就基本够用了。通过学习,应达到这样的结果——理解VB编程语言的基本概念,具备编程的基本能力和技巧。其中有一个重要的概念,必须尽可能的透彻理解和熟练掌握,那就是“面向对象编程”,如果这一点没有做到,最好不要进行下一步学习。
第三步要做的:
学会了VB并不等于学会ifix编程,首先,VB和VBA是有差异的,VBA的功能稍弱,应该在应用过程中注意到并体会这些差异(例如VBA窗体中不支持控件树组、常用控件的特性也有不少差异)。再有,ifix是完全面向对象的组态系统,它有很多特有的对象及其特性,这些对象并不都是完全独立的,有些对象之间具有特殊的联系。ifix还在VBA系统中添加了很多子程序,这些子程序可以简化很多常用功能的脚本编写,比如用于打开画面的OpenPicture子程序。了解这些ifix特有对象的属性、方法、事件,理解对象间的关联关系,并且熟悉ifix子程序的用法,这都是至关重要的。这也是为什么在第二步中强调透彻理解和熟练掌握“面向对象编程”的原因。相关帮助文档参见《自动化接口帮助》
第四步要做的:
看了前三步,似乎ifix已经学完了,其实并非如此。比如你吃一碗米饭和一盘菜,你一定会吃一口米饭吃一口菜,然后再吃一口米饭吃一口菜……而不会先一口气把米饭吃光然后再端着盘子狂吃菜。学习ifix也是一样的,需要循序渐进,在第一步,你不可能把ifix所有的特性都学懂学会,因为有些概念和特性,需要具备一定的编程知识和其它辅助知识以后,才能理解掌握的。所以,第四步最有可能的情况就是返回第一步,开始循环,这是你进一步提高的标志,是你通向高手之路过程中,打通任督二脉的环节。
第五步要做的:
第四步已经开始循环了,开始了修炼的过程,那么第五步只能算是循环之外的。但其实也可以在循环过程中逐渐加入。这里所要学习的包括:关系数据库知识和SQL语言的使用、Windows API的使用、计算机基础知识(例如不懂得进制及其转换的知识,则相应的编程就无从谈起)、网络知识、图形文件相关知识和加工处理……等等等等。其中,关系数据库知识和SQL语言的使用是非常重要的,缺了它,你就像一头没有利齿的狮子,难以对付强壮的猎物。如果你的消化能力强,因该把关系数据库和Windows API加入到第三步的学习内容中去(在循环中加入也可)。而Windows API的作用,是用来实现VB语言没有直接提供的各种功能,例如各种声音文件的播放和对其他程序的交叉控制等。
第六步要做的:
从第一步开始,你每多走一步,就向ifix高手的行列更靠近一步,完成了第五步,从一般的意义上说,已经是高手中的高手了,可以独步ifix江湖了。那么第六步又是干什么用的呢?它的作用是使你达到出神入化、登峰造极的境界,从而成为绝顶高手、一代宗师。这是什么高深武功呢?这就是设计!它不是技术,而是思想,是一种高层次的内功。鸟巢之所以是鸟巢、水立方之所以水立方,它们的叹为观止,不是由建筑队决定的,而是由设计师决定的。设计不是异想天开,设计师不仅决定它们是什么样子的、有什么功能,还要知道能否实现、如何实现、用什么材料和技术实现,而建筑队要做的,就是按照设计师的要求去工作。前五步的学习,仅是可以成为最优秀的建筑队。可见,设计师才是最高境界。然而,就像所有传说中的高深武功一样,最高的一个层次,往往是最难以修炼的,也不是所有人都能够成功的。首先它要在前五步的基础之上,然后还需要大量的经验以及一些天赋、悟性和思想高度。简单地说,设计包括功能设计、界面交互设计、总体结构设计。提高设计水平,除了自己多练多想,还要参观研究别人做的系统,这种研究,并不需要看代码,你只需要看外观就够了,看到了好的系统,用照相机把屏幕拍下来,回去慢慢体会。(如果有机会,我会专门写一写这方面的东西,和大家探讨一下)。
第七步要做的:
又是一个意外吧?不是练到头了吗?怎么又出来了一步?其实这第七步要做的,应该是“每一步都要做的”,但又是相对独立的,所以单独分出一步,那就是:获得帮助。
无论是谁,学习过程中都会遇到困难,有时是知识障碍,有时是理解障碍,都会需要别人的帮助,这很正常。但是,首先要记住,自己多动脑、多研究永远是最重要的,因为帮助不等于代替。
自己的工资自己挣,别指望不劳而获——
不要说英语差,英语差可以学;不要说电子书和教程太厚,我相信比这还厚的书你也读过;更不要以工期紧,学英语来不及、看资料来不及为借口,要求别人替你做什么,那不如干脆说你现在要买别墅,来不及挣那么多钱,让别人替你挣算了。高手可以为你指路,但高手不能替你干活,高手不欠你什么,指点迷津就是最有价值的帮助。有时有人问我一个问题,我告诉他电子书里有解答,并告诉他具体在哪一章哪一节,他却说“懒得看,你给我说说吧”,我的反应只能是晕倒。还有的干脆说让我帮他编一个程序。如果你编程过程中遇到难点,我帮你解决是可以的,让我整个替你编?天!你又不是我老板。高手愿意告诉你如何渡过一条湍急的河流,但高手不能把你背在身上替你走路。
学会加减乘除再学二次方程,不要好高骛远——
如果你有人问你“去天安门广场怎么走”,你告诉他向东走,第二个红路灯左转就到了。这已经很详尽了吧?可他接着问你“东是什么意思?左是什么意思?红绿灯又是什么东西?”,你会是什么反应?估计除了晕倒和逃跑就没有别的选择了。在请求别人帮助之前,应该判断一下你的问题的性质和自己的能力,不要好高骛远,比如你看ifix的演示系统看不懂,那说明你基础知识能力太弱,还不到学习这些东西的时候,除了继续学习基础,没人帮得了你。我建议,在学会站立之前,不要问任何关于跑步的问题。如果你得到一段代码,其中有一两处不是很理解,你可以请教别人,也许可以得到解答,但如果绝大部分看不懂,你最好是再提高一下编程水平,而不要拿着它去麻烦别人,因为没人能帮得了你。就像一个小学还没度完的人,让别人给他讲解微积分,谁能给他讲清楚?没有人!
你的问题我不明白,提问也需要水平——
至于有效的获得别人的帮助,也是需要技巧的。提问也需要水平,比如,提问题要问一个点,不要问一个面。比如你问:如何修改历史笔的颜色。其实这种问题你应该自己查帮助文件,但我还是会告诉你相关的属性是什么。因为只需要回答一句话。而如果你问我:如何使用图表。我也能回答你一句话:去看电子书吧。如果我不这样回答,我就只好当着你的面写出一篇关于图表的教程,那我不是有病吗。还有就是语言表达能力,我经常遇到这种情况:一个朋友提出一个问题,我实在不能确判断到底出了什么情况,只好反过来问他好几个问题,然后再把他的回答总结成一段文字,让他确认,他说没错,就是这个问题。为什么不能一开始就写出这样一段清晰明了的表述呢?很明显,这个人的语言表达能力太差,不懂得如何把一件事情原原本本从头到尾的讲个明白。有时,我看到一个不明所以的问题,甚至不愿意去管,因为我懒得为了知道他到底在问什么,而反问他十个问题。还有一种类似的情况,比如,有人问:我的ifix和PLC接不通是怎么回事?我真想说,鬼才知道呢!你用的什么PLC、什么驱动、如何配置的、你都做过什么测试,通讯不成功在各环节上的现象……等等一系列问题,你不说出来,别人怎么猜得到?不了解这些基本情况如何帮你判断?想帮助你的人只好反过来向你询问所有这些问题。也许不是表达能力的问题,而是因为懒。你懒,把别人累死!希望大家在这方面多做锻炼提高。
免费家教——
其实,不用上网,不用打电话,你手里就有一个现成的老师,那就是ifix提供的演示系统,它是一个非常好的工程样板,把它研究透彻,你就一定是高手了。如果演示系统未研究明白,其他高手做的、比演示系统还要复杂、高级的工程你也没必要去看,你也根本看不懂。那么什么时候开始研究它呢?从一开始!当然你不可能一上来就把演示系统完全看懂,但随着学习的深入,你会越来越有收获。最初你只需要看一看它的动画效果是如何实现的,当你编程水平提高以后,你就可以研究一下那些灵活的高级功能是如何编写的,最后你还可以学习功能划分、画面布局等设计方面的思想。一定要循序渐进,一步一个脚印,捷径是绝对不存在的(花大价钱顾一个全能型家教,手把手的教你一年,勉强可以算是一种捷径)。
尾声:
这七步曲算是演奏完了,但有些话还要说一下。首先,边学边练是必须的,实际动手,会有助于理解并加深印象。再有,不管你是不是想要达到登峰造极的境界,在学习上超前一些,总是有好处的,不要太懒,这点很重要。用不到的先不学,用到了临时再学。这似乎是大家的共性,我也不例外,但这其中也是又区别的。比如你平时根本不用ifix,所以根本不学,突然有客户要求你用,你只好现上轿现扎耳朵眼,开始攻关。这很正常。但是如果你平时就使用ifix,但是对于没有用到过的功能一概不闻不问,就是非常错误的,等到有一天你必须用了,才去研究,自然会感觉时间紧张,如果研究毫无进展,你只好向别人求助,有人能帮你,那算你命好,如果没有呢?说服客户去掉这个功能?还是等着客户骂老板、老板再骂你?你怎么选择是你的事,但可以肯定,没有一种结果是令你开心的。与其如此,不如平时多看看资料、多研究研究,至少大概了解一下ifix这个工具能做什么、怎么去做,这种研究不需要很精深,但至少要留一个大概印象。一旦遇到着需求,能迅速找到解决的途径,结果是你、老板、客户全都好,何乐而不为呢?
本想简单说几句的,没想到写了这么长,还真挺累的。如果你觉得这篇文章对你很有帮助,那么就找机会请我喝一杯吧。
虽然已经说了不少,但还有种言尤未尽的感觉,如果有哪位朋友想指正或补充的,请留言。大家共同把这篇东西完善一下。还有,文章的题目起的不是很好,开始想叫《ifix学习宝典》比较有气派,可是一看见“宝典”俩字儿,我就总想起那个需要把那个割掉才能练的《葵花宝典》,不吉利,不用了。换成《学习指南》吧,又太土;现在这个也不好,但总算醒目明了,凑合了吧,谁有更好的,我换一个。