ASP.NET教程之C#转C++的一点分享仓酷云
不可能天天有学习.net),我一同学说,你应该早就有作品啦。我惶惶然……头几天看到如许一篇博客《那些年·我们读过的专业书本》,内里列了良多人人以为很好的书,加上本人在自学C++的工程中也看了很多书,感到并非一切的书都值得花工夫往看的,究竟良多人一年上去也看不了2,3本书,分歧的手艺才能的人,合适看的书都不太一样,在这么多人人都以为是典范的书中,选出几本真正合适本人的才是霸道,典范一多了,有些比起来就不是那末典范了,固然人人都说典范,天然有可看的地方,假如有过剩的工夫,多看些书天然是好的。上面是我看过的手艺书本(纷歧定看完),另有本《程序员的自我教养》在故乡,其他几本不怎样就没有列出来。
买的第一本手艺书本是《数据布局与算法剖析》
事先刚卒业不久,在黉舍时没有买手艺书本的观点,在黉舍时也没怎样逛过手艺网站,卒业后逛得对照多,事先是做C#,当时Android很火想学,心坎又一向以为成为一位好的程序员,底层常识是要会的,事先的情形是:在做C#,想做Android,又想做C++,没筹办长做C#,最初买了这本算法相干的书本,决意学C++,注重筹办入手下手吐槽:是谁说程序=算法+XX,这个等式关于良多刚卒业的同砚们基本不建立,算法关于年夜部分的程序员来讲都是弱项好欠好,良多菜逼基本就不会算法,就会增编削查,有木有,别一入手下手就来最难的,简单冲击自傲心,是谁说算法很主要的,哥才写了90多篇博客,就有19篇跟算法有关的,私底下也进修了良多算法相干的文章,哥是要转C++好欠好。吐槽告一段落,算法仍是很主要的,偶然间仍是要好好研讨一下。
《EffectiveC++》买的第一本完整关于C++的书
刚入手下手都看不懂,重复看以后,就很懂了,到如今为止应当最少看了4遍,感到如今给我泰半天的工夫,能大抵在看一遍,已经一度想把书中的50条法例写成几篇博客的,最初因为太懒只写了3篇
EffectiveC++面向对象与承继
EffectiveC++类与函数计划和声名
EffectiveC++机关函数析构函数Assignment运算符
入手下手没看懂的时分,没以为这书怎样,等一条一条的看懂以后,发明这书他妈的写得太好,我不由得的要嘉赞他,作者用很短的几句话就把事变说得很分明,作者的表达才能切实其实牛逼,再次发明作者表达才能出格牛逼的是看吴军的《数学之美》,他用几句话就把一个关于图的成绩讲得很分明,其他的一些所谓的典范作者写的内容看起来就不是那末好了解,固然这跟讲的内容、跟读者所把握的的常识和读者的了解才能有关。
假如你要学C++,那末我保举你看这本,固然它没有教我们进门C++,也没有教我们深度了解C++,也没讲更底层的常识,可是它是第一本,将良多关于C++编程的主要常识点收录成的第一本书,第一本天然收录的是在开辟中呈现频次较年夜的,值得一讲的内容,以后有良多所谓典范的跟风之作,如
《ExceptionalC++》和《MoreExceptionalC++》,包含作者本人的《MoreEffectiveC++》,
固然这些书中讲的内容多是你八辈子也用不上的,但多是要把握的,这些书讲的差未几是一些技能性的工具,或是完成了一个XX功效,有点通用性,人家把这些点讲得很分明,这类书不必急着看,等你C++学得差未几了,再看也不迟,当时会看得很快,由于他们没讲甚么新的常识,都是对现有常识的使用。
《深度探究C++对象模子》要想更深切的了解C++,固然是这本,这本真的是典范中的必看。
这本书共7章320页,但出书社却把它弄得对照厚,仿佛不厚就感到不是好书似的。每章的内容都很不错,倡议重点看第三章和第四章,第三章讲C++对象的内存结构,第四章讲C++的各类办法编译后是啥模样的,和办法是怎样被挪用的,这是C++最主要的工具,其他任何手艺不都是创建在数据和办法之上吗!固然假如你是菜鸟看完以后你仍是菜鸟,你不会酿成年夜牛,由于我看了这些书后我并没有酿成年夜牛,你一样也不会,但你会更深切的了解C++,你会对你本人的才能更自傲。看完这本书后,我以为我能够做C++了,因而跨部门口试,非常钟摆布,我如今的司理就问我甚么时分能够过去。固然刚入手下手做C++时各类不顺,实战太少。你不会由于看了几本书而成为年夜牛。看这本书之前除《编译道理》还没有买,其他的书都看完或是看过一些,刚入手下手的时分有点看不懂,以后很快的看懂并看完了,由于看这本书之前我重复看了《深切了解盘算机体系》的第七章(链接)和《程序员的自我教养》的年夜部份内容,对编译和链接仍是有些懂得,再看这本书天然会快些。看完这本书我写了三篇博客,但看的人很少。
机关函数发生的点及缘故原由
虚办法的挪用是怎样完成的(单承继VS多承继)
C++DataMember内存结构
《深切了解盘算机体系》就未几说了,估量每一个过去人城市保举,假如你想成为一位好的程序员,就是必看必看,不论你是甚么程序员,我信任良多C#牛逼的程序员都看过,这本书讲了良多主要的常识,不是很深,但装逼足以,要全都看懂仍是有些难的,之前就有个同事买了这本书,内里夹了一张跟他有纯正男女干系的女性伴侣的照片,作为书签,,这切实其实是催促本人看书的好办法。关于这本书我写了两篇博客,用这本书的内容写博客能够写良多篇。
数据对齐
在开辟中你大概没有思索到的两本性能优化
因为我一向在自学C++,重点保举这3本,前两本保举指数更高:
1:深度探究C++对象模子
2:深切了解盘算机体系
3:EffectiveC++
其他的一些书都是值得看的,写到这里就有点不想写了,再说一本吧,其他的就未几说了,看完了下面这三本,再看其他的。因为我是做WindowsC++开辟,就说说《Windows中心编程》,做Windows开辟的同砚要看看。关于这本书我写了4篇博客
多线程编程--5种办法完成线程同步
Windows几种线程同步办法先容
Windows线程基本
Windows内查对象简介
这4篇博客基础上是讲线程、历程、内查对象、线程同步。这本书讲了Windows操纵体系的良多工具,如内存办理,静态链接库,这些都是做Windows开辟必要晓得的,也是我对照亏弱的,在开辟中基础都是用库,如今做的项目,两个Solution,个中一个有100多个project,刚入手下手来的时分常常编译都经由过程不了,加上每次编译的工夫较长,弄了半天编译失利,挺冲击人的。
关于书的内容就说到这里,以免人人觉得我是来讲书,明显平话不是我的刚强,如今就来讲说转C++的一些感觉。
厚道说假如如今用的是C#、JAVA、PHP等,且没用过C/C++不太倡议转C/C++,但十分倡议多看看底层的常识,C#做了几年以后发明也就是那点工具,不深切进修,良多工具实际上是只会用,基本不晓得究竟是怎样回事。我信任良多C#程序员不晓得多态究竟是怎样完成;办法究竟是怎样被挪用的;不晓得哪些是在编译器断定,哪些是在运转时断定的;常常听到字符串池的观点等,微软把C#封装得太好了,失落坑里的时机太少了,年夜不了不论3721,try...catch一下,也让有些人变得不那末爱思索了,像C/C++一不当心就失落坑里了,不思索都不可。常常听到有人说:C#进门简单,精晓难。那是由于学底层的常识更难些好欠好。说这些不是针对谁,之前写C#就是吃着暖锅唱着歌,各类轻松恬逸,C++就两字:苦逼。要啥啥没有,如支解字符串这类最基础的功效都得本人完成,刚做C++的感到就是:本人坐在奢华的游艇上,看到劈面的海盗船很酷,因而就往海盗船一跳,一上船发明这坐船各处都在漏水,各类举措措施都很低劣,一不当心就失落水里了,各类感到不顺应。
学C++好很长工夫吗?不要
从自学C++到如今差未几3年工夫,时代屡次想保持,心中常有的一个动机就是:把这些工夫用在学C#,C#能够学得更好,人为能够拿得更多,每次看到发得手中的这点人为,就没啥劲头了,但我也一向分明若要把程序当作一个久长的职业,我是要必会C/C++的,时代偶然有几个月没有学C++,但最初仍是放不下,又想起她。最初拖到两年多才做本人一向想做的C++,感到是个很冗长的历程,心坎的针扎仍是挺多的。这两年来专业工夫拿来进修C++的工夫均匀在半个小时摆布,跟10000个小时比起来仍是很少的,固然10000个小时是要成为真实的年夜牛的,而我是刚上贼船,看了这么多书实际仍是有些,还需大批实战。
C++很难吗?NO
C++被成为天下上最难的编程言语,实在并没有传说中的那末难,但有一点是能够一定的C++程序员在没有成为小牛之前一向都在针扎,对,就是针扎,过得很苦逼,我在上个部门做C#的时分没加过一天班,做C++后,之前的同事说我瘦了,之前做C#用一个月的工夫一团体重写了公司的事情流,做C++后,花了两个多月做个汗青办理器,还常常加班。固然如今自傲多了,但还要持续针扎下往。等成为小牛后,我信任就不分编程言语了,但假如你不是做C/C++,却想做C/C++,就别听言语都是浮云这类空话。在你成为小牛之前你才是浮云,你得苦逼,并且这是转行,这也是我不太倡议转C/C++的一个缘故原由,你之前学到的良多工具都是白学的,你要从0.1入手下手,又入手下手做菜鸟,人人都晓得菜鸟的日子不是那末好过,等你成为小牛以后编程言语才是浮云。为何人人都说他难呢?我估量就是被哪些没学好的人宣扬的,没学好之前过得苦逼,那固然发自心坎的以为难,其他的伴侣们听他们一说估量也以为难。在加上一些年夜牛也说C++难,人家说难不是由于本人没学好而说难,人家是由于晓得得年夜多,发明C++太天真,坑太多,老手很简单失落坑里。要我说,任何编程言语,基本语法也就那点工具,等你分明了这些基本的工具是怎样完成,为何要如许完成,编译后是个甚么模样,你也就发明C++也就那样,不论牛不牛,也都是在用C++干活,只不外是有的人再用C++做增编削查,有的人在做人人都在用的产物。
怎样进修C++?尺度谜底是:多思多写多看
作为新菜鸟的我,是不该该回覆这个成绩的,但这个成绩的准确谜底切实其实是多思多写多看。如今来讲说我的失利履历,作为智商不太低的我,学了两年多才做C++,这明显是失利(哈哈,程序员就应当自傲,万万别嫌疑本人的智商,一点都不克不及有)。切实其实我是走了弯路,以是我像良多有失利履历的先辈一样,来分享本人的失利履历,以避免后代们重蹈先辈们的复辙。
可怜的程序员,还是逃不出移植的命运! ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码。 众所周知,Windows以易用而出名,也因此占据不少的服务器市场。 JSP/Servlet虽然在国内目前的应用并不广泛,但是其前途不可限量。 我觉得什么语言,精通就好,你要做的就是比其他80%的人都厉害,你就能得到只有20%的人才能得到的高薪。 ASP.net的速度是ASP不能比拟的。ASP.net是编译语言,所以,当第一次加载的时候,它会把所有的程序进行编译(其中包括worker进程,还有对语法进行编译,形成一个程序集),当程序编译后,执行速度几乎为0。 在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数。 业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高,你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 众所周知,Windows以易用而出名,也因此占据不少的服务器市场。 我的意思是.net好用,从功能上来说比JAVA强还是很明显的。 弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。 ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp)。 代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
页:
[1]