タグ

ブックマーク / xtech.nikkei.com (2)

  • 先輩教えて!プログラミングのabc(第1回)---コンパイルとビルドって何が違うの(下)

    ここまでは,基的に実行する前にすべての参照関係を解消するリンクについて解説してきた。これに対し,プログラムの実行時に参照関係を決定するものもある。これを「ダイナミック・リンク」と呼ぶ。この呼び方と対比する場合,通常のリンクを「スタティック・リンク」と呼ぶ(図6[拡大表示])。 Javaにはリンクとは別にコンパイルの後の作業がある。Javaの場合,ソース・コードをコンパイルすると,個々のクラスごとに「.class」という拡張子のファイルを生成する。ちょっとした規模のプログラムでも,その数は膨大になる。これでは他のユーザに配布するのは困難である。そこで配布できる形にまとめた「.jar」というファイルを作るのが普通だ。しかしこのファイルの場合,リンクの作業,すなわち参照関係の結びつけはしていない。 Javaでリンクが発生しないのは,実行時にすべての参照関係を確定するからだ。実行時に名前で呼び出

    先輩教えて!プログラミングのabc(第1回)---コンパイルとビルドって何が違うの(下)
  • 先輩教えて!プログラミングのabc(第1回)---コンパイルとビルドって何が違うの(上)

    「先輩,前から疑問に思ってたんですが,これ何のエラーですか」 「ああ,これはリンクのときのエラー・メッセージだよ」 「リンクって,何ですか」 「え?知らないの。最近のツールは,コンパイルだリンクだって言わないからなぁ・・・。リンクってのは,コンパイルしてできたものを全部つなげることだよ。ビルドすると,コンパイルの後にリンクまでやってるんだ」 「???。全然わかんないです。大体,ビルドとコンパイルって,やってること同じに見えるんですけど。違うんですか?」 「よし,じゃぁちょっと,腰をいれて説明しようか」 Visual StudioやDelphiなどのツールを利用してプログラムを作っていると,見えてこないのが実行モジュールができるまでのプロセスである。当たり前のことだが,ソース・コードは人間が理解できる形でプログラムを表現したものであり,コンピュータは理解できない。だからコンピュータが理解で

    先輩教えて!プログラミングのabc(第1回)---コンパイルとビルドって何が違うの(上)
  • 1