待ちに待っていた,Java SE 6がもうすぐリリースされます。されるはずです。されると思うのですが... なぜ,こんなに弱気なのかというと,もともとJava SE 6は今年5月のJavaOneの前にリリースされるされる予定でした。それが,10月に延び,さらに12月に延びたという経緯があるのです。 とはいうものの,最近のビルドでは新しい機能の追加はほとんどなく,バグフィックスがほとんどです。リリースが近いことは確実なようです。 そこで,今月からJava SE 6について取り上げていこうと思います。 Java SE 6では,スクリプトのサポートやWebサービス系のAPIが導入されたことなどが話題になりますが,それ以外にもたくさんの機能が取り入れられています。機能としてみればたいしたことがなくても,役に立つ機能が多くあるのです。 少しでも早くJava SE 6を試してみたいと思われる方も多いで
【連載の概要】 たった10分で役に立つ実践的なプログラムを毎回1つ作ってみよう! という,日経ソフトウエア誌の人気連載コラム(2005年3月号~2006年2月号の全12回)。著者はフリーライターの園田 誠(そのだ まこと)氏(http://www.japan.xitami.net/)。 郵便番号から住所を検索 パスワードの作成と保存 HTAでコマンドライン・プログラムをビジュアルにする 自動的に連番ファイル名を付ける 指定した文字列を含むファイルを探せ! 指定フォルダ内のファイル名一覧をExcelに書き出す PHPをコマンドラインで使い,検索リンク付き文書を作る ファイルの中身を暗号化する 簡易バージョン管理システム 偽装ファイルの作成と復元 テスト用の名前データを自動生成する 数値データを日本語で桁表示する 日経クロステック Special What's New ベネッセホールディングス
Top Ten of Programming Advice to NOT follow 新人プログラマーにアドバイスを求められた筆者が考えた、「聞くべきでないアドバイス」のリスト。 10) 例外は使うな(by Joel on Software 等) 9) 負にならない値には unsigned int を使え 8) 実世界に対応したクラスを設計せよ 7) チームでコード記法を統一せよ 6) コメントをたくさん書け 5) public フィールドよりアクセサメソッドを使え 4) 一個しかインスタンスができないなら Singleton パターンを使え 3) 入力は寛大に受け付け、出力は厳しくせよ 2) 最初から重箱の隅までプログラムせよ。後でやろう、は実行されない 1) コードを書く前に設計せよ 7), 5) は聞いてもいいと個人的には思う。10), 8) は僕も聞きたくない。3) は聞きたくな
プログラムを作成する際に、地味ですが重要な作業の1つとしてログの出力部分の作成があります。ログの出力が適切でないと、トラブルが発生した場合にその原因をつかむのが難しくなります。ログの出力が適切であれば、問題の原因を特定することが容易になるでしょう。 また、システムの処理時間をログの要所に入れておけば、プロファイラなどを使わなくても、ボトルネックがある程度解析できます。レスポンスタイムなどのシステム状態の統計を取っておけば、問題の把握などにも役立つでしょう。本稿では、そんな縁の下の力持ちともいえるログの出力機能を提供するCommonsプロジェクトのLoggingとlog4jについて紹介します。 Logginで実現できること Loggingは、log4jやJ2SDK 1.4のLogging APIなど、複数のログAPIへのラッパーとして利用できるライブラリです。Loggingを利用すると、次の
本ページの情報は、2016年10月時点のものです。2023年10月に再構成をいたしました。 なお、内容に変更はありません。 2016年10月版 2002年2月に「Webプログラマコース」と「製品プログラマコース」、2007年の6月に「Webアプリケーション編」、9月に「C/C++編」と分けて公開してきた講座のうち、原則を中心として共通的なものをまとめて2016年10月に再編しました。 なお、資料内の参照先はすべてサイトリニューアル前のURLであるため、リダイレクトを設定しています。 セキュア・プログラミング講座(2016年10月版/2017年6月一部修正)(PDF:2.3 MB) 2007年版 「ソースコード検査技術の脆弱性検出能力向上のための研究」(注釈1)を実施した一環として取りまとめた内容を、2002年から公開していたセキュア・プログラミング講座(旧版)の改訂版(2007年版)として
プログラマ、と一言で言っても、if文の意味をようやく理解したばかりの駆け出しのプログラマもいれば、汎用的で優れたライブラリを量産できるような凄腕のハッカーもいる、つまりはピンきりです。 Perlプログラマに関してはどうでしょう。一流のPerlプログラマになるためには、見えない階段があるようです。use strict を使い始めたらその階段を一歩上ったと言えるでしょうし、正規表現を理解したときも一段あがることになると思います。リファレンス、クロージャ、オブジェクト指向、CPANモジュール、mod_perl、MVCフレームワーク。それらも階段を構成する材料の数々と言えるでしょう。 さて、Perlプログラミング救命病棟という書籍から、ちょっと長いですがそんなPerlプログラマのレベル10のリストを引用してみます。 レベル1: Perl 関係の書籍や資料を何も読んでいない。Perl がプログラミン
This domain may be for sale!
0xcc.net Tools Text Escaping and Unescaping in JavaScript Software ttyrec: a tty recorder pdumpfs: a daily backup system similar to Plan9's dumpfs Ruby/Romkan: a Romaji/Kana conversion library for Ruby Ruby/Bsearch: A Binary Search Library for Ruby Ruby/ProgressBar: A Text Progress Bar Library for Ruby Contact Satoru Takabayashi
ご存知の通り、はてなのシステムはほぼすべてPerlで書かれています。そもそも僕がはてなに入った一つの理由に、僕が一番得意とする言語であるPerlを使ってシステムを構築していたという点があったりします。 世の中にはたくさんのプログラミング言語があります。Perl、Java、Ruby、PHP、Python、C、C++、lisp、Smalltalk、Cobol...数え上げたらキリがありません。そして、プログラマはかならずと言っていいほど、どれかひとつ以上の言語を愛しています。好き、ではなく愛しているのです。 自分が愛しているものを批判されると感情的になりやすいのは人の常、プログラミング言語の差異に関する議論は炎上しがちで、よく宗教戦争だなんて言われたりもします。その中で、言語なんてどれも一緒だなんていう乱暴なまとめがされることもよくあったりします。 しかし、何年かプログラマというものを経験して
第7回 Eclipse、CVS、Antを利用した 継続的インテグレーション&テスト環境の構築 縣俊貴 橋本正徳 Project Mobster/メディアファイブ株式会社 2003/6/13 XPのプラクティスに「継続的インテグレーション」というのがあります。JUnitによるテストと同様にXP開発ではないプロジェクト(チーム)でも実行可能な項目です。新規クラスの追加やリファクタリングの後、リファクタリングがほかのクラスに影響を及ぼしたことや、ユニットテストでも見つからなかった結合時に発生するバグを継続的インテグレーションを行えば見つけることができます。さらに、テスト用マシンを本番環境さながらに用意しておけば、環境依存のバグをいとも簡単に発見することができます。継続的インテグレーションで高速道路をフルスロットルで飛ばしましょう! ■継続的インテグレーションのメリットとビルド専用マシン 継続的イ
shiroさんの日記から、もう一個。 プログラミングを基礎から、しかも手っ取り早く身につけるにはどんなコースが良いだろう。 まずは、Unix環境でOSの概念とCの基礎を身につける。低レベルのインタフェースまでブラックボックスになってしまっているのは、学習環境として好ましく無いからだ。本を一冊、私が思い当たるのは、ちょっと古いが Kernighan&Pikeの"Unix Programming Environment" かな。これは大して分厚く無いくせに、一冊でUnixの基礎からシェルプログラミング、システムプログラミングのさわりやら構文解析やらまでカバーして、おまけにUnixの基本思想がわかるというお得な内容だと思う。最近のunixに慣れた目には古くさく映るかもしれないが(emacsもperlも無し。ネットワーク関係も弱い)、基礎を学ぶにはこのくらいシンプルな方が良いのではないか。 (同じ
C言語のprintf関数の魅力である出力形式設定の簡単さが、Java 5から導入されたprintfメソッドによって可能になった。同等な機能が多いが相違点もあり注意して活用したい
再帰的なデータ構造 OSのファイルシステムは、ファイルはフォルダに収められ、そのフォルダはさらにほかのファイルとともに上位のフォルダに、そのフォルダはさらに上位のフォルダに……、という具合に入れ子構造になって構成されています。このように、ある要素がそれと同等の要素を含むデータ構造を「再帰的なデータ構造」と呼びます。 ファイルシステムの表現 このような再帰的なデータ構造をプログラム上で表現してみます(図1)。ファイルとフォルダをそれぞれFile、Folderというクラスで表します。ファイルとフォルダそれぞれにgetValueというメソッドを用意することにします。FileのgetValueは自身のファイル容量を返し、Folderについてはそのフォルダが持つすべてのファイル容量の合計を返すとします(リスト1~リスト3)。 package package net.mogra.wings.javat
2004年9月末にリリースされたJ2SEの新版(J2SE 1.4の次のバージョン)は、本来であればJ2SE 1.5と称されるはずが「J2SE 5.0」と命名されました。このバージョン番号が示すように、J2SE 5.0の開発環境(以下、JDK 5.0)では、これまでにない数々の大きな改良が加えられています。 JDK 5.0の新機能の多くは、EoD(Ease of Development:開発を容易にすること)というテーマの基に導入されたものです。Javaがもともと持っていた型の安全性の性質は強化しながら、よりシンプルにコードを記述できるような改良が、多く盛り込まれています。本稿では、そのうちの1つである「簡略化されたfor文」について説明します。 従来の煩雑なfor文 これまでは、配列やコレクションの各要素を取り扱うには、以下のようにコードを記述しました。 String[] strs = n
JavaのコアAPIに含まれるjava.util.Listインターフェイスは、順序付けられた可変長のデータの集まり「リスト構造」を表現するためのインターフェイスです。コアAPIには、Listの実装クラスがいくつか用意されていますが、そのうち抽象クラスでないものは、Vector、ArrayList、LinkedListの3つになります。ただ、これらのクラスを使う際には、それぞれの実装の違いを意識せずに、なんとなくいずれかを選んで使っていることが多いのではないでしょうか? 本TIPSでは、これら3つの実装クラスについて、それぞれの実装の違いを比較します。Listインターフェイスが提供する主な操作は、要素の挿入(add)、削除(remove)、参照(get)の3つです(注)。ここでは、その3つの操作と、マルチスレッド環境下での同期化の観点から、それぞれの性能を比較し、使い分けのポイントをまとめま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く