ほとんど二年前の使いまわしで手抜き。
2013年12月31日火曜日
2013年12月19日木曜日
2013年12月15日日曜日
2013年12月8日日曜日
2013年11月30日土曜日
2013年11月18日月曜日
2013年9月13日金曜日
D言語 + SDL2.0でテトリス的なものを作ってみた
気づいたら既に9月も半ばなんですがそれは……
書いたコードはここにあります。
https://github.com/rigibun/PuzzleGame
1ファイルで全部やってたり、中途半端にオブジェクト使ってるけど基本的には手続き指向だったり、コメント書いてなかったりと色々ひどいことになってるけど。
githubのリポジトリ作る画面でライセンスをパブリックドメインにしといたけど、実際バイナリ作るときはSDLとかそれぞれ違うライセンス持ってたりするからよく分からない。
SDL2.0はここにあるんで適当にインストールしたりすれば多分動くと思います。
ただ、 Thread.sleep( dur!("msecs")(1) ); とかやってるのであまり互換性ないかもしれない。そのあたりは全然分かってない。
・コメント書いてない。最初にREADMEに日本語書かなかったことから、なんとなく英語使うことにこだわってたけど、そもそも英語力なんて無いし(関数の命名とか見れば分かるけど)、
最初から日本語でコメント書いとけばいいのでは。
・テトリスとしてのゲーム性。スーパーローテーションとか言うモダンなテトリスの機能は全然入れてない。
・メンテナンス性。皆無。
実際にはスコア表示というか消したライン数の表示と、NEXTの表示くらいはやりたかったけど、完成したコード見たら直す気が全く起こらない。
・実装力というか、設計力というか、プログラミング力が足りない。全体の見通しが立たない。
・どんなクソなプログラムでも完成させることは大事。"Just Fxxking Do It."
もっとまともなコードが書けるようになりたい
書いたコードはここにあります。
https://github.com/rigibun/PuzzleGame
1ファイルで全部やってたり、中途半端にオブジェクト使ってるけど基本的には手続き指向だったり、コメント書いてなかったりと色々ひどいことになってるけど。
githubのリポジトリ作る画面でライセンスをパブリックドメインにしといたけど、実際バイナリ作るときはSDLとかそれぞれ違うライセンス持ってたりするからよく分からない。
開発環境について
dubを使いました。Derelict3とか勝手に持ってきてくれるしすごい楽。dubすごい便利。SDL2.0はここにあるんで適当にインストールしたりすれば多分動くと思います。
ただ、 Thread.sleep( dur!("msecs")(1) ); とかやってるのであまり互換性ないかもしれない。そのあたりは全然分かってない。
反省点
・メイン関数がアレ。単純に行数が100行ってだけなら問題無いのかもしれないけど、循環的複雑度的には結構ひどいと思う。・コメント書いてない。最初にREADMEに日本語書かなかったことから、なんとなく英語使うことにこだわってたけど、そもそも英語力なんて無いし(関数の命名とか見れば分かるけど)、
最初から日本語でコメント書いとけばいいのでは。
・テトリスとしてのゲーム性。スーパーローテーションとか言うモダンなテトリスの機能は全然入れてない。
・メンテナンス性。皆無。
実際にはスコア表示というか消したライン数の表示と、NEXTの表示くらいはやりたかったけど、完成したコード見たら直す気が全く起こらない。
作ってて気づいたこと
・D言語楽しい。と言ってもD言語の機能ほとんど使ってない気がするけど。・実装力というか、設計力というか、プログラミング力が足りない。全体の見通しが立たない。
・どんなクソなプログラムでも完成させることは大事。"Just Fxxking Do It."
もっとまともなコードが書けるようになりたい
2013年8月25日日曜日
2013年8月13日火曜日
2013年8月9日金曜日
2013年8月8日木曜日
リーダブルコードを読んでみた
実際にこの本買ったのは先月の10日くらいなんだけど、読んだままにしておくのもアレなのでブログに書く。
内容としては、全くタイトル通り、読みやすいコードを書くための技術とかの本なんだけど、単にインデントがどうとか命名がどうとかいう話だけではなくて、読みやすいコードにリファクタリングしたり、ロジック自体をリファクタリングしたり等々、読みやすいコードにするための色々なテクニックとかをサンプルコードも入れつつ解説してる。
プログラマーの間でよく言われる「3日前の自分は他人」っていう言葉は大げさでは無いので、他人がコードを理解しやすい様に、そして何より自分が理解しやすいように、読みやすいコードを書くということを意識するべきなので、この本を読んでそういった技術も身につけておくといいと思います。
2013年7月4日木曜日
2013年6月19日水曜日
2013年6月6日木曜日
2013年5月12日日曜日
Debian wheezy
wheezyがリリースされたのをきっかけに、デスクトップとラップトップ(x121e)をDebianにしました。
LinuxMintは結構使い易かったけど、gnome-boxesが気になってgnomeにしようと思い、せっかくなのでまるごとDebianにしました。
sidにするかwheezyのまま使うかはもうしばらく考える。
インストールについて
わざわざ書くこともないだろうけど、http://www.debian.org/からISOイメージをダウンロードします。
多分torrent使うほうが速い。
インストールマニュアルとかもあるので、インストールには困らないはず。
で、x121eでインストールしていて問題が。
realtekの無線LANモジュールにはフリーのドライバーがないので、フリーソフトで構成されるDebianの場合だと自分でダウンロードしないといけないらしい。
と言ってもググったらすぐにwheezy用のfirmware-realtekが出てくる。
x121eはE-450 APUを積んでるんですが、RADEON用のドライバーもないのか、3D表示ができず強制的にgnome classicに。
これに関してはfirmware-linux-nonfreeを入れた。
今更だけどさっきの無線LANもあわせてこれだけで良かったんじゃないだろうか。
ということで、無事インストールが終了し、問題なくDebianが動作しています。
LinuxMintは結構使い易かったけど、gnome-boxesが気になってgnomeにしようと思い、せっかくなのでまるごとDebianにしました。
sidにするかwheezyのまま使うかはもうしばらく考える。
インストールについて
わざわざ書くこともないだろうけど、http://www.debian.org/からISOイメージをダウンロードします。
多分torrent使うほうが速い。
インストールマニュアルとかもあるので、インストールには困らないはず。
で、x121eでインストールしていて問題が。
realtekの無線LANモジュールにはフリーのドライバーがないので、フリーソフトで構成されるDebianの場合だと自分でダウンロードしないといけないらしい。
と言ってもググったらすぐにwheezy用のfirmware-realtekが出てくる。
x121eはE-450 APUを積んでるんですが、RADEON用のドライバーもないのか、3D表示ができず強制的にgnome classicに。
これに関してはfirmware-linux-nonfreeを入れた。
今更だけどさっきの無線LANもあわせてこれだけで良かったんじゃないだろうか。
ということで、無事インストールが終了し、問題なくDebianが動作しています。
2013年4月12日金曜日
登録:
投稿 (Atom)