タグ

ブックマーク / dev.classmethod.jp (19)

  • [iOS] CocoaAsyncSocketでTCPトンネルを作成してみた | DevelopersIO

    1 はじめに CocoaAsyncSocketは、MacとiOSで動作する強力な非同期ソケットライブラリです。 Cocoapodで導入が可能であり、次のヘッダを追加することで利用できます。 pod 'CocoaAsyncSocket' Using Objective-C: // When using iOS 8+ frameworks @import CocoaAsyncSocket; // OR when not using frameworks, targeting iOS 7 or below #import "GCDAsyncSocket.h" // for TCP #import "GCDAsyncUdpSocket.h" // for UDP Using Swift: import CocoaAsyncSocket 今回は、このCocoaAsyncSocketを利用させて頂いて

    [iOS] CocoaAsyncSocketでTCPトンネルを作成してみた | DevelopersIO
    pluea
    pluea 2017/02/23
  • Visual Studio CodeでPythonの開発環境構築を構築してみた。 | DevelopersIO

    はじめに 好物はインフラとフロントエンドのかじわらゆたかです。 Pythonを開発するケースが出てきたので、O/S問わずに使えるVisual Studio Codeで環境を構築してみました。 目標としては、IntelliSenseが動くこと、Code Formatができること、Lintが動くこと、 pyenv環境のPythonが指定できること、Debugができること、 この辺りを調べてみたいと思います。 環境 OS : OSX El Capitan (10.11.4) Visual Studio Code : 1.5.2 Python : pyenv pyenv-virtualを用いてのバージョン切り替えを実施 参考: pyenv 利用のまとめ - Qiita 導入方法 導入の手順としては、以下のような流れになります。 PythonのVisual Studio Code拡張を導入する。 P

    Visual Studio CodeでPythonの開発環境構築を構築してみた。 | DevelopersIO
    pluea
    pluea 2016/10/06
  • 多段SSHをAnsibleで設定する | DevelopersIO

    渡辺です。 セキュリティを高めるなどの理由で対象インスタンスにEIPを付与しない場合、SSHは踏み台(Bastion)経由となります(参考: Amazon VPC環境にメンテナンス用の踏み台サーバを構築する)。 踏み台サーバのある構成でAnsibleを利用する場合、ansible.cnfのssh_connectionでssh_argsを設定しましょう。 ssh_configの準備 はじめにsshのconfigファイルを作成します。 これは、~/.ssh/configに設定するファイルの一部と考えて良いでしょう。 Ansibleのファイルと一緒にバージョン管理する方が良いと思うので、Ansibleのプロジェクトルートにおくことをおすすめします。 Host bastion HostName 52.52.xxx.xxx User ec2-user IdentityFile ~/.ssh/prd.

    多段SSHをAnsibleで設定する | DevelopersIO
  • tmuxを使いこなす / プラグイン開発で機能を拡張 | DevelopersIO

    はじめに こんにちは、中山です。 唐突ですがみなさんtmuxは使われていますか。そう、有名なターミナルの機能を拡張するツールですね。 この種のツールを使っていない方の中には、職場の先輩などに「ちょwターミナル開きすぎwブラクラかよw」などとドヤ顔で言われたことがある方もいらっしゃるのではないでしょうか。かく言う私もドヤ顔でこの種の発言を繰り返していました。 tmuxはデフォルトの機能がかなり豊富なのですが、tpmというプラグインマネージャを使うとさらに機能を拡張することができます。聞いたことがある方も多いのではないでしょうか。ググると検索結果に結構表示されますね。GitHubのtmux-pluginsというorganizationにはさまざまなプラグインがあります。便利なプラグインを紹介しているブログエントリも結構あります。 私はこのプラグインを今まで結構作ってきました。少しシェルスクリプ

    tmuxを使いこなす / プラグイン開発で機能を拡張 | DevelopersIO
    pluea
    pluea 2016/04/12
  • Android Studio の設定を共有する方法 | DevelopersIO

    設定ファイルのエクスポートとインポート PC が変わるたびに Android Studio の設定を 1 からやり直していませんか? この手順を踏めば、そのような面倒な作業とはもうおさらばです。 エクスポート インポート これだけです。 非常にお手軽なので、複数の PCAndroid Studio を使用している方は是非試してみてください。 プロジェクトチーム内でオートフォーマットの設定を共通化してもよさそうですね。 なお、エクスポートやインポートが行われるタイミングは上記の処理を行った時のみです。 設定を変更するたびに自動でエクスポートされたり、Android Studio 起動時に設定がインポートされるわけではないのでご注意ください。 リンク Exporting and Importing Settings ミレニアム・ファルコン製作日記 #2 2 号 表紙 パーツ 成果 今回の

    Android Studio の設定を共有する方法 | DevelopersIO
  • node.jsのいろいろなモジュール48 – CSV操作をする | DevelopersIO

    nodeでCSVの操作 CSVファイルをパースして処理する機会は今も昔も非常に多いと思います。 今回紹介するCSV.jsは、nodeで使用できるシンプルなCSVパーサです。 環境構築方法 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.9.3 Node : v0.10.26 サンプルアプリ作成 モジュールのインストール まずはモジュールをnpmでインストールしましょう。 % npm install comma-separated-values サンプル作成 モジュールの使い方は簡単です。 下記のようにモジュールを読み込んだ後、CSVオブジェクトにCSVデータを渡してparse関数を呼ぶだけでパースされたJSON形式のデータが取得できます。 var CSV = require("comma-separated-values"); var data = '\ year

    node.jsのいろいろなモジュール48 – CSV操作をする | DevelopersIO
  • [iOS 9] iOS 9 で追加された App Transport Security の概要 | DevelopersIO

    はじめに iOS 9 で追加された「App Transport Security」について調べてみましたのでご紹介します。 目次 App Transport Security とは App Transport Security の基動作 Info.plist に例外を設定 Info.plist の設定例 SSL/TLS 暗号スイート ログ出力について まとめ App Transport Security とは App Transport Security (以降、ATS と呼びます) は iOS 9.0 または OS X 10.11 以上で有効な機能であり、アプリとウェブサービスとの間のセキュアな接続のために利用できます。 ATS が有効の場合、HTTP での通信はできません。また、Apple が推奨する必要条件を満たさない接続は強制的に接続失敗扱いになります。例えば、Apple 推奨の

    [iOS 9] iOS 9 で追加された App Transport Security の概要 | DevelopersIO
    pluea
    pluea 2015/08/14
  • Android GridViewのパフォーマンスを上げよう(1/2) | DevelopersIO

    今回は大量のデータを表示したり、positionを指定してジャンプできるなど、何かと便利なクラスなGridVewのパフォーマンスを上げる方法を2回に渡って紹介します。 GridViewはListViewの兄弟分でAbsListViewの派生クラスになりますので、一列か複数行かの違いのみと思ってよいと思います。 仕組みとして、表示している領域の数分のVewだけを生成するという特性があります。 つまり、大量のデータが存在しても、描画にかかるコストは見えている領域のみとなります。 逆に言うとスクロールをしていて見えていない箇所を描画する際に新たに描画の為のロジックが走ることになるため、スムーズなスクロールが難しくなりがちです。 これはFlexを知っている方ならご存知かと思いますが、Flex4.5でいうListコンポーネント×ItemRendererと同じような仕組みになります。 ただその仕組みの

  • BotsでCI環境を作る1 – Xcode 5での操作 | DevelopersIO

    はじめに Xcode 5 から Bots という名前で CI (Continuous Integration) 機能が追加されました。CIといえば今まで Jenkins など Apple 以外のツールを使っていたケースも多いと思いますが、Apple 純正のツールが出てきた事で開発者にとっては気になる存在になると思います。 既存のツールを置き換えになるのか、又は併用できるのかも気になります。 まずは動作させるまでのセットアップをしてみます。 必要なもの Mac OS X Mavericks Mac OS X Server Xcode 5 Mac OS X Server 今回初めて触りましたが、使ったことある人は結構レアなんじゃないかと思ってます。 Mac OS X Serverという名前のOSかと思ってましたが、実際の形式はアプリケーションでした。Mac App Storeからイントール可能

    BotsでCI環境を作る1 – Xcode 5での操作 | DevelopersIO
    pluea
    pluea 2015/07/17
  • LINE DEVELOPER DAY_2015 Tokyo「LINE Platform Development Chronicle」レポート #linedevday | DevelopersIO

    LINE DEVELOPER DAY_2015 Tokyo「LINE Platform Development Chronicle」レポート #linedevday はじめに こんにちは、虎塚です。 今日は、LINE株式会社さんが開催されているイベントLINE DEVELOPER DAY_2015 Tokyoに来ています。 午前中のラストセッション「A-4: LINE Platform Development Chronicle」を聴講しましたので、レポートします。LINEのサーバサイドを開発されているTom Tsuruharaさんによる講演でした。 セッション概要「LINE Platformを支えるアーキテクチャ、組織、文化について、LINE歴史を振り返りながらお話します」とのとおり、充実したセッションでした。 以下、レポートです。 セッションレポート LINEの全体的なアーキテクチャ

    LINE DEVELOPER DAY_2015 Tokyo「LINE Platform Development Chronicle」レポート #linedevday | DevelopersIO
  • Androidコンポーネント初級編#4 : GridViewの使いかた | DevelopersIO

    はじめに 今回はGridViewの使いかたを解説したいと思います。 GridViewは、その名の通り要素をグリッドで表示するコンポーネントです。 今回は、テキストのみの簡単なGridViewと、GridViewを使った画像ギャラリーのサンプルを作成します。 GridViewの作りかた 1.ArrayListを作る これまで同様、まずはデータリストを作成します。 例ではString型のArrayListを作成しています。 2.ArrayAdapterを作る ここも前回と同様、ArrayAdapterを作成します。 例では、String型のArrayListを作成しています。 レイアウトは前回も使用したandroid.R.layout.simple_list_item_1を使っています。 3.GridViewにAdapterをセットする 最後に、GridViewのsetAdapter()メソッ

    Androidコンポーネント初級編#4 : GridViewの使いかた | DevelopersIO
  • [Cocos2d-x]Cocos2d-x Ver3.0 移行のススメ[iOS][Android] | DevelopersIO

    Cocos2d-x 3.0 FINALがリリース こんにちは!あらかわです。 前回Cocos2d-xについて書いた記事 がgunosyさんの夕刊に載せて頂けました。 世間のCocos2d-xに対する注目度の高さに私自身が驚きました。 ちょうど1週間前にVer3.0 FINAL(正式版)がリリースされたこともあり、今月はCocos2d-x Ver3.0に関する記事を何か書いていこうかと思います。 Ver3.0(FINAL)移行のススメ Cocos2d-x3.0rc2までは、仕様が頻繁に変更されていた事もあり、Newsに目を通していた程度だったのですが、やっと今回移行することに決めました。 Ver2.2.3から移行して数日使ってみた印象としては以下のような事があります。 ちょっと不便だった点 C++11になり、元々Objective-C(cocos2d for iphone)風に書けていたク

    [Cocos2d-x]Cocos2d-x Ver3.0 移行のススメ[iOS][Android] | DevelopersIO
    pluea
    pluea 2014/11/16
  • [iOSアプリ開発] いまさら聞けないモダンな書き方 | DevelopersIO

    Xcode 4.4 から Objective-C が書きやすくなりました、という今更のいまさらな話ですが、ネット上に転がっている少し前のサンプルソースなどは古い書き方のものもあるようなので、今回はよく使う NSArray と NSDictionary と NSNumber の書き方についてだけ備忘録として残しておこうと思います。 NSArray インスタンスの生成 // 古い書き方 NSArray *oldArr = [NSArray arrayWithObjects:@"value1", @"value2", @"value3", nil]; NSMutableArray *oldMutableArr = [NSMutableArray arrayWithObjects:@"value4", @"value5", @"value6", nil]; // 新しい書き方 NSArray *n

  • [iOS 7] アプリ開発入門 1からはじめるiOS7 – StoryBoardで画面遷移 | DevelopersIO

    画面遷移を実装する 複数の画面で構成するアプリケーションの場合は、当然画面遷移が必要です。 今回は、Storyboardを利用して親画面から子画面へ遷移する実装を行います。 目標 親画面のボタンをタップすると子画面へ遷移させます 実装 Viewの中にボタンが一つだけ配置されています 配置されているView Controllerの隣にView Controllerを追加します はじめの画面のボタンをCtrl を押しながらドラッグし、先ほど追加したView Controllerに接続させます ダイアログが表示されるのpushを選択します Actionが設定されました これでよい気がするので、実行してみます エラー! ボタンを押した瞬間にアプリケーションが停止してしまいました。 2013-09-09 12:09:47.137 Hello Story Board[1088:60b] *** Ter

    [iOS 7] アプリ開発入門 1からはじめるiOS7 – StoryBoardで画面遷移 | DevelopersIO
  • [iOS 7] アプリ開発入門 1からはじめるiOS 7 – はじめてのXcode 5 | DevelopersIO

    導入 前回で開発環境を構築までを行いました。 今回はXcode5の機能を見てみます。プロジェクトを作成しながら、最低限どのような機能があるのかを俯瞰してみます。今回もXcode初心者向けの内容となります。 機能 プロジェクトの選択ダイアログ Xcodeを起動すると以下の様なダイアログが表示されます 緑色のセクションが【新たなプロジェクト】を作成するためのメニューになるようです。完全に1から自分で作るか、gitやSVNのリポジトリからソースコードをチェックアウトし、自分の環境に新たなプロジェクトとして作成するかを選べるようです。 赤色のセクションは、【以前開いたプロジェクトの履歴一覧】となります。ここから選ぶと既存の編集途中のプロジェクトを開いて、ソースコードの編集が可能になるようです プロジェクト作成 前のダイアログでCreate a new Xcode projectを選択します。 様々

    [iOS 7] アプリ開発入門 1からはじめるiOS 7 – はじめてのXcode 5 | DevelopersIO
    pluea
    pluea 2014/05/07
  • Android Tips #26 Google Maps Android API v2 のマーカーをカスタマイズする | DevelopersIO

    はじめに 前回の記事でご紹介したマーカーのカスタマイズ方法について、もう少し詳細に解説してみたいと思います。以下のようなマーカーを作ることができます! マーカーを追加するには マップ上にマーカーを追加するには GoogleMap#addMarker() メソッドを使います。引数には MarkerOption クラスのインスタンスを渡し、 MarkerOption でマーカーのタイトルやスニペットなどを設定します。 // マーカーを貼る緯度・経度 LatLng location = new LatLng(35.697261, 139.774728); // マーカーの設定 MarkerOptions options = new MarkerOptions(); options.position(location); options.title("クラスメソッド株式会社"); options.

    Android Tips #26 Google Maps Android API v2 のマーカーをカスタマイズする | DevelopersIO
  • Node.jsアプリ開発で参考になる記事 まとめ | DevelopersIO

    最近は弊社のブログにもNode.js関連の記事が増えてきました。私も勉強中なのですが、社内ブログを参考にさせてもらうことがよくあります。 毎回探すのもちょっと面倒なのでClassmethid.dev()内のNode.js関連の記事をジャンルごとにまとめてみました。 1年以上前の記事もあり、情報が古い可能性があるので注意して下さい。今後も新しい記事が追加されたら更新していこうと思います。 メール送信 node.jsのいろいろなモジュール3 - Nodemailer node.js上から簡単にメールの送信ができるモジュールの記事です。 ファイル関連 node.jsのいろいろなモジュール1 - node-gzip node.js上で簡単にgzip圧縮ができるモジュールの記事です。 node.jsのいろいろなモジュール4 - Node Basic FFmpeg ffmpegという動画と音声を変換す

    Node.jsアプリ開発で参考になる記事 まとめ | DevelopersIO
  • Sublime Text 2の基本とカスタマイズ【Vim風】

    2012年12月4日:Vim化について指摘と参考になる情報をいただいたので追記しました。 こんにちは、僕はVimユーザーです(ちなみにVimを完璧に使いこなしているわけではありません)。 今更ながら「Sublime Text 2」というナウでヤングなエディタも使いこなせるようになりたいと思い、Sublime Textの基設定からプラグインやスニペットの作り方まで調べた内容をこの記事にまとめることにしました。 細かい情報までまとめることはできなかったので、より詳しい内容を紹介してくださっているブログやサイトへのリンクを設けています。 この情報以外にもSublime Text 2をVimに近づけるプラグインやカスタマイズ方法があればコメントいただけるとうれしいです。 また、間違いがあればコメントいただければすぐに直します。よろしくお願いします! Sublime Text 2は有料($59)の

  • HTML5 × CSS3 × jQueryを真面目に勉強 – #8 jQueryプラグインの作り方について詳しく | DevelopersIO

    僕は人の名前を覚えるのが苦手です。それはさておき、jQueryプラグインの作成方法について頻繁に忘れるので、手順をここにまとめておくことにします。コレさえ読めば急にプラグインを大量に作れといった無茶ぶりをされても大丈夫。 多い日も安心♪(ゝω・)vキャピ はじめに - jQuery プラグインの構成 細かい差はあれど、基的にjQueryプラグインは以下のような構成で成り立っています。 // 匿名関数で全体をラップ - (5) (function($) { // このプラグインの名前 - (1) $.fn.name_space = function() { //要素を退避 - (2) var elements = this; // 要素をひとつずつ処理 - (3) elements.each(function() { // 具体的な処理をここに記述 }); // method chain

  • 1