JAVA関連のことを調べてみた2022年12月13日

JAVA関連のことを調べてみた2022年12月13日

【HERE】指定の緯度経度から初日の出の見えるホテルを探してみる

今年も早いもので、あと少しで一年も終わります。

初日の出は、日本では長い歴史を持つ伝統的な行事です。
日本人にとっては、新年を迎える前に、精神的にリフレッシュし、新しい一年に向けて前向きな気持ちになるために重要な行事です。
また、初日の出を見ることで、人々は自然の美しさや宇宙の秘密を感じることができます。ホテルから初日の出が見られる場所や屋上から初日の出を眺めることで、新年を迎える際に、より贅沢な気分で新年を迎えることができます。

そんな、初日の出の見られるホテルを予約したりして、贅沢な新年を迎えたいと思い、初日の出の見えるホテルを機械学習で、探してみました。

# 初日の出の見えるホテルの地図
こちらは作ったプログラムから出力されたCSVを[【HERE Studio】](https://jp.developer.here.com/documentation/platform_studio/user_guide/index.html)で表示したものになります。
地図表示は[こちら](https://platform.here.com/studio/viewer?project_id

元記事を表示

【実録】気づいたらやってしまってるかもしれない、こんなコーディング

# はじめに

表明駆動投稿ということで、何も考えず投稿表明をして、当日を迎えてしまいました。@suger4です。
この記事は[ラクス Advent Calendar 2022](https://qiita.com/advent-calendar/2022/rakus)の13日目です。

あるきっかけで、「コードのプロジェクトを分ける。≒一部を外だしする。」ことになったのですが、そこそこ長く開発していたプロジェクトであったこともあり、何点か事件が発生してしまいました。
今回はそういった事例を紹介させていただき、反面教師になっていこうという回になります。

# ことの発端

「コードのプロジェクトを分ける。≒一部を外だしする。」きっかけは、ざっというと「一部の重たい機能を別サーバで動くようにしよう」といった内容です。
特に珍しくないありふれた話ですが、スパゲティのように絡まっている(かもしれない)コードから、**確実に**、**今までと同じように**動作するように外に出すことが最大のミッションです。
しかしながら、そう簡単にはいきません。

# Case1:相互依存で相手がいないとダメに

元記事を表示

JAVAが国際規格にならなかった事

JAVAが国際規格にならなかったころ、ISO/IEC JTC1の別の委員会のメンバとして国際会議に参加していた。 

JAVAが国際規格にならなかったという連絡があった。

いろいろ忘れており、記録を再度たどろうとした。

<この項は書きかけです。順次追記します。>

# PAS Submitter

SunのJava技術国際標準化をISOが認可 (’97/11/18)

https://internet.watch.impress.co.jp/www/article/971118/javaiso.htm

記事の表題は誤解を与えやすい表現を使っている。 

SunのJAVA技術国際化の「PAS Submitter(公開仕様案の提案機関)」として提案提出をISOが承認したにすぎない。 

>Sun自身がJava関連仕様の標準化について、事実上主導権を取得したことになる。

主導権は取得していない。提案権を取得しただけだから。 

アメリカが反対しているところが鍵かも。 

## Replies
Section 7. SMI Replies to the World December/1

元記事を表示

【初心者向け】Javaについて

## はじめに 
こんにちは。watnowに所属しているりょーま。です。13日目を担当します。
今回はJavaを学んでいる最中なので、『Javaのプログラムの書き方について』を書きたいと思います。

## Javaについて
Javaとは、プログラムを作るために利用するプログラミング言語の一つです。
Javaを使えば、様々なコンピュータで動作する多様なプログラミングを開発することができます。

## 起動
早速、Javaのプログラムを書いてみましょう。
今回はこのサイト、[dokoJava](https://dokojava.jp)を使います。
さて、dokojavaでは、次の4つの手順で行います。
1\. プログラムの入力
画面にJavaのプログラムを入力します。
2\. コンパイル
dokojavaが入力したプログラムを検査して、実行の準備をします。
3\. 実行
プログラムを実行して、結果が画面に表示されます。
4\. デバック
うまく実行しなかったら、デバックのお時間です。

## 1\.プログラムの入力
まず、プログラムを入力してみましょう。
“`java:HelloWor

元記事を表示

Javaで何か作ってみる(2022/12/12 Day53)

## 今日やった事
– オブジェクト指向の動画教材を見た。(**J2-補講_正規表現** まで見た。)
## 参考にしたもの
– [Spring 入門 ~ SpringBoot 2 を使ってお問い合わせアプリとToDoアプリを作る ~](https://www.udemy.com/course/java_spring_beginner/)
– [【超初心者も必見】Javaプログラミングの「オブジェクト指向」が絶対理解できる講座【プロ講師が丁寧解説】](https://www.udemy.com/course/uz-java-obj/)
## 所感
– 発生する可能性がある例外は、throws節を用いて明示出来、throws節がついたメソッドを呼び出す場合は、
例外処理をしないとコンパイルエラーになるのは、便利だけど、忘れそうだから注意しないとなと思った。
– 正規表現は便利なので、使いこなせるようになりたい。

## 明日の予定
– 引き続き、動画教材を進めていく。

元記事を表示

App Service における Java SE stack への Jar デプロイの挙動

# はじめに
以前、[App Service における Tomcat アプリケーションへの war ファイルのデプロイについて](https://qiita.com/georgeOsdDev@github/items/c8184d7b8676f10982d9) と題して Tomcat 構成への war デプロイについて書きましたが、今回は Java SE Stack への Jar ファイルデプロイについて書きます。

https://qiita.com/georgeOsdDev@github/items/c8184d7b8676f10982d9

# TL;DR
– jar ファイルのデプロイには、Kudu publish API `/api/publish?type=jar` を使おう(azure-webapp-maven-plugin や AZ CLIも内部的にはこのAPIを呼び出している)
– Kudu publish API を使うとjar ファイルは、`%HOME%\site\wwwroot\app.jar`(Linux の場合は `$HOME/site/wwwroot/ap

元記事を表示

【java】基本構文(継承・オーバーライド編)

# はじめに
Java一年未満の方へ研修用
継承・オーバーライドに関して少し掘り下げて紹介

# 対象
・Java一年未満

# 継承とは
・あるクラスの状態と動作を別のクラスが引き継ぐことです。
・継承をすることによって、コードの効果的な再利用ができるようになります。

例えば消防車とトラックは両方とも車です。
以下の赤い文字の部分は共通しています。
![スクリーンショット 2022-11-27 14.10.01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2956190/c2667dc4-d42e-8ba2-7b40-d570e6937609.png)
車クラスをスーパークラスとして実装することで、消防車クラスとトラッククラスの実装が楽になります。
![スクリーンショット 2022-11-27 14.12.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2956190/04bafd9b-a3d7-902b-d8

元記事を表示

Javaのアノテーションを駆使してSOLID実装してみた

この記事は [Qiita x Code Polaris共催!女性ITエンジニアが作るアドベントカレンダー Advent Calendar 2022](https://qiita.com/advent-calendar/2022/qiita-code-polaris) 向けに書いたものです。

https://qiita.com/advent-calendar/2022/qiita-code-polaris


# はじめに
Qiitaで初めて記事を書きます。というか、技術記事自体初めて書きます。
しのといいます。Java Developerを5年くらいやってます。普段はドイツに住んでいて、イギリス企業へフルリモートで働いてます。

先日Code Polaris内でClean Archtectureについての勉強会をやったので、私がやったパートの、**クリーンアーキテクチャ的に考える幸福度の高い実装** の部分を記事でも残しておこうと思います。

動画はこちらでアーカイブが公開されています。喋っていることとほぼ同じ内容なのですが、少し補完などもあります。

https://y

元記事を表示

Lombokの内容整理①

## 目的
– ずっとなんとなく使っていたので、改めてこのタイミングで整理

## Lombokとは
– アノテーションをつけることでコンパイル時にコードを自動生成してくれるライブラリのこと
– 今回扱うアノテーション一覧
– [@Getter/@Setter](#@Getter/@Setter)
– [@ToString](#@ToString)
– [@EqualsAndHashCode](#@EqualsAndHashCode)
## @Getter/@Setter
##### 概要
– アクセサメソッドを自動生成
##### 使い方
“`java:Person
@Getter
@Setter
public class Person {
private String name;
}
“`
“`ja

元記事を表示

Javaの比較いろいろ

## Javaでの比較

Javaの比較でよく使われるのは下記3つ。
– `==`演算子
– `equals`メソッド
– `instansof` 演算子

## `==`演算子について
javaの世界にはプリミティブ型と参照型が存在します。プリミティブ型の値を作ると直接メモリに値が書き込まれます。プリミティブ型には`int`や`boolean`が存在します。`==`はJavaのプリミティブ型の比較を行う時に使用します。

“` java
int a = 10;
int b = 10;
int c = 20;

System.out.println(a == b); //true
System.out.println(a == c); //false
“`

また、Javaにはenumと呼ばれる列挙型があります。enumはクラスのように扱えますが、他のクラスでインスタンス化できず、enum内部で1度きりのみインスタンス化できます。つまりenumのインスタンスは、プログラムの中で一つということが保証されます。なのでenumも`==`比較を行うことができます。`==`はnullセーフな

元記事を表示

[JAVA]数当てゲーム

# はじめに

今回はJavaを利用して、「数当てゲーム」という練習をやってみようと思います。すごく簡単な問題ですが、自分の作ったゲームをやれば、すごく充実感を得ることができます。ぜひ一度ためしてみてください。

# 動作環境

– Window11
– Java SE 16

# フローチャート

![フローチャート.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2958501/647c67ca-a80e-f36e-1f85-886ebd9b22ed.png)

# ソースコード
“`java
package GuessGame;

import java.util.Random;
import java.util.Scanner;

public class GuessGame {

public static void main(String[] args) {
// 入力準備
Scanner scanner = new Scanner(System.in);
// Randomを

元記事を表示

MacOSからSpringBootアプリを動かすのに凄い苦労した話(IDE経由で動かすのではなく)

Spring BootアプリをMac OS上で直接、動かすのに凄い苦労したので、備忘録的に記載しておきます。

<何が課題か?>
IDE(IntelliJ)上で、Spring Bootアプリを構築して、IntelliJ経由で起動して、Webアプリケーションを動かす事はできた。
https://www.tairaengineer-note.com/intellij-idea-springboot-hello-world/
ただ、このフォルダーにOSから直接アクセして(IDE経由ではなく)、Javacコマンドでビルドしようとしても、エラーが発生して、ビルドできない。
理由は、IDE経由で動かす場合は、IDE自体の機能を各種利用しているであって、OSから直接叩くと、それらの機能が使えないので、一工夫というか、別のアプローチが必要となる。

<どうすれば良いか?>
その別のアプローチがここ。
→ https://qiita.com/hikarut/items/d1273f99e5b124a887bd
上のサイトがほぼ完璧だが、少なくとも私の環境では以下の様に、pom.xmlを設定しないと、エラ

元記事を表示

Javaで何か作ってみる(2022/12/11 Day52)

## 今日やった事
– オブジェクト指向の動画教材を見た。(**J2-06_static** まで見た。)
## 参考にしたもの
– [Spring 入門 ~ SpringBoot 2 を使ってお問い合わせアプリとToDoアプリを作る ~](https://www.udemy.com/course/java_spring_beginner/)
– [【超初心者も必見】Javaプログラミングの「オブジェクト指向」が絶対理解できる講座【プロ講師が丁寧解説】](https://www.udemy.com/course/uz-java-obj/)
## 所感
– staticは、必要な時だけ使用するようにする(メモリ食うからねー)
## 明日の予定
– 引き続き、動画教材を進めていく。

元記事を表示

Javaで何か作ってみる(2022/12/10 Day51)

## 今日やった事
– オブジェクト指向の動画教材を見た。(**J2-05_継承②** まで見た。)
## 参考にしたもの
– [Spring 入門 ~ SpringBoot 2 を使ってお問い合わせアプリとToDoアプリを作る ~](https://www.udemy.com/course/java_spring_beginner/)
– [【超初心者も必見】Javaプログラミングの「オブジェクト指向」が絶対理解できる講座【プロ講師が丁寧解説】](https://www.udemy.com/course/uz-java-obj/)
## 所感
– 継承については理解出来たと思う。
## 明日の予定
– 引き続き、動画教材を進めていく。

元記事を表示

Javaで何か作ってみる(2022/12/9 Day50)

## 今日やった事
– オブジェクト指向の動画教材を見た。(**J2-04_継承①** まで見た。)
## 参考にしたもの
– [Spring 入門 ~ SpringBoot 2 を使ってお問い合わせアプリとToDoアプリを作る ~](https://www.udemy.com/course/java_spring_beginner/)
– [【超初心者も必見】Javaプログラミングの「オブジェクト指向」が絶対理解できる講座【プロ講師が丁寧解説】](https://www.udemy.com/course/uz-java-obj/)
## 所感
– 継承については理解出来たと思う。
## 明日の予定
– 引き続き、動画教材を進めていく。

元記事を表示

FEの擬似言語をもとにHeapSortやってみた

import java.util.*;

public class HeapSort {

public static void main(String[] args) {

// 変数

Scanner sc = new Scanner(System.in);

System.out.println(“配列の要素数を入力してください”);
int n = Integer.parseInt(sc.next());
int data_array[] = new int[n]; // [20,50,10,30,70,40,60,80]

System.out.println(“配列の各要素を” + n + “回入力してください”);
for (int i = 0; i < n; i++) { data_array[i] = Integer.parseInt(sc.next()); } // ヒープ木の作成 for (int i = 1; i < data_array.length; i++

元記事を表示

#27 Spring Mybatisを利用したデータベース操作[4. 検索、全クリア]

# 27 Spring Mybatisを利用したデータベース操作[4. 検索、全クリア]
今回はMybatisを用いて検索、全クリア処理を記述していきます。

# 前提条件
この記事はSpringの最低限の知識が必要になります。
また、なるべく分かりやすく書くつもりですが、この記事の目的は自分の勉強のアウトプットであるため所々説明は省略します。

# 前回まで
前回はMybatisを利用してデータの更新・削除を行いました。

https://qiita.com/Jackoguro/items/bef394c50be8f31fa0fc

# 構築環境
1. 各バージョン
Spring Boot ver 2.7.5
mybatis-spring-boot-starter ver 2.2.2
Model Mapper ver 3.1.0
jquery ver 3.6.1
bootstrap ver 5.2.2
webjars-locator ver 0.46
thymeleaf-layout-dialect ver 3.0.0

2. 依存関係
![image.png](https://qi

元記事を表示

qiita始めてみた!(始めて数週間の初学者)

javaとawsとandroid studioを学習中!
覚えることは山ほどあるけどがんばります!
ところで「amazon web services 基礎からのネットワーク&サーバー構築」
という本は初学者にはハードルが高いのかな?完璧に読む必要がないだけ?
「エンジニアはめんどくさがりで効率を求める」とかよく聞くけど、基礎を勉強するうえでめんどくさいことは
避けては通れそうにないのかもね…
環境:windows10
基礎学習済:html,css,js,react,git,github,コンソール操作,SQL
(コンピューターはmacに変えたほうがいい?)

元記事を表示

【MOD】色塗り陣取りゲーム【Minecraft】

巷ではインクを塗り合って陣地を取り合うゲームが流行っているらしい。あいにく私はそのゲームができるハードを持っていない。とりあえずマイクラ上でできるようにMODを開発することにした。

# 方針
今回は地面に色を塗れる~~ブキ~~武器の実装のみに留めて、ゲーム要素は今後気が向いたら実装していくことにする。
まずは近距離の塗りと攻撃ができる~~ブキ~~武器「シューター」を実装してみる。以下のようなシステムを考えた。
**シューターをメインハンドに持って右クリック→インクを模したエンティティを発射→エンティティに当たればダメージ、地面に当たれば色を塗る**

この方針では、~~ブキ~~武器そのものの他にインクを模したエンティティを実装する必要がある。

# EntityInkの実装
インクを模したエンティティを`EntityInk`として実装した。コードを以下に示す。今回は分かりやすいようにダイヤモンドブロックに置き換えている。

“`java:EntityInk.java
public class EntityInk extends Snowball {
priv

元記事を表示

ABC281A~Eの解答[Java]

## はじめに
今回はCまでがコンテスト中、DとEはコンテスト後に提出したものを載せようと思います。

では見ていきましょう。

## A – Count Down
問題文は[こちら](https://atcoder.jp/contests/abc281/tasks/abc281_a)

whileでもforでも、どちらでも良さそうですね。
今回はwhileで実装しました。
“`A.java
class Main{

static final boolean autoFlush = false;
static final Library System = new Library(java.lang.System.in,java.lang.System.out,java.lang.System.err,autoFlush);

public static void main(String[] args){

//Nの受け取り
int N = System.in.nextInt();

//Nから0までを出力
System.out.println(N);

元記事を表示

OTHERカテゴリの最新記事