タグ

ブックマーク / maeharin.hatenablog.com (8)

  • や...やっと理解できた!(2) JavaScriptのスコープチェーン - maeharinの日記

    前回はJavaScriptのプロトタイプチェーンについて、図解を用いることでなんとか理解できました。今回はスコープチェーンに挑戦してみます。前回と同じく「1. 図解を用いる」「2. 用語を明確に定義する」「3. Standard ECMA-262 3rd editionを情報ソースとする」というアプローチで紐解いて行きます。 用語の定義 ・エントリの文章における表記は、以下の表の「ECMA-262 3rd」に統一する ・エントリの図における表記は、以下の表の「エントリの略称」に統一する ・エントリ内におけるES3とは、Standard ECMA-262 3rd editionを指す ECMA-262 3rd エントリの略称 JavaScript(サイ)第5版(日語) Execution Contexts EC 実行コンテキスト Variable Object VO 変数定義の

    や...やっと理解できた!(2) JavaScriptのスコープチェーン - maeharinの日記
  • や...やっと理解できた!JavaScriptのプロトタイプチェーン - maeharinの日記

    JavaScriptのプロトタイプチェーンについて理解しようとしたのだけど、prototypeとか__proto__とかごちゃごちゃになって、色んなブログを読んでもなかなか理解しきれなくて悶々としていたのだが、図を書いたらパッと理解できた!以下、情報ソースはなるべくECMAScript仕様書(3rd)を元にするようにして書きました なぜ分かりづらいのか? そもそも、なぜJavaScriptのプロトタイプチェーンは自分にとってこうも分かりづらかったのだろうか?自分なりに分析してみると、まず、「似ているが違う用語が沢山ある」という点がある。ざっとあげただけでも、「prototypeと__proto__」「__proto__と[[Prototype]]」「FunctionとFunctionオブジェクト」などがある。そして次に、「入り組んだ構造が動的に変化する」という点がある。上記のように似たよう

    や...やっと理解できた!JavaScriptのプロトタイプチェーン - maeharinの日記
  • レガシーシステムを理解する方法 - maeharinの日記

    結構年季が入ったJavaのレガシーなwebアプリをRailsに移行するというプロジェクトを進めている。レガシーシステムは以下のような状態。 ・オリジナルを作ったエンジニアは既に不在 ・ビジネスロジックに対するドキュメントは殆ど存在しない ・単体テストは存在しない ・社内WAFで、ドキュメントなし ・複数のシステムが連動している このような状態は、年季の入ったシステムではわりとよくあることだと思うが、いかんせん「仕様がわからない」ということが色んな所でボトルネックになっていた。その対策方法について、メモしておく。 仕様を理解するための時間を確保する 「その内時間が経てば理解できるよ」という考えもあるだろうが、ある程度年季が入ったシステムをリプレースするなら、初期段階で多少コストをかけてでも、既存仕様を理解するための時間を作った方が効率的だと思う。既存仕様をよく理解しないまま移行開発を行っても

    レガシーシステムを理解する方法 - maeharinの日記
  • 開発合宿行ってきた - maeharinの日記

    いつも一緒に活動してるメンバー5人で、久々に開発合宿してきましたー 今回は「勉強したい技術を使って、何か作ってみる」をテーマとして、1泊2日。場所は伊東の山喜旅館。両日とも会議室を貸し切ることができたので、快適なネット環境の元、集中して開発できました 事前準備 場所と日時を決める まずはメンバーの都合が合う日程を伝助とかで調整して、その後合宿会場を予約。今回は伊東の山喜旅館にしました。開発合宿では「チェックイン、チェックアウトの時間」が問題になりやすいのですが、山喜旅館は会議室があって1時間1000円くらいで予約できました。チェックインしてない時間は、この会議室を予約することで、開発の時間を多くとれました www.ito-yamaki.jp 旅館のホームページ、いい感じです テーマ・タイムテーブル決める 今回は「勉強したい技術を使って、何か作ってみる」をテーマにしました。また、タイムテーブ

    開発合宿行ってきた - maeharinの日記
  • 「どこでもKotlin #1 〜Kotlin実践導入体験談〜」を開催しました #m3kt - maeharinの日記

    8/24(木)に私が所属しているエムスリー主催でKotlinのイベント「どこでもKotlin」を開催しました。エムスリーではAndroid開発言語としてはもちろんのこと、サーバーサイドでもKotlinを実践導入しています。第1回目となる今回は、日Kotlinユーザグループ代表 長澤太郎をはじめとするエムスリーのKotlinエンジニアが、サーバーサイド、Kotlin/Native、AndroidアプリでKotlinを使った体験談を発表しました。 connpassイベントページ:どこでもKotlin #1 〜Kotlin実践導入体験談〜【増員!】 - connpass どこでもKotlinについて ご存知のとおりKotlinAndroid開発言語として有名です。しかし、その活躍の場はAndroidにかぎらず、サーバーサイド、Nativeなど多岐に渡ります。私は今年Kotlinと出会い、その

    「どこでもKotlin #1 〜Kotlin実践導入体験談〜」を開催しました #m3kt - maeharinの日記
  • Backbone.jsをRailsで使った際の、初期設定とルール - maeharinの日記

    こないだまでRailsとBackbone.jsを使ったWEBサービスを作ってました。折角なので、その際の初期設定とちょっとしたルールをまとめておきます。ちなみに、規模感は以下のような感じです。 ・ModelとCollection 各約10個 ・ViewとTemplate 各約30個 ・Routerは使わない(SinglePageApplicationではないので) バージョンは ・backbone.js: 1.1.0 ・rails: 3.2.13 です ライブラリの配置 依存ライブラリは以下のように配置した // vendor/assets/javascripts/配下 . |-- backbone/ | |-- backbone-min.js | `-- backbone-min.map |-- json2/ | `-- json2.js |-- underscore/ | |-- un

    Backbone.jsをRailsで使った際の、初期設定とルール - maeharinの日記
  • RubyのFile.expand_path('相対パス', __FILE__)の意味 - maeharinの日記

    RailsなどのRubyライブラリのソースコードを見ていると、よく File.expand_path('相対パス', __FILE__) という一文を目にする。ちょっと調べてみた。 File.expand_pathとは riコマンドで調べてみる $ ri File.expand_path (from ruby core) ------------------------------------------------------------------------------ File.expand_path(file_name [, dir_string] ) -> abs_file_name ------------------------------------------------------------------------------ Converts a pathname

    RubyのFile.expand_path('相対パス', __FILE__)の意味 - maeharinの日記
  • PHPを愛する試み 〜self:: parent:: static:: および遅延静的束縛〜 - maeharinの日記

    PHPを愛する試みというものを個人的にやっている PHPを愛する試み PHPを愛する試み 〜調教編〜 今回は、self:: parent:: static:: 遅延静的束縛について図で整理してみた。 スコープ定義演算子 (::) まず「::」について。これはスコープ定義演算子という。マニュアルには以下のようにある。 スコープ定義演算子 (::) スコープ定義演算子 (またの名を Paamayim Nekudotayim)、 平たく言うと「ダブルコロン」は、トークンのひとつです。 static, 定数 およびオーバーライドされたクラスのプロパティやメソッドにアクセスすることができます。これらの要素をクラス定義の外から参照する際には、 クラスの名前を使用してください。PHP 5.3.0 以降では、変数を用いてクラスを参照することも可能です。 変数の値に (self や parent、 stat

    PHPを愛する試み 〜self:: parent:: static:: および遅延静的束縛〜 - maeharinの日記
  • 1