|
这段时间有比较多的人问到我这个问题,自己想学,又怕学不会,到底要具备怎么样的基础才可以学习NX二次开发,今天我就简单梳理一下,帮助想学的人参考。
4 f& f' f/ f9 Y$ y l% K; E/ X一、二次开发有什么用7 ]& H/ d. O& y
高大上的词语,我也不会说。一句话:它能提高工作效率,规范设计。大公司都在搞标准化,很多人都讨厌,你可知道你讨厌的同时,你就是未来那个被淘汰的人。当某一类型的零件标准化到一定的程度时,就可以工具化了,然后任何刚毕业的学生,经过不到一周的培训就可以上岗作业,余下留几个核心的技术老员工,就可以了,你就可能失业了。所以,当你在报怨你薪水低的时候,也应该认清自己做的工作到底有多少技术含量。
8 a4 w* \4 `# j/ j( R- p二、为什么要来学二次开发) v- v6 p' B I3 I: [! n
网上外挂一大把,为什么自己还要学?我的看法有两点:
( y" t$ Q5 i2 r) ] 1、别人开发的,不一定是你想要的,一套外挂里面你可能就那么两三个用到,并且功能还不一定完全满足你。8 v7 W0 z8 \& z2 m
2、提高自己未来竞争能力。找过工作的人都知道,两个能力差不多的面试者,公司一般选那个学历高的,同样的道理,两个设计工程师能力差不多,公司肯定会选这个稍懂点二次开发的,毕竟他能为团队提高工作效率。+ T" K8 o. b, G% e- }' P
建议:不是计算机专业毕业的,不建议把二次开发作为专职。专职需要的能力会更高一些,理论是这样,实际现实社会可能也不一定是这样的,毕竟一个项目下来,也不是你一个人做,是一个团队,搞不好,那些团队员工的开发能力还不如你。所以根据自己的情况吧,有兴趣,年轻,有机遇,想搞专职也是可以考虑滴。3 \. D4 a9 z7 h3 Q- q$ V
三、学习二次开发需要的基础
# ]5 |3 D; D8 i; G# @$ k- R; l$ s8 B 1、计算机操作基础
# {, U4 B$ c* p1 ~; p 如果你连电脑文件扩展名怎么修改,怎么显示出来,怎么打开.dat类型文件,怎么修文件的只读修性,复制和剪切都分不清等等,这类基础到掉渣的问题,都操作不对的话,我就建议,不要学了,早点回家带娃。' p V/ ^8 \ x$ ^
2、思维能力9 B: ^0 S& Z2 O% |- e: ]8 a2 x( K
如果你是一个喜欢钻牛角尖,做事没有什么逻辑能力的人,早点放弃,不要学了,至少不要来跟我学。
9 X+ T2 O! q2 y" L, [ 3、心理素质/ b( z+ f2 Z- s4 T9 {' N
有一种人,巴不得搞两天,就能搞个工具出来。不是说没有可能,如果你不是那种智商超高,或者有一定基础的话,就不要想了。学习要坚持,又不想花时间学,记忆力又不行,又不愿意做笔记,也不愿意动手,就想过段时间就会了。这种人也不要学了,没有人愿意教你。8 _% N: |0 ?" T8 M
4、NX基础: S- d4 `+ P1 c& Z" g# |
想学二次开发,得有一定的NX软件操作基础,这个基础,是根据你未来要开发哪方面工具有关的,比如你想搞加工方面的二次开发,你就得对NX加工模块比较熟悉。大部分人都是先从建模开始的,所以建模模块,常用的那几十个命令,你总得会吧?一些软件的基本操作,你总得知道吧?不知道的话,也可以学,只是花的时间久点,然后要多问。3 h. _& {! L* Q) Y' [
另外:对NX软件相关对象要有一定的认识,比如什么叫实体,片体,基准,面,边,轴,线,点,特征,部件,组件,过滤,选择意图等等,这些名词对应NX里面是什么东西,你得知道一点。如果你连特征和实体,片体,都区分不了,那学二次开发,就得花更多的时间学会。
' {$ [/ a3 e; i/ Y/ E( K 5、英语水平
/ E/ T! w9 t$ z$ ~9 y3 @ 英语水平,这是硬伤,大部分男的,都不怎么样,我英语也是烂得一塌糊涂。英语的话,常见单词你认识就可以了,不认识也没有关系,现在工具发达,自己用工具翻译,只是学习的进度会慢一点而已。像body feature face edge sheet part block 等等,这样的常见单词,你能知道,就差不多了。+ F* r! S: f Z5 U8 Y
6、计算编程语言
2 k C1 `6 O' j6 \3 @7 p 二次开发时,可以用很多编程语言的,C C++ JAVA VB python KF GRIP 这些都可以,比较流行的是用C与C++,所以这里说一下这方面要达到什么样的基础。
3 ~6 `" ^7 w# U. G$ j( R0 ?" z" h 只是上过大学,学的是理工科,应该是学过C或者C++的,你能当时考极格,来搞二次开发,绝对不是问题。
% o8 ~+ ~; E7 Y) R+ U9 P 不需要你C与C++里面所有的知识都会,也不是会了所有的,就会二次开发了;/ `( o- ]" `$ f
关于C语言里面,要掌握的基础知识如下:(只需要学这些)! q4 |8 j0 S! L* } a! i2 m a
① 学会基本数据类型。这里包括,什么是常量,什么是(全局)变量,变量的初始化,赋值,枚举类型,什么是一维数组,二维数组,包括它们的赋值,表达式,+ - * / 还有与或非是怎么表达的,了解一下,运算优先级。(暂时不要学进制的转换,很少用到的。)
, g" ?! Y5 g% Z* A 比如:整型,浮点型,字符串怎么定义与赋值,浮点型怎么转成字符串等,这些基础问题要会。(不看书,可以网上搜的)
4 U" J6 e p l2 @) X: F ② 流程控制语句。 包括条件语句,循环语句,(转向语句,可以不学)。具体讲,就是要学会 if else for循环 while 以及do while的用法。- S0 @) }9 P- U3 n$ S
③ 了解一下,结构体是怎么获取里面的内容,这个只要了解一下就可以了,不学也可以,在二次开发时,直接.(点)就可以了。这就是结论性的东西,不是IT专业的,你只要记结论性的东西,会用就可以了,一定要搞懂为什么,我的名言就是:为什么就是规定。
! W! Q, V. q- j' z9 N8 t ④ 尽量学会自定义函数。其实也没有难度,看书,很坑,几句话就可以总结的。6 A; {/ a% J l" b% u3 z$ ^* n0 b
⑤ 了解一下指针的概念及类的概念。不用深入,连搞IT的人都说指针很难的。你只要长相是什么样子的是指针,然后知道有取址这样一种说法就可以了。
" c( h* j4 [+ o9 Y$ U$ h1 I, X 暂时,就学这么多C与C++的基础就可以了。一般相关的书,第一章,都是讲计算机发展史,第二章,就会讲数据类型,第三章就是流程控制语句,后面就是函数之类的,买一本书,大概看前面五六章的样子就可以了,切记:后面的先不要看。
- j% i( K) ?$ H4 J" T/ I 先入门,有问题,跟别人一起讨论,自己也要学会网络搜索,就会发现,这个很简单。
: N5 K! a5 O0 X! W8 U$ w! C ============================1 E! y6 z t: F r5 ~3 `
英文单词,不用背的,只记住前面几个字母就可以了,因为编程的时候,输前面几个字母,下面可以直接选的,VS软件自带这样的功能。- v; V9 O4 [6 q. r: e5 u
只要你具备上面这些基本知识,你只差一步,就是学会查UFUN与NXOPEN C++的相关帮助资料,如何看懂它,然后用它。这些都是有规律和方法的,并且不用记的规律。
0 j7 m+ B3 M# M: i" ]9 z 其实,以上这么多,在我眼里,都不是问题,问题就两点:① 有没有兴趣学;② 是否愿意花时间学。另:学习最好带目的性,有些人今天在网上看到一个这个,想搞一下,没有搞出来,明天又看到另外一个东西,想搞一下,又没有搞出来,结果过了几个月,啥都没有搞出来。9 P# _" I: B) Y8 O0 {
差不多,就这么多了,准备好了,就可以来跟我学了:
# M' ` O0 m n+ ~ http://www.chuanke.com/3405460-153615.html/ r: A! k8 y F4 |: m9 P1 R& ^4 w
NXOPEN技术交流群 3738850224 T/ f5 K$ }( w
|
|