你好,我是一线java程序员,但我不是计算机专业的,我也是文科专业的。
很明确的告诉您,如果做普通的程序开发,一般的数学知识就够了,如果涉及核心算法的开发,那就要看数据结构和计算能力了。
不过做那些算法的一般都是行业的业务人员,人家本身可能就是数学系或者工科专业的,你所要做的就是将他们告诉你的运算方法翻译成程序语言。仅此而已。
英文是必须的,java的项目和框架很多都是开源的,一般要深入了解都必须下载人家原本的API和源代码,或者常常关注人家的网站。别指望老美给你写最新的中文帮助,也别想着中国会有如APACHE那样的庞大开源组织。
所以的所以 我把现在的从业情况告诉你 你自己看着办咯!
祝你学习顺利哦~~~!
从底层硬件到上层应用,嵌入式软件的开发可以分为哪几类?
一、嵌入式系统的概念
着重理解“嵌入”的概念
主要从三个方面上来理解。
1、从硬件上,将基于CPU的处围器件,整合到CPU芯片内部,比如早期基于X86体系结构下的计算机,CPU只是有运算器和累加器的功能,一切芯片要造外部桥路来扩展实现,象串口之类的都是靠外部的16C550/2的串口控制器芯片实现,而目前的这种串口控制器芯片早已集成到CPU内部,还有PC机有显卡,而多数嵌入式处理器都带有LCD控制器,但其种意义上就相当于显卡。比较高端的ARM类Intel Xscale架构下的IXP网络处理器CPU内部集成PCI控制器(可配成支持4个PCI从设备或配成自身为CPI从设备);还集成3个NPE网络处理器引擎,其中两个对应于两个MAC地址,可用于网关交换用,而另外一个NPE网络处理器引擎支持DSL,只要外面再加个PHY芯片即可以实现DSL上网功能。IXP系列最高主频可以达到1.8G,支持2G内存,1G×10或10G×1的以太网口或Febre channel的光通道。IXP系列应该是目标基于ARM体系统结构下由intel进行整合后成Xscale内核的最高的处理器了。
2、从软件上前,就是在定制操作系统内核里将应用一并选入,编译后将内核下载到ROM中。而在定制操作系统内核时所选择的应用程序组件就是完成了软件的“嵌入”,比如WinCE在内核定制时,会有相应选择,其中就是wordpad,PDF,MediaPlay等等选择,如果我们选择了,在CE启动后,就可以在界面中找到这些东西,如果是以前PC上将的windows操作系统,多半的东西都需要我们得新再装。
3、把软件内核或应用文件系统等东西烧到嵌入式系统硬件平台中的ROM中就实现了一个真正的“嵌入”。
以上的定义是我在6、7年前给嵌入式系统下自话侧重于理解型的定义,书上的定义也有很多,但在这个领域范围内,谁都不敢说自己的定义是十分确切的,包括那些专家学者们,历为毕竟嵌入式系统是计算机范畴下的一门综合性学科
二、嵌入式系统的分层与专业的分类。
嵌入式系统分为4层,硬件层、驱动层、操作系统层和应用层。
1、硬件层,是整个嵌入式系统的根本,如果现在单片机及接口这块很熟悉,并且能用C和汇编语言来编程的话,从嵌入式系统的硬件层走起来相对容易,硬件层也是驱动层的基础,一个优秀的驱动工程师是要能够看懂硬件的电路图和自行完成CPLD的逻辑设计的,同时还要对操作系统内核及其调度性相当的熟悉的。但硬件平台是基础,增值还要靠软件。
硬件层比较适合于,电子、通信、自动化、机电一体、信息工程类专业的人来搞,需要掌握的专业基础知识有,单片机原理及接口技术、微机原理及接口技术、C语言。
2、驱动层,这部分比较难,驱动工程师不仅要能看懂电路图还要能对操作系统内核十分的精通,以便其所写的驱动程序在系统调用时,不会独占操作系统时间片,而导至其它任务不能动行,不懂操作系统内核架构和实时调度性,没有良好的驱动编写风格,按大多数书上所说添加的驱动的方式,很多人都能做到,但可能连个初级的驱动工程师的水平都达不到,这样所写的驱动在应用调用时就如同windows下我们打开一个程序运行后,再打开一个程序时,要不就是中断以前的程序,要不就是等上一会才能运行后来打开的程序。想做个好的驱动人员没有三、四年功底,操作系统内核不研究上几编,不是太容易成功的,但其工资在嵌入式系统四层中可是最高的。
驱动层比较适合于电子、通信、自动化、机电一体、信息工程类专业尤其是计算机偏体系结构类专业的人来搞,除硬件层所具备的基础学科外,还要对数据结构与算法、操作系统原理、编译原理都要十分精通了解。
3、操作系统层,对于操作系统层目前可能只能说是简单的移植,而很少有人来自已写操作系统,或者写出缺胳膊少腿的操作系统来,这部分工作大都由驱动工程师来完成。操作系统是负责系统任务的调试、磁盘和文件的管理,而嵌入式系统的实时性十分重要。据说,XP操作系统是微软投入300人用两年时间才搞定的,总时工时是600人年,中科院软件所自己的女娲Hopen操作系统估计也得花遇几百人年才能搞定。因此这部分工作相对来讲没有太大意义。
4、应用层,相对来讲较为容易的,如果会在windows下如何进行编程接口函数调用,到操作系统下只是编译和开发环境有相应的变化而已。如果涉及Jave方面的编程也是如此的。嵌入式系统中涉及算法的由专业算法的人来处理的,不必归结到嵌入式系统范畴内。但如果涉及嵌入式系统下面嵌入式数据库、基于嵌入式系统的网络编程和基于某此应用层面的协议应用开发(比如基于SIP、H.323、Astrisk)方面又较为复杂,并且有难度了。
三、目标与定位。
先有目标,再去定位。
学ARM,从硬件上讲,一方面就是学习接口电路设计,另一方面就是学习汇编和C语言的板级编程。如果从软件上讲,就是要学习基于ARM处理器的操作系统层面的驱动、移植了。这些对于初学都来说必须明确,要么从硬件着手开始学,要么从操作系统的熟悉到应用开始学,但不管学什么,只要不是纯的操作系统级以上基于API的应用层的编程,硬件的寄存器类的东西还是要能看懂的,基于板级的汇编和C编程还是要会的。因此针对于嵌入式系统的硬件层和驱动程的人,ARM的接口电路设计、ARM的C语言和汇编语言编程及调试开发环境还是需要掌握的。
因此对于初学者必然要把握住方向,自己的目标是什么,自己要在那一层面上走。然后再着手学习较好,与ARM相关的嵌入式系统的较为实际的两个层面硬件层和驱动层,不管学好了那一层都会很有前途的。
如果想从嵌入式系统的应用层面的走的话,可能与ARM及其它体系相去较远,要着重研究基嵌入式操作系统的环境应用与相应开发工具链,比如WinCe操作系统下的EVC应用开发(与windows下的VC相类似),如果想再有突破就往某些音视频类的协议上靠,比如VOIP领域的基于SIP或H.323协议的应用层开发,或是基于嵌入式网络数据库的开发等等。
对于初学者来讲,要量力而行,不要认为驱动层工资高就把它当成方向了,要结合自身特点,嵌入式系统四个层面上那个层面上来讲都是有高人存在,当然高人也对应的高工资,我是做硬件层的,以前每月工资中个人所得税要被扣上近3千大元,当然我一方面充当工程师的角色,一方面充当主管及人物的角色,两个职位我一个人干,但上班时间就那些。硬件这方面上可能与我PK的人很少了,才让我拿到那么多的工资。
四、开发系统选择。
很多ARM初学者都希望有一套自己能用的系统,但他们住住会产生一种错误认识就是认为处理器版本越高、性能越高越好,就象很多人认为ARM9与ARM7好,我想对于初学者在此方面以此入门还应该理智,开发系统的选择最终要看自己往嵌入式系统的那个方向上走,是做驱动开发还是应用,还是做嵌入式系统硬件层设计与板级测试。如果想从操作系统层面或应用层面上走,不管是驱动还是应用,那当然处理器性能越高越好了,但这个东西自学,有十分大的困难,不是几个月或半年或是一年二年能搞定的事。
在某种意义上请,ARM7与9的差别就是在某些功能指令集上丰富了些,主频提高一些而已,就比如286和386。对于用户来讲可能觉查不到什么,只能是感觉速度有些快而已。
ARM7比较适合于那些想从硬件层面上走的人,因为ARM7系列处理器内部带MMU的很少,而且比较好控制,就比如S3C44B0来讲,可以很容易将Cache关了,而且内部接口寄存器很容易看明白,各种接口对于用硬件程序控制或AXD单步命令行指令都可以控制起来,基于51单片机的思想很容易能把他搞懂,就当成个32位的单片机,从而消除很多51工程师想转为嵌入式系统硬件ARM开发工程师的困惑,从而不会被业界某此不是真正懂嵌入式烂公司带到操作系统层面上去,让他们望而失畏,让业界更加缺少这方面的人才。
而嵌入式系统不管硬件设计还是软件驱动方面都是十分注重接口这部分的,选择平台还要考察一个处理器的外部资源,你接触外部资源越多,越熟悉他们那你以后就业成功的机率就越高,这就是招聘时所说的有无“相关技能”,因为一个人不可能在短短几年内把所有的处理器都接触一遍,而招聘单位所用的处理器就可能是我们完全没有见过的,就拿台湾数十家小公司(市价几千万)的公司生产的ARM类处理器,也很好用,但这些东西通用性太差,用这些处理器的公司就只能招有相关工作经验的人了,那什么是相关工作经验,在硬件上讲的是外围接口设计,在软件上讲是操作系统方面相关接口驱动及应用开发经验。我从业近十年,2000年ARM出现,我一天始做ARM7,然后直接跑到了Xscale(这个板本在ARM10-11之间),一做就是五年,招人面试都不下数百人,在这些方面还是深有体会的。
我个人认为三星的S3C44b0对初学者来说比较合适,为什么这么说哪?因为接口资源比较丰富,技术成熟,资料较多,应该十分适合于初学者,有问题可能很容易找人帮且解决,因为大多数人都很熟悉,就如同51类的单片机,有N多位专家级的人物可以给你帮忙,相关问题得以很快解答,所然业界认为这款ARM都做用得烂了,但对于初学者来,就却是件好事。
因此开发系统的选择,要看自己的未来从来目标方向、要看开发板接口资源、还要看业界的通用性。
五、如何看待培训。
首先说说我自己,我目前从业近十年,与国内嵌入式系统行业共同起步,一直站在嵌入式系统行业前沿,设计过多款高端嵌入式系统平台产品并为众多公司提供过解决方案,离职前为从事VOIP的美资公司设计IP-PBX,历任项目经理、项目主管、技术总监、部门经理,积累众多人脉,并集多年经验所得,考虑到学生就业与公司招人的不相匹配,公司想招人招不到,而学生和刚毕业的工程师想找份工作也不太容易,于此力创知天行科技有限公司,开展嵌入式系统教育培训。
因一线的科研人员和一线的教师不相接触,导至国内嵌入式人才缺乏,国外高校的技术超前于业界公司,而国内情况是业界公司方面的嵌入式系统技术要远远领先于高校。为架构业界与高校沟通的桥梁,把先进技能带给高校学子,为学生在就业竞争中打造一张王牌,并为业界工程师快速提升实现自我创造机遇,我就这样辞去了外企年薪20多万的职位,做嵌入式系统方面的培训了。
对于培训来讲,是花钱来买时间,很多工程师都喜欢自己学,认为培训不值,这也是有可能的,纯为赚钱的培训当然不会太有价值,但对于实力型的培训他们可能就亏大了,有这样一笔帐不知他们算过没有,如果一个一周的培训,能带给他们自学两年后才能掌握的知识,在培训完后他们用三个月到半年时间消化培训内容,这样他会省约至少一年半的时间来学其它的或重新站在另一个高度上工作,那么他将最迟一年后会拿到他两年后水平所对应的工资,就是在工资与水平对应的关系上比同批人缩短一年,每月按最少1千计,再减去培训费用至少多1.0万,同时也省了一年时间,不管是休闲也好,再继续提高也好,总之是跑到了队伍的前面了。
另一层面上讲,对于新人的培训相当于他们为自己提前买了份失业保险,有师傅会带领他们入道,我今年暑假时班里最年轻的一个学生是大二的,今年才上大三,这学期才刚学单片机,但现在ARM方面的编程工作已经搞得有声有色了,再过一年多毕业,他还会失业吗?
再者通过培训,你可以知道很多业界不为常人所知的事,同时也为自己找了个师傅,就比如说,两个工程师分别用S3C2410和PXA255来做手持设备,同样两人都工作四年,再出去找工作,两人工资可能最多可相差一倍,为什么?这就是业界不为常人所知的规则,2410属于民品,被业界用烂了,做产品时成本特敏感,当然也对人才成本敏感了,PXA255是intel的东西,一个255 CPU能买三个2410,一直被业界定义为贵族产品,用的公司都是大公司或为军方服务的公司,不会在乎成本,只要把东西做好,一切都好说,但这方面做的人也少啊,因为开发系统贵啊。
对于说为自已找了个好师傅,我想是这样的,因为同级工程师间存在着某此潜在的竞争关系,有很多人不愿意把自己知道的东西教给别人,这意味着他将要失业,就是所说的教会徒弟,饿死师傅,但对于我们这些人就不存在这样的关系了,我是在嵌入式系统平台设计上走到了一定程序,目前在国内这块的技术上已经是自己很难再突破自己,因此很多东西我对大家都是OPEN的,就比如说下面那部分关于接口设计中所提到的时序接口东西,我要是不讲,却使是高级硬件工程师我想也几乎只有10%的人能知道吧。
六、成为高级嵌入式系统硬件工程师要具备的技能。
首先我声明,我是基于嵌入式系统平台级设计的,硬件这个方向我相对来讲比较有发言权,如果是其它方面所要具备的基本技能还要和我们培训中心其它专业级讲师沟通,或去网站看看www.zt-training.com。他们的方面上我只能说是知道些,但不是太多,初级的问题也可以问我。
对于硬件来讲有几个方向,就单纯信号来分为数字和模拟,模拟比较难搞,一般需要很长的经验积累,单单一个阻值或容值的精度不够就可能使信号偏差很大。因此年轻人搞的较少,随着技术的发展,出现了模拟电路数字化,比如手机的Modem射频模块,都采用成熟的套片,而当年国际上只有两家公司有此技术,自我感觉模拟功能不太强的人,不太适合搞这个,如果真能搞定到手机的射频模块,只要达到一般程度可能月薪都在15K以上。
另一类就是数字部分了,在大方向上又可分为51/ARM的单片机类,dsp类,FPGA类,国内FPGA的工程师大多是在IC设计公司从事IP核的前端验证,这部分不搞到门级,前途不太明朗,即使做个IC前端验证工程师,也要搞上几年才能胜任。dsp硬件接口比较定型,如果不向驱动或是算法上靠拢,前途也不会太大。而ARM单片机类的内容就较多,业界产品占用量大,应用人群广,因此就业空间极大,而硬件设计最体现水平和水准的就是接口设计这块,这是各个高级硬件工程师相互PK,判定水平高低的依据。而接口设计这块最关键的是看时序,而不是简单的连接,比如PXA255处理器I2C要求速度在100Kbps,如果把一个I2C外围器件,最高还达不到100kbps的与它相接,必然要导致设计的失败。这样的情况有很多,比如51单片机可以在总线接LCD,但为什么这种LCD就不能挂在ARM的总线上,还有ARM7总线上可以外接个Winband的SD卡控制器,但为什么这种控制器接不到ARM9或是Xscale处理器上,这些都是问题。因此接口并不是一种简单的连接,要看时序,要看参数。 一个优秀的硬件工程师应该能够在没有参考方案的前提下设计出一个在成本和性能上更加优秀的产品,靠现有的方案,也要进行适当的可行性裁剪,但不是胡乱的来,我遇到一个工程师把方案中的5V变1.8V的DC芯片,直接更换成LDO,有时就会把CPU烧上几个。前几天还有人希望我帮忙把他们以前基于PXA255平台的手持GPS设备做下程序优化,我问了一下情况,地图是存在SD卡中的,而SD卡与PXA255的MMC控制器间采用的SPI接口,因此导致地图读取速度十分的慢,这种情况是设计中严重的缺陷,而不是程序的问题,因此我提了几条建议,让他们更新试下再说。因此想成为一个优秀的工程师,需要对系统整体性的把握和对已有电路的理解,换句话说,给你一套电路图你终究能看明白多少,看不明白80%以上的话,说明你离优秀的工程师还差得远哪。其次是电路的调试能力和审图能力,但最最基本的能力还是原理图设计PCB绘制,逻辑设计这块。这是指的硬件设计工程师,从上面的硬件设计工程师中还可以分出ECAD工程师,就是专业的画PCB板的工程师,和EMC设计工程师,帮人家解决EMC的问题。硬件工程师再往上就是板级测试工程师,就是C语功底很好的硬件工程师,在电路板调试过程中能通过自已编写的测试程序对硬件功能进行验证。然后再交给基于操作系统级的驱动开发人员。
总之,硬件的内容很多很杂,硬件那方面练成了都会成为一个高手,我时常会给人家做下方案评估,很多高级硬件工程师设计的东西,经常被我一句话否定,因此工程师做到我这种地步,也会得罪些人,但硬件的确会有很多不为人知的东西,让很多高级硬件工程师也摸不到头脑。
那么高级硬件件工程师技术技能都要具备那些东西哪,首先要掌握EDA设计的辅助工具类如Protel\ORCAD\PowperPCB\Maplux2\ISE、VDHL语言,要能用到这些工具画图画板做逻辑设计,再有就是接口设计审图能力,再者就是调试能力,如果能走到总体方案设计这块,那就基本上快成为资深工程师了。
硬件是要靠经验,也要靠积累的,十年磨一剑,百年磨一针。
零基础如何学js?
首先明,确怎样才能学好wbe前端开发:
现在很多人喜欢自学web前端开发,但是一个人的能力毕竟是有限的,所以我自己建了一个裙,它的前面是4 九 4,中间就是4 〇 6 ,最后就是9 三 4 。欢迎想要学习的小伙伴加入我们学习哦。如果不是来学习的就不要加了,加了也是浪费时间。
Web前端的学习路线
1.第一阶段——HTML的学习
超文本标记语言(HyperText Mark-up Language 简称HTML)是一个网页的骨架,无论是静态网页还是动态网页,最终返回到浏览器端的都是HTML代码,浏览器将HTML代码解释渲染后呈现给用户。因此,我们必须掌握HTML的基本结构和常用标记及属性。
HTML 的学习是一个记忆和理解的过程,在学习过程中可以借助Dreamweaver的“拆分”视图辅助学习。在“设计”视图中看效果,在“代码”视图中学本质,将各种视图的优势发挥到极致,这种对照学习的方法弥补了单纯识记HTML标签和属性的枯燥乏味,想必对各位初学的小盆友们来说必定是极好的!
在学习了HTML之后,我们只是掌握了各种“原材料”的制作方法,要想盖一幢楼房就还需要把这些“原材料”按照我们设计的方案组合布局在一起并进行一些样式的美化。
2.第二个阶段——CSS的学习
CSS是英文Cascading Style Sheets的缩写,叫做层叠样式表,是能够真正做到网页表现与内容分离的一种样式设计语言。相对于传统HTML的表现而言其样式是可以复用的,这样就极大地提高了我们开发的速度,降低了维护的成本。
同时CSS中的盒子模型、相对布局、绝对布局等能够实现对网页中各对象的位置排版进行像素级的精确控制。通过此阶段的学习,我们就可以顺利完成“一幢楼房”的建设。
“楼房”建设完成之后,我们可以交给用户使用,但是如果想让用户获得更佳的体验,我们还可以对“楼房”进行更深一步的“装修”,让它看起来更“豪华”一些。
3.第三个阶段——Java的学习
Java是一种在客户端广泛使用的脚步语言,在Java当中为我们提供了一些内置函数、对象和DOM操作,借助这些内容我们可以来实现一些客户端的特效、验证、交互等,使我们的页面看起来不那么呆板,屌丝瞬间逆袭高富帅!有么有?
此时,也许你还沉浸在Java给你带来的惊喜之中,但你的项目经理却突然对你大吼道
“这个效果在××浏览器下不兼容,重新搞……”
“不兼容?”瞬间石化了有木有?
“我擦,坑爹啊!那可是花了我一个晚上写了几百行代码搞定的啊,吐血了都!”
Java的兼容性和复杂性有时候的确让我们头疼,还好有“大神”帮我们做了封装。
5.第四个阶段——jQUery的学习
jQuery 是一个免费、开源的轻量级的Java库,并且兼容各种浏览器(jQuery2.0及后续版本放弃了对IE6/7/8浏览器的支持),同时现在有很多基于jQuery的插件可供选择,这样在我们实现一些丰富的动态效果时更方便快捷,大大节省了我们开发的时间,提高了开发速度,这也充分体现了其 write less,do more的核心宗旨。这个Feel倍儿爽!有么有?
“豪华大楼”至此拔地而起,但是每天这样日复一日,年复一年的盖楼,好繁琐!能不能将大楼里面每一个单独部件模块化,当需要盖楼时就像堆积木一样组合在一起,这样岂不是爽歪歪?可以实现吗?答案是肯定的。
这种思想在Web前端开发中也是适合的,于是乎就出现了各种前端框架,在这里推荐给大家的是Bootstrap。
Bootstrap是Twitter推出的一个开源的用于前端开发的工具包,是一个CSS/HTML框架,并且支持响应式布局。一经推出后颇受欢迎,一直是GitHub上的热门开源项目。
在项目开发过程中,我们可以借助Bootstrap提供的CSS样式、组件、Java插件等快速的完成页面布局和样式设置,然后再有针对性的微调样式,这样基于框架进行开发大大缩短了开发周期。站在巨人的肩膀上就是爽!
Web前端的学习建议
最后给大家聊聊在学习Web前端中的一些建议和方法。
在CSS布局时需要注意的一个问题是很多同学缺乏对页面布局进行整体分析,不能够从宏观上对页面中盒子间的嵌套关系进行把握,就急于动手去做,导致页面中各元素间的关系很混乱,容易出现盒子在浮动时错位等情况。建议大家在布局时采用“自顶向下,逐步细化”的思想,先用几个盒子将页面从整体上划分,然后逐步在盒子中继续嵌套盒子。
“君子生非异也,善假于物也”,在学习的过程中还要多浏览一些优秀的网站,善于分析借鉴其设计思路和布局方法,见多方能识广,进而才可以融会贯通,取他人之长为我所用。
同时还要善于使用Firebug这个利器。Firebug一方面可以在我们学习过程中帮助我们调试自己的页面,另一方面我们可以使用Firebug方便地查看、分析别人网站的源代码,“偷”也是一种技能!
每个人的成长与基础不一样,结合自己的实际情况,在执行。还是重复一下,前端的核心是js。css不难,但需要来积累。对前端我是这么看的:
css就像一瓶酒,得品。
html,css总共就那些标签跟选择器属性什么的,但是要写一个有扩展性,健壮性或维护性的页面不容易。现在写页面基本条件反射,不是如何快速的完成,而是思考如果有界面需求修改,怎么在修改代码最少的情况下快速完成需求任务。这是对前端耐力,体力,智力的三重考验。
js就像一把剑,得磨。
js刚开始只是为了较验,随便技术社会的发展,承担的角色越来越重,刚开始玩玩jQuery感觉已经会js了,其实只是冰山一角。随着对js的了解越来越多,他即变态又可爱,即好玩又难控,即有很多兼容问题,但解决兼容是我们基本生存之道。从ajax到jsmvc一路走一路看,高载潮一浪高过一浪
人生就是一场梦,得作。
技术只是生活的一部分,曾经雄心斗志,如今低头写码。改变能改变的,接受不能改变的。人生有限,兄争朝夕啊。人生学习的态度是:不急不躁,不快不慢。持之以恒,相信自己。不求能改变世界,但求能改变自己的生活。不求健步如飞,但求一步一脚印。感谢磨难,他使我们内心更为坚强。感谢挫折,他使我们不断的成长,感谢bug,他使我们的思维更加深邃。感谢前端,他使我们更加的相信,撑起一片天空需要十八般武艺。
.net转Android 开发
可以很简单的。
android 的学习 你在百度文库上就有 android开发教程
基本看看就可以了
我是做android 开发的
感觉没什么内容 基本上遇到问题 都能在 google 百度 上能找到答案。
还有 随着项目的开发 很多问题 都会 迎刃而解了
介绍一个男人成功前必读的几本书.
没有所谓的"必读"的书.那些真正"成功"与所谓的"成功"人士,也不定都读过啥书,但他们至少都有下面的东西:
大脑(不必说那些文盲也成功的故事了吧?想成功随即应变的能力一定要强)
运气(有才能的人多了是了,但在胜利果实还没看到之前就挂掉的人多了是了,而且不能强求)
手腕(这年头不能自己一个人去干事业,必须得是组建/加入一个团体里才能发挥最大力量,不能融合其中啥用都没有)
该说的废话都说完了.
至于"书",仁者见仁,日本商界人士不少的很推崇<三国演义>,发动一战的德国皇帝战败后看到德文译本的<孙子兵法>能感慨万千,金庸小说<鹿鼎记>的韦小宝偶尔还能靠说书人讲的故事.
最后,结合以上三个主要的方面,先把自己给定位,有领导才能的自己组织人干事业去,没领导才能还想成功,那就加进个优秀的组织去.要看书就看想奋斗方面的书去.用不到的内容就别去凑那热闹去学去看去.
不要读死书,完全照书来干的人中有个很有名的赵某(地球人都知道是谁),还有,上面的某人罗列了一堆的书,等你看完了,基本也就把创造成功所必须的时间给消耗的差不多了.
怎么自学印刷排版技术?
第一部份 结构素描、光影素描、速写、设计素描、户外写生
色彩原理、色彩配色、设计色彩、色调小稿训练、色彩长期作业
第二部份 Photoshop CS2:Photoshop操作基础、图象优化处理、经典实例分析与制作
Illustrator CS2:广告招牌制作、灯箱广告、服装广告设计、企业徽标设计、名片设计
IndesignCS2:专业的排版工具、印刷相关知识、书报高级排版技巧
Acrobat7.0:专业的电子文档工具、可以实现任何文档之间的互转,PDF文档的生成与转换
Coreldraw13:包装盒的设计、宣传单、海报及名片的制作、产品及商业广告设计、名片设计
第三部份 Photoshop高级:讲解海报设计、包装盒设计、CI设计、产品广告设计、后期处理等方面的应用
Illustrator高级:广告插画制作、矢量描图、角色贴图制作、广告创意稿、印前制作技巧等
第四部份 Dreamweaver8.0:网页布局、制作;Html&Css简介;网站管理与维护、上传与下载;案例分析
Flash8.0:美工设计、网页配色;CI、LOGO、Banner的制作;常见网页动画制作、网页布局
Fireworks8.0:经典网页动画、广告、片头、贺卡设计与分析;MTV制作、交互式网站简介
第五部份 平面构成、立体构成、色彩构成、色彩设计学、字体设计、版式设计、图形创意、招贴设计
第六部份 广告设计(CI策划)、VI设计、印刷设计、包装设计、书籍装帧设计、视觉导向设计、电视广告脚本设计,软件综合
要搞平面设计,photoshop、Coreldraw、Illustraor这三个软件都是应该熟练掌握的。这3个软件可以自学,下教程,自己做实例来熟练掌握。基础的平面设计就是Photoshop、Coreldraw,要考设计师就要学Photoshop、Illustrator、Indesign Acrobat四个软件。广告公司常用的Photoshop、Illustrator、PageMaker、Freehand、CorelDraw等设计软件。
1. 标志设计(logo设计,商标设计)
2. CIS设计、VI设计(企业形象 识别系统设计)
3. 广告设计、广告创意设计
4. 海报设计、 DM 设计(宣传单设计)
5. 样本设计、宣传手册设计、画册设计
6. 楼书设计、年报设计
7. 包装设计
8. 书籍插画绘制、贺卡设计、请柬设计
9. 报纸、杂志排版设计
10. 各类印刷品设计等等。
常用平面设计软件
平面设计软件一直是应用的热门领域,我们可以将其划分为图像绘制和图像处理两个部分,例如建模和绘图软件、渲染软件、图像处理软件、印前组版软件等。下面简单介绍这方面一些常用软件的情况:
1、AutoCAD
AutoCAD是一款著名的图形设计软件,最早于1982年在Comdex大会上亮相,由于其卓越的性能,被誉为万能计算机辅助设计软件,被广泛应用于建筑、电子、机械、广告、装饰、、服装等诸多平面及立体设计领域,目前已成为工程制图领域事实上的绘图标准和占有率最高的CAD软件,在国内市场也处处可见其身影。目前,AutoCAD可以在多个平台上使用,例如DOS平台的12.0版本、Windows平台的14/2000/2002/2004/2005版本,还有供工作站运行的UNIX版本。
AutoCAD具有极强的开放性和可扩展性,软件提供了强大的二次开发手段,例如Visual lisp、C++、ARX、Microsoft Visual Basic for Application(VBA)等,这使得AutoCAD用户可极大的扩展软件的功能,并可极大应用其它第三方开发出新的功能。
2、3D Studio Max
制作三维动画是一个涉及范围很广的话题,从某种角度来说,三维动画的创作有点类似于雕刻、摄影、布景设计及舞台灯光的使用,作为专业级的作品至少要经过三步:造型、动画、和绘图。在DOS操作系统占据天下的时代,三维动画设计离普通用户还很遥远,3D Studio是为数不多能够稳定运行在DOS下的一款3D软件,Windows取代DOS成为桌面PC的主流操作系统后,Autodesk公司不失时机推出了3D Studio Max(一般简称为“3DS Max”),随着计算机硬件的迅速发展,在个人PC上制作三维动画已经不再只是梦想。
3D Studio Max是目前PC平台上使用最广泛的三维建模、动画、渲染软件,被广泛应用于广告宣传、游戏设计、影视后期制作等动画领域,最新版本集成了很多过去只是在电影、游戏和3D设计中应用的专业工具或插件。
3、CorelDraw
CorelDraw是Corel公司推出的集矢量图形设计、印刷排版、文字编辑处理和图形高品质输出于一体的平面设计软件,深受广大平面设计人员的喜爱,目前主要在广告制作、图书出版等方面得到广泛的应用,功能与其类似的软件有Illustrator、Freehand。
最新版本的CorelDRAW Graphics Suite可以为用户提供功能强大的工具,通过减少工作中的某些点击、步骤的数量来节省时间,其中还集成了3个图形程序、多个用途广泛的工具及公用程序,新的套件包括为插图、页面布局和矢量制图而设的CorelDRAW 12,为专业数字成像成而设的Corel PHOTO-PAINT 12以及为创建运动图形而设的Corel R.A.V.E.3。
4、Adobe Photoshop
这款美国Adobe公司的软件一直是图像处理领域的巨无霸在出版印刷、广告设计、美术创意、图像编辑等领域得到了极为广泛的应用,最新版本突破了以往Photoshop系列产品更注重平面设计的局限性,对数码暗房的支持功能有了极大的加强和突破,例如修复画笔可以极为轻松地消除图片中的尘埃、划痕、斑点、褶皱,而且可以同时保留图像中的阴影、光照、纹理等效果,创新功能可以让用户更快地进行设计、提高图像质量,并且以专业的高效率管理文件。
不过,为了防止盗版,Photoshop CS加入了倍受争议的类似于Windows XP的激活技术,用户必须联网激活后才可以正常使用,否则的话只能使用两天时间。
5、Freehand
Freehand是一款全方便的、可适合不同应用层次用户需要的矢量绘图软件,与Macromedia公司的Flash、FireworksPagemaker并列为“网页制作三剑客”,可以在一个流程化的图形创作环境中,提供从设计理念完美地过渡到实现设计、制作、发布所需要的一切工具,而且这些操作都在同一个操作平台中完成,其最大的优点是可以充分发挥人的想象空间,始终以创意为先来指导整个绘图,目前在印刷排版、多媒体、网页制作等领域得到广泛的应用。
6、Adobe Illustrator CS
Adobe Illustrator v11 是一套被设计用来作输出及网页制作双方面用途、功能强大且完善的绘图软件包,这个专业的绘图程序整合了功能强大的向量绘图工具、完整的PostScript输出,并和Photoshop或其它Adobe家族的软件紧密地结合。该软件以突破性、富于创意的选项和功能强大的工具为您有效率地在网上、印刷品或在任何地方发布艺术作品,界定了向量图形的未来。 第10版增加了诸如Arc、矩型网格线(Rectangular Grid)以及坐标网格线(Polar Grid)工具等新的绘图及自动化优点;增加编辑的灵活度以及标志(编辑主要的对象或图像复制)。你可以运用笔刷及其它如合并、数据驱动坐标等在工具列上的创造工具,帮助你建立联结到数据库的样版。 新的Illustrator还提供更多的网络生产功能,包括裁切图像并支持可变动向量绘图档(SVG)增强。
7、 maya
Maya是美国Autodesk公司出品的世界顶级的三维动画软件,应用对象是专业的影视广告,角色动画,电影特技等。Maya功能完善,工作灵活,易学易用,制作效率极高,渲染真实感极强,是电影级别的高端制作软件。其售价高昂,声名显赫,是制作者梦寐以求的制作工具,掌握了Maya,会极大的提高制作效率和品质,调节出仿真的角色动画,渲染出电影一般的真实效果,向世界顶级动画师迈进。
Maya 集成了Alias/Wavefront 最先进的动画及数字效果技术。她不仅包括一般三维和视觉效果制作的功能,而且还与最先进的建模、数字化布料模拟、毛发渲染、运动匹配技术相结合。Maya 可在Windows NI 与 SGI IRIX 操作系统上运行。在目前市场上用来进行数字和三维制作的工具中,Maya 是首选解决方案。
8、非线性编辑软件 Adobe Premiere
一款常用的视频编辑软件,由Adobe公司推出。现在常用的有6.5、Pro1.5、2.0等版本。是一款编辑画面质量比较好的软件,有较好的兼容性,且可以与adobe公司推出的其他软件相互协作。目前这款软件广泛应用于广告制作和电视节目制作中。 其最新版本为Adobe Premiere Pro CS4。.
9、pagemaker
PageMaker是由创立桌面出版概念的公司之一Aldus于1985年推出,后来在升级至5.0版本时,被Adobe公司在1994年收购。
PageMaker提供了一套完整的工具,用来产生专业、高品质的出版刊物。它的稳定性、高品质及多变化的功能特别受到使用者的赞赏。另外,在6.5版中添加的一些新功能,让我们能够以多样化、高生产力的方式,通过印刷或是Internet来出版作品。还有,在6.5版中为与Adobe Photoshop 5.0配合使用提供了相当多的新功能,PageMaker在界面上及使用上就如同Adobe Photoshop,Adobe Illustrator及其他Adobe的产品一样,让我们可以更容易地运用Adobe的产品。最重要的一点,在PageMaker的出版物中,置入图的方式可谓是最好的了。通过链接的方式置入图,可以确保印刷时的清晰度,这一点在彩色印刷时尤其重要。
最后说一句 平面设计最重要的是创意 软件只是实现你想法的工具
学习这些计算机基础科目要学习什么数学
一、数学
数学是计算机专业的基础,学好数学是学好计算机专业的关键。高等数学课程主要学习微积分、空间解析几何和微分方程,一般高校通用的教材是同济大学编的《高等数学》,目前已经有了第五版,也可以使用自考教材——西安交通大学陆庆乐编的《高等数学》,可以买一些配套的辅导书和习题解答。
还有两门重要的数学课程是《线性代数》和《概率统计》。可以分别采用高等教育出版社出版、同济大学编写的《线性代数》和浙江大学编写的《概率统计》。注意:自学一定要多做习题,而且最好一门课有一本习题解答和辅导书。
除了上面数学基础课外,在计算机专业中举足轻重的就是《离散数学》,这门课要多花点力气来学。可以采用左孝凌教授等编的《离散数学》,上海科学技术文献出版社。也可以用北大、清华的教材,还可以参考左教授编的自学教材,经济科学出版社。
其他课程还有《复编函数》、《计算方法》等,有余力的朋友可以选学。
二、专业基础课
1.《程序设计》:学习内容一般为C和C++。C语言可以采用谭浩强教授的《C程序设计》,内容比较浅显,C++方面的书推荐钱能编写的《C++程序设计》,清华大学出版社。
2.《数据结构》:这门课程比较难,可以采用严蔚敏教授编写的《数据结构(C语言版)》,有配套习题册。好好做题,有时间多编几个大的程序。
3.《模拟电路》和《数字电路》:这是难度较高的两门课程,选用自考教材相对来说容易些,也可以参考清华大学出版社出版的相关教材。
三、专业课
1.《计算机组成原理》:推荐白中英主编的《计算机组成原理》(第三版),科学出版社;黄爱英主编的《计算机组成原理》(第三版),清华大学出版社。
2.《操作系统》:汤子赢编写的《计算机操作系统》(第三版),西安电子科技大学出版社。还可以参考高教司司长张尧学教授编写的教材,清华大学出版社。
3.《汇编语言》:可以用清华大学出版社出版的教材,也可以用自考教材。
4.《数据库原理》:人民大学教授王珊编的《数据库系统概论》(第三版),高等教育出版社,复旦大学施伯乐老师编写的教材也不错。
5.《编译原理》:国防科技大学陈火旺院士编写的教材十分不错,最新版本是2000年出的,国防工业出版社。
四、选修课
包括计算机网络与通讯、软件工程、图形学、人工智
能、系统结构、图形学等。此类课程的教材可选用全国高等教育自学考试指定教材,或参考各高校所采用的计算机专科和本科教材及配套辅导书。英文基础好的朋友可以用国外著名大学的影印版教材。
我也是学计算机专业的,其最核心的课程是数据结构,这门课程想学好不是很容易,要花大量时间去实践;还有一些重要课程比如:操作系统,C语言,计算机组成原理,汇编语言,数据库,计算机网络,人工智能这些都是专业基础课,还有一些建模课~~~
高中起点计算机本科:
1. 计算机科学与技术专业:C语言程序设计、计算机组成原理、数据结构、操作系统、
微机原理及汇编语言、计算机网络、计算机系统结构、软件工程、面向对象程序设计等。
2. 计算机软件专业:面向对象程序设计、计算机组成原理、操作系统、数据结构、计算
机网络、软件工程、编译原理、分布式系统、软件项目管理、Oracle数据库系统等。
3. 电子商务专业:管理学原理、电子商务、物流管理、计算机网络、供应链管理、电子商务平台及核心技术、国际商务管理、电子商务案例分析、商务网站建设等。
专科起点计算机本科:
1. 计算机科学与技术专业:计算机组成原理、数据结构、面向对象程序设计、操作系统、计算机系统结构、软件工程、数据库原理及应用、计算机网络、嵌入式系统与结构等。
2. 计算机软件专业:操作系统、数据结构、面向对象程序设计、计算机原理及系统结构、数据库系统、JAVA程序设计、计算机网络、软件工程、中间件技术、信息系统集成等。
3. 电子商务专业:管理学原理、数据库原理及应用、管理信息系统、金融学、电子商务平台及核心技术、物流管理、计算机网络、人力资源管理、供应链管理等。
开设的主要课程有:高等数学、线性代数、概率与数理统计、普通物理、 离散数学、计算机科学导论、C语言及程序设计、汇编语言、、数字电路与逻辑设计、计算机组成原理、算法与数据结构、操作系统原理、软件工程、计算机网络与通信、计算机专业英语、编译原理、数据库系统原理、面向对象编程技术(如:VB)、CAD技术、图形图象处理技术、软件开发新环境、接口与通讯、人工智能及应用、信息系统工程、企业会计、电子数据交换(EDI)、计算机维修技术、计算机网络工程、计算机系统维护技术、多媒体技术及其应用、算法分析与设计、面向对象技术、、计算机图形学、决策支持系统、网络应用软件设计、网络操作系统、大型数据库系统、单片机应用、计算方法、软件高级工资格认证、高级程
序员水平认证、马克思主义哲学原理、***思想概论、马列政治经济学原理、***理论、思想道德修养、法律基础、大学语文、大学英语、体育等。
《计算机操作系统》课程简介
本课程是计算机专业的专业课程之一, 着重介绍计算机系统的一个重要系统软件——操作系统。本课程详细阐述了操作系统如何管理计算机系统中的软件和硬件资源、合理组织计算机系统的工作流程、提供用户与计算机系统之间的软件接口等机制。
授课内容包括操作系统的基本内容和概念、进程的概念以及通信和调度的方法、操作系统中各种资源的管理。最后通过实例——Linux操作系统,介绍Linux系统中的存储、设备、文件和进程的管理。
本课程的前导课程为:C语言程序设计。授课对象为:网络与通信专业本科生。
《应用数据库技术》课程简介
本课程为本科计算机与通信专业的专业课程。本课程详细阐述和研究了数据库系统尤其是关系数据库系统的基本概念和基本原理、介绍了数据库国际标准语言——SQL语言以及数据库设计的基本技术和方法,旨在指导数据库应用系统的开发和数据库技术的广泛应用。
授课内容包括:数据库的基本原理和数据的物理组织与存取方法;关系数据库系统的基本概念、关系代数理论、查询语言、规范化理论、查询优化;数据库保护技术;数据库设计的基本技术和方法以及几种现今流行的数据库应用。
本课程的前导课程为:C语言程序设计、数据结构。授课对象为:网络与通信专业本科生。
《数据结构》课程简介
数据结构是计算机专业课程的主要基础课程之一。它旨在使学生了解和掌握数据对象的特性,学会数据组织的方法和把现实世界中的问题在计算机内部的表示方法,以及培养基本的、良好的程序设计技能。本课程详细阐述和研究了各种数据元素之间存在的关系(数据的逻辑结构)、在计算机中如何表示这种关系的存储结构以及存储结构的描述方法、数据的不同的逻辑结构在各种存储结构上实现的基本运算:查找、插入和删除的算法,从时间和空间复杂度的角度综合比较各种存储结构的不同特点和适用场合。
本课程的基本授课内容包括线性表、栈和队列、串、数组和广义表、二叉树和树、图、动态存储管理、查找、排序和文件等以及实现这些数据组织的算法等。
转载请注明出处51数据库 » 软件综合开发案例教程pdf 软件开发对数学的要求
凹凸欧巴


