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