JAVA関連のことを調べてみた2020年06月09日

JAVA関連のことを調べてみた2020年06月09日
目次

【android studio(version4.0)】project作成まで

##androidstudioダウンロード

以下から最新版のandroid studioをダウンロードしましょう。
https://developer.android.com/studio?hl=ja

##newファイルの作成
start a new Android studio projectをクリックしたら新規ファイルが作成されます。
スクリーンショット 2020-06-09 1.43.27.png

ビュー画面のテンプレートを選択します。特にこだわりが無ければEmpty Activityでいいと思います。

スクリーンショット 2020-06-09 1.47.00.png例外の際、waiting for debuggerが再表示されLogcat例外が見れない問題がある

・問題の解決には至っていませんが、原因までは突き止められたので、もしよかったらご参照頂ければと思います。
・アプリ開発の実績があまり無い人間が書いているので間違っている内容かもしれないという事は十分考慮の上ご参照下さい

Android studioで例外が出た際、waiting for debuggerが出てしまって、その時例外を見ようと思ってもLogcatが消えてしまって見れないという問題がありました。

このwaiting for debuggerですがデバッグを開始する時に毎回でます。

出る時でない時があるので、少しどのような条件で出るか試してみたところ下記の様な条件で出ました。
例外は

“`
int[] i = null;
for(int a:i){
}
“`
とnullのint配列に拡張forでアクセスしRuntimeExceptionを発生させました。

Logcatが見える時と見えない時がある為、どのような条件の時見えて、どのような条件の時見えないのか試したところ、下記の様な条件でした。
前提
1.Activityを3つ作成(Activity1、A

元記事を表示

ネイティブアプリ実装の選択肢考察(執筆中)

# ❶ はじめに

## 1. 要約
実務経験2年半のWebエンジニアが、はじめてネイティブブアプリを実装するにあたって、どの言語を使用するかの考察をおこないます。

## 2. 前提
今までに経験したプログラミング言語は、Ruby・Python・JavaScript、フレームワークは、Rails・Djnago等です。元々、非理系からエンジニアに転職したので、基礎は結構あまあまです。気合いでいくつもの現場を乗り越えて来ました。今回は知識をしっかりと深めるためにも記事を投稿することにしました。

# ❷ Webアプリとネィティブアプリの違い

## 1. Webアプリ
– Webブラウザー(Chrome・Safari・Firefoxなど)上で動作するアプリケーション。
– OSに依存せずに動作する。そのため、プラットフォームごとの開発が不要。
– オンライン環境で動作する。
– ダウンロードなどの手間がからない。
– 検索・SNS・ダイレクト(URL直打ち)の流入が見込め、チャネルが広い。

※ PWA(プログレッシブ・ウェブ・アプリケーション)を実装すれば、オフライン動作・ローカル通知

元記事を表示

Automation Anywhere A2019 の共通開発部品であるパッケージを作成する #2~SDKサンプルを変更してオリジナルパッケージを構築!

Automation Anywhere A2019では、「パッケージ」という共通開発部品を作成、配布することでBot作成を効率化することができます。

先日オンラインで開催された[Automation Anywhere社主催Developer Meetup Vol.2](https://rpasouken.com/event-2/webinar/2488/)でも解説されていた内容を参考にしながら概要をまとめてみました。Javaのビルド環境やSDK関連ファイルのダウンロードとセットアップは、前回の記事『[Automation Anywhere A2019 の共通開発部品であるパッケージを作成する #1~まずはSDKサンプルをそのままビルドして使う](https://qiita.com/RPAbot/items/3ea4216f1b94f76df0b3)』を参照してください。この記事では、これらのセットアップは完了してビルドもできる環境になっていることを前提として進めます。

この記事ではオリジナルアクションとして、文字列の中の半角文字を全角文字に変換するアクションを作成します。

**

元記事を表示

【Bukkit,Spigot,Paper】plugin.yml も build.gradle.kts を書く

## plugin-yml
https://github.com/Minecrell/plugin-yml

これを使います。例には `build.gralde` もあるのでそちらがいい人はやってみてください。

ちなみに、kotlin-dsl の例は間違っています。コマンドやパーミッションの設定が出来ません。
`”test”` を `register(“test”)`
`”testplugin.*”` を `register(“testplugin.*”)`
に変更すればできます。詳しくはこの記事の下の方で解説しています。

## Gradle
build.gradle.kts だけを用意してあります。~~build.gradle の例、誰か書いてくれませんかね~~
自分に合ったものを選んで ▶ を押してください。
**`@TODO` になっている箇所を編集してください**

### build.gradle (Groovy)
待ってます。

### build.gradle.kts (Kotlin)

`build.gradle` になっている人はファイル名を変更して、`buil

元記事を表示

インクリメント演算子、デクリメント演算子

単体ではさほど難しくはないけど、束になってかかってくるとややこしいのでまとめです。

#インクリメント演算子、デクリメント演算子とは

– インクリメント「++」・・・変数の値に1を加算する
– デクリメント「–」・・・変数の値に1を減算する

#前置と後置

## 前置・・・先に演算してその結果の値を代入する

### 例
int a = 5
int b = ++a
↑aに1を加算してからbに代入(b=6、a=6)

## 後置・・・値を代入してからあとで演算する

### 例
int a = 5
int b = a++
↑bに代入してからaに1を加算(b=5、a=6)

#ややこしい計算の例

int a=5
int b = a++ + ++a + –a – a– -a

とかやると
b = 5 + 7 + 6 – 6 – 5

となり、答えは7

元記事を表示

IntelliJ IDEA 初心者のための便利機能 (重要度★4)

重要度★5の続きです。
[IntelliJ IDEA 初心者のための便利機能 (重要度★5)](https://qiita.com/bana3194/items/d1696044371e2072b06f)
主に★5で扱った事に関する項目で、より便利になる機能を紹介します。
#更に便利になる設定項目たち
今回はほとんど設定画面での操作になります。設定画面はここから開けます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/323695/9823ce45-2c06-b775-c6f7-4ae5fb534045.png)

### ・ライブテンプレート設定
この設定を活用するだけで、作業効率は数割増しになります。
設定→エディター→ライブテンプレートと選ぶと、この画面が出てきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/323695/32da1ca6-ce13-38f9-029a-11ee

元記事を表示

IntelliJ IDEA 初心者のための便利機能 (重要度★5)

IntelliJというか、エディター初心者のための解説ページです。このページでは、特に重要な機能やショートカットをまとめています。記載してあるショートカットは全てWindowsのものです。
# 絶対覚えてほしい便利機能
###**・元に戻す**
ショートカットキーの王様(と個人的に思っています)。これだけは絶対覚えてほしい。WordやExcelなんかでも使えます。
Undo、アンドゥと呼ばれる機能です。「行った作業を取り消す」という動作をしてくれます。CtrlとZの同時押し(以下、`Ctrl+Z` というように記述します)で動作します。何回も押せば、更にさかのぼって作業を取り消せます。

やべぇ間違えて消しちゃった!でも` Ctrl+Z` を押せば元通り!
![Undo2.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/323695/27b60fa5-3cd1-e0a6-3593-40e6be9386c7.gif)
やべぇ間違えてコピペしすぎた!でも`Ctrl+Z` で元通り!
![Undo_2.gif]

元記事を表示

美大生のためのプログラミング入門(随時更新中)

※ Qiita では、本文部分のみの印刷に苦労します。そのため、同じ内容を以下のページにも掲載しています。プリンツアウトしたり PDF 化したい人は、こちらのページを利用して下しさい:

[http://gurakura.sakura.ne.jp/series/美大生のためのプログラミング入門/](http://gurakura.sakura.ne.jp/series/%E7%BE%8E%E5%A4%A7%E7%94%9F%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AE%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E5%85%A5%E9%96%80/)

——————–

**第 0 章 はじめに**
https://qiita.com/iigura/items/b5e368bc8bc5e1b86f8b

**第 1 章 準備 – Processing のインストール**
https://qiita.com/iigura/items/d7df16d1a3d

元記事を表示

美大生のためのプログラミング入門:直線をより魅力的に

※ Qiita では、本文部分のみの印刷に苦労します。そのため、同じ内容を以下のページにも掲載しています。プリンツアウトしたり PDF 化したい人は、こちらのページを利用して下しさい:

http://gurakura.sakura.ne.jp/hellomondrian/strokeweight/

# はじめに
 line 関数の使用により、最低限度の表現ではありますが、プログラムで絵を描けるようになりました。しかし、これだけではまだまだ表現力が足りません。このセクションでは線の太さや色を変更する方法を説明します。

# 線の太さを変える
 まずは線の太さを変える方法を示します。線の太さは strokeWeight 関数で設定します。

stroke 関数の使い方ですが、strokeWeight(20) などとし、引数に使用したい線の太さをピクセル数で指定します。下の例だと線の幅は 20 ピクセルとなります。

“`Java
background(250,250,250);
size(500,500);

strokeWeight(20);
line(70,100,450,300

元記事を表示

美大生のためのプログラミング入門:準備編 Processing をインストールしよう

※ Qiita ではコンテンツ部分のみの印刷が簡単にはできません。本文部分をプリントしたい人や PDF 化したい人は http://gurakura.sakura.ne.jp/hellomondrian/setupprocessing/ を見て下さい(同じ内容です)。

# はじめに
 このシリーズでは、Processing というソフトウェアを用いて、プログラミングを学んでいきます。説明されているプログラムを実際に動作させるには Processing が必要となります。この文書では Processing のインストール方法と簡単な動作確認について説明します。

# ダウンロード&インストール
 Processing は、[processing.org](http://processing.org/) で配布されています。無料のソフトウェアです。

[http://processing.org](http://processing.org/) にアクセスすると、次のような画面が現れます。

![Processing.org のトップページ](http://gurakura.sakura

元記事を表示

美大生のためのプログラミング入門:はじめに

※ Qiita では、コンテンツのみの印刷に苦労するため、同じ内容を以下のページにも掲載しています。プリンツアウトしたり PDF 化したい人は、こちらのページを利用して下しさい:

http://gurakura.sakura.ne.jp/hellomondrian/intro/

# はじめに
 この文書は、とある美大で実際に行った授業のテキストを元に作成されています。理系学生と異なり、美大生は必ずしもプログラミングの素養があるとは限りません。

しかし、美術大学においても、メディアアートやインタラクティブなインスタレーションなど、プログラミングの知識が求められることが多い状況となっています(状況を知っている方からすれば「何をいまさら」という感じでしょうが…)。そのため、美大生にも理解できるよう、できるだけ具体的な例を多く示して分かりやすい説明を心がけました。

 もちろん、美大生の中にも驚くほどプログラミング能力が高い学生は存在します。とは言っても、平均としては(当たり前ですが)理系の大学生と比較すると、より丁寧な説明が必要であると経験的には感じています。そのため、理解の早い人に

元記事を表示

maven-formatterを使ってformatを自動化

# はじめに
元々はチームメンバー各々で、IDEにformatの設定をしてformatを行ってました。
githubにpushしたときに自動でformatされたら嬉しいよね。という話になり導入を行ったので、その方法をまとめます。
# 1.mavenの設定
今回は[formatter-maven-plugin](https://code.revelc.net/formatter-maven-plugin/)を使います。
## 1.1. pom.xmlにpluginを追記。
“` net.revelc.code.formatter
formatter-maven-plugin
2.11.0
“`

設定を行うと、以下

元記事を表示

SARS-CoV-2の流行によって暇になった学生がTwitter Appを作ったら最終的にTwitter APIの制限をくらった話

#はじめに
何か問題にブチ当たった時、皆さんググりますよね?
今回、APIの制限を受けた時もググったのですが出てくる日本語の情報がまー少ない少ない。。。

そのため、私と同じ状況に陥ってしまった人の一助になればと思い、この記事を書くことにしました。
(**恥を晒すことにもなりますが**)
(**にも関わらず自分が書きたいからっていうのも結構あったりする**)
(**つまり要らん話がとても多い**)

この話は「**他山の石以て玉を攻むべし**」を皆さんに実行していただくための記録です。
くれぐれも私と同じような轍を踏むことがないようにお祈りいたします。。。

(**Twitter APIの制限解除方法だけ知れればいい**という方は`まとめ`だけ読めば十分です)

#2020年3月
[SARS-CoV-2](https://www.google.com/search?q=SARS-CoV-2)なる新型コロナウイルスが流行しました。
これを読んでる人が「そんなことあったなぁ」となっていることを願いますが…
このウイルスの影響で全国の学校が休校の措置をとりました。

そのため、高校2年生(2

元記事を表示

Java ラムダ式の使いどころ

#概要
Java8からラムダ式が導入された。
本ページは、Javaのラムダ式の使いどころについてのメモページ。
ラムダ式は、StreamAPIと組み合わせて使用すると、使い勝手が良い。

##リストから一定の条件で値を取り出し
###ラムダ式、StreamAPIの使用なし
“`java
List list = Arrays.asList(2, 9, 5, 7, 4);

for (Integer i : list) {
if (i >= 5) {
System.out.println(i);
}
}
“`
###ラムダ式、StreamAPIを使用あり

“`java
List list = Arrays.asList(2, 9, 5, 7, 4);

list.stream()
.filter(i -> i >= 5)
.forEach(System.out::println);
“`

ラムダ式、StreamAPIを使用したほうがスッキリと可読性良く記載ができる。
以下、ラムダ

元記事を表示

Eclipse(Java)のダウンロードとインストール(Mac版)

最初に、Pleiades-Eclipse,IntelliJなどの日本語化プラグインのサイトをクリックします。

スクリーンショット 2020-06-07 22.22.31.png

クリックしたら、この画面に行きます。最新のEclipse2020をクリックします。

スクリーンショット 2020-06-07 22.22.50.png

その次に、Mac 64bit, full Editionをクリックします。

Minecraft Java Mythicmobs プラグインを使用してMOBを作る|準備編1

#はじめに
早起きして、急ぎながらも読んで下さっている方はおはようございます(*^o^*)(*^O^*)
昼にのんびりとこの記事を読んで下さっている方はこんにちは( ノ゚Д゚)
夜に学校 仕事終わりにのんびりと読んでいる方はお疲れ様です。こんばんは\(^▽^)/!

と言う事でどうも、何度も言いますが当記事を読んでいただきありがとうございます!!
当記事では、MinecraftJavaのプラグイン__Mythicmobs__を誰にでも、そして分かりやすく、楽しく教えよう!!エンジョイisエンジョイ(?)元気があれば何でも出来る!!と言う事で急に始めました(=・ω・)ノ

筆者は基本的にテンションが高い明るい人です!!ビックリマーク 顔文字 草 ww 等を多様すると思いますw
ですが、ふざけてないです。真面目に解説しているつもり\_( ゚ロ゚)ここ重要//
ですのでよろしくお願いしますー
誤字が1個114514%あると思います。その時は指摘してくださると助かります!!
まだ助かる…そう!!こ↑こ↓マダガスカル!!
##用語
因みにこれから当記事は以下の用語を使用します。
当記事=この

元記事を表示

PKCEのCode_VerifierとCode_ChallengeをJMeterリクエストに組み込む方法

# はじめに
OAuthでの認可コード横取り攻撃対策としてPKCE([RFC 7636](https://tools.ietf.org/html/rfc7636))という仕様が策定され、クライアント側でCode_VerifierとCode_Challengeと呼ばれるコードを生成し、リクエストのパラメータに埋め込む仕様になっている。

PKCE対応したAPIサービス開発でJMeterを利用した負荷試験を実施することになり、クライアント側のコード生成処理をJMeterに組み込むことなったため、その時に組み込んだ方法や手順について解説する。

## Code_Verifier、Code_Challengeの生成
JMeterでリクエストに埋め込むコード(Code_Verifier、Code_Challenge)を生成するため、コード生成するクラスを含むjarを生成する。
コード生成アルゴリズムは[RFC 7636](https://tools.ietf.org/html/rfc7636#page-8)にて下記の通り定義されているので、仕様に従ってコード生成を行うJavaプログラムを実装する

元記事を表示

[Java/Kotlin]画像の向きを考慮してリサイズする

# 概要
– iPhoneのカメラで画像を作成した場合、画像の向きはEXIFのorientationに保存される。
– EXIFはimagemagicの`identify`コマンドで確認できる。

“`
$ identify -verbose IMG_1046.png | grep Orient
Orientation: TopLeft
“`
– 画像をリサイズする場合はEXIFを考慮する必要がある。
– 自分で実装するのは大変なのでライブラリを使う。

# 使用するライブラリ

– [sksamuel/scrimage](https://github.com/sksamuel/scrimage) – Java, Scala and Kotlin image processing library

# 実装

“`build.gradle
dependencies {

implementation “com.sksamuel.scrimage:scrimage-core:4.0.4”

}
“`

“`ImageResiz

元記事を表示

ReactでLIFFアプリケーションをつくる 〜その3 買い物リスト(tobuy)アプリを作る〜

# はじめに

前回[ReactでLIFFアプリケーションをつくる 〜その2 herokuにデプロイしたReactアプリをLIFF連携する〜
](https://qiita.com/kaad/items/893e0657e9746681e2c3)の続きです。

今回は**LIFFアプリケーションを作る**というより、**Reactで買い物アプリを作る**に近いです。
フロント初心者なので、いったん1つアプリっぽいのが作れたので記事にしました。

# Tobuyアプリを作る(フロント)

## 準備(Bootstrapをインストール)

あまりcssは得意ではないので、楽にそれっぽく作れる`Bootstrap`を利用しました。
[React-Bootstrap 本家](https://react-bootstrap.github.io/)から利用方法を確認できます。

まずは以下コマンドでインストールします。

“`
docker-compose run –rm –service-ports node sh -c “yarn add react-bootstrap bootstra

元記事を表示

OTHERカテゴリの最新記事