タグ

ブックマーク / akisute.com (13)

  • セキュリティを一切考慮しないMMORPGを開発するとどうなるか

    どうもご無沙汰しております。Blogが私の年1回の生存報告、兼、アドベントカレンダー用と相成って久しいですが、今年も一発恒例行事として筆を取らせていただきたいと思います。 今年、私が話題に取り上げますのは、とあるゲームです。Amazon Game Studiosという会社が開発・リリースしました、New WorldというMMORPGについてご紹介させていただきたいのです。ゲームの話題には一切興味がない読者諸君も、どうか少し我慢して、私に騙されたと思って最後まで話を聞いていただけませんでしょうか。そもそも、あのAmazonが開発したMMORPGというのですから、どれほどゲームに興味がなくても、技術に興味のある方でしたら、少しは興味深く感じられるのではないでしょうか? けして後悔はさせませんよ。悪い方向にね。 さて、ゲームに何ら興味知識のない方にもわかるように少し解説を入れさせていただきます

    セキュリティを一切考慮しないMMORPGを開発するとどうなるか
    mitukiii
    mitukiii 2021/12/01
  • マネージメントに必要なことは全てゲームから学んだ

    この投稿は毎年恒例、pyspa Advent Calendar 2020の1日目の投稿になります。 どうもご無沙汰しております、akisuteです。すっかり年に1回アドベントカレンダーのときにだけ顔を見せる人になっておりますが、おかげさまで無事平穏に過ごしております。 さて突然ですが私はプログラマーを引退しました。 なぜなら今年で36歳だからです。プログラマーは35歳になったら定年ですね。 実際のところ、このぐらいの年になると、よほど何らかの意志が働かない限り、技術に対する情熱みたいなものが失われてくると思います。もちろん当に技術とプログラミングが好きな人は間違いなく35歳なんかで情熱を失ったりはしないと断言しますが、残念ながら私はそうではなく、もはやiPhoneには大した興味が湧いておりませんし、最近はJavaだのGoだのTypescriptだのVue.jsだのといったものを必要に応じ

    mitukiii
    mitukiii 2020/12/01
  • Swift を使ってみてがっかりした点まとめ

    数日間iOS8/Xcode6/Swiftな環境で色々試してみて、Swiftを使っていて思ったよりがっかりした点が多かったのでちょっとまとめてみようと思います。 動的な処理がSwiftだけでは一切できない [NSObject performSelector:]の類と、NSInvocationがSwiftからは一切呼び出せません。使おうとすると怒られます。objc/runtime.hは試していませんが、同様に直接Swift経由では呼び出せず間にObjective-Cをかます必要があるのではないかと思われます。 @optionalなprotocolが限定的にしか使用できない 具体的には@objc属性を付けないと使えません。しかしながらこのような後方互換性のためだけに存在する属性をいつまでもAppleがサポートするかは疑問が残るというのと、もう一つ以下の様な問題があります。 @objc属性のついた

    mitukiii
    mitukiii 2014/06/06
  • 各種WebサービスのAPI認証方法を調べてみた

    自分でWeb サービスを作る際に、APIの認証ってどうやって作ればよいのだろうと思い立ち、各種Web サービスのAPIの認証方法を調べてみました。 ■Google 参考にしたページはこちら。 http://code.google.com/p/pyrfeed/wiki/GoogleReaderAPI 認証方法 ユーザーIDおよびパスワードを元に、Cookieを生成 認証時のAPI通信 HTTPS POST 認証URL https://www.google.com/accounts/ClientLogin 認証後のAPI通信 HTTP GET/POST, HTTPS GET/POST トークン送出方法 HTTPリクエストヘッダのCookie属性に「SID」を含める Cookieを使う方法ですので、Webブラウザを用いるWebアプリケーションに対する認証の場合は非常に簡単ですが、クライアントアプ

  • 自分流 View Controllerの作り方 その1

    その2はこちら 以前勉強会の際に発表した View Controller の作り方のメモをまとめてみました。あくまでメモなので中身はうまくまとまっていませんが、何かのご参考になればと思います。 通信が絡んでくると、たいていの人がやりがちな問題(実例) API通信のレスポンスを処理するコードがViewControllerの中に入っている API通信が3種類必要で、Aを実行したあとにBとCを実行しなければならないとか ABCのレスポンスJSONのパースまでViewControllerでやっている というかAPIの呼び出しの組み立てだとかURLの指定だとか自体がIBActionの中に入っていたりする API通信だけじゃなくてIn App Purchaseなどでも同様の事例が見られる それに対する対応策。そもそもなぜこのような問題が発生するのか? Outletの生成・更新・レイアウトが分離されてい

    自分流 View Controllerの作り方 その1
  • UDIDが使えなくなりそうなので、UIIDを使えるようにしました

    ■2012/11/11追記 iOS 6より[[UIDevice currentDevice] identifierForVendor]というAPIAppleより提供され、よりプライバシーに配慮した上により安全な方法で自分の開発したアプリケーションを利用するユーザーを個別に認証することが可能になりました。それに伴い拙作のライブラリもidentifierForVendorが利用可能であればこちらを利用するように修正いたしました。今後はこのidentifierForVendor(または広告APIなどを作る場合であれば[[UIDevice sharedManager] advertisingIdentifier])が個体認識の主流になっていくと思われます。identifierForVendorとadvertisingIdentifierの仕様まとめは http://stackoverflow.c

  • github で pull request をされたとき・するときの手順

    github に自分のリポジトリを公開していると、たまに pull request をされることがあります。また逆に、他人のリポジトリのコードを使っていて、どうしても気になるバグを見つけて修正したときなど、相手に pull request を送りたいことがあります。こんなときにどうすればよいかをまとめてみました。 ■pull request をしたいとき pull request をしたいときは、まず相手のリポジトリを fork する必要があります。 このボタンをぽちっとな。 fork したら、 fork して自分の管理下に入ったリポジトリを clone して、コードを修正します。git clone https://akisute@github.com/akisute/asi-http-request.gitコードの修正が終わったら、自分の fork したリポジトリに push しておきま

    github で pull request をされたとき・するときの手順
  • ASIHTTPRequest を使って外部 API から非同期的に結果を取得してみる

    ASIHTTPRequest という神の通信ライブラリを使って、うまい具合に外部 API から非同期的に結果を取得・解析して返すようなクラスをつくってみました。以前 NSOperation でやってみたバージョンは こちら。 ■主な機能 元々の ASIHTTPRequest にある機能はもちろんご利用いただけます。多すぎて説明し切れませんので、以下の記事を参考にしていただければと思います>< http://d.hatena.ne.jp/ninjinkun/20101122/1290394265 http://macisv.jp/blog/?p=235 さらに今回私が作成した ASIAPIRequest にはこのようなおいしい特典がつきました。POST のパラメータだけではなく、 GET のパラメータも楽々生成してくれるメソッドを用意しました。非同期実行時の通知方法が, delegate,

    mitukiii
    mitukiii 2011/01/23
    これは凄い。元のライブラリも凄いが解説も分かりやすい。
  • NSOperation を使って外部 API から非同期に結果を取得してみる

    iPhone / iPad のアプリを作っていると、頻繁に登場するのが「外部 API を HTTP 経由で実行して結果を XML / JSON で取得し、それを解析してモデルクラスに変換してデータ構造に突っ込む」パターンです。当然たくさんの先人の皆様がすでに効率的なライブラリを作成されているのですが、あえて私も車輪の再発明に挑戦してみました。今回使用したのは NSOperation クラスです。 NSURLConnection クラスとデリゲートを使うだけでも簡単に非同期通信を実現することができるのですが、さらに NSOperation クラスと NSOperationQueue を使うことでさらにタスク間の依存関係を簡単に設定できたり、タスクの並列度を簡単に制御したりできそうなので、挑戦してみました。 2010/12/29追加: 発展版をASIHTTPRequestを使って作成してみまし

  • Xcodeのテンプレートを作成する方法

    Xcodeにデフォルトで付随しているテンプレートでは満足出来なくなってきたため、デフォルトのテンプレートを改造して自分用の新規ファイル作成テンプレートを作ることにしました。 参考文献はこちら。 http://d.hatena.ne.jp/griffin-stewie/20090315/p1 ■デフォルトのテンプレートのあるパス デフォルトのiPhone SDK用のテンプレートは以下のパスにあります。 /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/ 中を見ると、 akisute Xcode$ pwd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode akisute Xcode$ tree -L 1 . |-- File Templates

    Xcodeのテンプレートを作成する方法
    mitukiii
    mitukiii 2011/01/19
    参考にしよう。
  • iOS で正規表現を使う (3.0, 3.1, 3.2, 4.0)

    iPhone / iPad アプリで正規表現を使いたいときはどうするのか調べてみました。 ■iOS 4.0以上 NSRegularExpression があるのでそれを使えば万事解決です。 ■iOS 3.2 http://blog.livedoor.jp/pnfhy316/archives/277806.html こちらのブログでご紹介されているとおり、NSString rangeOfString:options: で NSRegularExpressionSearch を指定するのが楽です。 正規表現のグループ参照はできませんけれど、まぁしょうがないですかね。 ■iOS 3.1, 3.0 http://d.hatena.ne.jp/KishikawaKatsumi/20081031/1225463896 こちらのブログでご紹介されているとおり、ライブラリを使うのがよいようです。 または最

  • iPhone 開発規約まとめ

    あんまり iOS 上での開発規約とか見かけないので、試しに私が今個人/会社で使っている開発規約を公開してみることにしました。 ■設計 設計は所謂 MVC と呼ばれる設計モデルを採用します。ただし、厳密な MVC というわけではなく、以下のような区分になっています。Model Core Data を使用します。通常 MVC での Model というと業務ロジック等を含めた業務モデル一般すべてを含むのですが、私の場合は特に Core Data の NSManagedObject を Model として扱い、 Model 単体のみで完結するロジックのみを Model に記述します。たとえば、Core Data から対象の Model とその関連 Model 取得Model の新規作成新規作成時、更新時に自動的に Model のプロパティを更新するModel のプロパティの値を元に幾何学計算をした

    iPhone 開発規約まとめ
  • 自分なりの iPhone アプリ開発手法とかこだわりとか書いてみた

    Twitter で vの人こと @voluntas さんに 無 茶 振 り されたので、自分なりのポリシーとかこだわりとか開発手法とかをまとめてみることにしました。今仕事iPhone アプリの開発を主にやっているので、 iPhone アプリに関する内容が多いですが、それ以外の開発でも使えると思います。 あまり技術的な内容やツールに関する内容はありません。それらは別エントリーにまとめようと思います。 ■大前提: 自分を知る まず何はなくともこっからです。なんだか開発とか全然関係ないじゃないか、怪しい自己啓発じゃねえかと思われるかもしれませんが、敵を知り己をを知れば百戦危うからずと昔のエライ人も言ってます。それにそもそも私がどのような人間なのかを理解しないと、せっかくの開発手法もそのまま真似してはうまく合わない・上手く回らない・賛成できないということになりますので、非常に大事だと思います。

  • 1