タグ

ブックマーク / news.mynavi.jp (5)

  • Rustで有名アルゴリズムに挑戦(17) RustでHTTPサーバを実装してみよう

    今回はRustを使って、簡単なHTTPサーバを実装してみましょう。HTTPは単純ですが生活インフラとしても必須となっているWebの根幹となる技術です。Rustに対する理解を深めると同時にWebの根幹となるHTTPについても学びましょう。 RustでHTTPを実装してみよう HTTPプロトコルとは? 「HTTP(Hypertext Transfer Protocol)」とは、WebサーバーとWebブラウザの間でデータをやりとりするための通信規則(プロトコル)です。 1990年末にイギリスの物理学者ティム・バーナーズ=リー氏と、ロバート・カイリュー氏によって設計されました。 HTTPプロトコルは、RFCとして公に発表されています。RFCとは、IETFが発行しているインターネットに関連する技術仕様などを共有するために公開される文書であり誰でも読むことができます。1996年にHTTP/1.0に関す

    Rustで有名アルゴリズムに挑戦(17) RustでHTTPサーバを実装してみよう
  • Rustで有名アルゴリズムに挑戦(4) RPN電卓を実装しよう

    Rustは実行効率や安全性を重視した人気のプログラミング言語ですが、難しいと言われることもあります。連載ではいろいろな有名アルゴリズムを解くことでRustに慣れていきます。今回は、RPN電卓を実装してみましょう。またエラー処理についても紹介します。 逆ポーランド記法を計算するRPN電卓を実行したところ RPN電卓とは RPN電卓とは、逆ポーランド記法を利用して記述した計算式を計算する電卓のことです。逆ポーランド記法(あるいは、後置記法)とは、数字など被演算子の後で演算子を記述する記述方法です。 例えば、「8 + 9」という計算式を逆ポーランド記法で記述すると「8 9 +」となります。このような書き方は、読みづらく感じるかもしれませんが、日語で計算を言い表すとき、無意識にこの記法を使っています。数字の後に助詞を足して見ると、「8に9を+(足す)」となります。 逆ポーランド記法と日語の相

    Rustで有名アルゴリズムに挑戦(4) RPN電卓を実装しよう
  • ゼロからはじめるPython(93) Pythonでブラウザ自動化 - 画像を丸ごとダウンロードしよう

    以前、連載ではSeleniumを使ってブラウザを自動操縦する方法を紹介した。とても便利だがブラウザごとのドライバが必要でセットアップが面倒という側面もあった。しかし最近では自動インストールの方法が確立されて便利になった。そこで改めてブラウザの自動操縦を試してみよう。 ブラウザを自動操縦して画像をダウンロードしたところ Seleniumについて SeleniumとはWebブラウザを自動操縦するためのライブラリだ。もともとブラウザを使って自動テストを行うためのライブラリだが、今ではWeb巡回(クローリング)からデータ抽出(スクレイピング)までいろいろな自動処理に使われている。 Seleniumで可能なのは次のような処理だ。 ブラウザを自動操縦して任意のページを表示する ページ内の任意の要素を抽出する(id属性やclass属性、CSSセレクタで抽出できる) ページのスクリーンショットが取得でき

    ゼロからはじめるPython(93) Pythonでブラウザ自動化 - 画像を丸ごとダウンロードしよう
  • Notionでプロジェクト管理をしよう - Notionがあなたのチームを強くする(9)

    みなさんは日々会社の業務を進める上で、どのような方法でタスク管理や議事録管理を行っていますか。 個人でメモを取る、ホワイトボードを使う、チームで管理ツールを導入するなど、いろいろな形で工夫されているかと思います。今回は、Notionプロジェクト管理する方法やメリットについてご紹介します。→過去の回はこちらを参照。 Notionプロジェクト管理をする Notionプロジェクト管理をすると、日々のタスクや議事録など、あらゆる情報を1か所にまとめて可視化することができます。さらに、複数のプロジェクトを俯瞰して確認できるため、「今日はプロジェクトAのタスク1とプロジェクトBのタスクBをやらなければいけない」といった情報を簡単に確認できます。 今回は、次の画像のようなプロジェクト一覧を作ってみます。 Notionプロジェクト一覧を表示する また、それぞれのプロジェクトの中身には「目標」「タス

    Notionでプロジェクト管理をしよう - Notionがあなたのチームを強くする(9)
  • Pythonで学ぶ 基礎からのプログラミング入門(11) 知っていると便利な「型」について学ぼう

    第4回、第5回でPythonの基的な型について学びました。今回はその続きとなる回です。今回扱うのは必ずしも使う必要はないものの、知っていると便利な型です。具体的には「タプル」、「セット」、「辞書(マップ)」、「関数型」となります。 タプル リストという型がなぜ存在するのか覚えていますか。ひとつの型のなかに任意の数の複数のデータを格納できると便利だからでしたね。たとえば「生徒たちの成績を格納する」といった目的で利用されます。タプルもリストと似ていて、ひとつの型のなかに複数のデータを格納します。ただ、その目的は異なっていて、「決まった数の複数のデータがひとつの意味を持つもの」にタプルは使われます。 例をあげて説明しましょう。お店の会員情報というものをデータで表現することを考えてみます。単純に文字列としてすべてを含めてしまってもいいのですが、以下のような複数の要素で表現したほうがプログラムで使

    Pythonで学ぶ 基礎からのプログラミング入門(11) 知っていると便利な「型」について学ぼう
  • 1