タグ

ブックマーク / atmarkit.itmedia.co.jp (206)

  • Excelで次々とQRコードを作成する方法

    スマートフォンで自社のWebサイトを開いてもらうために、カタログやポスターにURLを埋め込んだQRコードを載せることも多いだろう。QRコードが作成できる無料のWebサービスなどもあり、こうしたサービスを使って自社のURLを埋め込んだQRコードを作成している人も多いのではないだろうか。 ただ、キャンペーンなど、特定日まで外部に知られたくない情報の場合、Webサービスを利用することに不安を感じることもあるだろう。また、店舗ごとに個別のQRコードを作成したいような場合、少々手間がかかる。 そのような場合、「Microsoft Excel(エクセル)」のQRコード作成機能を利用すると、外部にデータが流出することなく、一覧表から比較的簡単にQRコードを次々と作成できる。その方法を紹介しよう。 【事前準備】リボンに[開発]タブを追加する QRコードの作成は、[開発]タブにあるActiveXコントロール

    Excelで次々とQRコードを作成する方法
  • AndroidでSQLiteのDB操作をするための基礎知識

    県庁所在地は各都道府県に必ず1つだけ存在するので、プライマリキーを設定しています。郷土料理はいくつ存在するか分からないため、プライマリキーはありません。この2つのテーブルは都道府県でリレーションしています。 なお、郷土料理が登録されていない県がありますが、あしからずご了承ください。 Androidのデータベースを作成するには? スキーマが決まったら、データベースを作成します。 データベースの作成方法はいろいろありますが、今回は「SQLiteOpenHelper」というクラスを利用します。このクラスは、abstract(抽象)クラスなので、以下のコールバックを実装する必要があります。 public void onCreate(SQLiteDatabase db) データベースを作成したタイミングで呼び出される。通常はここでテーブルを作成する。今回はデータもこのタイミングで追加している pub

    AndroidでSQLiteのDB操作をするための基礎知識
    larker
    larker 2021/11/19
    トランザクション、ロールバック
  • Androidのプロセス間通信を自由自在にするAIDL

    前回の「Android 4.0のサービス/プロセス間通信の基」ではAIDLを使用した「サービス」の基を解説しました。サービスのライフサイクル、AIDL、Parcel、Parcelableに関しては、前回の記事を参照してください。 今回の記事で解説するサンプルアプリは、前回と同じものを使用します。以下よりダウンロードしておいてください。 なぜ「プロセス間通信」なのか? Androidの「サービス」は、バックグラウンドで処理を行いたい場合やバックグラウンドに常駐させたい場合に使用するケースがほとんどです。そのバックグラウンドの処理がアプリ固有であれば、同一プロセスで行い、プロセス間通信を行う必要はありません。 つまり、「複数のアプリから使用される可能性のある処理を独立したプロセスとして切り離し、それぞれのアプリから使用できるようにサービス化しておくこと、そのサービスを利用すること」がプロセ

    Androidのプロセス間通信を自由自在にするAIDL
  • SeleniumのUIテスト自動化をiOS/AndroidにもたらすAppiumの基礎知識とインストール方法、基本的な使い方

    Appiumの主な特徴は以下の通りです。 Android 2.3.3以降、iOS 6.0以降に対応している Webブラウザーを使ったテストの自動化で広く利用されているSelenium WebDriver(「Selenium 2」とも呼ばれます)と、ほぼ同じ書き方でスマートフォンアプリのテストスクリプトを書くことができる RubyPythonJavaをはじめとした、さまざまなプログラミング言語でテストスクリプトを書くことができる Webアプリの自動テストにSelenium WebDriverを利用しているテストエンジニアが、少ない学習コストで、AndroidやiOSのアプリの自動テストにも着手できる、という点がAppiumを採用するメリットといえます。 Appiumは、バージョン1.0を境に、テストスクリプトの書き方(API仕様)が大きく変更されています。 そのため、バージョン1.0未満

    SeleniumのUIテスト自動化をiOS/AndroidにもたらすAppiumの基礎知識とインストール方法、基本的な使い方
  • プロトタイプは画面や機能ごとに作ってはいけない

    ※ユーザー調査法は下記のように、大きく2つに分類される。両者の違いは、次回説明する。 ニーズ探索型:ユーザー調査、行動調査、フォーカスグループインタビュー 仮説評価型:ユーザーテスト、ABテスト、アンケート プロトタイプ 今回は、この中からプロトタイプを取り上げる。プロトタイプとは、一般的には「評価、改良を目的にプロダクトの模型を作ること」である。この連載での改良の対象は当然、プロダクトのUI(ユーザーインタフェース)やUX(ユーザーエクスペリエンス)が中心ではあるが、技術仮説の模型もプロトタイプと呼ばれる。 画面やインタラクションを丸ごとプロトタイピングしない UI開発にプロトタイピングが有効であることはよく知られているためか、下記のようなゆるっとした進め方により、結果プロトタイプ開発に工数をかけ過ぎてしまうことがある。 目的を定めずに、漫然と「決めた仕様に基づく使い勝手を確かめるため」

    プロトタイプは画面や機能ごとに作ってはいけない
    larker
    larker 2018/06/21
  • Javaでの常識が通用しないAndroidにおけるメモリ管理の注意点

    連載「実業務でちゃんと使えるAndroidアプリ開発入門」では、バージョンの違いに左右されないスタンダードなアーキテクチャで、セキュリティやパーミッション、テストのしやすさ、開発効率の向上などを考慮した、実業務で使えるAndroidアプリ開発のノウハウを提供していきます。前回の「知らずに作って大丈夫?Androidの基的なライフサイクルイベント31選」では、Androidアプリ開発において必ず押さえておかなければならないライフサイクルイベントについて解説しました。今回は、Androidアプリのメモリ管理に関する注意事項に関して解説します。 Javaでは「常識」とされる挙動が、Androidではそうはいかない場合があります。Javaとは異なる設計思想により、Javaのような動作を期待すると思わぬバグとなる可能性があるのです。Androidの設計思想とはどのようなものか。それによってJav

    Javaでの常識が通用しないAndroidにおけるメモリ管理の注意点
  • コードリーディングを始めよう ― @IT

    優れたプログラマはコードを書くのと同じくらい、コードを読みこなせなくてはならない。優れたコードを読むことで、自身のスキルも上達するのだ(編集部) Ruby on RailsRails)には、scaffoldという大変便利な機能が付いています。scaffoldを使えば、アプリケーションの実行に必要なデータベースのスキーマの準備から、データベースにアクセスするコード、画面周りのコードまで、一通り自動生成してくれます。 そのおかげもあって、多くの開発者がscaffoldを使ったRailsのアプリケーションを試しに作ったことでしょう。ただし、scaffoldはあくまで土台であって、その後は、生成されたコードを拡張していく必要があります。 連載ではコードリーディングという形で、オープンソースとして公開されているRailsアプリケーションのソースコードを題材に使って、その動きや機能がどのように実装

    コードリーディングを始めよう ― @IT
  • JAX-RSを活用して、JavaクラスをWebサービス化しよう

    JAX-RSはもともとRESTアーキテクチャなWebアプリを作成するための仕様だが、これを利用すると、普通のJavaクラスにアノテーションを付けるだけでWebサービスとして公開できるようになる。この記事では単純なJavaクラスを作成し、それをJAX-RSを利用してWebサービスとして公開するまでを示す。 なお、JAX-RS自体はJava EEの仕様のため、Java SEで利用可能なフレームワークはサードパーティによって提供される。記事ではjava.netで公開されているJerseyを利用する。インストール手順などは記事内で説明する。 JAX-RSを利用したWebサービスがどのように動作しているかは最後で解説するものとして、ここではJAX-RSを利用すると、普通のJavaクラスをWebサービス化するのがどれほど簡単かに注目いただきたい。 JAX-RSの意義 全てのソフトウェアをサービスとし

    JAX-RSを活用して、JavaクラスをWebサービス化しよう
  • Strutsを使い続けることの問題点&現在有力なJava EE、Spring、Play Frameworkの基礎知識とアーキテクチャ

    エンタープライズJava開発に従事している方であれば、一度はStruts 1を扱ったことがあるでしょう。Struts 1はJavaのWebアプリケーションフレームワークとして2001年ごろに誕生しました。 MVCモデルに基づいたアーキテクチャと高い生産性から、数年後にはデファクトスタンダードとなるほどの人気を獲得。当時、多くの企業がこぞってStruts 1を使った企業システムを構築しました。筆者自身が業界に入ったのは2004年のこと。最初に参加したプロジェクトがStruts 1を使った企業システムの構築だったことをよく覚えています。 当時に作られたシステムの多くは、今でも現役で稼働しています。最近でもStruts 1ベースの企業システムを改修する話はよく聞きます。しかし、2013年にサポート終了を迎えたため、今後Struts 1を使い続けることは大きなリスクになりました(参考)。つまり、新

    Strutsを使い続けることの問題点&現在有力なJava EE、Spring、Play Frameworkの基礎知識とアーキテクチャ
  • ウェアラブル時代に見直したいAndroidの加速度/重力センサー、ジャイロスコープ

    この表にはTYPE_GAME_ROTATION_VECTORなどの、他のセンサーと同一でタイプのみ異なるものは含んでいないので、注意してください。全てのセンサータイプが知りたい場合はSensorのJavadocを参照してください。 センサーの概要や挙動、仕様に関しては、以下のドキュメントに目を通しておくことをお勧めします。 Sensor Overview | Android Developers(センサーの概要) SensorEvent | Android Developers(SenserEventのJavadoc) Motion Sensors |Android Developers(センサーの詳細な説明) 特に、センサーが通知してくる値の意味に関する説明がJavadocと詳細説明に詳しく解説されているので、目を通しておくとよいでしょう。 今回のサンプルアプリ さて、今回のサンプルアプ

    ウェアラブル時代に見直したいAndroidの加速度/重力センサー、ジャイロスコープ
  • 第1回 IPv6の概要

    IPv4アドレスが枯渇し、今後はIPv6を使わざるを得なくなる!? 今からでも遅くない、Windows管理者のためのIPv6入門連載開始。 連載目次 IPv4アドレスの不足や枯渇などにより、最近にわかにIPv6に対する注目が集まっている。ただしTVの地デジ化などと違い、IPv4アドレスが枯渇したからといって、すぐに明日からインターネットが利用できなくなるわけではないので、まだIPv6を導入していない組織も多いだろう。現在すでにインターネットを利用している組織なら、そのまま現状のIPv4アドレスを使い続けていけばよい。 だがそれでも、そろそろIPv6導入の検討や準備などを始めておく必要はあるだろう。なぜならIPv4アドレスが枯渇した結果、そのうちIPv4アドレスの新規割り当てが受けられなくなるからだ。今後、例えば新しいネット・サービスを始めたり、新しいドメインなどを取得してサーバを設置したり

    第1回 IPv6の概要
  • CentOS 7のシステム管理「systemd」をイチから理解する

    CentOS 7のシステム管理「systemd」をイチから理解する:CentOS 7で始める最新Linux管理入門(2)(1/4 ページ) 「systemd」は、Linuxの起動処理やシステム管理を行う仕組みです。systemdはinitの限界を克服するために作られた新しいシステム管理アーキテクチャで、CentOS 7でも用います。では、何が違うのでしょう。これまで使われてきた「init」と比較しながら、基礎と課題を解説します。 連載バックナンバー 前回解説した「ここが変わった、CentOS 7のポイント」に続き、今回はより実務にLinuxの起動処理やシステム管理を行う「systemd」をあらためてイチから解説します。 CentOS 7では、これまで使われてきた「init」の限界を克服するために作られた新しいシステム管理アーキテクチャとして、このsystemdを使います。 まずはその特徴を

    CentOS 7のシステム管理「systemd」をイチから理解する
  • 位置情報を取得する仕組み

    可能性の広がる位置推定技術。ケータイやカーナビ、モバイル端末での位置推定の仕組みを、具体的な製品や実装方法を交えて説明 位置情報の利用の広がり GPSを搭載した携帯電話の普及などによって、位置情報は単に道案内として利用されるだけではなく、位置情報に関連付けられた天気・お店などさまざまな情報が得られるようになってきました。 また、近年の無線通信技術の進歩によって、大量の情報がどこでも得られるような環境も整ってきています。これに合わせて、いままで携帯電話などを中心に利用されてきた位置情報が、PCにも広がりを見せています。 例えば、2009年1月の時点では、位置情報を取得する機能を搭載したノートPCが登場しているほか、Windows 7のベータ版には、位置情報に関する項目が標準で追加されています。 連載では、可能性が広がりつつある位置情報に関する技術について、具体的な実装方法を交えて紹介してい

    位置情報を取得する仕組み
  • 細か過ぎて伝わってないけど開発者が知っておきたいAndroid Mの新機能まとめ

    連載目次 2015年5月28日、29日に開催されたGoogle I/O 2015は、Androidに関するさまざまな発表がありました。基調講演のまとめは『Google I/O 2015の基調講演まとめ 「Android Pay」やGoProのVRカメラなど盛りだくさん』を参照してください。 次期Androidのプレビューバージョンである「Android Mのエンドユーザー向け新機能のまとめは下記を参照してください。 Google、新OS「Android M」を発表――Android Payや指紋認証をサポート - ITmedia Mobile Google、新モバイル決済「Android Pay」発表 - ITmedia ニュース 稿では、開発者向けの新機能を公式サイト内の情報を基に、必要と思われる情報を付加し機能ごとに分類して紹介します。 なお、Androidの現行バージョンであるAn

    細か過ぎて伝わってないけど開発者が知っておきたいAndroid Mの新機能まとめ
  • ダウンロードファイルが真正なものであるかを確認

    今回は、ビルドに必要なソースコードのファイルを入手して、それが真正なものであるかどうかを調べる方法を解説します(編集部) 試しに小さなソフトウェアから始めよう ビルドに関する用語や基礎知識は、前回まででおおよその部分をカバーできました。これからは、実際のフリーソフトウェアやオープンソースソフトウェア(以下FOSS)を入手し、ビルドしながら解説を進めていきたいと思います。最初に取り上げるFOSSは、GNU Helloです。 GNU Helloは、実は「Hello, world!」と表示するだけのソフトウェアです。現在のバージョンは2.7で、つい最近もバージョンアップがありました。持っている機能はこれまで取り上げてきた、たった数行のコード例と同じです。そういうものにバージョンまで付けてリリースしている人たちがいるなんて不思議な感じがしますが、もちろんこれにはちゃんとした理由があります。 FOS

    ダウンロードファイルが真正なものであるかを確認
  • IP認証によるアクセス制限のテクニック

    Apacheのセキュリティ機能の構成要素と設定 Apacheにおけるアクセス制限には、Apacheの設定ファイル(httpd.conf)を使う方法と、制限を設けたいディレクトリに「.htaccess」という名称のファイルを作成する方法の2種類がある。.htaccessには、そのディレクトリ以下のコンテンツ(サブディレクトリも含む)に対する制限を記述する。 図 .htaccessの影響範囲。.htaccessが置かれたディレクトリとそのサブディレクトリにも及ぶが、さらに.htaccessがある場合はそちらが使われる 重要なことは、アクセス制限を行う設定ファイルはhttpd.confではなく.htaccessを使うこと。.htaccessの名前が限定されていること(httpd.confのAccessFileNameディレクティブで規定)。.htaccessによる制限の影響範囲は、そのディレクト

    IP認証によるアクセス制限のテクニック
  • Tomcatで独自のエラーページを使う

    Tomcatは、存在しないURLへのリクエストがあったとき、認証に失敗したときやサーブレットにエラーがあったときなど、HTTPのエラー発生時には以下のようなエラーページを表示します。 しかし、このエラーページはセキュリティ的に問題となることがあります。使用しているTomcatのバージョンがエラーページのフッタに表示されるからです。エラーページの表示から、脆弱性のあるバージョンを使用していることを知られ、攻撃対象にされてしまう危険があります。もちろん、メンテナンスが万全で、脆弱性が発見されるたびに最新バージョンにアップデートしているシステムなら、バージョンが表示されても問題はありませんが、現実はなかなかそういかないでしょう。 このような危険を防ぐために、エラーページを自前で用意したものに置き換え、セキュリティの向上を図るべきです。Tomcatでは、Apacheと同様にエラーコードに応じて独自

    Tomcatで独自のエラーページを使う
  • ディスクの使用量を制限するには

    ディスクの使用量を制限するには、quotaを使用する。最近のディストリビューションならquotaは含まれていると思うが、念のため、 などでquotaがインストールされているかどうかを確認するといいだろう。 最初に、quotaを使用するための設定をファイルシステムに対して行う。/etc/fstabをテキストエディタで開いて、quotaを使用するパーティションに対してusrquotaというオプションを追加する。 なお、quotaはグループに対しても設定することができる。その場合は、grpquotaというオプションを指定する。上記の場合だと、usrquotaの後ろに「,grpquota」を追加すればいい。 /etc/fstabの編集が終わったらエディタを終了し、ディスクを再マウントすればquotaが有効になる。mountコマンドで、quotaが有効になったかどうかを確認することができる。quot

  • サーバのログ監視ツールを使いこなそう

    ログを取得しても、監視していなければ意味がない。しかし、常時監視するのは現実的ではない。異常の発生をメールで通知させるなどの対策を行っておこう。(編集局) 前回はログの基的な設定について説明しました。今回は、出力されたログをサーバの運用に生かす方法を検討します。 来、ログは常に監視しておくものであって、異常時のみ確認ればよいというものではありません。ただし、常時監視できる管理者はほぼいないでしょうし、大量のログが出力されるサーバを監視するのは不可能でしょう。 であれば、少しでも労力を削減しつつ確実に必要な情報を拾う方法を考えなければいけません。そこで、ツールを利用したログの管理方法を説明します。ツールにはそれぞれ一長一短があるので、どのツールを使用するのか、あるいはツール同士を組み合わせて使用するのかを考えてみてください。 ログチェックの前提条件:時間合わせ 前回も説明したとおり、ログ

    サーバのログ監視ツールを使いこなそう
    larker
    larker 2014/09/19
    2002年なので結構古い
  • httpd.confによるWebサーバの最適化

    KeepAliveの設定 HTTPはステートレスプロトコルです。クライアント/サーバ間のTCP接続を永続させず、要求に応じて接続の開始/切断を行います。しかし、Webページは通常HTMLドキュメントや画像など、複数のファイルで構成されています。クライアントが1つのWebページを取得する間に、ファイルごとにTCP接続の開始/切断を行うのは大変非効率的です。そこで、KeepAliveを利用して1つの接続を使い回し、複数のリクエストに応えられるようにします。 KeepAliveの動作にかかわる重要なパラメータが以下に挙げる3つのディレクティブです。 KeepAlive 「On」にすることで、KeepAliveを有効にします。 現在使用されているWebブラウザはApacheのKeepAliveに完全に対応しているため問題はありませんが、マイナーなクライアントや古いバージョンのWebブラウザではAp

    httpd.confによるWebサーバの最適化