ラベル 開発 の投稿を表示しています。 すべての投稿を表示
ラベル 開発 の投稿を表示しています。 すべての投稿を表示
2018年5月4日金曜日

【グルメレポ】15年以上熟成された秘伝のソース(Java)


猫と一緒にガジェットライフ♪ムチャです。

以前関わったシステムの中で、15年以上前に作られて稼働し続けている、長い年月をかけて熟成されたそれは非常に味わい深いソースがありました。
独自フレームワークで元々の設計が良くない上に、設計書などもソースから逆コンパイルしたような代物、かつノーレビューで本番まで行ってしまっている感じでした。

長期間に渡り継ぎ足し(機能拡張)しながら腐敗熟成された味わいは、自分のプログラマ人生で出会った中で間違いなく最高の一品だったため、この感動をぜひ共有したいと思い、この記事を書きます。
この深い味わいをご賞味下さい。
2018年3月4日日曜日

[Java9] テキスト中の数値をインクリメントしつつ置換する


猫と一緒にガジェットライフ♪ムチャです。

仕事で「テキスト中に埋め込まれた通し番号を一律増やしたい」という状況になりました。
サクッとできなそうだったので、ちょっと調べてJava9で新しく追加されたメソッドを使って解決したので、ご紹介したいと思います。
2017年6月12日月曜日

[Java] 文字列を区切り文字を含んで分割する(StringTokenizer・正規表現)


猫と一緒にガジェットライフ♪ムチャです。

前回の続きです。
そもそもこの話はとある面接で出された問題が元になっています。それは、
「与えられた文字列を指定の区切り文字で分割し、逆順にした上で区切り文字も含めて再構成する」
という問題でした。与えられた時間は10分くらいで、渡されたPCがカーソル飛びまくるし固まるしで(言い訳)完全には解けなかったので反省をこめて書いています(;´∀`)



2017年3月16日木曜日

[Java8] Streamとラムダ式を使ってダミーテキストを生成する


猫と一緒にガジェットライフ♪ムチャです。

転職の面接の時にとあるプログラミングの問題が出されたのですが、それを解くのにまずダミーのテキストが必要で、そういうサービスは探せばいくらでもあるのですが、せっかくなのでJava8のStreamを使って生成する方法を考えてみました。
多分役に立たないと思いますが、Streamを使った処理など参考になればと思います。



2016年11月6日日曜日

[JavaSE8 Goldへの道] その5 ラムダ式を使用したコレクション・ストリームの操作(1)

JavaSE8 Goldへの道(Upgrade to Java SE 8 Programmer 1Z0-810 試験対策)5回目です。
いよいよラムダ式を実際に使っていきます。またJava8での追加内容のもう一つの目玉、ストリーム(Stream)に触れていきます。
2016年10月30日日曜日

Excelファイル正規表現検索スクリプトをGitHubリポジトリへ移しました


猫と一緒にガジェットライフ♪ムチャです。

以前gistで公開していたExcelファイル正規表現検索スクリプトですが、プログラマーのくせにGitHubリポジトリを作っていなかったので、新しく作ってそちらへ移しました。

ドヤ顔するつもりもなくて、「プログラマーのクセにまだリポジトリ作ってなかったのかよ!」という感じですが、ブログ書くのは飲み会と一緒できっかけは何でもいいのですw
最後にリンクを載せますが、「説明とか不要」という方はこちらからダウンロードしてください。
2016年10月22日土曜日

[JavaSE8 Goldへの道] その4 メソッド参照



JavaSE8 Goldへの道(Upgrade to Java SE 8 Programmer 1Z0-810 試験対策)4回目です。
いよいよStreamAPI・・・に入る前に、メソッド参照を説明しておきます(;´∀`)



2016年7月30日土曜日

[JavaSE8 Goldへの道] その2 関数型インタフェース


猫と一緒にガジェットライフ♪ムチャです。

Javaにラムダ式を追加するに当たって新しく用意された概念が「関数型インタフェース」です。
JavaSE8 Goldへの道(Upgrade to Java SE 8 Programmer 1Z0-810 試験対策)2回目は、この関数型インタフェースについてまとめます。
2016年7月24日日曜日

[JavaSE8 Goldへの道] その1 ラムダ式の記述法


猫と一緒にガジェットライフ♪ムチャです。

JavaSE8 Goldアップグレード試験に向けて、勉強したことをまとめていきたいと思います。
写真はやっと発売されたJavaSE8 Goldの参考書です。でも自分が受けるのは7からのアップグレード試験(1Z0-810)なのでちょっと違うのですけどね。

まずは試験範囲のほとんどを占めている、ラムダ式の記述法からいきます。
2016年2月17日水曜日

Excelファイルを正規表現検索できるツール(オートシェイプ・コメント対応)をアップデートしました


猫と一緒にガジェットライフ♪ムチャです。

以前Excelスクショ問題のときにも書きましたが、開発環境の制限で手頃な作画ツールを導入できないためにExcelで業務フローや処理フローなんかを作ることがあると思います。

困ったことに、Excel単体では図形内のテキストを検索できないのですよね。
Excelに対応した検索ツールやアドインを導入できれば良いですが、それすらも不可能な現場にいたときに、JavaScript+ActiveXで検索ツールを作りました。

いくつか不満点をアップデートしたので改めて公開します。

2015年6月27日土曜日

Androidアプリを作る!-AndroidStudioのインストールとエミュレータの起動


猫と一緒にガジェットライフ♪ムチャです。

いい加減、エンジニアらしいことも書こうと思って、前々から本とか読んで勉強しながら手を付けていなかったAndroidアプリ開発を始めてみようと思いました。
まずは開発環境を整えるところからです。

手順などはググればいくらでも出てくるのですが、自分用にまとめておきます。

※ネットワークが不安定だったからか、途中エラーが出たりしたので、すんなり行った場合と手順が若干違うかもしれません(;´∀`)
※インストールしたAndroidStudioのバージョンは1.2.2です。


1.Java Development Kitのインストール


まずはこれがないと始まりません。オラクルのページからダウンロードします。

ダウンロードはもちろん「JDK」です。

ライセンスに同意のチェックを入れて、自分の使っているプラットフォームのファイルをダウンロードします。
自分はWindows8.1の64bit版なので、「Windows x64」です。

落としたファイルを実行します。Windowsのユーザーアカウント制御(UAC)ダイアログが出るので「はい」を選びましょう。


コンポーネントは全て選んだ状態になっているのでそのまま次へ。


インストール先はお好みで。


「Ask Toolber」を入れるかどうかの確認はありませんでした。
おなじみの「30億のデバイスで走るJava」のメッセージと共にインストールが進みます。

「30億のデバイスで走るJava」でググったら、ひたすらそれだけつぶやくTwitterアカウントがありました。謎だ・・・

特に問題も無くインストール完了です。


2.AndroidStudioをインストール



次にAndroidStudioをインストールします。

以前はAndroidアプリ開発はEclipseとAndroid Development Tools (ADT) の組み合わせで行っていましたが、現在ではIntelliJ IDEAベースのAndroidStudioが公式の開発ツールとなっています。


ここでもライセンスに同意してダウンロードします。


ようこそ画面はそのまま次へ。


コンポーネントは全て選択されているのでそのまま次へ。


またライセンスが出てくるので「I Agree」。


AndroidStudioとAndroid SDKのインストール先。
SDKはデフォルトだとユーザーフォルダ以下が指定されているので、これは変えた方がいいと思います。
自分は「c:\android」にしました。


スタートメニューへの追加はそのままでいいでしょう。


後は待っていれば・・・


インストール完了です。


3.起動と設定



起動するとまず前のバージョンの設定を引き継ぐかどうか聞いてきます。
初めての起動なので、下のラジオボタンを選択してOK。


自分はここでエラーが出ました。
多分このとき無線LANが切れてしまったからだと思います(;´∀`)

本当ならここでAndroid SDKのコンポーネントをダウンロードする画面になるのかもしれません。


とりあえずAndroidStudio起動。テーマを「IntelliJ」と「Dracula」から選べます。名前がすごいですね。


なにやらSDKのダウンロードが始まって・・・。


ようこそ画面が出ました。
以下の記事を参考に設定をいじってみようと思います。「Configure」を選択。


「Settings」を選択。


行番号とホワイトスペースを表示させます。(画像はクリックで拡大します)
Editor→General→Appearance
・Show line numbers
・Show whitespaces


マウスオーバー時のドキュメント表示までの時間を好みの値に。
Editor→General
・Show quick doc on mouse over


自動インポートを有効にします。
Editor→General→Auto Import
・Optimize import on the fly
・Add unambiguous on the fly

そういえば日本語化は?と思って探すといちおうできるようです。
以下のリポジトリからリソースのjarファイル(resources_jp.jar)をダウンロードして、
AndroidStudioを一旦落とし、インストールしたディレクトリのlibフォルダに入れます。
Windows64bit版のデフォルトだと「C:\Program Files\Android\Android Studio\lib」になります。


再び起動すると、日本語化されました(一部メニューは英語のまま)。




4.プロジェクトを作成する



試しにプロジェクトを作ってみます。一番上の「Start a new Android Studio project」を選択します(日本語化してると日本語になってるかも)。


アプリ名、ドメイン、作成場所は適当に。


ターゲットデバイスもそのまま、「Phone and Tablet」で「Android 4.0.3」にします。


とりあえず起動がわかればいいので、「Blank Activity」のまま次へ。


この辺はデフォルトのまま次へ。


これでプロジェクトのひな形ができました。


エディタを開くと「Project SDK is not defined」と出ていたので、
右の「Setup SDK」をクリックすると、


SDKの選択ダイアログが出ました。あれ、JDK入れなくてもよかった?(;´∀`)



5.Android SDKとIntel HAXMのセットアップ



とりあえず実行してみます。メニュー上の実行ボタンをクリック。


仮想デバイスをまだ作ってないので実行できません。
右側の四角いボタンを押します。


仮想デバイスの作成画面が出ます。


最初から選択されているNexus5を。


ここも選択されていた「Lilipopでアーキテクチャがx86」のイメージで。


次も特に変更せずそのまま。


デバイスが作成できたので、起動してみます。


はい、エラーです。
「Intel HAXM」というのを入れないといけないようです。


ツール→Android→SDK Managerを起動して、一番下にある
Intel x86 Emulator Accelerator (HAXM installer)
をチェックして「Install xx packages」ボタンを押すと、インストーラーが落ちてきます。
(ついでに他の更新コンポーネントもここで一緒にインストールされました)

しかし、以下の記事によるとWindows8.1の場合はIntelのサイトから直接落とした方がいいようです。
Intelのダウンロードサイトは記事にあるとおり以下です。この記事を書いている時点ではバージョンは1.1.1となっています。
Windows8.1以外の場合は、[SDK_PATH]\extras\Intel\Hardware_Accelerated_Execution_Manager内にあるIntelHaxm.exeを実行してインストールします。


インストール時の最初の画面。


仮想マシンが使うメモリサイズを指定します。PCのスペックに応じて。


インストールを進めるとエラーが。
CPUのIntel Virtualization Technology(VT-X)が有効になっていないようです。

上のqiitaの記事にあるとおり、この場合2つの原因が考えられます。
  1. BIOS(UEFI)設定でVT-xが有効になっていない
  2. 他にVT-xを使うソフトがある
自分の場合は1.でした。
PCのBIOS設定を出して、
Advanced→Intel Virtualization Technorogyをenableにしました。

2.の場合ですが、コントロールパネル→プログラムと機能→Windows の機能の有効化または無効化の中に「Hyper-V」があったら、そのチェックを外しましょう。

無ければ、Virtual Boxなどの仮想化ソフトウェアがインストールされているとダメかもしれません。Avastをお使いの方はqiitaの記事にあるとおり仮想化支援機能の設定を確認してください。


6.いよいよ起動


これでHAXMのインストールも完了し、いよいよ起動です。


メニューの中の実行をポチッと。


「Launch emulator」にチェックが入って、作成済みの仮想デバイスが選択されていると思うのでOK。


Androidが起動しました。

マウスで鍵マークを上にドラッグすると・・・


Hello world━ヽ( ゚∀゚)ノ┌┛)`Д゚)・;'━!!



あれ、これシャットダウンどうするの・・・?
なるほど、F7が電源キーなのね。
押しっぱなしにすると「Power off」と出たのでクリック。


うん、シャットダウンしたね・・・中身だけ。
エミュレータ自体はどうするんじゃい!
↑ここに書いてありました。
「To stop an emulator instance, just close the emulator's window.」
強制終了かい!

しかもなぜかウインドウのタイトルバーが画面外に出てしまって✕が押せないので、タスクバーから右クリックして終了しました。

通常開発するときは、エミュレータはシャットダウンせずに起動しておいた方がよさそうです。アプリだけビルドし直して実行とかできますしね。

おしまいのひとこと


環境構築は何とかできました。
これからアプリ開発を勉強していきたいと思ってます。
けっこう前に資格も取ったしね・・・。

それではみなさまよきガジェットライフを(´∀`)ノ

▼こちらの記事もどうぞ

▼ブログを気に入っていただけたらRSS登録をお願いします!
▼ブログランキング参加中!応援よろしくお願いします。

スポンサーリンク