プリンタドライバの削除
手持ちのプリンタではないのですが、プリンタの追加手順を確認するために
某メーカーのサイトからドライバをダウンロードしてインストール。
で、一通り確認できたので削除しようとして、プリンタ自体は削除できたのですが、
ドライバの削除方法がわからない。
ということで、削除方法を検索していたらこちらに記事が見つかりました。
windows7でプリンタドライバを大量に削除する方法。(☆)
上記に沿って調べてみると、今回追加したプリンタ以外にも、
以前に使っていてすでに廃棄したプリンタのドライバが見つかり、
まとめて削除。助かりました。
ついでにマイクロソフトの記事もありました。
参考までに主な手順とスクリーンショットを添えておきます。
「コントロールパネル」->「システムとセキュリティ」->「管理ツール」
「管理ツール」 -> 「印刷の管理」
「印刷の管理」->「プリントサーバー」->「ドライバ」
不要なドライバを選んで削除。
以上です。
Eclipse(Juno)エディタでの不具合
Eclipse(Juno)の不具合、こちらの記事で助かりました。
http://frmmpgit.blog.fc2.com/blog-entry-133.html
例えば複数のXMLファイルを開いて編集しようと Copy & Paste すると、
エディタの裏側に隠れているファイル(コピー元)が書き換わってしまう状況でした。
そこで上の記事に倣って”XML Editor”をデフォルトに設定します。
また”Android Common XML Editor”を削除する場合でも、後で[Add…]ボタンで
元に戻すことができます。
ここで”XML Editor”をデフォルトに設定しただけではXMLファイルの編集で
“Android Common XML Editor”が立ち上がってしまうようですので、
編集したいXMLファイルを右クリックして、Open Withで”XML Editor”を
選ぶと次からは”XML Editor”で編集できるようになります。
本の紹介「リーダブルコード」
6月末頃にTwitterやFacebookで紹介されているのを見て、他に欲しかった本と一緒にAmazonで注文。
ところがなかなか発送の通知がきません。どうやら人気の本のようで、入手までに2週間ほどかかりました。
今回についてはさっさと書店に行ったほうが早かったかな。
ということで、ざっと読みました。
うーむ。普段のプログラミングにおいて、変数の名前の付け方が悪い例のようになっているかも…。
(特に戻り値の変数名など)
関数名も自分なりに工夫しているつもりですが、まだまだ言葉の選び方に余地がありそうです。
確かに、変数や関数の意味を考えて特徴的な名前をつければ、それを見ただけで処理の内容が見えてきます。
他にも、プロジェクトから独立した汎用的なコードの重要性など、要点をあらためて気づかせてくれます。
最後のほうのテストの読みやすさについては、自分にとってこれからの課題です。
今後、机の脇に置いておいて、プログラミングの合間に読み返したい本の一冊。
Androidのテストプロジェクト – JUnit test
Androidのテストプロジェクトを試していたところコンストラクタのところで警告が出ました。
public class MainActivityTest extends ActivityInstrumentationTestCase2<MainActivity> {
public MainActivityTest() {
super("package.name.hogehoge", MainActivity.class);
// TODO Auto-generated constructor stub
}
Referenceを調べてみたところ、パッケージ名を指定するコンストラクタがdeprecatedになっていました。
ActivityInstrumentationTestCase2
ということで、下記のように修正。
public class MainActivityTest extends ActivityInstrumentationTestCase2<MainActivity> {
public MainActivityTest() {
super(MainActivity.class);
// TODO Auto-generated constructor stub
}
以上です。
Chrome Extension の セキュリティポリシー(CSP)
GoogleのChromeウェブストアチームから Chrome extension に関するアップデートのお知らせが届いていました。
詳細はこちら Manifest Version
記事によると、Chrome機能拡張を作る際はマニフェストに、
'manifest_version': 2:
と書きなさい、とのことです。
そして、これより前の Manifest version 1 は、今後リリース予定のChromeで動作しなくなります。
また、スケジュールに沿ってウェブストアのウォールやカテゴリからも削除されます。
このバージョン1と2の違いについて、上記ページにまとめられていて、
Browser action や Page action の各種プロパティが変更されているようです。
それと、セキュリティポリシー(CSP)の導入に伴って、HTMLとJSの分離が必要です。
CSPの詳しい記事はこちら Content Security Policy (CSP)
例えば “Inline JavaScript will not be executed” について。
<button onclick="clickHandler(this)">
HTML内に上記の記述があっても、デフォルトのポリシーでは動作しません。
この様な場合、HTML内にはボタンを配置しておいて、
<button>Click for awesomeness!</button>
ボタンクリックの処理についてはJS側でイベントリスナを登録します。
document.addEventListener('DOMContentLoaded', function () {
document.querySelector(‘button’).addEventListener(‘click’, clickHandler); });
それと “Only local script and and object resources are loaded” の部分。
外部サイトのスクリプトを参照している場合は、デフォルトのポリシーのままでは動作しないので、
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
パッケージ内に組み込む必要があります。
<script src="jquery.min.js"></script>
あるいは “Relaxing the default policy” にあるようにCSPの設定を緩めるなど。
リリース済みパッケージのメンテナンスや今後のリリースの参考まで。
Lintチェックのエラーと旧バージョンのサポート
以下、自分用の備忘録として
Lint API Check
の記事を読みながら簡単にまとめたものです。
Androidアプリ開発において、API 4(Android 1.6) までサポートする際に、ターゲットのビルドバージョンによって呼び出すAPIを切り替えたい場合があります。
しかし、マニフェストが、
<uses-sdk android:minSdkVersion="4" />
となっているので、API 4では対応していないAPIを呼び出すところで次のようなLintチェックのエラーになってしまいます。
Call requires API level 11 (current min is 4):
そのような場合に、@TargetApi というアノテーション(annotation)をつけることで回避できます。
@TargetApi(11)
@Override
public void onBuildHeaders(List<Header> target) {
loadHeadersFromResource(R.xml.hogehoge, target);
}
Androidのデバッグでソースが読めない – eclipse
Androidのアプリ開発において、eclipseでステップ実行しようとしてソースが開けない場合。
(Source not found となってしまう)
上記の [Attach source] をクリックしてソースを置いているフォルダのパスを指定します。
例えば、次のようにします。
で、そうなるまえにソースのパスをセットしておく方法。
[Project] -> [Properties] を開きます。
次に [Java Build Path] -> [Libraries] を開いてターゲットの android.jar を展開します。
そして [Source attachment] が (None) になっていれば、[Edit…]をクリックして先ほどと同様にソースのフォルダを設定します。
jQueryの今後のリリースについて
本日の(Twitterの)ホットな話題。
来年2013年の1.9および2.0のリリースに向けて、ブラウザのサポート状況がアナウンスされています。
BLOG » JQUERY CORE: VERSION 1.9 AND BEYOND
- jQuery 1.9 (early 2013)
IE 6/7/8 は、今までどおりサポートされる予定。 - jQuery 2.0 (early 2013, not long after 1.9)
IE 6/7/8 のサポートは削除されます。
なので、jQuery 2.0を使いたいけどこれまでどおり従来のブラウザにも対応したい場合は、
次のようなスクリプトで対応できるとのことです。
<!–[if lt IE 9]>
<![endif]–>
<!–[if gte IE 9]><!–><!–<![endif]–>
ところでjQueryで何ができるの…?
という場合の各種エフェクトはこちら。
Effects – jQuery API
短期間のインターネット回線契約について
例えば、
1ヶ月間だけ1台もしくは複数台のパソコンでインターネットが利用できる環境を作りたい場合、
について調べてみました。(2012/06/27時点)
-
UQ WiMAXさんのサービス。
必要な費用は、登録料と月額費用。それとWi-Fiルータ。
1日単位の UQ 1 Day というサービスもありますが、
1ヶ月の利用となると割高なので、
月額固定の UQ Flat(ユーキューフラット)がよさそうです。
30日を超えて利用する場合は日割りで計算してもらえます。
Wi-Fiルータは購入(買取)になります。
パソコン1台で利用する場合はデータ通信カードの選択肢もあります。 - イー・モバイルさんのサービス
こちらには「30日定額プラン」とさらに高速通信が可能な「30日定額プランEMOBILE G4」というサービスがありました。
データ通信端末は対応する機種を自前で調達して持ち込みが可能とのこと。
固定電話(光回線)やケーブルテレビの回線だと開通までに日数がかかったり、
回線とは別にプロバイダ契約が必要だったり、
さらに、短期の利用だと解約金が発生したりしますので、
状況に応じて、このようなモバイル系のデータ通信サービスを活用するのもよさそうですね。
アジャイルサムライ読書会 – インセプションデッキ
本日の読書会のふり返り。
「第4章 全体像を捉える」を読みつつワークショップ形式で行いました。
この章では3章で説明のあったインセプションデッキをひとつずつ理解して具体的に作成していくことを目的としています。
ちなみに、インセプションデッキとはプロジェクトの全体像が把握できるように10個の設問を作成し、それぞれを1枚のカード(スライド資料)にするものです。これからスタートするプロジェクトにおいてチームおよびステークホルダで認識をそろえることを目的とします。また、プロジェクトの進行状況によっては改訂する必要もあります。
- 我われはなぜここにいるのか?
- エレベーターピッチを作る
- パッケージデザインを作る
- やらないことリストを作る
- 「ご近所さん」を探せ
- 解決案を描く
- 夜も眠れなくなるような問題は何だろう?
- 期間を見極める
- 何を諦めるのかはっきりさせる
- 何がどれだけ必要なのか
で、本日は仮のプロジェクトを想定して「我われはなぜここにいるのか?」と「エレベーターピッチを作る」について学びました。
- 「我われはなぜここにいるのか?」
ここで思ったのは、例えば業務系システムを開発する場合、開発側の人は現場(いわゆるエンドユーザの作業場所、環境)に出向くケースが少なくて、現場に行く人は限られていたり、あるいはステークホルダ側の担当者も特定の人に固定されていて、現場を知らないまま進行していくケースが多いのではないかということです。本に書いているトヨタの設計事例や請求書発行の事例など、チームのメンバーがそれぞれ現場に行って実際に見ることで何が必要かということをしっかりと把握できると思います。そして、それを体験して終わり、ではなくて、1枚のカードに簡潔にまとめておくことが重要です。 - 「エレベーターピッチを作る」
ここでは、上の「..なぜここ..」を踏まえてプロジェクトの本質を簡潔に明確に表現します。
例えば、営業的な立場の人は、顧客にプレゼンテーションを行う場合に、このエレベーターピッチ的な資料を作るケースが多いと思いますが、開発側の人は要件とか機能定義から始まってしまうケースが多いのではないでしょうか。さらには、技術的な専門用語を書き並べたものとか。
どうしても普段の仕事柄そのようになりがちですが、ここではそのような専門用語を排除して特に業務やシステムに関する知識がない人にとっても明確にその必要性が伝わるようにまとめる必要があります。
時間の都合もあって、それぞれを仕上げるところまではできませんでしたが、今回勉強会に参加した皆さんは普段のお仕事の中でそれぞれ問題意識を高く持っていらっしゃるようで、いろいろと意見交換ができて充実した内容になりました。
私自身、これまではざっと本を読んで行く程度でしたが、次回からはもう少し下調べをしていくこと、それと与太話で脱線をしないようにしたいと思います。
Inkscapeの練習
以前の記事でも紹介をしたのですが、Androidアプリのアイコンを作る際に少し作り方を変えてみようと思って Inkscape を使い始めました。何かのセミナーでこのツールを教わったような…
で、あらためて使い方を勉強してみようと調べたところ
Inkscaper というサイトが見つかりました。