Swift単語

スウィフト
2.4千文字の記事
  • 2
  • 0pt
掲示板へ

Swift(スウィフト)とは、「速な」「即座の」を意味する英単である。

曖昧さ回避

英語で「素早い」の意から

  1. Appleが開発したプログラミング言語本記事で解説
  2. シカゴ大学アルゴン国立研究所により2007年に発表された並列スクリプト言語
  3. アマツバメ - アマツバメアマツバメ科ので、スズメツバメ科の「ツバメ」とは異なる。
  4. スズキ・スイフト - スズキが製造・販売するハッチバック自動車
  5. ポケモンのわざスピードスター」の英語
  6. カスタムロボシリーズに登場するロボリトルチック」の英語

頭字語

  1. SWIFT(国際銀行間通信協会) - 銀行間の融取引を仲介するベルギー協同組合
    1. SWIFTコード - 国際銀行間通信協会によって銀行及び支店に割り振られる識別番号

固有名詞

  1. 人名。に姓に使われる
    1. ジョナサンスウィフト - イングランド作家。代表作に『ガリバー旅行記』など

概要

Appleが次世代のアプリケーション開発用言として設計した。Objective-Cの後継をしており、最新トレンドの採用といかにもApple的な独自路線の融合が特徴。2014年6月2日に行われたWorldwide Developers Conference 2014で発表された。

Appleは Swift = Objective-C - C としており、ベース文法がC言語系列から離れたものとなっている。感覚的にはRustGoogle GOといった2000年台後半設計言の系統に属する。

なフィーチャーは以下のとおり

Swiftで開発されたアプリケーションを動作させるにはiOS 7以降、またはOS X 10.9以降が必要となる。

2016年9月13日バージョン3.0がリリースされた。C言語時代から継続するforループの書式が止されるなど互換性を損なう変更も行われた。

Hello World

println(“Hello World”)

コンパイルで伝統的なメイン関数はなく、トップレベルで書き下すとスクリプト言語のようにそのまま実行される。複数のモジュールプログラムを書く場合は、main.swiftに書かれたものがエントリーとなる。

特徴的な機能

クラス

基本的にはD言語辺りに近い静的OOPクラスとして動作する。virtualなし、final, overrideありのイマドキ設計。ただし、

等の条件を満たす場合はobjc互換となり、メッセージパッシングで動くようになる。objcとのメソッドブリッジ等はややこしいので省略。基本的にコンパチクラスは相互呼び出しが可である。

関数、メソッド

Swiftの非常に特徴的な要素の一つが関数引数周りの設計である。C言語的な引数の値のみを渡す文法と、Objective-C的なメッセージ引数的な文法が混在し、状況によってデフォルトの扱いが違うという癖のある作りになっている。

基本ルール

(A) C言語スタイル

 func f(v1: Int, v2: Int) -> Int 
{
  return f1 + f2
}
// -> 外部パラメータ名なしで呼び出す f(1,2)

(B) Objective-Cスタイル

 func f(left v1: Int, right v2: Int) -> Int 
{
  return v1 + v2
}
// -> 外部パラメータ名付きで呼び出す f(left: 1, right: 2)

(B’) Bの略記形

 func f(#left: Int, #right: Int) -> Int
{
  return left + right
}

※混在も可

 func f(v1: Int, #plus: Int) -> Int
{
  return v1 + plus
}
// f(1, plus: 2)

ややこしいのはデフォルトの扱い。

なんでこんな事になるかというと、オブジェクトに属するメソッドメソッド名自体が先頭引数の意味を説明することが多いのでわざわざ書かないようにしたい、しかしイニシライザ名前init(呼び出す方はClass()のようにコンストラクタ呼び出し)で統一されているので先頭も必要・・・という理由による。ちなみにイニシライザは外部パラメータ名によってオーバーロードされるので、同じシグネチャに対して複数の異なるイニシライザ定義することも可である。

なお場合によっては外部パラメータ名を付けたい場合と付けたくない場合があると思うが、そういう時は、(B)の記法を使って強制的に外部パラメータ名を付けたり、外部パラメータ名をアンダースコアにすることで省略扱いすることもできる。まさにApple

その他

細かいことはApple様がiBooksで配布しているマニュアルを読もう。

また、iBooksだけではなくwebでもドキュメント開されている。

オープンソース

Apache 2.0ライセンスソースコードubuntuコンパイラなどが開されている。swift.orgexit

外部リンク

関連項目

【スポンサーリンク】

  • 2
  • 0pt
スマホ版URL:
https://dic.nicovideo.jp/t/a/swift
記事編集 編集履歴を閲覧

この記事の掲示板に最近描かれたお絵カキコ

お絵カキコがありません

この記事の掲示板に最近投稿されたピコカキコ

ピコカキコがありません

Swift

17 ななしのよっしん
2017/12/22(金) 22:32:33 ID: cNbnZyGcF3
>>9
申し訳ないが対立煽りNG
18 ななしのよっしん
2022/02/27(日) 16:00:09 ID: nWhckp8aMW
今は多分ロシアが外されたことでここの記事を訪れる人が多いんだろうな
19 削除しました
削除しました ID: 0QbCx9CpkD
削除しました
20 ななしのよっしん
2022/02/27(日) 16:32:16 ID: 2yx5Aa7Q4Q
スズキ・スイフト
21 ななしのよっしん
2022/02/27(日) 17:33:39 ID: hrn2DK9rDH
>>20
全にSUZUKIスイフトのつもりでココを開いてましたw
22 ななしのよっしん
2022/02/27(日) 18:21:17 ID: GB4dHppSMc
ロシアへの経済制裁であがったのか
23 ななしのよっしん
2022/02/27(日) 19:49:00 ID: nKmvQffhug
ロシア制裁のSWIFT除外と思って来た人のために説明するわ

SWIFTスイフトスウィフト)とは、銀行間の融取引を仲介するベルギー協同組合である。また、提供される決済ネットワークシステムも「SWIFT」と呼ばれる[1]んだ。

機関向けにに自社開発の「SWIFTNet」、「SWIFTコード」として一般に知られているISO 9362ビジネス識別子コード(BIC)を使用するソフトウェアサービスなどを販売している。Swift Transferは、International Money Transferとも呼ばれているんだよ。
24 ななしのよっしん
2022/02/27(日) 19:59:21 ID: BFd2wuQYRr
ロシアへの制裁で上がっているけどそれについては書いてないな

7年前のレスに返しているは居るのに
25 ななしのよっしん
2022/02/27(日) 23:13:36 ID: xRfzhK8loz
swift(国際銀行間通信協会)
話題になっているので作成
記事の追加編集・意見等があればそっちへどーぞ
26 ななしのよっしん
2022/05/14(土) 03:02:08 ID: WTZJUiIw0X
>>25
記事作成の流れがSwift(褒めてる)