並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 51件

新着順 人気順

非同期プログラミングの検索結果1 - 40 件 / 51件

  • ペペロンチーノで学ぶ非同期プログラミングによる並行処理 - Qiita

    非同期プログラミングについて、イメージだけを超速で掴むための記事を書きました。非同期プログラミングが全くわからない人、具体的には、「async await ってなに……?」「for 文で実行していくのと何が違うの……?」レベルの人を想定しています。 非同期プログラングって何? 同期的じゃないプログラミングです。同期的ということは、プログラムが上から下に順々に実行されるということです。つまり、普通のプログラムはだいたい同期的です。言い換えれば、非同期プログラミングは順番が入れ替わる(可能性)のあるプログラムです。なぜそんなことをするかについては後述します。 ペペロンチーノを作りたい あなたはペペロンチーノを作りたいとします。以下のタスクが必要です。 パスタを茹でる(5 分) ニンニクを切る(1 分) ソースを作る(4 分)、ただしニンニクを切っている必要がある 盛り付けをする(0 分)、ただ

      ペペロンチーノで学ぶ非同期プログラミングによる並行処理 - Qiita
    • Unityを通じて3D空間、グラフィックを理解する

      はじめに ゲーム開発の旅を始める上で、開発者が最低限理解すべきコンピュータの基本的な仕組み、グラフィックスの原理、そしてスクリプティングの技術について、本記事では詳しく掘り下げていきます。 コンピュータの心臓部であるCPUとGPUの役割と相互作用から始め、これらがどのようにして3D空間のレンダリングやアプリケーションの実行に影響を与えるかを解説します。 Unityエンジンを用いたゲーム開発では、これらのハードウェアコンポーネントの理解が不可欠です。 続いて、ゲーム開発におけるグラフィックスの基礎を学びます。 ここでは、ビルトインレンダーパイプラインから、より高度なUniversal Render Pipeline (URP) やHigh Definition Render Pipeline (HDRP) まで、Unityで利用可能なレンダリングパイプラインの違いとその選択がプロジェクトに及

        Unityを通じて3D空間、グラフィックを理解する
      • 【Python】ChatGPT効率化の為に非同期処理を実装|Clirea

        非同期処理は、データ解析、APIリクエスト、ベクター化など多様なタスクにおいてパフォーマンスを向上させる鍵となる技術です。特に、待ち時間が発生しやすい多数のリクエストや処理を一度に効率よく処理したい場合、この技術は不可欠です。 非同期処理と並列処理の違い非同期処理と並列処理は、よく一緒に取り上げられることが多いですが、実はそれぞれ異なる目的と特性を持っています。 非同期処理非同期処理は、I/O待ち(ディスクへの読み書きやネットワーク通信など)といった待機時間を有効に使いながら、他のタスクを進める技術です。この方法で、全体のプログラムがスムーズに動作します。 並列処理一方で、並列処理は複数の処理を物理的に同時に行う技術です。簡単な例でいえば動画です。動画の再生と音声の再生を遅延が無いよう同時に行っています。 並列処理により、大量のデータ処理や高度な計算を高速に行えます。 まとめ簡単に言えば、

          【Python】ChatGPT効率化の為に非同期処理を実装|Clirea
        • 【Kaigi on Rails 2023】発表資料まとめ - Qiita

          2023/10/27, 28 に行われた Kaigi on Rails の資料まとめです。 資料が公開され次第、内容を更新します。公開済みのURLがあれば教えてください。 10/27 スケーラブルActive Jobs with Sidekiq Enterprise (スポンサーLT) Rails アプリの 5,000 件の N+1 問題と戦っている話 HTTPリクエストを手で書いて学ぶ ファイルアップロードの仕組み 生きた Rails アプリケーションへの delegated types の導入 Async Gem で始める ruby 非同期プログラミング Exceptional Rails やさしいActiveRecordのDB接続のしくみ Update Billion Records 初めてのパフォーマンス改善〜君たちはどう計測す(はか)るか〜 Simplicity on Rails

            【Kaigi on Rails 2023】発表資料まとめ - Qiita
          • 2024 年 Django の現状 | The PyCharm Blog

            Django 開発の最新トレンドを知りたいですか? PyCharm は Django Foundation と連携して世界中 4,000 人以上の Django 開発者を調査し、その回答を基にフレームワークの使用に関するトレンドを解析しました。 このブログ記事では、次のような主な結果をご紹介します。 Django 開発者の 3 人に 1 人が Flask または FastAPI も使用している。 ほとんどの開発者がフルスタック開発と API 開発の両方に Django を使用している。 Django 開発者の 61% が非同期テクノロジーを使用している。 その他にも多くのインサイトがあります! これらの結果を詳しく確認し、インフォグラフィックによる図説も利用しながら Django 開発のその他のトレンドを発見しましょう。 バックエンド: Django 開発者 3 人に 1 人が Flask

              2024 年 Django の現状 | The PyCharm Blog
            • HTTPサーバーを書くための言語が不在だと思う

              tl;dr 今ある選択肢で十分にHTTPサーバーを書ける 言語組み込みの機能のみでHTTPサーバーを書けるように、デザインされた言語はないと思う サーバー開発に特化した言語があってもいいのではとふと思った はじめに 最近いくつか新規開発をする機会があって言語の選定に頭を悩ませた。要件や状況やチームに応じて言語選択の正解は変わるとは思うので、現実に合わせて妥協するしかないのだが、選択に際してそもそも HTTP サーバーを書くことを意識して設計された言語がないような気がした。いま自分達がHTTPサーバーを作れているのは、汎用プログラミング言語とエコシステムの力、そして開発者の取捨選択と創意工夫のおかげだと思う。それで十分に間に合っていると思う。 なのにどうしてHTTPサーバー用の言語があるかどうかを気にするかと言うと、サードパーティのエコシステムに頼りたくないからだ。それは長期的なメンテナンス

                HTTPサーバーを書くための言語が不在だと思う
              • 2023/10/07(土)の出来事 - My Bookmark

                ジャニーズ会見「望月衣塑子記者の暴走」を見た東京新聞記者たちの本音「迷惑なんですが…上層部は問題にしていません」 | デイリー新潮 【Ubuntu日和】 SSH使うなら、これだけは覚えておきたい話 海外「気持ちは分かる(泣)」日本でハチ公に恋した幼児にハチ公映画を見せた結果大変な事に 独自の製造技術情報を中国企業へ提供したとみられる事案についてまとめてみた - piyolog 弊社に関する一部インターネット記事について | Johnny & Associates 除名も? 鈴木宗男氏 ロシア訪問で党の処分に反論|FNNプライムオンライン 「ジャニーズ事務所は記者会見のやり直しを」〜ジャーナリスト有志が東山紀之社長らに公開質問状 – Arc Times [第1話]対世界用魔法少女つばめ - マポロ3号 | 少年ジャンプ+ 「この“NG”という言葉がね、非常に…」“ジャニーズ茶番会見”NGリス

                • Django資産を活用できる!Django Ninjaのススメ - クロスマート Tech Blog

                  こんにちは。クロスマートで請求書を始めとした帳票サービスの開発を行っているDev2 テックリードのたけじい(@pouhiroshi)です。 先月は pytestを並列実行してCIを倍速にした話 - クロスマート Tech Blog と言う記事を寄稿させていただきました。 まだご覧になってない方はぜひそちらも読んでみてください。 Django上でREST APIを快適に開発する「Django Ninja」 DjangoはPythonで最も人気のあるウェブフレームワークの一つです。その柔軟性と強力な機能により、多くの開発者に選ばれています。しかしREST APIの開発においては、Djangoだけではいくつかの制限があります。 Django上でREST APIを開発する際に真っ先に思い浮かぶのは「Django Rest Framework」ではないでしょうか。弊社も利用しているフレームワークです

                    Django資産を活用できる!Django Ninjaのススメ - クロスマート Tech Blog
                  • Rustでブロッキングキューを実装する - かとじゅんの技術日誌

                    Rustでブロッキングキューを実装した話。これはRustのカレンダー | Advent Calendar 2023 - Qiitaの22日目の記事です。 ブロッキングキューはご存じだろうか。(えっ…スレッドはブロックしたくない…と思った人は最後まで読むとよいかも) Javaにはあります。 docs.oracle.com 要素の取得時にキューが空でなくなるまで待機したり、要素の格納時にキュー内に空きが生じるまで待機する操作を追加でサポートしたりするQueueです。 これはRustの標準にはない。今回はブロッキングキューを実装してみる。 「そういえば、ブロッキングキューが欲しい!」と思ったときに、ぜひこのブログ記事を思い出してほしい。 まず作るな・既存のコードを調査しろ 標準にはないが、クレートとして実装がある。 https://github.com/JimFawcett/RustBlocki

                      Rustでブロッキングキューを実装する - かとじゅんの技術日誌
                    • LLMアプリケーションの記録・実験・評価のプラットフォーム Weave を試す|npaka

                      LLMアプリケーションの記録・実験・評価のプラットフォーム「Weave」がリリースされたので、試してみました。 この入門記事は、「Weights & Biases」のご支援により提供されています。Weights & Biases JapanのNoteでは他にも多くの有用な記事が掲載されていますので是非ご覧ください。 1. Weave「Weave」は、LLMアプリケーションの記録、実験、評価のためのツールです。「Weights & Biases」が提供する機能の1つになります。 主な機能は、次のとおりです。 ・記録 : LLMとのあらゆるやり取りを記録。 ・実験 : 様々なパラメータを試して結果を確認。 ・評価 : 評価を実行してモデルが改善されたかどうかを測定。 2. Weave の準備今回は、「Google Colab」で「Weave」を使って「OpenAI」のモデルの記録・実験・評価を

                        LLMアプリケーションの記録・実験・評価のプラットフォーム Weave を試す|npaka
                      • 2023/10/07(土)の出来事 - My Bookmark

                        【Ubuntu日和】 SSH使うなら、これだけは覚えておきたい話 海外「気持ちは分かる(泣)」日本でハチ公に恋した幼児にハチ公映画を見せた結果大変な事に 独自の製造技術情報を中国企業へ提供したとみられる事案についてまとめてみた - piyolog 弊社に関する一部インターネット記事について | Johnny & Associates 除名も? 鈴木宗男氏 ロシア訪問で党の処分に反論|FNNプライムオンライン 「ジャニーズ事務所は記者会見のやり直しを」〜ジャーナリスト有志が東山紀之社長らに公開質問状 – Arc Times [第1話]対世界用魔法少女つばめ - マポロ3号 | 少年ジャンプ+ 「この“NG”という言葉がね、非常に…」“ジャニーズ茶番会見”NGリスト作成の責任者を独占直撃!「発案したのは誰か…それは」《チームリーダーは元大蔵エリート官僚》 | 文春オンライン 若年女性「ジャニー

                        • Rust 1.75を早めに深掘り - あずんひの日

                          本日12/29(金)にリリースされたRust 1.75の変更点を詳しく紹介します。 もしこの記事が参考になれば記事末尾から活動を支援頂けると嬉しいです。 12月29日は清水トンネル貫通記念日 ピックアップ トレイトで非同期関数の定義や戻り値でのimpl Traitを使えるようになった Cargo.tomlのバージョンを省略できるようになった ポインタをバイト単位で操作できるようになった 最近のrust-analyzer フォーマット文字列中の変数が認識されるようになった 補完候補が文脈に沿って並べ替わるようになった 安定化されたAPIのドキュメント Atomic*::from_ptr サンプル 安全性 FileTimes FileTimesExt File::set_modified File::set_times 環境依存の挙動 エラー サンプル IpAddr::to_canonical

                            Rust 1.75を早めに深掘り - あずんひの日
                          • 2024-05-18: Npgsql security fix, .NET 6.0.30/7.0.19/8.0.5, Windows App SDK 1.4.6 - WeekRef.NET

                            2024-05-18: Npgsql security fix, .NET 6.0.30/7.0.19/8.0.5, Windows App SDK 1.4.6 トピックス Release v8.0.3 · npgsql/npgsql https://github.com/npgsql/npgsql/releases/tag/v8.0.3 Release v7.0.7 · npgsql/npgsql Release v6.0.11 · npgsql/npgsql Release v5.0.18 · npgsql/npgsql Release v4.1.13 · npgsql/npgsql Release v4.0.14 · npgsql/npgsql .NET and .NET Framework May 2024 Servicing Updates - .NET Blog https:/

                            • RxJS入門ガイド:非同期プログラミングの効率化を実現する方法と実践例【カウントダウンタイマー】|DAD UNION – エンジニア同盟

                              RxJSとは RxJS(Reactive Extensions for JavaScript)は、非同期やイベントベースのプログラミングを簡単に行うためのライブラリです。データのストリームを作成し、それに対して様々な操作を適用することで、複雑な非同期処理を扱います。 RxJS RxJSのライセンスと無料利用 RxJSはMITライセンスの下で提供されており、無料で利用できます。これにより、個人や商用のプロジェクトで自由に使用、変更、配布することが可能です。 RxJSのメリットと使いどころ 非同期処理の簡素化: 複雑なタイミングやイベントの処理を簡単に記述できます。 統一されたAPI: プロミス、コールバック、イベントなど様々な非同期パターンを統一的に扱えます。 高い表現力: 豊富なオペレーターを用いて、データの変換や集計、フィルタリングなどが行えます。 注意点とデメリット 学習曲線: RxJ

                                RxJS入門ガイド:非同期プログラミングの効率化を実現する方法と実践例【カウントダウンタイマー】|DAD UNION – エンジニア同盟
                              • Dartまとめ (Flutter Roadmap Advanced Dart) - Qiita

                                はじめに Flutterを網羅的に学習するにあたってRoadmapを使って学習を進めることにしました。 この記事では、Flutter初学者やこれからFlutterを学習し始める方に向けて、Dartについてまとめています。 RoadmapはFlutterだけでなく、他の言語やスキルのロードマップも提供されており、何から学習して良いか分からないと悩んでいる方にとって有用なサイトになっています。 ぜひRoadmapを利用して学習してみてください。 Roadmapとは 簡潔に言えば、Roadmap.shは学習者にとってのガイドブックであり、学習の方向性を提供する学習ロードマップサイトです。 初心者から上級者まで、ステップバイステップでスキルを習得するための情報が提供されています。 学習の進め方が分かりやすく示されているだけでなく、個々の項目に参考資料やリソースへのリンクも提供されているので、学習者

                                  Dartまとめ (Flutter Roadmap Advanced Dart) - Qiita
                                • [Unity][C#] 非同期コールバック関数パターン

                                  こんにちは、そして、お久しぶりです。 Aiming の土井です。 今回の開発者ブログでは、コールバックを伴う非同期プログラミングのデザインについて整理していこうと思います。 非同期関数をコールバックする 早速ですが、皆さんの中で UniRx, UniTask といった非同期ライブラリを使って開発している方も多いのではないでしょうか。最近では、Unity 単体でも Task を簡単に扱えるようになっており、手続き的な非同期処理を、見通し良く書くことができるようになりました。 非同期処理の代表的なデザインとして、メッセージをコールバック関数で受けるというやり方があります。こういった設計のフレームワークやライブラリを使ったこともあるのではないでしょうか。 コールバックの例(UniRx) ... void Start() { HogeObservable.Subscribe(_ => Hoge()

                                    [Unity][C#] 非同期コールバック関数パターン
                                  • JavaScript の Promise、Async、Await についてのご説明 - Qiita

                                    初め Web開発では、非同期処理が一般的なプログラミング パラダイムになっています。 ネットワークリクエストの処理、ファイルの読み取りと書き込み、または遅延操作のいずれの場合でも、非同期処理はよりスムーズなユーザー エクスペリエンスを提供できます。 シングルスレッド言語である JavaScript の非同期処理の実装は特に重要です。 この記事では、JavaScript で非同期プログラミングを処理するための 3 つのコア技術、Promise、async、awaitを紹介します。 これらがどのように機能するか、使用する方法、そして実際のプロジェクトで効果的に適用する方法について詳しく説明します。 非同期処理とシングルスレッド 非同期とは console.log(100) setTimeout(function() { console.log(200) }, 1000) console.log

                                      JavaScript の Promise、Async、Await についてのご説明 - Qiita
                                    • $takc923->write($weblog);

                                      普段PCでTwitterやる時TweetDeck使ってて便利なんですけど、勉強会とかで毎回同じハッシュタグつけてつぶやきたい時面倒なんですよね。 だからハッシュタグをキープするChrome拡張つくった。 decktag - Chrome Web Store takc923/decktag · GitHub かなり雑なのでバグとかあったら教えて下さい。 ニコ生の放送予定番組の検索結果をRSS化するYahoo Pipes書いた http://pipes.yahoo.com/pipes/pipe.info?_id=f73a4af0702b12f84e60184395c6a49b 動機としては、前から見たいと思ってたアニメの一挙放送が終わってから気づくことがあって、それを何とかしたいなーと思ってRSS化することにした。で、せっかくなのでついでにそれ以外も検索条件指定出来るようにして公開。デフォルト

                                        $takc923->write($weblog);
                                      • プログラミングでよく使う英単語のまとめ【随時更新】

                                        プログラミングでよく使う英単語のまとめ【随時更新】 随時追加、整理していきます。 名前をつけるときには、名詞、動詞の違い、複数形、過去形などに注意しましょう。 オブジェクト指向では、クラス名は名詞、メソッドは動詞とします。 使ってはいけない言葉 get / set アクセサ (getter / setter) やプロパティによく使われている。 それ以外に使うと混乱を招くのでよくない。 get は軽量な処理と考えるので、中に重い処理は書いてはいけない。 単純な取得/設定以外で使いたくなったら他の言葉を考える。 load, save, commit, store, enable, disable, fetch, register, configure, add, etc... check 意味が広すぎて何をしているかわからない。 できるだけ別の言葉を使う。 具体的に何をしているかに分解して考え

                                          プログラミングでよく使う英単語のまとめ【随時更新】
                                        • ペペロンチーノで学ぶ非同期プログラミングによる並行処理 - Qiita

                                          非同期プログラミングについて、イメージだけを超速で掴むための記事を書きました。非同期プログラミングが全くわからない人、具体的には、「async await ってなに……?」「for 文で実行していくのと何が違うの……?」レベルの人を想定しています。 非同期プログラングって何? 同期的じゃないプログラミングです。同期的ということは、プログラムが上から下に順々に実行されるということです。つまり、普通のプログラムはだいたい同期的です。言い換えれば、非同期プログラミングは順番が入れ替わる(可能性)のあるプログラムです。なぜそんなことをするかについては後述します。 ペペロンチーノを作りたい あなたはペペロンチーノを作りたいとします。以下のタスクが必要です。 パスタを茹でる(5 分) ニンニクを切る(1 分) ソースを作る(4 分)、ただしニンニクを切っている必要がある 盛り付けをする(0 分)、ただ

                                            ペペロンチーノで学ぶ非同期プログラミングによる並行処理 - Qiita
                                          • Flutterでのローカルデータベース管理:Driftパッケージの紹介 | TKブログ

                                            はじめにFlutter開発者として、ローカルデータベースの操作はアプリケーションのパフォーマンスとユーザーエクスペリエンスに大きく影響します。この記事では、この課題を解決する助けとなるパッケージ、Driftについて紹介します。 参照)Driftパッケージ:https://drift.simonbinder.eu/ Driftとは何か?Driftは、FlutterおよびDart向けのリアクティブな永続的データベースライブラリで、SQLiteデータベースとの対話を容易にするツールセットを提供します。コンパイル時の安全性、強力なSQLサポート、そして非同期プログラミングを含む一連の機能が特徴です。 Driftの主な特徴コンパイル時の安全性: DriftはSQLクエリの誤りをコンパイル時に検出します。これにより、ランタイムエラーを大幅に減らすことができます。強力なSQLサポート: Driftは、ク

                                              Flutterでのローカルデータベース管理:Driftパッケージの紹介 | TKブログ
                                            • [Javascript] 初心者がプログラミングを学ぶ時の学習効率を考える話(非同期編)

                                              Javascriptが他のプログラム言語と圧倒的に違うし、初心者の挫折ポイント No.1は、この「非同期処理」でしょう。 非同期という事は、同期というケースもあります。 今回は、Javascript特有の非同期処理をちゃんと理解して、同期、非同期、どちらもしっかりとプログラミングで対応できるようにしましょう。 Javascript学習 : 非同期編 非同期とは? 同期処理 イベント処理は非同期 コールバック処理 setTimeout Ajax promise / async 非同期とは? 一般的なプログラムは、プログラムファイルに書かれたプログラムコードを、1行目から順番に上から処理を実行していきます。 javascriptでは、外部ファイルの読み込みや、入力待ちの状態の時などに、順番ではなく処理をする場面がしょっちゅう発生します。 その場合の順番が変わる事を非同期処理という風に言います。

                                                [Javascript] 初心者がプログラミングを学ぶ時の学習効率を考える話(非同期編)
                                              • Python用のスレッドベースの非同期ライブラリ「fast-async」のインストール

                                                Python用のスレッドベースの非同期ライブラリ「fast-async」のインストールについて解説しています。 「fast-async(https://pypi.org/project/fast-async/)」は、Python用に構築されたスレッドベースの非同期プログラミングフレームワークです。高速であることが特徴です。 ■Python 今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認) ■fast-asyncをインストールする fast-asyncをインストールを行いますが、今回はpipを経由してインストールを行うので、まずWindowsのコマンドプロンプトを起動します。 pip install fast-async 起動後、上記のコマンドを入力し、Enterキーを押します。 なお、今回は、pythonランチャーを

                                                  Python用のスレッドベースの非同期ライブラリ「fast-async」のインストール
                                                • チャットGPT - 4o (Omni)

                                                  マルチモーダルAIモデルの王者OpenAIは、日々進化を続けています。基本的なGPT-3.5から始まり、GPT-4 Turbo、Whisper、Sora、GPT-3.5 Turboと、ChatGPTは長い道のりを歩んできました。新しくリリースされたGPT-4oというAIモデルは、リアルタイムでユーザーと会話し、見て、対話することができます。それは、以前のChatGPTバージョンよりも、視覚機能を備えた最先端のモデルです。 GPT-4oとは? OpenAIの新しいフラッグシップモデルであるGPT-4oは、音声、視覚、テキストをリアルタイムで推論することができます。GPT-4o(”o “はOmniの意味)は、GPT-4レベルのインテリジェンスを提供する人間とコンピュータのインタラクションを保持します。平均320ミリ秒、232ミリ秒の音声入力に応答することができる。GPT-4oは、ユーザーによっ

                                                    チャットGPT - 4o (Omni)
                                                  • 既成の学習コースで Kotlin を教えましょう | The Kotlin Blog

                                                    Kotlin コミュニティとエコシステムが大きくなり、Kotlin 開発者の需要が日々高まっています。私たちは、コンピューターサイエンス分野の教育者に必要となる関連ツールと最新のリソースを提供したいと考えています。 「Programming in Kotlin」カリキュラム 当社は教育戦略上、無料でご利用いただける学期制の「Programming in Kotlin(Kotlin でのプログラミング)」カリキュラムのリリースを重要なマイルストーンとしています。 提供されるリソースはデザイナー、コピーエディター、管理コーディネーターの力を借りて教育者チームが開発し、約 1 年をかけてこのコースを制作しました。 現在は 2 つの大学で教育に使用されており、このコースを学習意欲のあるすべての Kotlin 教育者に提供できることを嬉しく思います。 「Programming in Kotlin」コ

                                                      既成の学習コースで Kotlin を教えましょう | The Kotlin Blog
                                                    • await と Task.Result によるデッドロック - Qiita

                                                      先の記事「非同期プログラミング」の続きで、デッドロックに関して書きます。 Windows Forms や ASP.NET Web アプリで async / await を使った非同期プログラムの中に Task.Wait のような同期メソッドを混ぜるとデッドロックになります。(注: コンソールアプリではデッドロックになることはありません。理由後述) Windows Forms アプリのコードでそのあたりを分かりやすく書くと以下のような感じです。コメントに「// デッドロック」と書いた方のメソッドを実行するとデッドロックが発生してアプリは固まってしまいます。 using System; using System.Threading.Tasks; using System.Windows.Forms; namespace WindowsFormsAsyncTest { public partia

                                                        await と Task.Result によるデッドロック - Qiita
                                                      • ペペロンチーノで学ぶ非同期プログラミングによる並行処理 - Qiita

                                                        非同期プログラミングについて、イメージだけを超速で掴むための記事を書きました。非同期プログラミングが全くわからない人、具体的には、「async await ってなに……?」「for 文で実行していくのと何が違うの……?」レベルの人を想定しています。 非同期プログラングって何? 同期的じゃないプログラミングです。同期的ということは、プログラムが上から下に順々に実行されるということです。つまり、普通のプログラムはだいたい同期的です。言い換えれば、非同期プログラミングは順番が入れ替わる(可能性)のあるプログラムです。なぜそんなことをするかについては後述します。 ペペロンチーノを作りたい あなたはペペロンチーノを作りたいとします。以下のタスクが必要です。 パスタを茹でる(5 分) ニンニクを切る(1 分) ソースを作る(4 分)、ただしニンニクを切っている必要がある 盛り付けをする(0 分)、ただ

                                                          ペペロンチーノで学ぶ非同期プログラミングによる並行処理 - Qiita
                                                        • 糖衣構文について - SE(たぶん)の雑感記

                                                          今回は、コーディングする上では知らなくても大事には至りにくい、言語仕様に近い話です。 糖衣構文、ご存知でしょうか? 例えば、C#のforeach文は、糖衣構文です。 await文*1も、糖衣構文です。 C#でキーワード*2として指定されているものの多くは、糖衣構文です。 そんな糖衣構文について、まとめてみます。 なお、とりあえずC#について、という前提にします。 糖衣構文とは Wikipediaによると、 糖衣構文(とういこうぶん、英: syntactic sugar)は、プログラミング言語において、読み書きのしやすさのために導入される書き方であり、複雑でわかりにくい書き方と全く同じ意味になるものを、よりシンプルでわかりやすい書き方で書くことができるもののことである。 とのことで、要するに簡単に書くために用意されている構文です。 例1 上でも書いたforeachですが、 //1~10を列挙

                                                            糖衣構文について - SE(たぶん)の雑感記
                                                          • Javaのバーチャル・スレッドと並行処理

                                                            この記事はJava Advent Calendar 2023 - Qiitaの10日目の記事です。 JavaのJDK 21でバーチャル・スレッドなるものが実装されたということで少し調べてみました。参考までに、昨年のアドベントでは、Rust Tokioの非同期処理を書いています。 背景: Javaのスレッド・モデル 背景として、Javaのスレッド・モデルは、OSスレッド(1:1のJavaVMスレッド)になります。Rustのスレッド同様に、OSレベルでのスケジューリングになります。今回説明するバーチャル・スレッドと区別するために、プラットフォーム・スレッドと呼ばれています。 本ブログでは分かりやすいようにプラットフォーム・スレッドをOSスレッドと表記します。 その後、JDK 8のCompletableFutureの導入で、Node.jsのasyncのような非同期プログラミングがサポートされまし

                                                              Javaのバーチャル・スレッドと並行処理
                                                            • ペペロンチーノで学ぶ非同期プログラミングによる並行処理 - Qiita

                                                              非同期プログラミングについて、イメージだけを超速で掴むための記事を書きました。非同期プログラミングが全くわからない人、具体的には、「async await ってなに……?」「for 文で実行していくのと何が違うの……?」レベルの人を想定しています。 非同期プログラングって何? 同期的じゃないプログラミングです。同期的ということは、プログラムが上から下に順々に実行されるということです。つまり、普通のプログラムはだいたい同期的です。言い換えれば、非同期プログラミングは順番が入れ替わる(可能性)のあるプログラムです。なぜそんなことをするかについては後述します。 ペペロンチーノを作りたい あなたはペペロンチーノを作りたいとします。以下のタスクが必要です。 パスタを茹でる(5 分) ニンニクを切る(1 分) ソースを作る(4 分)、ただしニンニクを切っている必要がある 盛り付けをする(0 分)、ただ

                                                                ペペロンチーノで学ぶ非同期プログラミングによる並行処理 - Qiita
                                                              • 圧倒的スピードと開発体験を手に入れろ!Micronautのご紹介。 - クロスマート Tech Blog

                                                                こんにちは、Dev2テックリードのたけじいです。 普段はPythonで帳票サービスのバックエンド開発(FastAPI+SQLAchemy)に従事しております。 最近、社内で利用する契約管理システムの開発を任されまして、そちらで念願だったKotlinを使わせていただいています。 KotlinといえばAndroidアプリの開発で有名なプログラム言語ですが、その書きやすさとJavaとの互換性が話題となり、最近ではバックエンド開発にも広く利用されるようになりました。 社内勉強会でKotlinの布教活動(紹介)もしました。 Kotlinを布教する10分勉強会私がバックエンド開発の技術選定をする際に重視していることは大きく5つあります。 処理性能が良いこと。 公式ドキュメントが充実して、利用者も多く盛り上がっていること。調べると情報が出てくること。 誰にでもわかりやすくシンプルなWebフレームワークで

                                                                  圧倒的スピードと開発体験を手に入れろ!Micronautのご紹介。 - クロスマート Tech Blog
                                                                • イベントループとは何なのか? - Qiita

                                                                  皆さんはJavaScriptの「イベントループ」についてどのくらいご存知でしょうか? イベントループはJavaScriptランタイムがプログラムを実行するときの基盤となる仕組みです。他の言語やフレームワークにも類似概念がありますが(例:C#のWinForms)、重要さの度合いが異なります。 最近、社内で開催している読書会の課題図書で「イベントループ」について言及する箇所があり、、私自身この仕組みについて概要を理解できていないことに気がついたので少し調べてみました。 似通った関心をお持ちの方にとっての参考になればよいなと思っています。 なるべく簡潔にまとめたつもりですが、、、すみません、ものすごく文字だらけです。私の関心の的になったものをギュウギュウ押し込みました。 JavaScriptプログラムはシングルスレッド Webブラウザであれ、Node.jsであれ、JavaScript(JS)ラン

                                                                    イベントループとは何なのか? - Qiita
                                                                  • 【初心者向け】Typescriptで作れるアプリ3選|おすすめの書籍と動画も紹介

                                                                    この記事の要点TypeScriptはJavaScriptの上位互換言語TypeScriptを使えば、初心者でも「いいね!」ボタンやTODOリスト、電卓アプリなどが作れるJavaScriptをある程度使える人はそれほど苦労せず習得できるが、初心者の場合いきなりTypeScriptを始めると学習コストが高くなる TypeScriptは、JavaScriptの上位互換言語です。 以前、TypeScriptの特徴や、JavaScriptとの違いについて詳しくご紹介していました。 TypeScriptの副業探しは困難!?将来性やJavaScriptとの違いとは? TypeScriptを使うことで、さまざまなアプリケーションを作ることができます。 この記事では、TypeScriptの初心者でも簡単に作れるプログラムの例として、 「いいね!」ボタンTODOリスト電卓アプリの作り方、さらにおすすめの書籍に

                                                                      【初心者向け】Typescriptで作れるアプリ3選|おすすめの書籍と動画も紹介
                                                                    • VisualStudioをインストールしてC#で開発する環境を構築する方法 - ピーコックアンダーソン

                                                                      ※既にVisualStudioをインストール済の方はそちらを使用していただいて問題ありません。本書では初歩的な文法のみを取り上げますので,VisualStudioは2008以降のものであれば問題ありません。本書ではVisualStudio 2017 Communityを使用します。 プロジェクトの作成 VisualStudioをインストールしたら起動してみましょう。 こんな感じの初期起動画面になると思います。 「ファイル」「新規作成」「プロジェクト」を選択します。 「Windowsクラシックデスクトップ」 「Windowsフォームアプリケーション(.NET Framework)」を選択し, 場所には任意のパスを指定します。 プロジェクト名とソリューション名は今回は変更せずに「OK」をクリックします。 こんな画面が出てくると思います。 これはWindowsフォームを作成する画面のプログラムに

                                                                        VisualStudioをインストールしてC#で開発する環境を構築する方法 - ピーコックアンダーソン
                                                                      • Pythonのaiohttpとは?その使い方を完全解説

                                                                        aiohttpはPythonの非同期HTTPクライアント/サーバー機能を提供するライブラリです。本文では、aiohttpとは何かを詳しく解説した上、aiohttpの基本的な使い方をも皆さんに紹介します。 buttonaiohttpとは?aiohttpはPythonの非同期HTTPクライアント/サーバー機能を提供するライブラリとして、主な特徴は以下の通りです: 非同期I/Oを利用した高パフォーマンスなHTTP通信を実現asyncioと統合されているため、非同期処理がしやすいクライアント/サーバー両機能を提供HTTPクライアントとしてリクエストを送信できるHTTPサーバーとしてリクエストを処理できるHTTP/1.1とHTTP/2に対応最新のHTTPプロトコルに対応WebSocketsサポートリアルタイム通信がしやすいasyncioとの親和性が高く、Pythonでの非同期アプリケーション開発にお

                                                                          Pythonのaiohttpとは?その使い方を完全解説
                                                                        • スポーツジムのシャワールームから学ぶ非同期プログラミング

                                                                          毎日、午前中にスポーツジムへ通っていると、大体同じ顔ぶれの人達がいます。 そして、平日の午前中からスポーツジムへ通っている人達って一体どんな職業の人なんだろう?って不思議に感じてしまいました。 自分のように仕事の合間に2時間ほど抜けてサウナまで入ってくるような仕事をしているとは思えないけど、恐らく自分も同じように不思議に思われているに違いない。 シャワールームでの気付き そのスポーツジムには、シャワールームがあり、銭湯や温泉などにある時間止め系のカラン方式です。 こんなヤツです。 PUSHすると一定時間で水が止まる方式なんですが、その時間がなんと5秒程度なんですよ。 節水したいのもわかるけど、シャワールームにある蛇口としては、片手で常にPUSHし続けていないとまともに体が洗い流せません。 シャワールームで片手が奪われた状態になると、もはや何をするにも非常に難しい状態になるんですよ。 でも、

                                                                            スポーツジムのシャワールームから学ぶ非同期プログラミング
                                                                          • 紙箱

                                                                            ランキング参加中プログラミング はじめに この記事では、Immutable Data Modelと呼ばれる設計手法をもとに、リレーショナル・データベースにおける、テーブル設計の話を書いています。また、今回の実践で利用する、別の考え方の背景を理解するために、Out of the tar pitという小論文の内容にも言及します。 「状態とは何か?」というややこしい話がたくさん出てきますし、データベースのテーブル設計についての話であることから、たくさんのSQLが出てきます。なので、データモデリングとか状態管理とか、特にSQLとかに興味がない人には面白くないと思います。 そのあたりに興味ある方は、読んでみて欲しいです。 Immutable Data Modelを、実際のアプリケーションで使うデータベースに採用するにあたり、どういう考え方で、どのようにテーブルを構成したか、自分なりの経験を書いていま

                                                                              紙箱
                                                                            • Quarkus+CloudRunで作る爆速アプリケーション - Qiita

                                                                              はじめに Retail AI Adventurers Advent Calendar 2023の21日目の投稿です。 昨日は@t-hiroyukiさんの「M1チップ搭載のMac & RancherDesktop環境下におけるTestcontainersを使用したテスト失敗の原因の考察とその解決策」でした。 彼と話していると何だか癒されます。 自己紹介 Retail AIの基盤チーム(Infrastructure Systems Development Group)に所属しています。 興味がある方は、以下を参照下さい。 会社HP:https://www.retail-ai.jp/ 採用ページ:https://recruit.jobcan.jp/retail-ai/ 今年に入って自作キーボードを5つ(ErgoArrows、CHARYBDIS、keyball61、keyball39、killer

                                                                                Quarkus+CloudRunで作る爆速アプリケーション - Qiita
                                                                              • 【一覧】おすすめPythonフレームワーク25選

                                                                                Pythonは、そのシンプルさ、汎用性、学習を後押しするリソースの豊富さにより、最も人気のあるプログラミング言語の1つとなっています。初心者のプログラマーが「最初に学ぶ言語」であることも多く、ウェブ開発からデータ分析まで幅広い用途と業界で活用されています。 Pythonコミュニティは巨大で、GitHubによると、その成長はとどまることを知らず、2022年時点で22.5%増加しているとのこと。また、2023年には3番目に使用されているプログラミング言語にもなっています。多種多様なフレームワークがあり、そのほとんどがオープンソースです。 この記事では、Pythonのフレームワークの中でも人気があり、知っておくと便利なものをまとめて一挙ご紹介します。 Pythonフレームワークとは Pythonフレームワークとは、言うなればPythonモジュールのコレクションで、あらゆるタイプのアプリケーション

                                                                                  【一覧】おすすめPythonフレームワーク25選
                                                                                • URLを入力してからページがレンダリングされるまでのプロセス(1) - Qiita

                                                                                  序文 初めにフロントエンドの知識を学び始めたとき、一つ一つの知識を積み重ね、一つ一つの知識点を克服していました。そうして、長い時間が経過してもかなりの知識が蓄積されましたが、それを連携して理解することは常にできませんでした。毎回の整理は非常に分散しており、思考の連続性を保つことができませんでした。最近になって、DNSドメイン名解析、TCP接続の確立、HTTPリクエストの構築、ブラウザのレンダリングプロセスを一連の流れとして整理した後、まるで任督二脈を通したような感覚があり、全体的な構造ができました。以前の知識点がすべてつながり、少なくともそのほとんどの骨組みを知ることができました。知識体系を整理することで、これから新しい知識を学んでも、この体系に沿って学び、相互に関連し合い、理解しやすく、忘れにくくなります。これが本文の目的です。 外国人なので、ChatGPTを翻訳ツールとして使ってます

                                                                                    URLを入力してからページがレンダリングされるまでのプロセス(1) - Qiita