タグ

ブックマーク / atmarkit.itmedia.co.jp (21)

  • 素早く正規形を見抜く実践テクニック

    連載は、ITシステム開発の現場でプログラミングやSQLのコーディングを行っているエンジニア(データベース利用者)が、データ管理者(DA)やデータベース管理者(DBA)へステップアップするための第一歩として有効な基礎知識を紹介する。(編集局) (3/4)

    素早く正規形を見抜く実践テクニック
  • 残業も減らせる!? 上級エンジニアになるためのDesign Doc超入門

    残業も減らせる!? 上級エンジニアになるためのDesign Doc超入門:プロジェクト成功確率向上の近道とは?(3)(1/3 ページ) ITシステム開発の問題点の一つであるコミュニケーションの失敗。連載では、これを防ぐ方法としてお勧めしたい3つのドキュメントを紹介していく。今回は、「技術視点」のドキュメントとして、2000年代以降注目されている「Design Doc」について解説します。 IT技術がビジネスに貢献していくためには、まずはシステム開発を成功させることが重要です。連載「プロジェクト成功確率向上の近道とは?」では、システム開発を成功させるために、コミュニケーションが果たす役割の重要性と、ドキュメントによるコミュニケーションの重要性について解説してきました。 連載1回の「ドキュメントは最強のコミュニケーションツールである――Joelの機能仕様書入門」、第2回の「サンプル例に見る

    残業も減らせる!? 上級エンジニアになるためのDesign Doc超入門
    kawa-_-kawa
    kawa-_-kawa 2016/06/22
    小さい開発規模ならいきなりDesignDocから始めてもいい感じかも。規模が大きい場合だと、細かい実装に引きずられてDesignDocの収集がつかなくなりそうな気配。
  • .NET開発者がよく使うサイト、本当に使えるサイト【2016年度版】

    .NET開発者がよく使うサイト、当に使えるサイト【2016年度版】:特集:.NET開発者のためのオンラインリソースガイド(1/2 ページ) Web上には.NET関連サイトが数え切れないほどたくさんある。その中でも.NET開発初心者がまずは押さえておきたいWebサイトを厳選してまとめた。 稿は、これから.NETでプログラミングを始めようとしている方や、新しく.NETでの開発に携わることになった方に贈るオンラインリソースガイドの2016年度版である。インターネット上に数ある.NET関連サイト/プログラミング関連サイトの中で、.NET開発者がまずは押さえておくべきWebサイトについてまとめている。 稿がまとめているサイト&ジャンル分けについて .NET開発者がよく利用するサイトの代表は、やはり.NET Framework & Visual Studioを提供するマイクロソフトのサイトだろう

    .NET開発者がよく使うサイト、本当に使えるサイト【2016年度版】
  • 開発現場で保守性の高いTDD/BDDを実現するための3つのポイント――テストレベル/網羅性とは

    開発現場で保守性の高いTDD/BDDを実現するための3つのポイント――テストレベル/網羅性とは:いまさら聞けないTDD/BDD超入門(4)(1/3 ページ) 連載目次 前回の『TDD/BDDにおける「振る舞い』の意味するところとは何なのか」までで述べたような、TDD/BDDを導入するときには、現場で「で、今までやってきた単体テストと結合テストって、どうやってこれに組み込めばいいんだっけ?」「網羅的なテストをどうやって書けばいいんだろうか?」「テストを先に書くだけくらいにしか違いがないのではないだろうか?」などの疑問が出てきます。 今回は、これらの導入時の疑問を解決するようなパターンを紹介します。まずは説明のためにいくつかの言葉の定義を紹介してから、どういったことで保守性の高いTDD/BDDを実現できるかを紹介します。 テストレベルの定義 大まかに言えば、「テストレベル」とはテスト対象の大き

    開発現場で保守性の高いTDD/BDDを実現するための3つのポイント――テストレベル/網羅性とは
  • テスト自動化ROI試算式の構成要素と5つの例。そしてCBAとは何か

    表の「手動テストの運用コスト」「自動テストの開発コスト」「自動テストの運用コスト」は各単位時間当たりのコストと実行時間を積み上げていけば、算出できます。 「欠陥コスト」の扱いが問題 表の「テストで間接的に発生するコスト」で○が付いている「欠陥コスト」は「番環境での欠陥に対する予想対応コスト」なので、発生する欠陥の頻度や重要度によって異なります。自動化された後の運用コストの値は、同一の「規模」「特性」を持ったソフトウェアからのベンチマークで計ることが多いですが、正確な予想値を見積もるのが困難な場合があります。障害の数がどれだけ減るかは、この「欠陥コスト」をはじめ、さまざまな変動要素が絡むためです。このため、簡易的なテストの運用改善に完結したROI試算では「欠陥コスト」は使用しない場合もあります。 また後述しますが、手動テストを自動化する場合、手動テストを行う人員が、別のアプリケーションのテ

    テスト自動化ROI試算式の構成要素と5つの例。そしてCBAとは何か
  • TDD/BDDにおける「振る舞い」の意味するところとは何なのか

    TDD/BDDにおける「振る舞い」の意味するところとは何なのか:いまさら聞けないTDD/BDD超入門(3)(1/3 ページ) 前回の「TDD/BDDの思想とテスティングフレームワークの関係を整理しよう」では、TDD/BDDについて、その思想と、それをサポートするテスティングフレームワークに分けて解説しました。その中で、TDD/BDDについては実際の熟練者の言葉を借り、テスティングフレームワークについては概要を触れて、その系譜をたどりました。 BDDはその名前に「Behavior」とありますが、「振る舞いとしてのテストコードを書く」とはどういうことなのでしょうか? 難しく考え過ぎる必要はありませんが、「それは振る舞いを書いていないよ」と指摘をする熟練者が何を考えているかを理解することはBDDを習熟していく中で重要な意味を持ってきます。 記事では「振る舞い」という言葉がどのような意味で使われ

    TDD/BDDにおける「振る舞い」の意味するところとは何なのか
  • Ruby 2.1の基本構文/基本文法まとめ&Pryの使い方

    Ruby 2.1の基構文/基文法まとめ&Pryの使い方:若手エンジニア/初心者のためのRuby 2.1入門(2)(1/7 ページ) オープンソースのオブジェクト指向プログラミング言語「Ruby」の文法を一から学ぶための入門連載。最新版の2.1に対応しています。今回は、Rubyの変数、定数、リテラル、演算子、条件分岐とループ(繰り返し)、コメントの基的な使い方について解説。Ruby 2.1での新機能や便利な実行ツール「Pry」のインストールと使い方も紹介します。

    Ruby 2.1の基本構文/基本文法まとめ&Pryの使い方
  • TDD/BDDの思想とテスティングフレームワークの関係を整理しよう

    TDD/BDDの思想とテスティングフレームワークの関係を整理しよう:いまさら聞けないTDD/BDD超入門(2)(1/3 ページ) TDD/BDDの思想に触れ、フレームワークとしてxUnit、JBehave、xSpec、Cucumber、Turnip、TestDoxを紹介する。 前回の「テスト駆動開発/振る舞い駆動開発を始めるための基礎知識」でも紹介があったように、さまざまなテスティングフレームワークがあります。例えばTDD自体は、Kent Beck(ケント・ベック)氏が著書『テスト駆動開発入門』(ピアソンエデュケーション刊)の中で述べているように、「分析技法および設計技法であり、実際には開発全てのアクティビティを構造化するための技法」です。 TDD(テスト駆動開発)/BDD(振る舞い駆動開発)を実践することと、特定テスティングフレームワークを採用したり開発したりすることを分けて考えておかな

    TDD/BDDの思想とテスティングフレームワークの関係を整理しよう
  • TDD/BDDの思想とテスティングフレームワークの関係を整理しよう

    xSpec BDDフレームワークと分類されることが多く、前述のJBehaveからインスパイアされて開発された、Rubyの「RSpec」を始祖とするテスティングフレームワークの総称です。「SpecBDD」と呼ばれることも多く、JBehaveと比較してよりコードの見やすさやドキュメンテーションの作りやすさに注力していることが挙げられます。 RSpecでは、xUnitでの単語を次のように置き換えています。 「Fixture」→「Context」 「Test」→「Spec」 RSpecと、Groovy製のBDDフレームワーク「Spock」の簡単な例を次に示します。まずはRSpecです。 describe FizzBuzz do [3,99].each do |num| it "return 'Fizz' for multiples of 3(#{num})" do expect(FizzBuzz.

    TDD/BDDの思想とテスティングフレームワークの関係を整理しよう
  • テスト駆動開発/振る舞い駆動開発を始めるための基礎知識

    連載目次 2000年代初期に開発手法として確立された「テスト駆動開発」(Test Driven Development、以下「TDD」)は、その後10年もの間で普及が進み、今や珍しくない開発スタイルの1つとなっています。国内でも「アジャイルアカデミー」「TDD Boot Camp」などによる推進・普及活動が各地で活発化し、認知が広がってきました。 なおTDDは誕生からこれまでの間に、さまざまな工夫や実践上のノウハウが提唱されてきました。またTDDの普及に影響を受け、他のさまざまな「テストファースト」手法も台頭してきています。 稿では、そうしたTDDの発展や、振る舞い駆動開発(Behavior Driven Development、以下「BDD」)など他のテストファースト手法への展開についても解説します。 ※編集部注:ソフトウェアの「テスト」そのものの概要や種類について知りたい方は記事「J

    テスト駆動開発/振る舞い駆動開発を始めるための基礎知識
  • Java Solution

    2024年6月現在、稼働環境のアプリで最も利用されているのは「Java 17」 New Relicがレポートを発表 New Relicは、年次レポート「2024年 Javaエコシステムの現状」を発表した。Java 21の提供開始後6カ月間での採用率は1.4%。JDKについては、コミュニティー管理型の「Eclipse Adoptium」が注目を集めているという。(2024年6月5日)

  • 未経験者が実践で分かったテスト・ビルド・テプロイの流れ

    未経験者が実践で分かったテスト・ビルド・テプロイの流れ:Visual Studio Onlineで始めるGitとCI入門(3)(1/4 ページ) 連載「Visual Studio Onlineで始めるGitとCI入門」では、Visual Studio Online(以下、VS Online)を使って、初心者がGitとCIを始める手順を解説してきた。第1回の「Git初心者がVisual Studio OnlineでGitを使ってみた」でGitを使ったバージョン管理について、第2回の「MonacoでPaaSアプリのコードを編集しビルド・テプロイを自動化するには」で、継続的インテグレーション(以下、CI)について紹介したが、今回はCIと連動するテスト管理機能を紹介する。 VS Onlineの「テスト管理機能」については、正直筆者は大変に難儀した。そもそも筆者自体は一匹狼で、今まで複数人の関わる

    未経験者が実践で分かったテスト・ビルド・テプロイの流れ
  • Git初心者がVisual Studio OnlineでGitを使ってみた

    Git初心者がVisual Studio OnlineでGitを使ってみた:Visual Studio Onlineで始めるGitとCI入門(1)(1/3 ページ) 初心者がクラウド上のツールを使ってGit、CI(継続的インテグレーション)を始めてみる連載。初回は環境設定とGitでのバージョン管理の始め方を紹介。 一介のプログラマーである限り 筆者は、はっきり言って「Windows Azure」(以下、Azure)やVisual Studio Online(以下、VS Online)、バージョン管理システムであるGit、CI(継続的インテグレーション)などについて全く知らない。使ったこともない。この原稿の依頼メールが来た時、最初は分野が違うため断ろうかと思っていた。 しかし、日ごろ新しい物にあまり興味も示さず、1つのことだけに固執する自分に少し疑問を感じていたので、これを機会に「調べてみる

    Git初心者がVisual Studio OnlineでGitを使ってみた
  • 第5回 配備を自動化する

    ビルドが自動化されたら、デプロイも自動化しよう。Team Foundation Serverを使ってアプリのデプロイを自動で行う手順を説明する。 連載目次 第2回~第4回までの記事でプログラムの自動ビルドは可能になった。ビルドが自動化されたら、次はプログラムの配備(=デプロイ)も自動で行ってみよう。手動でのデプロイはプログラムの規模が大きくなればとにかくミスが起きやすく、時間もかかる。デプロイを自動化して効率よく開発作業を行おう。 なお、記事はNuGet 2.7に更新していることを前提にしている。NuGet 2.7ではTFSビルド時のパッケージ管理が改善されており、「NuGetパッケージ復元の有効化」を行った場合にプロジェクトに設定しなければならない回避策が不要となるためである。 なお、NuGet 2.6以前のバージョンから2.7に変更した場合でも回避策を解除する必要はない。 参考 Nu

    第5回 配備を自動化する
  • 連載インデックス「Androidアプリ開発テスト入門」 - @IT

    Androidの会テスト部が、いままで培ってきたAndroidアプリ開発におけるテストのノウハウを、実際のテストコード例とともに紹介していきます ※連載はAndroidアプリ開発自体の解説ではなく、Androidアプリ開発におけるテストに関する連載です。Androidアプリ開発自体の解説については下記連載「Androidで動く携帯Javaアプリ作成入門」をご参照ください

  • Androidアプリ開発でテストを始めるための基礎知識

    Androidアプリのテストに関する課題 Android端末の普及は世界規模で増加の一途をたどっています。2011年秋冬モデルが発表され、発売予定のものを含むと日で発売中のAndroidの携帯端末は100機種に迫ろうとしています。読者の皆さんの周囲を見渡しても、電車や街角でAndroidを採用したスマートフォンなど携帯端末を使用する人をよく見かけるのではないでしょうか。 そして、スマートフォンに留まらずタブレットやミュージックプレイヤー、電子ブックリーダー、POSレジ、テレビなど、さまざまなデバイスがAndroidを搭載し始めています。Androidの採用が増えるにつれ、Androidアプリの種類が増えるので、アプリの開発案件も増えることになります。実際、稿を読んでいる開発者の方の中にも、すでにAndroidアプリの開発に取り組んでいる方も多いのではないでしょうか。 筆者も普段の業務の

    Androidアプリ開発でテストを始めるための基礎知識
  • Androidアプリのビルド/テストはCIでここまで変わる

    Androidアプリのビルド/テストはCIでここまで変わる:グリーはいかにしてJenkinsを導入したのか(3)(1/2 ページ) グリーのサービス開発における継続的インテグレーションと、CIツールであるJenkinsの導入について、CI導入のモチベーション、進め方のポイントを中心に説明します。今回は、apkの作成までの自動化を手始めに、徐々に自動化の資産を積み上げていくことで開発ワークフローを改善していく過程を紹介します。 前回の「JenkinsでCIすればiOSアプリのビルドは、もう面倒くさくない」に続き、今回はAndroidアプリ開発とJenkinsについて紹介します。 Androidアプリのビルド Android開発の継続的インテグレーションの第一歩として、まずはAndroidアプリをJenkinsでビルドしてapkファイルを作成してみましょう。あらかじめJenkins、Andro

    Androidアプリのビルド/テストはCIでここまで変わる
  • 連載:.NETで始めるデザインパターン 第1回 .NET開発におけるデザインパターンの有用性(1/2) - @IT

    「この処理は、確か前に担当したプロジェクトで作ったものとよく似ているな」 開発者なら誰しもこのような局面にたびたび遭遇するものだ。さぁ、あなたならどうする? まずは以前のプロジェクトのソース・コードを流用することを考えるだろう。過去のプロジェクトのソース・コードから対象となるクラスやメソッドを探し出し、現在のソース・コードにコピー&ペーストして修正を加えるだけで、昔のプロジェクトのコードを再利用できる。しかも昔のプロジェクトのコードは、安定稼働している実績あるコードだから信頼性もある。 昔のコードをそのままコピー&ペーストできないとしても、そのクラス構造を再利用できる場合は多い。過去に考え出したクラス構造のパターンを抜き出して、その中身を書き換えるというやり方だ。もしそれらのクラスがうまく抽象化できていれば(たいていの場合そんなことはないのだが)、差分をコーディングするだけでよいかもしれな

  • 連載:.NETで始めるデザインパターン 第7回 デザインパターンの落とし穴(2/2) - @IT

    ■保守性を考慮したパッケージ分割の指針 それでは、このパッケージ分割の指針としての6つの設計原則を紹介しよう。これらの設計原則は第2回のGRASPパターンで説明した「凝集度(Cohesion)と結合度(Coupling)」を基に分類されている。高凝集性と疎結合性に注目することがオブジェクト指向設計の要であることを再認識していただきたい。 以下に、『アジャイルソフトウェア開発の奥義』に記載されている、パッケージに関する6つの設計原則を紹介する。

  • https://atmarkit.itmedia.co.jp/ait/subtop/features/da/ap_winrttips_index.html