http://inside.pixiv.net/entry/2015/04/27/170944
海外事業向けのiOSアプリケーション開発を担当している西山(@yuseinishiyama)です。クックパッドは現在、海外複数カ国に向けてサービスを展開しています。 主にObjective-Cで記述されたアプリケーションを全面的にSwiftに書き換える機会があったので、その際に得た知見や書き換えるに至った動機を共有します。 書き換えに至るまでの経緯 この項では、書き換えに至るまでの経緯について説明します。 Objective-C期 アプリケーションの開発は2014年7月頃にスタートしました。Swiftの発表直後でしたが、時期尚早ということもあり、Objective-Cで実装することになりました。 Objective-C、Swift混在期 2014年10月頃から、Swiftへの段階的な移行のために、新規のコードをSwiftで書くようになりました。Swiftの記述力や、ヘッダと実装を行き来しな
概要 仮想環境(VirtualBoxなど)上への仮想マシンの立ち上げ、操作が可能。 用語 プロバイダ 仮想環境 eg.VirtualBoxやVM Ware、EC2など プロビジョニング ミドルウェアの設定やインストールを行うツール eg.シェルスクリプト、Chef(chef-solo, chef-client)、Puppetなど Boxファイル 仮想マシン起動の際にベースとなるイメージファイルのこと。 仮想環境ごとに必要。 通常はOSイメージから作成する。 Vagrant利用の上で最低限必要な設定(Vagrantユーザの作成、sshdの起動、プロビジョニングツールのインストール)のみを行っておくのが普通。 Vagrantfile 構築する仮装マシンのスペックやプロビジョニングツールの指定など、仮想マシンの構成を記述する。 Rubyベース。 基本的に、本ファイルとプロビジョニングツールの設定
岡山で全国の仕事を請け負う「気さくなプログラマー」 岡山に暮らしながら、東京の顧客とSkypeを使ってミーティングをし、受託開発を行うプログラマーがいる。名刺の肩書は「気さくなプログラマー」。 「Rubyのまつもとさんをはじめ、できる人はみんな気さくじゃないですか。だから私も自分のキャッチフレーズとして使っています」と笑いながら話すのは、ソニックガーデンのエンジニア、野上誠司さんだ。 SI企業で5年間受託開発に携わり、その後自社サービスを作る企業に転職、そして現在は「納品のない受託開発」を掲げるユニークな企業、ソニックガーデンのエンジニアとして働く。受託開発から自社サービスへ移りたいと考えるエンジニアは多いが、再度受託開発に戻ったのはなぜなのだろうか。 【転職者プロフィール】 野上誠司さん(32歳) 株式会社ソニックガーデン 気さくなプログラマー(2013年10月入社) 【転職前】 岡山の
暗号化技術は、情報の保護やコンピューターセキュリティに欠かせない技術である。今回は暗号化技術の基礎として、暗号化の基本、暗号の安全性、共通鍵暗号と公開鍵暗号について解説。 暗号化技術は、情報の保護やコンピューターセキュリティに欠かせない技術である。ファイルやデータの暗号化の他、HTTPSや、無線LANにおけるWEP/WPA/TKIP/AESのようなセキュアな通信、証明書やデジタル署名、PKIなど、多くの場面で暗号化技術が使われている。今回からしばらくは、暗号化の基礎や共通鍵暗号、公開鍵暗号、証明書、PKIなどについて、IT Proの初心者向けに暗号化技術の基礎を解説していく。今回は、暗号化の基礎を解説する。 暗号化とは データを保護するだけなら、暗号化ではなく、「ファイルの許可属性(読み出し禁止などの属性)」や「アクセス制御(ACL)」などの方法もある。これらは、アクセスするユーザーに応じ
前回の記事の続き。前回は、正規表現が使えない時はパーサコンビネータを使ってみると良いということを書いた。 パーサコンビネータのためのライブラリは、以下のように各言語ごとにいくつかある。 JavaScript - Parsimmon Ruby - rparsec treetop Python - parsy PHP - PHPPEG 各言語でいくつかあるのだが、正規表現と違ってパーサコンビネータには統一的な書き方があるわけではないし、ライブラリによって使い方も様々である。なので、今まで正規表現だけ使ってきた開発者がちょっと使ってみようと思っても、使い方がよくわからずに面食らってしまうことがある。 パーサコンビネータはテキストをパースするための非常に強力な仕組みだが、その背後にある考え方を理解しなければこれらのパーサコンビネータのライブラリを使う際の障害になるだろう。逆に言うと、それさえ理解で
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く