Swift part11 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/06/28(水) 17:58:29.74ID:KUDOoNV30
WWDC2014で発表されたAppleの新言語Swiftについて語りましょう

関連スレ

プログラミング言語Swift Part4
http://egg.2ch.net/test/read.cgi/mac/1484763495/

[SDK]iPhoneアプリ開発初心者質問箱48[touch][iPad]
http://egg.2ch.net/test/read.cgi/mac/1484217623/

Xcode part14
http://egg.2ch.net/test/read.cgi/mac/1476190499/

Swiftアンチスレ part1
http://mevius.2ch.net/test/read.cgi/tech/1458491343/


前スレ
Swift part10
http://mevius.2ch.net/test/read.cgi/tech/1487552413/

スレ立て時は1行目に「!extend::vvvvv」
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
2018/02/15(木) 12:37:13.72ID:MqGIYZcJ0
あと、別にそのIBM swift sandboxでなくてもコマンドラインですぐに実行できるよ。PerlとかPythonとかと同じような感覚で。Swift環境入れればだけどLinuxでも
2018/02/15(木) 12:41:22.20ID:MqGIYZcJ0
>>770
うん、いっぱいある。調べれば分かるだろうが、それぞれのWeb上での取り扱いが下火ってこと
てか、今それ見て知って「WEB アプリも開発出来るようになりつつ」とか言ってるだけでしょ?WEB アプリも開発を今知ったのかよレベルの話だよ。あくまでも現状はちょっと変わった人wが使うってとこかな
2018/02/15(木) 12:52:01.54ID:mI23yE+o0
【2017年版】Swiftフレームワーク7選比較と今後の需要
https://furien.jp/columns/189/
2018/02/15(木) 13:09:15.61ID:MqGIYZcJ0
それはSwift前提で開発するならの話だろ?よく読んでみ。あんたが思っているのとは違うから
てか、なんかいろいろ「今」調べてるっぽいけど、それでなにか短絡的に鵜呑みで結論出してるのなら、いろいろアレだな
2018/02/15(木) 13:12:44.99ID:MqGIYZcJ0
Web開発でなら/でも破壊的仕様変更は受け入れられないか。それが大きいか
まあ、そもそも今まで他でWeb開発してたのがSwiftでWeb開発という選択にはあまりならんというのが最大だと思うけど
2018/02/15(木) 13:52:21.53ID:GFAIryoK0
SwiftでWeb開発するぐらいならPythonでするわ
2018/02/15(木) 14:51:12.29ID:YSj3CECL0
そもそもappleに言語開発は無理だったんじゃないかな。素直にobjcに戻ってシンタックスシュガー追加で生きていくべき。
個人的にはobjcにはc言語との連携が容易という最大の武器があると思ってる。
778デフォルトの名無しさん (ワッチョイ b7c3-FvtI)
垢版 |
2018/02/15(木) 16:01:06.60ID:KpD+HGQH0
Web開発ってホームページ作ることしか知らないんだけど
他にもなんかあんの?
PythonだとかSwiftで〜 とはおったまげたなあ
779デフォルトの名無しさん (ワッチョイ 578a-IW6x)
垢版 |
2018/02/15(木) 23:46:30.15ID:gXQ2LMAJ0
>>778
俺はiOSアプリ→PostgreSQLに接続
って感じで通信してるから、データを吐き出したり入力する為に使ってるよ。
780デフォルトの名無しさん (ワッチョイ 9fd2-K9J4)
垢版 |
2018/02/17(土) 19:02:55.08ID:73Fe5I5d0
このスレ言語とプラグインごっちゃになってるけどいいのか?
2018/02/17(土) 19:04:55.37ID:KX7WmrxO0
プラグイン?
782デフォルトの名無しさん (ワッチョイ 9fd2-K9J4)
垢版 |
2018/02/17(土) 19:05:29.41ID:73Fe5I5d0
ライブラリと言語が混ざってる
ん〜いいのか?
783デフォルトの名無しさん (ワッチョイ 9fd2-K9J4)
垢版 |
2018/02/17(土) 19:06:53.92ID:73Fe5I5d0
俺はswift4使ってるけどいい感じだよ
MVCモデルの組み立てがしやすいね
784デフォルトの名無しさん (ワッチョイ 9fd2-K9J4)
垢版 |
2018/02/17(土) 19:08:08.63ID:73Fe5I5d0
XIBの使い方がキモだと思うよ
どこにどうやってXIBインスタンスを置くのかで
後々のカスタマイズとかのしやすさが変わってくるよね
2018/02/17(土) 19:08:34.17ID:KX7WmrxO0
Swift言語を使ったフレームワークの話だからな。そのフレームワークがメジャーになればSwift言語の普及度も上がるだろうし、Swift言語でどう書くとかの話にもなるだろ
てか、単なる雑談してしかなく、雑談しかネタがないのだろからどうでもいいんじゃね
786デフォルトの名無しさん (ワッチョイ 9fd2-K9J4)
垢版 |
2018/02/17(土) 19:09:30.08ID:73Fe5I5d0
swiftのUIKitの中見てないけど
collectionViewあたりがどうなってるのか知りたいよ
2018/02/17(土) 19:10:12.97ID:KX7WmrxO0
>>783,784
全然Swift言語と直接関係ないやんw
俺に興味ないフレームワークの話すんなってことかよ
788デフォルトの名無しさん (ワッチョイ 9fd2-K9J4)
垢版 |
2018/02/17(土) 19:11:34.05ID:73Fe5I5d0
>>785
あーなるほどね
789デフォルトの名無しさん (ワッチョイ 9fd2-K9J4)
垢版 |
2018/02/17(土) 19:12:29.27ID:73Fe5I5d0
>>787
出遅れスマソ
2018/02/17(土) 19:13:21.62ID:KX7WmrxO0
ん。np
791デフォルトの名無しさん (ワッチョイ 9fd2-K9J4)
垢版 |
2018/02/17(土) 19:14:02.38ID:73Fe5I5d0
>>787さんはswift開発でxibあまり使わない?
モレ割と使っていくタイプだからswiftと密接だとおもてたわん
2018/02/17(土) 19:16:22.53ID:KX7WmrxO0
SwiftというかCocoa/Cocoa Touchの仕組み
別にSwiftでなくてもObjective-Cはもちろん、AppleScriptやJavascript(JXA)でもの話だな
793デフォルトの名無しさん (ワッチョイ 578a-IW6x)
垢版 |
2018/02/17(土) 21:21:46.50ID:3mzMeTil0
サーバーサイドもうちょい頑張ってほしい。
IBM奮闘してるけど。
2018/02/22(木) 15:42:38.66ID:H839Tp+80
swift 1.0でサーバ(Linux)でSwiftが動くようになって幾数年、未だに使われないサーバサイドSwiftよ
795デフォルトの名無しさん (アウアウカー Sa0a-V6cO)
垢版 |
2018/02/22(木) 16:29:27.24ID:GyUXMKgfa
ところでMacではサーバプログラムでswift使われることないの?
Macをサーバとして使うという用途自体がほとんどないのかも知れないが、中身はUNIXでソフトは揃ってるからサーバにも簡単にできるよね。
2018/02/22(木) 16:48:58.76ID:KI0tNWT3M
appleにサーバは何使ってますか?って聞いてみたいね。
黒いゴミ箱がならんでいるのか、骨董品になったminiが並んでいるのか。
製品にまったく継続性がないからサーバ用途なんて無理
797デフォルトの名無しさん (アウアウカー Sa0a-V6cO)
垢版 |
2018/02/22(木) 17:36:15.01ID:4gldXmu7a
ラックの中に mac mini が隙間なくビッシリ詰め込まれている
2018/02/22(木) 21:24:56.07ID:F2aCLZnQ0
>>796
マイクロソフトのazureが使われてると聞いたことがある
2018/02/22(木) 21:45:50.00ID:tmDxm78t0
ググったら妄想記事しか出ないけど。その2011年のはAzureと並列にAWSも上げてるけどAzureだけってのは別の話なのかな?
2018/02/22(木) 22:04:35.20ID:tmDxm78t0
>>796
netcraftで見るとLinuxっぽいかな。実際どうなのかわからんけど、developerはwww/supportと違ってAkamaiじゃないのにってとこから
2018/02/22(木) 22:23:27.96ID:4xFkIfES0
AWSもAzureもGCPも使ってる
今でも求人にIBM/HP/SunあたりのUnixスキルを求めてるからLinux以外も使ってるやろね
ハードはHPやDELL、情報系はTeradataやHadoop
2018/02/22(木) 23:18:21.03ID:x8fbWZvU0
その断定調なのが胡散臭いw
どこで知ったの?まさか思うという記事じゃないよねえ
2018/02/23(金) 00:14:29.45ID:gu5jD4u60
事情通によるとって書けばよかったねww
https://jobs.apple.com/us/search?jobFunction=MIS
2018/02/24(土) 08:57:27.48ID:ZueQv0Xl0
appleだけ独自フレームワークってわけもいかんしなんだかんだいって
PHPとか使ってるんじゃないの?
2018/02/24(土) 09:06:07.79ID:xqgtGQqy0
PHPはさすがにないだろww
WebアプリはWebObjectsだったがさすがにもう入れ替えただろうな。入れ替えでPHPなんてありえないだろ、なんでPHPやねん
メールサーバー (今でいうiCloudの)は昔からOracle Communications Messaging Server(Sun Java System Messaging Server)だな
2018/02/24(土) 09:09:53.78ID:NxUZk3yiM
PHP使ってないとは思うが、別に使ってもいいと思うけどね
2018/02/24(土) 09:11:37.30ID:xqgtGQqy0
https://affiliate.itunes.apple.com/resources/documentation/itunes-store-web-service-search-api/

https://itunes.apple.com/WebObjects/MZStore.woa/wa/viewArtist?id=909253
なんだっ!?まだ使ってるのかっ??URLだけ同じ形式を残したとかとか...ナイかっ。いや、あるかなあー、あまりにも今更なので
2018/02/24(土) 09:16:56.76ID:xqgtGQqy0
あー、あれかな、あくまでもサンプルで今はそんなの返さないとかかな?WebObjectsディスコンにしたのなんでやねんな今更感がありありなので。内製用で小規模メンテし続けてるとかあるのかもかもしれないが

>>806
んー、「使ってないとは思う」と同じ意味でしかないよ
2018/02/24(土) 09:29:47.45ID:XDApard50
PHP7はパフォーマンスの観点からも十分選択肢に入るだろ
2018/02/24(土) 09:30:41.32ID:xqgtGQqy0
クリックしたらなんか動いている/生きているようだなあ
本当にWebObjectsなのかはなんかわけわからんがw、WebObjectsならappleだけ独自フレームワークってわけもいかんってこともないだろう、そゆとこですAppleはw
もちろん、仮に本当に上のURLのとこが今でもWebObjectsでやってるとしても、すべてのWebアプリ(iTunes Storeの他のとこも)がWebObjectsだとは言わん/言えんけど
2018/02/24(土) 09:34:21.10ID:xqgtGQqy0
意味わからんPHP推しw
2018/02/24(土) 10:00:26.67ID:xqgtGQqy0
ああ、Legacy (WebObjects) Links に書いてあった。納得
2018/02/24(土) 10:10:55.97ID:xqgtGQqy0
>>812
>>807とは違うページだった。こっち
https://affiliate.itunes.apple.com/resources/documentation/linking-to-the-itunes-music-store/
2018/02/24(土) 17:14:11.03ID:ZueQv0Xl0
>>813
残念。PHPでしたー(というかWordPressでした)
https://i.imgur.com/5fegpLj.png
2018/02/24(土) 20:07:26.26ID:xqgtGQqy0
CMSとBlogってコード(PHP)をガリガリ書くもんじゃないんじゃないの。まあ、そういう意味で「というかWordPress」って言ってもいるんだろうけど
なので、全然残念じゃないもーん(まあ、ちょっとは ちっ ってのはあるけどw)

見るなら Bootstrap の方だと思うけど、これってどういう判断なんだ??
2018/02/24(土) 20:27:21.47ID:xqgtGQqy0
www/support/developer/appleidなんぞホスト(場合よってはページで)によってマチマチだな。サーバーサイドJavascriptなんてあったり

おもろツール教えてくれてありがとう。このツールの情報は全然信じていないけどなww
2018/02/24(土) 22:47:46.12ID:Qwt+DyFJ0
まさかのDartの時代きた
https://flutter.io/

Swiftオワタ
2018/02/25(日) 00:41:41.31ID:/LdYt4iz0
おれはreact-native推しだな。なんせwebも巻き込んでコードの共通化できるし。
dartは言語として魅力があればだなー。
819デフォルトの名無しさん (ワッチョイ 468a-oe3F)
垢版 |
2018/02/25(日) 09:19:00.82ID:niLnXG9x0
>>817
おおこれ凄い。
2018/02/25(日) 22:01:12.05ID:Yecug6FL0
スマホ・タブレット向け?
PC MAC LINUXにはあまり関係ない?
2018/02/26(月) 01:14:36.10ID:NUAGFWAP0
>>820
react-nativeならデスクトップも開発中。
facebookで実際に使ってて実績もバッチリ。
こっち来いよ
2018/03/02(金) 10:25:09.55ID:qdI7JSz+0
func hoge<T : StringProtocol>(arg: T) {}
func hoge<T>(arg: T) where T : StringProtocol {}

これどう違うんすか
2018/03/02(金) 11:14:11.55ID:cO6anSKk0
>>822
同じ

https://github.com/apple/swift-evolution/blob/master/proposals/0081-move-where-expression.md
の It was also proposed 〜 のところにあるように
where句の整備に伴って上の構文の削除も提案されたけど
上の構文で済む単純な定義のものを複雑にしたくないから残された
2018/03/02(金) 13:36:27.05ID:qdI7JSz+0
>>823
同じなんか〜い
ありがとう!ございました!
825age (アウアウイー Sadb-Wkyw)
垢版 |
2018/03/04(日) 16:28:15.69ID:VaPungkxa
定義したクラスの中でそのクラスを使いたいと思ったのですが、エラーが発生します。
Javaとかだと特に問題がなかったと思いますが、Swiftの場合どうすればいいのでしょうか?

class A{
var aa : A <-これができない
}
2018/03/04(日) 17:17:16.15ID:eO6xjr3+0
>>825
classなら再帰的な定義もできると思うが
optionalにしないとinitできないよね?
2018/03/04(日) 17:19:41.53ID:aHKjKzGb0
>>825
それだと、aaの初期化ができないから、
var aa: A!
ってやればいいんじゃね?
2018/03/04(日) 17:31:13.25ID:eO6xjr3+0
>>827
それだとそのクラス使う時、必ず実行時エラーになっちゃう気がする
2018/03/04(日) 19:10:40.99ID:EzbcrPof0
実行前までに代入しとけば無問題
2018/03/04(日) 20:32:42.51ID:whlExQH50
let bb: A? = nil
instanceA.aa = bb
でもエラーにならないのは無問題ではないような

var aa : A だと、イニシャライザでちゃんとしたインスタンスを入れればいいだけというのがSwiftだが、良く考えたら絶対nilにしかならない場合があるからOptionalにするしかないのか
2018/03/04(日) 21:22:23.53ID:eO6xjr3+0
>>829
aaがnilかどうかを別の変数で管理して毎回確認するって話なのかな?
そうでもしないと再帰処理できないし、optionalを使わない理由が分からない
2018/03/04(日) 21:51:04.40ID:whlExQH50
実務的にというか、本来 aa: A でいい、プログラミング上/アプリ上nilな場合が無いような場合のことでしょ。んな場合はoptionalはめんどくさいだけだし

最初に作るインスタンスはどやったって(まあ、自分自身を突っ込めば回避できるだるけどw、それもできなさげ)nilにしかならないし、わざわざoptionalだのあることを無視したあくまでも(個人的な)実務的な手法な感じ
2018/03/04(日) 22:05:19.87ID:03wgclKp0
>>831
A!はoptionalやん
それ自体でnil判定出来るから別の変数も要らない

rootNodeとかならselfになるだろうし
viewDidLoadみたいなセットアップ後もnilが有り得るかどうかで決めたらいい
2018/03/04(日) 22:41:01.48ID:eO6xjr3+0
そっかぁ
別の変数で管理云々はちょっと勘違いしてたわ
あと俺がoptionalって言ったのは通常のoptionalのことで
implicitly unwrapped optionalじゃなくってって意味

一般的な再帰構造なら基底ケースでnilになるだろうから
それをimplicitly unwrappedで定義するのはすごく違和感があるんだけど
そういうやり方もあるってことね
2018/03/04(日) 23:03:49.26ID:EzbcrPof0
まぁ用途によるわな
線形リストなら末端はnilやろうけど循環リストならnilはないし
2018/03/05(月) 00:14:55.90ID:pmwQ9a0w0
回答ありがとうございます。
試してみます。
2018/03/05(月) 13:13:50.32ID:MYqYYXalM
>>825
元の定義がstructだった。
Classに変更したら解決しました。
2018/03/05(月) 14:31:36.19ID:E8Y6IsUO0
このなんともいえんずっこけぶり
2018/03/07(水) 19:13:26.23ID:N08vO+Qv0
https://github.com/apple/swift-nio

Event-driven network application framework for high performance protocol servers & clients, non-blocking.
2018/03/18(日) 17:26:44.45ID:dBKP+W2d0
let arr = [0, 1, 2, 3, 4, 5]
let sub = arr[3...]
sub[0] // Fatal error: Index out of bounds

このSliceのインデックスが元の配列のインデックスのままになる仕様って誰得なの?
2018/03/18(日) 18:45:17.33ID:Sr1iY1Ai0
新しい配列を作らなくていいからパフォーマンス的に有利なんじゃね?
ゼロ始まりにしたければArrayに変換で

https://developer.apple.com/documentation/swift/arrayslice#2848110
https://github.com/apple/swift/blob/master/docs/Arrays.rst
2018/03/18(日) 20:43:29.57ID:9zPyp0Eq0
>>840
考え方的には別配列として切り出すのでなくビューなんだってさ(copy on writeだけど)

String.CharacterView.IndexみたいにIntじゃないIndexも多いから
コレクション全般に対しての考え方として
Sequence的に扱ったり、startIndexやindex(after:)などのIndex用メソッドに慣れて行ったほうがいい
2018/03/18(日) 21:31:14.27ID:kMXsuFsK0
viewならますます0から始まってほしいところだが
844デフォルトの名無しさん (ワッチョイ 27c3-+yq1)
垢版 |
2018/03/25(日) 20:52:36.71ID:mPK4VdN40
Objective-c全く触ったことないんだけどSwiftの勉強はじめても問題ない?
2018/03/25(日) 21:02:22.17ID:rzleQGreH
問題はあるけど、問題でてきてからでいいかも
846デフォルトの名無しさん (ワッチョイ 5b80-AyCB)
垢版 |
2018/03/25(日) 21:33:40.94ID:U5SlEUJl0
ゼロ番最初の〜とか言わないしな。
847デフォルトの名無しさん (ワッチョイ 19ab-Ys2M)
垢版 |
2018/03/31(土) 14:51:14.31ID:HODGx0EY0
プログラミングはじめたばかりの初心者ですけど質問してもいいですか?
Swiftやってます
848デフォルトの名無しさん (ワッチョイ 19ab-Ys2M)
垢版 |
2018/03/31(土) 15:15:55.26ID:HODGx0EY0
過疎って返ってくるのが遅そうなので勝手に質問します

var m:Int = 0
do {"index:" + String(m)} while 10 > m++


で得られる答えがサイトではindex:0~index9だと書いてあったのですが理解ができません。
私はmが9であったらindex9となって、while10>m++の条件は++がmの後につくので9で比較されるのでtrueになり繰り返しが続行されると考えました。
なのでもう一度処理が実行されてindex:10まで出るのではないでしょうか。
慣れてないのでトンチンカンなこと言ってるかもしれませんがよろしくお願いします。
2018/03/31(土) 15:37:58.09ID:cXaECmE6H
>>848
貴方の言う通りですけど、
インクリメント演算子(++)は、Swift3から使えなくなったのでそういう書き方はできなくなりました。
2018/03/31(土) 15:43:18.30ID:QwOnP0D50
>>848
>index:10まで
その理解で合ってる

それと
・printもreturnも無いので答えという意味では何も無い
・do-while文は廃止された
・「++」(インクリメント)構文は廃止された

そのサイトを読むのは止めて
Swift4または2017年9月19日以降に書かれたもので学習した方がいいよ
2018/03/31(土) 16:18:30.86ID:cXaECmE6H
>>850
do-while は廃止ではなく、repeat-while に変更になりました。
852デフォルトの名無しさん (ワッチョイ 19ab-Ys2M)
垢版 |
2018/03/31(土) 20:20:46.22ID:HODGx0EY0
>>849
>>850
ええまじか…
では++nのところはn+=1とかにすればいいのでしょうか
サイトは別のサイト探そうと思います
2018/03/31(土) 23:35:14.21ID:4s7VNOk80
入門書の索引で do while の所探してページ開いてみたら repeat while のページになっていた。w
変化が激しいと入門書書く側も大変だな。
854デフォルトの名無しさん (ワイモマー MM11-/feT)
垢版 |
2018/04/08(日) 00:19:14.78ID:Dxb/j7BgM
何でこんなに仕様をコロコロ変えるのかな?
855デフォルトの名無しさん (ワッチョイ a923-6Vn5)
垢版 |
2018/04/08(日) 11:09:07.07ID:YK+KPtHu0
Dと同じ運命
2018/04/09(月) 12:44:12.04ID:fhEIkbEt0
>>854
多分思想がなくて振り回されてる。
もっと大御所がどっと構えて考え抜いた言語仕様にすればいいのに
goはそんな感じ
2018/04/09(月) 13:12:07.84ID:rSzJcNe3M
ジョブズの抜けたアップルみたいな風見鶏
2018/04/09(月) 14:27:15.87ID:ibciZGSr0
Swiftで書きたいけど結局React Nativeになっちゃう
2018/04/09(月) 18:19:08.07ID:H8x1C/ft0
オープンにしないでもっとクローズドで熟成させた方が良かったかもな
2018/04/10(火) 07:33:22.50ID:2JfiezX/0
xcodeがiPad proで動くようになってからが本番な気がする
861デフォルトの名無しさん (アウアウウー Sa11-9iKp)
垢版 |
2018/04/11(水) 10:30:32.27ID:3ZHviI/Za
iPadのplaygroundsでもフレームワークインポートしていろいろなことできるので
コーディングする勉強にはもってこいですね。
2018/04/16(月) 17:33:43.99ID:6ofV84ve0
さっさと公式にWebAssembly対応を謳うべき
出遅れる
2018/04/18(水) 22:27:21.96ID:G/yG3N1t0
すごくよさそうなのに何でオワコンみたいなっとん
2018/04/20(金) 06:07:43.03ID:yIya3QmH0
iOSしか対応してないから。
かつ、短期間の間に破壊的変更が多すぎる。
ちなみにもうxcodeでリファクタリングは出来るようになったんだろうな?
まだ出来てないなら流石にまずいぞ
2018/04/20(金) 06:15:14.64ID:44jSDzB50
>>864
macOSとLinuxも
Linuxでのといったら、Kituraあたりぐらいかもだが。メジャーなとこがやってる。だがマイナーだけど
2018/04/20(金) 07:01:11.05ID:yIya3QmH0
>>862
goは対応間近。llvmに頼らずにコード生成出来るようになっている模様。
2018/04/20(金) 07:02:12.85ID:yIya3QmH0
>>865
そっかーlinuxに対応してたね。macosもか。
linuxに対応してるならciはlinuxで動かせる?
2018/04/20(金) 09:21:24.22ID:ZIDxNko0d
>>864
swiftのリファクタリングも9でしれっと出来るようになってたw
2018/04/20(金) 09:22:20.18ID:ngXjtoOn0
しれっとって
前々からアナウンスされてただろ
2018/04/20(金) 14:05:50.29ID:44jSDzB50
>>867
ciってなんだっけ?
CLIのこと?コマンドは普通に当然あるね。swiftでインタラクティブ(?)なとか。というか、コマンドだけじゃないのかな。Kituraもおすすめ開発環境はXcodeでmacOSでだったような気がしないでもない
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。