ブログ「サイバー少年」

ブログ「サイバー少年」へようこそ!
小学六年生ごろからプログラミングを趣味にしている高校生のブログです。
勉強したことについての記事などを書いています。フリーソフトも制作、公開しています。
(当ブログについて詳しくは「ブログ概要紹介」を参照)

サイバー少年が作ったフリーソフトは「サイバー少年の作品展示場」へ

2月

コンピュータ関連で覚えた技術
・セットというデータ構造と、その実装が何かを覚えた。
・ハッシュテーブルへの理解の誤りを正し、オープンアドレス法の概要を覚えた。
・C#のDictionaryクラスとSortedDictionaryクラスとSortedListクラスの違いを覚えた。
・C#の列挙体の仕組み(IEnumeraor<T>の操作方法)を覚えた。
・Windows PowerShell スクリプトを少し書けるようになった。

その他で覚えた技術
・複素数の四則演算の方法を少し覚えた。
・微分係数の概要(計算等ではなくイメージだけ)を知った。

制作進行した作品
・小遣い帳ソフト(仮称)、ロジック部分はたぶん完成。

コメント
いつもより若干多いです。C#とデータ構造に関わるものが大半ですね。ちゃっかりWindows PowerShellスクリプト を覚えてましたが、新言語を覚えたというほどのものではありません。小遣い帳ソフト(仮称)は完成がかなり近いですよ。

tag:

[C#] StreamWriterクラスと改行の注意点!

今日、C#のStreamWriterクラスでテキストファイルを書き出していて、気づいたことを書きます。

StreamWriterクラスはテキストをファイルに書き出すクラスです。


それで、StreamWriterのインスタンスを格納するwriter変数があったとして、

writer.WriteLine("改行します。");
writer.WriteLine("改行しました。");

こういうプログラムと

writer.WriteLine("改行します。\n改行しました。");

こういうプログラム、書き込む内容は一緒だと思いませんか?


私も今日までそう思っていました。

しかしなんと、違うのです!

なんとWindowsのメモ帳で両者のテキストファイルを見たところ、

前者は"改行します。"と"改行しました。"の間が正常に改行されているのに対し、
後者は間の改行がなされていませんでした!
続きを読む

tag:

小遣い帳ソフト(仮称) アルファ版公開!

前に記事「小遣い帳ソフトの制作計画!」にて、


また、Model部分だけ完成したら、CUIの簡素なViewを作成してコンソールアプリケーション版として公開するかもしれません。


と書きましたが、Model部分だけ完成したので、CUIの簡素なViewを作成して、アルファ版として公開しました!

KodukaiChou_01.zip - Yahoo!ボックス
http://yahoo.jp/box/sRF-bA


使用方法は付属のReadMe.txtに書いてあります。

ここでは「ユーザー = テスター」という暗黙のルールがあるので、まぁよろしくお願いします(笑)


それにしても、制作の計画が始まったのが去年の12月半ばなんですが、Modelだけでも結構な時間が掛かるものですね。


Model部分はかなり簡単だろうと思っていたんですが、
プログラムが、コメントと空行を除いても1676行という超大作になってしまいました。

簡素なViewのプログラムも簡素といっているのに、コメントと空行を除いても727行あります。


まぁ、Viewのプログラムは入力文字列が数値かどうかのチェックをするのでかなりの行数を費やしていますし、

使い捨てのプログラムだからいいや、ということで処理をメソッドで共通化したりもしませんでしたので、行数が多くなるのは仕方ないことですね。


というわけで、バグ報告お待ちしております!

また、改善点の指摘もどうぞコメント等でやってください。

まぁ、面倒そうな内容なら次回バージョンでも反映できないと思いますが…
(笑)

tag:

小遣い帳ソフト、GUIのイメージ図!

現在、GUIのデザイン段階にある小遣い帳ソフト(仮称)ですが、今日はデザインのイメージを少し考えてみました。

とは言っても、とくに言及すべきことはなく、普通のデザインなんですけどね…。


新規登録ダイアログ
新規登録ダイアログ


これは支出または収入を新規に登録するさいのダイアログです。

ですので、メインの画面が別にあって、
その画面から「新規登録」ボタンを押すと、このダイアログが表示される、というわけです。

メインの画面はまだ具体的には考えていませんが、
主に最近の支出または収入の情報を表示させようと考えています。


もともと、この小遣い帳ソフトがシンプル主義で作られているので、
ウィンドウが複数になると複雑化しないかという懸念はありますけどね。

続きを読む

tag:

祝!ブログアクセス5万件突破!!! & もうすぐブログ2周年

ブログアクセス5万件突破!!!

当ブログへのアクセス数(ページビュー)が5万件を突破しました!


いつも当ブログをご覧くださっている皆様、ありがとうございます。

そしてさらに、たまにTwitterで話題になったときは、1日に200件くらいのアクセスが来ます。

これも5万件突破を大きく支えてくれました。
ありがとうございます。




過去記事を見たところ、アクセス数4万件を突破したのが2013年11月25日のようです。

(記事「アクセス数4万件突破ああああああ!!!」を参照)

ちょうど4ヶ月前ですね。
4ヶ月で1万アクセスとは素晴らしい。

続きを読む

tag:

[C#] 継承の仕組みと仮想メソッドテーブル

私、Jimmyさんという方(昔コメントを頂いたことがあります)がやっているブログを見ていまして、

型の疑問[Java]#スーパー型にサブ型を代入した時、スーバー型がどのようにサブ型のメンバを管理しているのか分からない - Newt Net(ひよっこプログラマー日記)
http://newtgecko.blog.fc2.com/blog-entry-213.html

という記事にコメントしたんですよ。

ただ、コメントを書いてあるあいだに自分でもよくわからなくなってきて、矛盾していることを書いたりしてしまったので、こちらでまとめようと思います。


テーマは継承についてです。

継承というのはどういう仕組みで実現されているのかを書いていきます。

また、仮想メソッドテーブルという物についても書きます。


C#前提で話していきますが、Javaにも通用すると思います。
↑最近こればっかり言っている気がする…。
続きを読む

tag:

当ブログ2周年記念の画像を貼りました!

明日が当ブログの2周年の日だと思っていたのですが、今日でした。

まぁ、それについては今日書く予定のブログ2周年記念の記事でも話します。


当ブログは2周年を迎えました!

というわけで、昨年同様に2周年記念の画像をトップに貼りました。

トップを見れば分かりますが、撤去した後に見る人もいると思うので貼ります。


当ブログは2周年を迎えました!
当ブログは2周年を迎えました!


CYBERBOY'S BLOG
2ND ANNIVERSARY!



昨年もそうでしたが、当ブログのタイトル画像を継承した、宇宙風の背景と、かっこいいフォントの文で構成されています。


ただ、昨年よりもシンプルになっていますね。
(記事「当ブログ1周年記念の画像を貼りました!」を参照)

昨年の画像はブログタイトル画像をそのまま含めたりしていました。


さて、この宇宙風の画像を作るときに毎回お世話になる、このかっこいいフォントですが、

Iconian Fonts
http://www.iconian.com/

というサイトを運営されている方が制作された「Vindicator」というフリーフォントを使用させていただいております。


海外の方なので、謝辞は日本語で言っても通じません。

もし当ブログをご覧になってしまったときのために、毎度のことですが
Thank you!
と書いておきます。


この画像、現在はブログのトップに貼っておりますが、1,2週間でトップから撤去する予定です。

冒頭でも言いましたが今日はこの後、ブログ2周年記念の記事も書きます。

tag:

祝!ブログ「サイバー少年」、2周年!!!

ブログ「サイバー少年」 2周年記念!!!

当ブログ「サイバー少年」はとうとう開設から2周年を迎えました!

もう2年ですよ。

去年、ブログ1周年を迎えたときの記事「祝!ブログ「サイバー少年」、1周年!!!」では、

たったの1年間ですが、かなり長く感じました。

と書きましたが、今回の1年はあっという間だったなぁという印象です。


今年度は特に新しいことに挑戦することはありませんでしたが、
なんといっても記憶に残っているのはライブラリ「Plugin-Load Library」の制作ですね。

今年度の大部分がこれの制作でした。

まぁ、作業をサボりまくっていただけですが…。

この作品の制作以外でも色々とやっていることはやっていた1年です。


例えば、PICマイコンとPICマイコン用ライターを買いました。
(記事「PICマイコン購入!」を参照)

「買ったんだから早くなんか作れよ!」という声を華麗にスルーしております。

なかなか難しいんですよね…。
アセンブラだけじゃなくて、回路設計が難しいんですよ。

プログラムを組んで終わりじゃないですからね。
電源の繋ぎ方とか、電流を安定させるためにコンデンサを繋ぐ~とか難しいです。

というわけで、優先順位は低めですが、勉強中ということにしておきます。


あとは、WPFを始めましたね。

まだまだ不明なことが多いですが、Gridの使い方や、簡単なデータバインディングやTriggerは使えるようになりました。


また、これは結構、大きめの成果なんじゃないかと思いますが、データ構造をいくつか勉強しました。

・スタック、キュー
・連結リスト
・二分探索木、AVL木
・ハッシュテーブル、辞書

ただ、ソートアルゴリズムや探索アルゴリズムは全然、勉強していないので、これからの目標はこれですね~。


あとは数学ですね。

三角関数について勉強した時期があったので、高校でも少し有利になる…かな。


主に勉強したことはこのくらいですね。



当ブログは6年間、続けていくことを目標としています。

当ブログ1件目の記事「はじめまして」にも書いてあります。


ところで、当時は一人称が「僕」だったんですね。
ブログ開始1か月後にはもう「私」になっているみたいですが。

「僕」のほうが中学生らしいさわやかさがあって良かっただろうか…。
今となっては直せませんけどね。


話を戻すと、当ブログは6年間、続けていくつもりです。
当ブログURLにcyberboy6と、6が付いているのもそのためです。

まぁ、cyberboy.blog.fc2.comが獲れなかったからなんですけどね。


というわけで、6分の2が終わりました。

来年はちょうど、目標期間の半分を迎えるので、今年度よりも少しテンション高めで祝おうと思っています。


そろそろ書き終わりましょう。

皆様、2年間ありがとうございました。
もっとアクセスください!


今後も当ブログ「サイバー少年」をよろしくお願いいたします!!!

tag:

3月

コンピュータ関連で覚えた技術
・C#でクラスを継承したときの内部的な仕組みについて考えた。
・C#のエスケープシーケンス\nがLFで処理されることを知った。
・WPFのGridの基本を学んだ。

あったイベント
・当ブログ「サイバー少年」が開設から2周年を迎えた。

コメント
今回はあまり覚えた技術はありません。まぁ、WPFのGridは基本的なコンテナなので、それを覚えられたというのは良かったですね。今回で2013年度の月間まとめは終わりです。

tag:

当ブログをご利用(閲覧等)になる場合は必ず「当ブログの利用規定」をお守りください。