Entries

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
この記事に対してトラックバックを送信する(FC2ブログユーザー)
http://kovayashi.blog120.fc2.com/tb.php/123-ce6b175f

-件のトラックバック

-件のコメント

コメントの投稿

投稿フォーム
投稿した内容は管理者にだけ閲覧出来ます

Scala(4)

はじめてのScala―「関数型+オブジェクト指向」の次世代言語! (I・O BOOKS)

今日は4、5章を読んだ。


class Multi
def initialize(x,y)
@x=x
@y=y
end

def calc
@x*@y
end
end

puts Multi.new(3,5).calc

上記rubyををScalaで書くと

class Multi(x:Int,y:Int){
def calc():String={
return (x*y).toString
}
}

println(new Multi(3,4).calc)


まだ、今の所、rubyよりイイとは思わない。

ところで、この参考書、「はじめての」と付くだけあって、オブジェクト指向とは何ぞやについても説明がなされていた。他の言語を知ってるから、ふむふむと復習程度に読み流したが、本当に初めてで、これだけの説明だと、ちょっと物足りないかも。

因に、Objective-Cで同じのを書くと

#import <Foundation/Foundation.h>

@interface Multi : NSObject {
int x;
int y;
}
- (id) initWithX:(int)x initWithY:(int)y;
- (NSString *) calc;
@end

@implementation Multi
- (id) initWithX:(int)ax initWithY:(int)ay{
self = [super init];
x=ax;
y=ay;
return self;
}
- (NSString *) calc {
return [NSString stringWithFormat:@"%d",x*y];
}

@end

int main(int argc,char *argv[]) {
NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
NSLog(@"%@",[[[Multi alloc] initWithX:3 initWithY:5] calc]) ;
[pool release];
return 0;
}


もう、ホント、Objective-Cは手間がかかる。

やはりアンドロイド+Scalaって方向性も、押さえておこう。
この記事に対してトラックバックを送信する(FC2ブログユーザー)
http://kovayashi.blog120.fc2.com/tb.php/123-ce6b175f

0件のトラックバック

0件のコメント

コメントの投稿

投稿フォーム
投稿した内容は管理者にだけ閲覧出来ます

Appendix

プロフィール

kovayashi

Author:kovayashi
・嫌いなもの
 →好きなもの

・インストール
 →バンドル
・バックアップ
 →アップロード
・努力
 →チート

最近のトラックバック

ブログ内検索

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。