This browser is no longer supported. Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
はじめに 本文書は、Rubyによりコーディングを行う際の規約について述べる。 実際のプロジェクトに適用する際には、このコーディング規約をカスタ マイズして用いることを推奨する。 ソースコードの整形 インデント プログラムを読みやすくするため、インデントを適宜行う。インデント 幅は2とする。また、インデントにはスペースのみを使用し、タブは使用 しない。(環境によりタブ幅が異なるため。) 例: if x > 0 if y > 0 puts "x > 0 && y > 0" end end 一行の桁数 一行の桁数は最大80桁までとする。 空行 複数のクラスの区切には空行を挿入する。 例: class Foo ... end class Bar ... end 誤った例: class Foo ... end class Bar ... end また、クラス内の各構成要素の区切にも空行を挿入する。
2008年02月09日00:05 カテゴリLightweight Languages 私の言語遅延学習法 - 三つのルール+1 つっこみが遅くなりました。 新しくプログラミング言語を覚えたいときに行うべき10の練習問題 | IDEA*IDEA 404の人とかが突っ込んでくれそうな気がするので気軽にいってみます。 いい機会なので、私の言語学習法をこの際披露することにしましょう。 私の場合、一番の特徴は、「必要を感じるまで学ばない」「本当の問題に出会った時に、それを全力で解く」「学ぶ時には『原典』に当たる」ということでしょうか。私はこれを「遅延学習」と呼んでおります。実はこのことはコンピューター言語に限った事ではないのですが、コンピューター言語の場合、このことが特に顕著です。これらの特徴について一つずつ解説してみましょう。 必要を感じるまで学ばない 私の場合、長らく「プログラマー」としてより「
ドラゴンボールといえば、大変に人気の高い国民的、いや世界的な漫画、アニメですが、昨日匿名ダイアリーでドラゴンボールをネタにしたオブジェクト指向の解説がホッテントリに入っていました。 ドラゴンボールで学ぶオブジェクト指向 多くの人に親しみやすい題材でオブジェクト指向の考え方を解説するというのは非常に興味深い試みなのですが、オブジェクト指向の説明としては不適切なところがあり、ちょっと残念な内容になっています。私自身ドラゴンボールの専門家(ドメインエキスパート)ではないため、不正確なところがあるかもしれませんが、ストーリーを思い出しながら、私なりにドラゴンボールをネタとしたオブジェクト指向の解説にリトライしてみたいと思います。 なお、オブジェクト指向でもプログラミング言語によって表現できる内容が異なるため、当然設計技法は違ってきます。ここではJava、C++、C#、Visual Basicといっ
Bijostagram(びじょすたぐらむ)というWebサービスを作ってみました。 Bijostagram - Cute Girls on Instagram きれいなおねいさんは、好きですか? Bijostagramとは? Bijostagramは、きれいなおねいさんの画像がたくさん眺められるサービスです(個人的に作りました)。一番の大きな特徴は、Instagramから自動的にきれいなおねいさんの画像を集めてくる、というところです。Bijostagramでは、集めてきたおねいさん画像をランダムに表示しています。 Instagramは写真版Twitterで、しかも撮影した画像をオサレな感じで加工できてツイートできるというサービス。2月末に公式のAPIが公開されたので、いじってみました。→インスタグラムのAPIについてはこちら Bijostagramは、画像抽出と画像配置のアルゴリズムをPer
モバイルゲーム 物凄い勢いで勃興したモバイルゲーム業界は、いろいろな課題や問題に直面しながらも巨大化し、今日の時点でのスマートフォン向けゲームの市場へと継承されていきます。 モバイルゲームの歴史 2001 Javaアプリと3Dゲームの登場 Javaが利用できるようになったことにより、ダウンロード型のゲームが供給できるようになりました。 2002 携帯電話端末の大容量化・3D化競争 Java搭載携帯電話端末が登場してからごく僅か1年の間に、アプリのサイズに関しては10倍に広大化し、表現方法も2Dから3Dにシフトし始めました。J-PHONEは『ゼビウス』や『スペースハリアー』などといった昔のアーケードゲームを、ドコモはSIMCITYなどパソコンで世界的規模のヒットを飛ばしたゲームを主力商品としていました。 2003 モバイルゲームの一般化 メモリの制限が厳しいJava仮想マシン上ではなく、OS
XMLをバイナリ化して効率的に圧縮することで転送速度や処理に必要なメモリ容量を小さくし、モバイルデバイスなどでも扱いやすくした「Efficient XML Interchange」(EXI)を、W3Cが3月10日に勧告しました(記事末にリンクしたEXIワーキンググループチェア 上谷卓己氏のビデオによると「エクシィ」と読むようです。)。 XMLは、表現したい値にタグ付けをして意味を示すというマークアップ言語の性格上、XML文書が肥大化しがちで、XML文書から値を取り出すためのパース処理も重くなるという課題を抱えていました。 例えばXMLで「20歳」という年齢を表現しようとすると<age>20</age>となり、20という2文字の値に対して11文字ものタグが付くことになります。そのためXMLによるデータ交換は効率が悪く、性能が出にくいものでした。その結果、JSONのようにシンプルなフォーマット
新卒準備カレンダー 2011春という企画のエントリです。本来であれば3/11日の投稿でしたが、東日本大震災があったため本日の投稿となりました。 東日本大震災を目の当たりにして衝撃を受けつつも、身の回りでは困難があるわけでもないので何もしないのがもどかしく、しかし実のところ何もできることはなく、Twitterを眺める、NHKを眺める、コーディングするなどして過ごしています。しかし、電力不足等の懸念はあるものの、春からは社会人になることは依然として明らかです。であれば、今は粛々と日常生活を送るしかありません。そういう訳で、平常モードでポストします。 お前誰よ? [twitter:@__gfx__]と申します。この春からDeNAで働くPerlプログラマです。Perl好きが高じてPerlの仮想マシンをpure Perlで実装したりしたことがあります*1。Shibuya.pmやYAPC::Asiaで
先日 hack05 というイベントで LT をしたので、そのときの資料をまとめておきます。 スピリチュアル エンジニアリングとは システム開発・運用にスピリチュアル要素を取り入れることでシステム安定化を目指します。 皆さんご存知の通り、人間の技術力には限界があり、予測不能な事故(バグ)はまさに、神の領域といえます。 そこで「ジンクス」「縁起かつぎ」「妖精さん」などの力を借りることで、人間の手ではどうしようもない事態を回避するというのがこのスピリチュアルエンジニアリングです。 スピリチュアルエンジニアリングの基本原理 スピリチュアルエンジニアリングの基本は「祈り」にあります。「絶対に動く」という祈りの強さがよりよいコードをもたらします。 スピリチュアルはすべてのエンジニアの身近に! 以下に当てはまる人がいたら、あなたも立派なスピリチュアルエンジニア! コーディング中に神が降りてきたと思う瞬間
渋日記@shibu.jp 渋川よしきの日記です。ソフトウェア開発とか、ライフハックを中心に記事を書いていきます。 By erix! under CC-BY これから魔法使い(プログラマー)になる、新卒者のみなさんに、リレーでメッセージを送ろう、ということになりました。一発目として僕が書かせていただきます。 おまえ誰よ? プログラマーです。14歳ぐらいからプログラミングに手を染めて、N88-BASIC、C言語、x86アセンブラ、C++、Ruby、Python、JavaScript、Erlangみたいな感じで勉強しています。まぁ、Erlangはまだまだヒヨコですが。大学を卒業して、本田技術研究所に就職し、社内SEをしていましたが、今年からDeNAに転職しました。 メインの言語はPythonで、Python温泉系のコミュニティに参加しつつ、日本XPユーザグループの代表(あまり仕事できてない)、s
2011年03月01日18:00 カテゴリLightweight Languages perl - 「優れたPerlプログラマを見分ける27の質問」回答例 これは良問。 How to Identify a Good Perl Programmer - Modern Perl Books, a Modern Perl Blog 「優れたPerlプログラマを見分ける27の質問」の日本語訳 - Islands in the byte stream というわけで回答例。あくまでも解答例。There's more than one way to do it はここでも例外ではないので。 Perl5において変数のシジルが示すものは何か 変数の基本型。$scalar、@array、%hash、&code、*typeglob。&codeの&は省略可能かつ省略推奨。これ以外の型はオブジェクトを作ることで作れ
史上最初のプログラミング言語である1954年に考案された「Fortran」(フォートラン)から、今の各種最新言語に至るまで、いろいろなプログラミング言語が発展していく様子をまとめた巨大な系図を見ることができます。ちゃんと印刷できるようにPDFファイルなども置いてあります。自分の使っている言語がない場合には連絡して欲しいとのことです。 閲覧は以下から。 Computer Languages History (preview) 元のページはココ。A4用紙11枚に及ぶ印刷用PDFファイルなどをダウンロードできます。 Computer Languages History こうやって眺めてみると、いろいろな言語がお互いに少しずつ影響を与えているのがよくわかります。さすがにあまりにもマイナーな言語はサポートしていないようですが、作者に連絡すれば入れてもらえるかも。 一応全言語の一覧は以下から検索できま
キャラクター画像作成ツール、背景用マップエディター、グラフィックツール、ゲーム3種類、機能サンプルプログラム7種類など13種のプログラムに加えてグラフィックやBGMに豊富なプリセットデータを用意し、ユーザー自身によるプログラムの改造や機能の追加も直接可能、作成したプログラムやデータは通信機能を使って周囲のユーザーに送信できるというかなりすさまじいニンテンドーDSiウェア「プチコン」が2011年3月9日より「DSiショップ」にて新発売されるそうです。 実際の動作画面や詳細な情報は以下から。 プチコン http://smileboom.com/special/petitcom/ 見ての通りのBASIC。「プチコンが採用しているSMILEBASICはオブジェクト指向もコンパイル型もGUIもこれっぽっちも気にかけていません」とのことで、思いつきでいきなりプログラムを打って「RUN」するだけで実行可
入社後に研修を受けたが1週間後には完全にチンプンカンプン。 とてもついていけないし、このまま残っても会社に大迷惑をかけ そのうち退職勧告を受けるのは確実だろうから、潔くさっさと辞めた。 名の知れた大学の情報系を出ても全然できない奴がいたくらいだから、 本当に素質や素養がものを言う職業ではないかと思う。 学部学科不問、経験不問で雇う会社が多数あっても、実は挫折・退職する奴も相当いると思う。 仕様書無しさん :2010/10/10(日) 21:58:22 1週間では自分に向いているか、好きになれるかしかわからない。 会社に迷惑かけるとか考えるのは1年たってからじゃね。 ようは慣れが大切だと思うんだ。 6 仕様書無しさん :2010/10/11(月) 02:15:28 ごく短期間で辞めるのは、大抵はプログラムのプの字も知らず 勘違いで入社し、研修を通じてそれに気づいた人。
MVVMパターンに関する認識・知見があちこちに散らばっているように見えるので、そろそろまとめてみる事にしました。この記事は、他の各サイトの記事などでMVVMの基本的な考え方・実装方法などを把握されている方が対象です。 そういった方がMVVMパターンを実務に適応してみようと思った時や、MVVMパターンを要件に合わせてカスタマイズしていく際に、認識すべきパターンの実装方式のそもそもの理由と考え方、要件に合わせて考えていかなければならないポイントを把握する助けとなる情報を提供するのを目的としてこの記事を書きました。(文字ばかりですいません><) MVVMの実装の各要素の実装をこねくりまわすばかりで、その過程でパターンを把握している気になって、パターンの本来の目的を破壊してしまうような実装を推奨してしまっている人も見ます。そんな滑稽な事をしない認識を持って欲しいのです。 MVVMパターンは、WPF
テンプレートベースでゲームが作れる「cocos2d」 「cocos2d for iPhone」(以下、cocos2d)は、iOS(iPhone/iPod touch/iPad)やMac OS X向けの2Dゲームやグラフィカルなインタラクティブアプリを開発するための、フレームワークです。物理エンジンの「Box2d」「Chipmunk」を持ち、サウンドエンジンも搭載しています。 cocos2dを使うと、スプライト・シーン・トランジション・アクション・メニュー・タッチ操作・加速度センサなどの機能を利用して、ゲームアプリやインタラクティブ系のアプリを素早く作ることが可能です。 本稿では、cocos2dの概要と基礎的な使い方を紹介します。 cocos2dの主な特徴5つ cocos2dには、以下のような特徴があります。 ■ 【1】テンプレートで使い方が簡単 使いやすいテンプレートやObjective-
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く