タグ

programmingとinterfaceに関するedo_m18のブックマーク (6)

  • Objective-Cで独自クラスに[]でアクセスする | TOKOROM BLOG

    まず、Xcode4.4から使えるObjective-Cの新しい書き方については 前の記事 をご参照ください。 Xcode4.4からMacアプリ開発で使える新しいリテラル 上記記事には書いていないのですがMac向けのアプリではこの他にも、 array[1] でNSArrayの要素にアクセスできる dictionary[key] でNSDictionaryの要素にアクセスできる @YES/@NO でもNSNumberのインスタンスを作れる といった変更があります。 こちらについては残念ながらiOSアプリ開発ではまだ利用できません。 ※ これらがターゲットがMacの場合には利用できてiOSの場合には利用できないということは、 @k_katsumi さんに教えてもらいました。 でも[]でアクセスする仕組み自体はiOSでも使えます! ところで、[]でインスタンスにアクセスするコードを書いたとき、これ

    edo_m18
    edo_m18 2015/07/31
    これ知らなかった・・。
  • [iOS] Xcode 6.3 から Objective-C でも Swift の Optional と同等の機能が利用できるようになりました | DevelopersIO

    Objective-C でも Optional Xcode 6.3 で Objective-C の言語機能のアップデートがあり、 Optional と同等の機能を提供する __nullable と __nonnull が利用できるようになりました。端的に言うと Objective-C で値が空の状態がより明確に表現できるようになったということです。今回は、この機能をご紹介します。 Xcode 6.3 から利用可能 __nullable __nonnullで定義 nullable nonnull でも記述可能 __nullable と __nonnull __nullable は、NULL または nil が含まれる可能性がある場合に使用します。一方 __nonnull は NULL または nil が含まれる可能性がない場合(つまり、絶対に空ではない場合)に使用します。これらを使うと、例え

    [iOS] Xcode 6.3 から Objective-C でも Swift の Optional と同等の機能が利用できるようになりました | DevelopersIO
  • データ型のアラインメントとは何か,なぜ必要なのか?

    以前このサイトとブログに,何度かアラインメントに関する記事を書きました (サイト内関連ページ参照). そのせいか「アラインメント」で検索して来てくれる人が多いので, 過去の記事に加筆修正してこのページを新たに作成しました. 加筆した点は次のとおりです. アラインメントとメモリアクセス回数の関係をわかりやすくするため, (ほんの少し) 図を導入しました. 「データがアラインされていないとメモリアクセス回数が増える」 と言葉で説明しているサイトは多いのですが, 図で示しているところはまだ見たことありません. アラインされていないアドレスにデータを書き込む場合, 読み出しの場合以上にメモリアクセス回数がかかる可能性があることを追記しました. 以前は「複合データ型 (配列,構造体,共用体) のアラインメント」はほとんど自明のことだと思っていたので軽く流していましたが, 意外なことにこれを解説してい

    edo_m18
    edo_m18 2015/04/10
    丁寧で分かりやすい。色々クリアになった。
  • 実装パターン - Strategic Choice

    書籍「実装パターン - Implementation Patterns」で紹介されている、読みやすいコードを書くための77の実装パターン。プログラマの仕事は、他のプログラマとの間でコミュニケーションを取ることである。マシンではない。ケント師 曰く実装パターンの礎実装パターンの礎・「価値」と「原則」実装パターンの礎・価値:コミュニケーション実装パターンの礎・価値:シンプル実装パターンの礎・価値:柔軟性実装パターンの礎・原則:結果の局所化実装パターンの礎・原則:繰り返しの最小化実装パターンの礎・原則:ロジックとデータの一体化実装パターンの礎・原則:対称性実装パターンの礎・原則:宣言型の表現実装パターンの礎・原則:変更頻度実装パターンの礎・そしてパターンへ実装パターンカテゴリパターン名ClassクラスClassクラス  Simple Superclass Nameシンプルなスーパークラス名  Q

  • オブジェクト指向は禁止するべき - きしだのHatena

    プログラムがまだ不慣れな人が「プログラムちょっとわかるようになったけど、まだぜんぜんオブジェクト指向とかできてません」のように言ったり、ちょっと慣れた人が「このソース、ぜんぜんだめ。オブジェクト指向ができてない」にようなことを言ったり、まるで、オブジェクト指向ができてるかどうかがよいプログラムかどうかを表すことになってるようだ。 Javaのアルゴリズムのに、「Javaなのにオブジェクト指向ができていない」のような書評がついているのを見たときには、お前は何を求めてるんだと思ったりもした。 そのようなオブジェクト指向は、窓から投げ捨てるべきだ。オブジェクト指向はプログラムのよしあしの基準にならない。 むだにHogeインタフェースとHogeImplクラスがあったり、むだにnewするだけのcreateメソッドがあったり、どこで値が設定されてるかわからないオブジェクトがひきまわされてたり、ソースコ

    オブジェクト指向は禁止するべき - きしだのHatena
  • A Day In The Life

    なんか無性にゲームが作りたくなったのでブラウザで遊べる簡単なゲームを作っています。 今のところまだ2つだけですが、少しつづ種類を増やしていきたいです。 マインスイーパ ライフゲーム 久しぶりすぎて基中の基であるゲームループの実装すら忘れてました。 日限定の標準地域メッシュを世界に拡張した世界メッシュという規格がある 普段、データ分析業務などで総務省が策定した標準地域メッシュ(JISX0410)を利用しています。この規格は日でしか利用できないのですが漠然と定義を拡張して全世界で使えたりしないのかなと思って、いろいろ探してみたところ世界メッシュというものを発見しました。 一般社団法人世界メッシュ研究所 – Research Institute for World Grid Squares ブラウザで世界標準メッシュを利用してみたかったので自前で TypeScript でライブラリを開発

    A Day In The Life
  • 1