TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼
MVVMについて語ろう
MSX-BASICの奥義を伝授するスレ
Visual Studio 2019 Part3
C++相談室 part144
ATL/WTL Part7
クライアント「神々たる仕変!後悔など遅い!」
C++相談室 part142
Perlについての質問箱 64箱目
VBScriptについて必死に話し合うスレ
Rubyについて(アンチ専用) Part005

Swift part11


1 :2017/06/28 〜 最終レス :2018/08/22
WWDC2014で発表されたAppleの新言語Swiftについて語りましょう

関連スレ

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

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

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

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


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

スレ立て時は1行目に「!extend::vvvvv」
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured

2 :
1+1/2+1/4+1/8+....

3 :
>ただし、Swiftは「クズ」だと思っている人は今でもいる

ひどい言われようだな。

「Android」アプリ開発言語に加わった「Kotlin」--開発者が寄せる期待
https://japan.techrepublic.com/article/35103377.htm

4 :
瑕疵担保責任(かしたんぽせきにん)

納品されたシステム、プログラムに不具合があった場合、10年後でも無償で修理してもらうことが可能になった。

民法改正で事実上期限が「無制限」になった
不具合を指摘されたらすぐに行動をとるべし 納品物に不具合があれば損害賠償を請求される可能性もある

http://www.atmarkit.co.jp/ait/articles/1706/26/news014.html
http://itpro.nikkeibp.co.jp/atcl/news/17/052601508/?rt=nocnt

改正法では欠陥に気付いてから1年以内にITベンダーに通知すれば、通知後5年以内は修正や報酬の減額などを求められるとしている

全ベンダーが泣いた民法改正案を解説しよう その1
http://www.atmarkit.co.jp/ait/articles/1609/14/news009.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_2.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_3.html

ポイント1:修補や損害賠償、契約解除の期限がなくなる

従来あった「瑕疵担保期間は引き渡しから1年」という考えはなくなる。
条文にある通り、注文者は成果物が契約の目的に適合しないことを発見したら、
その「発見したときから1年以内」ならさまざまな請求ができる。発見が10年後なら、11年後まで請求可能なのだ。

もっとも、現実のユーザーとベンダーの関係でも、たとえ契約書に「瑕疵担保責任期間は納品から1年と」明記されていても、
「2年目以降は不具合の修正に対応しない」と主張するベンダーはまれだ。多くの場合は、納品から何年たっても、
バグが見つかればユーザーのところに飛んで行き、無償で改修するだろう。

重大な脆弱性が現バージョンから発見されました。こちらでアップデートしたところ、起動ができなくなりました。
至急弊社に来て修正作業をお願いします。なおお金は払わない。また営業に損失が出たので損害請求もする。

5 :
kotolinは劣化Swiftだけど、進化Javaではあるからな

6 :
>>5
Kolin nativeってのもあるし、Swift -> Kotlinへの移行しても良いかも。
Androidアプリ作って見たいし、だからと言ってJavaは嫌いだし。

7 :
>>5

//Kotlin
val a = generateSequence(0){it+1}
println( a.map{it*10}.filter{50<it}.take(5).toList() ) //正常動作

//Swift
extension Sequence { var array:[Iterator.Element] {get{return map{$0}}} }
let a = sequence(first:0){$0+1}.lazy
print( a.map{$0*10}.filter{50<$0}.prefix(5).array ) //実行時エラー

8 :
やっぱりJavaVMで動くKotlinは最強やな

>>6
実用に至ってから出直せw

9 :
>>7
lazy使って、実行時エラー回避できるんじゃなかったっけ?

10 :
>>9
既に let a = ….lazy でaはLazySequenceになっている

しかしオーバロードと型推論の設計上の問題により
LazySequence.filterでなくSequence.filterが呼ばれるため
prefixより前に無限シーケンスを全て処理しようとして死ぬ

11 :
Obj-Cで困らないんだが...

12 :
WWDCのSwiftのハイライト教えてください。どの辺がパワーアップした?

13 :
>>10
なるほど
回避するにはどう書けば良い?

14 :
SwiftとXcode学ぼうとおもってるんだけど、オヌヌメの本ある?

15 :
>>13
型推論ちゃんがドジらないようメソッドチェーンせず一つずつやらせる

do {
let a2 = a.map{$0*10}
let a3 = a2.filter{50<$0}
print( a3.prefix(5).array )
}

16 :
4.0だと>>7で問題ないぽいな

17 :
>>14
あんたのbackground次第だな。
萩原本は、万人向けだが。

18 :
>>16
確かに4だと直ってるな
issues見たけどオーバーロードやlazy等に関する直接的な対応は見付けられなかった
オーバーロード解決に後続のチェーン使う地雷が修正されてるなら有り難いけど

19 :
>>15
ありがとう
いつか嵌ったときに思い出すよ

20 :
ワンライナーに至上の価値を置いてるやつは初心者
複数言語、プラットフォームにまたぐ開発をやったことなく
狭い世界で安全なコード規約に保護されてないと開発できない箱入り息子ども
その狭い価値観でプログラミング言語を語り出すと>>7のような間抜けなことを言い出す
SwiftがあるのにピザってるJVMで動作するkotlinを選ぶやつは初心者も初心者

21 :
ていうかKotlinなんか眼中になくてCrystallangやElixirがめっちゃ気になってるんだがね
やつらベンチだとSwiftより速いらしいやん
どんなマジック使ってるんだ

22 :
他言語を専スレで話題にしようとする初心者
加えて、VM言語が下手なネイティブより高速になることがある背景を知らない初心者

Swiftは特定条件下ではobjcより早いけど、一般的には別段速くないって昔から言われてるから

23 :
"ワンライナー"と呼んでいるやつは初心者

ちなみにElixirでは単なるメソッドチェーンに留まらずパイプ演算子が用意されている
https://blog.drewolson.org/elixir-streams/

import Stream
a = iterate(0,&( &1+1 ))
IO.inspect a |> map(&( &1*10 )) |> filter(&( 50<&1 )) |> take(5) |> Enum.to_list, char_lists: false

24 :
Obj-Cで困らないんだが...

25 :
Cベースじゃないモダンスタイル言語にsmalltalk思想かと思ったら
objective-Cとまったく関係ない実験作が出てきたからなぁ…
あきらかにAppleWatchともどもジョブズが
「これじゃまだダメだろ」って止めてたのが
お漏らしして表に出てきちゃった感

26 :
Obj-C使ってる奴の老害感(Mac板

27 :
>>26
Swift  -> ObjCへ移行中。Swiftだけしか知らない事に、危機感。
ObjCコンパイル早いし。

28 :
>>26
老害以外に言うことないのかね...

29 :
>>26
ボキャブラリ貧困

30 :
mac板での自爆ギャグが悔しかったのか必死だなw
こっちの板はアンチスレもあるし老害orガイジでないならそっち行くといいよ

31 :
他スレにも出向いてObj-C=老害を吹聴してSwiftを布教して回ってんのかよ...

82 1 名前:名称未設定 (ササクッテロリ Sp71-yTFi) Mail:sage 投稿日:2017/07/03(月) 20:24:07.40 ID:ipKiHhaqp
これは老害ですわ
なんでこんな古いObjCの記述をするんだよw

Modern Objective-Cを学び直すか、ObjCを捨ててSwiftを学ぶべきだな

32 :
>>26
何歳から老害なんですか?
あなたはいつから老害になるんですか?
それとも、歳くってもModernな言語をさわって布教してれば老害にはならないのですか?

33 :
いや、そこSwiftスレじゃん
そしてあまりにも酷いObjCコードをスレチで書いた老害が悪いわw
業務ではObjCしか使わないしSwiftが良い言語と思っちゃいないが、専スレでアンチは勘弁な

34 :
>>33
もう一度おききしますね

何歳から老害なんですか?
あなたはいつから老害になる予定ですか?
それとも、歳くってもModernな言語をさわって布教してれば老害にはならないのですか?

35 :
(^^;;

36 :
ObjCでいいはないだろ...
何たってサーバーサイドも書けるんだぜ?
何もせんでもキャリアが伸びるこんなおいしい話はない
来年あたりSwiftのサーバーサイドでの積極採用の会社も出てくると予想してる

37 :
>>34
Modern Objective-Cが書けるなら老人であっても老害じゃないんじゃないの
あとSwiftスレでObjCで荒らしてるのはガイジかな:)

38 :
>>36
さすがにそこまではないと思う
サーバーサイドに使われるようになるには
ライブラリやフレームワークの充実度が重要
すでに他言語が相当前にいるので追いつくまでそうとうかかる

39 :
>>36
サーバーサイドは実験レベルで書けるけど実務レベルでは無理だろ
まだまだ時間が必要だと思う

40 :
>>34
老害=年齢で決まると思ってる時点でお前はただのアホやで

41 :
>>40
shine

42 :
>>34
お前が老害

43 :
>>29
>>42
shine

44 :
ObjC専用スレ覗いて見た。最後のレスが今年の2月だった。
ObjCをちょっと触ってるけど、良い感じだわぁ。
ちょいと、メソッド名が冗長な感じはするけど、スルスルとコンパイルされるのが良い。

コンパイルエラーが不親切って感じはするけど。
その点、Swiftコンパイラは親切but時間かかる。

45 :
差分ビルドなら結局ObjCもSwiftも大して差を感じたことがないが
Swiftのビルド遅い遅い言ってるのは常にクリーンビルドでもやってんのかな
それかMacbook or Airだと体感差が出るとか?Proだと差が感じられない

46 :
まーSPMの構成変えた後一からビルドすることになる時は俺もイラッ☆とするけどな

47 :
>>45
SSDだとSwiftが遅いって思ったこと無いけど、HDDだとめちゃくちゃ遅く感じる、というかやってられない

48 :
ビルドの速さを語るときはせめての目安としてコンパイルするファイル数も言わないと意味がないかと

49 :
Copying swift library ... が怒り通り越して笑いが出る
SSDでも普通に体感差があるけどないの?

50 :
AppleがCoffeeタイムを提供してくれているのさ

と信者ならポジティブに解釈できることだろう

51 :
Swiftのビルドは遅いと思わないな。
遅いと言ってる人は多分StoryBoard使ってたり、変数の宣言時に型指定してないんだろうな。

52 :
型推論全否定すんな
だいたいC#はvarでも速いぞ

53 :
型推論の比較対象はC++だろw

54 :
ふーんHDDだとそんなに遅いんだ
Pro Retina SSDがSwiftやる上での下限スペックってことかな
13inch 128GBは罠だが・・・

55 :
ARCって循環参照したらメモリリークすんでしょ?

だからってweakとかunownedにしたら間違って解放後にアクセスしちゃうかもしれないし
マジ使えねー

56 :
>>44
Objective-Cはキモいくらいにコンパイル速いよな。
なんかSwiftよりも楽しそうな感じするな。

57 :
>>55
自分でメモリ管理したら循環参照しないってこと?
どっちもどっちだろ
あんまり関係ないと思うけど

58 :
たぶんガーベージコレクションなら背後でCPUパワーを食い続けて全部監視してくれる!と言いたいのでは

59 :
Cで作った関数をSwift上で使いたいのですが、
文字列のアドレスを渡す関数でエラーが出てしまいます。
何が原因でしょうか。。。

@IBAction func BtnClick_ConnectTest(_ sender: Any) {
//接続先設定
var port:Int32 = Int32(_textFirld_sendPort.text!)!
var IP:String = _textField_sendIP.text!
var str:String = "test"
MyScocket_init()
setScoketSend(port,IP)

SendUDP(Unmanaged<AnyObject>.passUnretained(str as AnyObject).toOpaque() ,str.utf16Count)
}

int SendUDP(char* str, int strsize){
// パケットをUDPで送信
int ret = sendto(g_sockets[SOCK_SEND].sd, str, strsize, 0,
(struct sockaddr *)&g_sockets[SOCK_SEND].sock, sizeof(g_sockets[SOCK_SEND].sock));
if( ret < 0) {
perror("sendto");
}
return ret;
}

エラー内容
Cannot convert value of type 'UnsafeMutableRawPointer' to expected argument type 'UnsafeMutablePointer<Int8>!'

60 :
>>59
すみません。エラーが出ている箇所はSendUDP(char* str, int strsize)を呼び出した部分でエラーが出ています。
その他の場所は特に問題ないみたいです

61 :
GCと比較してたのか…
それなりのコストかかるから単純に比較できんけどなぁ

62 :
>>59
何が原因って、エラー内容のままじゃん…
英語読めないならぐくるとかしてみなよ

63 :
>>59
bindMemory

64 :
最近書き始めたけど、これ凄いな
簡単にアプリ作れて驚いた、凄い書きやすいわ
ただ基本的な文法をもっと勉強したいんだけど、良い参考書って何かないですかね
アプリ入門系の本だと、アプリで使うメソッドしか解説がないのでもっと基本的な所から勉強したい

65 :
とりあえず萩原本の最新の買っとけ

66 :
言語仕様としてtypescriptも十分楽しいしあえてswiftえらんでベンダーロックインする必要もない

67 :
>>64
appleにあるでしょ

68 :
>>64
Core Foundationのソースを見ろ!
いろんなCの関数が並んでる。

69 :
swiftってあんまUDP使ってる人いないきがするけど、主流はTCPなの?

70 :
主流も何も用途次第でしょ

71 :
iosは基本的にhttpsで通信なんだから強いて言えばtcpなんだろうけど、
今時その層を意識する必要あるのかな。websocketとかある時代だし
ルーター超えとか考慮するのにtcpから触るとか無理ある

72 :
httpに限らずTCP利用のサービスの方が多いだろ。UDPはよほどパフォーマンス気にするようなサービスでだが、ビデオストリームでさえTCP(それもhttpなんて)でいいやの方が主流でUDP使ってるのが稀になってるだろ

73 :
QUIC

74 :
(まだ)マイナーなの出しても意味ないだろw
そのQUICとやらも>>69が使うぶんにはTCPだのUDPだの気にすることは無いだろし。UDPでちまちまやるんだったら意味ねえからな

75 :
リアルタイム性が重要な分野以外では生UDPの出番なんてない
QUICだって結局改良版TCPじゃん

76 :
Aさんが書いたコードなclassだらけ、Bさんが書いたコードはstructだらけ
classは糞、structは糞と水と油をひたすら掛け合う日々
このクソ言語なんとかして

77 :
互いにだらけになる方がおかしいだろ
一方は値型で一方は参照型なのに
どんなアプリ作ったらそんなんなるんだ?

78 :
>>76
AさんBさんに、使い分けどころか組み合わせることもあるんすよって教えてあげて
https://github.com/apple/swift/blob/master/stdlib/public/core/HashedCollections.swift.gyb#L36

79 :
Aさんはstruct不要論者のjavaerでclassしかつかわない
Bさんは継承アンチで基本struct、部分的にclassを使う
はあ糞すぎる

80 :
>>76
When to use struct?
https://stackoverflow.com/questions/521298/when-to-use-struct
Choosing Between Class and Struct
https://docs.microsoft.com/en-us/dotnet/standard/design-guidelines/choosing-between-class-and-struct

✓ CONSIDER defining a struct instead of a class if instances of the type are small and commonly short-lived or are commonly embedded in other objects.

X AVOID defining a struct unless the type has all of the following characteristics:

It logically represents a single value, similar to primitive types (int, double, etc.).

It has an instance size under 16 bytes.

It is immutable.

It will not have to be boxed frequently.

81 :
goみたくclass無くしてstructだけにしてくれたら良かったのにね。
値型と参照型の違いとは言うけど、
普通にそんなん考慮して使い分けてるのって何割いるか

82 :
>>81
型定義で指定するか変数定義の違いだけでは

83 :
classはiOS frameworksとの互換性維持のためにあるだけだろ
基本structでいいよ
サーバーサイドはほぼStruct一色だわ

84 :
var a = Array<Int>()
var a = [abc]()
違いって何?

85 :
>>59
誰も答えないからやってみた
ref. ttps://stackoverflow.com/a/41308592

@IBAction func BtnClick_ConnectTest(_ sender: Any) {
//接続先設定
var port:Int32 = Int32(_textFirld_sendPort.text!)!
var IP:String = _textField_sendIP.text!
var str:String = "test"
MyScocket_init()
setScoketSend(port,IP)

SendUDP(str)
}

int SendUDP(const char* str) {
// パケットをUDPで送信
int ret = sendto(g_sockets[SOCK_SEND].sd, str, strlen(str), 0,
(struct sockaddr *)&g_sockets[SOCK_SEND].sock, sizeof(g_sockets[SOCK_SEND].sock));
if( ret < 0) {
perror("sendto");
}
return ret;
}

昔はUnmanagedやらOpaqueやらUnsafeやら操作しなきゃいけなかったような気がするけど変わったかな
まぁ、Stringは(ほぼ)組み込み型で特別扱いされてるだけで、ARC管理下の自前オブジェクトは管理が必要なはず

86 :
ポインターがないSwiftめんどくさ

87 :
>>85
ありがとうございます!
助かりました。
ちなみにiosでTCP/UDP使う時に使いやすいapiないですか?
今回、UDP通信するにあたってCFソケットも検討したんですが、いまいち使いづらくて

C言語の方が慣れてるんでCで書いたんですけど

88 :
Cのでええやん?慣れてるなら
あくまでもSwiftっぽくなら、Objective-Cのでもええやろ?iOS APIがほぼそれなんだし

89 :
>>88
ありがとう。Cで書くよ
調べてたらswiftでCでソケット通信を作るのは一般的じゃないみたいな記事みたからちょっと気になった

90 :
Cで出来てることはObjective-Cならそのままできる

91 :
>>86
ポインタがないのが面倒なんじゃなくARCが面倒なんだぞ
今回はARC度外視できたけどARC管理下のオブジェクト取り回しはObjCでも同じだからな

92 :
Pythonみたいに極限までに研ぎ澄まされたシンプルさと美を兼ね備えた言語で開発したい

93 :
if __name__ == '__main__':

美しい?

94 :
>>93
とても高級言語とは思えない醜さ

95 :
>>94
無駄にかっこ無くしたSwiftも似たようなもんだけどな

96 :
日本ではSwift大人気だけど、海外だとそれほど人気ないらしいね。
言語ランキングとかだと日本だけ異様に高いらしい。

97 :
>>96
だろうな
相当のApple信仰心がないと付き合ってらんねぇよってなるだろ
しかもにわかでない元々のApple好きはJobs教だからObjective-Cでいいって思ってるし

98 :
隙あらば妄想語り

99 :
>>93-94
shebangが美しいとかω

100 :
>>94
書きたくなければ書く必要ないんだぜ。
そもそもswiftじゃ同じことを書くことすらできないだろ。。


100〜のスレッドの続きを読む
【上流社会】MSDNサブスクリプション総合【最先端】
0から始める2chブラウザfor超漢字 "2ch de BTRON"
GCは失敗。メモリは自分で管理せよ! その2
MATLABプログラミング 質問箱 その4
Kotlin 3
PowerShell -Part 4
VBAなんでも質問スレ Part2
動的言語で大規模開発
家計簿ソフトを作る
Pythonのお勉強 Part62
--------------------
【性犯罪者】ゆうたごんこと鈴木雄太81【偽物販売】
9861 吉野家 Part.4
■山形市消防本部、119番通報に救急車出動させず
【韓国サッカー】冷やかさない日本人たち、その反応に韓国ネット「さすが余裕がある」「日本の国民性は韓国よりまし」★3[06/26]
真野恵里菜ってせっかく女優として売れかけてたのに結婚したのバカだったよな
#MeToo運動中心人物のイタリア人女優、自らも17歳の少年と性行為に及び口止め料を払っていた
末路があまりにも悲惨だった人物
CSS(スタイルー大柴シート)質問スレ51日目
エアバスA380生産終了へ
【スパドラ】HEROES REBORN/ヒーローズ・リボーン【バレ禁】
イチジク浣腸
【名無し限定】無職同士で話しませんか?
久宝寺緑地
熱海の捜査官をミステリーとして解釈する為のスレ
【ノーベル賞】 「ノーベル科学賞に偏り、『公平性』に問題」「韓国受賞の可能性は高まっている」〜韓国研究財団報告書★2[09/13]
マスター&栃木動物緊急避難所10
豆符「東方シリーズ総合スレッド 7866」
ウイルスキラーVSキングソフトVSウイルスセキュ
☆☆大学生活板卒業生同窓会66次会☆☆
光子は走っていなかった
TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼