タグ

関連タグで絞り込む (220)

タグの絞り込みを解除

Programmingに関するwushiのブックマーク (285)

  • ラムダ式でステップアップ! C#のプログラムから汎用的なアルゴリズムを切り出すことで、LINQについての理解を深めよう

    1. はじめに プログラミング言語 C#では、C# 3.0から「ラムダ式」と呼ばれるものが使えるようになり、プログラムをより簡潔に記述できるようになりました。そして、それにより、LINQ(Language INtegrated Query:統合言語クエリ)という機能が便利に使えるようになりました。 この記事では、基に立ち返って、どのようにしてアルゴリズムを記述し、それを利用するかを考えたいと思います。 汎用的なアルゴリズムをどのように記述すると良いのか、そしてそのアルゴリズムがどのように使われると良いのか、を述べます。その中で、なぜラムダ式が便利なのか、その理由が分かってもらえれば幸いです。 また、ラムダ式がどのような仕組みなのか、それについても解説します。 LINQの仕組みや意義についても同時に理解していただけることと思います。 次の記事の姉妹記事です。そちらでC++用に書かれた記事を

    ラムダ式でステップアップ! C#のプログラムから汎用的なアルゴリズムを切り出すことで、LINQについての理解を深めよう
  • 安全なPHPアプリケーションの作り方2014

    神戸ITフェスティバル講演 http://kobe-it-fes.org/kif2014/seminar/entry-197.html

    安全なPHPアプリケーションの作り方2014
  • はじめてのJavaScriptフレームワーク選び

    対象読者 jQueryなどを使っているJavaScript開発者 JavaScriptを使った複数人でのプロジェクトに参加している方 JavaScriptを使ってサーバ等と連携したフロントエンドの開発をしている方 必要な環境 この記事では、AngularJSを使用し、Chrome(36.0)、IE11、Firefox(31.0)、Safari(7.0.5)の環境で確認を行っています。 JavaScript開発の歴史 フレームワークを説明する前に、10年ほど前から現在までのJavaScriptが歩んできた流れが分かると、どうして今、JavaScriptにもフレームワークが必要になってきているのか、または開発者はフレームワークに何を求めているのかが多少は見えてくることと思います。 2005年くらいまではJavaScriptは利用者や開発者から避けられていた技術で、たとえ使われても、非常に簡単で

    はじめてのJavaScriptフレームワーク選び
  • getter/setterとはなんだったのか - プログラマーの脳みそ

    Javaのgetter/setterのお話。 僕は当時を語るには若すぎるのだけど、過去を振り返って書いてみる。当時を知る人は誤りがあれば指摘してほしいし、情報があればコメントなりトラックバックなりして欲しい。前世紀の話というのは今となっては探すことがなかなか難しくなりつつある。 「privateな変数にpublicなアクセサを定義する」? - ネットの海の片隅で getter/setterとは何か Javaのオブジェクトにフィールドがあったとして、そのフィールドに値を設定するメソッドがsetter(せったー)、そのフィールドの値を取得するメソッドがgetter(げったー)と呼ばれる。慣習としてsetterはsetXXX(int value)といった様にsetから始まる名前をつけ、引数はひとつ。戻り値はvoid型。getterはgetXXX()といった様にgetから始まる名前をつけ、引数はな

    getter/setterとはなんだったのか - プログラマーの脳みそ
  • あなたは全部知っていますか?プログラミングの業界用語30選 | POSTD

    Stack Overflowは、私が学習に役立ててきた多くのオンライン・コミュニティと同じように、自然と厳しくなってきました。第一にこれは、自己防衛機能です。子どもが初めて学校や託児所に入ると広大な世界にさらされて、 髄膜炎菌症を発症 して日々くしゃみやせきを繰り返しながら成長するのと同じような免疫システムです。常に好ましいことだとは言い難いですが、生き残るためには必要なプロセスなのです。 2年前に投稿された、下記の質問のことを考えてみてください。 あなたが新しく作ったプログラミングの業界用語は何ですか? あなたが作り、あなたの周りで使われるようになった、プログラミングの用語は何ですか?(他の人が真似して使っているのを聞いた、など)あなた独自の言い方が、職場内でのみ使われていたり、インターネット上で幅広く普及していたりすることもあるでしょう。 独自のプログラミングの用語、単語、言い回しを太

    あなたは全部知っていますか?プログラミングの業界用語30選 | POSTD
  • Androidソースコードレビューで指摘する事が多い項目まとめ - こやまカニ大好き

    業務でソースコードレビューを行う機会が増えたので、複数回指摘した項目や気になった実装などをまとめてみました。 こういう観点をできる人と共有できるといいなあ…。 2014/09/29 23:00 一部修正しました。 業務上ソースコードレビューの名目で仕様・デザインまで見ることになっていたためこれらを先頭に書いていましたが、わかりづらかったため最後にまとめました。 Fragment関連 FragmentとActivityの密結合 Fragmentが特定のActivityから呼ばれることを想定して書かれている場合、そのFragmentとActivityは密結合である場合が多いです。 具体的には、以下の様な実装です。 ActivityのViewを参照する Activityのメソッドを直接呼び出す なぜダメか Fragmentの利点のひとつは優れた再利用性にあります。 Fragmentが特定のAct

    Androidソースコードレビューで指摘する事が多い項目まとめ - こやまカニ大好き
  • 第0回 はじめに プログラミングが「できる」ようになろう | gihyo.jp

    この連載の目的 プログラミング言語の入門書を読んだり、学校で学習し終えても、実際にソフトウエアを作れないと感じる人が多いものです。それは、特定のプログラミング言語の「文法」を学習しただけだからです。ソフトウエアを作る手順を、私は次のように分解して考えています。 何を作りたいのか、必要なのかはっきりさせる 同じものが既に無いかを調べ、仮に同じものがあっても作る価値があるか考える 私の使えるプログラミング言語でそれができるか調べてみる 試作品を作ってみる 上手くいきそうならきちんと設計する 仕上げる 手順の3や4で頓挫することがあります。手順の5と6は、行きつ戻りつの作業になります。手順の6の作業中に、使っている言語だけではできないことが分かってがっかりすることもあります。 いずれにせよ、この連載が読者として想定するのは、上記の作業を未経験の人です。 上記の作業を効率良くおこなうためには、様々

    第0回 はじめに プログラミングが「できる」ようになろう | gihyo.jp
  • せっき~のゲーム屋さん ドルアーガの塔 乱数の工夫の正体

    [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 CEDECの講演 「ゲーム世界を動かすサイコロの正体 ~ 往年のナムコタイトルから学ぶ乱数の進化と応用」 より、 乱数を使った ドルアーガの塔の 迷路生成のアリゴリズムについて紹介です。 講演内容は、こちらです http://sekigames.gg-blog.com/Entry/288/ 講演者の方も、 「ナムコの乱数を取り上げるなら、ドルアーガの塔をせざるえない」 という程、外せない内容との事です 「このテーマだけで講演時間を全て使っても説明しきれない」 (講演では、時間の関係で 触りのみでしたので ある程度、せっき~の解釈で補完しています) -------------------------------------------------------------------

  • クラスの命名のアンチパターン - Qiita

    昔から「名は体を表す」と言ひます。クラスの名前がクラスの果たす役割と一致してゐるかどうか常に考へ続けませう。 ImageInfo, AccountData, etc. Info って何やねん? Data って何やねん? ImageInfo って Image とはどう違ふねん?? FooInfo や FooData よりも好ましいかもしれない名前の例: FooAttribute, FooProperty, FooMetadata, FooDescription FooConfiguration, FooSetting, FooParameter FooResult, FooStatistics, FooSummary FooBuffer, FooList, FooCollection, ... ProductListItem, TranslationTableEntry, etc. Prod

    クラスの命名のアンチパターン - Qiita
  • Rubyにはウンザリ!動的型付け、副作用、およびオブジェクト指向プログラミング全般からの考察 | POSTD

    この記事を書き上げるには、相当長い時間がかかりました。来は今年の年明け、 Rubyの死 やデイヴィッド・ハイネマイヤー・ハンソンの TDDは死んだ がアップされて騒ぎになる前に投稿するつもりだったのです。昨年末に書いたツイートを見てください。 > Rubyにはもう飽き飽きした。理由はいろいろあるが、特にその副作用と、ステータスが可変なせいで大量のユニットテストを書かされるのにはウンザリだ。 @abevoelker Rubyの開発に関しては、大勢の人が心のどこかで何かおかしい、何かが欠けていると思っているようですが、たいていの人は責める対象を間違っています。Rubyで書いたアプリがとんでもない代物になったって? それはあなたがきちんとテストコードを書かなかったか、テスト駆動開発(TDD)の指針に則って開発しなかったからです。もしくは、正しいデザインパターンに切り分けるための知識が不足してい

    Rubyにはウンザリ!動的型付け、副作用、およびオブジェクト指向プログラミング全般からの考察 | POSTD
  • 関数型プログラマのためのRust | POSTD

    この投稿はEdward Z. Yangが2010年に書いた OCaml for Haskellers 、私自身が今年頭に書いた Haskell for OCaml programmers の流れに沿っています。 目次 プロローグ なぜRustを学ぶべきか 直接対応が可能なもの トレイト:Rustの型クラス アドホックなオブジェクトとメソッド 安全な参照 寿命と記憶域、そして管理オブジェクト オブジェクトの共有:RcとArc マクロとメタプログラミング リテラル 謝辞 参照 Copyright and licensing 注 : この記事の最新版は下記サイトで見られます。 http://science.raphael.poss.name/rust-for-functional-programmers.html 他のフォーマット: Source , PDF プロローグ C言語プログラマのための

    関数型プログラマのためのRust | POSTD
  • 『ガールフレンド(仮)におけるボーンアニメーション実装』

    はじめまして。 ガールフレンド(仮)でアニメーションを担当しています。峯岸と申します。 日はガールフレンド(仮)のぷちガールアニメーションの制作に関してご紹介したいと思います。 ぷちガールちゃんとは? ガールフレンド(仮)ではぷちガールちゃんという機能があり、ゲーム内でバトルをしたりイベントに参加したりするときに応援してくれる小さなガールがいます。 "会いに行く"機能では、ぷちガールちゃんにアニメーションをつけて可愛く動くよう実装されています。 ボーンアニメーションとは? 体にボーンを階層的に設置してゆき、その骨格のつなぎ目を基準にキーフレームで動きをつけてアニメーションをつけていく技法のことです。 スケルタルアニメーションや、スキンドメッシュアニメーションとも呼ばれています。 ガールフレンドでは、アニメーション制作にFlashを使用しているため、ガールの各パーツを関節ごとにムービークリ

    『ガールフレンド(仮)におけるボーンアニメーション実装』
  • アルゴリズムとプログラミングをビジュアルで一挙に理解できる「VisuAlgo」

    アルゴリズムを理解するのにビジュアル化することは非常に有効で、プログラムをビジュアル化することで理解が進むのもまた同じ。そこで、アルゴリズム・プログラミングの理解が進むようにと、アルゴリズムを記述したプログラムコードを一挙にビジュアル化することで、アルゴリズム&プログラミングを同時に学習できる一挙両得なサービス「VisuAlgo」が公開されています。 VisuAlgo - visualising data structures and algorithms through animation https://visualgo.net/en 上記のVisuAlgoサイトで試しにソートアルゴリズムの基プログラム「バブルソート」をビジュアル化してみます。「Sorting」の「bubble」をクリック。 検索窓の下に「bubble」と表示されたのを確認したら「Sorting」の画像をクリック。

    アルゴリズムとプログラミングをビジュアルで一挙に理解できる「VisuAlgo」
  • why(matters(Swift) > matters(Yosemite + iOS[8])) : 404 Blog Not Found

    2014年06月03日22:00 カテゴリLightweight LanguagesNews why(matters(Swift) > matters(Yosemite + iOS[8])) 「新HWの発表ゼロ!?」なんて言っている場合じゃない。 YosemiteもiOS 8も、さらに次のヴァージョンが出るまで、高々1年半かそこらの問題だけど、Swiftは少なくとも向こう10年、いや言語というものの性格からして何十年に及ぶことなのだから。 Swiftってどんな言語? とりあえず、なるべくわざとらしく書いたFizzBuzzの例。 struct Fizz { subscript(n:Int) -> String { return n % 3 == 0 ? "Fizz" : "" } } struct Buzz { subscript(n:Int) -> String { return n %

    why(matters(Swift) > matters(Yosemite + iOS[8])) : 404 Blog Not Found
  • スクールガールストライカーズの 内製クライアントエンジン

    近年、ハイスペックなスマートフォン、高品質なネットワークが普及し、それによりモバイルゲームの制作手法やそれを取り巻く環境も変化してきました。スクウェア・エニックスでは、そのような環境の変化に対して、日々新たなチャレンジをし続けています。そして、このようなスピード感溢れる業界の流れには、会社の枠を超えた技術情報の共有、交流が欠かせないと感じております。 そこでこの夏、社内のエンジニア・テクニカルディレクターによる最新のモバイル開発の技術情報や社内モバイルエンジン、開発秘話によるセッションをメインに、スクウェア・エニックス モバイル オープンカンファレンスを開催する運びとなりました。また、セッションの後は登壇する弊社スタッフと直接ディスカッションやフリートークができる場を設けております。この機会にスクウェア・エニックスという会社についても、より詳しく知って頂ければ幸いです。 マネージャー・テク

    wushi
    wushi 2014/07/18
    「設計を入力するとソースコードを出力する」が響いた◆20年経っても、kBオーダーで戦う人が必要なんだな、と分かった風なことを言ってみる
  • 昔ながらの「片手間に書くJavaScript」の限界 - mizchi's blog

    Javascriptを使うのをやめろ:Railsの時代遅れ云々についての結論 - Qiita この記事は、全体的に自分の業務以外の評価基準やトレンドを知らないんだなという感じで、わざわざ付き合うと精神的に消耗する感じがした。ただ、それが彼らの職でない以上、自分もこの結論に至るのは仕方ないと感じている部分はある。 真の問題は、自分がレガシーなJavaScriptを書いているという自覚がない人間が、ここ数年の技術トレンドから乖離したコードを書き続けることで他のエンジニアやエコシステムそのものに悪影響を及ぼしているケースが散見されている。一行書く毎にグローバル汚染するスクリプトを見せられてもメンテ出来んと言われても、はいそうですねとしか言えないし、そういう人に最近のライブラリを触らせると遅くなるというのは、画面全体を一つのMustacheテンプレートにしてBackbone.Modelのパラメー

    昔ながらの「片手間に書くJavaScript」の限界 - mizchi's blog
  • 最高のプログラミング言語(または私は如何にして心配するのを止めてコードを愛するようになったか) | POSTD

    常に世界のどこかで誰かが、この世で一番のプログラミング言語は何かというトピックで投稿し、忘れ去られた言語のすばらしい一面や、新しい言語の有用性を主張しています。どうやら、その順番が私に回ってきたのかもしれません。そろそろ私も、プログラミング言語についての自分の考えを皆さんにお伝えしようと思います。 始めに少し言い訳をさせてください。30以上の言語で開発した経験があり、他の人が書いた多くのコードと悪戦苦闘をしてきた開発者でもない限り、「自分の意見には客観性がある」とはとても言えないと思います。そんなわけで、このトピックを取り上げる他の多くの人と同じように、私の意見も偏っています。多くの言語に精通した開発者がこの話題自体を不毛だと感じるのは、このせいかもしれませんね。 要約: すばらしい言語 早速、このブログ限定ということで、私が考える”すばらしい言語”を発表しましょう。 アセンブリ言語: マ

    最高のプログラミング言語(または私は如何にして心配するのを止めてコードを愛するようになったか) | POSTD
  • はじめてのGo - すぎゃーんメモ

    今さらながら、Goをもう少し読み書きできるようになりたいな、と思い。 A Tour of Go を一通り読んで、 GitHub - mattn/twty: command-line twitter client written in golang go-oauth/examples/twitter at master · garyburd/go-oauth · GitHub などを参考にしつつ、写経というかんじで Twitterのtimelineを取得するものをまずは書いてみた。 package main import ( "encoding/json" "fmt" "github.com/garyburd/go-oauth/oauth" "github.com/typester/go-pit" "log" "net/http" "os/exec" "runtime" ) func mai

    はじめてのGo - すぎゃーんメモ
  • 使いやすいシェルスクリプトを書く

    できればシェルスクリプトなんて書きたくないんだけど,まだまだ書く機会は多い.シェル芸やワンライナーのような凝ったことではなく,他のひとが使いやすいシェルスクリプトを書くために自分が実践していることをまとめておく. ヘルプメッセージ 書いてるシェルスクリプトが使い捨てではなく何度も使うものである場合は,体を書き始める前に,そのスクリプトの使い方を表示するusage関数を書いてしまう. これを書いておくと,後々チームへ共有がしやすくなる.とりあえずusage見てくださいと言える.また,あらかじめ書くことで,単なるシェルスクリプトであっても自分の中で動作を整理してから書き始めることができる.関数として書くのは,usageを表示してあげるとよい場面がいくつかあり,使い回すことができるため. 以下のように書く. function usage { cat <<EOF $(basename ${0})

  • ニューラルネットによる単語のベクトル表現の学習 〜 Twitterのデータでword2vecしてみた - 病みつきエンジニアブログ

    最近にわかにword2vecが流行っています。ので、乗っかってみました的記事です。 理論に関してはあまり詳しくしらないので、印象だけで語っているかもしれません。何かありましたらTwitterかコメント等でご指摘いただけますと幸いです。 ちなみに、失敗した話が多いです。 word2vecと単語のベクトル表現 word2vecは、機械学習の分野で使われる、ニューラルネットというモデルを使ったツール/ライブラリです*1。名前の通り、wordをvectorにします。vectorにする、というのは、ベクトル表現を獲得するということで、意味(みたいなもの)の獲得というか、素性の獲得というか。 単語のベクトル表現の獲得自体は、別にword2vecにしかないわけではありません。言い換えると、昔からあります。LDAを使って単語のトピック分布のようなものを学習したり(vingowでやりました)。余談ですが、こ

    ニューラルネットによる単語のベクトル表現の学習 〜 Twitterのデータでword2vecしてみた - 病みつきエンジニアブログ