タグ

ブックマーク / thinkit.co.jp (5)

  • [ThinkIT] 第3回:トランザクションの比較 (1/4) -at- 徹底比較!! PostgreSQL vs MySQL

    トランザクション機能をサポートしているのは、PostgreSQLMySQL+InnoDBエンジンであり、MySQL+MyISAMエンジンはトランザクション機能をサポートしていません。ここでのトランザクション機能とは、複数のテーブルやレコードに影響をおよぼす処理を1つの単位とみなし、この単位での処理結果を保証する機能を指します。 具体的には、BEGIN文にてトランザクションを開始していくつかの処理を行った後、処理を確定する場合はCOMMIT文、処理を取り消す場合はROLLBACK文を使用し、トランザクションを終了させるまでの処理です。 トランザクション分離レベルとは、複数のトランザクションが同時に実行された場合に、他のトランザクションからの影響がどのくらい分離するかのレベルを意味します。 ANSI/ISO SQL規格(SQL92)では4つの分離レベル(下記コラム参照)が定義されています。P

  • アジャイル・ブームの再来

    はじめに "アジャイル"という言葉が、ソフトウエア開発現場において、広く知られています。皆さんも1度は耳にしたことがあると思います。 筆者は、開発者として、新人時代、社外常駐時代、プロジェクト・リーダー時代に、アジャイル開発に携わりました。連載では、これらの経験から得たアジャイルの知見を示します。 第1回では、アジャイルの経緯と現状など、事前に知っておくべき内容を説明します。2000年代前半に立ち上がったアジャイルが「試行錯誤の時代」を経て再び注目されるようになった要因について解説します。 アジャイルに共通する4つの価値と12の原則 あらためて、アジャイルとは何かをおさらいします。 アジャイルとは、いくつかのソフトウエア開発手法の総称です。数多くのアジャイル開発手法が存在します。以下は、具体的なアジャイル開発手法の例です。 Agile Modeling Agile Unified Pro

  • [ThinkIT] 第4回:Railsでテストをしてみよう (1/4)

    近年のシステム開発では図1に示すように自動化されたテストを取り込み、継続的インテグレーションを実現した開発スタイルが提唱されています。 テストの自動化を導入することで、ソフトウェア開発で最も恐れるべき事象の1つであるデグレードを回避することができるため、積極的にコードを整理(リファクタリング)することができるようにもなります。 またテストの自動化は、先進的なアジャイル開発ではもちろんのこと、従来のウォーターフォール型開発プロセスにも有効的な適用が可能であるため、近年急速に一般化しつつあります。そしてRuby on Rails(以下、Rails)にはテストの自動化を実践するためのサポートが含まれています。

  • [ThinkIT] 第1回:Webアプリケーションの多言語対応 (1/2)

    Webアプリケーションを多言語に対応させることはとても大変な仕事です。大抵の場合、この作業は倦厭され、多くのオープンソース・プロジェクトでは多言語化は実現されてきませんでした。しかし、オープンソース・プロジェクトのTODO リストを確認してみましょう。その中に、国際化に関する項目がリストアップされています。 この連載では、ごく少数のPHPファイルと通常のHTMLファイルを使うことで、コードを簡単に国際化する方法を紹介します。この方法を利用することで、素早く簡単にメンテナンスを行い、できる限りプラットフォームに依存せずにコードを実行することができるようになります。 実際に、国際化する方法を紹介する前に、要点を確認する必要があります。これらの要点を読めば、なぜ国際化やグローバル化を行う必要があるのかをより詳しく理解することができるでしょう。 グローバル化(Globalization)とは、g1

  • [ThinkIT] 第1回:変わりゆく品質の定義 (1/4)

    ユビキタスという言葉を使うまでもなく、あらゆる局面でソフトウェアがある一定の役割を担うことが当たり前になってきました。むしろ、「いかなる形であれソフトウェアが介在しないモノ」を想像することの方が難しくなってきた感があります。 ITシステムの引き起こしたトラブルが巡り巡って会社の株価を左右する時代…。業界一筋20年の筆者にもITがビジネスのキーコンポーネントとなったことが実感させられる昨今です。 筆者はユーザ企業やSIerにお邪魔して、開発プロセス改善のお手伝いすることを生業としています。立場や事情は違いますが、共通するのは「より高い品質」であり「さらなる効率化」です。しかし品質向上ほど、総論賛成、各論反対となるものはありません。それにはいくつか理由(表1)があります。 品質そのものの捉え方が、立場や対象となるモノによって異なる 品質向上の取り組みには、それを作り込む「開発」という側面とそれ

  • 1