2011年にGoogleがJavaScriptを置き換える新しいウェブプログラミング言語の標準化を目指して公開したプログラミング言語。 Java風の構文を持ち、クラスベースのオブジェクト指向プログラミングをサポートする。また、Isolateというshared nothingなスレッド機構を持つ。
記述されたプログラムは「Dart VM」と呼ばれる仮想マシン上で動作する。またライブラリ「dart2js」でJavaScriptへ変換でき、Dartをサポートしていないブラウザでも実行可能。
*1:Google Developers Blog: Dart 1.0: A stable SDK for structured web apps
*2:Chromium Blog: Ecma forms TC52 for Dart Standardization
1月なので何か新しいことでもやってみようかと思い、Flutterでのアプリ開発に足を踏み入れてみることにした。ただしその前に、Flutter開発に必要なDart言語が全くの初見だったので基礎の学習から始めた。Dartの自己学習中に引っかかった部分やDart特有の機能などについて調べた際のメモが結構貯まったので、せっかくなので項目別に整理してまとめることにした。 環境 Dart SDK 2.18.6 使用した参考書 学習メモ Null Safetyについて StringBufferでの文字列の連結 データ型の確認と比較 whereType()とwhere() 複数条件でのMapリストのソート M…
エキサイトの武藤です。 Flutterで多言語対応をする際、基本的にはWidget内でBuildContextからAppLocalizationsを呼び出して利用します。 しかし、複雑なロジックが必要な表示テキストの場合、Viewでそのロジックを書いてしまうとViewのコードが肥大化してしまいます。 その場合、View以外に表示テキストの生成処理を行うようになると思います。 今回は、RiverpodのProviderで表示テキストの生成を行う方法について説明します。 実行環境 l10nを使ったテキストの表示 ロジックを含む表示テキスト l10nを取得するBuildContext を扱うユニット…
ワールドカップの見すぎでflutterを怠っておりましたのでワールドカップも見つつ頑張ります。前のパートでルーレットのアプリを簡単に作りました。 今回はいろいろ改良を加えてみようかなのパートとなります ルーレットの中身を自分で入力しよう 今までAさん~Hさんで分けてきましたが、これを自分で入力できるようにします とりあえず書いてみる main.dart import 'package:flutter/material.dart'; import 'package:myapp1/screens/roulette.dart'; import 'package:myapp1/screens/home…
エキサイトの武藤です。 Flutter 開発を通して、freezed でのJSONの扱いに慣れてきました。 今回は freezed, json_annotation パッケージの基本的な使い方やTIPSをまとめていきます。 @JsonKey アノテーション name プロパティー defalutValue プロパティー fromJson プロパティー カスタムゲッター、メソッドを追加する build_runner watch でコード変更を監視 まとめ 余談 参考記事 各種パッケージについて Dartのアップデートの内容について @JsonKey アノテーション json_annotation…
タイトルのとおりですが、flutter buildができなくなりました。きっかけはbuild時に 「~/.gradle/caches のバージョンが〜」というwarningが出ていたのでcacheディレクトリだから消せばいいかと考えて消したことでした。ネットで情報を探していると ~/.gradle/caches を消せばいい ~/.AndroidStudio4.0/system/caches を消せばいい Android Studioを開いて、「File → Invalidate cache & restart」をすればいい など色々あったのですが、全部うまく行きませんでした。結局、 rm -…
こんにちは、モバイルクライアントグループの中島です。 ついこの間、約300~400年に一度のイベントがありましたね。 皆既月食+惑星食、道ゆく人が皆空を見上げていたのが印象的でした。 自分は残念ながら天体観測用の環境やカメラなどがなかったため、スマホのカメラでそれらしい写真を撮影するに留まりました。 www.youtube.com さて、今回はFlutterのお話をします。 11/16~18に行われる FlutterKaigi 2022 、自分もプロポーザルを提出したのですが、残念ながら落選してしまいました。 fortee.jp これから話すのは、採択されていたら話そうと思っていた話の一部です…
本エントリではFlutter/Dartにおけるループ処理の使い方について説明する。 ループ処理とは Flutter/Dartにおけるループ処理 ループ処理 for 文法 例 for...in 文法 例 forEach 文法 例 while 文法 例 do while 文法 例 ループ処理とは 特定の処理を何度も繰り返す処理のこと。 プログラミング言語であれば、基本的にどの言語でも実装されている仕組み。 Flutter/Dartにおけるループ処理 以下のループ処理が使用できる。 for for…in forEach while do while 以下でそれぞれの記述方法を説明する。 ループ処理 …
Ichiroです。惑星衝突なんて映画の中の話?って事でも無いようですよね。実際に今の地球は、そんな小惑星の衝突があったから人類が生きてるようなところもあり..。最近は衛星のゴミなどが地球上に落下するような事件も起こっていますが、宇宙の彼方から飛んでくる星の欠片たち..。そう、地球に当たる可能性はあるんですよね。 そんな惑星衝突を避けるための実験がNASAによって行われています。 直径が150mくらいの小さな惑星しか動かせないようではありますが..。 そんな小惑星の発見に向けてのNASAは考えているとか。ありがたいこっちゃ!何事も、備えあれば憂いなし?一気に気温の下がる日があって、「先週は短パン…
本エントリではDateTimeクラスの使用方法を説明する。 DateTimeとは インスタンス生成 コンストラクタを利用 DateTime() DateTime.now() DateTime.utc() 文字列をパース プロパティ 各時刻桁 isUtc timeZoneName timeZoneOffset weekday 日付と時刻の操作 時間を足す 時間を引く 一致・不一致を確認 差分を取得 時刻の前後関係を取得 フォーマットを指定して日時を表示する インストール フォーマットの指定 DateTimeとは api.flutter.dev 日付と時刻に関する情報を扱うクラス。UNIXエポック…
エキサイト株式会社の武藤です。 Flutterを使ったアプリ開発のプロジェクトにジョインしました。 Dartを触ってみて、コンストラクタにいくつか種類があることがわかったので、整理してみたいと思います。 コンストラクタ デフォルトコンストラクタ 名前付きコンストラクタ リダイレクトコンストラクタ 定数コンストラクタ ファクトリコンストラクタ 終わりに 参考文献 コンストラクタ 通常のコンストラクタです。コンストラクタ引数をプロパティーにセットします。 class Book { String title = ''; Book(String title) { this.title = title;…
概要 参考情報 概要 いつのまにか、Flutter 3.7 がリリースされていたので、自分用にリソースをメモメモ。。。 $ flutter --version Flutter 3.7.0 • channel stable • https://github.com/flutter/flutter.git Framework • revision b06b8b2710 (6 days ago) • 2023-01-23 16:55:55 -0800 Engine • revision b24591ed32 Tools • Dart 2.19.0 • DevTools 2.20.1 以下、順不同です…
エンジニア・プログラマーの学習に約立つコンテンツのセール情報を集めました 1位 現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル ¥27,800 → ¥1,900 93%OFF!! ⭐ ⭐ ⭐ ⭐ (19,681件) 現役シリコンバレーエンジニアが教えるPython入門!応用では、データ解析、データーベース、ネットワーク、暗号化、並列化、テスト、インフラ自動化、キューイングシステム、非同期処理など盛り沢山の内容です! 2位 【キカガク流】人工知能・機械学習 脱ブラックボックス講座 - 初級編 - ¥15,800 → ¥1,800 …
オジさんの科学vol.085 2023年1月号 小惑星に探査機をぶつけて軌道を変えよう、というNASA(米航空宇宙局)のミッション。1年程前に探査機(DART)の打ち上げを紹介しました(2021年12月号)。このミッションが、昨年9月に遂行されました。そこで今回は、その衝突の様子と結果を紹介します。 たくさんある危険な天体 1908年シベリアで起こったツングースカ大爆発。直径50~60mの隕石が空中で爆発したと推測されています。東京都ほどの面積で針葉樹がなぎ倒され、1、000㎞離れたところの窓ガラスが割れました。 そして2013年、同じロシアのチェリャビンスクに落ちた直径17mの隕石。上空20…
はじめに Flutter 開発環境の構築について、遭遇したエラーなどのつまずいた点、分からなくて調べた点などを含めて書き出します。 環境 MacBookPro(Intel チップ) macOS Monterey バージョン 12.6.1 VS Code(Visual Studio Code) バージョン: 1.74.3 目次 はじめに 環境 目次 1. Flutter のインストール 2. PATH を通す 2-1. PATH を通す前に、「PATH が通っていない」とは 2-2. PATH を通す 3. Flutter の実行に必要なものの確認 おわりに 参考 1. Flutter のインス…
エンジニア・プログラマーの学習に約立つコンテンツのセール情報を集めました 1位 現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル ¥27,800 → ¥1,900 93%OFF!! ⭐ ⭐ ⭐ ⭐ (19,666件) 現役シリコンバレーエンジニアが教えるPython入門!応用では、データ解析、データーベース、ネットワーク、暗号化、並列化、テスト、インフラ自動化、キューイングシステム、非同期処理など盛り沢山の内容です! 2位 【キカガク流】人工知能・機械学習 脱ブラックボックス講座 - 初級編 - ¥15,800 → ¥1,800 …
概要 fvm を使って flutter のバージョンを 3.7.0 にあげたのち、flutter doctor をしてみたら、エラーが出た。 エラー [!] Flutter (Channel stable, 3.7.0, on macOS 13.1 22C65 darwin-arm64, locale ja-JP) ! Warning: `dart` on your path resolves to /opt/homebrew/Cellar/dart/2.18.5/libexec/bin/dart, which is not inside your current Flutter SDK ch…
1: 風吹けば名無し 2022/03/30(水) 10:51:29.93 id:OdTA9bSE0 Todo アプリが作れないンゴオオオおおおおおおお
開発には MacBook Proを使っているが、Flutter でのデバッグ実行で最速なのは「macOS (desktop)」だと思う。そのため画面遷移のテストなどは macOSアプリで動作確認している。 現在、Twitter APIを利用するアプリを開発しているが、煩雑なログイン処理のため twitter_login を利用している。Twitter API を oauth1 で利用したい場合には唯一無二のライブラリパッケージである。欲を言えば Flutter Web*1でも使いたいのだが現在のところ非対応である。対応が難しいのかもしれない。 pub.dev macOSアプリでTwitterの…
エンジニア・プログラマーの学習に約立つコンテンツのセール情報を集めました 1位 現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル ¥27,800 → ¥1,900 93%OFF!! ⭐ ⭐ ⭐ ⭐ (19,654件) 現役シリコンバレーエンジニアが教えるPython入門!応用では、データ解析、データーベース、ネットワーク、暗号化、並列化、テスト、インフラ自動化、キューイングシステム、非同期処理など盛り沢山の内容です! 2位 【キカガク流】人工知能・機械学習 脱ブラックボックス講座 - 初級編 - ¥15,800 → ¥1,800 …
FlutterアプリにFirebaseを導入した。pub get後に関数(analyticsのメソッド)を呼び出したらエラーが発生した。 E/flutter ( 6837): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: Binding has not yet been initialized. E/flutter ( 6837): The "instance" getter on the ServicesBinding binding mixin is only available once t…
エンジニア・プログラマーの学習に約立つコンテンツのセール情報を集めました 1位 現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル ¥27,800 → ¥1,600 94%OFF!! ⭐ ⭐ ⭐ ⭐ (19,651件) 現役シリコンバレーエンジニアが教えるPython入門!応用では、データ解析、データーベース、ネットワーク、暗号化、並列化、テスト、インフラ自動化、キューイングシステム、非同期処理など盛り沢山の内容です! 2位 【キカガク流】人工知能・機械学習 脱ブラックボックス講座 - 初級編 - ¥15,800 → ¥1,600 …
エンジニア・プログラマーの学習に約立つコンテンツのセール情報を集めました 1位 現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル ¥27,800 → ¥1,600 94%OFF!! ⭐ ⭐ ⭐ ⭐ (19,643件) 現役シリコンバレーエンジニアが教えるPython入門!応用では、データ解析、データーベース、ネットワーク、暗号化、並列化、テスト、インフラ自動化、キューイングシステム、非同期処理など盛り沢山の内容です! 2位 【キカガク流】人工知能・機械学習 脱ブラックボックス講座 - 初級編 - ¥15,800 → ¥1,600 …
flutter.dev Flutter Forwardをライブ視聴しました。 Flutterはまだまだ初心者だし、英語なのでますますわからんのですが、まぁ、ライブに来ているようなつもりで楽しみました。 気になったのは… Material3 非推奨メッセージなどを出してくれるようで、移行は簡単だそう。 WebAssembly jsに変換せずに直接実行できるので速いらしい。 3Dオブジェクトのリアルタイムレンダリング、ホットリロード イルカのカイルを実装できるんじゃ…? それはそうと、ただ楽しそうw スマホにくっついている万歩計などのデバイスをFlutterから使えそうな感じだったけど、どうなんだ…