我是一个非计算机专业的学生,但是我却对计算机有着相当大热情。大一时我加入了学校网管中心下属的一个网络社团,参与维护和开发学校里最大的网站——点击网络。此时网站是采用ASP技术实现的,为了方便改动一些页面的布局和着色,我试着了解了一些ASP知识,不过也没怎么深入。大二我当上了站长,开始为整个网站的未来做打算。我个人的性格是比较喜欢追新的,ASP技术已经有点落伍了,又考虑到当时整个网站的速度在ASP+ACCESS的制约下变得相当慢,所以我想把整个网站的架构来一次大换血,综合易用、兼容、安全和性能等多方面的考虑,我决定采用微软比较新的技术ASP.NET。
在网上搜索了很多免费的ASP.NET整站程序,只有一个勉强符合我的要求,它还是用的ACCESS数据库,而且有一些栏目没有,要加上去。没办法,我只有现学现卖,好在当时在放寒假,有足够的时间让我来摸索。最开始我完全不会,就凭我那点“Response.Write”的ASP知识根本就不知道源码里的那些东西是什么,没法,我只有死记代码,放假前在图书馆借了本《Ado.Net 技术内幕》,边做边摸索,一个假期下来,我还真成功了(改为ASP.NET+MS SQL Server, CodeBehind),要知道,之前我一点ASP.NET和SQL Server的知识都没有哦。
再后来我不满足于知道如何编写代码,我更想知道一些底层知识,了解为何要这么写,于是我开始阅读一些比较“原理”一点的书,真的,了解了这些知道后,你会有一种豁然开朗的感觉,你会发现,哦,原来我背的那些东西原来是这么一回事呀。了解一门语言,应该从它的底层开始,从局部到整体,从微观到宏观,这样你才会用好它,让它更能按你的意愿去运行。
到现在我的ASP.NET还是半桶水,不敢妄言些什么,但做为一个过来人,我可以给初学都一些建议和我的一些看法,希望对你们有点帮助。
首先要培养自己学习的兴趣,没有兴趣,当完成任务样的来学习知识,效果不好。
要具备一些计算机基础知识。搞计算机的,怎么能不懂计算机呢?不要求你对每方面的知识都很专,但起码要各部分都要了解一点。不然电脑出了点小问题都不会解决,也太说不过去了。
英语要学好,数字要学好!很多资料是英文的,试想一下你只会汉语,就算你的技术很高,但是你总是会比别人慢半拍的,很多知识你也学不到,谁叫计算机这东西是老外发明的呢?数学的重要性不言而喻,它可以锻炼你的思维。
当你有一个目标的时候,你就应该专心的、专一的、努力的去实现它,不要再想“我还要实现什么什么”之类的,一步一步,踏踏实实的来,你会发现这样你学的更快。(不能一概而论,特殊原因除外)
经常在网上看到网友争论到底是C#还VB.Net好,其实.Net平台的语言无关性,决定了C#和VB.NET没有任何本质上的区别,它们只是表达的语法不同,争论这些毫无意义,如果你非要问我哪个好,那么我会说C#,为什么呢,因为它看起来更漂亮,好像还有点流行,更重要的是,这样可以堵上你的嘴。
非计算机专业的同学如果要学习编程,那么.Net是一个非常好的选择。为什么这么说呢?因为在CLR的管理下,微软将很多编程的细节抽象化了,程序员不需要了解很多东西,这样以牺牲了对性能的绝对控制来换得非常高的开发效率。在Web development这方面,这点性能的损失微不足道,也许这点是ASP.NET在整个.Net中占有比较重要地位的一个原因吧。
都说.Net入门容易,精通难,个人非常赞同这个观点。.Net框架博大而精深,光是把namespace全部记住都有点难,何况是更为具体的class和struct呢?所以说,你小有所成了,不要沾沾自喜,路还长着呢,同学,继续加油吧,let’s go on。
要学知识,不能不看书,但是并非看的越多越好,要看好书,具体的可以看看我的这篇BLOG,http://chengbo.cnblogs.com/archive/2005/07/20/196848.html,文中观点代表我个人的喜好,你还可以到China-Pub上去看看书评。单独提一下,那这本书你不得不看:《Applied Microsoft .NET Framework programming》,建议看中文版:http://www.china-pub.com/computers/common/info.asp?id=13534。看书的时候,最忌讳只看不动,根本不在电脑上实践。除非你是绝顶聪明的人,过目不忘,不然我保证让你关了书,你什么都不知道了,所以一定要实践,要敲代码,一天敲它个几百行的,不仅要知其然,还要知其所以然,这样下来,过几个月你就是高手了,呵呵。
最后介绍几个学习的好网站:
http://www.microsoft.com/china/msdn/
各位加油吧。