个人手机游戏开发者之死
个人移动游戏开发者 黄峻从2012年初开始,已经有10年游戏开发经验的我和一个要好的也是搞游戏开发的朋友,辞职在家搞手机游戏开发。当时就是觉得手机游戏开发难度不大,而且创造了一个又一个的神话。其实我们目标也不高。开发自己喜欢的游戏,是每个游戏人的梦想,为了实现这个梦想,先稳定自己的生活状况是首要条件,如果家人也无法养活,就更加不要谈梦想了。创业到现在,每天都蹲家里,开发的第一个游戏,是一个推金币游戏《萌萌推金币》。不说题材如何,至少画面可以说是苹果上最好的推金币游戏,之所以选...
阅读全文...
10款开发和设计应该安装的android应用
过去几年里有很多新开发的小工具出现,人们的生活越来越离不开智能机,当然包括android手机,它已经成为了人们的最大需求量之一,市场上出现的android手机也越来越多,人们也比较喜欢用andorid手机。因为相对而言,价格比较能够让人接受,却包含了人们期望有的功能,可以说性价比比较高。android开发者不得不随时为了跟上最新的发展技术而作出不断的改进和努力。也随着涌现出了很多帮助开发者进行开发的工具,比如远程桌面连接客户端,AndFtp等等。下面推荐很多开发者和设计师可能会用到的...
阅读全文...
程序员与画家
相信有很多程序员或非程序员都看过一本畅销书《黑客与画家》,关于黑客与画家的比较是保罗格雷厄姆提出的,或许有人比他更先提出,我就不知晓了。保 罗格雷厄姆说的是黑客,而我更想讨论的是广大的程序员,用一句时髦的话说不是每一个程序员都能成为黑客,也不是每一个黑客都是程序员。黑客是程序员的进 化,但不是唯一途径。黑客从狭义上说,同时也是很多非IT行业人的理解,就是技术NB的程序员,从广义上说黑客技术NB只是一个条件,还必须具有自由开放 的思想。这也是黑客偏爱开源的根本原因。不是有句名言嘛,&ldquo...
阅读全文...
10年软件开发教会我最重要的10件事
0. “面向对象”比你想象的要难得多也许只有我有这种想法,不过我曾经以为计算机科学课上学过的“面向对象”是很简单的东西。我的意思是,创建一些类来模拟现实世界能有多难啊?其实,那还真是挺难的。十年之后,我仍然在学习如何合理地建模。我后悔以前我没有花更多的时间来学习面向对象和设计模式。优秀的建模技术对于每一个开发团队都是非常有价值的。1. 软件开发的难点在于沟通这里的沟通是指与人的沟通,而不是socket编程。有时你...
阅读全文...
阅读优秀代码是提高开发人员修为的一种捷径
编者按:原文作者Alan Skorkin是一名软件开发人员,他在博客中分享对软件开发相关的心得,其中有很多优秀的文章,本文是其中的另一篇。Alan认为:阅读优秀代码是提高开发人员修为的一种捷径。以下是全文。我突然想起来,很多程序员都讨厌阅读代码。来吧,承认吧! 每个人都喜欢编写代码,编代码是件趣事。 另一方面,阅读代码也不容易。 不仅不容易,而且还非常枯燥,咱们要面对这一事实。任何不是你的代码都不怎样。(虽然我们没有说出来,但我们都是这样想的。) 即便是你自己几个小时之前写的代码,也...
阅读全文...
你是世界上最优秀的开发人员吗?
关于谦虚,千言万语都道不尽。作为独立的个体,我们都往往钦佩那些谦虚的人。低调的名人、平和的僧侣,都是我们所敬仰的。从小别人就告诉我们,谦虚是件好事儿,而且要求我们一定要谦虚。然而从社会角度来看,谦虚的人并不会得到嘉奖。默默辛勤工作的人不会得到赏识,不断争取、随后又能证明自己能力的人才会得到赏识。软件开发也不例外,我们都渴望与高手共事(这是人的本性),都想与我们认为优秀的人合作。没有人愿意与一声不吭的人一起工作,可能是因为大家都不知道他到底有多大本事。嗯,这的确使我们有些进退两难。...
阅读全文...
计算机科学专业应该传授的三件事
没错,只有3件事。我多么希望在大学期间学会很多件事,但是我深知没有任何专业会对你进行完整而透彻的教育。一门专业是为了传授你基本知识并且教会你学习其他知识的技巧。然而作为一名软件开发员,随着经验的积累,我发现越来越后悔在工作之前没有学习深入理解过本文中列出的3件事。我相信,任何计算机专业如果能够更多的关注这3件事,都会变得更有意义。如果工作之前更加深入的学习这3件事,相信我会更具实战经验,而不是去恶补工作所需的每件事。我会更加从容的应对工作上的需求并且成为IT界更加优秀的一员。...
阅读全文...
五个htaccess文件的常用技巧
说起.htaccess规则文件,很多朋友都不会陌生,特别是使用wordpress、discuz等php类开源产品的朋友,该文件的作用与windows主机下的httpd.ini文件稍有雷同之处,但.htaccess的作用要大得多,我的几个站点也都使用了.htaccess文件,今天就分享几个常用的技巧。Htaccess 文件是Apache HTTP web服务器的纯文本配置文件。无需访问httpd.conf 文件,用户就可以设置目录选项。因此,要求你的服务器使用Apache,并且主机也支...
阅读全文...
Java Spring框架研究
Spring是一个WEB Framework,和其他框架不同的是它更像一个组合其他框架的框架。即他可以很快的将其他Open source组件快速集成到框架中,很快的构建应用系统,如,ORM、事物、对象连接池等。他的理念就是避免重复开发。之所以有这么多的framework出现,是因为寻求一种轻量级的解决方案,否则EJB即可以解决收有得问题。Spring 非常容易上手,而且Spring 可以使你的构架更加得清晰和易于维护和测试。简单的配置和易于集成的开发思...
阅读全文...
十四条实用的MySQL 查询语句
在使用 WordPress 的过程中,某些时候需要修正一些数据库方面的问题。相比之下,直接在数据库中执行查询语句是最便捷的。在这里,提供了 14 条非常实用的查询语句,可以帮助遇到类似问题的用户解决相应的问题。如何执行 MySQL 查询语句通常情况下,我们可以直接进入服务器的 MySQL 命令行中执行。也可以使用非常著名的 WEB 程序 PHPMyAdmin 进行查询。如果我们想在 WordPress 后台直接进行查询,还可以使用 SQL Executionner 这个插件对...
阅读全文...
十个JavaScript页面布局技巧
交付信息结构是一个交互式用户界面所需要完成的首要任务。更直观的布局结构设计,能使用户更好的理解内容。不管你想要介绍的是什么样的内容,你都可以以更加互动和更加适应的方式去呈现现它。本文里面收集的11种高超的JavaScipt技术,让你更好的控制内容的显示方式,以便用于下一次的布局设计。“页面滑动门”, “隐藏的内容”, “图片和内容滑动门”, “动画幻灯片”, “传送带&rdqu...
阅读全文...
十个最著名的JavaScript 库
JavaScript 是 Web 开发与设计中不可或缺的东西,不管是一个简单的网页还是一个专业的站点,也不管你是高手还是菜鸟,如今 JavaScript 库越来越强大,可以胜任许多复杂的工作,然而同时,人们在众多 JavaScript 库面前又觉得无所适从,本文,我们将使用 Google 搜索出排名前 10 位的 JavaScript 库,并对它们逐一进行介绍。1. jQuery: The Write Less, Do More, JavaScript Library jQuery 是一...
阅读全文...
常见的开源软件许可证协议介绍
开放源代码(Open Source)指一种软件散布模式。一般的软件仅可取得已经过编译的二进制可执行档,通常只有软件的作者或著作权所有者等拥有程式的源代码。开源不仅仅表示开放程序源代码。从发行角度定义的开源软件必须符合如下条件:1、自由再发行许可证不能限制任何团体销售或赠送软件,软件可以是几个不同来源的程序集成后的软件发行版中的其中一个原件。许可证不能要求对这样的销售收取许可证费或其他费用。2、程序源代码程序必须包含源代码。必须允许发行版在包含编译形式的...
阅读全文...
开源软件许可证知识产权问题
自由软件的英文是“Free Software”,此处的“Free”是自由(Freedom)的含义,而不是“免费”的意思,它本意强调的是软件代码自由的流动,即允许任何人基于一定的许可规则来使用、拷贝、修改、分发的软件。开源软件(Open Source Software)也具有自由软件的大部份属性,但开源软件从其价值取向上不完全等同于自由软件。开源软件的定义着重于通过源码的公开,为社会提供创造功能完善和高质量软件的潜力,并回...
阅读全文...
应用最广的十大Javascript框架
近日,知名技术开发网站SYS-CON 媒体列出十个应用最广的Javascript框架,文章说,Javascript库已经成为设计优秀网站的基础,当今几乎所有站点都带有Javascript或Ajax元素。在Web2.0开发大潮中,它也许是最关键的要素。以下十个十大Javascript框架,你常用其中的几个?1. script.aculo.us (http://script.aculo.us/)URL: http://script.aculo.us/文档: htt...
阅读全文...
Java程序的加密和反加密
写在前面的话:写这篇文档的目的是让大家能更深入的了解Java技术,而不是教你怎么去破解Java程序;武器没有罪过,要看是好人用它还是坏人用它。首先我们来看看Java程序的反加密,也就是通常所说的Crack过程,只有明白了这个过程,我们才能有效的对我们的程序进行加密。通常我们得到的Java程序的Crack包有两种,一种属于KeyGen(注册码生成器)、一种属于替换修改;我们先看第一种,当我们找到一个应用程序的KeyGen的时候我们总是很佩服那个做出KeyGen的人,觉得...
阅读全文...
在Java中编程实现数字签名系统
一个数字签名系统主要分为三个部分: 1。生成密钥对 2。在数据发送端对数据进行签名 3。在数据接收端对数据进行校验数据签名 下面从这三个方面分别说明: 1。生成密钥对 生成密钥对可用java提供的类KeyPairGener...
阅读全文...
PHP开发框架的现状和展望
作者:shirly引言:随着Ruby on Rails的火爆,PHP这个流行的Web应用脚本语言也出现了大量的新一代开发框架。与此同时,国内PHP开发者也开始紧跟国外发展,推出了不同的开发框架。Rails最强大的功能就是活动记录。使用它可以很方便地映射数据表,而且还可以描述表之间的相互关系.Ruby on Rails催生变革在RoR流行之前,PHP领域也有不少开发框架,例如Mojavi、WACT、PHPMvc和Seagull等。这些框架虽然也采用了MVC模式、数据库抽...
阅读全文...
Java将成为甲骨文王牌产品
美国知名财经杂志《商业周刊》网站今天撰文称,甲骨文收购Sun后,获得的最有价值的资产就是Java.它将成为甲骨文的王牌产品,帮助其抗衡微软和 IBM等业界巨头。13年来,Sun的Java语言虽然成为了计算机行业最为知名的品牌之一,但并未获得应有的价值。在周一的分析师电话会议上,甲骨文首 席执行官拉里-埃里森(Larry Ellison)将Java称作是“我收购过的最重要的软件资产”。自2005年以来,埃里森已经先后斥资400亿美元收购了50多家软件企业,因此,他 的这...
阅读全文...
网站标准重构的基础知识
什么是XHTMLXHTML是The Extensible HyperText Markup Language(可扩展标识语言)的缩写。HTML是一种基本的WEB网页设计语言,XHTML是一个基于XML的置标语言,看起来与HTML有些相象,只有一些小的但重要的区别,XHTML就是一个扮演着类似HTML的角色的XML,所以,本质上说,XHTML是一个过渡技术,结合了部分XML的强大功能及大多数HTML的简单特性。2000年底,国际W3C组织(World Wide Web Consortium...
阅读全文...
Linux扫盲篇:CentOS、Ubuntu、Gentoo
Linux最早由Linus Benedict Torvalds在1991年开始编写。在这之前,Richard Stallman创建了Free Software Foundation(FSF)组织以及GNU项目,并不断的编写创建GNU程序(此类程序的许可方式均为GPL: General Public License)。在不断的有杰出的程序员和开发者加入到GNU组织中后,便造就了今天我们所看到的Linux,或称GNU/Linux。Linux的发行版本可以大体分为两类,一类是商业公司维护的发行版本,一...
阅读全文...
PHP发送UTF-8编码中文邮件标题乱码的解决
当我们使用下面的PHP语句发送中文电子邮件的时候,会发现邮件的标题是乱码,而邮件正文却是正确的,如何才能使得邮件标题不是乱码呢?$subject = stripslashes($the_post['Title']);$headers = "MIME-Version: 1.0\r\n";$headers .= "Content-type: text/plain; charset=utf-8\r\n";$headers .= "C...
阅读全文...
每个PHP开发者应该知道的五个开发要点
语法结构教科书上的知识和实际的程序设计是有区别的,真正的知识要在实际的开发中获得。每个php的开发人员在开始开发web应用程序之前,都应该熟悉下面的五件事:1. 框架框架可以说是php开发中的一个最重要的问题。 用php开发web应用程序时有很多方法,有很多开源的框架可以使用,可以帮助快速的开发,保持更高的一致性和有效性。 其中比较好的框架包括cakephp ,Symfony和CodeIgniter 。很多框架还按照MVC设计模式 ,如果你在这个模式下工作过,那你一定会很熟悉...
阅读全文...
如何在您的网站中加入“搜索本站功能”
来源:Google黑板报,发表者:谭永锋 软件国际化工程师许多网站都有"搜索本站",对于很多网民来讲这是非常好用的功能,如果您希望方便、快捷的建立自己的站内搜索,不妨试试谷歌的" Google 指定域名搜索"。这样,您不必花费太多时间,就可以建立结果全部指向您自己网站的站内搜索。一分钟加入"搜索本站"功能要如何在您的网页上加入此项功能呢?很简单,只要在你的网页内加入下面一小段代码就好了:(注意:下面假设 www.abcde.cn 网...
阅读全文...
花十二个月建立一个成功的网站
原作者: Webmaster World,译者: refly
原文发表时间:2006年11月
在这里看到的,作者列出27个步骤,照着这些步骤作就可以让网站进行成功的搜寻引擎最佳化,作者也宣称,这些方法对於Google是100%成立的。
那我就直接翻成中文然后重写好了:
1. 准备内容在註册网址之前就应该先蒐集至少「一百页」的内容,这些内容必须是有价值的、不违反着作权的内容。2. 网址想个比较有意义,好记的网址(喔,好吧,中文网站比较不需要在网址里放关键字,...
阅读全文...
经典正则表达式
正则表达式用于字符串处理,表单验证等场合,实用高效,但用到时总是不太把握,以致往往要上网查一番。我将一些常用的表达式收藏在这里,作备忘之用。本贴随时会更新。
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
String.prototype.len=function(){return this.replace([^\x00-\xff...
阅读全文...
正则表达式中的特殊字符
字符/意义:对于字符,通常表示按字面意义,指出接着的字符为特殊字符,不作解释。例如:/b/匹配字符’b’,通过在b 前面加一个反斜杠,也就是/b/,则该字符变成特殊字符,表示匹配一个单词的分界线。或者:对于几个字符,通常说明是特殊的,指出紧接着的字符不是特殊的,而应该按字面解释。例如:*是一个特殊字符,匹配任意个字符(包括0个字符);例如:/a*/意味匹配0个或多个a。为了匹配字面上的*,在a前面加一个反斜杠;例如:/a*/匹配’a...
阅读全文...
PHP字符串操作入门教程
无论哪种语言,字符串操作都是一个重要的基础,往往是简单而重要。正像人说话一样,一般有形体(图形界面),有语言(print 字符串?),显然字符串能解释更多的东西。PHP提供了大量的字符串操作函数,功能强大,使用也比较简单,以下将简单的讲述它的功能和特性。 弱类型 PHP是弱类型语言,所以其它类型的数据一般可以直接应用于字符串操作函数里,而自动转换成字符串类型,进行处理,如:
...
阅读全文...
EJB编程模型
本文的第二部分说明创建 Enterprise JavaBean 组件所需的 Java 接口和类的作用。除了对 bean 类本身进行编码外,EJB 开发人员还必须为 bean 定义一个本地接口和一个远程接口。这些接口的实现类通常由容器生成,因此部署 EJB 组件是开发人员和 EJB 容器的合作行为。第二部分还区分了 enterprise bean 的两种主要类型,即会话 bean 和实体 bean,并说明了 EJB 容器和 EJB 服务器之间的关系。
enterprise bean 的编...
阅读全文...
Java JDBC概述
1. 介绍
许多开发者和用户都在寻找Java程序中访问数据库的便捷方法。由于Java是一个健壮,安全,易于使用的,易于理解且可以从网络中自动download ,所以它成为开发数据库应用的一种良好的语言基础。它提供了C, C++, Smalltalk, BASIC, COBOL, and 4GLs的许多优点。许多公司已经开始在Java与DBMS的连接方面做工作。
许多Java应用开发者都希望能够编写独立于特定DBMS的程序,而我们也相信一个独立于DBMS的接口将使得与各种各样DBM...
阅读全文...
Java JSP白皮书
JavaServer PagesTM (JSP)技术为创建显示动态生成内容的Web页面提供了一个简捷而快速的方法。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。
本白皮书提供了JSP技术的全面概述,描述了其开发背景以及这项技术的总体目标。同时,在一个简单示例中,还描述了一个基于JavaTM技术的页面的关键组成部分。
开发基于Web的应用程序:背景
在万维网短暂的历史中,它已经从一...
阅读全文...
EJB体系结构的历史和目标
本文概述 Enterprise JavaBeans (EJB) 技术,旨在让读者快速理解基本概念。第 1 部分讲述 EJB 技术的历史和某些目标、优点和技术。为了简洁明了,有选择地讲述 EJB 技术的一些关键要素。请注意,虽然 EJB 组件依赖于一些基础的 Java 服务(如 Java Transaction Service),但使用 EJB 组件及认识这些组件的好处并不需要掌握这些相关技术的知识。
Enterprise JavaBeans 技术自 1998 年 3 月问世以来很受好评...
阅读全文...
基于NT/2000建立安全WEB站点的解决方案
用NT(2000)建立的WEB站点在所有的网站中占了很大一部分比例,但NT的安全问题也一直比较突出,使得一些每个基于NT的网站都有一种如履薄冰的感觉,然而微软并没有明确的坚决方案,只是推出了一个个补丁程序,各种安全文档上对于NT的安全描述零零碎碎,给人们的感觉是无所适从。于是,有的网管干脆什么措施也不采取,有的忙着下各种各样的补丁程序,有的在安装了防火墙以后就以为万事大吉了。这种现状直接导致了大量网站的NT安全性参差不齐。只有极少数NT网站有较高的安全性,大部分网站的安全性很差。为此,瑞星公...
阅读全文...
防止ASP Session丢失的方法
也许很多ASP开发者都会遇到这样的情况:在会话期间(session)无故丢失sessio n。换而言之,丢失了SessionID,同样session级的变量也会丢失。
很多session丢失的原因是因为错误的程序或者是错误的虚拟目录结构。
SessionID 的改变有下面几个原因。
原因一:
Netscape的浏览器会认为"/App/user.asp"跟"/app/user.asp"是两个不同的程序。它会自动地开始一个新的会话期...
阅读全文...
在ASP程序中调用Web Service
微软投入了大量资金来推销其.NET的各种优点,其中.NET最大的优点之一就是微软始创的XML Web Services。XML Web Services可以将你的程序和以前定制的DLL和COM/DCOM组建分离(避免陷入DLL陷阱),然后将这些功能设计成为XML Web Services,让其他应用程序也可以访问和调用这些功能(比如:网站、分布式程序)(关于怎样在.NET中建立和使用XML Web Services,请参考这篇文章:http://aspnet.4guysfromrolla.c...
阅读全文...
使用ASP重启服务器
大家知道直接使用ASP是不能够重启服务器的,这时我们需要制作一个组件来实现功能,ASP通过这个组件调用系统API,然后按照不同的重启和关机方式进行操作!
下面先说COM的制作,在VB中新建一工程,当然是AceiveX dll的!
1)先修改工程属性,在工程属性窗口将工程名称改为system,在类模块窗口将模块名称改为contral,保存工程;
2)然后添加一个模块,用来声明需要使用的API和常数!下面是模块中的内容!
Declare Function ExitWind...
阅读全文...
在Linux上使用ASP
自从MS推出ASP技术后,由于ASP在创建动态交互式站点上的强大功能及其代码编写的简便性,使ASP在很多Internet/Intranet/Extranet网站上得到了极其广泛的应用,尤其是涉及到数据库操作的网站应用系统更是倾向于采用ASP技术。但由于众所周知的原因,ASP只能工作于MS自己的操作系统平台和服务器软件之下,即只能在WindowsNT+IIS系列或Windows9X+PWS系列中使用,因而就决定了ASP应用的局限性。据有关资料显示,采用Windows操作系统平台和服务器软件的网...
阅读全文...
在Flash中使用ASP技术
在Flash中使用ASP需要的条件:
1。你的ISP的server必须支持Active Server Pages并且最好支持数据库
2。你应该要安装Flash 4
3。需要你对ASP有初步的了解
OK,下面具体介绍怎么使用:
第一步要做的是建立数据库:
数据库结构:
例子中使用Access数据库,表名为tblStaff,有三个字段:strID (自动编号),strKnownAs(Text),strSurname (Text). 这是一个用来示范用户名...
阅读全文...
如何限制同一表单被多次提交
在Internet上我们每天都会遇到数不清的表单,也看到其中大部分并没有限制用户多次提交同一个表单。缺乏这种限制有时候会产生某些预料不到的结果,如重复订阅邮件服务或重复投票等。
本文介绍在ASP应用中防止用户在当前会话期间多次提交同一表单的一个简单方法。它主要由四个子程序组成,在较为简单的应用场合,你只要将这些代码放在包含文件中直接引用即可;对于那些较为复杂的环境,我们在文章的最后给出一些改进建议。
一、基本工作过程
下面我们依次讨论这四个子程序。
(一)初始...
阅读全文...
几行代码防止表单重复提交
在很多情况下都需要防止相同的表单被多次提交,很多人的实现方法都比较复杂(代码数量超过几十行!!)下面提供一种只需使用几行代码的方法,轻松地实现了防止用户刷新多次提交表单和使用后退钮重复多次提交表单。
表单文件formtest.asp
<%Randomize '初始代随机数种子num1=rnd() '产生随机数num1num1=int(26*num1)+65 '修改num1的范围以使其是A-Z范围的Ascii码,以防表单名出错session("ant...
阅读全文...