Delphi学习笔记01

由于工作中需要使用Dephi,而此之前我对Delphi仅限于听过而已,所以我要在极短的时间内学会一门新的语言。这对我来 说是很有挑战性,也到了证明我以前反复强调"语法不是问题,语言才是跨度"的时候。我需要掌握的是Delphi基本使用和IDE工具使用。我认为,在熟悉C/Java /.NET的基础上快速掌握一门从未接触过的语言,并非不可完成的任务。

在学习这门未知的语言之前,首先要知道自己学习的是什么东西,框架如何,用来开发哪些类型应用,IDE的情况,下面给出一些简 单解释。

Pascal Delphi (via wiki)

我的主要教程(电子档)有如下几本:

Pascal基本教程》([Google快照] (http://203.208.39.132/search?q=cache:EEjmkPEDtpQJ:www.tanghu.net/gr/zhoukun/p ascal/pascal5.htm+pascal ...

more ...

Delphi学习笔记02

今天算是学习Delphi的第二天,昨天熟悉了一下基本概念和开发环境,写了一个简单的Hello world!(传送门-Hello world!)。

说是学Delphi,其实今天我一下午都在学习Pascal语法,这里有一个要点我需要强调"Delphi与其说一门语言,不如说是一个开发环境和开发框架,使用的是 Object Pascal语言"。我今天还停留在Delphi基本语法、变量、数组、指针这些学习上。

说说我对Pascal的第一感觉吧:语法很繁琐,比起C/Java,if/while/repeate/for这些语法结构都begin/end才支持多语句 (C/Java使用{},Python使用缩进)。不过正是这个原因,所以代码特别直观,在教学使用和信息学比赛就很适合了。

今天使用的教材是《Pascal基础教程》(传送门-更多教程 ...

more ...

Flex Builder3中的launch path设置

在Flex Builder3中,想运行或者调试一个Flex项目,有Run/Debug/Profile三种运行方式。当我点击这三种方式的按钮时,都会报出一下警告:

Flash Player Not Found

Flex Builder cannot locate the required version of Flash Player. You might need to install Flash Player 9 or reinstall Flex Builder.

Do you want to try to run your application with the current version?

大意就是说没有找到Flash Player,有两个选项Yes ...

more ...

PylexChat可行性分析

PylexChat介绍

PylexChat取名自Python+Flex+Chat部 分缩写,这就意味着这个系统是基于Python+Flex的聊天系统。之所以做这个系统,源自我大学的最后一次课程设计,我不想浪费这最后一次可以供我发 挥自己想象力的机会。年后估计要参加工作了,毕业设计也不敢做这么有想法的课程设计。那就最后一次潇洒一下,做一个我完全没有接触过的东西。

我几乎不会Python,是最近一个月迷上这门强悍而简单的语言,我完全不会Flex,是最近1周时间才开始接触Flex。这意味着这次课程设计的 风险挺大。我花了几天的时间做了详细的可行性分析,分析了系统框架和GAE能够提供的服务和限制以及Flex/AIR能做的内容,否决了几个方案,最后总 结了一篇简单可行性分析(本文是一周时间慢慢形成的,并没有遵循正规的开发文档风格)。

几个基本的概念

内容出自维基百科

Python

Python,是一种面向对象、直译式计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定。

这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所有的操作系统中运行。

目前,基于这种语言的相关技术正在飞速的发展,用户数量急剧扩大,相关的资源非常多。

Flex

Adobe ...

more ...

紧急声明-关于回复通知是垃圾邮件

最近alswl发现,Google对本博客发出的回复通知邮件都判定为垃圾邮件。我正在找客服查此时,据我估计,可能同一IP上有其他域名发送大量垃圾邮件导致Goo gle服务器误判本博客。

在此声明,本博客从来不发送任何垃圾邮件!

请各位朋友检查自己的垃圾箱翻翻,估计里面有alswl大量回复,悲剧啊……烦请点击"这不是垃圾邮件"....谢谢了…

Update 09_11_17

我按照"修改 mail to commenter,让邮件通知更加友好 | Simple happiness"修改了Mail To Comment插件。请大家帮忙在这个页面测试回复 ^_^

Update second

测试均告失败啊,我使用的是Mail To Commenter,大家是怎么修改sendMail函数的,请赐教,不胜感激啊。

Update third

测试完成 ...

more ...

MailToCommenter的垃圾邮件问题

Mail To Commenter发出的邮件会被GMail判定为垃圾邮件,这个问题我曾经发现,不过没有重视起来。鸵鸟理论告诉我说也许只有自己的GMail这样 ,别人都是完好的,直到derek同学提出来。

于是乎我开始修改,经过十余次的发送垃圾邮件,我反复查看邮件源码,检查Mail To Commenter的mailtocommenter_send_email函数,终于修改如下代码。

代码部分分别参考修改 mail to commenter,让邮件通知更加友好 | Simple happinessmore ...


Java笔记 使用反射来改进BaseDao

关于反射

反射的定义(via Wiki):在计算机科学中,反射是指一种特定类型的计算机程序能够在运行时以一种依 赖于它的代码的抽象特性和它的运行时行为的方式被更改的特性。用比喻来说,那种程式能够"观察"并且修改自己的行为。

Java中的反射示例如下:

package dddspace.job.exercise1116;

public class Foo {

public void fun(String str) {

System.out.println(str);

}

}

package dddspace.job.exercise1116;

import java.lang.reflect.InvocationTargetException;

import java.lang.reflect.Method;

public class ReflectionDemo {

public static void ...

more ...

Java入门好书《Java JDK6学习笔记》

Java JDK6学习笔记

《Java JDK6学习笔记》(via 豆瓣,via ChinaPub)是我最近在看的一本书。虽然名为Java学习笔记,其实 深入浅出的讲解了Java这门语言。书中的语言颇有白文风格,适合没有语言基础的同学学习,也适合对一些概念不清楚的开发人员。

我很快的翻阅了半本书,作者的范例代码简单精要("Java笔记split/不定长度参数/泛型类型通配符"中示例代码就是改编自本书)。我现在正在阅读线程、反射和Annotation这三块内容,看得我酣畅淋漓啊。

我算是概念模糊的开发者,现在准备笔试/面试所以恶补一下平时接触比较少的概念。我虽然也有《Think in Java ...

more ...

Java笔记 split/不定长度参数/泛型类型通配符

今天看了一下午《Java学习笔记》,作者林信良,花名良葛格。从书中所获颇 多,正所谓温故而知新,我就把今天的"新"总结一下,加深记忆。良葛格也提倡"在网上写文章是我记录所学的一种方式"。

split的正则式和其中的正则式

C语言其中有函数strtok,就是按某些char对字符串进行切割。下面给出一个C下面的范例

char str[] = "now # is the time for all # good men to come to the # aid of their country";
char delims[] = "#";
char *result = NULL;

result = strtok( str, delims );

while( result != NULL ) {

printf( "result is ...

more ...

给Share this加入人人、豆瓣新标签

Share this

Share this是给博文加上分享按钮,基于prototype的一款WordPress插件。 Share this 中文,从名字你就已经知道,这个Share this插件的中文版本。当然,我想先告诉你的是,这并不是汉化,而是中文化(本土化)。还辨别不清楚吗?那就是这个插件将更适合于中文用户使用了。 Share this 由幸福收藏夹修改。 点击这里下载(此为Share this 中文原版,为了方便,我们以下所用版本都是该版本,请不要升级你的Share this插件,否则会还原为英文) share-this唯一遗憾是用的prototy pe,这个js比较大,网上有jQuery版本的第三方修改版,不过最好还是自行实现js。

增加新的按钮 ...

more ...