開発環境
- OS X Mavericks - Apple (OS)
- Dart Editor (開発環境)
- Dartium | Dart/ Structured web apps (ブラウザ, Dart VM 用 (Chromium with the Dart VM))
- Safari (ブラウザ, JavaScript 用)
- Dart (プログラミング言語)
C実践プログラミング 第3版 (Steve Oualline (著)、 望月 康司 (監訳) (翻訳)、谷口 功 (翻訳)、オライリー・ジャパン)のⅡ部(単純なプログラミング)の12章(高度な型)、12.1(構造体)、12.2(共用体)、12.3(typedef)、12.4(enum型)、12.5(キャスト)、12.6(ビットフィールドまたは構造体の圧縮)、12.7(構造体配列)、12.9(プログラミング実習)、実習12-3をDartで解いてみる。
その他参考書籍
- What is Dart? [Kindle版] (O'Reilly Media) Kathy Walrath Seth Ladd (著) このブログでの感想
実習12-3.
コード
sample.dart
import 'dart:html';
void main(){
InputElement run = querySelector('#run_dart');
InputElement clear = querySelector('#clear');
Element pre = querySelector('#pre0');
run.onClick.listen((MouseEvent event){
String result = window.navigator.userAgent + '\n';
Ticket t = new Ticket('abcde12345', 'fgh', 'ijk',
new Time(10, 20), new Time(14, 30));
result += '$t';
pre.text = result;
});
clear.onClick.listen((MouseEvent event) => pre.text = '');;
}
class Ticket{
String flight;
String from;
String to;
Time start;
Time arrive;
Ticket(this.flight, this.from, this.to, this.start, this.arrive);
String toString() => '便名: $flight\n出発空港コード: $from\n到着空港コード: ' +
'$to\n出発時刻: $start\n到着時刻: $arrive';
}
class Time{
int hour;
int minute;
Time(this.hour, this.minute);
String toString() => '$hour時$minute分';
}
class TimeAndDate{
int hour,
minute,
second,
month,
day;
TimeAndDate(this.hour,dynamic this.minute, this.second,
this.month, this.day);
double difference (TimeAndDate other){
double n = 60 * (this.hour - other.hour) + (this.minute - other.minute) +
(this.second - other.second) / 60;
return n.isNegative ? -n : n;
}
String toString(){
return '$month月$day日$hour時$minute分$second秒';
}
}
0 コメント:
コメントを投稿