第一篇:.net实习报告
月末总结
这一个月在XX公司的实现,我开始渐渐的熟悉了这个环境,让我感觉到,要作为一个真正的优秀的软件工程师,我们还有很大的差距。
首先,我感觉到困难的是,在学校,我们都比较注重的是理论知识的学习,忽视了动手能力的培养,这跟我们出来实习到来了很大的麻烦,就造成了实习生的知识技能与用人单位要求的巨大代沟,但是通过这一个月的实习,我明白了我自身的差距,也在项目经理的培训和指导下,在自身的努力下,不断的取得进步,我深知这种进步与实际的工作技能还有很大的差距,但是我会在之后的实习生活中不断的学习,不断的进步。
其次,在学校学习的面向对象的语言主要是java等,很少接触到c#/.net这就跟实习带来了不少麻烦,但是,我深信只要自己好好的努力,不断向师兄们学习,一定能克服这个问题的。在学校学习的阶段,对html、css+div、javascript、jquery、oracle等学习都比较粗浅,而且由于学习的时间比较久了,更是淡忘了不少,所以在实习的这个月中,就在不断的强化这些知识。我深知要学好这些东西,不是一朝一夕的事情,我会长此以往,不断的去学习,并掌握它们。
最后,要感谢师兄对我们的培训,分享自己的经验,让我们明白了实习中要学习的重点,让我们少走弯路。而且我知道自身的动手能力还很差,专业技能还不够好,所以,在之后的实习过程中,我会更加努力,虚心师兄们、同事们学习,不断取得进步。
Lixw_ok
第二篇:.net实习心得体会
.net实习心得体会
我也是XX年的毕业生,在北京一个很不知名的学校学计算机专业,我的方向是做.Net开发。
个人觉得在北京找软件开发方面的实习还是挺容易的。我从大三暑假开始找实习,第一次面试就成功了,是在用友软件,在那里实习了4个多月。那的领导和同事都很好,我觉得公司对在校学生还是挺能理解的,我们一共3个实习生,领导会给我们充足的学习时间,给我们已经写好的代码让我们去阅读,给我们分配任务时,也给我们充足的时间去做,而且还有现成的代码去模仿。总之,在用友的四个月算是让我初识了软件公司里人们每天日常的生活,还有编程方面的相关规范和常用的工具等等。
我是7月份进的用友,12月份我就主动要求离开了。离开的原因是因为,要我们做的项目很少,大部分时间就是坐在电脑前,从上班坐到下班,而且领导说可能到春节前也不会有项目做了。我想很多实习生都经历过这种“无事可做”的工作,于是考虑了再三,还是决定离开这里。其实我也不希望做个不安分的整天跳来跳去的人,去辞职的时候领导还找我谈了半天让我好好考虑考虑,不过我最后还是没有留下来。直到现在我还对这件事耿耿于怀,总觉得有点愧对带了我们几个月的领导。
在离开用友的前一周我就开始在网上投简历,51,智联,我几乎是把这两个网站每天发布的.net职位信息都投一遍。接下来,就是各种面试通知,最多的时候是一天有四个。我只好专门找了一个本子来记录每天要去面试的公司。软件开发的面试,基本上都会先有一个笔试,我就把每次笔试不会做的题目都记下来,整理到一起。发现各个公司笔试题的重复率还是挺高的,也许面霸就是这样炼成的,呵呵。
最后选择了位于中关村的一家公司,北大软件,还是做.Net实习生。如今在这里已经半个月了,渐渐适应了这里,希望能够尽快上手工作。
不过一想到近在眼前的毕业,心里还是挺没底的,先不说还不知道自己能不能凭借技术在公司站稳脚跟,就算是站稳了,在北京这种地方,一个做.Net的小程序员能不能生存下去,我觉得也是个问题。北漂、蚁族、蜗居……这一个个词仿佛变得离我很近很近了,不知道自己离开了学校这个保护伞会变成什么样子。我家是天津的,虽然很近,但是还是觉得北京让人很没有归属感。
今天是周末,呆在宿舍里挺无聊,写下此文和大家共勉,希望XX年的毕业生们都找到好工作。
在这两个星期的实习过程中,老师带我们重新回顾了一遍所学的知识,比如C语言,数据库,网页制作等,让我们更加加深了对所学知识的理解。
毕业实习是教学过程中的重要组成部分,是使学生获取生产、经营实际知识和技能,巩固和加深对理论知识的理解,培养与提高能力的重要实践环节。通过本次实习,学生将进一步加深对网站制作、设计、开发的理解,进一步熟悉用.NET开发网站程序的相关知识,为学生毕业后实际工作打下良好的基础。
.NET技术的发展十分迅猛,它是微软开发的一个大型平台,涵盖了互联网应用的很多方面,用来开发各种应用程序和大型网站。我们实习使用C#为.NET的编程语言,主要学习和开发Web方面的知识。
同学们基础较差,实习前几天老师带我们复习,sql语句,vsXX的使用等等,高强度的复习使部分同学无法接受,虽然感觉很累,但是每天都有收获。,虽然在同学当中比较擅长,但是实习的时候感觉还是有很多不足,感到真正实践还是有点困难,还需继续努力加强学习。
往往老师布置一个任务下来,同学们往往都无从下手,不知道怎么动手,最后都是在老师一步一步的带领下完成,这说明了我们在学校学习期间,非常缺乏实际动手能力,这是需要加以弥补的,否则无法参与实际产品的开发。
面对这种情况,老师只好带我们从最简单、最基础的东西学起,但是时间有限,只能强行把大量知识灌输我们,对于很多基础不好的同学来说,只能望洋兴叹。尽管如此,也是有所效果的,这样可以系统的让我们对所学知识有个整体的了解,而不是分散的,知道一个完整的程序或者网站都是用什么具体的计算机学科来完成的。
经过两个星期的实习,对c#.net开发有了更深入的理解,学习了很多方法,积累了一些经验,很有收获。学无止境,实习的过程让我深知自身知识的不够,还需继续努力学习,做得更好。
第三篇:计算机系.net平台毕业实习报告
开学第一个月,是培养计划中进行毕业实习的日子。众所周知,毕业实习是理论与实践相结合的重要环节,目的是提高学生动手能力和综合实践能力,提高学生的学习兴趣,为提高学生的就业竞争力打好基础。同时,毕业设计会使学生了解社会对计算机信息管理的应用现状及发展需求,进一步理解和领会所学的基本理论,了解计算机信息管理技术的发展及应用。另外,毕业设计也能培养学生理论联系实际水平,将所学知识应用到实际工作中,培养学生发现问题、分析问题和解决问题的能力,从而提高学生从事实际工作的能力。它要求学生通过对具体实习项目的分析,理论实践相结合,巩固和发展所学理论知识,掌握正确的思想方法和基本技能。
我通过学院老师的推荐,来到了四川格瑞特科技有限公司重庆分公司。
四川格瑞特科技有限公司,成立于2001年3月,注册资金5000万元,是四川省重点支持的高新技术企业、软件企业。具有计算机信息系统集成一级资质、涉及国家秘密的计算机信息系统集成乙级资质。作为计算机信息系统集成领域的领先者之一,是一家以高科技为依托,专业从事系统集成、软件开发、咨询与服务的综合性IT企业,年产值近三亿元。
本次实习,主要任务是听从公司带队负责人的意见,做好安排的各项工作。而对个人而言,则是通过参与实际的项目开发,进入实际的工作环境,一方面加深对开发的理解,增强本科在校期间所学理论向现实应用的转换;另一方面,加强实际开发能力,为自己的毕业设计作一定准备。
实习第一天,向我的实习负责人进行了简要自我介绍,之后跟着他参观了公司的市场部、工程部、软件部、设备维修部以及技术部,看到各位前辈都很专注于手中的工作。最后我们来到了研发部,也就是我为期月余的工作地点。在这一天我了解到,每天8:00至8:30进行小组早会,每人明确自己当天的任务。之后,投入上午的工作。12:00至14:00是午饭及午休时间,然后开始下午的工作,下午5:30后会开当日总结会,对当天工作进行总结,并于小姐负责人一起讨论各自下一天的工作任务。当天如果任务没有完成,就得加班。同时,不定期召开工作会,对整个项目进行整体讨论,总结上一阶段成果,发现不足,制定下一阶段计划。
接现来的工作中,整个小组负责的是重庆药物网上交易系统的实现,我零零散散参与了sqlsever中数据的增、删、改、察测试;需求分析的讨论、撰写;系统说明ppt的制作; 通过本次实习,对个人而言,最大的收获莫过于对面向对象编程的进一步学习理解,以及实习项目开发中对于面向对象思想的应用,让面向对象编程的思维在自己的脑海里扎根。以前虽然也知道面向对象,知道面向对象编程,但大多数时候更理解为用面向对象编程语言进行程序开发,只要是用到C#,用到java,那就叫面向对象。也知道面向对象编程的核心思想如封装、继承、多态等,但真正开发的时候用到的很少,不管什么东西,能在一个类里写完绝对不会多用另一个类,导致程序的可读性、扩展性都非常差。而通过本次实习,项目经理先再次讲解面向对象的思想,再在程序的开前教给大家,程序的开发过程中严格要求大家做到用面向对象的思维来实现程序的开发。通过这样理论和实际的相互结合,大家在开发程序过程中真正学会了如何划分功能模块进行封装、如何使用继承,如何使用多态。
对于实习的全过程,除开编程方面的理论与实践,最大的收获应该是一种体验。这不仅仅是学习两个字就能收获到的。包括公司的作息习惯,工作任务的完成方法,人际关系的处理等等。总的说来,感觉公司比学校里实际多了,学校里你可以我行我素,出了问题老师会帮你想法解决,同学朋友会包容你安慰你,但在公司里不再如此,出了问题,那就会直接跟工资、职务的进升挂勾,个人不得不谨小慎微。另外,还听项目经理助理说了一些工作中老板面前、同事面前的不同,如一个任务,老板面前,正常需要五分钟能完成的,一定要三分钟完成,而在同事面前,能五分钟完成的一定会边耍边做10分钟完成。因为老板面前要挣表现,以便得到赏识;同事面前没那必要,而且自己做完了余下的时间还要帮别人处理,同
样辛苦,还不如一边把节奏放慢点,让自己轻松点。当老板问到任务是否艰巨时,想方设法都要夸大一点任务的难度,让老板知道你的辛苦,还是为了得到赏识。只有老板赏识才会有加工资,才会有职务的上升。他所说这些,我并不赞同,人的一生如果仅仅为了工资、职务奋斗,何其悲哀;事事谨小慎微,权衡利弊,投机取巧,岂不荒唐。但却写下,只是觉得社会实际与美好的学校截然不同,就在你身边,充斥了太多的利益,或许这位助理曾经也是我现在的想法,但来到真实的工作环境,迫于现实改变了。对个人而言,是保持美好的纯真,还是跟随现实,被其改变,现今无法知晓,唯有拭目以待!
第四篇:net报告
我对.NET认识
.NET 是 Microsoft XML Web services平台。XML Web services 允许应用程序通过 Internet 进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。Microsoft.NET平台提供创建 XML Web services 并将这些服务集成在一起之所需。对个人用户的好处是无缝的、吸引人的体验。
一、基本概要
.NET就是微软的用来实现XML,Web Services,SOA(面向服务的体系结构service-oriented architecture)和敏捷性的技术。对技术人员,想真正了解什么是.NET,必须先了解.NET技术出现的原因和它想解决的问题,必须先了解为什么他们需要XML,Web Services 和 SOA。技术人员一般将微软看成一个平台厂商。微软搭建技术平台,而技术人员在这个技术平台之上创建应用系统。从这个角度,.NET也可以如下来定义:.NET是微软的新一代技术平台,为敏捷商务构建互联互通的应用系统,这些系统是基于标准的,联通的,适应变化的,稳定的和高性能的。从技术的角度,一个.NET应用是一个运行于.NET Framework之上的应用程序。(更精确的说,一个.NET应用是一个使用.NET Framework类库来编写,并运行于公共语言运行时 Common Language Runtime之上的应用程序。)如果一个应用程序跟.NET Framework无关,它就不能叫做.NET程序。比如,仅仅使用了XML并不就是.NET应用,仅仅使用SOAP SDK调用一个Web Service也不是.NET应用。
二、应用组件
(一)客户端应用
组成.net软件技术的组件,组件之一,“智能”客户端应用软件和操作系统,包括PC、PA、手机或其他移动设备通过互联网、借助Web Services技术,用户能够在任何时间、任何地点都可以得到需要的信息和服务。例如:可以在手机上阅读新闻、定购机票、浏览在线相册等等。现在我们假设一种场景,如公司内使用的CRM系统,应用了.NET的解决方案后所有的业务人员便可以通过手机或PDA直接访问客户信息了。
(二)WebService
Web Services是智能终端软件的基础,微软为用户创建智能终端提供了一整套丰富的解决方案,包括:
.NET Framework-智能终端实现跨平台(设备无关性)的执行环境Visual Studio.NET – 建立并集成Web Services和应用程序的快速开发工具
Microsoft Windows Server 2003 – 新一代的企业服务器,用于提供建立和发布各种解决方案
Microsoft Office Professional Edition 2003 – 内建的工具集也能帮助开发智能终端
现在.net发展最快的终端非手机莫属了,有两大阵营在开发SmartPhone技术,一个是微软为代表的Stinger应用于三星,另一个就是以NOKIA、爱立信组成的Symbian。
Web Services是.NET的核心技术。那什么是Web Services呢?正如Web是新一代的用户与应用交互的途径,XML是新一代的程序之间通讯的途径一样,Web Services是新一代的计算机与计算机之间一种通用的数据传输格式,可让不同运算系统更容易进行数据交换。Web Services有以下几点特性:Web services允许应用之间共享数据;Web services分散了代码单元;基于XML这种internet数据交换的通用语言,实现了跨平台、跨操作系统、跨语言。那微软的ASP和 1
Web services究竟有什么不同呢,ASP仍然是一个集中式计算模型的产物,只不过是披着一层互联网的外衣。但Web Services却是一个迥然不同的精灵,它秉承“软件就是服务”的真言,同时顺应分布式计算模式的潮流。而它的存在形式又与以往软件不同。这种组件模式,小巧、单一,对于开发人员来讲,开发成本较低。
Web services是一个开放的标准,和HTTP、XML、SOAP一样。他们是一个工业标准而非微软标准,WS-I是为了促进Web Services互通性的联盟组织,最初是由IBM和微软所发起,其它的成员包括BEA System、惠普计算机(HP)、甲骨文(Oracle)、英特尔(Intel)和SUN 计算机(Sun Microsystem)。如今网络上存在的大多Web services其实没有使用.NET构架,Web services具有互操作属性,你同样可以使用Windows开发客户端来调用运行于Linux上面的Web services的方法。
(三)接口规范
先前 microsoft.net提到的接口规范问题,在.NET中,Web service接口通常使用Web Services Description Language(WSDL)描述。WSDL 使用XML来定义这种接口操作标准及输入输出参数,看起来很像COM和CORBA的接口定义语言(IDLS)Interface Definition Languages。接口定义后就必须使用一些协议调用接口,如SOAP协议,SOAP源于一种叫做XML RPC(XML远程进程调用remote procedure calling)的协议,而Java则根据XML-RPC发展了自己的JAX-RPC协议用来调用Web Services。发布和访问Web Services的接口就用到UDDI了,这里我们只需要知道WSDL使用XML定义Web Services接口,通过SOAP访问Web Services,在internet上寻找Web Services使用UDDI就行了。服务器架构——Microsoft Windows Server System Microsoft提供了最佳的服务器构架—Microsoft Windows Server System—便于发布、配置、管理、编排Web Services。为了满足分布式计算的需要微软构造了一系列的服务器系统,这些内建安全技术的系统全部支持XML,这样加速了系统、应用程序以及同样使用Web Services的伙伴应用之间的集成。
(四)CLR 与 CIL
.NET的初级组成是CIL和CLR。CIL是一套运作环境说明,包括一般系统、基础类库和与机器无关的中间代码,全称为通用中间语言(CIL)。CLR则是确认操作密码符合CIL的平台。在CIL执行前,CLR必须将指令及时编译转换成原始机械码。
所有CIL(通用中间语言)都可经由.NET自我表述。CLR检查元资料以确保正确的方法被调用。元资料通常是由语言编译器生成的,但开发人员也可以通过使用客户属性创建他们自己的元资料。
如果一种语言实现生成了CIL,它也可以通过使用CLR被调用,这样它就可以与任何其他.NET语言生成的资料相交互。CLR也被设计为作业系统无关性。
当一个汇编体被载入时,CLR执行各种各样的测试。其中的两个测试是确认与核查。在确认的时候,CLR检查汇编体是否包含有效的元资料和CIL,并且检查内部表的正确性。核查则不那么精确。核查机制检查代码是否会执行一些“不安全”的操作。核查所使用的演算法非常保守,导致有时一些“安全”的代码也通不过核查。不安全的代码只有在汇编体拥有“跳过核查”许可的情况下才会被执行,通常这意味着代码是安装在本机上的。
三、NET之历史脚步
asp.net2.0是一种动态网站高级编程语言,是微软公司的最新版本,是一种
建立在公共语言运行库上的编程框架,可用于服务器上开发强大的web应用程序。asp.net2.0不但执行效率大大提高,对代码的控制也做的很好。并且支持web controls 功能和多种语言。以提高安全性,以管理性和高扩展性。
asp.net技术从1.0升级到1.1的变化不大,但是升级到2.0,却发生了相当大的变化,在开发过程中,微软公司深入市场,针对大量开发人员和软件使用者,进行了卓有成效的研究,并为其指定了开发代号,asp.net2.0设计目标的核心,可以用一个词来形容--简化。因为其设计目的是将应用程序代码数量减少百分之七十以上,改变过去那种需要编写很多重复行代码的状况,尽可能做到写很少的代码就可以完成任务。对于软件工程师来说,asp.net2.0是web开发史上的一个重要的里程碑!
asp.net2.0的新特性:
生产效率,使用新增的asp.net2.0服务器控件和包含新增功能的现有控件,可以轻松的创建asp.net2.0网页和应用程序。
灵活性和可扩展性,很多asp.net2.0功能都可以扩展。这样可以轻松的将自定义功能集成到应用程序中。
性能,使用如预编译,可配置缓存和sql缓存失效等功能。
安全性,现在向web应用程序添加身份验证和授权非常简单。
完整性,新增功能和现用功能协同工作,可以创建解决实时web开发挑战的端对端方案。
四、NET之一路走来
(一)NET3.0新特性
C# 3.0中比较简单的四个特性,分别是隐式类型化本地变量、匿名类型、隐式类型化数组,以及对象构造者
隐式类型化本地变量
这个特性非常简单,有些JavaScript的影子,我们可以统一使用使用“var”关键字来声明局部变量,而不再需要指明变量的确切类型了,变量的确切类型可通过声明变量时的初始值推断出来。这样一来,可以大大简化我们声明局部变量的工作量了
匿名类型
有些时候我们需要临时保存一些运算的中间结果,特别是当这些中间结果是由多个部份组成时,我们常常会去声明一个新的类型,以方便保存这些中间结果。表面上看起来这很正常,而细想之后就会发现,这个新类型只服务于这个函数,其它地方都不会再使用它了,就为这一个函数而去定义一个新的类型,确实有些麻烦。
现在,C#3.0中的匿名类型特性就可以很好的解决上面提到的问题,通过匿名类型,我们可以简单使用new { 属性名1=值1,属性名2=值2,.....,属性名n=值n }的形式直接在函数中创建新的类型。
在新类型中只能有字段成员,而且这些字段的类型也是通过初值的类型推断出来的。如果在声明新的匿名类型时,新类型的字段名、顺序以及初始值的类型是一致的,那么将会产生相同的匿名类型。
隐式类型化数组
这个特性是对隐式类型化本地变量的扩展,有了这个特性,将使我们创建数组的工作变得简单。我们可以直接使用“new[]”关键字来声明数组,后面跟上数组的初始值列表。在这里,我们并没有直接指定数组的类型,数组的类型是由初始化列表推断出来的。
对象构造者
C#3.0中加入的对象构造者特性,使得对象的初始化工作变得格外简单,我们可以采用类似于数组初始化的方式来初始化类的对象,方法就是直接在创建类对象的表达式后面跟上类成员的初始化代码。
C# 3.0中的较复杂,同时也是非常强大的特性。
集合构造者
我们可以在声明数组的同时,为其指定初始值,方法是直接在数组声明的后面跟上初始值列表。这样就使数组的初始化工作变得简单,而对于我们自己创建的集合类型,就无法享受到与普通数组一样的待遇了,我们无法在创建自定义集合对象的同时,使用数组的初始化语法为其指定初始值。
C# 3.0中加入的集合构造者特性,可使我们享受到与普通数组一样的待遇,从而在创建集合对象的同时为其指定初始值。
Lambda表达式
C# 2.0中加入的匿名代理,简化了我们编写事件处理函数的工作,使我们不再需要单独声明一个函数来与事件绑定,只需要使用delegate关键字在线编写事件处理代码。
而C# 3.0则更进一步,通过Lambda表达式,我们可以一种更为简洁方式编写事件处理代码,新的Lambda事件处理代码看上去就像一个计算表达式,它使用“=>”符号来连接事件参数和事件处理代码。我可以这样写:SomeEvent += 事件参数 => 事件处理代码。
扩展方法
当我们需要对已有类的功能进行扩展时,我们通常会想到继承,继承已有类,然后为其加入新的行为。而C# 3.0中加入的扩展方法特性,则提供了另一种实现功能扩展的方式,我们可以在不使用继承的前提下实现对已有类本身的扩展,这种方法并不会产生新的类型,而是采用向已有类中加入新方法的方式来完成功能扩展。
Linq查询表达式
C# 3.0中加入的最为复杂的特性就是Linq查询表达式了,这使我们可直接采用类似于SQL的语法对集合进行查询,这就使我们可以享受到关系数据查询的强大功能。
(二)NET3.5新特性
快速指南
VS 2008的多定向支持,VS 2008允许你构建针对多个.NET框架版本的应用。VS 2008包含一个显著改进的HTML web设计器。该设计器提供了分割视图编辑,嵌套母板页,以及出色的C 集成。
A.NET还提供了一个新的控件,该控件对数据UI场景提供了非常灵活的支持,允许对输出的标识做完全的定制,与VS 2008中的新C 支持还有良好的协作。
A.NET AJAX和JavaScript支持,.NET 3.5 内置提供A.NET AJAX,还添加了支持We art的UpdatePanel,支持JSON的WCF,以及N个缺陷修补和性能改进等方面的新特性。
语言改进和LINQ
VS 2008中的新VB和C#编译器对这些语言做了显著的改进。两者都添加了函数式编程概念的支持,允许你编写更干净,更简洁,更具有表达性的代码。这些特性还促成了我们称之为LINQ(语言级集成查询)的新编程模型,使
得查询和操作数据成为.NET中的一等编程概念。
LINQ to SQL中的数据访问改进,LINQ to SQL是.NET 3.5中内置的OR/M(对象关系映射器)。它允许你使用.NET 对象模型对关系数据库进行建模。然后你可以使用LINQ对数据库进行查询,以及更新、插入,删除数据。LINQ to SQL完整支持事务,视图和存储过程。它还提供了一个把业务逻辑和验证规则结合进你的数据模型的简易方式。
其他改进
上面的列表只是所做改进的一小部分。针对客户端开发,VS 2008 包含了WPF设计器和项目支持。ClickOnce 和WPF XBA 现在在FireFox中也工作了。WinForms和WPF项目现在也能使用A.NET 应用服务(成员,角色和用户数据)来漫游用户数据了。办公开发也更加丰富了,包括对Office 2007 Ri on的集成支持。WCF和Workflow项目和设计器也包括在VS 2008中了。单元测试的速度大为提高,而且单元测试的支持现在包括在VS Profe ional版本(而不仅仅是VSTS版了)中了。连续集成支持现在也内置于TFS中了。AJAX web测试(单元和压力)现在也由VS Test产品支持了。还有许许多多多的改进,这里无法一一提及了
(三)NET4.0新时代
无论如何,.NET 4.0已经在叩开新年的大门之时,以高调的姿态迎来一片掌声。广大的技术爱好者不会等待太长的时间,就能感受C#发展中的又一次变革。随着.NET 4.0在2009年的发布,我们对于C# 4.0的关注也将与日俱增。总体而言,C# 4.0的重头戏主要着眼在以下几个方面:动态编程,并行计算,后期绑定,协变与逆变。
动态编程
C#是静态强类型语言。而在很多情况下,提供“动态”行为,是常常发生的事情,例如通过反射在运行时访问.NET类型、调用动态语言对象、访问COM对象等,都无法以静态类型来获取。因此,C# 4.0引入的又一个全新的关键字dynamic,也同时引入了改善静态类型与动态对象的交互能力,这就是动态查找(Dynamic Lookup)。
就像一个object可以代表任何类型,dynamic使得类型决断在运行时进行,方法调用、属性访问、委托调用都可动态分派。同时,动态特性还体现在构建一个动态对象,在C# 4.0实现IDynamicObject接口的类型,可以完全定义动态操作的意义,通过将C#编译器作为运行时组件来完成由静态编译器延迟的操作。
在具体执行过程中,C#的运行时绑定器基于运行时信息,通过反射获取d的实际类型Foo,然后在Foo类型上就MyMethod方法进行方法查找和重载解析,并执行调用,这正是动态调用的背后秘密:DLR。在.NET 4.0中将引入重要的底层组件DLR(Dynamic Language Runtime,动态语言运行时),除了实现动态查找的基础支持,DLR也同时作为基础设施为类似于IronRuby、IronPython这样的动态语言提供统一的互操作机制。总而言之,动态编程将为C#在以下领域产生巨大的变革:
• Office编程与其他COM交互。
• 动态语言支持,在C#中消费IronRuby动态语言类型将并非难事,体验动态语言特性指日可待。
• 增强反射支持。
虽然从微软当前提供的技术资料和CTP演示中,动态查找还存在或多或少的问题,但是在“动态”大行其道的今天,我们无法回避也必须拥抱这个未来的主角,因为我坚信明天会更好。
并行计算
并行计算的出现,是计算机科学发展的必然结果,随着计算机硬件的迅猛发展,在多核处理器上工作已经是既存事实,而传统的编程模式必须兼容新的硬件环境才能使计算机性能达到合理的应用效果。用Anders大师的话说:未来5到10年,并行计算将成为主流编程语言不可忽视的方向,而4.0为C#打响了实现并发的第一枪。
未来的.NET Framework 4.0中将集成TPL(Task Parallel Library)和PLINQ(Parallel LINQ),这也意味着未来我们可以应用C# 4.0实现并行化应用,在统一的工作调度程序下进行硬件的并行协调,这将大大提高应用程序的性能同时降低现存并发模型的复杂性。
命名参数和可选参数
命名参数和可选参数是两个比较简单的特性,对于熟悉其他编程语言的开发者来说可选参数并不陌生,为参数提供默认值时就是可选参数:
public void MyMethod(int x,int y = 10,int z = 100){
}
因此,我们可以通过调用MyMethod(1)、MyMethod(1,2)方式来调用MyMethod方法。而命名参数解决的是传递实参时,避免因为省去默认参数造成的重载问题,例如省去第二个参数y调用时,即可通过声明参数名称的方式来传递:
MyMethod(20,z: 200);
相当于调用MyMethod(20,10,200),非常类似于Attribute的调用方式。虽然只是小技巧,但也同时改善了方法重载的灵活性和适配性,体现了C#语言日趋完美的发展轨迹。
当然,除此之外.NET 4.0还增加了很多值得期待的平台特性,也将为C#编码带来前所未有的新体验。
。:
NET之未来发展
预测未来,在技术世界是常有的事儿。从高级语言的发展历史来看,编程世界从来就没有停止过脚步,变革时时发生、创新处处存在。以技术人员的角度来观摩未来,带着C# 4.0的脚步来看展望,除了在函数式编程、并行计算和动态特性上大展拳脚,Meta Programming的概念已然浮出水面,将编译器变成一个Service,你可以自由控制在编译器和运行期的逻辑,那是多么美好而向往的未来呀,所以,我们坚信 4.0之后还有广阔的天地随着语言的变迁变得更加开阔。
概括Anders大师在C#设计过程中的思想,C#是语言美学的集大成者。例如,当使用foreach进行循环遍历之后,当应用using语句代替try/finally实现强制资源管理,当应该attribute进行运行时反射,当以LINQ进行语言级别的信息查询,这些语言级别的支持为C#实现面向对象编程带来强大的功能动力和美学感受。
第五篇:计算机.net实习日记
1实习任务
学习参与制作公司网站
装系统、应用软件、并配置网站在本地的运行环境
完成情况、收获、问题、改进
顺利装了系统,安装了IIS组件,并在IIS上设置了默认网站的主目录地址。
出现问题:地址栏中输入网址后发现无法察看网页。
解决方法:由于是在本地电脑上虚拟访问网站,要设置Internet来宾账户的权限(由于今后网站建设中进行后台管理,要勾选“修改”权限),并且发现,仅当磁盘格式化为NTFS格式时才可在xp环境下看到安全选项卡,进行设置。
2实习任务
对网站进行初步了解,大致认识已有网站的功能、结构
完成情况、收获、问题、改进
我所实习的虽然是软件公司,但是并没有人从事过网站建设。于是采用了更为方便省时的方法,直接采用已有网站模型,这样便直接有了网站的大体框架。
经过讨论采用了动易系统网站模型,该网站系统已经建好了“文章中心”、“图片中心”、“下载中心”“软件商城”几个系统频道,还有一个链接在外的留言板。
这些功能基本就满足一个软件制作销售公司的基本要求了。
3实习任务
熟悉后台管理操作,及各功能模块的作用
完成情况、收获、问题、改进
动易系统已经搭建好了很完善的框架,设计好了各种功能模块。
完成情况:尝试在后台进行了“添加公告”“添加问卷调查”“分析统计各访问数据”“添加友情链接”等一系列操作。
4实习任务
继续熟悉网站,熟悉各模块及各种管理操作
完成情况、收获、问题、改进
完成了添加栏目的操作,并设置了全站专题。
发表了文章,又上传了图片,并在后台对文章图片进行审核。
出现问题:上传下载中心的软件时发现不能上传过大文件。
解决:发现能在后台对文件的最大值进行设置。
5实习任务
为网站添加新频道
完成情况、收获、问题、改进
完成情况:对频道的基本信息(名称、说明、类型)、meta关键字,生成选项,前台式样、上传选项进行了设置。
发现添加过的频道自动出现在全站各页的网站导航栏上,也就是各频道即是网站总目录上的第一层分支。
实习任务
练习为网站添加图片、修改logo等美化操作
完成情况、收获、问题、改进
完成情况:修改了网站logo、添加了频道图片
出现问题:发现在动易系统中添加的频道图片替换了导航栏文字的位置,图片对齐方式的问题使得网页并不美观。
解决:对通用模板做了改动。
6实习任务
进一步熟悉网站各个模板
完成情况、收获、问题、改进
收获:网站中有通用模板,并且各频道、各栏目、各内容页也都有各自的模板,并有一套模板的管理系统,可以方便的设置各页的样式。
在编辑模式下可以直接修改模板,不需要代码知识。
问题:有时候编辑模式下的修改会出现问题,可将代码拷贝到Dreamweaver中,在编辑模式下改好后再将代码拷回。
7实习任务
通过学习教程,大致了解Dreamweaver的使用方法
完成情况、收获、问题、改进
熟悉了操作界面,创建了文档,进行了页面设置,尝试了页面内超链接与不同页面间的超链接,以及在本地创建虚拟站点的操作。
8实习任务
继续学习Dreamweaver的简单使用方法
完成情况、收获、问题、改进
练习了用表格精确定位各个板块,尝试了图层的使用,插入了一对一翻滚图及一对多翻滚图,初步尝试了行为面板的使用。
9实习任务
熟悉已经初步做好,并传到网上的网站
完成情况、收获、问题、改进
收获:公司相关人员将修改了频道与框架的 适用于本公司的网站基本做好。针对公司特点新增了“精品软件”与“软件评测”“企业概况”等频道。
做网站很关键的是要针对自己所需要的功能做好网站框架的设计。
实习任务
对网站进行seo优化
完成情况、收获、问题、改进
为使公司的网站和产品更容易被搜索引擎找到而需要对网站进行seo优化。
完成情况:结合相关资料对seo优化进行了初步的学习。
发现问题:
1、整个网站全采用了asp的动态页面,不如html页面容易被搜索引擎找到。
2、网站内部的js连接对搜索引擎也不友好。
3、标题结构不科学。
10实习任务
对网站进行seo优化,改善发现的问题
完成情况、收获、问题、改进
结合动易公司发表的最新说明及相关资料,在本机的虚拟站点上尝试改进。
做的改动有:
1、用.shtml及其相关的功能部件的链接代替asp+js的链接。
2、采用动易公布的新标签代替原有标签优化meta关键字的描述。
3、将页面标题倒序,采用“文章名——栏目名——网站名”的顺序。
11实习任务
对已上传到网上的网站进行实际的seo优化
完成情况、收获、问题、改进
完成情况:基本完成了各项优化措施
但是由于网站内各种模版众多相互间又比较相似,很容易改混,所以应注意将模版备份。更改后要重新生成页面,才可看见效果,但太频繁的生成页面容易使网站暂时出错。
12实习任务
对网站模板进行了改动,使关键内容出现在左侧,方便客户浏览。
完成情况、收获、问题、改进
完成情况:完成了对几个频道模板进行了改动。
相关问题及解决:可能由于系统不够完善,在后台直接改代码会出现问题,所以将代码粘贴到Dreamweaver中进行改动,网页采用表格定位,用Dreamweaver的编辑视图很方便的即可完成。
13实习任务
学习flash的简单操作继续修改网站模板
完成情况、收获、问题、改进
完成情况:
模板修改成功,使网站更加美观。
了解了flash的操作界面,熟悉了一下各工具按钮的作用,充分利用各种工具绘制了一些平面图形,但是使用过程中并不熟练,还需要在以后的学习和使用中进一步熟悉。实习任务
继续学习flash制作
完成情况、收获、问题、改进
完成情况:进一步的学会了flash的各种工具,做了简单的变形动画、遮罩动画,完成了一些简单的动画实例。
14实习任务
讨论解决网页打开速度慢的问题
完成情况、收获、问题、改进
经过反复实验,发觉影响打开速度主要是每次都要加载js链接,尝试将链接代码放到所有代价的下面,速度有所加快。
收获:有些事情看起来很难,但是只要去做,反复尝试之后总能找到解决的方法。
15实习任务
了解公司的概况,并将相关介绍发布到网站上。
完成情况、收获、问题、改进
我实习所在的XX软件公司,主要是开发XXX软件„„了解以上基本情况后,写了公司简介,并发布到网上,以便顾客更好的了解公司。
16实习任务
临时负责接听客服电话
完成情况、收获、问题、改进
由于公司所涉及的软件种类比较多,许多业务问题一时之间都无法了解,所以我只能负责简单问题的解决,比如像已经购买加密锁的用户提供注册号码等。但是却体会到客服工作需要很大耐心,而且需要熟悉已经开发完成的各种软件的操作方法。
17实习任务
对这一阶段的实习进行总结
完成情况、收获、问题、改进
将前一段时间进行网站建设的图片资料等转交给相关负责人员。整理了实习期间用到的资料,交给了公司。将自己学习到的东西进行了简单的回顾:主要了解了网站建设与优化、flash、Dreamweaver等软件的使用。与公司同事告别。