JetBrains社が開発している Java VM や JavaScript 上などで動く、型の強いオブジェクト指向プログラミング言語。 以下の項目を設計目標に掲げている。
エラー防止の機能はよく働いており、Javaですっかりおなじみ「ぬるぽ」ことNullPointerExceptionがこの言語では意図的にプログラミングしないと出てくれないらしい…。
非日常生活に入る前に 下書きをしていた記事があったことを思い出しました ARにハマっていて勉強中だったのに…すっかりリセットされてしまいました また日常に戻ったら1からやり直しかな(悲) その時のために まとめたものをアップしておきます 以前アップしたUnityのスマホをタップしてコダックを召喚 everydayisagoodday.hatenadiary.com これのAndroid Studio版ですAndroid StudioでもARアプリができるはずなのでいろいろ調べながら挑戦してみました が うまくいかず保留にしようかと思い始めた頃この記事に遭遇 qiita.com 解説通りにやって…
こんにちは、モバイル開発チームのhyoshです。 弊社では各分野の特定のテーマに沿ってエンジニアが議論する「TechCafe」というイベントを定期開催しています。 PHPTechCafe フロントエンドTechCafe そして先日私を含めた弊社モバイル開発チームが初となる「モバイルTechCafe」を開催しました! rakus.connpass.com 本ブログでは開催までの準備過程や当日の内容についてレポーティングさせていただきます。 TechCafeについて 準備編 テーマ選定 参加者選定 打ち合わせ 当日編 紹介したイベント 複雑さに立ち向かうためのコードリーディング入門 認証体験向上の…
ふと、Android で動作するデジタルアートを作りたいと思い立ち、衝動に身を任せて簡単なものを作った。そのとき学んだことを、忘れっぽい自分のためにメモしておく。 開発環境はAndroid Studio Electric Eel 2022.1.1 目次 準備 - アニメーション - ブレンドモード 本編 - クリエイティブコーディング アニメーション 一定時間ごとに、onDraw()を呼び出せば良い。invalidate()を使えば、onDraw()を強制的に呼び出すことができる。 Handlerを使う方法もあるが、今回はTimerAnimatorで実装してみる。 import ... //省…
むおおおお! 久しぶりに個人ブログを更新したけど、 個人的に脳内を整理するために書き散らしたエントリなので役に立たないかも。 Kotlin Flowを勉強する場合、例えば以下のサイトを流し読む方が役には立つハズ… 勉強するときに見たサイト Android での Kotlin Flow | Android Developers StateFlow と SharedFlow | Kotlin | Android Developers もう迷わないCoroutines(記事版〜余談編〜) Kotlin Coroutines Flow とは。 #Kotlin - Qiita StateFlowの深堀り…
昨日からの続きです 今日は各ボタンをタップした時の処理を編集します // カラーチェンジメソッド fun ChangeColor(colorSelected: String) { when (colorSelected) { "black" -> color = Color.BLACK "red" -> color = Color.RED "blue" -> color = Color.BLUE } paint!!.color = color } // clearメソッド(初期化とキャンバスクリア) fun Clear() { pathList.clear() colorList.clear(…
はじめに 株式会社スペースリー iOSエンジニアの樋川です。 普段は弊社サービスの、物件の撮影を補助/管理するアプリのiOSの開発をしています。 現在、モバイルアプリチームはマネージャー1人、iOS/Android 2名ずつの計5名の構成となっています。 今回は、モバイルアプリチームで行っているモバイルLT会について紹介したいと思います! LT会が始まった経緯 OSを横断して知識を共有する コミュニケーションを増やす 上記2点の機会を増やすために始まりました。 特に完全リモートワークの中で、チーム内のコミュニケーションの重要性が高まっています。 開催方法 頻度は隔週水曜日に1時間ほどです。 発…
今日は手書きメモアプリの描画するクラスCustomSurfaceViewを作成します CustomSurfaceView.ktを編集していきます import android.content.Context import android.graphics.Bitmap import android.graphics.Bitmap.CompressFormat import android.graphics.Bitmap.createBitmap import android.graphics.Canvas import android.graphics.Color import android…
今日は手書きメモアプリのMainActivity.ktの編集です import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.view.SurfaceView import android.widget.Button import android.widget.ImageView class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super…
今年は簡単なゲームをたくさん作りました 最近はUnityが面白くてUnityの方に比重が傾いていますがAndroid Studioも忘れない程度にはさわっています 久しぶりに簡単なメモアプリを作ってみたのでプログラム(kotlin)を製作段階順にアップしていきます まずは下準備としてres/drawableにcircle_button.xmlを作ります circle_button.xmlを編集 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/andro…
この記事はNTTドコモR&Dアドベントカレンダー2023の17日目の記事です。 こんにちは、NTTコノキューの中矢です。 業務ではUnity、C#と格闘しています。 本記事では、AndroidのNativeアプリにUnityで作った画面をモジュールとして組み込むことができるUnity as a Libraryを紹介します。 本記事が少しでもUnity as a Library初学者の参考になれば幸いです。 Unity as a Libraryとは Unity as a Libraryとは、ゲームエンジンUnityで開発した機能をAndroidやiOSのNativeアプリにモジュールとして組み込…
kotlin/JVMでコードを書いている時の事。MicrosoftのGraph APIを使用していました。bodyは無いコードです。Content-Lengthは制限されていて、手動では設定できません。 val result = HttpClient.newHttpClient() .send( HttpRequest.newBuilder(URI(url)) .header("Authorization", "Bearer $bearerToken") .method( "POST", HttpRequest.BodyPublishers.noBody() ) .build(), HttpR…
はじめに 会津大学学部三年のHAMADAです。すっかり春の陽気で、新学年に心躍らせている今日この頃です。さて今回は、CA Tech Dojo ~Android 編~ に参加した振り返りをしていこうと思います。 参加した経緯 2023年の6月ごろから、大学の先輩の勧めでAndroidを書き始めました。学内のハッカソンを始めとして、少しずつAndroid開発に取り組んでいました。しかし、個人の学習では、学び方に偏りがあるということをひしひしと感じていました。そこで、CA Tech Dojo ~Android 編~ (以下Dojoとします)に参加することで、体系的なAndroid開発の知識を身につけ…
IntelliJ Platform Pluginを作っている際、何らかの方法でメッセージをUI上に表示したくなりました。 実現方法を調べたところ、公式ドキュメントに Notification として記載がありました。 Notifications | IntelliJ Platform Plugin SDK そこで、各Notificationにて「改行ありのメッセージ」の表示をためしてみたときのメモを残します。 なお、今回は「ボタンをクリックしたらメッセージを表示する」形で実装します。 また、記事で説明に使う部分のみソースコードを記載しています。ToolWindowの登録方法など、ソースコード全…
Kotlin multiplatform 向け datetime ライブラリの Klock は昨年の8月にリリースされた 4.0.10 以降リリースされていないように見える。 参考: https://mvnrepository.com/artifact/com.soywiz.korlibs.klock/klock 実際は現在もメンテが継続されており、 korlibs-time という名前で公開されている。現時点で最新バージョンは 5.4.0。 https://mvnrepository.com/artifact/com.soywiz.korge/korlibs-time これは Klock が…
paiza timesを運営する弊社(paiza株式会社)は、2024年3月25日に東京都港区の虎ノ門二丁目タワーへオフィス移転をいたします。現在のオフィス稼働もあと一週間で、日数にするとたった10日。いよいよ来週より引っ越し準備ということで、本日はこだわりのオフィスを読者のみなさまにお知らせいたします。 「異能をのばせ。」を体現したオフィス 既にプレスリリースやnote記事などでお知らせの通り、新オフィスデザインは、、paiza株式会社のコンセプト「異能をのばせ。」です。出社とリモートのハイブリット勤務である弊社のオフィスの役割は「偶然を創造すること」。偶然を創造していくために「何通りもの答…
ただいまpaizaのスキルチェックで指定のプログラミング問題に正解すると、抽選でAmazonギフトカードが当たるキャンペーンを実施中です。初心者向けのDランク問題もありますので、ぜひお気軽に挑戦してみてください! キャンペーン概要 実施期間 2024年3月14日(木) 〜 3月24日(日) 23:59 応募条件 以下のキャンペーン対象問題に正解すること。1問でも全問でもOKです!Bランク問題「チョコの分割」 Cランク問題「お菓子の分配」 Dランク問題「飴の余り」※対象問題にすでに挑戦・提出をしたことのある方は、再挑戦での正解でOKです。 プレゼント内容 Bランク問題に正解:抽選で10名様に1,…
こんにちは、QAの木下です。 この記事では、ウェルスナビで実施している総合テストのうちの一つ、モバイルアプリのリグレッションテストを自動化し、工数の削減に成功した話について紹介します。
木曜日です。 やや、早起きができた(謎)。 この調子でやっていきたい。 労はXcodeパイセンが謎の動きをしまくっていてすごかった。 あとObjective-CのコードをSwiftから読もうとしたり、JavaのコードをKotlinから読もうとしたりするとOptional(Nullable)な値がまともに扱えなくてやばいことになるのなんとかしてほしい。 Optional(Nullable)を扱えないいにしえの言語、存在するべきでない。 労後はサイレントウィッチ7巻、英会話。 FF6が楽しくて無限にやっています。ガウとかモグとかの専用コマンドをいろいろ試しているだけで、どんどん時間が溶ける。 あと…
以前の記事では、テーブルの絞り込み条件を入力する項目として TextField を使っていました。 IntelliJ Platform Pluginの開発にて、ToolWindow上で、TextFieldの入力値に従って絞り込み可能なテーブル(JBTable)を表示してみた - メモ的な思考的な そんな中、JetBrains の Platform UI Guidelines を見ていたところ、 SearchTextField という項目がありました。 Search field | IntelliJ Platform UI Guidelines 公式ドキュメント User Interfrace …
手持ちのMacBook Airが古いため、特定Gemがインストールできないといったことがしばしば起こります。 DockerでRubyの開発環境を作ると、どんな感じになるのかイメージしたかったので、ChatGPTにいろいろ聞いてみました。 最近、10年ほど前に買ったMacBook AirでRubyのプログラミングをすると、うまく動かないことが多いです。どうしたら良いでしょうか? Dockerを用いる方法について、教えてください。 挙げていただいた方法は、内部的にはどのようなことをしているのでしょうか? 一連のコマンドで生成されるコンテナは、どの端末で実行しても全く同一になるのですか? Docke…
まとめておきたかったので、聞いてみました。 ついでにKotlin, Javaでの操作も確認しましたが、Rubyはやはり、簡潔で良いですね。 Rubyで文字列に対して正規表現を用いた操作をするメソッドについて教えてください。 それぞれの手段の使い分けの目安があれば教えてください。 matchの使い方や利点がよく分かりません。 グループへのアクセスについては、scanで抽出した各配列の要素や、gsub等で$0, $1などをもちいてアクセスする方法もありますよね。 matchで、同じパターンに一致する部分が複数あるときはどのような操作になりますか? KotlinでRubyのgsub()のような操作は…
Ruby1.9から、Rubyのハッシュは順序を保持しているそうで、組み込みのsort_byなどのメソッドを使ってソートもできるようです。 ただ、sort_byの戻り値はキーと値のペアの配列なので、さらに.to_hを呼び出す必要があります。 rubyのハッシュで、keyの順序を保持するものはありますか? この順序をソートして変更することは出来ますか? ありがとうございます。ところで、ハッシュって通常は順序を保持しませんよね。他の言語ではどうなっていますか? kotlinではどうですか? JavaやKotlinだと、少しややこしくなりますね。 TreeMapを用いた通常のHashMapのソート例を…
以前、TextFieldの入力値により、テーブルの値を絞り込むことをためしてみました。 IntelliJ Platform Pluginの開発にて、ToolWindow上で、TextFieldの入力値に従って絞り込み可能なテーブル(JBTable)を表示してみた - メモ的な思考的な 以前は部分一致のみの絞り込みを実装しました。 ただ、設定により 部分一致 前方一致 を切り替えたくなったため、ためしてみたときのメモを残します。 目次 環境 仕様について ToolWindow上のボタンをクリックすると、設定ダイアログを開くようにする DialogWrapperを継承したダイアログクラスを用意す…
はじめに 先日Server-Side Kotlin MeetupのLT大会で登壇してきましたので、その内容をブログ記事でも公開します。 テーマはKotlin製のORマッパー、Ktormのクラス構造と機能拡張についてです。 Ktormの紹介 ktorm.org Ktormは、いくつかあるJDBCベースのKotlin製ORマッパーのうちの1つです。 それらの中でもっともメジャーと思われるExposedと比較すると、次のような特長があります。 シンプルな実行モデル 遅延実行やキャッシュなどの仕組みを持たないので、コードを読んで理解しやすく、SQLの実行タイミング等も把握しやすいです。 生SQLに近い…
はじめに 今回は Android アプリ開発において、健康に関するデータを一元管理し、他のフィットネスアプリや健康アプリと連携が行える ヘルスコネクト を用いた開発手法についてまとめたいと思います。 なお、以前 iOS のヘルスケアアプリ連携についてもまとめた記事を公開していますので、iOS 側にもご興味があればぜひ こちら の記事もご覧ください。 ヘルスコネクトとは ヘルスコネクトは API やライブラリではなく一つのアプリで、健康に関するデータを管理できる新しいプラットフォームとなります。 ヘルスコネクトで健康データを一元管理し、その情報を Google Fit などの健康アプリと連携する…