博客统计信息

51cto推荐博客
用户名:cownew
文章数:291
评论数:163
访问量:141593
无忧币:1973
博客积分:4106
博客等级:7
注册日期:2008-06-30

我最近发表的评论

【解惑】这么多技.. 回复
我这篇文章主要为在校生写的,对于..
注册CSDN帐号的见闻 回复
晕,以前真没发现
loadrunner9.5破.. 回复
尊重知识产权。
    微软MIX11大会上微软发布的Mango的最新特性让关注移动的开发人激动不已:增加中文支持、多任务、直接操作设备(比如摄像头)API、Socket、支持SQLCE数据库、指南针API、陀螺仪API、访问日程安排的API、内置IE支持HTML5、XNA和Silverlight混合使用……这些特性大大扩大了扩展应用的能力。有了中文支持华人终于可以舒服的用上WP7了,有了多任务闹钟程序不用再必须显示在前端了,开发人员可以直接读取摄像头这样实景增强类应用在Windows Phone上就能轻松实现了,有了Socket支持WP7版的QQ将会变为现实、有了SQLCE数据支持我们就不用再可怜的把数据往独立存储中存了。 
    后发制人的微软就是牛,我十分看好Windows Phone的未来,详细参考我的博文《向前向前向前!向Windows Phone平台前进》。看了微软演示的WP7开发工具最新版中也对仿真器做了增强,比如收音机用网络收音机模拟、用3D旋转模拟手机旋转、用地图选取模拟手机位置变化。可以看到windows phone的开发原来越人性化、易用,这正是微软平台吸引开发人员的一个地方。
     眼睁睁的看着微软官方的仿真器的仿真设备越来越多,而且和我的&ldq..
类别:未分类|阅读(73)|回复(0)|(0)阅读全文>>
  距离2010年10月11日微软正式发布Windows Phone 7(简称WP7)已经过去半年了,2011年2月初由传出微软和诺基亚结盟的利好消息,我通过微博、百度知道等网站看到wp7的关注度也在持续上升,但是在国内.net开发人员中对于Windows Phone 7开发技术却响应者很少,虽然有Terry_龙 、Alexis 、linzheng、金山崟霸等牛人撰写了不少wp7开发的文章,但是这些文章的评论却少得可怜,0评论的一堆,常见的就是一两条评论,“WP7有约”的十多条评论也是“人情评论”多一点,少见技术型评论。


    就像PC机取代小型机、Web取代桌面大潮一样,现在移动终端时代已经到来,移动开发必将成为新的增长点,做为.Net开发者的我们对Windows Phone 7的关注应该是非常高的,为什么会出现现在的情况呢?我和我身边的朋友已经在开发社区上认识的朋友交流这个问题,很多人目前对WP7关注不足的原因如下:

1)windows phone 7平台刚推出,还不知道发展前景怎么样,iphone、android发展都那么火了,还有wp7的市场吗?而且大陆还没有上市,没有中文支持,用的人太少,也没有这方面的工作需求,怕学了一门没发展的技术。

2)windows phone 7集成的都是Windo..
类别:未分类|阅读(340)|回复(3)|(2)阅读全文>>
接上篇《【我来解惑】.Net应该学什么怎么学(三)》
八、ASP.Net

ASP.Net是.Net中用来开发动态Web应用程序的技术,ASP.Net主要分ASP.Net WebForm(以后简称WebForm)和ASP.Net MVC两种技术,大部分人说ASP.Net都是指的ASP.Net WebForm,而ASP.Net MVC则是微软最近推出的一门技术,前面已经提到过了ASP.Net MVC并不是用来代替ASP.Net WebForm的,因此不要认为“ASP.Net MVC淘汰了WebForm,学WebForm过时了”,对于初学者来说还是先学习WebForm,等WebForm掌握的比较好以后根据自己的情况学习ASP.Net MVC,现在很多公司招聘的时候都提出了“掌握ASP.Net MVC优先考虑”。下面我们还是主要来谈WebForm的学习。


 


很多人被那些“短平快”ASP.Net的书误导了,开始学习就从Button控件、TextBox控件、Repeater控件、GridView控件开始学习,为庞大的ASP.Net体系所折服,看着千八百页的书感叹“晕呢,这么多控件、什么多方法、这么多属性哪辈子学完呀”。当然也有人会拖几个控件以后就自诩“精通ASP.Net”,“拖控件、设属性、写事件”靠此三招走天下,但是一旦遇到稍微复杂一点问题就懵了。


 ..
类别:未分类|阅读(86)|回复(0)|(1)阅读全文>>
  对微博突然有了兴趣,想体验一把,因此准备开通腾讯微博。我在开通腾讯微博的时候,输入琢磨好的微博帐号“yzk”和姓名,点击【立即开通】按钮总是没有反应,重启了浏览器、重启了电脑都不行。后来以为是腾讯微博出现问题了,因此要下班了就没再弄它。
   回到家里我又试了一把,还是不行,如果是腾讯出问题的话,这么大公司不可能两个小时还没有修复,准备放弃的时候我突然发现旁边的提示消息:

    原来是微波账号长度不能小于6,可是这个系统提示也太不明显,就是把“6-20个字母、数字、下划线或减号”几个字稍微变了颜色,而且改变的颜色也是由灰变为微黄色。
    腾讯一向以可用性强著称,而且腾讯的主体用户都是IT技能很差的人员(不敢用“小白”这个词,怕挨骂),可是没想到在开通微博的时候就遇到这样一个陷阱。如果是我开发这个功能的话,起码应该当账号长度错误的时候弹出明显的提示,比如错误消息闪动、变大、变红,哪怕最丑陋的alert一下也好。已经在qq的反馈建议中给他们提交建议了,不知道他们是否会改进。
    今天朋友发给我一个网站“果实网”,我打开这个网站,首页很花哨,上面的苹果可以点击、路牌可以点击,但是每次点击都很不幸的被IE当成弹窗拦截住了:

   
    会不会访问这个网站的用户的浏览器启用了弹窗拦截的话,用户也会感觉“链接点了都没用,是个废网站”呢?
 
    专职搞.net培训这将近一年的时间,我接触了很多学生,包括培训班里的和网上的学生,发现一个很普遍的现象很多人对于程序弹出的消息框,都是下意识的点击【关闭】或者【是】或者【取消】,从来都不看消息框中提示的消息。连对计算机比较熟悉的学编程的学生都不会仔细看消息框中的消息,那么做为IT技能很差的这些腾讯的主体用户用微博的时候,给用户看到的是这个一个非常非常非常不明显的提示信息的话,是不是用户也是更是以为“微博不能用了”呢?如果腾讯这么做确实有道理的话,可能是我OUT了吧。“看了《老男孩》飙泪,说明我们老了!”
    我的腾讯微博地址:http://t.qq.com/yzk369  欢迎大家“收听”我(“收听”貌似在其他微博里叫follow的)。
注:以上谨代表个人观点,我誓死捍卫你反对我观点的权利,但请评论时保持文明用语。[/img]..
类别:未分类|阅读(94)|回复(2)|(1)阅读全文>>
接上篇【我来解惑】.Net应该学什么怎么学(二)
七、HTML、JavaScript、Dom
       HTML是对网页长什么样子的一个描述,也就是“这里显示一个超链接、那里显示一个按钮”都是通过HTML来进行描述的。HTML做出来的页面是静态、不变化,如果要实现“点击【计算】按钮的时候让表格放大显示”这样的动态效果,则要通过程序操作Dom,一般使用JavaScript这种脚本语言来操作Dom。
 
       如果不想成为只会拖控件的开发人员的话,需要在学习ASP.Net之前把HTML、JavaScript、Dom这些好好学习。提到这一点有同学可能会提出异议“不是这样的呀,ASP.Net已经封装的很好了,拖几个控件上来就可以了,ASP.Net都帮我们生成HTML了,也不用学JavaScript,动态效果写C#代码就可以了”。
       ASP.Net中这种拖ASP.Net控件的开发技术就叫做WebForm,微软的WebForm封装是非常伟大的技术,能够将复杂的Web开发简化到可以像开发WinForm程序一样点击,不得不佩服微软技术的强悍。使用WebForm我们就可以进行傻瓜化的开发,要是每天的工作、做每个项目的时候..
类别:未分类|阅读(1029)|回复(1)|(1)阅读全文>>
接上篇《【我来解惑】.Net应该学什么怎么学(一)》。
二、C#面向对象基础
       初学者学面向对象的时候没必要(也做不到)把面向对象学的非常透、非常深,因为如果想深刻的理解面向对象,必须要有大量的编程经验才能真正体会面向对象到底是怎么回事、有什么好处。以前听到过有人建议初学者学习设计模式,我认为纯属误人子弟,对于初学者来说没有大量的编程经验,根本看不懂设计模式在说什么。这个阶段只要弄明白怎么声明类、什么是访问级别(主要是public、private)、什么是属性、字段、方法、什么是继承、什么是override就可以。面向对象有三个特性:封装、继承、多态。对于初学者来说理解多态是非常困难的也是没太大必要的,这个阶段只要能掌握封装和继承就可以。
 
三、简单的WinForm编程
       WinForm是.Net中用来构建Windows窗体应用程序的技术,对于目前国内市场来讲一般也就是用来桌面版管理系统等的技术。有人会问“我们不是学B/S的ASP.Net开发吗?为什么还要学C/S的WinForm?”,一定要注意我在这段的标题写的是“简单的”WinForm。和ASP.Net比较起来,学WinFo..
类别:未分类|阅读(911)|回复(6)|(5)阅读全文>>
上篇《学了.Net做什么开发》中我讲到了目前.Net开发主要方向是Web开发,因此在本篇中我将主要讲解做Web开发要学哪些东西,怎么学,由于内容比较多,我将分几次发。下图是我推荐的学习内容和学习顺序(除了这里列出的内容,要走向高手之路肯定还有更多技术需要学习,我这里只是对于初学者列出的主干学习内容,并不是全部):

 
    开发者口中的.Net全称是.Net Framework,在中国大陆,一般将.Net读作“道特耐特”(中文音标比英文音标更好读,呵呵)或者“点耐特”。.Net是微软推出的一门技术,它是一个技术平台,基于这个平台进行开发可以简化很多工作。关于到底什么是.Net,不是一两句话能说清楚的,而且也没办法让初学者理解到底什么是.Net,因此你只要记住.Net这个词,随着我们越学越深入,你就会理解.Net到底是什么东西了。
    基于.Net平台上有很多语言,比如C#、VB.Net、IronPython、F#、Powershell等,F#、Powershell是满足特定用途的语言,IronPython、IronRuby等并没有广泛应用,VB.Net是仅次于C#的第二大基于.Net的语言,不过按照微软的战略是把主要精力放到C#上,VB.Net只是微软为了将VB开发人员平滑的转移到.Net平台下的语言。因此对于语言来说大家学习C#即可。C#在中国大陆的叫法一般是“C sharp(C煞普)”,也有少数人读成“C井”,我不推荐这种叫法。
    初学者可能会弄不清C#和.Net的关系,.Net是一个技术平台,而C#是这个技术平台上的一门语言,就像Windows是一个操作系统,而Word、QQ、FireFox则是在Windows上运行的一个程序。初学者不必纠结于这个概念,不是很明白也没关系。
    .Net的开发工具是VisualStudio,VisualStudio现在有VisualStudio2005、VisualStudio2008、VisualStudio2010等版本,注意不要纠结于“到底装VisualStudio2005还是VisualStudio2008,听说有的公司还在用VisualStudio2005”、“到底是用新版本的VisualStudio2010还是用VisualStudio2008”这样的问题,因为这些版本并没有本质的不同,使用方法都类似,就像你会用WindowsXP,换了Windows7以后经过短暂的熟练会用Windows7了一样。因为VisualStudio2010比较消耗资源,如果你的计算机配置较好可以安装VisualStudio2010,如果配置较差则推荐安装VisualStudio2008。
     要学习Web开发一定要按照正确的顺序进行学习,很多人被一些《21天精通***》这样的垃圾书的影响,不学C#、不学.Net Framework、不学Dom,直接上来就学ASP.Net,拖两个控件、配两个属性、双击控件写一个事件响应方法,就开始自诩“精通ASP.Net”了,照着书控件拖来拖去,可是连C#、.Net、ASP.Net、HTML、JavaScript之前的关系是什么都不清楚,闹出了很多笑话。欲速则不达,速成的结果就是以后浪费更多的时间,回想这么多年你走过的路,有多少次为了走快点就跳着走,最后又浪费时间返工的事情,按照正确的顺序才能更快、更好的掌握.Net。
    有的人可能认为“我不想成为高手,有一口饭吃就行了,会拖控件就行了呗”,千万不要以为会“不拖控件的开发”就是高手了,高手没有那么好当的。我没有奢求学编程的人个个都是以“成为世界顶尖级程序员”、“国内.Net开发者中的知名开发者”为目标,这个也不现实,大部分人学编程只是看做软件开发工资不低,想赚几年钱娶媳妇生娃,这种想法并不是多没出息的想法,毕竟“老婆孩子热炕头”是最朴实的幸福,你不需要背负“振兴中国软件产业”这种的重任,但是最起码应该找到一份不错的工作,工作几年以后能有钱交得起房子首付(对于大部分人来讲,能够交得起首付成为房奴都是很奢侈的事情)、每月供月供吧,如果只会拖控件的话就不是能不能成为高手的问题,而是能不能养家糊口的问题了。
     下面来详细讲解学习的各个步骤:
一、C#面向过程编程。
    学习C#语言分为C#面向过程编程和C#面向对象基础两部分。听到“C#面向过程编程”有人会问了“C#不是一门面向对象的语言吗,哪儿来的面向过程编程?”,其实面向对象不是代替面向过程的,面向对象是面向过程的一个补充和发展,面向过程就是代码逐行执行,面向过程就是if/else,面向过程就是for循环,面向过程就是变量、函数,C#中最基础的也是if、for、变量、函数等这些东西,这些东西就是C#的面向过程部分。对于编程的初学者来说,最难的不是类、继承、控件、ASP.Net、AJAX之类神乎其神的东西,而是“程序化的思维方式”,也就是怎么把一个问题的解决方式用计算机的思维方式进行描述。
    我接到过很多想深入学习.Net学生的咨询,当我问到“你的.Net基础怎么样”的时候,很多人都回答“学过C#、.Net、ASP.Net,感觉基础还行”,但是我给了他一个很简单的题,比如“用for循环累加的方式计算1到100之间整数的和”、“提示用户输入两个数字,然后程序打印两个数字的和”,很多人都做不出来。
    对于初学者来说先不用管面向对象、ASP.Net之类的东西迷惑,先学习用最朴实的for、if来编写程序,通过亲手编写练习题代码来逐渐形成程序化的思维方式,这个阶段也不要使用“看起来很酷”的WinForm或者ASP.Net页面来做,因为那样就会涉及到这个阶段不需要去了解的问题,先编写最简单的控制台程序就可以。推荐大家看我录制的视频教程《【传智播客.Net视频】第1季C#编程基础》,这个教程针对C#零基础的同学进行讲解,并且在课程中给出了非常多的练习,一定要自己亲手把代码熟练的写出来,记住是亲手写出来,而不是照着我的代码抄,更不能是看懂了我的代码就以为自己掌握了,要知道“看懂了”和“会写了”之间差着十万八千里呢。对于初学者来说一开始写那些练习可能有点困难,先理解我写的代码,然后自己总结成“先***后***,再***,如果***则***”这样的用语言描述的算法,然后照着算法描述自己写代码,发现有地方写起来遇到问题的话再参考我的代码,最后做到不用看我的代码、不用看算法描述也能把代码写出来,这样第一阶段的任务就完成了。下面列出我视频教程中的一些练习题,大家可以自测看这个阶段自己是否合格:
练习1:提示用户输入用户名,然后再提示输入密码,如果用户名是“admin”并且密码是“888888”,则提示正确,否则提示错误,如果用户名不是admin还提示用户用户名不存在。
练习2:提示用户输入年龄,如果大于等于18,则告知用户可以查看,如果小于10岁,则告知不允许查看,如果大于等于10岁,则提示用户是否继续查看(yes、no),如果输入的是yes则提示用户可以查看,否则提示不可以查看。(给出测试用例。)
练习3:从一个整数数组中取出最大的整数
练习4:计算一个整数数组的所有元素的和。
练习5:将一个字符串数组输出为|分割的形式,比如{“浮云”,”神马”,”穿梭”}数组输出为“浮云|神马|穿梭”。不要使用String.Join等.Net内置方法。
练习6:有一个整数数组,请声明一个字符串数组,将整数数组中的每一个元素的值转换为字符串保存到字符串数组中。
练习7:将一个字符串数组的元素的顺序进行反转。{"3","a","8","haha"} 转换为{"haha","8","a","3"}。提示:第i个和第length-i-1个进行交换。
学C#基础的时候的参考书推荐如下两本:
(1)《C#图解教程》,这本书讲的清晰易懂,不过部分内容安排顺序不合理,大家按照我视频中的顺序进行学习就可以。
(2)《C#入门经典》适合零基础的大部头,不过非常厚,采用的是老外的描述方式,中国人读起来有点别扭,而且中文版翻译的不是太好。 
 注:以上谨代表个人观点,我誓死捍卫你反对我观点的权利,但请评论时保持文明用语。[/img]..
类别:未分类|阅读(496)|回复(3)|(4)阅读全文>>
上篇文章《学.Net还是学Java?》中我阐述了不同语言学习的不同点,如果你开始决定学习.Net了,那么你的下一个问题很可能是“学了.Net我能做什么?”。

.Net目前主要的开发方向是:Web开发、桌面系统开发、移动开发。

Web开发通俗的说就是开发网站,包括类似于大众点评网等这样的互联网以及OA等内网系统,Web开发是目前.Net开发的主要方向,大部分招聘.Net的职位都是做Web开发,以我教的传智播客.Net班为例,2010年几个就业班的学员90%以上找到的都是Web开发方向的职位。
桌面系统一般指的是使用WinForm技术开发Windows软件,比如以Windows软件形式运行的仓库管理系统、图书管理系统等,也就是一般说的C/S开发(不严谨的说法),目前很多公司都有WinForm开发的产品,不过由于大部分公司的产品都开始转向基于Web的版本,WinForm版本都处于维护状态,因此基本不再招聘WinForm版本的新员工。
移动开发主要指的是手机开发。.Net手机开发目前主要是WindowsMobile的开发,目前中国大陆地区Windows Mobile开发的工作非常少。微软在今年(2010年)推出了WindowsPhone7(简称WP7)手机操作系统,微软在WP7手机操作系统的推出上继续采用了微软一贯的&ldq..
类别:未分类|阅读(436)|回复(3)|(5)阅读全文>>
  因为.Net和Java是国内市场占有率最高的两门技术,对于准备学习编程语言的初学者来说,.Net和Java是初学者首先考虑的两门技术,因此很多人一遍遍的问“学.Net还是学Java”,社区中也每天都有“.Net控”在唱衰Java,也有“Java控”在唱衰.Net,一时间硝烟四起,让初学者更加迷惑。
    做为一个.Net、Java、Delphi、Python、PHP等语言都进行过有一定复杂度的项目开发的人来说,我对任何一门语言都没有宗教式狂热崇拜,因此我也相对理性的对整个问题进行分析。
    从北京、广州、上海等地区2010年的就业统计数据(由于没有找到更权威的数据,这些数据是我对主流招聘网站和技术网站的相关数据进行的并不是太严谨的分析)来看,.Net和Java的职位数量比例为2:3,从就业网站和主要技术社区数据来看,2010年.Net和Java的学习人员数量比例为1:3。从数据上看,.Net的职位绝对数量比Java低一些,不过Java学习人员数量比.Net学习人员高出3倍,因此.Net职位的竞争激烈程度低于Java。
 
    由于.Net秉承了微软技术的入门简单的特点,经过短时间的学习就可以掌握拖拉控件的快速开发方式..
类别:未分类|阅读(2119)|回复(7)|(13)阅读全文>>
前两天看Dozer的博文《Visual Studio下的 JS & CSS 压缩和编辑插件》,感觉思路挺好,因为之前做过一阵子的VS插件开发,所以打算写一个出来。不过培训班的事情比较多,而且有两年没有碰VS插件开发了,一些细节忘了,所以利用周六没课的时间久开发了一个原始版本的出来。

安装包下载:http://files.cnblogs.com/rupeng/JSMinSetup20101106_bin.zip

源代码下载(需要安装VSSDK):http://files.cnblogs.com/rupeng/JSMin20101106_src.zip


由于是测试的版本,所以暂时只支持VS2008。安装后重启VisualStudio即可。在js文件上点右键可以在右键菜单看到“启用压缩”(请谅解我和春晚学的植入广告行为)

点击“启用压缩”即可,这样在js文件下就会折叠出现一个.min.js文件这个文件就是压缩后的js文件。

只要对js文件做任何的修改修改后min.js文件也会同步压缩。这样开发的时候页面引用min.js,然后编辑的时候编辑js文件即可。

源文件
 
类别:未分类|阅读(8)|回复(0)|(0)阅读全文>>




注:本博文面向初学者。

    前两天帮QQ群中的一个同学远程解决一个问题,这个同学据说自己折腾了一天都没搞定,给他结果以后感想非常多,今天有时间把这个问题以及背后隐藏的问题分享给大家。

    下面说的吃异常的错误不仅初学者会犯,很多工作很多年的人也经常会犯这种错误,因此虽然在很多人看起来很简单,我还是在这里罗嗦了,希望对有的人有帮助。

    这位同学说他写的程序总是报错说字段ParentId没找到,但是数据库中是有代码的。他是通过SQLHelper获得一个DataTable,然后把DataTable展示到ListView中进行数据展示的。示例性代码如下:

DataSet ds = SQLHelper.ExecuteDataSet("select * from T_Persons");

listview1.DataSource = ds;

listview1.FilterExpression = "ParentId=3";



其实他的这个程序是有很大缺陷的,因为他是在UI层中进行数据过滤的,这个问题暂且不提。



    主要问题是,T_Persons表中是有Pare..
类别:未分类|阅读(1311)|回复(1)|(1)阅读全文>>
同学提问:

我是个大专的学生,我们学校不开设操作系统,编译原理,数据结构这些课,而是教C/C++和.net。

如鹏理念:只精通一门语言,而把基础知识学扎实

作为一个大专的学生,我应该放弃C++或者.net其中一种的学习吗?把大量时间用来学习其中一门语言和数据结构,编译原理等基础知识

不知道这样想对不对,已经大二了,不想做代码工人,帖子我也看过好多,就感觉两门语言一起学会不会学杂了?

而且如鹏网自己也出了C语言和.net两门语言的教程,用不用都学完呢?为什么如鹏网没有基础知识的教程呢?

杨老师麻烦解答一下迷惑?
我的回答:
1、一通百通,为什么还出了C语言和.net的教程?

如鹏网一直倡导的就是:一通百通,不要在语言间徘徊,学好一门语言即可。

如鹏网说“学好一门语言即可”,由于在校生中很多专业都以C语言作为开蒙的语言,所以如鹏网推出了《C语言也能干大事》这套视频教程。但并不是说要所有学编程的人都学C语言,这也是很多同学的一直存在的问题,很多同学甚至问“老师,我现在在学C#,是不是要回头去学C语言”。如鹏网说的“学好一门语言即可”指的是自己确定一门语言,然后认真学习下去,不为别人所..
类别:未分类|阅读(1614)|回复(2)|(3)阅读全文>>
微软借助它在桌面领域的垄断地位不断推广它的最新技术,特别是做为微软最核心技术的.Net更是得到了最大力度的推广,社会上对掌握.net技术的开发人员的需求也越来越多。
为了帮助用最短的时间学到尽可能多的知识、掌握真实项目的开发经验,从而找到满意的工作,传智播客开办了“.Net 就业培训班”。“.Net 就业培训班”由任职于微软中国的杨中科老师担任主讲,重点培养掌握ASP.Net、WinForm、ADO.net、Microsoft  SQLServer数据库、Oracle数据库的实战与理论双结合型工程师。通过本课程呼叫中心、进销存、如鹏网CMS等多个真实项目的训练,学员还可掌握软件架构设计思想、搜索引擎优化、缓存系统设计、网站负载均衡、系统性能调优等软件编程高级技术。让学员毕业后真正具备两年左右软件开发经验。
我们的课程有如下几个优点:
1、 价格低
市面上很多.net培训班的收费都要上万元,为了帮助更多的同学掌握实实在在的就业技能,传智播客决定改变这种培训暴利的行业“潜规则”,让同学们得到真正的实惠,我们的“.Net 就业培训班”学费仅需5800元。同时我们保证“低价高质”,降低价格并不会使得您学到的东西打折扣,学更多的东西花更少的钱,怎么算怎么划算!
2、 师..
类别:未分类|阅读(43)|回复(0)|(0)阅读全文>>
为了帮助同学们能够在集中的时间段内学到更系统的知识、获得真实项目的开发经验,从而找到满意的工作,如鹏网和知名的IT培训机构传智播客合作,推出“.Net精品就业班”。

杨中科老师全程教学、全程指导,掌握真实项目开发经验、获得就业技能,这么好的机会还等什么,快来报名学习吧!

杨中科老师在线咨询QQ(本QQ只受理实地培训班咨询、报名,其他事宜请在如鹏网发帖):


教学方式:全日制脱产学习,实地培训,人手一机
培训地点:北京
开班时间:2010年4月20日
培训时间:3个月
住宿:外地学员我们负责联系住宿,住宿安排在公司附近一个公寓,房子带卫生间,宽带、可洗澡。
上课时间安排:每周5天课,早9点-晚8点。具体时间安排为,杨老师授课时间:早9点-12点,下午2点-5点。中午12点-下午2点为午餐、上机时间,下午5点-晚8点为晚餐、上机练习时间。每周休息的2天,学员也可以到公司练机。
为了庆祝如鹏网第一届实地培训班的开办,我们决定第一届实地培训班学费施行大优惠,只需5800元。

培训目标:本课程重点培养掌握ASP.Net、WinForm、ADO.net、Microsoft SQLServer数据库、Oracle数据库的实战与理论双结合型工程师。通过本课程多个真实项目的训练,学员还可掌握软件架构设计思想、搜索引擎优化、缓存系统设计、网站负载均衡、系统性能调优等软件编程高级技术。让学员毕业后真正具备两年左右软件开发经验。

招生对象:本课适合于了解c#基本语法,对.net编程有着浓厚兴趣的人士。

强悍的师资:微软一线高级软件工程师亲自授课,教授的绝非三脚猫功夫
    杨中科老师不但是微软一线高级软件工程师,同时也是技术书籍的作者,在如鹏网上更是帮助无数的同学走出迷茫、走向辉煌。由这样的优秀老师讲课可想而知课程条理清晰、讲解清楚,知识面广、深度足够!下面是杨中科老师在微软工作时的照片及其出版的书籍。
yzk2.jpg
下载 (10.54 KB)

前天 12:06
类别:未分类|阅读(217)|回复(0)|(0)阅读全文>>
这两天一张“有图有真相”的图片在各大论坛和QQ群中疯传,内容如下:

目前热播的电视剧《蜗居》第24集3:30秒截图,在小贝 的 桌子上那本书放大看是《大规模C++程序设计》,说明小贝是程序员。小贝被宋思明(市长秘书)戴了绿帽子。为无数想为 软件开发献身的人士叹惜呀。搞了一辈子C++,结果老婆跟了宋思明。 这部电视剧深刻揭露了程序员的悲剧性。相信这个重大发现将彻底粉碎那些少年们对程序员这个职业的向往,这个时代女生不会因为你写了一个搞笑程序而嫁给你。
建议广大程序们建议你们周围的少男们看一下蜗居,如果他以你为荣,以后想当程序员。你可以告诉他,小贝就是程序员,然后告诉他宋思明是公务员。相信他就会重新考虑自己人生的选择了!!!!!!!!!!


本以为发帖子的人只是拿来开玩笑
    但是看了很多网友、同学的回帖却明显感觉气氛不对,很多同学竟然貌似很严肃的对待了这件事情,纷纷说“嗨,搞计算机真没前途,还是当官好”、“当程序员没前途哇,都被人当绿帽子了”、“不学计算机了,看似是白领,没想到房都买不起,自己女朋友被宋思明拐跑了”、“不学编程了,去考公务员吧!”。本以为这些网友会“放下程序,拿起公务员考试题”呢,没想到在另外一个帖子里又开始再跟别人讨论魔兽攻略了。我才明白小贝不是可悲的,这些人才是可悲的。

    在这些人心中“当程序员的小贝被当公务员的宋思明抢走老婆”只是他不去学计算机、不在计算机行业深入研究的增加一个借口而已。“反正毕业也找不到工作不学习了”,这样就有借口不去上课了;“搞计算机的是吃青春饭的,没前途”,所以就蒙起被子继续睡大觉挥霍用来吃饭的青春;“宿舍老三的老爸是局长,人家毕业后直接回家当科长,咱们好好学不还是失业吗?算了”,然后继续在电脑上打WOW; “如鹏网里经常和我聊那个function321拿到一大堆公司的offer,那是人家有计算机天赋呀”,然后继续看着《火影忍者》等待天赋降临;“隔壁宿舍老大人家在学校里自己就开公司,现在赚的钱都自己买了别克商务车了,嗨,咱们毕业还要写代码混饭吃”,放下翻了没有两页的《C程序设计》仰天长叹。逃避奋斗总会有理由的!

    有人说“这个社会是不公平的”,我却说“这个社会是非常公平的”。“宿舍老三的老爸是局长,人家毕业后直接回家当科长”那是人家老爸奋斗的结果; “隔壁宿舍老大人家在学校里自己就开公司,现在赚的钱都自己买了别克商务车了”,那是人家自己钻研经商之道奋斗出来的结果;“宋思明有能力帮海藻买房、买衣服,给小贝戴绿帽子”, 那是人家宋思明在没有硝烟的官场上出生入死当上市长秘书的结果。成功的人总是有成功的理由,理由不尽相同;失败的人失败的理由却永远永远相同,那就是——懒惰。

    还是我以前在《【解惑】专科生在IT的发展之路》这篇文章中说的那句话“社会上有成功的人永远都是少数人,做任何事情都是只有20%的人成功,另外80%的人都是失败的”。以《蜗居》中的宋思明为例,大家都认为宋思明当了公务员,走上了仕途,所以才现在风风光光,可是你知不知道有大把的公务员熬了一辈子临退休连个最小的副科长都没熬上的,有很多人好不容易考上公务员没过几年却由于自己后台不硬、没讨好领导、得罪有背景的同僚被淘汰……,最后能走上宋思明那样地位的人少之又少。而且宋思明也并不是真的那样风风光光,他要防着别人捅刀子,要保证自己的那些违法乱纪的勾当不被揭穿,宋思明容易嘛?

    有人总是说“搞计算机毕业就失业”、“搞计算机的小贝买不起房子”,先不说网易的丁磊、巨人的史玉柱、金山的求伯君、CSDN的蒋涛、江民杀毒的王江民、discuz的戴志康、金蝶的袁红岗等等这些计算机技术出身的成功人士,就是在中关村混了三五年、年薪十万以上、能全款买下一套好房的程序员也一大堆,当然更多的程序员是混了三五年还是月薪三四千的月光族。非常正常!正符合我说的“做任何事情都是只有20%的人成功,另外80%的人都是失败的”的这个说法。公务员中混的好和IT认识中混得好的一样,公务员中混的差和IT认识中混得差的也没什么不同。
    别让“当程序员的小贝被当公务员的宋思明抢走老婆”这样的话成为你逃避的理由,如果想在IT这行混下去,继续努力,即使成不了求伯君,也至少能弄个年薪十万。如果没有在IT行业混下去的想法,希望成为下一个宋思明的话,那么抓紧关掉魔兽、叠好被子,拿起公务员考试的书,然后发动你七大姑八大姨看看有没有亲戚当局长的,当上公务员以后把握风向、跟对队伍,早日完成你光宗耀祖的目标。


成功的人是不同的,失败的是却是相同的![/img]..
类别:未分类|阅读(2595)|回复(20)|(4)阅读全文>>
php中可以使用strlen或者mb_strlen计算字符串的长度,但是这些长度计算的都是在计算机中表示的长度,并不是实际在屏幕上显示的宽度。如下图(使用的是arial字体):


最理想的实现方式是使用imagettftext计算字符串使用特定字体显示的宽度:
function tf_strlen($str)
{
 return ceil(tf_strwidth($str)/tf_strwidth('测'));
}
function tf_strwidth($str)
{
 $im=imagecreatetruecolor(10,10);
 $r=imagettftext($im, 12, 0, 5, rand(14, 16),0, 'arial.ttf', $str);
 return $r[2]-$r[0];
}
需要在本地计算机的字体文件夹中找到'arial.ttf',然后上传到php页面同级的目录下。这样调用tf_strlen得到的就是字符串在屏幕上的显示宽度了。但是因为imagettftext是GD级别的操作,因此效率非常低,编写下面的程序验证
$begin=microtime(true);
$im=imagecreatetruecolor(1000,1000);
for($i=0;$i<10000;$i++)
{
imagettftext($im, 12, 0, 5, rand(14, 16),0, 'arial.ttf', "rupeng.com 如鹏网 在校不迷茫,毕业即辉煌");
}
$t1=microtime(true)-$begin;
echo 'imagettftext:'.$t1.'<br/>';
$begin=microtime(true);
for($i=0;$i<10000;$i++)
{
strlen("rupeng.com 如鹏网 在校不迷茫,毕业即辉煌");
}
$t2=microtime(true)-$begin;
echo 'strlen:'.$t2.'<br/>';
echo $t1/$t2.'<br/>';
运行后发现imagettftext的运行时间是strlen的4000多倍,太慢了,而且CPU占用率非常高,因此被否定。
经过观察发现arial字体下,汉字的宽度是一致的,而1、i、l等字符的宽度大约是汉字的0.4倍,而阿拉伯数字(除了1)的宽度则是汉字的约0.7倍,小写字母(除了i、l等)的宽度是汉字的约0.7倍,大写字母则是汉字的0.8倍,其他字符也可以得出相应的倍率。因此我编写了下面程序用来计算字符串占的宽度(单位是1/2的中文宽度)。
function arial_strlen($str)
{
 $lencounter=0;
 for($i=0;$i<strlen($str);$i++)
 {
  $ch=$str[$i];
  if(ord($ch)>128)
  {
   $i++;
   $lencounter++;
  }
  else if($ch=='f'||$ch=='i'||$ch=='j'||$ch=='l'||$ch=='r'||$ch=='I'
  ||$ch=='t'||$ch=='1'
  ||$ch=='.'||$ch==':'||$ch==';'||$ch=='('||$ch==')'
  ||$ch=='*'||$ch=='!'||$ch=='\'')
  {
   $lencounter+=0.4;
  }
  else if($ch>='0'&&$ch<='9')
  {
   $lencounter+=0.7;
  }
  else if($ch>='a'&&$ch<='z')
  {
   $lencounter+=0.7;
  }
  else if($ch>='A'&&$ch<='Z')
  {
   $lencounter+=0.8;
  }  
  else
  {
   $lencounter++;
  }
 }
 return ceil($lencounter*2);
}
经过大量的测试,发现和imagettftext的运行结果非常接近,而速度则比imagettftext高很多,CPU占用率也低很多。
解决思路对于其他语言,比如C#、Java等都适用。[/img]..
类别:未分类|阅读(363)|回复(0)|(0)阅读全文>>
现在有的网站为了防止其他人转帖他们的内容而不写“转帖自。。。”,在你复制它网页内容的时候会自动增加“本文来自于如鹏网”这样的额外的文字。这本来无可厚非,但是它们的原理是首先监听用户的复制事件,当复制动作发生的时候取得用户选择的内容,在内容后添加“本文来自于如鹏网”,然后在用clipboardData.setData设置新的粘贴板内容,但是clipboardData.setData只支持Text、URL两种格式,无法设置HTML格式的粘贴板内容,因此造成复制出来的内容粘贴的时候一些html格式都丢失了,比如字体颜色、表格等等,非常麻烦。
如果使用Maxthon浏览器,有如下两种解决思路:
1、思路1
(1)选中要复制的部分,点击右键选择“查看选定区域源代码”;
(2)在弹出的记事本中将文件另存为htm文件,也就是文件名中输入“1.htm”之类的带htm后缀的文件名。
(3)用浏览器打开刚才保存的htm文件,全选,复制就可以了。
2、思路2(推荐方法)
(1)选择主菜单的【工具】→【内容控制】→【禁止运行Javascript】,然后就可以任意的复制而没有“零碎”了
(2)复制完了再次选择主菜单的【工具】→【内容控制】→【禁止运行Javascript】,将【禁止运行Javascript】前的勾选去掉即可。

使用..
类别:未分类|阅读(75)|回复(0)|(0)阅读全文>>




昨天发现SupeSite/XSpace4.0的日志编辑器有bug,也就是在IE8下点击“插入表情”、“文本颜色”等的时候是弹出一个新的标签页,而不是弹出模态对话框,并且在弹出的对话框中选择表情的时候报错“dialogArguments is undefined”。
一开始我以为是IE8中不支持dialogArguments 了,但是发现不对,因为IE8下“弹出一个新的标签页,而不是弹出模态对话框”,因为IE8是支持showModelessDialog/showModelessDialog、很显然在IE8下调用的不是showModalDialog或者showModelessDialog,而是window.open,打开编辑器的文件/images/edit/edit.js,看到function oPenWin函数的定义:
 function oPenWin(_sTitle, _sWidth, _sHeight, _sUrl, _bDialog, _open){
  xposition=0; yposition=0;
  if ((parseInt(navigator.appVersion) >= 4 )) {
   xposition = (screen.width - _sWidth) / 2;
   yposition = (screen.height - _sHeight) / 2;
  }
    if(_open) {
   window.open(_sUrl,"win","menubar=no,location=no,resizable=no,scrollbars=no,status=no,le..
类别:未分类|阅读(116)|回复(2)|(0)阅读全文>>
昨天网站虚拟主机提供商发送提醒邮件说我的网站“如鹏网”流量超标了,很奇怪,上个月流量用了一半多一点儿,这个月网站访问量并没有明显的上升,怎么会这个月才过20天就流量超标了呢?到网站后台查看流量报表才发现agent.php消耗了31%的流量,将近1/3呀。

agent.php就是为“如鹏助手” 提供数据的api页面,默认如鹏助手每10秒钟就会向这个页面请求最近50条新帖和50条新回复。当时开发的时候也考虑过这个功能会不会对网站流量有非常大的消耗,但是当时没有进行科学的计算,想当然的认为不会。但是现在仔细一算,50条新帖、50条新回复的信息估计有100K,那么每分钟请求6次,假设每天监控15小时,每个月30天,那么一个月的流量就是100K*6*60*15*30=16200000k=16200M=16.2G,恐怖呀!!!网站每月限定流量是45G,正好是16.2/45=36%,估算和报表中的31%差不多。

因为网站流量已经超标,因此必须买额外的流量才能保证网站正常运行,10G的流量一个月20元,买流量就要买足剩下10个月的,10个月就是200元,本来这部分花费是可以避免的。当初花几分钟算一下就不至于犯这种错误!

不要再拍脑袋,要科学的计算!!!!!!!!!

为了减少如鹏助手流量消耗,我做了如下的优化:
1..
类别:未分类|阅读(48)|回复(1)|(0)阅读全文>>
修改于http://blog.csdn.net/majianan/archive/2008/12/30/3646565.aspx
使用的这个TabPane已经有了TabPane的所有功能。


 不过我想增加一个功能,就是:
1、每隔一段时间,选项卡自动切换到下一页。
2、当用户点击TabPane内任意一个选项卡的时候自动切换停止。

效果图:

 
代码下载:
 
使用方法参考附件rupengtabpane.zip中的test.htm
TabPane类构造函数有三个参数,第一个参数是占位div的id,第二个、第三个都是可选参数,第二个为自动切换的时间间隔,单位为秒,默认值为10,第三个为是否启用自动切换,默认值为true
tabPane.js中还提供了一个function randint(m,n)函数,用于产生一个changeTabInterval的随机数,防止页面上TabPane过多,如果设置的changeTabInterval都一样的话会产生整齐划一的切换的效果,不好看,因此用它产生随机的Interval给TabPane类构造函数的第二个参数。

演示地址:http://www.rupeng.com/forum
类别:未分类|阅读(100)|回复(0)|(0)阅读全文>>
 <<   1   2   3   4   5   >>   页数 ( 1/15 )