サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
2024年ランキング
hevohevo.hatenablog.com
はじめに Luaは組み込み用途の小規模な言語であるにも関わらず、オブジェクト指向プログラミングが可能です。なにそれ怖い。 Luaはインスタンスベース*1のオブジェクト指向プログラミングをサポートしています。 もっと具体的に言うならば、オブジェクトの雛形としてクラス設計を重視する(堅苦しい)クラスベースのオブジェクト指向ではなく、 元となるインスタンス(プロトタイプ)をベースに、自由にインスタンス変数・メソッドを追加しつつ柔軟に新しいオブジェクトを作成できることが特徴です。 インスタンスベース・オブジェクト指向の利点は後からの変更に対する許容性の高さです。クラスベースの方は、かっちり決まればとてもきれいなプログラムができますが、後からの変更を考えるとクラスまで遡って変更を加えるのはきついよねというある意味妥協の産物とも言えますw 一昔前はクラスベースを採用しているプログラム言語を多く見かけま
著書の紹介 長い間、ブログの記事更新を怠っていて申し訳ありません。 実はこの半年ほど、大好きなマイクラで遊ぶ時間も惜しんで本を書いていました。 ComputerCraftを題材に、プログラミングという楽しい遊び方を教える教科書です。 マインクラフトの中で自由に遊んでいると自然と実現したい目標が思い浮かんできますよね? 「たくさんの鉄鉱石が欲しい」「簡単に家を作りたい」「モンスターを自動討伐してほしい」などなど。 このような自分で立てた目標を試行錯誤しながらプログラミングで実現できるのが「ComputerCraft」というModです。 拙著によって、このような創造的なプログラミングの楽しさを、数多くの実践的なチュートリアルと詳細な解説を通してお伝えできればと思います。 創造的なプログラミングによる問題解決を楽しむことで、プログラミングも自然とうまくなる。 本書はそんな「おいしい」お話を紹介し
はじめに 久しぶりの更新です。 大丈夫です! Twitterの書き込みを見るとわかるように私は元気です。 Minecrat1.8.9のススメ Minecraftの最新版は、とうとうバージョン1.9に突入しましたが、Mod開発の対応はどうしても後手に回りがちです。 Modで遊んでいる方の多くはMinecraft1.8台どころか、まだMinecraft1.7.10に留まっている人も多いのではないでしょうか。 ComputerCraftの最新版であるComputerCraft1.79は、Minecraft1.8.9に対応したバージョンです。 この機会に、心機一転Minecraft1.8.9に乗り換えてはいかがでしょうか。(僕は早速乗り換えました) ComputerCraft | Programmable Computers for Minecraft CC1.79の良いところ なにより、比較的新
はじめに 今回はLuaというプログラム言語について詳しくお話しましょう。 例によって長いので、結論だけ知りたい人、特にCのポインタを理解できている人なら、最後のまとめだけ見たらOKですよ。 Luaが扱う値のタイプ Luaでは様々な値を扱いますが、その値にはいくつかのタイプ(ここでは型と呼びます)があります。 正確にはLuaリファレンスマニュアルを見てもらうとして、CCプログラマがよく使う値としては、 文字列: "ABCDE" など。改行コード"\n"などの制御コードキャラクタもこれに含む 数値: 1.33333 など。整数、実数、正の数、負の数など区別せずにこの型で扱う nil: 変数初期化時に、初期値を決めないとき自動的にその値はnilとなる。 ブーリアン: true または false テーブル: {name=3,"A"}など。連想配列。テーブルコンストラクタなどを使って定義できる。
2015-06-24 ニトリのコードを見てニヨニヨする会 雑記 情報リンク集 ニヨニヨ はじめに ニトリのECサイトであるニトリネットがリニューアルに失敗して6日も経ってから復旧したということで、 (一部の)プログラマクラスタで騒ぎになっています。 僕の率直な感想は次のようなもの。 閉鎖状態の「ニトリネット」が6/23にサイト運営を再開、不具合の主因はCPU不足 | ネットショップ担当者フォーラム ともあれ関係者の皆さまお疲れ様でした。個人の責任問題などと短絡化することなく、粛々と原因解明と、できればぜひ知見の共有公開をお願いしたい。2015/06/23 13:40 プレスリリースでは、原因としてCPU不足を挙げています。 珍しい原因ですよね。あまり聞いたこと無いのでぜひその知見を知りたいものです。 しかし雲行き怪しく 早速、ニトリのトップページ見ている。すごい8000行の中にデバックコー
はじめに 全国で5000人くらい*1はいると思われるComputerCraftユーザーの皆様こんにちは。 今日はまず、こちらの動画を紹介します(ニコ動です)。 職業プログラマーならばさほど問題ないのですが、僕を含む趣味プログラマは、日々、独自の作法でCCプログラミングをしています。 しかし、そのコードが他人からみて見やすいのか、変な癖がついていないか、そしてよりよいコードにするために何を心がければ良いか。 一人孤独にCCプログラミングしていると不安になりますよね。 「誰かに見てもらえないかなー。チラッチラッ。でも恥ずかしいしなぁ・・・。悩ましい悩ましい」 そこで、この動画です! なんと、マサカリを投げてくれるCCプログラムのコードレビューをしていただけるとのこと。 すばらしい! この機会を逃す手はありませんよね。 動画でコードレビューの説明を聞き、コードレビューを受けるときの心構えを理解し
はじめに さっさとマイクラ、ComputerCraft関係の記事を書け? はい、ご指摘ごもっとも。 とはいえ、最近はプログラミング教育についても興味があります。 自分の考えの整理も兼ねて文章を書いたので、ここで公開させてくださいな。 なお、ひたすら長いので、「まとめ」だけ読んでいただいてもかまいません。 今回の記事の元ねたはこちら。 元ねた記事のまとめ(僕の独断と偏見によるもので異論は認める) いろいろ問題となっている武雄市のタブレットを用いた教育ですが、子どもが使っている掛け算練習ソフトを見たら画面の片隅にバナー広告が入っているじゃない。これって大丈夫なの? 一概に広告に反対するわけではないけれど、武雄市は何も考えてなさそう、まずいでしょう。 武雄市の教育に対するネット上の言論について 武雄市のタブレット教育について、そのやり方や問題点の洗い出しなどネット上では議論が活発に行われています
はじめに 中学生たちに「なぜプログラミングが必要なのか」を教えてみた - WirelessWire News(ワイヤレスワイヤーニュース) この記事を読んでの感想になります。 将来的に3Dプリンタが家庭内で普通に使われる時代には、きっとプログラミングの必要ないUIができているはずです。 テレビがリモコン一つで操作できるように、電子レンジが前面のパネルボタンだけで操作できるように、炊飯器がボタン一発でおいしいご飯を炊くように。逆にそうでないと、家電として家庭内に3Dプリンタが普及するわけがありません。 しかし、テレビのリモコンボタンの数が増え操作が複雑になる一方であることからわかるように、シンプルなUIで家電の機能の全てを引き出すというのは無理があります。 紹介記事中にある、 プログラミングをできるようになるということは、人類の叡智を利用できるようになるということ は至言です。 プログラミン
これから、新しい連載をはじめるよ!! はじめに この連載では、以下の内容を解説する予定です。 APIとは何か。 まずはシンプルなAPIを作ってみよう(別名、初心者でもできるAPI作成) 既存のCCコンピュータAPIを見て、コツを学ぼう 色々なAPIを作ってみよう まず、連載の初回なので、APIって何? という根本的なお話からしたいと思います。 まずはAPIの定義。 API(Application Programming Interface)とは、「プラットフォーム側のプログラムがその機能をアプリケーションプログラムから利用できるように公開したインタフェース」です。 これだけだとさっぱりですね。詳しく解説しましょう。 まず背景について プログラミング初心者のために、このAPIという言葉の背景を説明しましょう。 現在のほとんどのアプリケーションは、一つのプログラムだけでその機能の全てを実現して
この記事の目的 この記事は、Java初心者かつModding初心者であるhevohevoが、ネット上に落ちている情報を拾い読みしたり、公開されているソースコードを読んで、自分なりに理解したことをまとめたものです。 当然ながら、間違いが含まれている可能性が高いです。記事を100%信用してはいけません。 この記事はつまり、間違っているであろう自分の知識をわざと公言することで、心優しい識者の方から教えをいただけないだろうかという期待を元に公開しています。 識者の方は、やさしくご指摘いただけると助かります。 前回のModding関連の記事 マイクラModdingの基礎知識(Modの初期化処理について) - Minecraftとタートルと僕 はじめに 以下の内容は、Minecraft1.7.10およびForge#1180を対象にしています。それ以前のバージョンでは異なる可能性があるのでご注意ください
はじめに 以下の内容は、Java初心者であるhevohevoが調べた内容なので、 間違いが含まれている可能性が高いです。 その場合は、優しくご指摘いただけると助かります。 また、以下はMinecraft1.7.10およびForge#1180をターゲットに調査した内容です。 これよりも古いバージョンでは異なる可能性があるのでご注意ください。 Forgeを用いたModdingの基礎知識 自作Modを作るには、まず自分のModで初期化処理を書かなくてはならない。 たとえば、設定ファイルを読み込んだり、ブロックを追加したり、独自レシピを追加したり、他のModとの連携処理を書いたりなどなど。 Forge(厳密に言うとForgeModLoader、以下FMLと呼称)は、初期化処理のフレームワークを以下のように定めている。 FMLにおけるMod初期化処理の書き方 基礎知識・・・FMLはイベント駆動 FM
はじめに テキスト読み上げソフトってご存知ですか? 手元にある文字テキストを読み込ませると、その文章のヨミを自動解析して、声で読み上げてくれるソフトです。 コンピュータによる合成音声なので、抑揚がでたらめで不自然なこともあるのですが、読み上げソフトを使うと校正作業がはかどるということで、文筆業の方はよく活用しているそうです。 また視覚に障害を持っている方、あるいはそこまで行かなくても細かい文字を読むのがつらくなってきた方にとってもテキスト読み上げソフトは便利でしょう。 ワープロソフト一太郎にも、この読み上げ機能がついたことが(一部で)話題になりました。中には、ワープロ機能はいらないので、この読み上げ機能だけ買いたいのだけど、なんて言い出す方もいたとかいないとか。 そしてニコニコ動画を普段から良く見る方にとって、テキスト読み上げソフトによる実況プレイ動画は、なじみ深いかもしれません。 テキス
はじめに それでは簡単で役立つプログラムをまず紹介して、それに機能をどんどん付け加えていくという形でComputerCraftを学びましょう。 プログラムの見やすさ理解しやすさを重視して、厳密性(エラー処理・例外処理)は求めません。 多少の不具合は運用でカバー。「動けばいいんだよ!」を合言葉に進めるつもりです。 このサイトにはじめて来た方は、目次から興味のあるトピックを選び、その中で番号順に読んでいくことをお勧めします。 各トピック(例:「農業タートル」「クラフティタートル」)は独立していますが、そのトピック内の番号は流れが繋がっていることを意味しています。 「補足」ページは、比較的独立したページなので、単独で読んでも問題ありません。 どれを読めばよいか迷う人は以下の順がお勧め まだCCをインストールしてない →「インストールと環境構築」 タートルの使い方が知りたい →「各種タートル」 モ
ComputerCraftのご紹介 ComputerCraftは、PC版MinecraftのModの一つです。 このModによりマインクラフト世界にコンピュータを導入でき、様々な作業を自動化できるようになります。 中でもタートルというプログラム可能な自走型ロボットを使うことで、楽しみながらプログラミングを体験できることがこのModの特徴になります。 そもそもMinecraftとは Minecraft(マインクラフト)は、ストックホルムにあるMojang(もやん)という会社が開発・発売しているゲームタイトルです。 同タイトルはPC版、XBOX版、携帯(iOS/Android)版で発売され、そのすべてでミリオンヒットしているので、皆さんも名前くらいはご存知かと思います。 すでに様々な人から語りつくされている感もあり、このゲームの魅力を語るのは少しだけ恥ずかしいものがあるのですが、ここでは大きく
はじめに 今回はComputerCraftから離れて、Luaの言語仕様について愚痴みたいなものを語っちゃおう。 Luaはシンプルなプログラミング言語なのでその仕様の簡潔さと割切り具合については驚くべきものがあるんだ。なかでも僕が一番驚いたのは、「配列は実装されて無いからTableという名の連想配列を使ってね」というところ。 でもぶっちゃけ、配列(Array)と連想配列(Hash)を分けないのって混乱の元じゃない? とりあえず仕様の解説 以下、Windowsでの代表的なLua実装であるluaforwindowsを使って実例を示そう。 Luaインタプリンタを使ってみんなも試してみてね。 # テーブルは連想配列(Hash)だよ > my_table = {a="hoge", b="hogehoge"} # 中身を見ると > print(my_table["a"]) hoge > print(my
(CC関連の記事はもう少しお待ちください。せっかく作ったCCプログラムが、CC由来のバグのせいでうまく動かないということが2回連続あり、ちょっと凹んでいるのです) 面白い記事の紹介 いつものようにはてブ記事をあさっていたら面白い記事が話題になっていました。 ランサーズ、キャンセル多すぎ、単価安すぎだし、丸投げだしキツすぎ | kosuke.cc 名言続出のとても読み応えのある記事なので、クラウドソーシングに興味のある方はぜひどうぞ。 忙しい方のために簡単にまとめると、 クラウドソーシングサイトの大手であるランサーズ(http://www.lancers.jp/)の依頼者はひどいのが多すぎてまじめにやってられないのです。特に、高額報酬を提示して提案だけ吸い上げてキャンセル、その提案を使ってもっと安値で即日依頼という極悪コンボにはむっちゃ腹立つのだわ! というお話です(僕の独断と偏見によるまと
はじめに (はてなユーザー以外の方にもわかりやすいよう書いてますので、はてなユーザーが見ると冗長な記述があります。また私が間違えて理解しているところも多々あると思われますのでご指摘ください) まずは、今回の記事を書くきっかけとなったこちらの記事をどうぞ。 はてブを知らない妻に「Presso」をすすめたらグレムリンニュースアプリと化した - ちょろげ日記 愛する妻の為にせっせと記事を探して捧げているのです、という愛妻家さんのほほえましい記事ですね。 いい話だなぁ。末永くおモゲになってください。 <Presso使ってみた> Presso:ソーシャルニュース まとめもブログも話題のニュースをお届け 株式会社はてなニュース無料 はてなが最近リリースしたPressoというニュースアプリには次のような特徴があります。 あらかじめ用意されたニュースカテゴリ(たとえば「科学・生物」など)を選んでおくと、そ
はじめに もふぬこさんの記事がとても面白かったので、興味を持って僕も調べてみた。 はてなブログが遅いのはだいたいJavaScriptのせい - もふぬこ戦記 はてなさんのjavascript http://hatenablog.com/js なお、うちのサイトでは、javascriptの実行はほとんどストレスないですね。 調べるとむしろ、外部サイトのサービス埋め込みの方が重いです。 以下、コメントを適当に抽出 // シェアするサービスが変化したら保存する // ajax getまたはキャッシュから返す // タブ切り替えて戻すだけで通信しないようにするためのやつ // jqXHRではなくDeferredオブジェクトが返ることがあるので使う側で注意すること // セッション終了時に前のajaxをキャンセル // 価格の表示をいい感じにする // 最初に戻すには,rewindPhotosCur
はじめに はてなブログ開発チームのみなさま、 私、はてなブログサービスを利用しております、hevohevoと申します。 はてなブログの機能にはおおむね満足しており、少しでも貴社へ恩返しできればと、 今年に入ってからはなてブログ(Pro)へと移行いたしました。 今後も継続して利用させていただくつもりです。今後ともよろしくお願い申し上げます。 さて、今回この文章を書いたのは、はてなブログに明らかな不具合を発見したためです。 加えて、それに関連していくつかの機能要望とご提案があります。 はてなブログ - お問い合わせ - はてな を使って問い合わせることも考えましたが、「お急ぎ」でも「脆弱性」でもないのでこのような形をとりました。ご了承ください。 それでは以下、具体的に述べます。 「次/前」というページャー表示と実際の挙動が混乱しているという不具合 挙動の説明 個人ブログ「トップページ」の末尾に
このページを最初にブックマークしてみませんか?
『Minecraftとタートルと僕』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く