ASP.NET网页设计事情两年来 对VB开辟的感受仓酷云
也许唯一可以让世人留恋net网页编程的理由就剩下它的王牌——跨平台。我自从07年卒业列入事情以来,一向都用VB开辟体系,但在年夜学中次要进修的是C、C++和C#,对VB一点也没学过,也是在内心压根就不想学VB,以为VB的手艺含量不高,是一个将近过期的丑恶的开辟言语,记得在卒业计划时,有同砚用VB开辟的体系,叫我帮着调试,我对VB一点都不懂,看到VB6的开辟界面就不喜好,但仍是硬着头皮往了,我用在C#顶用的数据库毗连体例,帮他修正了一下数据的毗连,没想到还好用了,但这也没提起我对VB的乐趣。以为我不会进修这个掉队的言语的。更没想到的是卒业落后进了一家软件公司,原本觉得会常常用C#开辟体系,但从事情到如今我却一向用的是VB,几近没有效其他言语开辟过。但也是由于这个履历,使我对VB以致其他开辟言语的熟悉有了很年夜的变更,了解了很多开辟中的事理,如今就任意瞎扯说吧;)说的欠好处,敬请品评斧正,不堪感谢!进公司半个多月,头说今后的开辟大概用经常使用VB做开辟,固然不像进公司前公司给我们说的会用C#那样,但初来乍到,也就没甚么定见,因而就花了3地利间进修了一下VB的基础语法,3天后,我基础上懂得了VB的语法,也写了一些复杂的程序,因而就入手下手了我的“VB的开辟生活”哈。VB中的很多工具和C#纷歧样,起首是语法格局很分歧,很分明的是她没有分号哈,刚入手下手的时分很不习气,又如,VB的工程是依照模块支解的,个中包含窗体模块,通用模块,和类模块,偶然假如有好比Active报表一类的工具是会有新的模块,另有良多良多哈。
固然入手下手天天用VB开辟,但我仍是没有深切的往进修过她,只是把她当做一个工具,总以为我不会一向用她,以是学好了也没用。就如许我利用VB开辟了泰半年。可是仍是没有传闻要用C#开辟,因而内心很不是味道,千方百计的劝头让我用C#开辟,哈哈,点用都没有,由于我们小组基本就没有要用C#开辟的需求。
直到必要大批用到毛病处置功效的时分,我的设法有了改动,我入手下手深切的研讨VB中的毛病处置体例和道理,分离我之前在C#中利用的毛病错履历(VB中没有try...catch语句,只要onerrorgoto...等语句),千方百计让VB中的毛病处置满意我的请求。在这个过程当中,我学到了良多工具,能够像利用C#一样来利用VB,使用Err全局变量来完成向C#中的try...catch语句,捕捉的毛病后用一个函数一致处置等等,渐渐的发明VB没有我设想的那末丑恶,用起了也蛮恬逸的。在google的趋向搜刮上搜了搜,VB也不是我想的那样没人用,另有从年度开辟言语利用排行榜上看,VB还压倒一切呢。我发明本人之前的熟悉很有成绩,光凭本人设想就随便的给VB下结论。
用VB做开辟仍在持续(直到明天以致今后最少半年),但我的意见早已变了,天天的事情,我已不以为我是用VB在开辟,只是尽最年夜的勉力将本人的设法和营业的请求往完成,在开辟顶用到了各类算法,利用的表驱动法(见《代码年夜全2》),制造了和公司营业分离的控件,开辟了能进步开辟速率的共通模块和dll等等,只是全力的往完成,对利用的言语置若罔闻了,哈,大概是我长工夫的用VB开辟,已习气了她,就像我们对氛围置若罔闻一样。可是更主要的是我意想到对开辟影响最年夜的不是所利用的言语,而是代码标准、尺度化和程序计划。
08年7月份公司招了很多新员工,每一个开辟小组都分派了十多名新同事,我事情了一年,酿成了白叟了,因而就无机会率领新人开辟项目了。率领他人开辟比本人开辟坚苦多了,我以为。本人开辟不必交换,没有不分明的术语,没有不一致的开辟习气,认识完整分歧,但一个团队开辟就庞大多了。因而不克不及间接让新同事进进营业开辟(新同事全体是应届卒业生),培训必不成少。固然他们在进公司前培训的是Java或C#(公司有对新人的事前培训),对VB一窍不通,但我花在VB言语解说上的工夫寥寥可数,大批的培训工夫都花在代码标准和程序计划上了,我给他们一个相似POS机上扫描商品的小课题,没有触及到内部文档和数据库,实习他们的逻辑判读才能和将实践成绩用程序暗示的才能。个中有个新同事,看到其余小组在实习怎样毗连数据后,问我为何不让他们也实习谁人,我说谁人等你们入手下手营业后都就会了,但他仍是很不中意,以为我不给他们教手艺。经由过程一段工夫不长的培训,让他们进修实习了代码标准和程序计划,给他们讲了开辟中交换的主要性和应当怎样交换,另有十分夸大对大众变量的设置利用办法和划定,和大众接口的主要位置。
很快新同事都进进了实践开辟了,因为在培训时代的教导,我们几团体(我和几个新同事)的开辟速率和质量很不错,由于在开辟前作了良多筹办事情,好比代码标准,定名参考对比表,和之前做好的数据库毗连模块等等,并且他们也对这些标准和束缚有所熟悉了。谁人之前对我不满的同事如今开辟的很好,由于他对数据库毗连模块的利用很上手。实在VB中程序和数据库的交互都被ADODB模块封装好了,不必要太到的手艺拿过去用就好了,其他的言语也都迥然不同。我们再使用ADODB模块开辟成合适公司营业请求的模块,利用加倍便利,设置加倍复杂也就更没有手艺可言了,在平常的开辟傍边也就不会在在乎怎样往和数据库互换了,就像利用初级言语一样对内存的怎样分派就不必往剖析了。实在用VB和用其他开辟言语没有甚么太年夜区分哈。
比来我用VB做了一个通用的修正INI设置文件的小工具,由于之前托付软件时必要在匡助文件中很费力的给用户申明如何往修正设置文件。我将INI文件中的大节称号放在一个ComboBox中,假如选择个中一条,就会鄙人面显现出这个大节中的一切项目,称号放在Label中,内容放在Textbox中,有多条项目标话就逐一分列上去。我碰到了一个成绩,每一个大节中有几个项目不断定,以是我鄙人面用几个Label和Textbox也就不断定了,那末只能静态的给Form增加控件,可是增加简单删除却不简单,总是提醒如今不是删除的机会,我晕。固然最初用其余办法完成了,但此次的理论给了我很年夜的启发——假如我开辟WEB程序的话就不会产生这个成绩了,在WEB页上静态的增加一个控件岂不容易如反掌。因为VB中作的程序城市天生一个exe可实行文件,在可实行文件中在玩静态就会很费劲,但WEB不是,她会在一次哀求中尽量的依照用户的请求天生一个Html文件,再由扫瞄器往显现,如许就静态多了哈。我对WEB开辟一窍不通,已经进修了一段工夫终究由于以为他和windows界面程序差别太年夜,不克不及了解而保持,反而在用VB开辟中使我分明了一些WEB程序的道理有所熟悉,我以为我应当能用VB开辟一个WebServers,我只需能依据用户的哀求往天生分歧的Html就好了哈,说诳言了哈哈,那基本是不成能的哈。
如今,我固然仍用VB开辟,但我从中了解了良多事理——不管利用甚么言语做开辟开辟头脑都是相通的,不克不及把本人的头脑绑逝世在一种开辟言语上,要深切一种开辟言语往编程(代码年夜全2》)。我不会由于用VB而损失了我对程序开辟的感悟,消逝了我对开辟的信念,反而让我有了更多的感悟和更刚强的信念。
本文出自:http://www.ckuyun.com/alisx/archive/2009/02/27/1399515.html
刚刚打开这篇专题,猛然见到HAL9000发表的《对于大型公司项目平台选择j2ee的几层认识》系列,深受启发。 对于中小项目来说.net技术是完全可以胜任,但为什么现在大型公司或网站都选择php或java呢?就是因为微软不够开放,没有提供从硬件到应用服务器再到业务应用的整套解决方案。 虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。 主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。 现在的ASP.net分为两个版本:1.1和2.0Asp.net1.1用VS2003(visualstudio2003)编程。Asp.net2.0用VS2005(visualstudio2005)编程。现在一般开发用的是VS2003。 Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process)。 那么,ASP.Net有哪些改进呢? 代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。 PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。 Servlet却在响应第一个请求的时候被载入,一旦Servlet被载入,便处于已执行状态。对于以后其他用户的请求,它并不打开进程,而是打开一个线程(Thread),将结果发送给客户。由于线程与线程之间可以通过生成自己的父线程(ParentThread)来实现资源共享,这样就减轻了服务器的负担,所以,JavaServlet可以用来做大规模的应用服务。 如今主流的Web服务器软件主要由IIS或Apache组成。IIS支持ASP且只能运行在Windows平台下,Apache支持PHP,CGI,JSP且可运行于多种平台,虽然Apache是世界使用排名第一的Web服务器平台。
页:
[1]