程式設計思想基本概念之函數語言程式設計(Functional Programming)

鍾超發表於2011-10-19

上一篇中提到了Callback,其實思想本質在於函數語言程式設計,這才是更根本的概念。現在來看下在 Java 中的函數語言程式設計是如何實現。


首先我們看一下在Java中很熟悉的一個程式碼段:

	//介面類,這個應該算是要採用函數語言程式設計方式的要求中的,而不算是函數語言程式設計本身的一部分。
	public interface ActionListener {
		public void actionPerformed(ActionEvent e);
	}

	class XListener implements ActionListener{
		public void actionPerformed(ActionEvent e){
			//action here
		}
	}
	XListener l = new XListener();
	iexit.addActionListener(l);

但其實這樣的實現方式是比較多餘的,其實可以用匿名類來實現。在Java中,我們常說的匿名類,就是函數語言程式設計的思想。來看一下。

		iexit.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e) {
				//action here
			}
		});


而在JavaScript中,則有這樣的方式:

$("#element").click(function(){
	//do something
});

$("div.type").each(function(index){
	//do something else with the index
});


轉載整理自:http://www.iteye.com/topic/539515

相關文章