Java8日付API

WEB+DB vol.97 2017の「Java 8で直感的な日付/時間操作」という記事を参考にJava8日付APIを触ってみました。 Java8のDate and Time APIはJoda-Timeに基づいて作られた新しいAPIです。従来のDataやCalendarよりも簡単に日付操作をすることができます。 農業…

Xcode8でコメント作成

Xcode8では、option + command + /で関数のコメントのひな形をを作成してくれます。便利。 リンク Xcode8 でのドキュメントコメント(関数コメント)の付け方について - Qiita

UILabelのタップイベントを処理する

UILabelのタップイベントを処理して、ラベルに表示する値をアラートダイアログで入力する方法です。 UIラベルのisUserInteractionEnabledをtrueにして、touchesEndedで処理します。 class ViewController: UIViewController { let timerLabelTag = 10 @IBOut…

Excelを使って簡単にINSERT文を作る方法

今参加しているプロジェクトでは、データを挿入してテストすることがあるので、メモしておきます。 やっぱり、一つ一つInsert文を作成するより楽ですね。 リンク Excelを使って簡単にINSERT文を作る方法

swiftで変数に値が入っているかどうかチェックする

swiftでoptional変数に値が入っている(nilでない)ことをチェックする場合には、以下のようにします。 func isValid(value: String?) -> Bool if let _ = 何かの値 { return true } return false } _のところに変数にするとXcodeがワーニング(未使用変数)を出…

iOS GameplayKitを使って見ました

@ITに、「iOS GameplayKitの「Agents, Goals, and Behaviors」で作る、鬼ごっごの鬼AI」という面白そうな記事がありましたので、試してみました。 GameplayKitを初めて使いましたが、簡単に使えるという印象を持ちました。 この連載には、AI的な要素もありそ…

NotificationCenterを使ってみました

はじめに iOSアプリで、ある画面で処理したタイミングで別画面の表示を更新したいことがあります。 このような場合には、Observerデザインパターンが有効です。 Observerパターンは、Listenerパターンとも呼ばれます。 Java言語の場合にはListenerをインタフ…

ホワイトハッカー入門(3)

引き続き、Kali Linuxの環境設定を行います。 なかなか肝心な部分に進めません。 ディスクにスペースがあれば、Virtual Boxのクローンを作成すると良いと思います。 shの変更 ディレクトリを日本語から英語に変更 日本語入力 shの変更 rootのshellが/bin/sh…

ホワイトハッカー入門(2)

引き続き、Kali Linuxのインストールを続けます。 Virtual Boxでは、ホスト機とのコピペやディレクトリを共有するために、additional toolsをインストールする必要があります。 特に、インストールが完了するまで、ホスト機とのコピペは必須です。事前にイン…

ホワイトハッカー入門(1)

サイバーセキュリティテスト完全ガイド ~Kali Linuxによるペネトレーションテスト~ を参考にしながら、ホワイトハッカーを目指します。 環境は、Mac OS X Sierraですが、書籍はWIndows環境を推奨していますので、途中からWindowsに変わるかもしれません。 ま…

■TouchID認証を使ってみました

TouchID認証を使ってみました サンプルアプリ 認証ボタンのみを持つアプリとして作成しました。 起動時 利用可能かどうかチェックします。 LAContext.canEvaluatePolicyを呼び出します。このメソッドは、true/falseを返します。falseの場合、error.localized…

SRACOM APIを使って見ました

概要 Software Design 5月号に付録として付いていました、SORACOM SIMを使ったAPIを試してみました。 維持費用の安いSIMカードとしても使えますが、特長の一つにAPIによるSIMカード操作があります。SIMカードを付けたIoTを状況に応じて操作することができる…

【swift】playgroundでユーザーインタラクション

概要 Xcode7.3から、playgroundでユーザーインタラクションがつかるようになりました。 Xcode Release Notes, Xcode7.3のPlaygroundはついにインタラクションに対応! - Qiita UISliderをつかって新しい機能を試してみました。 UISliderをplaygroundで使って…

【swift】Xcodeデバッガ入門

概要 Xcodeデバッガの使い方をまとめました。 デバッガはアプリの不具合の改修に役立ちます。多くの場合、1)ブレイクポイント設定、2)変数の値確認で不具合を改修することができますが、Xcodeが持っている便利な機能を使うとデバッグが捗ります。 Xcodeデバ…

【swift】Xcodeで値変更

概要 アプリ開発において、デバッガで変数の値を変更することはよく行われます。Xcodeで変数の値を変更する方法を調べました。 MacOS X 10.11.4 YosemiteとXcode7.3の環境で実行しました。 コマンドラインアプリを作成します OSX向けのHelloCommandlineとい…

【swift】2.2の変更点(2)

概要 リリースノートをベースに【swift】2.2の変更点を作成しましたが、わかりやすい記事があったので、こちらも紹介します。 ++ and -- are deprecated ++、--記法が非奨励になりました。swift 3.0ではエラーになります。 var i = 0 // 非奨励 i++ // 今後…

【swift】日付時間処理

概要 swiftで日付時刻の処理を行う場合には、NSDate、NSCalendarクラスを使います。 NSDate, NSDateFormatterを使う方法 書式を使って時間を取得します 日付時刻の書式については、 ここを参照してください。 // 現在時間を取得 let now = NSDate() let form…

【swift】2.2の変更点

概要 Swift 2.2がリリースされました。オープンソース化後の最初のアップデートですね。 Xcode 7.3 on Mac OSX Yosemite 10.11.4で(一部)確認しました。 予約後の一部が引き数名として使えるようになりました SE-0001: Allow (most) keywords as argument la…

【Java】Apache POIを使ったExcelファイル操作

ダウンロード Apache POIプロジェクトサイトから、poi-bin-3.13-20150929.zipをダウンロードする。解凍後、必要なjarファイルをプロジェクトに追加する。 poi-3.13-20150929.jar poi-ooxml-3.13-20150929.jar poi-ooxml-schemas-3.13-20150929.jar xmlbeans-…

【HTTP】日本語ファイル名でダウンロード

概要 ファイルをダウンロードする場合、HTTPヘッダにファイル名を設定します。 Content-Disposition: attachment; filename=ファイル名 日本語ファイル名にするためには、ファイル名の文字コードとURLエンコードが必要です。 Content-Disposition: attachmen…

【Windows】IPアドレスからホスト名を取得する

概要 Windows OSでは、以下のコマンドでIPアドレスからホスト名を取得することができます。 nbtstat -A IPアドレス 関連情報 WindowsでIPアドレスからホスト名を見つける方法

javascript関連情報まとめ

概要 javascript関連の情報をまとめ中です。 関連情報 javascript Javascript言語の情報は、MDNが一番まとまっていると思います。 JavaScript | MDN JavaScript入門 - @IT チュートリアルは、いろいろとあるのでよさそうなものを試すのが良い。 初心者のた…

【wordpress】プラグインのクラス化

概要 wordpressのプラグインをクラス化する場合に必要な情報です。 プラグインのクラス化 コンストラクタでhookを登録し、処理を実装します。 class XXX_Plugin { // hookを登録します public function __construct() { } } new XXX_Plugin(); action hookへ…

Windows 10/VirtualBox/Vagrantでvagrant upに失敗する件

概要 昨年(2015)夏に、Windows10にアップデートして以来、ずっとvagrant upできずにいましたが、以下の記事の方法でやっとできるようになりました。感謝です。 Pocket: Windows 10 + VirtualBox 5.0 + Vagrant 1.7.4 + VCCW 2.18.0 でのエラー回避 詳細 Virt…

【wordpress】検証環境構築方法

概要 本番環境のデータを使ってwordpress検証環境を作成してみました。 本環境と同じホストに検証環境を作成する場合、DB設定を間違えるとたいへんな事故(データの紛失)が起こる可能性があります。くれぐれもご注意ください。 最初は、ローカル環境で試し…

wordpress:ユーザー一覧取得

ユーザー一覧取得 検索条件を配列にセットして、検索を実行します。 $args = array ( 'role' => 'reporter', 'order' => 'ASC', 'orderby' => 'display_name', 'meta_query' => array( 'relation' => 'AND', array( 'key' => 'キー名', 'value' => 値, 'comp…

メールサーバーのSPF登録しました

概要 gmailアドレス宛に送信したメールがスパムメールになりやすいということで、SPFレコードを登録しました。 SPFとは SPF (Sender Policy Framework)とは、 電子メールの送信元ドメインが詐称されていないかを検査するための仕組みのようです。 日本ネット…

SSL証明書の整合性チェック

秘密鍵とSSL証明書の整合性エラー SSL証明書をインストールする場合、サーバー証明書と秘密鍵が合わない場合、以下のエラーメッセージが出力されます。注)ここでは、メールサーバーはpostfix/dovecotで構築しています。 SSL証明書と秘密鍵を設定します。 # …

Tensor flow:reactivekk社のデモを動かしてみました

概要 前回は、GoogleのTensorflowを試してみました。今回は、はじめてのテンサーフローワークショップに参加しました - Qiitaテンサーフローワークショップの題材となった、reactivekk社が公開しているデモを動かしてみました。ipython notebookを使って、結…

swift:SafariWebViewControllerを使ってみました

概要 iOS 9: Getting Started With SFSafariViewController - Envato Tuts+ Code Tutorialを参考に、SafariViewControllerを使ってみました。SafariViewControllerは、iOS9で導入されたUIコントロールです。WebViewより簡単にアプリの中に、しかもSafariの全…

TensorFlowのチュートリアルを試してみました

概要 TensorFlowは、Googleがオープンソースで公開している機械学習環境です。DeepLearning - ディープラーニングの有名ライブラリ5種を最短距離で試す半日コース(TensorFlow, Chainer, Caffe, DeepDream, 画風変換) - Qiitaを参考に、チュートリアルを試…

swift:正規表現を使って文字検索してみました

概要 正規表現を使って文字検索してみました。 いろいろな方法があると思いますが、Stringクラスのextensionを使うのが簡単そうです。NSRegularExpression Class Referenceはわかりにくいですね。 iOS - Swift2.0で正規表現を簡単に扱う。 - Qiitaがわかりや…

Swift言語:Dropbox APIを使ってみました

概要 Developers - Dropboxを参考にDropbox APIを使ってみました。 公式サイトのInstallに書かれているPodfileでインストールされる、SwiftyDropbox (2.0.3)/Alamofire(3.14)のバージョンではデータ取得に失敗します。 SwiftyDropboxでDropboxの簡単なファイ…

ディープラーニング入門:DeepBeliefSDKを使ってみました

概要 ディープラーニング入門~DeepBeliefSDKを使う~ - Intelligent Technology's Technical Blogで紹介されていたDeepBeliefSDKを使ってみました。 DeepLearningを使った画像認識の背景を知りたい場合には、 Deep Learningと画像認識 ~歴史・理論・実践~…

swift:OpenCVをみ使って見ました

概要 Swift + OpenCVでリアルタイムに顔認識してみた1 - Give it a shot Swift + OpenCVでリアルタイムに顔認識してみた2 - Give it a shot を参考(というかソースコードそのまま)に、OpenCVを使ってみました。 開発環境: Xcode7.2(Swift 2.1)、 動作環境…

swift:CIDetectorを使ってみました

概要 CoreImage Libraryを使うと顔認識ができます。以下を参考にして、CIDetectorを使った顔認識をしてみました。 SwiftとCIDetectorで効率よくアイドルの写真にヒゲを書き加える方法 [Swift] CIFaceFeatureで顔を検出してマスクをつけてみた 結果 顔のおお…

swift言語:Reflection APIを使ってみました

概要 swiftに含まれているReflection APIについて、The Swift Reflection API and what you can do with itを参考に、調べました。 ソースのコメントを見ると、PlaygroundやDebuggerなどで使うことが目的のようです。 $ cat ./stdlib/public/core/Mirror.swi…

swift: UIRefreshControlを使ってみました

概要 画面を下に引っ張ってデータを更新する用UI部品、UIRefreshControlを使ってみました。UIRefreshControl Class Referenceでは、以下のような説明になっています。 UIRefreshControlは、Table Viewのコンテンツを更新するために使う標準コントロールを提…

iPhoneの画面キャプチャをMacOSXで行う方法

概要 MacOSX(Yosemite)を使うとLightning ポートを装備した、iOS8以降のiOSデバイス(iPhone, iPad, iPod touch)の画面を録画できます。 手順 iOSデバイスを接続します Lightning ポート経由でiOS8以降のiOSデバイスとMacOSX(Yosemite)を接続します。 QuickTi…

【書籍】iPhoneアプリ開発「超」入門について

概要 絶対に挫折しない iPhoneアプリ開発「超」入門 増補改訂第4版【Swift 2 & iOS 9】完全対応は、プログラミング初心者向けiPhoneアプリ開発入門書として人気のある書籍です。swift言語に対応しています。 iOSアプリ開発を行うためには、3種類の知識、1)言…

swift言語: AVFoundationを使ってQRCodeReaderを作成してみました

概要 QRCode Reader Using Swift Tutorialを参考に、AVFoundationを使ってQRCodeReaderを作成してみました。 QRコード読取処理のライブラリ化を行いながら、AV Foundationについてもう少し調べていく予定です。 AV Foundation AVFoundationは、時間ベースの…

swift:QRCodeReaderアプリを作ってみました

概要 yannickl/QRCodeReader.swiftライブラリを使ってQRCodeReaderアプリを作ってみました。 今回使ったライブラリは、QRコードを読み取った後ハングしているようでした。何か処理を追加する必要があるかもしれません。今後使うかどうかは、もう少し使ってか…

Swift言語:String

概要 The Swift Programming Language (Swift 2.1): Strings and Charactersを参照して、Swiftの文字列処理について調べました。 articles of samekard: Swift 2.0でStringはどうなったか - 特殊文字などの扱いもとても参考になりました。 文字列処理 String…

swift言語:closure

概要 The Swift Programming Language (Swift 2.1): ClosuresでClosureについて調べました。 以下は、 The Swift Programming Language (Swift 2.1): ClosuresのClosureに関する概要を超訳した内容です。 Closures are self-contained blocks of functionali…

MacOSXのバックアップ領域について

概要 Mac Book Proのハードディスク空き容量が少なくなってきたので外付けHDDにデータを移行しました。が、ストレージ容量を見るとバックアップ領域が増えており肝心の空き容量が増えていませんでした。このバックアップ領域について調べました。 Mac Book P…

Microsoft Visual CodeでGolangデバッグを試してみました

概要 仮想環境にUbuntu14.04をインストールしたので、ついでにMicrosoft Visual CodeでGolang言語のデバッグを試してみました。 Microsoft/vscode-goを参考にしました。golfingのデバッグはdelveを使っています。Linux環境ではインストールが簡単ですが、Mac…

CLion 1.5 EAPを使ってみました

概要 CLionは、IntelliJが提供しているC言語開発用IDEです。マルチプラットフォーム(Linux/MacOSX/Windows)で動作します。CLionは有料の製品ですが、EAP(Early Access Program)は無償で使うことができます。CLion 1.5 EAPにswift用プラグインが入ったような…

swift: Package Managerを試してみました

概要 Linux版Swiftを動かす方法は2つあります。1つは、Dockerイメージを使う方法です( Dockerイメージでswiftを動かしてみました)(もう一つは、Vagrantを使う方法です。Introduction to Open Source Swift on Linux)。今回は、Vagrantを使う方法を試してみま…

OpenSource版swiftでLLDB Debuggerを使ってみました

概要 ここを参考にして、OpenSource版swiftでLLDB Debuggerを使ってみました。GDB風のソースデバッグが可能です。 OSは、Ubuntu14.04です。 $ swift -version Swift version 2.2-dev (LLVM 46be9ff861, Clang 4deb154edc, Swift 778f82939c) Target: x86_64-…

swift: HTTP通信フレームワークAlamofireを使ってみました

概要 HTTP通信フレームワークであるAlamofireを使ってみました。 Alamofireの記事はたくさんヒットしますが、バージョンアップ(3.0)に伴いAPI仕様が変わっています。できるだけ、開発サイト(Github)Alamofire/Alamofireを参照した方が良いです。 セットアッ…