はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    WWDC25

『民主主義に乾杯』

  • 人気
  • 新着
  • すべて
  • プログラミングで副作用と状態ってなに? | 民主主義に乾杯

    8 users

    python.ms

    # 1. 副作用とは 「副作用」とは、関数またはメソッドを実行した時に、オブジェクトの属性が変化することを指しています。 例えば Python の list.sort は、副作用のあるメソッドです。 反対に sorted は、副作用のない関数です。 # # 副作用あり # lst1 = [1, 0, 3, 2] lst1.sort() lst1 # [0, 1, 2, 3] -> オブジェクトが変化したので副作用がある # # 副作用なし # lst2 = [1, 0, 3, 2] lst3 = sorted(lst2) lst2 # [1, 0, 3, 2] -> オブジェクトは変化していないので副作用はない lst3 # [0, 1, 2, 3] プログラミングにおける副作用(ふくさよう)とは、ある機能がコンピュータの(論理的な)状態を変化させ、 それ以降で得られる結果に影響を与えるこ

    • テクノロジー
    • 2020/03/22 16:31
    • Python で Web アプリが作りたい | 民主主義に乾杯

      4 users

      python.ms

      ランディングページ <-> ウェブアプリケーション ランディングページ ... jQuery, ウェブ制作, ホームページの作成, ウェブ広告の作成 ウェブアプリケーション ... Vue.js, Angular, React, Progate, teratail のようなデータベースと連携のあるサービス エンジニア寄り jQueryはオワコン WordPressはオワコン CSSわからん Bootstrap便利ですわ Web開発 デザイナー寄り jQueryは現役 WordPressは現役 JavaScriptわからん Bootstrapなんて使わない Web制作 多分こんな感じ — あきぞー@育児エンジニア (@akizo110) May 21, 2020 Goで開発していたが、途中でPythonに切り替えた件を振り返る。 - Qiita (opens new window) # 1.

      • テクノロジー
      • 2020/03/07 11:14
      • なんで Vuex はなるべく避けるの? | 民主主義に乾杯

        26 users

        python.ms

        # Vuex はなるべく避ける Vuex は、グローバル変数 state を使うために使います。 actions, mutations でグローバル変数 state を変更し、getters でグローバル変数 state を参照します。 たかだかグローバル変数 state を変更するだけで、こんなに大きな Vuex というライブラリがあるのか、疑問でした。 Vuex は、「いつ」、「どこで」、「だれが」、変更したのかを監視するためのライブラリです。 また Vue.js devtools を使えば、「いつ」、「どこで」、「だれが」 グローバル変数 state を変更 mutation したかを確認することができます。 Vue.js devtools - Chrome ウェブストア (opens new window) これら、いつ、どこで、だれが、変更したのかを監視したいという「気持ち」と、

        • テクノロジー
        • 2020/02/25 20:16
        • Vuex
        • Vue.js
        • Vue
        • 状態管理
        • あとで読む
        • Python のイミュータブル, immutable ってなに? | 民主主義に乾杯

          3 users

          python.ms

          # 1. 簡単に言えば... 変更できないオブジェクトのことをイミュータブルと言います。 反対に変更できるオブジェクトのことをミュータブルと言います。 値を変更できるオブジェクトのことを mutable と呼びます。 Objects whose value can change are said to be mutable; 値を変更できないオブジェクトのことを immutable と呼びます。 objects whose value is unchangeable ... are called immutable. 3.1. オブジェクト, 値 そして 型 - Python 言語リファレンス 3.1. Objects, values and types - The Python Language Reference immutable (opens new window) (イミュータブ

          • テクノロジー
          • 2020/02/18 23:11
          • Python
          • あとで読む
          • Python のメタクラスとクラスデコレータってなに? | 民主主義に乾杯

            5 users

            python.ms

            Google のコーディング規約には、可読性を低くしてしまうので、 使わない方が良いよ、と書かれているので、 そこまで無理して覚える機能でもないかなと思ったりもします。 強力な機能 (opens new window) このような機能は避ける。 定義: Python はとても柔軟な言語であり、 メタクラス 、バイトコードへのアクセス、高速コンパイル、動的な継承、オブジェクトの親の変更、 インポートハック、リフレクション、内部システムの変更 など多くの素敵 (変態的) な機能があります。 # 1. メタクラス 例えばクラス定義時に Hello, world! を表示したいとします。 そんな時は メタクラスで __init__ を作ります。 class Meta(type): def __init__(self, name, bases, name_space): print('Hello,

            • テクノロジー
            • 2020/01/25 22:09
            • Python で二分探索木 | 民主主義に乾杯

              3 users

              python.ms

              「左の子孫の値 ≤ 親の値 ≤ 右の子孫の値」という制約を持つ二分木である。 探索木のうちで最も基本的な木構造である。」だ、そうです。 2分探索木, Binary Search Tree - Wikipedia (opens new window) # ◯ メリット 二分探索木は値の探索、データの検索を高速にします。 例えば 6 というデータを探すときに 8 -> 3 -> 6 と辿ればすぐに目的のデータが見つかります。 # ◯ デメリット 木が片方に偏ってしまう場合があります。 そのような場合は、リストと検索効率が変わらなくなってしまいます。 # ◯ 実際には... Python の標準ライブラリには二分探索木はありません。 しかし、純粋な二分探索木であれば、 リストを用いた二分探索 で代替が効きます。 しかも、見方によっては必ず平衡を保ってくれるので、ここで実装する二分探索木よりも効果

              • テクノロジー
              • 2019/11/25 12:29
              • Python の型ヒントと typing と mypy | 民主主義に乾杯

                17 users

                python.ms

                めちゃくちゃ長いですが 変数や属性に代入されるオブジェクトの型名を書く という、ただそれだけの話です。 # 1. はじめに 型ヒントの書き方については mypy のマニュアルにチートシートがありました。 わかる方は、直接こちらをご参照ください。 Type hints cheat sheet (Python 3) - mypy (opens new window) また型ヒントをいつ使うのか、と言った 「使い分け」 、型ヒントが登場した 「背景」 については、 以下の記事にまとめました。本記事の後編にあたります。 動的言語と静的言語ってなに? この記事では主に 「書き方」 と 「使い方」 について、書いていきます。 # 1.1. 型ヒント 変数に代入される型の名前です。 正確には違います。引用先の用語集をご参照ください。

                • テクノロジー
                • 2019/11/06 16:09
                • mypy
                • python
                • Python の __new__ ってなに? | 民主主義に乾杯

                  4 users

                  python.ms

                  # 2. __new__ は、いつ使うの? 答え: immutable を初期化したい(本稿で解説) singleton を実装したい(Python でシングルトンを書く) (opens new window) 引数をもとにクラスを切り替えたいとき(メタクラスで紹介) この記事では immutable なオブジェクトを初期化する際に __new__ の使い方について説明させていただきます。 immutable については以下の記事で説明させていただきました。 Python の immutable と mutable の違い 実際に immutable なクラスを定義したいときは namedtuple (opens new window) 関数を使います。 このページでは tuple を継承した immutable なクラスで __new__ の簡単な使い方をご紹介します。 namedtup

                  • テクノロジー
                  • 2019/09/24 09:13
                  • python
                  • あとで読む
                  • Flask を HTTPS 化する。 | 民主主義に乾杯

                    3 users

                    python.ms

                    # Flask を HTTPS 化する。 以下3つの起動方法について解説します。 Flask で対応 ウェブサーバ(WSGI対応)で対応 ウェブサーバで対応 なお、この次のページで Heroku で SSL に対応させる方法を紹介します。 Heroku を使う場合は、基本的には、この方法しか使えません。 Heroku で SSL を有効にする。 また CDN, Cloudflare で対応する方法もあります。 Cloudflare 経由で SSL を使う。 # 0. 事前準備 # 1. flask をインストールする。 flask をインストールします。

                    • テクノロジー
                    • 2019/09/10 11:33
                    • あとで読む
                    • Python のイテラブル, iterable ってなに? | 民主主義に乾杯

                      4 users

                      python.ms

                      # 1. 具体的に言えば... 例えば range, リスト, タプル, 集合, 辞書, 文字列は、イテラブルです。 もう少しちゃんと言えば、for 文の in に書き込めるオブジェクトです。 以下のコードは、コピペしてエラーを起こすことなく実行できます。 文字列も for 文で回せるイテラブルだったのは驚きでした。 # range for e in range(3): print(e) # リスト for e in [0, 1, 2]: print(e) # タプル for e in (0, 1, 2): print(e) # 集合 for e in {0, 1, 2}: print(e) # 辞書 for e in {0:'a', 1:'b', 2:'c'}: print(e) # 文字列 for e in '012': print(e) イテラブルは for ループの中で ... で

                      • テクノロジー
                      • 2019/08/21 05:48
                      • Python
                      • Python はなんで self を書かないといけないの? | 民主主義に乾杯

                        6 users

                        python.ms

                        # はじめに Python の self は関数の第一引数です。 「self とはなにか」については、以下の記事で見てきました。 Python の生みの親である Guido van Rossum 氏が 説明してくれたメールを補足する形で、 「なんで self を書かないといけないのか」について考えていきます。 なぜPythonのメソッド引数に明示的にselfと書くのか (opens new window) 上記の記事は Pythonの生みの親 Guido によって書かれたブログを和訳したものです。 Bruce という人が 「第一引数にわざわざ self を与えなくたって、 暗黙的に呼び出し元のインスタンスオブジェクトを self に代入すればいいじゃん」 と提案したのに対して、Guido が、それがなぜダメなのかの理由を述べています。 「なんで、ってなんで?」って感じですが。 メソッドで

                        • テクノロジー
                        • 2019/08/15 11:44
                        • Python のイテレータってなに? | 民主主義に乾杯

                          4 users

                          python.ms

                          # 1. イテレータを触ってみる。 # 1.1. コードから触ってみる。 イテレータとは、list, tuple, set などの集合を表現するオブジェクトを iter 関数 を使って コピー したようなものです。 # # 対話モード >>> に # コピペで実行できます。 # リスト = [1, 2, 3, 4] イテレータ = iter(リスト) イテレータ list(イテレータ)

                          • テクノロジー
                          • 2019/07/27 21:14
                          • Python
                          • あとで読む
                          • Flask の session と g そしてコンテキスト | 民主主義に乾杯

                            6 users

                            python.ms

                            主にリクエストを跨いで 使用するオブジェクトを保存する。 リクエストを跨いで オブジェクトが保存 される。 ただし、シリアライズ可能なもののみ。 # はじめに 個人的に思う Flask のポイントは グローバル変数 です。 具体的には request, current_app, session, g です。 コンテキスト context は、これらの4つのグローバル変数を保存する箱です。 コンテキスト context には2種類あります。 Applicatoin Context と Request Context です。 Application Context — Flask Documentation (1.1.x) (opens new window) Request Context — Flask Documentation (1.1.x) (opens new window) そし

                            • テクノロジー
                            • 2019/06/09 12:56
                            • Flask
                            • Python の Union と Optional ってなに? | 民主主義に乾杯

                              6 users

                              python.ms

                              # Union と Optional ってなに? 最近の Python では型を明示できるようになりました。 ところで変数に未定義の None が入る可能性が場合には、 どうやって型を明示すればいいのでしょうか?

                              • テクノロジー
                              • 2019/05/01 02:27
                              • python
                              • Python のクラスと self と __init__ | 民主主義に乾杯

                                4 users

                                python.ms

                                # クラスと self と __init__ # はじめに まず __init__ が、かなり難しくて、つまずきどころかなと思います。 なぜ難しいかというと2つの理由があります。 1つ目は、難しい概念が色々と隠れているからです。 2つ目は、自動的に色々とやってくれているからです。 そのため理解する必要はなく、 まず __init__ の動作を 覚えてしまうこと が大事かなと感じたりもします。 伝わるかは厳しいのですが、以下の順に見ていきたいと思います。 オブジェクトってなに? クラスってなに? インスタンス化ってなに? __init__ ってなに? self ってなに?

                                • テクノロジー
                                • 2019/03/13 15:51
                                • はじめに | 民主主義に乾杯

                                  8 users

                                  python.ms

                                  学習方法は会社内で自分よりスキルが上の人のコードを読むことですね。初めはわからないことだらけで未知の領域が大きすぎるので気落ちすることもありますが、1年から2年やれば自信はつくと思います! #peing #質問箱 https://t.co/VvBuU6ROHg — 酒井潤🇺🇸シリコンバレーエンジニア (@sakaijun) May 6, 2019 全部は無理でも、とっかかりになればと思いこのサイトを作りました。 自分も今でも読んでいて、全然わからないことだらけです。 最悪なのは、大抵の場合、ソースコードはおろかチュートリアルでさえ、 公式ドキュメントは、難しかったりします。 僕もわからないことを調べようとして初めて公式ドキュメントを読んだとき、こんな気分になりました笑 9.2. Python のスコープと名前空間 - Python チュートリアル (opens new window)

                                  • テクノロジー
                                  • 2019/03/10 13:04
                                  • Python
                                  • 学習
                                  • プログラミング
                                  • Python の map と filter で関数型プログラミング | 民主主義に乾杯

                                    5 users

                                    python.ms

                                    と言う感じですが、やり方そのものは簡単です。 CRUD のうちの U, Update の処理が発生するたびに、新しくオブジェクトを作り直すだけです。 すると何が起こるのでしょうか?Update の処理を書かなくて良くなります。 Update の処理を書かなくて楽になります。 もちろん、辛くなるときもあります。 使い分けが必要かなと思います。

                                    • テクノロジー
                                    • 2019/02/08 00:31
                                    • Python
                                    • dev
                                    • Rust なのか Go なのか | 民主主義に乾杯

                                      68 users

                                      python.ms

                                      # Rust なのか Go なのか ひとりごと。色々、漁ってると、こんな雰囲気。 並列処理で もっと高速に書きたい → Go Go で大事なのは → goroutine ガシガシ書き込んで もっと高速に書きたい → Rust Rust で大事なのは → 所有権 # 1. 概観 Go と Rsut は全く用途が違うそうです。なので、 自分の用途に合わせて選ぶことになるかなと思いますが... Indeed! — Go (@golang) July 25, 2019 Go は文法がとてもシンプルです。 誰が書いても同じようなコードになるようなことを意識しているのかなと思われます。 それが元でよく Go を貶す記事が見受けられます。 Rust はコードが複雑になっても、ガシガシ書き込むような感じらしいです。その分だけ Go よりも高速に動作します。 Rustと競合? - Goへの誤解について (o

                                      • テクノロジー
                                      • 2019/02/06 09:57
                                      • rust
                                      • go
                                      • golang
                                      • 言語
                                      • プログラミング
                                      • あとで読む
                                      • Tech
                                      • article
                                      • python
                                      • programming
                                      • 合成と委譲ってなに? | 民主主義に乾杯

                                        14 users

                                        python.ms

                                        継承とはコードを共通化することです。 コードを共通化することの危険性を動画にして、大変わかりやすく記載されています。 以下の動画の「共通モジュール」を親クラスに読み換えると雰囲気が掴みやすいかなと思います。 「同じロジックのコードを2度以上書くな」と妄信する (opens new window) 同じようなパターンがプログラムの複数箇所に現れる場合、 それらを抽象化して一つの共通ロジックへのパラメータ渡しとして実装し、 それを複数箇所から呼び出すように実装すると、 プログラムコード量が小さくなり、 保守性が良くなったような気がするので、 未熟なプログラマが、なんでもかんでも共通ルーチン化しまくって、 非常に保守性の悪いプログラムにしてしまうことがある。 いつ継承で いつ合成を使うのか (とても、ざっくり) 内容継承合成

                                        • テクノロジー
                                        • 2019/01/23 22:55
                                        • python
                                        • あとで読む
                                        • プログラミング
                                        • 考え方
                                        • 民主主義に乾杯

                                          8 users

                                          python.ms

                                          ウェブ Python で書かれたソフトウェア Flask を通して、より実践的なコードを見て行きます。

                                          • テクノロジー
                                          • 2019/01/19 18:48
                                          • Python

                                          このページはまだ
                                          ブックマークされていません

                                          このページを最初にブックマークしてみませんか?

                                          『民主主義に乾杯』の新着エントリーを見る

                                          キーボードショートカット一覧

                                          j次のブックマーク

                                          k前のブックマーク

                                          lあとで読む

                                          eコメント一覧を開く

                                          oページを開く

                                          はてなブックマーク

                                          • 総合
                                          • 一般
                                          • 世の中
                                          • 政治と経済
                                          • 暮らし
                                          • 学び
                                          • テクノロジー
                                          • エンタメ
                                          • アニメとゲーム
                                          • おもしろ
                                          • アプリ・拡張機能
                                          • 開発ブログ
                                          • ヘルプ
                                          • お問い合わせ
                                          • ガイドライン
                                          • 利用規約
                                          • プライバシーポリシー
                                          • 利用者情報の外部送信について
                                          • ガイドライン
                                          • 利用規約
                                          • プライバシーポリシー
                                          • 利用者情報の外部送信について

                                          公式Twitter

                                          • 公式アカウント
                                          • ホットエントリー

                                          はてなのサービス

                                          • はてなブログ
                                          • はてなブログPro
                                          • 人力検索はてな
                                          • はてなブログ タグ
                                          • はてなニュース
                                          • ソレドコ
                                          • App Storeからダウンロード
                                          • Google Playで手に入れよう
                                          Copyright © 2005-2025 Hatena. All Rights Reserved.
                                          設定を変更しましたx