• 締切済み

ブラウザ作成に必要な知識

クッキーの使えるブラウザを作ろうと考えています。テキストブラウザで構いません。できれば簡単な情報収集エージェントとして使いたいです。何を勉強すれば作れるものか、御指南いただけないでしょうか。普段はウィンドウズを使っております。 現在の知識 Perl,HTML: 初級 C,C++,JAVA,Perl/Tk,CGI: 入門 HTTP: ほとんど無し

みんなの回答

  • alfeim
  • ベストアンサー率58% (114/195)
回答No.2

まずHTMLを取得するためにTCP/IPでHTTPDに接続しデータを取得する必要があるため、HTTP/1.0もしくはHTTP/1.1の知識、及びTCP/IPなどSocket操作。 取得してきたHTMLから表示データを作る過程で、構文解析。 解析した情報を元にレイアウトセットアップが必要になるのでGUIなら各NativeInterface、CUIなら各コンソールの操作(EscapeSequenceもしくは各種ライブラリなど)。 あとは英語以外の文字圏のサポートも考えるとMultibyte処理及び、文字コード間の変換など。 ゼロからの作成であればこの程度は必要でしょう。Windows下で各種コンポーネントに頼っても良いのであればIEを使ったりとか楽が出来ますけど。

  • zzzzzz
  • ベストアンサー率61% (70/113)
回答No.1

実際にブラウザまでを作った経験があるわけではないので、作るとすれば、という話ですが。 最低限必要な知識は、httpプロトコルの基礎と、HTMLの仕様、および各種言語でのネットワーク接続のやり方でしょう。 ネットワーク接続は、C/C++を使用するならwininet.dllの関数の理解(winsockでもできますが、wininetの方がずっと簡単です)、 Javaを使用するならjava.netパッケージの各クラス(特にURL,URLConnection,HttpURLConnection)の理解が必要となります。 通信ができればHTMLドキュメントの取得まではできます。ここまではそれほど難しくないと思います。 難しいのはHTMLのパーシングおよび表示の部分だと思われます。 XMLのように厳格な記述を持つ言語ならパースするライブラリも数多く出ていてやりやすいのですが、 HTMLは言語仕様がタグの省略に関して寛大ですし、そもそも正しいHTMLを書いている人が少ないですので、パースが困難です。 # C/C++ならWindowsAPIの知識は何をするにも必要です