並び順

ブックマーク数

期間指定

  • から
  • まで

81 - 120 件 / 190件

新着順 人気順

コードリーディングの検索結果81 - 120 件 / 190件

  • Diary-nagataka-シリコンバレーで働きたい!という夢への日々 [Apacheコードリーディング]ap_process_request

    外資ITで働くエンジニアが趣味や日々の事など書いてます(技術の話は別ブログ http://wanna-be-geek.seesaa.net/ ) httpd-2.2.18/modules/http/http_core.c内の、ap_process_request()を読んだ。 static int ap_process_http_connection(conn_rec *c) { request_rec *r; apr_socket_t *csd = NULL; /* * Read and process each request found on our connection * until no requests are left or we decide to close. */ クライアントとの接続が完了した後、リクエストを読む処理 ap_update_child_status(c

    • auto_strip_attributes を紙でコードリーディングしてみた - kakakakakku blog

      Rails でフォームのテキストフィールドを保存するときに 先頭の半角スペース / 全角スペース 末尾の半角スペース / 全角スペース を自動で除去したいという要求があった. 別に Gem を使うまでもなく実現できそうだけど,調べたところ auto_strip_attributes が良さそうだなーという感じだった. github.com 使ってみた README に書いてある通り,モデルにフィールドを定義するだけで使えた.簡単! ただし自動で除去されるのは「半角スペース」だけで「全角スペース」は除去されなかった. auto_strip_attributes :name Gem をコードリーディングしてみた auto_strip_attributes.rb を見ると86行しかなくて,シンプルな Gem だったので,Ruby の勉強を兼ねてコードリーディングしてみた. README を見たら

        auto_strip_attributes を紙でコードリーディングしてみた - kakakakakku blog
      • PHPStormで追いにくいEloquentコードリーディング(このメソッドの実体はどこにあるの!?) - Qiita

        PHPStormで追いにくいEloquentコードリーディング(このメソッドの実体はどこにあるの!?)PhpStormLaravelEloquent これは何 Laravel歴4ヶ月の初心者がEloquent周りのコードを読んで頑張って解釈した記録です。 【Laravel】 第1回 Eloquent ソースコードリーディング - モデルの取得 を参考にしました。詳しく解説していただけてますが、初心者には追うのが辛かった部分もあるので、難しそうなところをすっ飛ばしてタイプヒンティングに頼って最終的に呼ばれるメソッドがどれなのか?というのを見つけようという目的です。 例えばorderBy()とかget()とかModelに直接生えていないけど、呼ぶとなんか使えるけどなんで???という疑問を解決したいです。 バージョンとか Laravel v5.6 です。最近5.7にアップデートするタスクをやった

          PHPStormで追いにくいEloquentコードリーディング(このメソッドの実体はどこにあるの!?) - Qiita
        • bundlerコードリーディング【exec編】

          bundler (1.16.1)のコードリーディングをしました。今回は bundle exec のコードを追ってみます。 exe/bundleはBundler::CLI.startを呼び出します #!/usr/bin/env ruby # frozen_string_literal: true require "bundler" # ... require "bundler/friendly_errors" Bundler.with_friendly_errors do require "bundler/cli" # Allow any command to use --help flag to show help for that command help_flags = %w[--help -h] help_flag_used = ARGV.any? {|a| help_flags.i

          • ActiveRecordのコードリーディング 〜Railsのマイグレーションについて仕組みを理解してみる〜 - Link and Motivation Developers' Blog

            はじめに こんにちは、葛葉(くずば)です。 普段は、モチベーションクラウドの多言語対応や型検査導入などRubyのバックエンドエンジニアとして、日々活動しています。 qiita.com 本記事では、エンジニアの先輩2人と一緒に行なっていた「コードを読む会」の内容を書きたいと思います。 ActiveRecordのコードリーディング 私たちは日々、Ruby on Rails を使用してプロダクト開発をしているのですが(その多機能さゆえ)「内部で何が起きてるんだろう...?🤔」と疑問に思うことがありました。 そういった疑問を解消しつつ、信頼性の高い情報源を読めるようになりたい!と考え、OSSを読む社内勉強会を実施することにしました。 何を読んでいくか考えた末、Ruby on Rails の Migration(データベースのスキーマを管理する機能)を対象としました。 色々難しく、完全に理解したと

              ActiveRecordのコードリーディング 〜Railsのマイグレーションについて仕組みを理解してみる〜 - Link and Motivation Developers' Blog
            • ActiveStorageでアップロードしたファイルをsidekiqで遅延少なく処理する(sidekiqのコードリーディング) - Qiita

              ActiveStorageでアップロードしたファイルをsidekiqで遅延少なく処理する(sidekiqのコードリーディング)RubyRailssidekiqActiveStorage やりたいこと(背景) フロントエンドからファイルをActiveStorageでアップロードし、そのファイルを利用した処理を行う必要がある。 該当のファイルへの処理は数秒かかるためweb apiはすぐに返し、該当の処理を非同期実行することにした。 該当処理のOK / NGの結果に応じてユーザーに再度アップロード要求する必要があり、ユーザーには解析中という表示で待たせている。(処理に時間がかかりすぎた時の対応は別途検討してますが今回は省略) サーバー処理が終わったらActionCableを利用してフロントに判定結果を返す。 ※ 簡素化しているため一部違和感があるかもしれませんが全体の流れの把握が目的のためご容赦

                ActiveStorageでアップロードしたファイルをsidekiqで遅延少なく処理する(sidekiqのコードリーディング) - Qiita
              • 【メモ】UNIX V6コードリーディング(クロック割り込み, p160〜170) - 0x19f (Shinya Kato) の日報

                今回の内容 前回までは, 割り込みとトラップが発生してからハンドラが実行されるまでの流れを追っていました. 0x19f.hatenablog.com 今回は, クロック割り込みハンドラのお話です. クロック割り込みによって処理される指定時間実行とsleepシステムコールも一緒に見ていきます. クロック装置 UNIX V6では以下の2種類のクロックが使用可能です. 電源周波数に従うクロック: KW11-L プログラマブルクロック: KW11-P 前者のクロックは電源周波数が50Hzか60Hzかによってクロック周波数が変わります. 後者のクロックの間隔などを設定することができるようです. クロック周波数はparams.hの中でHZとしてdefineされているようです. 書籍ではどちらの装置を用いるにしてもクロック周波数が60Hzであるという前提で解説を進めています. クロック割り込みハンドラ

                  【メモ】UNIX V6コードリーディング(クロック割り込み, p160〜170) - 0x19f (Shinya Kato) の日報
                • pycodestyleは type(value) == int というコードにどうやって E721 do not compare types を送出する? ソースコードリーディングメモ - nikkie-ftnextの日記

                  はじめに 新世代は この未来だ♪1 nikkieです(ユーフォ アンコン編観た) タイトルの件が「わたし、気になります!」と、ソースコードを読んで知ったことをまとめます。 目次 はじめに 目次 pycodestyleのソースコードを読みたくなった経緯 正規表現COMPARE_TYPE_REGEXを読み解く (?:\s*\(\s*([^)]*[^ )])\s*\))ってなんだ? 落ち穂拾い 正規表現を使ってE721をチェックする実装 終わりに P.S. 最近pycodestyleのE721がアップデートされました pycodestyleのソースコードを読みたくなった経緯 flake8がお怒りなので2、typeの返り値を型と比較するコードの代わりに、isinstanceを使いましょうという記事を書きました 今週はLintについてインプットしていて、その中でこの検出の実装を興味深いと感じ始めまし

                    pycodestyleは type(value) == int というコードにどうやって E721 do not compare types を送出する? ソースコードリーディングメモ - nikkie-ftnextの日記
                  • Express.jsコードリーディング - Qiita

                    Express.jsのコードを読んでみたのでまとめることにしました。 普段の業務ではNode.jsもExpressも利用していないので、JavaScriptの基本的なコーディングやライブラリの内容なども合わせてまとめておこうと思います。 間違っている内容がありましたら編集リクエストをいただけますと幸いです。 Expressコードリーディング 対象のコード 今回コードリーディングする対象のコードです。 ただHello Worldするだけのコードになります。 const express = require('express') const app = express() app.get('/', (req, res) => { res.send('Hello World'); }) app.listen(3000);

                      Express.jsコードリーディング - Qiita
                    • 【Laravel】Laravel Excelを使ったcsvエクスポートでの処理軽量化とコードリーディング - Qiita

                      前回の記事の深掘り版です。 https://qiita.com/yuta-2001/items/a3ff68ba7b75a379e6e0 csvエクスポートは、PHPの組み込み関数でもLaravel Excelの機能でも基本的に重めの処理になっています。そこで今回はLaravel Excelを使用した場合にできる処理最適化の方法について調べてみたのでまとめています。 また、Laravel Excelの内部のコードを読んでその軽量化の仕組みを理解していきます! 結論:処理最適化にはqueryメソッドを使おう 前回の記事ではcollectionメソッドを使用してデータを取得していましたが、この部分をqueryメソッドにすることでパフォーマンスの向上を図ることができます。 queryメソッド使用法 以下で使用することができます。 特段collectionメソッドの時と記述は変わりませんが、これを

                        【Laravel】Laravel Excelを使ったcsvエクスポートでの処理軽量化とコードリーディング - Qiita
                      • OSSコードリーディングのすゝめ - Qiita

                        はじめに OSSとは 簡単に言うと、誰でも無料で読んだり使ったりすることができるソースコードです。 オープンソースという言葉が生まれた1998年に、定義が定められました。 オープンソースの定義(v1.9)注釈付 まとめると、 ・再配布自由 ・ソースコードの公開 ・派生物の許容 ・差別の禁止 ・追加ライセンスの禁止 これらの条件を守っているものがオープンソースと呼ばれるようです。 ChatGPTの出現 ChatGPTや各Pluginの活用方法がメジャーになったことで、コードリーディングに関しても今までとは比べ物にならない程、効率的に行うことができるようになりました。 何のために読むのか OSSコードリーディングは、他人のコードを読むことで技術力を向上させる方法として知られています。 実際にどのような良いことがあるのかをまとめました。 業務のため 自社のシステムに組み込まれているOSSのコード

                          OSSコードリーディングのすゝめ - Qiita
                        • 急なTypeScript案件🔥最初の30日間に使い倒したい「コードリーディング支援ツール」 - Qiita

                          この投稿では、「TypeScriptの文法や用語がよく分からない」という問題を解消してくれそうなツールを紹介します。 勉強しながらの見切り発車 最近はTypeScript未経験でも、TypeScript案件にアサインされることが増えてきているように思います。 運がいいと着手前にTypeScriptをじっくり学習する時間を与えられることがあります。しかし、多くのケースでは、見切り発車で開発に参加するのではないでしょうか。 コードリーディングから始まる TypeScript案件は、理解すべき既存のTypeScript/JavaScriptコードがあるケースが多いです。 そのため、 読んで理解すべき既存のTypeScriptコードがある しかし、TypeScriptの知識が乏しい状態でスタート といった事態がよく起きます。 新規プロジェクトでは既存コードがありませんが、ググって出てきたサンプルコ

                            急なTypeScript案件🔥最初の30日間に使い倒したい「コードリーディング支援ツール」 - Qiita
                          • etcdのgRPCコードリーディング - 経験は何よりも饒舌

                            Do'er Advent Calendar 2022の22日目です。 etcdとは「a strongly consistent, distributed key-value store that provides a reliable way to store data that needs to be accessed by a distributed system or cluster of machines」であり、KubernetesやRookで使われていて、Quickstartを参考にすれば手元で動かせます。 いくつかコミットをしていますが、etcdではgRPCが使われているのでいろいろと思い出す必要がありました。 2年前くらいにやったThe complete gRPC courseをもう一度やったらなんとなく読めるようになったのでメモ書きをします。 コードリーディングの対象は命

                              etcdのgRPCコードリーディング - 経験は何よりも饒舌
                            • コールグラフで始めるGoコードリーディング - Qiita

                              おはようございます。@mnumaです。 Makuake Product Team Advent Calendar 2018 20日目の記事です。 こちらの記事でも触れさせて頂きましたが、株式会社マクアケではマイクロサービス化プロジェクトに伴い、バックエンドやツールにGo言語を採用することが増えています。というわけで今回もGoに関する記事を書きます。 go-callvis go-callvisは、Goで書かれたプログラムのコールグラフを作成してくれるツールです。 コードレビューで誰かのコードを読む時や、複雑になってきたコードを把握したい時など、何か図形的な補助が欲しくなる事があります。 go-callvisは手軽にビジュアライズされたコールグラフを作成出来ます。今回は、このgo-callvisの使い方についてご紹介したいと思います。 使い方 go-callvisのリポジトリにちょうどいいサン

                                コールグラフで始めるGoコードリーディング - Qiita
                              • 【Linuxカーネルを読む】ChatGPTで爆速コードリーディング - Qiita

                                はじめに OpenAIによって開発されたChatGPTが話題になっています。特に、2023年3月14日に公開された最新モデルであるGPT-4は、これまで私達がAIに持っていた認識を根底から覆したのではないでしょうか? 私は、「普通に人間とやりとりしているのと変わらんやん…」と率直に驚きました。 エンジニアの業務の中でも、自動コーディング支援、技術的課題の壁打ち相手、ドキュメント自動生成、学習支援等さまざまな用途に活用する可能性を皆さん検証している段階です。私もその波に乗っている真っ最中です。 そこで今回は、ソースコードリーディングをChatGPTをメンターにしたら爆速にできるのではないか?という仮説を検証してみました。 そしてどうせやるなら、ソースコードリーディングのハードルの高さナンバーワン(個人調べ)の「Linuxカーネル」を題材にしてみました。 なお、使用したモデルはGPT-4です。

                                  【Linuxカーネルを読む】ChatGPTで爆速コードリーディング - Qiita
                                • restful-authentication の Authentication::ByPassword をコードリーディング - 昔の Ruby On Rails のブログ

                                  使い方はこんな感じ User.rb class User < ActiveRecord::Base include Authentication include Authentication::ByPassword ... これで以下のような事が出来る。 勝手に validation が追加される(パスワードは6文字以上等) User.password_digest("hoge", "fuga") 等の様にクラスメソッドが追加される @user.authenticated? 等の様にインスタンスメソッドが追加される 3部構成になっている クラスメソッド1つと module が2つです。 module Authentication module ByPassword def self.included(recipient) {} module ModelClassMethods {} mod

                                    restful-authentication の Authentication::ByPassword をコードリーディング - 昔の Ruby On Rails のブログ
                                  • GitHubのベータ版機能「New Code Search and Code View」が便利でコードリーディングが捗る - Qiita

                                    3月に入ったあたり?からこの機能を任意で有効化できるようになったっぽいです(要出典)。Freeユーザも利用可能です。 海外在住の知り合いはずっと前から有効化できていたようで、常々羨ましく感じていました。(国毎にリリース時期を分けていた?) そんな私のもとにもついに有効化ボタンが現れたので、早速使ってみました。コードリーディングが捗ります。 本機能のドキュメントはこちらです。 有効化の方法 自分のアバターをクリックして、「Feature preview」を開きます。 次に、出てきたポップアップ画面から「New Code Search and Code View」を選択して、「Enable」ボタンを押します(私はすでに有効化しているので、以下のスクリーンショットでは「Disable」ボタンが表示されています)。 そして適当なリポジトリに行ってフォルダを開くと、 こんな風に画面左側にフォルダツリ

                                      GitHubのベータ版機能「New Code Search and Code View」が便利でコードリーディングが捗る - Qiita
                                    • runcコードリーディング入門 - My Transistor - BOOTH

                                      本誌はDockerに代表される、いわゆる「コンテナ」を多少扱ったことのある方を対象に、コンテナ関連の低レベルな操作をCLIツールとして実装したOSS、「runc」のコードリーディングを行う同人誌です。 コンテナの実装に興味のある方や、そもそもコードリーディングに慣れたい方に手に取っていただければ幸いです。

                                        runcコードリーディング入門 - My Transistor - BOOTH
                                      • 【Linuxカーネルを読む】ChatGPTで爆速コードリーディング - Qiita

                                        はじめに OpenAIによって開発されたChatGPTが話題になっています。特に、2023年3月14日に公開された最新モデルであるGPT-4は、これまで私達がAIに持っていた認識を根底から覆したのではないでしょうか? 私は、「普通に人間とやりとりしているのと変わらんやん…」と率直に驚きました。 エンジニアの業務の中でも、自動コーディング支援、技術的課題の壁打ち相手、ドキュメント自動生成、学習支援等さまざまな用途に活用する可能性を皆さん検証している段階です。私もその波に乗っている真っ最中です。 そこで今回は、ソースコードリーディングをChatGPTをメンターにしたら爆速にできるのではないか?という仮説を検証してみました。 そしてどうせやるなら、ソースコードリーディングのハードルの高さナンバーワン(個人調べ)の「Linuxカーネル」を題材にしてみました。 なお、使用したモデルはGPT-4です。

                                          【Linuxカーネルを読む】ChatGPTで爆速コードリーディング - Qiita
                                        • 急なTypeScript案件🔥最初の30日間に使い倒したい「コードリーディング支援ツール」 - Qiita

                                          この投稿では、「TypeScriptの文法や用語がよく分からない」という問題を解消してくれそうなツールを紹介します。 勉強しながらの見切り発車 最近はTypeScript未経験でも、TypeScript案件にアサインされることが増えてきているように思います。 運がいいと着手前にTypeScriptをじっくり学習する時間を与えられることがあります。しかし、多くのケースでは、見切り発車で開発に参加するのではないでしょうか。 コードリーディングから始まる TypeScript案件は、理解すべき既存のTypeScript/JavaScriptコードがあるケースが多いです。 そのため、 読んで理解すべき既存のTypeScriptコードがある しかし、TypeScriptの知識が乏しい状態でスタート といった事態がよく起きます。 新規プロジェクトでは既存コードがありませんが、ググって出てきたサンプルコ

                                            急なTypeScript案件🔥最初の30日間に使い倒したい「コードリーディング支援ツール」 - Qiita
                                          • slコマンドのソースコードリーディング - Qiita

                                            みなさん、slコマンドはご存知ですか? ファイルやディレクトリの情報を示すlsコマンドに対するジョークコマンドで、lsを焦ってslと打ってしまった場合に、落ち着きなさいよ、という意味合いでターミナル上にslが走る、という大変愉快なコマンドです。 インストール macを対象にします

                                              slコマンドのソースコードリーディング - Qiita
                                            • Presto ソースコードリーディング #4

                                              tagomoris @tagomoris 今日の Presto ソースコードリーディングですが、みなさんできるだけ 19:30 ちょうどにご来場ください。いったん 11F ロビーで集合してもらいます。 #prestodb_scr 2014-07-15 17:26:53 Sadayuki Furuhashi @frsyuki Presto は今日ですよ! Hadoop Conference 2014 で時間が無くて話せなかったPresto connectorの作り方講座か、workerのスケジューラ周りです。たぶん。 atnd.org/events/53545 #prestodb_scr 2014-07-15 10:52:11

                                                Presto ソースコードリーディング #4
                                              • Linuxのvm_swapinessについてコードリーディングしてみた · hnakamur's blog

                                                2020-02-16 はじめに スワップの弁護:よくある誤解を解く と 大規模システムでの Linux のメモリ管理 を読んで Linux のスワップについて理解を深めたところで、実際のコードを読んでみることにしました。今回のリーディングの対象バージョンは torvalds/linux at v5.6-rc1 です。 なお、私は上記の記事以外の前提知識が無い状態で初めて読んでみたところなので、誤読しているかもしれません。あまり信用せず、おかしい箇所があったらご自分で確認してください。 vm_swappiness の検索結果 $ ag vm_swappiness mm/vmscan.c 166:int vm_swappiness = 60; mm/memcontrol.c 3827: vm_swappiness = val; include/uapi/linux/sysctl.h 182:

                                                • 社内OSSソースコードリーディング会を開催しました - WILLGATE TECH BLOG

                                                  コンテンツ業務改善チームの大津です。 今回自分が主催したOSSソースコードリーディング会の開催とその様子についてお伝えしたいと思います。 OSSソースコードリーディング会とは? 当日の様子 開催のねらい OSSソースコードリーディングの敷居を少しでも下げたかった OSSソースコードリーディングのメリットを知って欲しかった 今後はどうするか? OSSソースコードリーディング会とは? OSSソースコードリーディング会とは、OSSライブラリやフレームワークのソースコードを読み進め、OSSライブラリやフレームワークの仕様理解を深める会です。 ソースコードリーディングしたいライブラリやフレームワークは参加者自身が決め、もくもくと読んできます。 当日の様子 当日はこんな感じで告知をしました! 開始時刻になると、まずOSSソースコードリーディングのやり方やメリットについて大津が説明しました。 説明に使用

                                                    社内OSSソースコードリーディング会を開催しました - WILLGATE TECH BLOG
                                                  • @angular/youtube-player コードリーディング - Qiita

                                                    @angular/youtube-player とは Angular公式のYouTube player APIのwrapperです。使用方法などは、https://github.com/angular/components/tree/master/src/youtube-player を参照してください。 https://github.com/angular/components/blob/22fecb35665b43061e3a24a89db3fbcb8b9bc5b8/src/youtube-player/youtube-player.ts のタイミングのコードについてコードリーディングしてみようと思います。 コードの依存 package.jsonのdependenciesあたりを見てみると型定義とAngularのcoreとcommonのみです。それはそうかという気もしますが、依存をなる

                                                      @angular/youtube-player コードリーディング - Qiita
                                                    • LangChainソースコードリーディング/テーマ:OpenAI Chat APIを「ちゃんと」使う - 資料一覧 - connpass

                                                      (未設定) 【2023/06/29】LangChainソースコードリーディング/テーマ:OpenAI Chat APIを「ちゃんと」使う【アーカイブ】

                                                        LangChainソースコードリーディング/テーマ:OpenAI Chat APIを「ちゃんと」使う - 資料一覧 - connpass
                                                      • Goのdatabase/sqlパッケージとGORMのコードリーディング - Qiita

                                                        今日やること database/sqlパッケージを素朴に使う。 その上でGORMのコードを読む。 Version Mysql 8.X Go 1.18 database/sqlパッケージを使う。 データベースとテーブル作成 CREATE DATABASE example_go_sql; CREATE TABLE users ( id SERIAL, name VARCHAR(20) ); main.go 複数行取得 func queryRows 一行取得 func queryRow インサート func create トランザクションの使用(Update) func txUpdate を行います。 package main import ( "context" "database/sql" "fmt" "log" _ "github.com/go-sql-driver/mysql" ) fu

                                                          Goのdatabase/sqlパッケージとGORMのコードリーディング - Qiita
                                                        • Next.js で SG したサイトがなぜあんなに早いのか、 Chrome DevTools とコードリーディングで調べる - おじんブログ

                                                          はじめに 静的コンテンツをCDNに乗せておくとアクセス時間が早い、という話ではなく、 Next.js を SG してブラウザで閲覧した時の挙動に絞っています。 TL;DR SGした際に、 getStaticProps() 経由で渡したコンテンツは _next/data/ ディレクトリ配下に JSON 形式として書き出される 該当するローティングに達すると、 JSON を読み込み、クライアントサイドでページを書き換える すべてのコンテンツを一気に読み込むのではなく、ページへのリンクが表示されたら、そのリンク先のコンテンツの JSON を先読みしている つまり、クリックする前に既にコンテンツは読み込まれているので、クライアントサイドの書き換えしか時間がかからない Chrome DevTools で見てみる Next.js の公式サイトは SG で構築されています。これを例として見ていきます。

                                                            Next.js で SG したサイトがなぜあんなに早いのか、 Chrome DevTools とコードリーディングで調べる - おじんブログ
                                                          • YJIT コードリーディング

                                                            YJIT Shopifyにより開発されているCRuby用のJITコンパイラ 実行時にCコンパイラを別プロセスで走らせるMJITに比べて個々のJITコンパイルのコストが低い(機械語を直接生成) 現状ではx86(Linux, MacOS)のみの対応 昨年末にCRuby本体に取り込む方針が決定した。 もともとCで書かれていたが、最近Rustで書き直された。 YJIT https://github.com/Shopify/ruby/tree/rust-yjit-upstreaming-pr-changes/

                                                              YJIT コードリーディング
                                                            • SQLiteのコードリーディングとか。 - Thinking out loud

                                                              社内の若手(20代)のエンジニアと話をしていたら、マジメにソフトウェアのお勉強をしたい、とのこと。 色々とオススメしつつ、実装を読んでみると得るもの多いよとかいうお話ついでに、「RDBMSの実装を読んでみたら?」と無責任サジェスチョン(!)。 ちょうど探索アルゴリズムがという話が出たり、彼はDB周りにからむことも多そうなので、RDBMSのコードならOSに近いlayerも見えるし、B-treeとかlogicも分かるし、SQLの言語処理系も見えるしと、幅も広いし実用的だし、役に立ちやすいという意味でも良いかな、と。.. さて、お勉強という用途なら何が良いかな、、とさくっと探してみて、SQLiteあたりなら、量も現実的だし、ドキュメントもコード内のコメントも比較的キレイにまとまっていたので、薦めてみる。:) テスト用のコード ちなみに、SQLiteはテストコードが本体より長い、それくらいQual

                                                                SQLiteのコードリーディングとか。 - Thinking out loud
                                                              • コードリーディングの方法・コツ - Qiita

                                                                はじめに コードリーディングという技術はエンジニアにとってとても重要ですが、大きなプロジェクトであればあるほど、難易度が上がっていきます。 ここでは、そのような巨大プロジェクトのコードリーディングにおいて必要となる技術、ポイントを解説していきます。 コードリーディングとは 一言で言えば、「名前の調査」です。 ソースコードというものは、「ファイル名・関数名・変数名・型名・ メンバ名」といった「名前」の集合です。 それぞれの「名前」が何を表しているのかを理解することこそが、コードリーディングです。 準備 ripgrep grepの超高速版です。 使い方はこちらを参照ください。 タグ タグをつけて、タグジャンプできるようにします。 gtagsが個人的にはオススメです。 インストールはこちらを参照。 ディレクトリ構造の理解 どのように分割されているかを理解します。 ファイル名から処理内容を推測 フ

                                                                  コードリーディングの方法・コツ - Qiita
                                                                • Difyソースコードリーディング#2 ―Difyの開発環境を起動してみる (2024/09/05 12:00〜)

                                                                  イベント概要 ノーコードのLLMアプリケーション開発ツールとして話題の「Dify」のソースコードリーディングをします! 主催者も初見の状態から、Difyのソースコードを読んでキャッチアップしていきます。 今回はDifyの開発環境を起動していろいろさわってみる予定です。 ※第二回でソースコードのどのあたりを読むかは未定です。第一回の終了後に決める予定です。 注意事項 Difyの内部実装など技術的な話が中心になります。Difyの「使い方」の話ではないのでご注意ください。 主催者も初見でキャッチアップしていく会になります。もともと詳しい方による解説ではないのでご注意ください。 主催者 大嶋勇樹 株式会社ジェネラティブエージェンツ取締役CTO/Co-founder。大規模言語モデルを組み込んだアプリケーションやAIエージェントの開発を実施。個人ではエンジニア向けの勉強会開催や教材作成など。オンライ

                                                                    Difyソースコードリーディング#2 ―Difyの開発環境を起動してみる (2024/09/05 12:00〜)
                                                                  • 『【Linuxカーネルを読む】ChatGPTで爆速コードリーディング - Qiita』へのコメント

                                                                    ブックマークしました ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください Twitterで共有

                                                                      『【Linuxカーネルを読む】ChatGPTで爆速コードリーディング - Qiita』へのコメント
                                                                    • コードリーディングの履歴を残しながら調査したい - Qiita

                                                                      これはなに? コードリーディングを行う時、GitHubやVSCodeの定義ジャンプの機能を使って動作を追いかけることをすると思いますが、実際に追いかけている時は、わかった気になっていても、後からその記録を辿り直すことは難しいです。 よくやるやり方 ということで、メモを残しながらコードリーディングするのですが、このメモが見づらい。 https://github.com/spiffe/spire/blob/88debf14a4e5f262bcb7aa0ef9b29dfb5531863d/pkg/agent/client/client.go#L314 GetAuthorizedEntries でtrust bundle とそのAgentが担当するRegistrationEntriesを取得しているようだ。 期限の更新はどこで行われるのだろうか? agentが署名しているのかな。そんな気がするな

                                                                        コードリーディングの履歴を残しながら調査したい - Qiita
                                                                      • Laravel8内部を読み解くコードリーディング - Eloquent基本編 -

                                                                        なんとなく使っているあの関数は内部でどう処理が行われているのでしょうか? コードリーディングではプロが書いたコードを読みながら、より良いコードを書くための方法を探っていきます。 1人では挫折してしまう方も、この本を読んでLaravelマスターを目指しましょう!

                                                                          Laravel8内部を読み解くコードリーディング - Eloquent基本編 -
                                                                        • Redmineのコードリーディング用環境をDocker上に構築する - Qiita

                                                                          概要 redmineのソースコードを読むための環境をDockerで構築します。以下の状態をゴールとします。 redmineのmasterブランチのコードがDocker上で動作する Debug用のツールが使える モチベーション 動作環境を構築するのは実際のアプリケーションの挙動とコード内容を頭の中で紐付けながらコードリーディングしたいからです。 なぜコードリーディングしたいのか? 人が書いたコードを読むことは新たな発見や学びに繋がると考えています。 私の場合は、クラスの分け方、命名、テストコードの書き方、エラーハンドリングの仕方などに悩むことが最近多いので、そのあたりの引き出しを増やしたいというモチベーションがあります。 なぜRedmineか? Redmineを選んだのは以下の理由です。 普段からRedmineを使っているため馴染みがあり、画面や外部仕様をある程度知っている。 長年メンテナン

                                                                            Redmineのコードリーディング用環境をDocker上に構築する - Qiita
                                                                          • gRPC-Javaの仕組みが気になったのでコードリーディングしてみた - Qiita

                                                                            はじめに gRPCのJavaチュートリアルをやってみて、どういう仕組みで動いてるか気になったので色々調べた。 gRPC-Javaの利用方法などはチュートリアルに記載してあるので細かい説明はしません どうやって通信しているのか、細かい内部の実装がどうなっているかについて、自分の中で理解した内容の整理です 確認バージョン releases: gRPC-Java v1.16.1 チュートリアルで使ったのはrouteguideパッケージのソース gradleの設定はこちら compile 'io.grpc:grpc-netty-shaded:1.16.1' compile 'io.grpc:grpc-protobuf:1.16.1' compile 'io.grpc:grpc-stub:1.16.1' gRPCについて そもそもgRPCについて公式ドキュメントからポイントを抜粋。 Protocol

                                                                              gRPC-Javaの仕組みが気になったのでコードリーディングしてみた - Qiita
                                                                            • 【Linuxカーネルを読む】ChatGPTで爆速コードリーディング - Qiita

                                                                              はじめに OpenAIによって開発されたChatGPTが話題になっています。特に、2023年3月14日に公開された最新モデルであるGPT-4は、これまで私達がAIに持っていた認識を根底から覆したのではないでしょうか? 私は、「普通に人間とやりとりしているのと変わらんやん…」と率直に驚きました。 エンジニアの業務の中でも、自動コーディング支援、技術的課題の壁打ち相手、ドキュメント自動生成、学習支援等さまざまな用途に活用する可能性を皆さん検証している段階です。私もその波に乗っている真っ最中です。 そこで今回は、ソースコードリーディングをChatGPTをメンターにしたら爆速にできるのではないか?という仮説を検証してみました。 そしてどうせやるなら、ソースコードリーディングのハードルの高さナンバーワン(個人調べ)の「Linuxカーネル」を題材にしてみました。 なお、使用したモデルはGPT-4です。

                                                                                【Linuxカーネルを読む】ChatGPTで爆速コードリーディング - Qiita
                                                                              • 急なTypeScript案件🔥最初の30日間に使い倒したい「コードリーディング支援ツール」 - Qiita

                                                                                この投稿では、「TypeScriptの文法や用語がよく分からない」という問題を解消してくれそうなツールを紹介します。 勉強しながらの見切り発車 最近はTypeScript未経験でも、TypeScript案件にアサインされることが増えてきているように思います。 運がいいと着手前にTypeScriptをじっくり学習する時間を与えられることがあります。しかし、多くのケースでは、見切り発車で開発に参加するのではないでしょうか。 コードリーディングから始まる TypeScript案件は、理解すべき既存のTypeScript/JavaScriptコードがあるケースが多いです。 そのため、 読んで理解すべき既存のTypeScriptコードがある しかし、TypeScriptの知識が乏しい状態でスタート といった事態がよく起きます。 新規プロジェクトでは既存コードがありませんが、ググって出てきたサンプルコ

                                                                                  急なTypeScript案件🔥最初の30日間に使い倒したい「コードリーディング支援ツール」 - Qiita
                                                                                • Rack CORSコードリーディング

                                                                                  rack-cors (1.0.2)のコードリーディングをしました。 その名の通りRackミドルウェアになっていてRack::Corsを明示的にミドルウェアとして設定する必要があります。 module YourApp class Application < Rails::Application # ... # Rails 5 config.middleware.insert_before 0, Rack::Cors do allow do origins '*' resource '*', :headers => :any, :methods => [:get, :post, :options] end end ということでRack::Corsの中身を見ていきます。lib/rack/cors.rbの1ファイルで全て構成されているので分割して説明します。 まず初期化時にblockを渡すとRac