並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 38 件 / 38件

新着順 人気順

structの検索結果1 - 38 件 / 38件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

structに関するエントリは38件あります。 gogolangruby などが関連タグです。 人気エントリには 『Big Sky :: Go 言語の struct の実体を引数で(なるべく)渡せない様にするテクニック』などがあります。
  • Big Sky :: Go 言語の struct の実体を引数で(なるべく)渡せない様にするテクニック

    Go 言語は struct のレシーバがポインタの場合は実体であってもポインタの場合であっても呼び出せるので、もし struct が参照カウントに従い動作する様な場合は実体でコピーされてしまっては困る場合があります。例えば以下の様なインタフェースを考えます。 package main import ( "fmt" "sync/atomic" "time" ) type foo struct { n int64 q chan struct{} } func (f *foo) Add() { if atomic.AddInt64(&f.n, 1) == 1 { f.q = make(chan struct{}) } } func (f *foo) Done() { if atomic.AddInt64(&f.n, -1) == 0 { f.q <- struct{}{} } } func (f

      Big Sky :: Go 言語の struct の実体を引数で(なるべく)渡せない様にするテクニック
    • BigQuery で 1 円も溶かさない人の顔 (ZERO BYTE STRUCT を考案した) - Qiita

      自分は BigQuery で Extract-Load されたデータを機械学習モデル用に前処理し、テラバイト級の特徴量エンジニアリングを行っています。この記事では、BigQuery のデータ量を一切消費せず、誇張なく 1 円も溶かさない裏技をまとめます。(2019/12/18 現在) ※ パロ元:BigQueryで150万円溶かした人の顔 元ネタの方と同じ職場で働くことになりましたので、被せて書いております。この記事では、BigQuery 記事最安値を目指します。 速くて安い BigQuery は、データウェアハウスとしても、特徴量エンジニアリングツールとしても優れており、機械学習モデルを用いたサービスを構築する際には、ベースラインとして一候補に挙がるでしょう。 BigQuery の料金 オンデマンドクエリを利用する際、極めて重要なのは読み取りデータ量に対して \$5/TB の料金が発生す

        BigQuery で 1 円も溶かさない人の顔 (ZERO BYTE STRUCT を考案した) - Qiita
      • 【C#】構造体(struct)を完全に理解する - Annulus Games

        今回の記事はC#における構造体(struct)について。 複合的なデータを扱う際、多くの場面ではクラス(class)が用いられるかと思います。しかし、パフォーマンスが重要な場面や、GCによる影響が大きいUnityなどでは、状況に応じてクラスではなく構造体を使用した方が良いこともあります。 近年はC#においてもパフォーマンスが重視されるようになり、構造体が用いられる機会も多くなっています。またUnityのDOTSにおいても、C# Job SystemやBurst Compilerに最適化されたコードを書くために構造体を多用することになります。 ここでは構造体に関する基礎的な知識から、クラスと構造体のメモリ管理について、そして実際に構造体を用いる際の注意や活用方法についても解説していきたいと思います。 ただ今回の記事、調子に乗って色々な内容を詰め込んだ結果、めちゃくちゃに長くなってます。そのた

        • Big Sky :: Go の struct は小さくできる(fieldalignment のススメ)

          動的型付けプログラミング言語や、class を持つようなプログラミング言語を使う場合、そのフィールドメンバの定義順などを意識する事は少ないかもしれません。 Go は struct という、C言語が持っている構造体と同じ様にメモリ配置され、構造体そのものをレシーバとして、メソッドを定義しつつプログラミングを行います。struct はデータ構造そのものを示し、それが大きくなるにつれ、当然ながらメモリ使用量も多くなります。 さて、例えば以下のコードを実行すると、struct 100 個分のサイズは幾らになるでしょうか。 package main import ( "fmt" "unsafe" ) type Account struct { TimeZone struct { Name       string `json:"name"` UtcOffset  int    `json:"utc_

            Big Sky :: Go の struct は小さくできる(fieldalignment のススメ)
          • structのメモリ割り当て - Carpe Diem

            概要 Goにおけるstructのメモリ構造を知ることでフィールド順序に対する意識が変わったり、なぜunsafe.Sizeof(string)が16bytesでunsafe.Sizeof(slice)が24bytesになるかが理解できます。 環境 Go 1.15.6 darwin 20.1.0 x86_64 各型のメモリ割り当て unsafe.Sizeof()を使うとその変数がどれくらいメモリを割り振るかが分かります。 ※変数の分確保するメモリであり、参照先のメモリは含みません 型 unsafe.Sizeof() bool 1 int32 4 int 8 float64 8 string 16 []T 24 The Go Playground structのフィールドにそれぞれの型を付けると、その分メモリが割り振られます structのメモリ割り当て 例えばbool, float64, in

              structのメモリ割り当て - Carpe Diem
            • 💫T.Katsumi🌏OfficeBALÉS on Twitter: "翻訳者として指摘します。滅茶苦茶です。Racismとは厳密には「人種差別主義」です。Google辞書程度で強弁なさらないでください。人種で差別することを至上とするイズム(主義)です。Structural racismのstruct… https://t.co/BlaPqKMciq"

              翻訳者として指摘します。滅茶苦茶です。Racismとは厳密には「人種差別主義」です。Google辞書程度で強弁なさらないでください。人種で差別することを至上とするイズム(主義)です。Structural racismのstruct… https://t.co/BlaPqKMciq

                💫T.Katsumi🌏OfficeBALÉS on Twitter: "翻訳者として指摘します。滅茶苦茶です。Racismとは厳密には「人種差別主義」です。Google辞書程度で強弁なさらないでください。人種で差別することを至上とするイズム(主義)です。Structural racismのstruct… https://t.co/BlaPqKMciq"
              • Goで関数の引数に、union型っぽくstruct Aもしくはstruct Bのどちらかを受け取れるようにしたい - $shibayu36->blog;

                Goで関数の引数に、struct Aという型もしくはstruct Bのどちらかを受け取るということをしたかった。interfaceをちゃんと切ってそれに必要なメソッドをAとBに実装することで実現できることを知った上で、あまり丁寧にそういうことをせずにやりたい。 色々調べると、genericsを使うとできるようだ。 package main import "fmt" type A struct { Field1 int } type B struct { Field2 string } type AorB interface { A | B } func PrintAorB[T AorB](s T) { // Tで受け取ったものをそのままs.(type)とは出来ないので、一旦anyへキャスト switch v := any(s).(type) { case A: fmt.Println(v.

                  Goで関数の引数に、union型っぽくstruct Aもしくはstruct Bのどちらかを受け取れるようにしたい - $shibayu36->blog;
                • 【Go】構造体のフィールドに定義してある`_ struct{}`はどういう意味? - Qiita

                  【Go】構造体のフィールドに定義してある_ struct{}はどういう意味? ライブラリのコードを読んでいると_ struct{}というフィールドが定義してある構造体をみかけることがありますが、これはどういう意味なのか?というお話です。 結論としては、これは構造体を初期化する際に、フィールド名の指定を強制する意図で宣言されています。 blank identifierを用いた構造体の定義とComposite literalsによる構造体の初期化 _はblank identifierと呼ばれるものです。 これは、dev/nullに似ていて、blank identifierに割当てられた値や宣言は、無害な方法で、虚無のブラックホールへと捨て去られます。(_がブラックホールの穴に見えてくる…) ここでは詳しく説明しませんが、Effective Goに詳しい使用用途などが紹介されています。 また、C

                    【Go】構造体のフィールドに定義してある`_ struct{}`はどういう意味? - Qiita
                  • golangのstructに対してコンストラクタを自動生成するCLIツール "gonstructor" を書いた - その手の平は尻もつかめるさ

                    github.com 表題の通りです.出オチのような名前です. 使い方やどういう挙動をするかという話題についてはREADME.mdのSynopsisをご覧いただければと思います.Javaのlombokをご存知の方はlombokの@Valueのような挙動をする,と言えばイメージしやすいでしょう. 基本的にはgo:generateと組み合わせて使うことになるだろうと思います. モチベーションとしてはREADME.mdのMotivationにも書きましたが,ザックリ言うと以下のような感じです: Structのフィールドをprivateかつimmutableに取り扱いたいことが多い フィールド (ないしはstruct) をimmutableに保つことについて,goでは基本的に「気をつける」しかないが,その際にはフィールドはprivateであるほうが嬉しい フィールドを破壊的に変更できる存在が絞られ

                      golangのstructに対してコンストラクタを自動生成するCLIツール "gonstructor" を書いた - その手の平は尻もつかめるさ
                    • Rust で新しく struct や enum を定義するときに実装を検討する trait まとめ - Qiita

                      メモっとかないとよく忘れるんですよ…… (おい) 基本 Clone, Copy Default Debug, Display 比較 PartialEq, Eq PartialOrd, Ord 変換 Deref, DerefMut AsRef, AsMut Borrow, BorrowMut From, TryFrom FromStr ToOwned 出力 Binary Octal LowerHex, UpperHex LowerExp, UpperExp Pointer 特定用途向け エラー用 Error ハッシュテーブルの要素用 Hash コンテナー用 Extend FromIterator IntoIterator 演算子 Sum, Product Add, AddAssign, Sub, SubAssign, Mul, MulAssign, Div, DivAssign, Rem,

                        Rust で新しく struct や enum を定義するときに実装を検討する trait まとめ - Qiita
                      • 週刊Railsウォッチ(20200707後編)Rubyで無名structリテラル提案、書籍『AWS認定ソリューションアーキテクト』、21世紀のC言語ほか|TechRacho by BPS株式会社

                        2020.07.07 週刊Railsウォッチ(20200707後編)Rubyで無名structリテラル提案、書籍『AWS認定ソリューションアーキテクト』、21世紀のC言語ほか こんにちは、hachi8833です。七夕なのに悪天候... 各記事冒頭には⚓でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄 ⚓Ruby ⚓提案: 無名structリテラル Feature #16986: Anonymous Struct literal - Ruby master - Ruby Issue Tracking System -- 現在openです # 同issueより ${a: 1, b: 2} # 上は以下とほぼ同じ Struct.new(:a, :b).ne

                          週刊Railsウォッチ(20200707後編)Rubyで無名structリテラル提案、書籍『AWS認定ソリューションアーキテクト』、21世紀のC言語ほか|TechRacho by BPS株式会社
                        • 【Unite Tokyo 2019】Understanding C# Struct All Things

                          2019/9/25-6に開催されたUnite Tokyo 2019の講演スライドです。 河合 宜文(株式会社Cysharp) こんな人におすすめ ・C#を極めたいエンジニア ・パフォーマンスに興味のあるエンジニア ・プログラミング言語マニア 受講者が得られる知見 ・structに関する深い知識 ・パフォーマンス向上のヒント ・C#の新しい文法と活用法 Unityのイベント資料はこちらから: https://www.slideshare.net/UnityTechnologiesJapan/clipboards Read less

                            【Unite Tokyo 2019】Understanding C# Struct All Things
                          • Swiftで大量のメンバ変数があるclassやstructのinitを自動生成する。 - 文字っぽいの。

                            環境 Xcode Version 12.1 Apple Swift version 5.3 課題 開発をしていると、こんな感じでメンバ変数がたっぷりあるclassができます。この例ではclassですが、structも同様ですね。 class SampleClass: Codable { public let id: Int public let title: String public let body: String public let thumbnailUrl: URL public let tags: [String] public let categories: [String] public let createdAt: Date public let updatedAt: Date public let comment: [String] public let isFavor

                              Swiftで大量のメンバ変数があるclassやstructのinitを自動生成する。 - 文字っぽいの。
                            • Understanding C# Struct All Things | Unity Learning Materials

                              C#の構造体(struct)はUnityでパフォーマンスを引き出すために非常に重要な言語機能です。しかし、Classとは大きく扱いが異なるため、正しい取扱には深い理解が求められます。また、C#は7.0-7.3の間に、多くの構造体の扱いを向上させる文法を追加しました(ref structやin引数、Spanなど)。 ランタイムによる挙動から、新しい文法による取扱まで、このセッションではUnity 2019世代でのstructの用法の全てを紹介し、受講者がC#のポテンシャルを最大限に引き出せるようにします。

                                Understanding C# Struct All Things | Unity Learning Materials
                              • そのstruct、実は不要になるかもしれません - podhmo's diary

                                これはGo Advent Calendar 2020の3日目の記事です。 とりあえずで登録してしまったので、特に肩に力の入った力作などは用意してないです。この記事は、本来のアドベントカレンダーの趣旨に沿った(?)ちょっとした内容の記事にしようと思います。 はじめに断っておくと、あんまり役に立つ内容ではありません。へー、そういうのもあるんだー程度の軽い気持ちで読むことをおすすめします。 goでのweb API用のクライアントライブラリ goでweb API用のライブラリを実装するとき、とくにREST API用のクライアントライブラリを実装してみるときに、パスのネスト構造をそのままstructとして定義する実装をよく見ます。これはstructを一種の名前空間として使うことで名前の衝突を避ける機能、そして実装をちょうど良い粒度で分割するためのアイデアと言えるかもしれません。 例えば、以下のような

                                  そのstruct、実は不要になるかもしれません - podhmo's diary
                                • めっちゃ便利なRubyのStructクラスのお話 - Qiita

                                  きっかけ とちぎRuby会議09にリモートで参加し、そこで見たLTに今更聞けない! Struct の使い方と今後の可能性についてでRubyのStructクラスについて初めて知った。 なにこれめっちゃ便利じゃん!となったので啓蒙も兼ねて記事を書こう、となったのがきっかけ。 Rubyはかれこれ休み休み10年間は触っているけれど未だに発見がある。素敵!学んでいないだけでは?? Structクラスとは Ruby 2.7.0 リファレンスマニュアル Structクラス 構造体クラス。Struct.new はこのクラスのサブクラスを新たに生成します。 個々の構造体はサブクラスから Struct.new を使って生成します。個々の構造体サブクラスでは構造体のメンバに対するアクセスメソッドが定義されています。 自分の解釈で説明すると 任意の名前のプロパティ(とメソッド)を持つオブジェクトをお手軽に作成でき

                                    めっちゃ便利なRubyのStructクラスのお話 - Qiita
                                  • DBスキーマからGoのstruct定義を生成するグッズを書いた - 私が歌川です

                                    GoでSQLを書いて実行するとき、素のdatabase/sqlだけだとさすがに心もとないのでsqlxなどのライブラリを使ってDBの行をstructにマッピングすると思います。db struct tagでマッピング元のカラム名を指定できるのが便利ですね。 一方で、このstructを定義する作業ですが、テーブルのカラムが多いと大変だし、typoしていたので直して再チャレンジする……ということが往々にしてあると思います。 こういうときのためにstruct定義を生成するツールを書いてみました。 go install github.com/utgwkk/rowstructgen@latest を実行したら使えるようになると思います。今のところMySQLにしか対応していません (普段はMySQLしか使っていないため)。main.goに全ての実装が書いてあってひどい感じなので、気が向いたらなおします。

                                      DBスキーマからGoのstruct定義を生成するグッズを書いた - 私が歌川です
                                    • BigQueryのARRAYとSTRUCTを理解して使いこなす - G-gen Tech Blog

                                      G-gen の杉村です。BigQuery は通常の RDBMS と異なり分析用データベースであることから、非正規化したテーブルを扱うことが多くなります。そのための独特のデータ型として、ARRAY (配列) と STRUCT (構造体) があります。これらについて解説します。 概要 ARRAY (配列) ARRAY とは サンプルテーブル SELECT SELECT 〜 WHERE SELECT 〜 CROSS JOIN SELECT (SELECT ~ UNNEST) CREATE TABLE / INSERT 制限 STRUCT (構造体) STRUCT とは サンプルテーブル SELECT SELECT 〜 WHERE CREATE TABLE / INSERT 制限 ARRAY<STRUCT> (ネストされた繰り返し列) ARRAY<STRUCT> とは サンプルテーブル SELEC

                                        BigQueryのARRAYとSTRUCTを理解して使いこなす - G-gen Tech Blog
                                      • [GO] structを定義せずにJSONファイルを読み書きしてみた | DevelopersIO

                                        GOに入門しています。 GOでJSONを扱う場合、標準サポートされてるencoding/jsonが存在します。 これを使ってJSONを読み込む場合、 多くの場合対応した構造体を用意して読み込むやり方と共に紹介されています。 しかしここ数年ずっとPythonばっかり書いていた私には、これは正直面倒すぎました。。。 おそらくGO的なスタイルとしては構造体を定義した方が正しいんだと思いますが、 私がJSONを読み込みたかった場面はこんな状況でした。 使いたいのはある程度大きなJSONのごく一部 JSONの構造がまだこれから変わりうる 現実として、ある程度大きなJSONを読み込む場合でも 使いたい情報はそのごく一部であることも多いかと思います。 また、その使いたい情報とは全然関係ないところの構造が変わったという時に、 そのために構造体の定義を作り直すことも面倒です。 そこで、できるだけお手軽にJS

                                          [GO] structを定義せずにJSONファイルを読み書きしてみた | DevelopersIO
                                        • 【Ruby】Hashもいいけど、一歩進んでStructを積極的に使おう - Qiita

                                          特定の項目について値を保存したりする時にHashはよく使われているかと思います。 しかしながら、Structをあまり使ったことのない方や知らない方も初学者中心にいらっしゃるのではないでしょうか。 Structとはどのようなものなのか、またどのようなケースに有用なのかを是非知っていただきたいと思います。 Structとは Structとは日本語では「構造体」と訳されます。 「構造体」というとっつきにくそうな名前をしていますが、臆することはないです。 「Hashのように保存できる即席クラス」と捉えてください。 Hashはキーバリューストアと呼ばれていて、「キー」と「値」が対に保存されています。 Structもほぼは同じです。 ただし「キー」ではなく「メンバ」と呼ばれており、「メンバ」と「値」が対に保存されています。 あるメンバに値を保存したり、あるメンバの値を取得したりとHashと操作感は似て

                                            【Ruby】Hashもいいけど、一歩進んでStructを積極的に使おう - Qiita
                                          • 【Ruby】Struct(構造体クラス)を理解する - Qiita

                                            Struct(構造体クラス)とは? RubyにおけるStruct(構造体クラス)は簡易的なクラスのようなもので、下記のようなケースで使用されます。 まとまったデータを扱いたいが、クラスを作るまでもない場合。 クラス内で特定のデータのまとまりを表現する場合。 通常のクラスとの違い 主に下記のような違いがあります。 継承、メンバの追加・削除ができない。 明示的にアクセスメソッドを定義しなくても、構造体クラス外でメンバの参照・更新が可能。 Struct(構造体クラス)の定義方法 定義方法(1) 第一引数にはStringで構造体クラス名を渡します。(クラスと同じで大文字から始まる必要があります。) 第二引数以降にはSymbolでメンバを渡します。 第一引数を渡した場合 Struct.new("User", :name, :age) p Struct::User.new("Taro", 36) #=

                                              【Ruby】Struct(構造体クラス)を理解する - Qiita
                                            • Feature #16986: Anonymous Struct literal - Ruby master - Ruby Issue Tracking System

                                              Abstract¶ How about introducing anonymous Struct literal such as ${a: 1, b: 2}? It is almost the same as Struct.new(:a, :b).new(1, 2). Proposal¶ Background¶ In many cases, people use hash objects to represent a set of values such as person = {name: "ko1", country: 'Japan'} and access its values through person[:name] and so on. It is not easy to write (three characters [:]!), and it easily introduc

                                              • neue cc - Unite Tokyo 2019でC# Structの進化の話をしてきました

                                                Unite Tokyo 2019にて、「Understanding C# Struct All Things」と題して登壇してきました!動画は後日Unity Learning Materialsに公開される予定です。 C#成分強めなので、Unityに馴染みのない人でも読んで楽しめる内容になっていると思います。とはいえ勿論、Uniteでのセッションであるということに納得してもらえるようUnity成分もきちんと取り入れています。というわけで、どちらの属性の人にも楽しんでいただければ! structに関する機能強化、実際めっちゃ多いんですが、それをカタログ的に延々と紹介してもつまらないので、そうしたカタログ紹介っぽさが出ないように気を配ってます。あと、あんましそういうのでは脳みそに入ってこないというのもあるので。 応用例的なところのものは、ないとつまらないよねーということで色々持ってきたのですが

                                                • Introducing Struct: a feed-centric chat platform - Struct

                                                  For conversations that matter: Struct is a radical new chat platform designed around threads, feeds and AI to 2x your productivity. For conversations that matter: Struct is a radical new chat platform designed around threads, feeds and AI to 2x your productivity. For conversations that matter: Struct is a radical new chat platform designed around threads, feeds and AI to 2x your productivity. Endl

                                                    Introducing Struct: a feed-centric chat platform - Struct
                                                  • Ruby Struct – Long Live Ruby

                                                    Basic usage Employee = Struct.new(:first_name, :last_name) employee = Employee.new(“John”, “Doe”) employee.first_name # => “John” employee.last_name # => “Doe” As you can see, it behaves like a simple Ruby class. The above code is equivalent to: class Employee attr_reader :first_name, :last_name def initialize(first_name, last_name) @first_name = first_name @last_name = last_name end end employee

                                                    • struct2depth(距離推定)を動かしてみた - ハードウェア技術者のスキルアップ日誌

                                                      久しぶりにGITHUBで公開されているDeep Learningのネットワークを動かしてみました。今回はtensorflowのソース内にあるstruct2depthです。慣れていればどうってことないのでしょうか、初見でつまずいてしまったので、手順を記録しておきます。 struct2depthとは? Google Brainが開発した、単眼カメラから深度とエゴモーション(カメラ自身の動き)を推定する手法です。取得するのが難しい、距離の正解情報を必要とせずに距離推定器を学習させることができるのが特徴です。 プロジェクトサイト https://sites.google.com/view/struct2depth 動作環境 ● OS : Windows 10 Home (64bit) ● Python 3.5 ● Anaconda 4.2.0 ● Tensorflow 1.12.0 手順 ① GI

                                                        struct2depth(距離推定)を動かしてみた - ハードウェア技術者のスキルアップ日誌
                                                      • Init Struct Pattern

                                                        Introduction Let’s talk initialization of complex structures in Rust. There’s a few popular ways to go about this, some of which include the pub fn new() convention and the builder pattern. In this blog post I’m going to compare these, and also introduce a new pattern which I’m going to call the Init Struct Pattern. New The first and most common way to initialize structures is by declaring a funct

                                                        • structのomitemptyの挙動と使い所の検討 - emahiro/b.log

                                                          golangのstructでjsonのencodingのためのpropertyに omitempty をつけた時の挙動とその使いどこを検討します。 omitemptyタグとは https://golang.org/pkg/encoding/json/#Marshal には以下の用に記載されている。 The "omitempty" option specifies that the field should be omitted from the encoding if the field has an emptyvalue, defined as false, 0, a nil pointer, a nil interface value, and any empty array, slice, map, or string. omitempty属性をつけたstructのjsonのprop

                                                            structのomitemptyの挙動と使い所の検討 - emahiro/b.log
                                                          • SwiftUIのSubViewのstructは画面更新ごとに生成と破壊を繰り返す - Qiita

                                                            この記事の目的 SwiftUIのSubViewはその親Viewを更新されるタイミングで繰り返し生成と破棄されます。画面を更新されるたびにstructであるSubViewは破棄されて作り変えられているわけです。これを数字で理解するのがこの記事の目的です。 SubViewは描画が必要なタイミングで生まれ変わっている、というのを言葉ではなく数字で分かりたいわけです。 (SubViewでない親Viewは繰り返し生成されなくても画面更新されます。これは例えばUIHostingController(rootView:)で指定したSwiftUI.Viewなどです) 具体的な前提 前提を説明すると、とあるContentViewが@ObservedObjectを持つ場合にその@Publishedなプロパティが更新された場合、ContentViewは更新のためにvar body: some View {} プ

                                                              SwiftUIのSubViewのstructは画面更新ごとに生成と破壊を繰り返す - Qiita
                                                            • [Tips] 既知の値に対してenumを使うかstructを使うか

                                                              はじめに Swiftで、既知の値を表現する方法について、時々コードレビューで指摘することがあるので、記事にしておこうと思います。 この記事では、既知の値に対して以下の3種類の方法を紹介します。 enumで実装する方法 structで実装する方法 enum + structで実装する方法 Swiftに慣れている人にとっては当たり前な内容かもしれませんが、知らない人も一定数いると感じたので、ちょっとしたTipsですが紹介します。 題材のコード 今回は題材として以下のような設定画面を考えます。 この設定画面には各セルに対応するItemがあり、SwiftUIのListを使って、以下のように書かれているとします。 let itmes: [Items] = ... List(item) { item in // itemを使って、セルを作る } セルの種類は以下の3種類とします。 アカウント お問い合

                                                                [Tips] 既知の値に対してenumを使うかstructを使うか
                                                              • [解決!Python]バイナリファイルを読み書きするには:structモジュール編

                                                                # structモジュールを使ってバイナリファイルに書き込み from struct import pack, unpack, calcsize, iter_unpack person = ('かわさき', 120, 99.9) fmt = '20sid'  # 長さ20のバイト列(20s)、整数(i)、倍精度浮動小数点(d) b = pack(fmt, person[0].encode(), person[1], person[2])  # fmtに従ってバイト列化 with open('data.bin', 'wb') as f: f.write(b) # データサイズの計算 data_size = calcsize(fmt) print(data_size)  # 32(このデータは32バイト長) # バイナリファイルから読み込んで、structモジュールを使って復元 with op

                                                                  [解決!Python]バイナリファイルを読み書きするには:structモジュール編
                                                                • RustのstructをRubyのclassとして扱う

                                                                  user = User.new(4) # 初期化, idの指定 user.name = 'piyo' # nameの指定 user.display # => 'id: 4, name: piyo' ソースコード 今回動作させたコードはこちらのリポジトリに置いた。 https://github.com/koyopro/ruby_object_with_rust READMEにビルドやテストの実行コマンドも記載しているので、動作を見ながら確認できると思う。 連携周りのソースコード 上の項で記載したsrc/user.rs(struct Userの定義)以外で特筆すべきファイルは以下の3つ。 他言語からRustの実装を呼ぶ為のインターフェース定義(src/lib.rs) Ruby-FFIを利用したブリッジの実装(lib/ruby_object_with_rust.rb) Ruby側のUserクラス

                                                                    RustのstructをRubyのclassとして扱う
                                                                  • C#8.0 Default Interface Methods でstructがBoxingされる,されない話 - Qiita

                                                                    C#8.0 Default Interface Methods でstructがBoxingされる,されない話C#C#8.0 この記事はC# Advent Calendar 2019の15日目です。 初投稿です。 TL;DR C#8.0でInterfaceにも実装できるようになった しかしstructとの相性が悪い仕様でBoxingされる 条件によってはされないこともある? Default Interface Methods とは Default Interface Methods (以下DIMs) とは、C#8.0の新機能の一つで、今まで宣言しかできなかったinterfaceでメソッドを実装できるようになりました。JavaのDefault Methodsのようなものです。 https://github.com/dotnet/csharplang/blob/master/proposals

                                                                      C#8.0 Default Interface Methods でstructがBoxingされる,されない話 - Qiita
                                                                    • Ruby 3.2 で Struct がチョイ楽になる? - Qiita

                                                                      Ruby で構造体的なデータを表すクラスにはいろいろありますが,その代表格は,やはり組込みクラスの Struct ですよね。 たとえば,猿への給餌計画を表す ApeFeed クラスはこんなふうに: ApeFeed = Struct.new(:morning, :evening) proposed_ape_feed = ApeFeed.new(4, 3) p proposed_ape_feed.morning # => 4 p proposed_ape_feed.evening # => 3 しかし,どうも私は Struct を多用する気になれないでいます。 理由の一つは,Struct.new が Struct のインスタンスではなくサブクラスを返す,という謎仕様。 えっと,クラスに new したらインスタンスを生成して返すでしょ,ふつう。 なぜこんなワケの分からない仕様なのか理解に苦しみま

                                                                        Ruby 3.2 で Struct がチョイ楽になる? - Qiita
                                                                      • Go言語でハマったことメモ(マップに構造体を入れると「cannot assign to struct field ...」のエラーになる) - 新しいことにはウェルカム

                                                                        Golangを始めました。 始めてみて感じたのですが、Golangはできるだけ文法をシンプルにかつ、できるだけコードがシンプルになるように設計されています。 そしてそのために、Golangには若干トリッキーな構文がいくつかあります。 しかし、それらを知らずに、他の言語での先入観や勝手な思い込みで判断してしまって、ハマることがちょいちょいありました。 ここでは、Golangを始めてみて、個人的にハマったことや、勘違いしたことを、トピック別に備忘録としてメモしていこうと思います。 今回は、マップに構造体を入れると「cannot assign to struct field ...」のエラーになることについてのメモです。 マップに格納した構造体の要素に代入はできない マップには構造体を格納できるのですが、その構造体の要素に代入(=)しようとすると cannot assign to struct

                                                                          Go言語でハマったことメモ(マップに構造体を入れると「cannot assign to struct field ...」のエラーになる) - 新しいことにはウェルカム
                                                                        • Ozawa Kenji 小沢健二 on Twitter: "Racismの訳語は「人種差別」ではなく「人種主義」です。Capitalismを「資本差別」ではなく「資本主義」と訳すのと同じ。 Ism(主義)は、社会生活の全てに影響します。 今の米国の暴動を見て関心を持ったら、Struct… https://t.co/82Wm4ChY0K"

                                                                          Racismの訳語は「人種差別」ではなく「人種主義」です。Capitalismを「資本差別」ではなく「資本主義」と訳すのと同じ。 Ism(主義)は、社会生活の全てに影響します。 今の米国の暴動を見て関心を持ったら、Struct… https://t.co/82Wm4ChY0K

                                                                            Ozawa Kenji 小沢健二 on Twitter: "Racismの訳語は「人種差別」ではなく「人種主義」です。Capitalismを「資本差別」ではなく「資本主義」と訳すのと同じ。 Ism(主義)は、社会生活の全てに影響します。 今の米国の暴動を見て関心を持ったら、Struct… https://t.co/82Wm4ChY0K"
                                                                          • Exploring a powerful SQL pattern: ARRAY_AGG, STRUCT and UNNEST

                                                                            by Lak Lakshmanan Exploring a powerful SQL pattern: ARRAY_AGG, STRUCT and UNNESTIt can be extremely cost-effective (both in terms of storage and in terms of query time) to use nested fields rather than flatten out all your data. Nested, repeated fields are very powerful, but the SQL required to query them looks a bit unfamiliar. So, it’s worth spending a little time with STRUCT, UNNEST and ARRAY_A

                                                                              Exploring a powerful SQL pattern: ARRAY_AGG, STRUCT and UNNEST
                                                                            • GA4データの複雑な構造に立ち向かう(BigQuery:ARRAY,STRUCT)

                                                                              あなたの心にsession_start。どうも、SQL芸人です。 Google Analyticsの最新版「GA4」では、BigQueryにデータがエクスポートできます。 ですが、データ構造が入り組んだ状態になっていて、ちょっと難しいです。 そこで、今回はそんなデータ構造と戦ってみたいと思います。 GA4のサンプルデータを見てみる 設定方法 Googleが公開しているデータ群「bigquery-public-data」の中に 「ga4_obfuscated_sample_ecommerce」というデータセットがあって そこに「events_」というGA4のサンプルテーブルがあるので、まずはそれを見てみたいと思います。 これを見れるようにする方法は、こちらのページをご参照ください! データを見てみる 設定ができたら、サンプルデータを見てみましょう。 デフォルトの「2021-01-31」テーブ

                                                                                GA4データの複雑な構造に立ち向かう(BigQuery:ARRAY,STRUCT)
                                                                              1

                                                                              新着記事