並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 50件

新着順 人気順

namespaceの検索結果1 - 40 件 / 50件

  • コンテナ技術入門 - 仮想化との違いを知り、要素技術を触って学ぼう|ハイクラス転職・求人情報サイト AMBI(アンビ)

    コンテナ技術入門 - 仮想化との違いを知り、要素技術を触って学ぼう コンテナ技術を適切に活用するには、コンテナが「どうやって」動いているかを学びたいところ。はてなのエンジニアhayajo_77さんがコンテナの要素技術の勘所を解説します。 こんにちは。株式会社はてなでサーバー監視サービス「Mackerel」のSREを務めるhayajo_77( @hayajo )です。 さて、コンテナ技術はDockerの登場がきっかけとなり、本格的に活用が始まりました。現在はKubernetesを始めとするコンテナオーケストレーションツールや AWS, GCP, Azure などのクラウドサービスで提供されるコンテナマネジメントサービスを採用したサービス運用事例が数多く紹介されており、コンテナ技術は「理解する」フェイズから「利用する」フェイズに移ってきています。 コンテナそのものは上記のツールやサービスにより

      コンテナ技術入門 - 仮想化との違いを知り、要素技術を触って学ぼう|ハイクラス転職・求人情報サイト AMBI(アンビ)
    • JavaScriptの巧い書き方 - Archiva

      Make a note of it: Web tech, montaineering, and so on. Note: この記事は、3年以上前に書かれています。Webの進化は速い!情報の正確性は自己責任で判断してください。 Webに言語は数あれど、特に玉石混淆の激しいJavascriptの書き方について纏めてみた。間違い指摘大歓迎! 発端はYahoo!の Eric Miraglia による、YUI 式モジュールの作り方をまとめた記事。ざっくりまとめると、以下の手順になる。 YAHOO.myProject.myModule = function () { //"private" variables: var myPrivateVar = "I can be accessed only from within YAHOO.myProject.myModule."; //"private" m

      • 新人プログラマーに読ませて欲しいネーミングの大切さ - プログラマー幸福論

        Photo from Kıvanç Niş ネーミングについてまじめに長文を書いてみました。もし、あなたの会社にネーミングに疎い新人プログラマーがいたら読ませてやってください。 ちなみに、この記事はシステム開発のネーミングについて書いています。また、このブログの特性上、英語でのネーミングを想定していますが、日本語のネーミングでも同様に考えることができると思います。 1. ネーミングの重要性 一般に、熟練のプログラマーほど、プログラミングにおける ネーミングに時間をかけます。それはなぜでしょうか。 あなたが付けたその変数名 data は、その時点では、自分のために付けた「目印的なもの」であったかもしれません。しかし、そのソースコードを引き継いだ担当者など多くの人が、その名前を見ることになります。 // データを取得する var data = getData(1); そしてその名前は、そのソー

          新人プログラマーに読ませて欲しいネーミングの大切さ - プログラマー幸福論
        • 世界一わかりみの深いコンテナ&Docker&Kubernetes入門

          RAG構築のためのAzure OpenAI Serviceリファレンスアーキテクチャ詳解/wakarimiragarchitecture

            世界一わかりみの深いコンテナ&Docker&Kubernetes入門
          • 『ネットワーク初心者の新卒がDockerでネットワークの勉強をしてみた』

            こんにちは!サイバーエジェント アドテクスタジオ新卒の黒崎 (@kuro_m88) と申します。 Dynalystというチームに配属され、一人前のサーバサイドエンジニアになるべく修行をしています(`・ω・´)最近はScalaを書くことが多くて、Sparkで大量のログを集計するバッチの開発をしています。ほぼ100%AWSで構成されているプロダクトなので業務でネットワークの運用もしませんし、構成の事を意識する事はあまりありません。 そんな中でネットワークの事が知りたくなったのは、広告の配信に関わる開発をしてみて、広告の配信の仕組み自体も技術的にめちゃくちゃ面白いんですが、それと同時に自分たちのサーバから広告が表示される端末までの間がどうなってるのか気になってしまったのがきっかけです。学んでいくにはやはり手を動かすのが一番ですよねo(((^^)))o

              『ネットワーク初心者の新卒がDockerでネットワークの勉強をしてみた』
            • Dockerを支える技術

              5. Open Cloud Campus 5 Linux女子部 Dockerを支える技術 一般的なサーバ仮想化の分類 物理マシン 物理マシン ホスト OS ハイパーバイザ (カーネルモジュール) 仮想 マシン ゲスト OS VMware vSphere, Xen など Linux KVM ハードウェアによる仮想化 (物理マシンにハイパーバイザを内蔵) ソフトウェアによる仮想化 (物理マシン上にハイパーバイザを導入) ソフトウェアによる仮想化 (ホスト OS にハイパーバイザ機能を追加) 物理マシン OS 非仮想化環境 基本的には「物理マシン」と同等の「仮想マシン」を複数 作り出す技術です。 仮想 マシン ゲスト OS 仮想 マシン ゲスト OS 仮想 マシン ゲスト OS 仮想 マシン ゲスト OS 仮想 マシン ゲスト OS 仮想 マシン ゲスト OS 仮想 マシン ゲスト OS ハイパ

                Dockerを支える技術
              • 狠狠色噜噜狠狠狠狠97,你懂的在线视频,亚洲AV制服丝袜日韩高清

                狠狠色噜噜狠狠狠狠97,你懂的在线视频,亚洲AV制服丝袜日韩高清,日本免费三级片,久久综合给合久久国产免费,轻轻的挺进少妇的体内,美女销魂,av日韩av,日本大乳高潮视频在线观看,亚洲一区高清

                • JavaScript のブロックスコープと名前空間 « Mozilla Developer Street (modest)]

                  Web 開発や拡張機能開発で JavaScript のコードを書いていると、誰もが一度は次のようなことで悩むかと思います。 ブロックスコープと名前空間 (グローバル変数汚染の回避) 読み書きしやすくデバッグしやすいコードスタイル コールバック関数と this オブジェクトの取り扱い デバッグ方法とデバッグ支援モジュール 非同期処理の書き方 いずれも解決方法は人によって様々で、これが常にベストと言えるものがなさそうですが、私なりにそれぞれ検討したことなどを書いてみようかと思います。もっと良い方法があるとか色々皆さんのご意見やツッコミをいただければ幸いです。 JavaScript では名前空間は言語仕様でサポートされておらず、ライブラリや拡張機能などのコードを書くときにはグローバル変数の使用を最小限に抑える必要があります。先日の Mozilla 勉強会@東京 3rd でも佐藤さんと守山さんの発

                    JavaScript のブロックスコープと名前空間 « Mozilla Developer Street (modest)]
                  • Dockerコンテナに入るなら SSH より nsinit が良さそう - Gosuke Miyashita

                    追記 はてブでつっこみもらいました が、実行するカレントディレクトリは /var/lib/docker/execdriver/native/$id を使うのが正しいようです。(情報読み違えてた。)こちらには container.json があるので、ソースツリーからコピーしてくる必要ないですね。 また、コンテナ ID 取得は、docker ps -q --no-trunc の方が良い、とも教えていただきました。 つっこみにしたがって、最後の方の説明とシェル関数書き換えました。 つっこみありがとうございます! tl; dr タイトルまま 経緯 Docker でつくったコンテナの中に入って状態を確認するために、コンテナ内で sshd を立ち上げてアクセスする、ってなことを以前やってたんですが、コンテナ内で sshd を立ち上げる、というやり方がいまいちだし、そもそもコンテナの仕組みから考えれば

                    • リソースモデリングパターン

                      Webアプリケーションについて、RESTfulなURL・リソース設計のパターンを見出すことで、 どのパターンかを判断するだけで、既存の Good Practice が適用できる 名前をつけて呼べるようにしたい Railsなどのフレームワークで簡単に適用できるようにしたい ということを目指しています。 ほんとうに役立つか これはパターンと言えるのか もっと他にもある だいぶ粒度がバラバラ 名前の付け方(パターンは名前重要) など、ぜひご意見をください。 パターン Collection & Member Resource パターン Singular (Singleton) Resource パターン Filtered Collection パターン Filtered Subresource パターン Multi-member Resource パターン Partial Resource パター

                        リソースモデリングパターン
                      • モダンPHPアンチパターン - Qiita

                        アンチパターンなので、見出しの内容はすべてバッドノウハウです。 前に書いたやつ PHPのモダンな開発環境を紹介する - Qiita PHP - Functoolsを作った - Qiita PHPのlist()はタプル展開のための機能 - Qiita 関係ないけどこれも: シェル、ターミナル、コンソール、コマンドライン 追記: 本文中でとりあげた「怖い話」について、ちゃんと説明しました PHP - namespaceとBOMに何の関係があるのさ - Qiita ファイルの最後に?>を書く PHPコードは<?phpで始まり?>で締める。それがPHPの常識(キリッ ……そんなことはもう綺麗さっぱり忘れよう。PHPはテンプレートエンジンではあるが、Webアプリケーションを書く上では、もはやテンプレートエンジンとしての機能は求められなくなりつつある。 不要な?>を書いてはいけない理由は明確で、<?p

                          モダンPHPアンチパターン - Qiita
                        • Dockerのネットワーク管理とnetnsの関係 - めもめも

                          RHEL7RC+EPEL版Dockerの前提で解説します。RHEL7RCを最小構成で入れて、次の手順でDockerを導入します。 # yum -y install bridge-utils net-tools # yum -y install http://download.fedoraproject.org/pub/epel/beta/7/x86_64/epel-release-7-0.1.noarch.rpm # yum -y install docker-io # systemctl enable docker.serviceDockerが設定するiptablesの内容を見るために(見やすくするために)、firewalldを停止した上でdockerサービスを起動します。 # systemctl stop firewalld.service # systemctl mask firew

                            Dockerのネットワーク管理とnetnsの関係 - めもめも
                          • 今さら聞けない Linux コンテナの基礎 (2015-06-20)

                            第7回コンテナ型仮想化の情報交換会の発表資料です。 参考となる情報にはPDF中からリンクをしていますが、資料中のリンクは Speaker Deck 上ではクリックできないので PDF をダウンロードしてご覧ください。(2015-06-25スライド更新しています)

                              今さら聞けない Linux コンテナの基礎 (2015-06-20)
                            • Python 3誕生の理由 ― つまり、なぜunicode/str/bytesの仕様は変更されたのか | POSTD

                              12月、私は PuPPy(the Puget Sound Python users group)の会合でQ&A セッション を行いました。そこでようやくPython 3が誕生した理由と、string/bytesに関する全てを説明しました。Python 3が作られた理由をユーザはもう知っているはずだと思っていたので、私はこの説明で称賛を得たことに、ちょっと驚きました。後で考えてみると、Pythonに詳しい人もそうでない人も含めて大多数の人が、その理由を探すように言われたり、好奇心からその理由を探し当てられるなどと考えた私が愚かでした。ですから、このブログの記事で、Python 3が存在する理由をわかりやすく説明します。後方互換性の全くない unicode / str / bytes の仕様変更は、Python 3のコードの移植の中でも本当に難解な部分ですので、私たちがその仕様変更を選択した理

                                Python 3誕生の理由 ― つまり、なぜunicode/str/bytesの仕様は変更されたのか | POSTD
                              • Linux Foundation、「オープンコンプライアンスプログラム」を開始 | The Linux Foundation

                                Powered by WordPress ユーザー名またはメールアドレス パスワード ログイン状態を保存する ← The Linux Foundation に戻る

                                • シェルスクリプトで書かれた軽量コンテナ MINCS がすばらしい (1) - TenForward

                                  これはだいぶ前に書いたエントリです。MINCS作者による最新の解説があるのでそちらもご覧ください。 (2016-11-21追記) コンテナは使いたいけど、たくさんコンテナを起動すると結局それぞれのコンテナに対するセキュリティアップデートなどのメンテナンスは必要だし、コンテナ内独自のプログラムやライブラリ以外はホストと共有したいよね、って話が出てきたりします。みんな考えることは同じで、bind mount を使えば良いよね、って話はでてきてました。 こないだもブログで紹介した kazuho さんの jailing 私が LXC でも結構簡単にできるよ、っていう提案を兼ねて作った lxc-bind こないだのLinuxConでもDockerでたくさんのオプションを並べて、色々工夫して bind mount を使ってやってる発表もありました (Using Docker for existing

                                    シェルスクリプトで書かれた軽量コンテナ MINCS がすばらしい (1) - TenForward
                                  • はてなブログ | 無料ブログを作成しよう

                                    来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…

                                      はてなブログ | 無料ブログを作成しよう
                                    • どうなるECMAScript どうするActionScript | とんぶろ

                                      “[試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識” という本を読んだのでメモ。 感想 本書は以下のような構成になっていて、概要の話からプロセス→メモリ→キャッシュ→ファイルシステム→ストレージとどんどん下の階層?に降りていくような進め方になっている。 コンピュータシステムの概要 ユーザモードで実現する機能 プロセス管理 プロセススケジューラ メモリ管理 記憶階 ... 続きを読む

                                        どうなるECMAScript どうするActionScript | とんぶろ
                                      • Laravel5を業務で一通り使ってみた感想 - nazolabo

                                        2ヶ月くらい使ってみたけど、悪くはないんだけど、なんか最近持ち上げられすぎてる気がするので、気になったところを書き出してみる。 あくまで個人的な感想なので、マサカリ投げるのは歓迎。 概要 Noticeを含むエラーが全て例外になる 最近のフレームワークは大体やってそうだけど、エラーを出すと全て例外を出すので、不要にcatchしなければ問答無用で落ちる。これにより、NOTICE出しっぱなしで何となく動いているコードを殲滅できる。標準にしてほしい。Fatalも例外として扱ってくれるが、Fatalを取れるのはプログラム終了後なので、特に意味はない。出力が同一フォーマットになるくらい。 ちなみに自前で実装するにはErrorExceptionのページに書いてあるので、この通り実装しよう。簡単である。 ファイルの配置が自由 composer autoload使っていればどれでもそうなんだけど、Model

                                          Laravel5を業務で一通り使ってみた感想 - nazolabo
                                        • Twitterをやめてみました - スタパ齋藤の「スタパブログ」 - ケータイ Watch

                                            Twitterをやめてみました - スタパ齋藤の「スタパブログ」 - ケータイ Watch
                                          • ipコマンドとnetnsでお手軽なテストクライアント作成 - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ

                                            この記事はLinux Advent Calendar 2014の9日目の記事です。 ネットワークを使う機能でなにかしらテストしたいときに複数のクライアントが欲しい時がありますよね。大量アクセスをしたい場合はjmeterとかありますが、クライアントのIPアドレスも複数あったほうが良いケースもあると思います。kvm等でクライアントを複数作ってbridgeするという方法もありますが、それはちょっと重量級なのでもうちょい手軽な方法がないかなーというところです。 そこでお手軽な方法はなにかというところでネットワークネームスペース(netns)を使って見たいと思います。 ネットワークネームスペースとはなんぞや?という方はten_forwardさんがgihyo.jpで連載している「LXCで学ぶコンテナ入門 -軽量仮想化環境を実現する技術」の「第6回 Linuxカーネルのコンテナ機能[5] ─ネットワーク

                                              ipコマンドとnetnsでお手軽なテストクライアント作成 - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ
                                            • CoffeeScriptを3時間で理解するための10のポイント(1)-(3)

                                              <<前回「CoffeeScriptって何?」へ<< CoffeScriptを3時間で理解するための10のポイントのうち、ポイント1から3までを解説します。ポイント1は「CoffeeScriptはコンパイルで即時関数に変換される」こと、ポイント2は「変数は自動的に宣言される」こと、ポイント3は「リテラルで豊かな表現を可能に」したことです。 POINT1 CoffeeScriptはコンパイルで即時関数に変換される ★「即時関数」でグローバル変数を作らない ★JavaScriptのstrictモードにも対応 CoffeeScriptで記述されたコードをコンパイルすると、JavaScriptのコードは、(function() {...}).call(this);でラップされた状態で出力されます(リスト7)*1。奇異にも見える書き方ですが、実は、JavaScriptの世界では定石とも言える書き方の一

                                                CoffeeScriptを3時間で理解するための10のポイント(1)-(3)
                                              • アリスとボブ - Wikipedia

                                                アリス、ボブ、マロリーのイメージ図 アリスとボブ(英: Alice and Bob)は、暗号通信などの分野で、プロトコル等を説明する際に想定上の当事者として登場する典型的なキャラクター。"当事者Aが当事者Bに情報を送信するとして"のような説明文では、段階の増えた体系になるにつれ追いにくくなる。そのため、こういった具体的人名が好んで使われる。 暗号やコンピュータセキュリティでは、さまざまなプロトコルの説明や議論に登場する当事者の名前として広く使われる名前が数多くある。こういう名前は慣用的、暗示的で、ときとしてユーモアに富み、事実上メタ構文変数のように振る舞う。 典型的なプロトコル実装においては、アリスやボブのあらわす実体が自然人であるとはかぎらない。むしろコンピュータプログラムのように、信頼され自動化された代行者であることが多い。 キャラクターの一覧[編集] この一覧のほとんどは、ブルース・

                                                  アリスとボブ - Wikipedia
                                                • Mozilla Developer Street (modest)

                                                  Portions of this content are ©2009-2020 by individual dev.mozilla.jp contributors. Content available under a Creative Commons license.

                                                    Mozilla Developer Street (modest)
                                                  • 第2回 コンテナの仕組みとLinuxカーネルのコンテナ機能[1]名前空間とは? | gihyo.jp

                                                    前回は、Linuxで使えるコンテナの実装を説明したあと、LXCを使って簡単にコンテナの作成、起動、停止が行えるところを紹介しました。今回は、そのコンテナの仕組みを簡単に説明し、その仕組みからくるメリット・デメリットを紹介した後、コンテナはカーネルのどのような仕組みを使って動作しているのかを簡単に説明していきたいと思います。 コンテナの仕組み コンテナをまだ使ったことがない方でも、VMwareやVirtualBox、KVMといった仮想マシン(VM)を使ったことはあるという方は多いのではないでしょうか。まずはVMとの比較をしながら、コンテナの仕組みを説明してみましょう。 図1 VMとコンテナの仕組み(1)仮想マシン VMでは図1のように、コンピュータの上で動くOSやVMを実現するためのハイパーバイザの上で、実際のハードウェアをエミュレートするVMが動きます。つまり実際の物理的なコンピュータと同

                                                      第2回 コンテナの仕組みとLinuxカーネルのコンテナ機能[1]名前空間とは? | gihyo.jp
                                                    • ActionScript3 でネームスペース使ったキーイベント監視ユーティリティ作りました - 2nd life (移転しました)

                                                      AS3 のキーイベント監視でなんかいい方法ないかなー、と考えていたら良い方法が思いついたので実装してみた、らかなり便利な気がするので公開してみます。 http://github.com/hotchpotch/as3rails2u/tree/master 通常のキーイベントの監視では addEventListener(KeyboardEvent.KEY_DOWN, func) で関数を登録して switch で event.keyCode 判別して Shift が押されてるか Ctrl が押されてるかによって云々、でかなりめんどくさいです。でもこの KeyTypeListener を使うと驚き300%(当社比)の方法でキーイベントを定義できます。 // 読み込んで import com.rails2u.utils.KeyTypeListener; import com.rails2u.uti

                                                        ActionScript3 でネームスペース使ったキーイベント監視ユーティリティ作りました - 2nd life (移転しました)
                                                      • 使ってはいけないjQueryの機能 5個 : tech.kayac.com - KAYAC engineers' blog

                                                        3 days ago的な時間表記をするサービスは全部嫌いです。agoです。 週末若手IT勉強会に参加させていただきjQuery 1.3.2のイベント周りを読んできたので、それを踏まえて使用すると問題の発生する可能性の高い機能を紹介します。 0 jQuery.browser 1.3からサポート外になりました。 代わりにjQuery.supportを使用しましょう。 ただ、swfの重ね合わせ問題等は単体のJSでは確認できないので、jQuery.browser無しでどう解決すればいいのかよくわかっていません。 1 getData、setDataイベント getData、setDataイベントは1.5系で削除される予定のようです 最新版のjQueryではgetData、setDataイベントが使用可能になっており、以下のようにイベントを設定できます。 $().bind('getData', fun

                                                          使ってはいけないjQueryの機能 5個 : tech.kayac.com - KAYAC engineers' blog
                                                        • PHP 5.3の名前空間仕様が変更されました

                                                          (Last Updated On: 2018年8月13日)名前空間に関する議論は5年以上も行われていたのですが、今度こそ結論が出たようです。 何故このようなエントリを書くかというと、Software Design(技術評論社)の11月号にPHPの最新情報としてα版PHP 5.3を紹介しているからです。入稿後に仕様変更があったので最新号の記事ですが既に内容が古くなってしまいました。 # とは言ってもまだ新しい仕様のPHPは無いですが α版なので仕様や機能が大きく変更される事もありますが大きな変更がありました。見本誌が刷り上がった頃に名前空間の区切り文字が”::”だと静的にメソッドを呼び出す場合やクラス定数を呼び出す場合に困る場合がある、とPHP開発者のMLで議論になり始めました。 ML上、IRC上、オフラインの打ち合わせが行われ、数週間におよぶ議論の結果が昨日MLに投稿されました。名前空間の

                                                            PHP 5.3の名前空間仕様が変更されました
                                                          • TypeScript 勉強会

                                                            2. 俺の名前を言ってみろ わかめ まさひろ @v vakame GoogleAppEngine Android alterJS Saturday, January 26, 13 3. アンケート • JavaScriptバリバリです • Java+Servletバリバリです • Java+Androidバリバリです • C言語ならまかせろー! • ハードウェアなら任せろー! Saturday, January 26, 13 4. 今日の約束 • 話の途中でも質問して良い • 挙手はする • JavaScriptの質問でもまぁよし • Twitterをちょっと盛る • #tsjpstudy Saturday, January 26, 13 5. Webアプリの時代 • Webアプリがどんどんリッチに • Google Maps • GoogleApps • Facebook • 大規模開発

                                                              TypeScript 勉強会
                                                            • Python の名前空間とスコープ

                                                              プログラムのロジックを考え、実装を行う上で、変数の名前空間やスコープはとても重要です。 これらはロジックを組み立てる上での複雑さに直結し、ソースコードの読みやすさにダイレクトに関係してくるためです。 この記事では、私が Python で開発をする上で気をつけるようにしている名前空間やスコープに関するお話をします。 コーディングスタイルについて 名前空間やスコープの前に、まずは基本的なコーディングスタイルについて軽くお話しします。 Python のコーディングスタイルというと、 PEP 8 – Style Guide for Python Code (日本語訳は こちら )が有名です。 これは、 Python でプログラムを書く上で守っておくとよいお作法について書かれており、 Python のコーディングスタイルとしてはデファクトスタンダードといえるでしょう。 この PEP8、例えば以下のよ

                                                                Python の名前空間とスコープ
                                                              • XML名前空間の簡単な説明

                                                                XMLでは自由に独自のマークアップ言語(タグセット)を設計できますが、ウェブ上で情報を共有するときに、同じタグ名が異なる要素タイプを意味して衝突してしまう可能性があります。この問題を解決するためにXML名前空間は、それぞれのタグセットに固有のURIを割り当て、名前をURIで修飾することでお互いを区別します。名前空間は、ウェブ上で「意味」を明確に定義し、相互理解を可能にするために非常に重要な役割を果たします。 名前空間の導入 名前空間URIによる修飾と接頭辞 デフォルト名前空間 名前空間URIの意味するところ 名前空間の区画と属性の名前空間 参照文献 名前空間の導入 XMLでは独自のマークアップ言語(語彙)を自由に設計できますが、多くの人が利用する語彙は、標準的な語彙を共有する方が効率が良く、相互運用性も高まります。そこで、ひとつのXML文書を作成するのに、さまざまなマークアップ言語から語彙

                                                                • Railsのルーティングを極める (後編)|TechRacho by BPS株式会社

                                                                  更新情報 2014/03/03: 初版公開 2020/11/20: Rails 6で確認および更新 こんにちは、hachi8833です。「Railsのルーティングを極める」の後編です。今回はRails 4.0.3 + Ruby 2.1.1の環境で動作確認しています。 Railsのルーティングを極める(前編) ⚓ Railsのルーティング(routes)を極める 2012/03(baba) ⚓ resourcesとネスト Railsのルーティング記法の基本は、複数形のresourcesメソッドと単数形のresourceメソッドです。また、Railsのルーティングにはネストを含む多くのオプションがあり、自由度が飛躍的に高まっています。 以下の2つのルーティングは、ネストしていないシンプルなresourcesルーティングです。prefecturesとarticlesは、いずれもコントローラに合わ

                                                                    Railsのルーティングを極める (後編)|TechRacho by BPS株式会社
                                                                  • PHPでネイティブ関数を含むコードのテスタビリティを上げる2つの方法 - 絶品ゆどうふのタレ

                                                                    PHPでテストケースを作成する場合、ネイティブ関数を使っているようなコードに対してテストを実行しようとすると、どうしても環境に依存したり、実リソースにアクセスする必要が出てしまうことがあります。 この記事では、そのような問題に対する対処法を提示します。 経緯みたいなもの 先日もWeb APIをコールするPHPライブラリを書いていたのですが、HTTPをたたく部分のテストを切り離せず、もやもやしていました。 ちょっと前にPerlのTest::Timeというライブラリを教わって感動していたのですが、PHPでもネイティブ関数をオーバーライドできたらどんなにすばらしいだろう、などとぼやいていたのです。 そんなときに、@takimoにPHP 5.3ならオーバーライドできるよねって言われて、ハッと思い立ってテストに組み込む方法を考えてみたところ、割とスマートに実現できそうな方法が見つかったので、方法論の

                                                                      PHPでネイティブ関数を含むコードのテスタビリティを上げる2つの方法 - 絶品ゆどうふのタレ
                                                                    • プログラマが持つべき心構え (The Zen of Python) - Qiita

                                                                      はじめに この記事はstackoverflowのThe Zen of Pythonに関する質問と解答(CC BY-SA3.0 ライセンス)を訳したものです。 The Zen of Pythonの日本語訳は"我々は「Python」に何を求めているのか?"を参考にしました。 The Zen of Pythonとは The Zen of Pythonとは、Pythonプログラマが持つべき心構えを簡潔にまとめたものです。 Pythonを書かないプログラマにとっても、これは大いに役に立つはずです。 ちなみに、"Zen"は日本語の「禅」です。 最初から全文を読もうとする必要はありません。この記事にざっと目を通してみて、気になった部分を読むことをおすすめします。 全文はPythonインタプリタ上で The Zen of Python, by Tim Peters Beautiful is better

                                                                        プログラマが持つべき心構え (The Zen of Python) - Qiita
                                                                      • hitsujiwool (JavaScriptにおけるモジュール化のパターン)

                                                                        はじめに ここではJavaScriptにおける「ユーザが使用するプロパティやメソッドを、適切な名前空間に展開する方法」すなわちコードのモジュール化の方法を整理します。 JavaScriptには、パッケージや名前空間を直接管理する方法はありません。 なので、オブジェクトや関数といった手持ちの素材を使って同様の機能を実装する必要があります。 この特徴は、JavaScriptの文法を一通り勉強して、いざ脱初心者を目指そうという人達にとっての大きな壁になっているように思われます。 世の中で配布されているライブラリのほぼ全てが、何らかのモジュール化の仕組みを利用しており、それを理解できない限り、人のコードを読むことも、自作のライブラリを公開することも難しいからです。 とはいえ、モジュール化の方法にはいくつかのパターンがあります。 イディオムと言っても良いかもしれません。 以下ではその典型的なパターン

                                                                        • Facebookなどでサイトが共有された時、リッチ表示するOGPの設定

                                                                          Facebookでシェアされたり、いいねを押すとニュースフィードにWebサイトやブログ記事が表示されます。サイトによっては画像が大きく表示されたり、概要がいい感じで思わずクリックして読んでみたくなるときってないでしょうか? これは、ブログなどのサイトにOGP(Open Graph protocol)と呼ばれるMetadataが設定されていて、Facebookがそれを認識し表示してくれているからです。 当サイトでのOGPの実装は、WordPressのプラグインの「Open Graph Pro」を使用していましたが、プラグインが更新されていなく、古くなっていたので自分で実装しなおしました。その際にOGPについて調べたことをまとめます。 OGPとは何か? OGP(Open Graph protocol)は、冒頭で少し述べたようにFacebookやmixiなどのSNSでシェアされたときに、そのペー

                                                                            Facebookなどでサイトが共有された時、リッチ表示するOGPの設定
                                                                          • コンテナ仮想、その裏側 〜user namespaceとrootlessコンテナ〜 - Retrieva TECH BLOG

                                                                            レトリバのCTO 武井です。 やあ (´・ω・`) うん、「また」コンテナの記事なんだ。済まない。 技術ブログの開設と新セミナー運用の開始にあたって、「前に話した内容をブログにしつつ、新しい差分をセミナーにすれば、一回の調べ物でどっちのネタもできて一石二鳥じゃないか」と思っていたのですが、 前のセミナーが情報詰め込みすぎでブログの文量がとんでもないことになって、 → それが前提条件になってしまっているのでセミナー資料の文量も膨れ上がって、 → 差分だけと思っていたUser名前空間も思った以上のボリュームで、 → やっと一息かと思ったら、フォローアップ記事が残っていることを思い出すなど ←いまここ 一石二鳥作戦のはずが、どうしてこうなった……。 計画大事。 そんなわけで、今回は4/17にお話ししました「コンテナ仮想、その裏側 〜user namespaceとrootlessコンテナ〜」という

                                                                              コンテナ仮想、その裏側 〜user namespaceとrootlessコンテナ〜 - Retrieva TECH BLOG
                                                                            • 第6回 Linuxカーネルのコンテナ機能[5] ─ネットワーク | gihyo.jp

                                                                              コンテナに関係する主要な機能2つの説明が済んだので、今回はLXCで使われることが多いネットワーク関連の機能を紹介しましょう。 コンテナとネットワーク名前空間 コンテナでのネットワークの使用と密接に関係するのが第2回で紹介したネットワーク名前空間です。 コンテナでネットワークを使用する場合、一般的にはネットワーク名前空間を作成します。そして、ホスト上に存在するネットワークインターフェースを、作成したネットワーク名前空間に割り当てます。そうすると、ホストや他のコンテナからは見えない、コンテナからだけ見えるネットワークインターフェースとなります。 もちろん、ネットワーク名前空間を作らなくてもコンテナは作れます。しかし、システムコンテナを使う場合、最近はupstartやsystemdといったソケットを使用するinitが使われることが多いので、ネットワーク名前空間をホストと分けておくのが普通です。

                                                                                第6回 Linuxカーネルのコンテナ機能[5] ─ネットワーク | gihyo.jp
                                                                              • 5分で分かる名前空間とオートロード

                                                                                4. 名前空間を宣言する namespace宣言は必ずコードの先頭に記述すること。 (コメント、改行、スペースは宣言の前に書いてもよい) 名前空間は「」(バックスラッシュ)区切りで階層を構成できる。 <?php namespace HolyExample; //名前空間 ”HolyExample” を宣言 ちなみに、誤っていわゆるBOM付UTF-8でファイルを保存したところ、 こんなエラーで怒られてしまいました。 Fatal error: Namespace declaration statement has to be the very first statement in the script ※BOM付きUTF-8には気をつけて! 5. 名前空間でのクラス定義 名前空間で定義されるクラス/関数/定数は、先頭に名前空間を 付加したものとして解釈される。 namespace HolyEx

                                                                                  5分で分かる名前空間とオートロード
                                                                                • PHPの名前空間の効果的な使い方を考える

                                                                                  PHPは5.3から名前空間が導入され、名前の衝突を避けるため長いクラス名をつけることから解放されました。しかしながら、名前空間を使ったコードは、名前空間を使っていないものに比べて本当に読みやすくなっているのでしょうか? ここで例を挙げます。PHPの良質なソースコードと言えば、私はZend Framework(ZF)やSymfonyを思い浮かべるのですが、ZFのとあるクラスの冒頭を見てみましょう。 https://github.com/zendframework/zf2/blob/master/library/Zend/Mvc/View/Console/RouteNotFoundStrategy.php <?php /** * Zend Framework (http://framework.zend.com/) * * @link http://github.com/zendframewo

                                                                                    PHPの名前空間の効果的な使い方を考える