Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
AppleのiOSやMacなどのアプリケーション開発言語「Swift」の生みの親であるクリス・ラットナー氏が2017年1月末をもってAppleを退社し、自動運転ソフトウェアの開発を進めているテスラに移籍することが発表されました。 The creator of Apple's Swift programming language is leaving the company | VentureBeat | Dev | by Jordan Novet http://venturebeat.com/2017/01/10/the-creator-of-apples-swift-programming-language-is-leaving-the-company/ ラットナー氏は2005年からAppleに在籍しており、開発ツール部門のシニアディレクターを務めてきた人物。特に、iOSやMac、App
Swift Advent Calendar その2の23日目の記事です。 Swiftはマルチパラダイム 私がiOS開発に手を出し始めたのはおよそ4,5年ほど前、当時はまだSwiftは存在せず Objective-Cによる開発で、ちょうどMRCからARCに切り替わる手前ぐらいに初めて出会いました。 当時は元々アプリエンジニアがほとんど社内にいない中、Android開発をもくもくと開発しており オブジェクト指向はなんぞや?という所からJava先生にいろいろ教えて貰っていた所だったので、 その名の通りオブジェクト指向ベースであるObjective-Cにはretainカウントに発狂する以外はある程度キャッチアップできていました。 Swiftはマルチパラダイム言語と呼ばれています。 Objective-Cゆずりのオブジェクト指向、そして関数型を取り入れ、 また各言語に散らばっていた素晴らしい機能(N
iOSエンジニアの皆さん、ゴリゴリSwift書いていますか?サクサク書ける反面、コンパイルにやたら時間がかかってストレスフルですよね。今回は、激遅だったコンパイル時間が「ちょい遅」くらいまで改善したお話です。 あらすじ「ナウでヤングなiOSエンジニアはやっぱSwiftだよね!」ということで、半ば強引にSwiftを採用して直近のプロジェクトを進めていました。 補完機能が頻繁に落ちたり、ブレークポイントの位置がおかしかったり、変数の中身が見られなかったり、謎のエラーでビルドできなかったり、…などなど、まだまだバグはてんこ盛りですが、それらを見なかったことにできる程度にはいい感じです。型推論はそこそこ賢いし、何より簡潔に記述できます。ただの可変長配列のために、もうNSMutableArrayなんて長々と書かなくてもええんやで。 プロジェクトが進むにつれて見えてくる問題プロジェクトが進んでソースコ
iOSエンジニアのすーです! あちらこちらでWWDC2016ネタで盛り上がっている中、それとは関係のない記事を投稿させて頂きます...! 現在弊社のFammでは、もともとObjective-C Onlyで書かれたプロジェクトでしたが、 新規機能は基本的にSwiftで書くようにして、少しずつ既存のコードをSwift化することで、Swiftがプロジェクト全体の約45%を占めるようになりました。 そこで浮上してきた問題が、 ビルド時間 です。。 差分ビルドが有効とはいえ、開発中のブランチを行ったり来たりしたり、ちょっとObjective-C側のコードを書き換えたりしてタイミングが悪いと差分ビルドが働かずまた一からSwiftのソースコードをコンパイルしてってなって...。 まだ、自分の使っているマシンの性能が良い方なので、そこまで気にはならないのですが、これがCI環境となるともっと悩ましいことにな
リードアーキテクトのItoです。 カメリオのiOS版では1年ほど前にエクステンションからSwiftを導入し、Swift化を進めてきました。 先日リリースしたiOS 9とwatchOS 2対応版ではそのほぼすべてをSwift2.0化しました。 2014/9月: iOS 8 – Today ウィジェットをSwift 1.1化 2015/4月: Apple Watch – WatchKitをSwift 1.2で実装 2015/9月: iOS 9 – iOS本体およびExtensionをほぼSwift 2.0で実装 APIレスポンスの仕様 カメリオ(初期は違う名前だった)は2013年の秋ごろに最初のプロトタイプを作り始め、その後機能追加や仕様変更がありました。そろそろ最初のコードから3年くらいが経ちます。 ずっとiOSやAndroidと直接通信するAPIサーバーにはNode.jsを使っていますが、
はじめに iPhone開発の方法を人に教える時にどんな風に教えれば良いかをちょっと考えて、実践してみたのでその方法をここに残しておきます。 まだ教育方法が確立していない方の参考になればと思います。 また、現在の業務ではストーリーボードを使用しているコミュニケーション系のアプリを作ってますのでその観点での教育方法です。 (個人的にはストーリーボードはあまり好きでは無いが、現場の方針があるため仕方なく使ってます・・・) この記事はXCodeを使った事が無い新人〜3年目くらいの人に基礎的な概念を身につける事を目的としています。 SwiftでもObjective-cでも通じる教育方法です。 熟練者の方が新人教育して使用してもらえると嬉しいです。 解答は敢えて載せてませんので、熟練者の方が確認してあげてください。 1. ナビゲーションバー 課題 Single View Applicationでプロジ
はじめに Swiftのコードは多様な記述の仕方ができるので柔軟でかつ表現力もありますが、チームで開発を行うとどうしても記述の仕方が統一できず可読性も上がりません。弊社(Wantedly)でSwiftのアプリを開発した経験をもとにアプリ開発におけるコーディングスタイルガイドを作成しました。このコーディング規約がベストプラクティスだというわけではなく、Swiftもまだまだ手探りなところもあるので、参考情報としてご参照ください。また、規約の範疇ではないですがエラーになりやすい記述も合わせてフォローしています。 バージョン v0.3 改版履歴は文末を参照ください。 コーディング規約の必要性について Swiftはプログラマがリスクを取ることによってより簡素に端的に記述ができたり、型推論が強力なので型の明記を省略して記述ができます。チームでSwift開発を行う場合は、詳細に記述するのか、省略して記述す
[Swift] Swiftのoptional valueの便利さ /「?」と「!」でより堅牢なコードへJavaObjective-CGroovyiOSSwift この記事ではSwiftのoptional valueの挙動と、利用することのメリット、具体的な利用シーンについてまとめてみました。 基本的な挙動について まず?と!の挙動についてまとめてみます。 実際にどのようなケース利用するかの使い分けや、使うことのメリットについては次の章で説明します。 挙動の説明を見て、わかりづらいなと思ったら、この章は流し読みして次章の「具体的な利用シーン」とこの章を交互にみるとわかりやすいかもしれません。 optional valueな変数の宣言 Swiftでは、ただ宣言しただけの変数にはnilを代入することができません。 例えば以下のようなコードは静的にエラーになります。
Swift での iOS アプリ開発 徐々にですが、でも確実に色々な場面で Swift のコードを見る機会が増えてきたことを実感します。 iOS の設計思想など大枠の部分では Objective-C での知見は生きてきます。 しかし Swift の言語仕様についても知っておかないと ついつい低きに流れて Objective-C ぽい Swift になってしまいがちです。 Swift のコードレビュー そこで Swift らしく Swift の良さを活かしたコードにするためにコードレビューの話になるわけです。 iOS 開発全般におけるコードレビューについては以下のブログにまとまっているので省きます。 iOSアプリケーション開発のコードレビューで気をつけていること - ninjinkun's diary また本記事を書くにあたって Swift コードレビューを調べていて良いものがまとまっていた
この記事はSwift Advent Calendar 12月23日の記事です。 アドベントカレンダーは後半ほどネタが出尽くすので不利ですね。 自分はこの2ヶ月半ほどプライベートの時間を使ってSwiftで新しくアプリを作っていたので、それについて考えていたこと、感じたことをつらつらと書き下してみたいと思います。 [2014/12/28 追記] 今朝、アプリがリリースされました!! Rebuilt きっかけ 2014/6/3にWWDCでSwiftが発表され非常に気になっていました。 しかし、当時の自分は業務でアプリ開発から離れており、他に優先順位の高い事柄があったので積極的に勉強することを避けていました。 Xcodeベータは安定していない、Swiftの仕様もコロコロ変わる中、学習効率を重視するのであれば安定版がリリースされてから勉強したほうが良いとも思いました。 新しい技術が出てくるタイミング
モバイルファースト室の三浦です。 みなさんはplayground使っていますか? Swiftにはplaygroundが用意されていて手軽にかつライブレンダリングでコーディングをすることができます。 CoreGraphicsの描画などを確認しながらコードを書くこともできてとても便利です。 早速Swiftで簡単なスケッチをしてみましょう! Xcodeでplaygoundファイルを新規作成します。次にUIKitをimportします。 import UIKit 次に表示のためのUIViewを生成します。 // ビューのサイズ let size = CGSize(width: 200, height: 200) // UIViewを生成 let view:UIView = UIView(frame: CGRect(origin: CGPointZero, size: size)) view.back
概要 思ったよりバズったので、いくつか加筆修正しました beta3でArrayの型指定の方法が変わったなーと思って眺めていたら、もっと根本的な変化がありました。 SwiftのArrayがヤバイなどで話題になってたやつです。 公式ドキュメント The Swift Programming Language 変更点 Array in Swift has been completely redesigned to have full value semantics like Dictionary and String have always had in Swift. This resolves various mutability problems – now a 'let' array is completely immutable, and a 'var' array is complet
(2015.11.18に追記) 「Swift List」 で検索するとこの投稿にたどり着いてしまいますが、関数型言語でいうところのリストをお求めの方は "Swiftでhead、tailにパターンマッチできる遅延リスト" を御覧下さい。 (2014.7.24に追記) SwiftのArrayの新仕様(beta 3以降)がヤバイどころかすばらしいのでまとめました 。 (2014.7.10に追記) SwiftのArrayがヤバくなくなりました。 本投稿に書かれているのはbeta 2までの古いSwiftについての情報ですのでご注意下さい 。beta 3以降では次のような挙動となり、値型としてごく自然な挙動になりました。 var a = [11, 22, 33] var b = a a[0] = 777 // b[0]は777にならない a.append(44) a[0] = 888 // b[0]は
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く