転職を繰り返したサラリーマンの多趣味ブログ

30才未経験でSEに転職した人の多趣味ブログ

プログラミング

【技術書メモ】C#プログラミングのイディオム / 定石&パターン③

ラムダ式 ラムダ式は一種のメソッドで、メソッドをかなり簡略化することができる。 public void Do() { var numbers = new[] { 5, 3, 9, 6, 7, 5, 8, 1, 0, 5, 10, 4 }; // 変数judgeに処理内容を代入 Predicate<int> judge = (int n) => { if (n % 2 == 0) { ret</int>…

【技術書メモ】C#プログラミングのイディオム / 定石&パターン②

C#についてがっつり勉強しようと思い、購入した技術書。 まだまだ序盤だが、評判通りのかなりの良書の予感。 uuc1h.hatenablog.jp では、前回同様、まとめていきたいといきます。 複数の値の代入方法 このやり方は知らなかったので、メモ。 for (int feet = …

【Unity】Unity2019.1.5f1でAndroid Buildをしようとしたら、「gradle build failed」と出てしまったときの対処方法

複合的な問題でした。まずUnity2019では、Android SDK & NDK Toolsを一緒にインストールしている。そのため、Preferencesより、インストールしたファイルのパス設定を行った。自分が確認したときは、ズレていた。詳しくは、以下参照。https://framesynthesis…

【技術書メモ】C#プログラミングのイディオム / 定石&パターン①

趣味で、Unityでゲームを作っているが、C#についてちゃんと勉強したことがない。 そのため、ここらでC#について基礎から学ぼうと思い、以下の技術書を読んだ。 uuc1h.hatenablog.jp 入門としては、最適な良書だと思う。 そこで、次に入門書の一歩先の技術書…

【技術書メモ】確かな力が身につくC#「超」入門

Unityをメインにアプリ開発をしているが、Unityで使用する言語はC#だ。 自分は仕事でJavaを使っているからC#も何となく理解できるが、ここらで一度C#を学んでおきたいと思う。 そこで手に取ったのが、この「確かな力が身につく」シリーズだ。確かな力が身に…

アプリ開発初心者が作ったアプリは、本当に売れるのか?③_アプリを作る場合、自分ができる範囲を自覚することが重要

まさに表題の通りです。GWが終わり仕事が始まると、そもそも家で開発できる時間がなかなか確保できない。 けど、ここでやめてしまうとせっかく勉強を始めたのに勿体ないので、何とか少しずつでも開発を行っていました。 ちなみに完成したアプリは、こんな感…

アプリ開発初心者が作ったアプリは、本当に売れるのか?②_さっそくアプリを1つ作り、Google Play Storeへ公開した

前回の記事がこちら。 uuc1h.hatenablog.jp さて、Androidを買ったし、PCはWindowsだし、Javaならちょっと分かるしということで、Android Studioでアプリ開発をやっていこうと、前回のブログで決意表明しました。そこで、さっそくAndroid開発の本を購入。そ…

アプリ開発初心者が作ったアプリは、本当に売れるのか?①

もう何度も本ブログで書いているが、自分は30歳からプログラミングを始めた。始めたきっかけは、IT会社に転職したからだ。せっかくプログラミングを覚えたから、プライベートでも何か作ってみたいと挑戦中なのが、Unityを使ったゲーム製作だ。素人なりにいろ…

Kotlinまとめ

変数と定数 // 変数 var a : Int = 10000 // 定数 val c : Double = 12345.6 文字列 // 文字列比較は「==」で行う if (str == "Kotlin") // 文字列テンプレート val i = 10 print("i = $i") // i = 10と出力される // 文字列テンプレート2 val s = "Kotlin" …

iPhoneアプリ第3弾を公開しました!30歳からプログラミングを始めても、ゲームは作れる!

朝食:ポテトサラダ入りサンドイッチ昼食:キーマカレー夕食:レタスのサラダ、フライドチキン、味噌汁 今日は、夕食に白米を抜いてみた。過去最高体重になったので、炭水化物を徐々に抜いてきます。あと、リンゴ酢を飲み始めて、早四日目。うん、体調に全く…

好きなことをやって、生きていきたいですよね。

朝食:スティックパン昼食:白米、生卵、納豆、野菜スープ、卵焼き、シュウマイ、魚のフライ夕食:白米、春雨中華炒め 今日、ココナラというサービスを見つけた。 coconala.com いわゆる、クラウドソーシングサービスだと自分は理解した。けど、こういうのっ…

【Java】JavaとDBへの連携を復習

データベースの作成 RDBMSは、H2を使います。 JDBC URLのことをすっかり忘れていたのでおさらい。 「JDBC URL」に設定するのは、接続文字列。接続文字列について jdbc:h2:tcp://localhost/~/baseball h2 = サブプロトコル tcp://localhost/~/baseball = サブ…

【Java】選手情報を入力できるフォームを作ってみた。

サーブレットを勉強したので、復習も兼ねて、どんどんアウトプットしていこう企画第2弾。HTMLのフォームから、サーブレットに渡して、フォームの内容を表示するというこれまた単純なもの。 フォームで入力した内容が、以下のように表示される。 今はただ表…

【Java】打率を計算できるWebサービスをサーブレットで作ってみた

最近、サーブレットを勉強していたので、その勉強内容を基にアウトプットをしていこうと思う。ちなみに勉強した内容は、以下の通り。 uuc1h.hatenablog.jp 作ったものは、非常に単純で、HTMLのフォームで打数と安打数を入力すれば、サーブレットで打率を計算…

【技術書メモ】基礎からのサーブレットまとめ

uuc1h.hatenablog.jp uuc1h.hatenablog.jp uuc1h.hatenablog.jp uuc1h.hatenablog.jp uuc1h.hatenablog.jp uuc1h.hatenablog.jp uuc1h.hatenablog.jp uuc1h.hatenablog.jp uuc1h.hatenablog.jp uuc1h.hatenablog.jp uuc1h.hatenablog.jp uuc1h.hatenablog.jp…

【Unity】ゲーム製作日記 iOSアプリ第3弾を作り始める

iOSアプリをAppStoreへ公開するまでの流れは一通り分かったので、次は色々こだわったゲームを作ろうと思う。けど、まだまだ自分ができることは少ないので、あくまで出来る範囲で。 まずは今作っているゲームの概要から。基本は「落ちゲー」で、ひたすら落下…

【Unity】iPhoneアプリ第2弾を公開しました。プログラムを覚えたら、何かを作ろうというがそれが結構難しい。

コツコツとUnityを使ったアプリ製作を続けてます。 uuc1h.hatenablog.jp 自分は全くのド素人から30歳でSEに転職し、プログラムを覚えた。プログラムを覚えるために様々な入門書を読んだ。オススメな入門書は、やっぱりサンプルがついているタイプ。本の通り…

【Unity】オーディオソースをソースコードで制御し、鳴らす方法

AudioSourceコンポーネントをアタッチし、AudioClipにアタッチしておく。 private AudioSource shotSound; void Start () { shotSound = GetComponent<AudioSource>(); } void shot() { shotSound.Play(); }</audiosource>

【Unity】BGMを鳴らす方法

Main CameraのAudio Sourceコンポーネントに、オーディオソースをアタッチする。・Loopにチェックを入れる。・Play On Awakeにチェックを入れる。

【Unity】GameObjectをn秒後に削除する方法

public float lifeTime = 3.0f; void Start () { Destroy(gameObject, lifeTime); }

【Unity】プレイヤーの移動範囲を画面内に制限する方法

void Clamp() { // 画面左下のワールド座標をビューポートから取得 Vector2 min = Camera.main.ViewportToWorldPoint(new Vector2(0, 0)); // 画面右上のワールド座標をビューポートから取得 Vector2 max = Camera.main.ViewportToWorldPoint(new Vector2(1,…

【Unity】ゲームスタートからの秒数をUIに表示し、記録をつけるスクリプト

public class GameManager : MonoBehaviour { public Text time; public Text highTime; private int seconds; private void Start() { StartCoroutine(CountTime()); } // Update is called once per frame void Update () { time.text = "時間:" + second…

【ゲーム開発記】赤いボールを撃ち落とせ①

unityroomにあげる用のゲームを作り始めた。ちなみに前回unityroomに投稿したゲームは、閲覧数が100を超えてた。作ったゲームが実際に遊んでもらっていることが分かったので、非常にうれしい。 赤いボールからひたすら逃げろ | 無料ゲーム投稿サイト unityro…

【Unity】マウスをクリックしたら、弾を発射する方法

public GameObject bullet; // Update is called once per frame void Update () { if(Input.GetMouseButtonDown(0)) { shot(); } } void shot() { Instantiate(bullet, transform.position, transform.rotation); } ちなみに、弾の方のスクリプトは以下。 p…

【Unity】GameObjectをキーボードで操作する方法②

public float speed = 10; Rigidbody rb; void Start () { rb = GetComponent<Rigidbody>(); } // Update is called once per frame void Update () { float x = Input.GetAxisRaw("Horizontal"); float y = Input.GetAxisRaw("Vertical"); Vector2 direction = new Vec</rigidbody>…

【Unity】シーンの再読み込み方法

>|cs| // 現在のシーン番号を取得 int sceneIndex = SceneManager.GetActiveScene().buildIndex; // 現在のシーンを再読込する SceneManager.LoadScene(sceneIndex); ||

【Unity】ハイスコアの保存と表示

// ハイスコアを更新 if(PlayerPrefs.GetInt("HighScore") < allSeconds) { // ハイスコアの保存 PlayerPrefs.SetInt("HighScore", allSeconds); } // ハイスコアの呼び出し highScore.text = "HIGH SCORE:" + PlayerPrefs.GetInt("HighScore"); // 変更され…

【Unity】Prefabから自動生成する際、生成位置をランダムにする方法

Vector3 vector3; public void createEnemy() { vector3 = new Vector3(Random.Range(-5.0f, 5.0f), transform.position.y, transform.position.z); // Enemyを作成する GameObject enemy = (GameObject)Instantiate(enemyOrigin, vector3, Quaternion.ident…

【Unity】Prefabからゲームオブジェクトを自動生成する方法

1.GameObjectを作成し、以下スクリプトをアタッチする。 public class Emitter : MonoBehaviour { // Enemyプレハブを格納する public GameObject enemyOrigin; public void createEnemy() { // Enemyを作成する GameObject enemy = (GameObject)Instantiate…

【Unity】秒数をカウントし、UIに表示する方法

1.GameObjectを作成し、以下のスクリプトをアタッチする const int RecoSeconds = 10; // Textオブジェクト public Text time; private int seconds = 0; // Update is called once per frame void Update () { // UI time.text = "TIME:" + seconds; // sec…