タグ

ブックマーク / gihyo.jp (36)

  • 第4章 わかりやすい名前を付けよう―無理なく自然なメソッド・変数の命名 | gihyo.jp

    見た目、設計ときたら、次は名前付けだね。変数や関数の名前付けで困ったこと、あるんじゃないかな? えっ? いつも適当に付けてるから、悩んだことないですよ。名前って、そんなに大事なんですか? おいおい……そういうのは良くないな。プログラミングの半分は設計で残り半分は名前付け、と言ってもいいくらいに重要なことなんだよ? そ、そんなに!? 名前が付いていない条件に名前を付けたり、それぞれの機能によりわかりやすい名前を付けたりするのは、とても大事なことだよ。それに、良い名前付けができるようになれば、自然と良い設計もできるようになってくるね そう言われると、聞きたくなってきました……! 複雑な条件には名前を付けよう if文などで条件式を書くとき、いくつもの条件を組み合わせた複雑な条件式が必要になることがあります。しかし長すぎる条件式は、あとで読むと、何を判別するための条件であったのか、書いた人ですら

    第4章 わかりやすい名前を付けよう―無理なく自然なメソッド・変数の命名 | gihyo.jp
  • 本日12月1日より、2015年の技術系Advent Calendarが各所ではじまる | gihyo.jp

    日12月1日より、プログラマやエンジニア、企業、学生、団体などの有志による2015年の技術系Advent Calendar(アドベントカレンダー)が各所ではじまり、一日目を担当する人の記事が公開されてきている。 一般的なAdvent Calendarは、12月25日のクリスマスを楽しみに待つために、12月1日から24日までのカレンダーの日付それぞれの部分が扉になっており、1日ずつその日の日付の部分を開くと天使や動物の絵などが見えるという仕組みになっている(もちろん、様々なバリエーションがある⁠)⁠。 これに発想をえて、技術系Advent Calendarでは基的に、12月1日から25日までの25日間、特定のプログラミング言語縛りなどの緩やかなルールで、毎日別の人(日付を埋めるために同じ人が複数回担当することもある)が自分のblog等にて記事を書くという形式になっている(特設サイトを用意

    本日12月1日より、2015年の技術系Advent Calendarが各所ではじまる | gihyo.jp
  • 第4回 若手エンジニア必読 teratail開発者が贈る! 一生役立つエンジニアの基礎 | gihyo.jp

    さまざまな疑問をすぐに質問できる、エンジニアとして働き始めたばかりの人にとって便利なサービスが「teratail」(⁠テラテイル)です。エンジニア向けQ&Aサイトとしてすでに多くのユーザが集まっている同サービス上では、日々多くの質問と回答がやりとりされています。ここでは、teratailを運営しているレバレジーズのエンジニアであるメディア事業部 システムグループ リーダーの寺尾貢氏、そしてteratail開発責任者でありgihyo.jpにて「聞いたら一生の宝、プログラミングの基礎の基礎」の記事連載をしている橋佑介氏(※)に、teratailに寄せられた質問に回答していただきました。 エンジニア向けQ&Aサイト「teratail」 ※) 橋氏のgihyo.jpの連載記事は、「⁠聞いたら一生の宝、プログラミングの基礎の基礎」でご覧になれます。 開始1年弱で会員数1万人を突破したterata

    第4回 若手エンジニア必読 teratail開発者が贈る! 一生役立つエンジニアの基礎 | gihyo.jp
  • 第11回 アニメーションの原理とデザイン | gihyo.jp

    コラムの第1回では、iPhoneをはじめとするタッチパネル操作がなぜ気持ちが良いのか、自己に帰属する動きとアニメーションに分けて説明しました。その際、アニメーションはユーザの注意を引いたり、ナビゲーションの際に利用するという話をしました。 今回はより詳しいアニメーション表現の種類について考えていきます。 Disneyが提案するアニメーションの原理 アニメーションの語源は「アニマ」というラテン語の「魂」という意味に由来し、「⁠命を与えて動かす」という意味があります。したがって、アニメーションの目的には、生命らしい動きの追求があります。 アニメーションはさまざな作家によって研究されていますが、特に動きの体系化として有名なのが、Walt Disneyが分類・定義したアニメーション12の法則です[1]⁠。 スクオッシュ(潰し)とストレッチ(伸ばし) アンチシペーション(予備動作) ステージング(

    第11回 アニメーションの原理とデザイン | gihyo.jp
  • 第2回 PHPの基礎を見直す | gihyo.jp

    PHPについて見なおそう みなさんこんにちは、WebアプリケーションではPHPを使ったものが世の中にあふれています。 TOIBE発表ではシェアがここ五年で10.3%から3.9%と激減していますが、まだまだ日のwebアプリケーション開発では多く用いられています。 第1回では、フロントエンドで利用されているJavaScriptの基礎を振り返りましたが、今回は同じWebアプリケーション開発のバックエンドでよく利用されているPHPの基礎の部分を振り返りたいと思います。 PHP Webアプリケーションを作成するのに特化したサーバサイド側のプログラム言語のひとつです。 PHPの特徴としては下記のことがあります。 初心者でも理解しやすい。 ほとんどのウェブサーバと有名OSでモジュールでもCGIでも動作します。 プログラムの記述方法も手続き型、オブジェクト指向、両方の混在で記述できます。 このように導入

    第2回 PHPの基礎を見直す | gihyo.jp
    atawi
    atawi 2015/04/03
  • 第10回 マウスポインタに応じてカメラを水平および垂直に動かす | gihyo.jp

    前回の第9回「マウスイベントを扱う」では、3次元空間に置いた立方体のオブジェクトにマウスのロールオーバー/ロールアウト、クリックへのインタラクションを加えた。今回は、これらのオブジェクトを回り込んで捉えるカメラの位置も、マウスポインタの動きに応じて変えてみたい。 マウスポインタの水平の位置に応じてカメラを回り込ませる まず、オブジェクトの周囲を回るカメラの水平の動きだ。画面の中心から見たマウスポインタの水平位置に応じて、回り込む向きと速さを変えてみよう。第9回コード2「ロールオーバーしたオブジェクトの大きさが変わる」につぎのような手を加える。 var centerX = stageWidth / 2; var centerY = stageHeight / 2; var lastX = centerX; function initialize() { document.onmousemov

    第10回 マウスポインタに応じてカメラを水平および垂直に動かす | gihyo.jp
    atawi
    atawi 2015/04/03
  • OpenCVで学ぶ画像認識 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    OpenCVで学ぶ画像認識 記事一覧 | gihyo.jp
    atawi
    atawi 2015/03/19
  • 第3回 オブジェクト検出してみよう | gihyo.jp

    第1回、第2回と画像認識の基礎とOpenCVについて紹介してきました。第3回目の今回は、いよいよ連載の目玉であるOpenCVを使ったオブジェクト検出に挑戦してみます。 オブジェクト検出の仕組み 基原理のおさらい オブジェクト検出のプログラムを書き始める前に、そもそもどんな仕組みでオブジェクト検出を行っているのかを理解しましょう。 第1回では画像認識の原理として、学習フェーズと認識フェーズがあることを説明しましたが、OpenCVに実装されているオブジェクト検出プログラムもこの流れに従います。つまり、画像から特徴量を抽出し、学習アルゴリズムによってオブジェクトを学習します(詳しくは第1回を参照してください⁠)⁠。 図1 画像認識の流れ OpenCVに実装されているオブジェクト検出プログラムは、Paul Violaらのオブジェクト検出の研究[1]をベースに、Rainer Lienhartらが

    第3回 オブジェクト検出してみよう | gihyo.jp
    atawi
    atawi 2015/03/19
  • 初心者でもできる! 7日間で作るUnityゲーム開発 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    初心者でもできる! 7日間で作るUnityゲーム開発 記事一覧 | gihyo.jp
    atawi
    atawi 2015/01/13
  • プロ生ちゃんが聞く! 2015年のプログラミング言語動向 | gihyo.jp

    あけましておめでとう! 私、暮井 慧。今年もよろしくね。ところでみんな、いろいろなプログラミング言語の動向とか気になるよね? というわけで、プログラミング言語の去年のふりかえりと今年の予定なんかを、スペシャルな人たちに聞いてきたよ! Ruby 最初は、みんな大好きRuby! Rubyコアコミッターの小崎資広さんに聞きにきたよ。小崎さんは、Linuxカーネルコアの開発者でもあるんだって! Rubyの2014年はどんな年でした? 慧 こんにちは。2014年のトピックを聞かせてください! 小崎 まずは、Ruby 2.2のリリースでしょう。リリース直前にいろいろとトラブルが発生してやきもきさせましたが、無事12/25にリリース。クリスマスにリリースする慣例を守ることができました。 今回のリリースはガベージコレクションの改善がメインで、速度の向上に加えて、Symbolがガベージコレクトの対象になるよ

    プロ生ちゃんが聞く! 2015年のプログラミング言語動向 | gihyo.jp
  • 第7回 共通部分をまとめる 流れ図とメソッド | gihyo.jp

    導入 文章にすると長くなって全体を理解しにくい状況でも、図を一枚ぱっと見せられるとそれだけでストンと納得することがあります。ソフトウェアも同様に、図を活用するとモヤモヤが晴れ仕事が捗る場合があります。 また、組織内での複雑な手続きをその担当者に伝えれば見事な結果を返してくれることがあります。ソフトウェアも同様に、中で何が行われているか考えなくて済むように、処理を代表する名前を知っていれば目的を果せるようにする仕組みがあります。 前回と今回で構造化プログラミングで学習し身につけておきたい大事な要素、共通点をまとめることを学習しています。今回は作図法や関数機能を生かして、比較的大きな部分の共通点をまとめ、すっきりしたコードを作成するスキルを取り扱います。 展開 流れ図を活用しよう かつて、MS-DOS上で動くプログラムを書いていたとき、どうにも不具合が多くて何とかならないものかと困ったことがあ

    第7回 共通部分をまとめる 流れ図とメソッド | gihyo.jp
  • 第4回 Androidの肝,アクティビティ|gihyo.jp … 技術評論社

    前回のおさらい 前回は、サンプルプログラム「SkeletonApp」をビルドして、エミュレーターと実機で動作確認を行い、エミュレータと実機では操作感が違うことをご説明しました。 今回は、Androidの肝でもあるアクティビティを取り上げます。 アクティビティとは? アクティビティは、Androidの画面に相当し、ユーザが操作する画面と操作に対する処理を行います。画面を持つ物はアプリは、必ずアクティビティを持ちます。 これを「Windowsで例えると○×です」と言えれば、話しが早いのですが、Windowsには似たオブジェクトが存在しません。たとえば、同じ画面に相当するウィンドウと比較すると、以下の違いがあります。 状況に応じて分岐する遷移状態を持つ インスタンスの保存・復帰する仕組みを持つ Android OSのタイミングで、強制終了・再起動される 少々難解な存在ですが、Androidのアプ

    第4回 Androidの肝,アクティビティ|gihyo.jp … 技術評論社
  • エンジニアの学び方─効率的に知識を得て、成果に結び付ける 記事一覧 | gihyo.jp

    第4章何を学ぶか、何を作るか―問題の探し方と成果の出し方 西尾泰和 2014-07-25

    エンジニアの学び方─効率的に知識を得て、成果に結び付ける 記事一覧 | gihyo.jp
    atawi
    atawi 2014/07/25
  • 第4章 何を学ぶか、何を作るか―問題の探し方と成果の出し方 | gihyo.jp

    第2章で、目的を明確にして必要なところから学ぶのが効率が良いと学びました。第3章で、理解を深めるうえで、実際に何かを作ることで理解を検証しながら進むのがよいと学びました。 しかし「何を学べばよいかがわからない」「⁠作って学ぼうにも、何を作ればよいかがわからない⁠」⁠─⁠─そういう悩みをお持ちの方も多いかと思います。章ではその悩みをどうやって解決するかを学びます。 やれと言われたことをやる 「何を学べばよいかがわからない」と言う人は多いですが、その人が何も学んでいないかと言うと、そうではないように思います。たとえば会社や上司から何らかの勉強を要求されて、行っているはずです。ただ、おそらくその勉強は第1章で解説した「応用対象」軸なのでしょう。「⁠応用対象」軸の知識は社外に露出しにくい特徴があるため、たとえば勉強会や雑誌の記事などで露出しているエンジニアと自分を比べたときに、自分が勉強していな

    第4章 何を学ぶか、何を作るか―問題の探し方と成果の出し方 | gihyo.jp
    atawi
    atawi 2014/07/25
  • 第1章 効率的に学ぶには―知識の3つの軸と学びの3つのフェーズ | gihyo.jp

    新社会人のみなさん、こんにちは。特集は、新しいものを学ぶ際に出会う問題について解決するための糸口を提供するために書きました。 みなさんは、「⁠IT業界は変化が激しいので学び続けることが必要だ」と聞いたことがあるのではないかと思います。そしてそのことに異論はないはずです。だからこそ今、サイトを読んで何かを学ぼうとしているわけですよね。それはとても良いことです。 一方で、「⁠学びたいけど時間がない」「⁠何を学んだらよいかがわからない」「⁠社会人として成果を出していける自信がない」などの悩みを抱えている方も多いです。筆者はこの悩みを解決したいです。 限られた文字数では、みなさんの個別の問題を解決することはできません。そこで、みなさん自身で問題を解決していくための糸口を提供します。まず章では、第2章以降でより具体的な問題について説明するための材料となる、ちょっと抽象的な話をします。 知識には

    第1章 効率的に学ぶには―知識の3つの軸と学びの3つのフェーズ | gihyo.jp
  • 「実況解説つき!ペアプロでわかるJavaScriptテスト入門」レポート | gihyo.jp

    2014年1月17日、ベルサール新宿グランドにて開催された「エンジニアサポートCROSS 2014」の中の1セッション「実況解説つき!ペアプロでわかるJavaScriptテスト入門」をレポートします。 エンジニアサポートCROSS 2014とは 「複数の技術を身につけなければWebサービスは作れない=クロスしないと生きていけない」をテーマに、「⁠エンジニアサポート新年会2012 CROSS」として第一回が2012年に開催された勉強会イベント、それがCROSSです。今年で3回目になります。 「実況解説つき!ペアプロでわかるJavaScriptテスト入門」 このセッションは「JavaScriptで書かれたよくあるコードをベースに、ペアプロでテストコードを足していく様子を解説者が説明する」という内容になります。 それでは、さっそくセッションの模様を見ていきましょう。 登壇者 セッションの登壇者

    「実況解説つき!ペアプロでわかるJavaScriptテスト入門」レポート | gihyo.jp
  • 第22回 Coroを使ったやさしいクローラの作り方(1) | gihyo.jp

    連載では第一線のPerlハッカーが回替わりで執筆していきます。今回は誌Vol.68~73まで「フロントエンドWeb戦略室」を連載していたmalaさんで、テーマはクローラの作り方です。個人用のちょっとしたダウンローダを書くときから、大規模なクローラを書く場合まで、Perlは強い味方になります。 なお稿のサンプルコードは、誌サポートサイトから入手できます。 クローラの礼儀作法 クローラ、スパイダ、bot[1]を稼働させる際は、アクセスのしかたによっては相手先のサービスに多大な負荷をかけてしまいます。節ではまず、使用言語にかかわらずクローラを書くうえで一般的に知っておくべき作法について述べます。 robots.txtによるbotの制御─⁠─ アクセスしてよいかの指示 Webサイトに置かれるrobots.txtは、botから「アクセスしてよいか」を判断するものです。アクセスする対象がht

    第22回 Coroを使ったやさしいクローラの作り方(1) | gihyo.jp
    atawi
    atawi 2013/12/19
  • 本日12月1日より、プログラマ有志による2013年の技術系Advent Calendarが各所ではじまる | gihyo.jp

    日12月1日より、プログラマ有志による2013年の技術系Advent Calendarが各所ではじまる 日12月1日より、プログラマ有志による2013年の各技術系Advent Calendar(アドベントカレンダー)が一日目を担当する人のblogではじまっている。 昨年以上に細分化されたため、昨年よりも今年のAdvent Calendarの数が多くなっているようだ。また、技術系以外の人に対してもこのような形式のAdvent Calendarの認知度が上がり、技術系以外のAdvent Calendarも昨年より増えている。 一般的なAdvent Calendarは、12月25日のクリスマスを楽しみに待つために、12月1日から24日までのカレンダーの日付の部分(扉だったりする)を開けるようになっており、1日ずつその日の日付の部分を開くと天使や動物の絵などが見えるという仕組み(もちろん、様々

    本日12月1日より、プログラマ有志による2013年の技術系Advent Calendarが各所ではじまる | gihyo.jp
  • HTML5のCanvasでつくるダイナミックな表現―CreateJSを使う 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    HTML5のCanvasでつくるダイナミックな表現―CreateJSを使う 記事一覧 | gihyo.jp
  • 第1回 気持ち良さはどこからくるのか~身体に近づくUIへ | gihyo.jp

    UI/UXは進歩の激しい領域のために、時に前例なしの設計が求められることがあります。たとえば近年の例では、スマートフォンやタブレットが急速に普及し、まだノウハウのない中でこれらのデバイスに特化したUI/UXが求められました。これからも誰も触れたことないデバイスや状況でも、的確な設計を行うことが求められます。 そういった未踏の領域では、先端の研究領域に注意を向ける一方、UI/UXの原点を学ぶ必要があります。コラムではインタラクションの研究者という立場から、これまでのUI/UXにおいて何が質であるかを知るのと同時に、これから向かう未来を見据えながら、今何を学ぶべきかを分析、考察していきます。そしてUI/UXに携わる人に少しでもUI/UX設計の「なぜ」に答える材料になればと思います。 効率だけでは語れない道具の設計 スマートフォンやタブレットなど、高性能な端末を持ち歩く時代となりました。ネッ

    第1回 気持ち良さはどこからくるのか~身体に近づくUIへ | gihyo.jp