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

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

2デフォルトの名無しさん (JP 0H9b-Gzhg)2017/06/28(水) 19:25:31.37ID:DxMay05+H
1+1/2+1/4+1/8+....

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

ひどい言われようだな。

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

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

納品されたシステム、プログラムに不具合があった場合、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デフォルトの名無しさん (ワッチョイ 7de5-DoE+)2017/07/02(日) 09:49:55.33ID:TQ3ZZw9j0
kotolinは劣化Swiftだけど、進化Javaではあるからな

6デフォルトの名無しさん (ワッチョイ 6d7e-QA6g)2017/07/02(日) 10:10:02.70ID:flwPV3hx0
>>5
Kolin nativeってのもあるし、Swift -> Kotlinへの移行しても良いかも。
Androidアプリ作って見たいし、だからと言ってJavaは嫌いだし。

>>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 ) //実行時エラー

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

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

9デフォルトの名無しさん (ワッチョイ 6d7e-QA6g)2017/07/02(日) 11:53:55.69ID:flwPV3hx0
>>7
lazy使って、実行時エラー回避できるんじゃなかったっけ?

10デフォルトの名無しさん (ワッチョイ 1911-wjSU)2017/07/02(日) 13:53:19.97ID:PPQhv25G0
>>9
既に let a = ….lazy でaはLazySequenceになっている

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

11デフォルトの名無しさん (ワッチョイ cd31-VKRT)2017/07/02(日) 15:07:17.13ID:J2BCSwZK0
Obj-Cで困らないんだが...

12デフォルトの名無しさん (ワッチョイ 42ea-iP7L)2017/07/02(日) 16:07:05.73ID:gG24OjEk0
WWDCのSwiftのハイライト教えてください。どの辺がパワーアップした?

13デフォルトの名無しさん (ワッチョイ d291-OatX)2017/07/02(日) 18:40:03.44ID:1aYpJu000
>>10
なるほど
回避するにはどう書けば良い?

14デフォルトの名無しさん (スプッッ Sdc2-HpRm)2017/07/02(日) 18:44:51.58ID:uCQPXMN6d
SwiftとXcode学ぼうとおもってるんだけど、オヌヌメの本ある?

15デフォルトの名無しさん (ワッチョイ 1911-wjSU)2017/07/02(日) 18:55:19.60ID:PPQhv25G0
>>13
型推論ちゃんがドジらないようメソッドチェーンせず一つずつやらせる

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

16デフォルトの名無しさん (ワッチョイ 826c-rlqC)2017/07/02(日) 19:10:09.36ID:ymzX8oAS0
4.0だと>>7で問題ないぽいな

17デフォルトの名無しさん (ワッチョイ 6d7e-QA6g)2017/07/02(日) 19:23:57.56ID:flwPV3hx0
>>14
あんたのbackground次第だな。
萩原本は、万人向けだが。

18デフォルトの名無しさん (ワッチョイ 1911-wjSU)2017/07/02(日) 20:44:23.57ID:PPQhv25G0
>>16
確かに4だと直ってるな
issues見たけどオーバーロードやlazy等に関する直接的な対応は見付けられなかった
オーバーロード解決に後続のチェーン使う地雷が修正されてるなら有り難いけど

19デフォルトの名無しさん (スプッッ Sdc2-OatX)2017/07/02(日) 21:36:26.29ID:eTKnpEgqd
>>15
ありがとう
いつか嵌ったときに思い出すよ

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

21デフォルトの名無しさん (ワッチョイ 77e5-Wxq/)2017/07/07(金) 10:58:39.58ID:iSt0xPuD0
ていうかKotlinなんか眼中になくてCrystallangやElixirがめっちゃ気になってるんだがね
やつらベンチだとSwiftより速いらしいやん
どんなマジック使ってるんだ

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

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

23デフォルトの名無しさん (ワッチョイ 5711-hFsI)2017/07/07(金) 16:27:22.50ID:T5EkXb6i0
"ワンライナー"と呼んでいるやつは初心者

ちなみに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デフォルトの名無しさん (ワッチョイ f711-lTuT)2017/07/08(土) 17:59:47.97ID:9wd2fVEY0
Obj-Cで困らないんだが...

25デフォルトの名無しさん (ワッチョイ d70d-L5XL)2017/07/08(土) 18:06:37.95ID:RHeSLAN60
Cベースじゃないモダンスタイル言語にsmalltalk思想かと思ったら
objective-Cとまったく関係ない実験作が出てきたからなぁ…
あきらかにAppleWatchともどもジョブズが
「これじゃまだダメだろ」って止めてたのが
お漏らしして表に出てきちゃった感

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

27デフォルトの名無しさん (ワッチョイ f77e-Y/ku)2017/07/08(土) 21:44:39.09ID:kEunb2nv0
>>26
Swift  -> ObjCへ移行中。Swiftだけしか知らない事に、危機感。
ObjCコンパイル早いし。

28デフォルトの名無しさん (ワッチョイ f711-lTuT)2017/07/08(土) 23:37:48.53ID:9wd2fVEY0
>>26
老害以外に言うことないのかね...

29デフォルトの名無しさん (ワッチョイ f77e-ATab)2017/07/09(日) 05:46:33.77ID:GCKhJDjB0
>>26
ボキャブラリ貧困

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

31デフォルトの名無しさん (ワッチョイ f77b-lTuT)2017/07/09(日) 09:43:38.60ID:XPzyjd3D0
他スレにも出向いて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デフォルトの名無しさん (スップ Sd3f-Zww2)2017/07/09(日) 09:48:07.95ID:W1Kac4fsd
>>26
何歳から老害なんですか?
あなたはいつから老害になるんですか?
それとも、歳くってもModernな言語をさわって布教してれば老害にはならないのですか?

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

34デフォルトの名無しさん (スップ Sd3f-Zww2)2017/07/09(日) 10:04:05.98ID:ubbDJ28zd
>>33
もう一度おききしますね

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

35デフォルトの名無しさん (ワッチョイ f77b-lTuT)2017/07/09(日) 10:09:22.98ID:XPzyjd3D0
(^^;;

36デフォルトの名無しさん (ワッチョイ 9f6f-UF+C)2017/07/09(日) 10:43:37.17ID:7zogvxJ60
ObjCでいいはないだろ...
何たってサーバーサイドも書けるんだぜ?
何もせんでもキャリアが伸びるこんなおいしい話はない
来年あたりSwiftのサーバーサイドでの積極採用の会社も出てくると予想してる

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

38デフォルトの名無しさん (ワッチョイ d700-cxsd)2017/07/09(日) 10:59:41.20ID:K0mwJiCj0
>>36
さすがにそこまではないと思う
サーバーサイドに使われるようになるには
ライブラリやフレームワークの充実度が重要
すでに他言語が相当前にいるので追いつくまでそうとうかかる

39デフォルトの名無しさん (ワッチョイ 9fea-OB+r)2017/07/09(日) 11:16:23.18ID:Y9w3zegu0
>>36
サーバーサイドは実験レベルで書けるけど実務レベルでは無理だろ
まだまだ時間が必要だと思う

40デフォルトの名無しさん (ワッチョイ ffdb-j4lg)2017/07/09(日) 11:16:38.17ID:+2xoEb/90
>>34
老害=年齢で決まると思ってる時点でお前はただのアホやで

41デフォルトの名無しさん (スップ Sd3f-Zww2)2017/07/09(日) 12:31:30.62ID:JmS2/1Qnd
>>40
shine

42デフォルトの名無しさん (ワッチョイ f77e-Y/ku)2017/07/09(日) 12:35:41.50ID:GCKhJDjB0
>>34
お前が老害

43デフォルトの名無しさん (スップ Sd3f-Zww2)2017/07/09(日) 12:39:52.64ID:JmS2/1Qnd
>>29
>>42
shine

44デフォルトの名無しさん (ワッチョイ f77e-Y/ku)2017/07/09(日) 12:40:36.19ID:GCKhJDjB0
ObjC専用スレ覗いて見た。最後のレスが今年の2月だった。
ObjCをちょっと触ってるけど、良い感じだわぁ。
ちょいと、メソッド名が冗長な感じはするけど、スルスルとコンパイルされるのが良い。

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

45デフォルトの名無しさん (ワッチョイ 9f6f-UF+C)2017/07/09(日) 12:56:04.79ID:7zogvxJ60
差分ビルドなら結局ObjCもSwiftも大して差を感じたことがないが
Swiftのビルド遅い遅い言ってるのは常にクリーンビルドでもやってんのかな
それかMacbook or Airだと体感差が出るとか?Proだと差が感じられない

46デフォルトの名無しさん (ワッチョイ 9f6f-UF+C)2017/07/09(日) 12:57:56.01ID:7zogvxJ60
まーSPMの構成変えた後一からビルドすることになる時は俺もイラッ☆とするけどな

47デフォルトの名無しさん (ワッチョイ 1748-gXZb)2017/07/09(日) 13:13:17.68ID:7wqzHkG/0
>>45
SSDだとSwiftが遅いって思ったこと無いけど、HDDだとめちゃくちゃ遅く感じる、というかやってられない

48デフォルトの名無しさん (ワッチョイ 9fea-OB+r)2017/07/09(日) 13:21:17.87ID:Y9w3zegu0
ビルドの速さを語るときはせめての目安としてコンパイルするファイル数も言わないと意味がないかと

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

50デフォルトの名無しさん (ワッチョイ f77b-lTuT)2017/07/09(日) 13:24:42.64ID:XPzyjd3D0
AppleがCoffeeタイムを提供してくれているのさ

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

51デフォルトの名無しさん (ワッチョイ bf32-yTjp)2017/07/09(日) 17:27:56.47ID:M1SE5oNM0
Swiftのビルドは遅いと思わないな。
遅いと言ってる人は多分StoryBoard使ってたり、変数の宣言時に型指定してないんだろうな。

52デフォルトの名無しさん (ワッチョイ ffe3-KuRC)2017/07/09(日) 18:51:26.63ID:58HcjkUe0
型推論全否定すんな
だいたいC#はvarでも速いぞ

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

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

55デフォルトの名無しさん (ワッチョイ 9f20-gfZI)2017/07/10(月) 18:53:10.56ID:knKTPcd80
ARCって循環参照したらメモリリークすんでしょ?

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

56デフォルトの名無しさん (ワッチョイ 9f11-iY2e)2017/07/10(月) 20:47:48.41ID:vzjIr3Mm0
>>44
Objective-Cはキモいくらいにコンパイル速いよな。
なんかSwiftよりも楽しそうな感じするな。

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

58デフォルトの名無しさん (ワッチョイ d70d-L5XL)2017/07/10(月) 22:20:27.57ID:OxPhUDSQ0
たぶんガーベージコレクションなら背後でCPUパワーを食い続けて全部監視してくれる!と言いたいのでは

59デフォルトの名無しさん (ガックシ 068f-QYYo)2017/07/10(月) 23:35:14.81ID:5DkNY5/u6
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デフォルトの名無しさん (ガックシ 068f-QYYo)2017/07/10(月) 23:36:58.98ID:5DkNY5/u6
>>59
すみません。エラーが出ている箇所はSendUDP(char* str, int strsize)を呼び出した部分でエラーが出ています。
その他の場所は特に問題ないみたいです

61デフォルトの名無しさん (ワッチョイ d700-cxsd)2017/07/10(月) 23:37:47.31ID:Hza8gIww0
GCと比較してたのか…
それなりのコストかかるから単純に比較できんけどなぁ

62デフォルトの名無しさん (ワッチョイ d700-cxsd)2017/07/10(月) 23:39:48.29ID:Hza8gIww0
>>59
何が原因って、エラー内容のままじゃん…
英語読めないならぐくるとかしてみなよ

63デフォルトの名無しさん (ワッチョイ 5711-KuRC)2017/07/10(月) 23:52:21.77ID:LuuY8Q0f0
>>59
bindMemory

64デフォルトの名無しさん (ワッチョイ 572d-KuRC)2017/07/11(火) 01:40:47.21ID:gmstQp2n0
最近書き始めたけど、これ凄いな
簡単にアプリ作れて驚いた、凄い書きやすいわ
ただ基本的な文法をもっと勉強したいんだけど、良い参考書って何かないですかね
アプリ入門系の本だと、アプリで使うメソッドしか解説がないのでもっと基本的な所から勉強したい

65デフォルトの名無しさん (ワッチョイ 9f61-cxsd)2017/07/11(火) 03:13:01.93ID:l+dots440
とりあえず萩原本の最新の買っとけ

66デフォルトの名無しさん (ワッチョイ f7a9-aOiv)2017/07/11(火) 04:41:16.12ID:rvrzGERi0
言語仕様としてtypescriptも十分楽しいしあえてswiftえらんでベンダーロックインする必要もない

67デフォルトの名無しさん (スップ Sdbf-j4lg)2017/07/11(火) 11:23:21.08ID:ZgquAFHgd
>>64
appleにあるでしょ

68デフォルトの名無しさん (ワッチョイ f76c-QYYo)2017/07/11(火) 11:56:52.95ID:uTsC6u070
>>64
Core Foundationのソースを見ろ!
いろんなCの関数が並んでる。

69デフォルトの名無しさん (オッペケ Srcb-R1hf)2017/07/11(火) 12:07:35.73ID:Hq6/pqoer
swiftってあんまUDP使ってる人いないきがするけど、主流はTCPなの?

70デフォルトの名無しさん (ワッチョイ f76c-cxsd)2017/07/11(火) 12:25:37.46ID:oWge628W0
主流も何も用途次第でしょ

71デフォルトの名無しさん (ブーイモ MMfb-aOiv)2017/07/11(火) 13:47:20.91ID:6GA6X5kAM
iosは基本的にhttpsで通信なんだから強いて言えばtcpなんだろうけど、
今時その層を意識する必要あるのかな。websocketとかある時代だし
ルーター超えとか考慮するのにtcpから触るとか無理ある

72デフォルトの名無しさん (ワッチョイ f7d1-QYYo)2017/07/11(火) 15:38:11.48ID:NnERboSX0
httpに限らずTCP利用のサービスの方が多いだろ。UDPはよほどパフォーマンス気にするようなサービスでだが、ビデオストリームでさえTCP(それもhttpなんて)でいいやの方が主流でUDP使ってるのが稀になってるだろ

73デフォルトの名無しさん (ワッチョイ f7f4-L5XL)2017/07/11(火) 18:57:19.43ID:f6AJLSJm0
QUIC

74デフォルトの名無しさん (ワッチョイ f7d1-QYYo)2017/07/11(火) 19:48:11.70ID:NnERboSX0
(まだ)マイナーなの出しても意味ないだろw
そのQUICとやらも>>69が使うぶんにはTCPだのUDPだの気にすることは無いだろし。UDPでちまちまやるんだったら意味ねえからな

75デフォルトの名無しさん (ワッチョイ 976f-fYl/)2017/07/11(火) 20:10:17.79ID:ScJXy/Hw0
リアルタイム性が重要な分野以外では生UDPの出番なんてない
QUICだって結局改良版TCPじゃん

76デフォルトの名無しさん (スプッッ Sd3f-j4lg)2017/07/11(火) 20:23:33.95ID:Q6KlR0b1d
Aさんが書いたコードなclassだらけ、Bさんが書いたコードはstructだらけ
classは糞、structは糞と水と油をひたすら掛け合う日々
このクソ言語なんとかして

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

78デフォルトの名無しさん (ワッチョイ 5711-KuRC)2017/07/11(火) 20:58:45.14ID:HBLQ2eVf0
>>76
AさんBさんに、使い分けどころか組み合わせることもあるんすよって教えてあげて
https://github.com/apple/swift/blob/master/stdlib/public/core/HashedCollections.swift.gyb#L36

79デフォルトの名無しさん (スプッッ Sd3f-j4lg)2017/07/11(火) 21:12:02.54ID:Q6KlR0b1d
Aさんはstruct不要論者のjavaerでclassしかつかわない
Bさんは継承アンチで基本struct、部分的にclassを使う
はあ糞すぎる

80デフォルトの名無しさん (ワッチョイ 9f20-gfZI)2017/07/11(火) 21:21:14.43ID:ARlFR3Nh0
>>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デフォルトの名無しさん (ワッチョイ f7a9-aOiv)2017/07/11(火) 23:20:13.04ID:rvrzGERi0
goみたくclass無くしてstructだけにしてくれたら良かったのにね。
値型と参照型の違いとは言うけど、
普通にそんなん考慮して使い分けてるのって何割いるか

82デフォルトの名無しさん (ワッチョイ 5711-KuRC)2017/07/12(水) 00:00:01.48ID:uvMvuqTN0
>>81
型定義で指定するか変数定義の違いだけでは

83デフォルトの名無しさん (ワッチョイ 9f6f-UF+C)2017/07/12(水) 12:14:48.88ID:Ft5NBnXm0
classはiOS frameworksとの互換性維持のためにあるだけだろ
基本structでいいよ
サーバーサイドはほぼStruct一色だわ

84デフォルトの名無しさん (JP 0H3f-KuRC)2017/07/12(水) 13:32:57.34ID:DcKWLYd4H
var a = Array<Int>()
var a = [abc]()
違いって何?

85デフォルトの名無しさん (ワッチョイ ff17-txss)2017/07/12(水) 17:42:49.46ID:TL+DQEEP0
>>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デフォルトの名無しさん (スップ Sd3f-Zww2)2017/07/12(水) 18:21:47.80ID:ZOQNZDbbd
ポインターがないSwiftめんどくさ

87デフォルトの名無しさん (JP 0H8a-FPdr)2017/07/13(木) 13:42:07.18ID:gLbFU3lkH
>>85
ありがとうございます!
助かりました。
ちなみにiosでTCP/UDP使う時に使いやすいapiないですか?
今回、UDP通信するにあたってCFソケットも検討したんですが、いまいち使いづらくて

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

88デフォルトの名無しさん (ワッチョイ 84d1-NvYO)2017/07/13(木) 14:26:17.90ID:YXo9YsXu0
Cのでええやん?慣れてるなら
あくまでもSwiftっぽくなら、Objective-Cのでもええやろ?iOS APIがほぼそれなんだし

89デフォルトの名無しさん (JP 0H8a-FPdr)2017/07/13(木) 17:57:36.12ID:gLbFU3lkH
>>88
ありがとう。Cで書くよ
調べてたらswiftでCでソケット通信を作るのは一般的じゃないみたいな記事みたからちょっと気になった

90デフォルトの名無しさん (ワッチョイ bc7b-svru)2017/07/13(木) 22:54:25.78ID:60WI1OgY0
Cで出来てることはObjective-Cならそのままできる

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

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

93デフォルトの名無しさん (ワッチョイ 4ce3-z+eH)2017/07/16(日) 23:52:07.18ID:QMScBLa+0
if __name__ == '__main__':

美しい?

94デフォルトの名無しさん (ワッチョイ bc37-svru)2017/07/17(月) 08:21:51.45ID:Ze9nWRlN0
>>93
とても高級言語とは思えない醜さ

95デフォルトの名無しさん (スップ Sdc4-tNHj)2017/07/17(月) 09:25:14.61ID:NNb10sQTd
>>94
無駄にかっこ無くしたSwiftも似たようなもんだけどな

96デフォルトの名無しさん (ワッチョイ 4611-ReYe)2017/07/17(月) 10:35:41.40ID:Mc06oZvK0
日本ではSwift大人気だけど、海外だとそれほど人気ないらしいね。
言語ランキングとかだと日本だけ異様に高いらしい。

97デフォルトの名無しさん (ワッチョイ c66b-svru)2017/07/17(月) 10:39:22.12ID:VuxDjspY0
>>96
だろうな
相当のApple信仰心がないと付き合ってらんねぇよってなるだろ
しかもにわかでない元々のApple好きはJobs教だからObjective-Cでいいって思ってるし

98デフォルトの名無しさん (ワッチョイ 84d1-NvYO)2017/07/17(月) 10:49:55.85ID:jv/mhdui0
隙あらば妄想語り

99デフォルトの名無しさん (JP 0H3a-G/zD)2017/07/17(月) 15:18:50.28ID:fxU6unKKH
>>93-94
shebangが美しいとかω

100デフォルトの名無しさん (ブーイモ MM98-cMRf)2017/07/17(月) 16:28:59.78ID:5dSbIPaGM
>>94
書きたくなければ書く必要ないんだぜ。
そもそもswiftじゃ同じことを書くことすらできないだろ。。

新着レスの表示
レスを投稿する