タグ

ブックマーク / www.buildinsider.net (10)

  • nullが生まれた背景と現在のnullの問題点 ― null参照問題(前編)

    Cの系譜を継ぐC#ではnullが長らく使い続けられてきたが、最近ではその存在が大きな問題だと認識されている。前後編でこの問題を取り上げ、今回(前編)はnullを取り巻く事情について考察する。 ← 前回 連載 INDEX 次回 → 近年、nullの存在は、billion dollar mistake(10億ドル規模の損失をもたらす過ち)と呼ばれるくらい忌避されるものになっている。 nullは、低コストでそこそこ安全に参照を扱えるという意味で悪くない妥協ではあるが、技術が進歩した現在ではもう少し賢い参照の扱い方があるはずである。C#のように、これまでnullを認めてしまっているプログラミング言語で、今からそれを完全になくすというのは現実的ではないが、nullに起因する問題を少しでも避ける手段はこれからでも追加していけるだろう。 今回は、nullが生まれるに至った背景から始め、nullが抱える問

    jun_okuno
    jun_okuno 2017/01/11
  • 10分間で分かった気になれるXamarin概要

    稿は、Sansan主催の第6回.NET勉強会「『Xamarin』って何? Wエバンジェリストによる特濃『Xamarin』勉強会 ~C#によるマルチデバイス・クロスプラットフォーム開発の最前線~」の第1セッション「1時間で分かった気になれるXamarin概要」の内容をそのまま起こしたレポート記事を、最新のXamarin事情に合わせてアップデートしたものです(ちなみに第2セッションは「Xamarinで今日から始めるクロスプラットフォーム開発」でした)。 元のレポート記事はSansanから提供され編集部で編集・校正を加えたものでしたが、今回の改訂では、セッション登壇者人である田淵氏自らが元のレポート記事に加筆・修正を行いました。なお、最新状況でも変更のない内容は、元の文章および章立てのままになっています。 モバイル向けクロスプラットフォーム開発環境―“no silver bullet” ――

  • 「using CSharp;」な企業を支える技術方針とベスト.NETライブラリ

    「最先端のC#技術活用」を掲げる会社の開発現場では、どのような技術やライブラリが、どんな理由で使われているのか。C#開発者必読の、勉強会レポート。 連載 INDEX 次回 → 2015年3月25日(水曜日)、Build Insider主催&グラニ共催の勉強会「Build Insider MEETUP with Grani 第1回」を開催した(場所は、六木ヒルズ森タワー15Fにあるグラニのファンスペース)。この勉強会では、下記の2つのセッションがあった。 1A Framework for LightUp Applications of Grani 2Grani's way of thinking Infrastructure 稿は、グラニCTO(最高技術責任者)の河合 宜文 氏が登壇した1のセッション内容の中から、筆者が重要だと感じたポイントを簡潔にまとめたものである。文章によるレポート

    「using CSharp;」な企業を支える技術方針とベスト.NETライブラリ
  • C# 6.0で知っておくべき12の新機能

    Visual Studio 2015正式版のリリースで利用可能になったC#言語の最新バージョン「6.0」の新機能を解説する。CTP 5→正式版に合わせて改訂。 連載 INDEX 次回 → 「C# 6.0」と呼ばれているC#の最新バージョンは、Visual Studio 2015*1で利用可能になっている。 この最新バージョンでは、「.NET Compiler Platform」(コード名:“Roslyn”)と呼ばれる新しいコンパイラーが導入されており、静的解析APIの提供など、コンパイラーまわりに大きな変更が行われている。一方、言語機能に目を向けると、async/awaitという大きな機能が追加されたC# 5.0に比べると、一つ一つの新機能自体は小さい。しかし、それらはプログラムをより書きやすくするための機能なので、C#開発者にとってはやはり重要なアップデートとなっている。 そして、これら

  • 開発環境までもWeb化?! Visual Studio Online “Monaco”機能徹底解説(Win&Mac対応)

    Visual Studioのオンライン版?! Webブラウザー上で動作する開発環境“Monaco”で開発はどう変わるのか? その全機能をさまざまなブラウザーで徹底的に試してみる。さらにデスクトップアプリ開発も実験してみる。 連載 INDEX 次回 → 先日(米国時間で11月13日に)開催されたオンラインイベント「Visual Studio 2013 Launch Event 」の中で、「Visual Studio Online」が発表された。この名前を文字通りに受け取るなら、「Visual Studioの“オンライン版”」という意味になるだろう。しかし実際に発表されたその内容は(筆者の理解では)、これまで「Team Foundation Service」と呼んでいたものを強化しつつ、名称変更したにすぎないものだった。 これでは「命名と実体が合っていない」ということになる。ところがこの命名の

  • Visual StudioでiOS/Androidアプリが書けるXamarinを試してみた(iOS編)

    新登場のXamarin for Visual Studioとは? 「iOSのネイティブアプリをWindows上で作るって、どういうこと?」という疑問に答え、実際にiOSアプリ開発を試してみる。 連載 INDEX 次回 → 筆者はVisual Studioの利用経験が10年以上と長く、その使い勝手の良さや、開発生産性をとても気に入っている。もちろん、EclipseやXcodeのようなIDE(統合開発環境)もたまに利用するが、「この開発でもVisual Studioが使えるといいな」と思うことは少なくない。これと同じことを考えたことがある方であれば、稿の内容はきっと興味深いに違いない。また、Visual Studioを触ったことがなくても、「Windows上で」iOSやAndroid向けのアプリを開発したい方であれば、稿を一読してその開発方法を知っておくことには価値があるだろう。 正直いっ

    Visual StudioでiOS/Androidアプリが書けるXamarinを試してみた(iOS編)
  • Jenkinsでテストを実行してみよう+Rubyテストの基礎(RSpec&Turnip使用) - Build Insider

    Jenkinsを使って小さなテストを自動実行して、開発スピードを飛躍的に向上させよう。また、MacでのRubyRails環境の構築方法から、テストフレームワーク「RSpec」とインテグレーションテスト環境「Turnip」を使ったテストの書き方までを解説する。 ← 前回 連載 INDEX 次回 → 前回の記事を読んでJenkinsの環境を構築することはできただろうか? 今回は簡単なサンプルアプリケーションの作成を行ってみようと思う。同時に、Rubyの標準的なテストフレームワークのRSpecと、インテグレーションテスト環境であるTurnipを使ったテストの書き方を解説する。作成したテストを、Jenkinsを使って自動実行できるようになれば、あなたの開発スピードは飛躍的に向上することだろう。 Railsの開発環境を構築しよう 2013年10月にリリースされたMac OS X 10.9(通称Ma

  • Jenkinsをインストールして使ってみよう[Mac/Linux/Windows]

    継続的インテグレーションツール「Jenkins」の使い方を基礎から解説する連載がスタート。初回は、Jenkinsの概要とインストール手順、簡単なジョブの登録方法を説明する。 連載 INDEX 次回 → Jenkinsとは何か? 「Jenkins」というツールをご存じだろうか? 情報に敏感な読者であれば「継続的インテグレーション(CI)」という言葉とともにネット上で一度や二度は見たことがあるかもしれない。しかしながら「継続的インテグレーション」という言葉の難解さや「Javaで作成されている」という点で、敷居が高く感じられ、導入を見送っているプログラマーの方もいるのではないだろうか。 そんな方々にとって、連載がJenkinsを使うきっかけになれば幸いだ。連載では、Jenkinsの使い方を基礎から説明する。その説明用のプログラミング環境としてはRubyを採用しているが、他の環境の方にも参考と

    Jenkinsをインストールして使ってみよう[Mac/Linux/Windows]
  • .NET互換環境

    マルチプラットフォーム開発を実現するための.NET Frameworkの互換環境について説明。その代表として、今回はMonoと、Monoベースのフレームワークを取り上げる。 ← 前回 連載 INDEX 前回紹介したようなマルチプラットフォーム開発を実現するために、今回は.NET Frameworkの互換環境について説明する。互換環境もいくつかあるが、その代表として、利用者が多くサポートもしっかり得られるMonoと、Monoベースのフレームワークについて説明しよう。 Mono Monoは、GNOMEプロジェクトの創設者Miguel de Icaza氏の主導で開発されている.NET Framework互換フレームワークである(以下、稿で単に「.NET Framework」という場合、マイクロソフト製の.NET Frameworkを指す)。Windows、Max OS X、Linuxなどを中心

  • 社内の開発環境の改善&効率化のためにNuGetを活用しよう

    .NET開発の必需品となった「NuGet」。しかし公開ライブラリのインストールにしか使っていないならもったいない。プライベート・リポジトリ機能を活用して、開発現場の作業効率を高めよう。 NuGetのプライベート・リポジトリ機能 マイクロソフトの開発環境向けライブラリ・パッケージ・マネージャー「NuGet」は、Visual Studio 2012において既定でインストールされるようになったことや、マイクロソフト製の公式なライブラリもNuGetで提供されるようになったことなどからも、今や.NET開発に欠かせないインフラになったといえる。 このNuGet、単に「公開されているライブラリを利用するためだけのツール」と捉えていないだろうか。NuGetは公開されているライブラリを利用するだけでなく、パッケージを自分で作成し、公式リポジトリであるNuGetギャラリーにプッシュして公開することも可能である

  • 1