タグ

classに関するastk_fのブックマーク (21)

  • クラスまたは構造体の選択

    クラスは参照型ですが、構造体は値型です。 参照型はヒープ上に割り当てられ、メモリ管理はガベージ コレクターによって処理されます。 値型はスタックまたはインライン上に割り当てられ、スコープの外に出たときに解放されます。 一般に、割り当てや解放は値型の方が簡単です。 ただし、大量のボックス化とボックス化解除が必要なシナリオで使用すると、参照型と比べてパフォーマンスが低くなります。 詳細については、「ボックス化とボックス化解除 (C# プログラミング ガイド)」を参照してください。 値型と参照型の詳細については、「共通型システム」を参照してください。 型のインスタンスが小さく有効期間が一般に短い場合や、型のインスタンスが一般に他のオブジェクト内に埋め込まれる場合は、クラスではなく、構造体を定義することを検討します。 型が次に挙げるすべての特性を持たない場合、構造体は定義しません。 プリミティブ型

    クラスまたは構造体の選択
  • application diet

    "I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)

    application diet
  • グローバルゲームジャムでクラス設計をやった話2017 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? #お知らせ 2017/11/26開催の「プログラマのためのUnity勉強会」において、 Unity開発で使える設計の話+Zenjectの紹介 というタイトルで講演しました。こちらのスライドを先に見てから記事を参照されることをおすすめします。 #はじめに 去年に引き続き、今年もGGJに参加してきました。今回もそのことを書きたいと思います。 今回の内容は以前に投稿したUnity開発で便利だったアセット・サービス紹介 & Unityでのプログラミングテクニックとつながりがあるので、こちらを先に読んでからのほうがわかりやすいかもしれません。

    グローバルゲームジャムでクラス設計をやった話2017 - Qiita
  • JavaScriptのES2015クラスでmixinを実装する世界一美しい方法 - Qiita

    こいつまた煽りっぽいタイトル書いてるな? 皆さんES2015のclass使ってますか? ES2015のクラス、prototypeを利用したり、{}を利用したりして、様々な書き方で実現できるクラスっぽい何かを、単一の記述でまとめた偉業は素晴らしいですよね。 でも、反面まだまだ機能が全然足りません。当に足りません。 そこで今回は足りない機能をなんとかしよう、みたいな話です。 まずは基的な継承の振り返り ES2015クラスでは、「extends」を用いることで、継承を実現することが出来ます。 class Swimmable{ swim(){ console.log("すいすいっ"); } } class Fish extends Swimmable{} const fish = new Fish(); fish.swim(); // "すいすいっ"

    JavaScriptのES2015クラスでmixinを実装する世界一美しい方法 - Qiita
  • オ・ト・ナのカプセル化再入門 - Qiita

    Encapsulation with Package in Java 現在 Android を開発していて、色々なプロジェクトをみていると設計が考えられてない物が多く、「糞コード」と発狂することが度々あります。 しかし、なぜ「糞コード」だと論理的に説明する事は、なかなか難しいものです。 「糞コード」が生まれてしまう理由の一点としては、Web の便利な MVC フレームワークに慣れすぎてしまい、もっとベースにある__ソフトウェア設計__という根幹部分を忘れてしまったか、または考えられてない事ではないでしょうか。 そんな大人の階段を登り切った僕が、もう一度設計とは何かを考えなおし、これは「糞コード」だよと言うために、オブジェクト思考の重要で基的な要素であるカプセル化とパッケージを軸とした考えをまとめたので共有します。 参考にした Web サイトも是非見てください。 Encapsulation

    オ・ト・ナのカプセル化再入門 - Qiita
  • 特殊メンバ関数とコンパイラによる暗黙宣言 - yohhoyの日記

    プログラミング言語C++における特殊メンバ関数(special member functions)のユーザ宣言/コンパイラ暗黙宣言に関するメモ。記事の内容はACCU 2014でのHoward Hinnant氏プレゼン(PDF) "Everything You Ever Wanted To Know About Move Semantics (and then some)" に基づく。 下記6つが特殊メンバ関数として扱われる。これらのメンバ関数は、“宣言なし”、“暗黙の宣言(defaulted/deleted)”、“ユーザ宣言(=default/=delete/ユーザ定義)”のいずれかとなる。 デフォルト・コンストラクタ X() デストラクタ ~X() コピー・コンストラクタ X(const X&) コピー代入演算子 X& operator=(const X&) ムーブ・コンストラクタ X

    特殊メンバ関数とコンパイラによる暗黙宣言 - yohhoyの日記
  • [Android Tips] Pub / Sub ライブラリ「Otto」を使って Fragment から Activity にイベントを通知する | DevelopersIO

    [Android Tips] Pub / Sub ライブラリ「Otto」を使って Fragment から Activity にイベントを通知する Pub / Sub みなさん、Fragment で発生したイベントを Activity に通知する場合は、どのように実装していますか? Fragment の Listener を作ってみたり、Activity に Public メソッドを作ってみたりといったような方法がありますが、何だかスマートじゃないですよね。 そんなときに役に立つのが Otto というライブラリです。モバイル決済サービスで有名な Square 社が公開しており、Google が公開している Guava ライブラリを Fork して作られています。 このライブラリを使うと、Pub / Sub モデルのメッセージングを非常に簡単に実装できます。Pub / Sub モデルとは簡単に

    [Android Tips] Pub / Sub ライブラリ「Otto」を使って Fragment から Activity にイベントを通知する | DevelopersIO
  • CSS Subclassing

    上野 学(@manabuueno)- 2014年1月17日 CSS Subclassing は、主にアプリケーションよりのウェブの実装に役立つ CSS の書き方である。 アプリケーションよりのウェブとは、企業広報サイトのように各画面でデザインの個別性が高いものではなく、コンポーネント化されたUI要素の組み合わせのみで各画面が構成されるようなもののことである。 CSS Subclassing の目的は、HTML 要素をユーザーインターフェースオブジェクトのインスタンスとして捉え、そのスタイルをクラスとして定義することにある。そしてあるクラスの性質(スタイル)を継承した、サブクラスの定義もできるようにする。 HTML 要素にスタイルをあてる場合、class 属性にクラス名をセットしてそれを CSS のセレクターに用いることは普通に行われる。しかし HTML 要素の class 属性は、いわゆる

  • JavaScriptでのクラス定義 - Qiita

    var Hello = (function(){ // constructor function Hello(name){ this._name = name; } // private method function say(message){ console.log(message + ', ' + this._name); } // public method function hello(){ say.call(this, 'Hello'); } Hello.prototype = { // constructor 修正 constructor: Hello, // 以下 public メソッド hello: hello }; return Hello; }()); var Animal = (function(){ function Animal(name){ this._nam

    JavaScriptでのクラス定義 - Qiita
  • 動的クラスローディングでAndroidアプリ“裏”開発

    動的クラスローディングでAndroidアプリ“裏”開発:Androidで動く携帯Javaアプリ作成入門(40)(1/3 ページ) 動的クラスローディングで何ができる? Javaでは、起動時のみでなく、実行時にユーザープログラムの制御によって、外部リソースからクラスを読み込み、メソッドを実行できます。そうです、ClassLoaderを使用して外部からクラスを読み込めばよいのです。 動的クラスローディングが行えることで、どのようなメリットがあるでしょうか。 ゲームのステージなど、必要なリソースを後から追加。必要なくなったリソースは削除 ユーザープラグインのような仕組みが導入可能 データやプログラムの配信・修正が容易になる Androidでは、動的クラスローディングはJavaのそれとは少し事情が異なります。今回は、その事情や対応方法を詳しく解説していきます。 読み終えた段階で、ほぼ満足いく形で動

    動的クラスローディングでAndroidアプリ“裏”開発
  • Xcodeプロジェクト内のクラスの依存関係を図示する - Qiita

    他人から引き継いだプロジェクトの大まかな全体設計を把握したい場合、規模の大きいライブラリの一部だけ取り出して使用したい場合、複雑になってしまったコードをリファクタリングしたい場合等、プロジェクト内のクラスの依存関係が一望できると有益な場面は多いのではないでしょうか。 objc_depというスクリプトを用いると、下記のように、Xcodeプロジェクト内のクラスの依存関係を示す図をコマンド一発で生成することができます。 このスクリプトの使い方、生成される図の見方等を紹介します。 ##スクリプトの実行方法 次のURLからダウンロードしてきて解凍すると、objc_dep.py というファイルが入っています。 https://github.com/nst/objc_dep そのスクリプトを適当な場所に置き、ターミナルから次のように実行します。

    Xcodeプロジェクト内のクラスの依存関係を図示する - Qiita
  • JavaScriptでCSSのクラスに設定された値を書き換える方法はないでしょうか。…

    JavaScriptCSSのクラスに設定された値を書き換える方法はないでしょうか。 例えば、 p.class { color: blue; } を p.class { color: red; } に変えたいのです。

  • JavaScript のクラスの書き方 - yoshiweb.NET-blog

    IT戦記さんのマネして「プロトタイプを上書きする。コンストラクタをプロトタイプに実装する。」 書き方をしようと思ってたけど、CoffeeScript や TypeScript から書き出されるJavaScriptを参考にしよう! 比較的見やすいし CoffeeScript と TypeScript のどっちでも同じような JavaScript を生成するってことは そんなに悪い書き方じゃなのかと。。。 CoffeeScriptclass Item constructor: (@price) -> showPrice: () -> alert(this.price); i = new Item(200) i.showPrice() ↓↓↓↓変換 JavaScriptvar Item, i; Item = (function() { function Item(price) { this.pr

  • JavaScriptとprivateの見果てぬ夢 (JavaScript Advent Calendar 2011 オレ標準コース 6日目)

    JavaScriptとprivateの見果てぬ夢 (JavaScript Advent Calendar 2011 オレ標準コース 6日目) JavaScript Advent Calendar 2011(オレ標準コース)6日目です。他の方々のレベルが高すぎてビクビクしながら書いてます。 JavaScriptのオブジェクト指向は若干クセがあります。他のオブジェクト指向言語を使ってきた人にとって気になるのは、privateが作れないことでしょう。JSで教科書通り素直にクラス(もどき)を書くと、オブジェクトのプロパティは全てpublic、完全にオープンなものになってしまいます。 var Klass = function(){}; Klass.prototype = { methodA: function(){ ... }, methodB: function(){ ... } }; //---

    JavaScriptとprivateの見果てぬ夢 (JavaScript Advent Calendar 2011 オレ標準コース 6日目)
  • Android Tips #17 Android SDK の便利な Util クラス | DevelopersIO

    はじめに Android SDK には、面倒であったり、冗長になりがちな処理を行なってくれる Util クラスが数多く存在します。 意外と知られていない便利な Util クラスもあります。 ということで、Androidアプリを開発する上でぜひ使っていきたい便利な Util クラスをまとめました。 TextUtils Linkify DateUtils Formatter Pair SparseArray FloatMath Color ThumbnailUtils TextUtils http://developer.android.com/reference/android/text/TextUtils.html String の Util クラスです。 isEmpty は String の null と length = 0 をまとめてチェックしてくれます。このあたりはよく必要になるん

    Android Tips #17 Android SDK の便利な Util クラス | DevelopersIO
  • mofmof.js とクラスベースOOP - latest log

    クラスの使い方(初級) mofmof.js では mm("Hoge", { メソッド }) でクラス mm.Hoge を定義することができます。 mm("Hoge", { init: function(arg1, arg2) { this._arg1 = arg1; this._arg2 = arg2; }, method: function() { alert(this._arg1 + this._arg2); } }); var hoge = new mm.Hoge(1, 2); hoge.method(); new mm.Hoge(1, 2) のタイミングで init(1, 2) が呼ばれます init はコンストラクタと呼ばれ、 主に初期化に関わる処理を記述します mm.Hoge クラスのインスタンスを生成します alert(3) が実行されます クラス内部で使うプライベートなメソ

    mofmof.js とクラスベースOOP - latest log
  • Javaのクラス宣言5種+α - プログラマーの脳みそ

    Javaのクラス宣言には5種類ある。 トップレベルクラス・ネストしたクラス・内部クラス・ローカル内部クラス・匿名クラス(無名クラスとも言われる)の5種類だ。 今回はこの5種類のクラス宣言のおさらい。 トップレベルクラス これは普段使っているクラス。拡張子が.javaのファイルを作り、そのファイル名とクラス名を合致させなくてはいけない。そのjavaファイルのトップレベルに位置する。 ネストしたクラス 「ネストしたクラス」(Nested class)とはクラスの中にクラスがネストしている状態。トップレベルクラスの内側にstaticキーワードをつけてクラス宣言を行う。 public class Outer { public static class Nested { } } このネストしたクラスは、トップレベルクラスと同等の機能性を持つ。 クラス名はOuter.Nestedという名前で扱われるが

    Javaのクラス宣言5種+α - プログラマーの脳みそ
  • Actionscript3erが覚えるJavascriptでのクラス開発まとめ – 宇都宮ウエブ制作所

    カレーうどんが好きです。今日のお昼はカレーうどんでした。正宗です。 今日はJavascriptでクラス開発をしてみたいと思います。 冒頭のカレーうどんは関係ないですね。何かいわなきゃと思ってつい好物を出してみました。 ご存じのとおり、Actionscriptはもともとバージョン1の頃はJavascriptとほぼ同じ言語であり、つまりAS1の頃のクラス開発がそのまま使える形となっています。 そこでJavascriptでクラスを作ったりするときに「あれ?ASだとこうやるやり方、JSだとどうやるんだっけ」ってのを減らせるように、完全に個人的な備忘録を作ってみました。自己流なうえにオレオレ規約ばっかりで恥ずかしい限りですがせっかく作って公開したのでなんらかのお役にたてばうれしいです。 Javascriptでのクラスの作り方は当にたくさんの方法がありますが、その中で僕が一番馴染んでいる書き方だけを

  • Javaのクラスとオブジェクトについて再度解説を試みる - 達人プログラマーを目指して

    オブジェクト指向プログラミングの考え方については、今までこのブログでも何度か取り上げてきました。 [オブジェクト指向] - 達人プログラマーを目指して オブジェクト指向プログラミングはプログラミング技法のすべてではないとはいえ、Javaのようなオブジェクト指向言語で格的なプログラムを作るには理解を避けて通ることができませんし、また、関数型言語など他のパラダイムの言語を利用するにしても、オブジェクト指向の考え方をまったく理解しないまま使いこなすということは困難でしょう。オブジェクト指向の考え方はデータ構造やアルゴリズムといったことと同様に、プロフェッショナルなプログラマーが理解しておくべき基的な素養といってもよいと思います。実際、海外では募集要項でオブジェクト指向の理解を前提とすると書かれていることが普通ですし、プログラマーの面接試験で、アルゴリズムと並んでオブジェクト指向プログラミング

    Javaのクラスとオブジェクトについて再度解説を試みる - 達人プログラマーを目指して
  • [AS3] Flash CS5に潜む謎のクラスWorld II − 内緒の物理エンジン

    投稿者:野中 文雄 | 投稿日:2011.09.23 | [AS 3][ActionScript][Tips][サンプル][野中ゼミ] 以前の記事でご紹介した「Flash CS5に潜む謎のクラスWorld」は、非ドキュメントの物理エンジンに含まれているようです。昨年11月に書かれた英文blogに、ライブラリの中身を探った解説がありました。そのblogのテスト用コードをもとに、簡単なサンプルをつくってみました。 参考にしたのは、Significant Data「Flash CS5 Built-in Physics Discovered」です。スクリプトはFlash Professional CS5でしか書出せず、CS5.5でもコンパイルエラーになります。またもちろん、正規サポートはされません。 01 Flash Professional CS5の物理エンジンを内緒で使う 以下のスクリプト00

    [AS3] Flash CS5に潜む謎のクラスWorld II − 内緒の物理エンジン