X



Swift part11 [無断転載禁止]©2ch.net
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ 2b11-WRiT)
垢版 |
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
0891デフォルトの名無しさん (ワッチョイ ff96-iqNU)
垢版 |
2018/04/23(月) 15:42:30.99ID:B+G5EdcD0
          ____
       / \  /\ キリッ
.     / (ー)  (ー)\    < ciやるにはMacが必要
    /   ⌒(__人__)⌒ \
    |      |r┬-|    |
     \     `ー’´   /
    ノ            \
  /´               ヽ
 |    l              \
 ヽ    -一””””~~``’ー–、   -一”””’ー-、.
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))

          ____
        /_ノ  ヽ、_\
 ミ ミ ミ  o゚((●)) ((●))゚o      ミ ミ ミ   <だっておwww
/⌒)⌒)⌒. ::::::⌒(__人__)⌒:::\   /⌒)⌒)⌒)   
| / / /     |r┬-|    | (⌒)/ / / //       
| :::::::::::(⌒)    | |  |   /  ゝ  :::::::::::/      
|     ノ     | |  |   \  /  )  /
ヽ    /     `ー’´      ヽ /    /
 |    |   l||l 从人 l||l      l||l 从人 l||l  バンバン
 ヽ    -一””””~~``’ー–、   -一”””’ー-、
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))
0893デフォルトの名無しさん (ワッチョイ 0bb3-hWI/)
垢版 |
2018/04/23(月) 20:25:55.66ID:HCf1mURQ0
いまどきMacじゃないやつは人じゃないというか
ただの犯罪者予備軍だしな。
サイバー犯罪で捕まって「いつも暗い部屋でパソコンカタカタやってて
いつかはこうなると思ってました」と証言される存在。
0894デフォルトの名無しさん (アウアウカー Sa43-9Dln)
垢版 |
2018/04/23(月) 20:44:35.06ID:snLtrZOza
いまどきMac持ってるやつは人じゃないというか
ただの犯罪者予備軍だしな。
サイバー犯罪で捕まって「いつも暗い部屋でパソコンカタカタやってて
いつかはこうなると思ってました」と証言される存在。
0897デフォルトの名無しさん (ワッチョイ 0e8a-wgWx)
垢版 |
2018/04/24(火) 16:22:03.29ID:v7CSxy8v0
VSCode使いやすいしな。
0904デフォルトの名無しさん (アウアウカー Sadd-wPGC)
垢版 |
2018/04/27(金) 20:44:42.93ID:oJis0HV7a
CPU変わったって言語仕様まで変える必要なかろう
0907デフォルトの名無しさん (アウアウカー Sadd-wPGC)
垢版 |
2018/04/30(月) 17:54:40.54ID:NF3/uQW/a
インラインアセンブラはC言語に組み込んだ反則技みたいなものなので他の言語は是非とも実現しないでおいて欲しい。
0909デフォルトの名無しさん (ワッチョイ 933e-39yo)
垢版 |
2018/05/01(火) 10:14:42.05ID:OUwlkFDk0
OSというかファイルシステムに仕掛けあってMac/iOSは
複数のバイナリ実行ファイルをパッケージの中の別ディレクトリで持てるからなぁ
PPC/intel時代とか32bit/64bitバイナリとか。
0910デフォルトの名無しさん (ワッチョイ 5b76-JoRN)
垢版 |
2018/05/01(火) 16:06:29.62ID:M+3XKBR00
パッケージの中の別ディレクトリじゃないよ。ひとつの実行ファイルの中で。実行ファイルに限らずFrameworkなどなども。Mach-Oっつうて。より古いのもディレクトリで分けではないな
0911デフォルトの名無しさん (アウアウエー Sa23-cUH7)
垢版 |
2018/05/01(火) 16:33:58.96ID:hs19eTspa
フーン(ω)
0913552 (ワッチョイ db21-KzCP)
垢版 |
2018/05/01(火) 21:00:42.03ID:LNs8frCc0
インラインアセンブラはまれに触る事があった。Linuxからの移植位なのでレジスタ退避の違い位しか分からない。

当時はgcc拡張で書いてた記憶があるけど、今clangだとどう書くんだろう?
0914デフォルトの名無しさん (ワッチョイ 71b3-txLX)
垢版 |
2018/05/02(水) 09:08:10.24ID:rm9ZE9J90
なんか最近審査時間めっちゃ短くね
GWだからか
0915デフォルトの名無しさん (ブーイモ MM19-C4HX)
垢版 |
2018/05/11(金) 08:05:07.81ID:YzDAqhh0M
Swiftでのc配列取り扱いについて教えてください。

CoreaudioにAudioChannelLayoutというStructがありますが
これはcの可変長配列AudioChannelDescriptionを含む定義になっています。
SwiftではStructは値型なのですが、Structが持つ配列が
(AudioChannelDescription)となっていて、単一値のtuppleとして
importされており、一つ目の値しかコピーされないのではないか、
可変長structとして扱えていないのではないかとかんがえました。

swiftにおけるc配列のstructはどの様に扱われているのでしょうか。
Data型なりNSData型なりでbacking storeを確保して扱うのが
安全でしょうか?
0916デフォルトの名無しさん (ワッチョイ 2da7-2PF3)
垢版 |
2018/05/11(金) 09:37:57.63ID:Ak2M/G2h0
単一値って書き間違いかと思うが、内包する要素が単一型のTuple=ある型の可変配列でしょ。それでうまくCの可変StructをSwiftにマップ/ブリッジされていると思うけど

初期化/作成は、
init(mChannelLayoutTag: AudioChannelLayoutTag, mChannelBitmap: AudioChannelBitmap, mNumberChannelDescriptions: UInt32, mChannelDescriptions: (AudioChannelDescription))
で、作成可能のようだけど。Cだと自分で必要バイト数計算してのallocしてのをこの中でやってるでしょ。コピーもこれ使えかな
0917デフォルトの名無しさん (ワッチョイ 55b3-k37M)
垢版 |
2018/05/12(土) 11:23:56.18ID:NQvTiPFY0
定義見たけど AudioChannelDescription[1] が自動変換された結果でしょ
タプルは普通に固定サイズ
allocするサイズが可変だからinitのタイミングじゃ遅い

NSData や UnsafeMutablePointer<UInt8>.allocate で確保することになるから
値型として扱いたいならラッパーを探すか書くかしないと駄目
0920デフォルトの名無しさん (ワッチョイ cb81-2PF3)
垢版 |
2018/05/13(日) 09:13:28.29ID:FE+GfUzy0
>>915
Swiftはwithout CなんだからC配列とかどうでもいいんじゃないの?
C配列使えるObjective-Cなら何も問題はなかったわけだ
それをわざわざSwiftとかいうわけわからん言語導入するからそういう話が出てくる
韓国が日本にやってるような絡み方すんなよもう
0921デフォルトの名無しさん (ワッチョイ cb81-2PF3)
垢版 |
2018/05/13(日) 09:15:02.38ID:FE+GfUzy0
Swiftは自分でC要素排除したんだから、もうCに頼るなCに絡むなまじで
0923デフォルトの名無しさん (ワッチョイ 9b21-C4HX)
垢版 |
2018/05/13(日) 12:30:06.82ID:M2GRXTqJ0
>915です。
じぶんの理解ですが、簡単に言うと、
・SwiftはC構造体をStructとして扱う
・SwiftはC配列をタプルとして扱う
・SwiftはStructを値型として扱う
・C構造体にC配列ポインタではなくC配列自体が含まれる場合には、SwiftでStructとしてコピーした際に固定長Structとしてコピーされ、破壊されてしまう
・なので、この手の構造体をSwiftで扱う場合には、ポインタ+別バッファの組み合わせが必要

ソース晒しておきます。
ttps://github.com/MyCometG3/cutter2/blob/master/cutter2/LayoutConverter.swift
0924デフォルトの名無しさん (ワッチョイ 55b3-k37M)
垢版 |
2018/05/13(日) 12:45:45.14ID:XcX7x9Bh0
>>920-921
Appleが提供してるライブラリがそうなってるんだから
それを使う以上はwithout Cになるわけないじゃん?

というか言語仕様からC要素排除しただけで、Swift環境自体からC要素排除したわけではないよ

↓のソースにも「Unsafe」という文字が沢山あるっしょ
https://github.com/apple/swift/blob/master/validation-test/stdlib/CoreAudio.swift
https://github.com/apple/swift/blob/master/stdlib/public/SDK/CoreAudio/CoreAudio.swift

公式でSwift用のラッパー用意しろよとは思うけど
0925デフォルトの名無しさん (ワッチョイ 55b3-k37M)
垢版 |
2018/05/13(日) 12:55:00.27ID:XcX7x9Bh0
>>922
https://github.com/phracker/MacOSX-SDKs/blob/master/MacOSX10.8.sdk/System/Library/Frameworks/CoreAudio.framework/Versions/A/Headers/CoreAudioTypes.h#L866
> mChannelDescriptions[1]; // this is a variable length array

ややこしくなるのはこれのせい

structの定義サイズからはみ出したメモリ領域も使いますっていうハック的なやり方で
sizeof(構造体)と実際に確保しないといけないメモリサイズが異なる
低レベルAPIでは割とある
0931デフォルトの名無しさん (ワッチョイ 89fa-9WOx)
垢版 |
2018/05/23(水) 19:24:23.07ID:Au5e7VGg0
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

S91U5
0940デフォルトの名無しさん (ササクッテロレ Spdd-UIeE)
垢版 |
2018/06/12(火) 15:37:42.35ID:5yzvUE9vp
クリエイター界かな。
Macを使っているクリエイティビティが必要な界隈。
マジで見かけないんで本当にWindowsなんか誰がどこで使ってるのか謎。
事務所とかの黒っぽいノートパソコンに入ってるらしい
あとマクドナルドで初老の人がマウス繋いで使ってるのはみた。
0942デフォルトの名無しさん (アウアウカー Sa2d-22KU)
垢版 |
2018/06/12(火) 20:45:28.52ID:oQpwY039a
>>940
MacでWindowsが動いてるの見たことあるよ
0945デフォルトの名無しさん (アメ MM05-LxN6)
垢版 |
2018/06/13(水) 09:44:42.61ID:2Ip/PmvHM
マカーってなんですぐ嘘つくの?
嘘つき糞マカーwwwww

https://www.ameet.jp/digital-imaging/2094/
前回の記事から5年経ち、映像制作環境の選択肢はかなり変化した。
Unity ※2 やUE4 ※3 に代表されるゲームエンジンによるリッチなレンダリング、Houdini ※4 やBlender ※5 といった3Dツールの急速なアップデート、クリエイティブコーダー ※6 のMac離れなど ※7 、様々なことが起こった。

※7 主にラップトップ機に搭載されたGPUの性能が低いことが原因。
多くのクリエイターがゲーミングPCなどのwin機へと移行。
0946デフォルトの名無しさん (アメ MM05-LxN6)
垢版 |
2018/06/13(水) 09:53:03.53ID:2Ip/PmvHM
GPUの性能は低いまま、最後の希望WWDCでも何も発表されませんでしたwwwww

WWDCで新しいMacが発表されなかったので、ダークモードになっている
https://japan.cnet.com/article/35120465/
0948デフォルトの名無しさん (ブーイモ MMb6-NcgN)
垢版 |
2018/06/19(火) 12:38:34.57ID:fk4bn8aeM
PagingMenuControllerで、1ダブ〜2タブ目が表示されません。viewDidLoad ではダメで、viewWillAppearでaddSubvirwすると表示されたり、クリックのactionが追加されなかったりします。
また、複数回同じクラスを追加すると、同じインスタンスが呼び出されるようになってしまったのですが誰か原因分かりますか?
0949デフォルトの名無しさん (ブーイモ MMb6-NcgN)
垢版 |
2018/06/19(火) 12:40:54.93ID:fk4bn8aeM
環境はswift4です
0950デフォルトの名無しさん (ブーイモ MMb6-NcgN)
垢版 |
2018/06/19(火) 12:42:45.76ID:fk4bn8aeM
タブの中はcollectionviewで画像です
0951デフォルトの名無しさん (オイコラミネオ MM8f-Mf9B)
垢版 |
2018/06/27(水) 23:34:40.77ID:ncMnCFyxM
そういう風に書いたからだろ
それだけで分かる奴いたら超能力者だわ
その手の不具合はブレイクポイント張りまくって、
ログも出しまくって地道に調べたらだいたい分かるでしょ
0952デフォルトの名無しさん (ワッチョイ 45fa-2e90)
垢版 |
2018/07/04(水) 22:14:19.99ID:gFgZc5FG0
4VE
0958デフォルトの名無しさん (アウアウカー Sa55-jzog)
垢版 |
2018/07/13(金) 12:45:55.14ID:fxcd0vFwa
俺はどうでも良いと思うな
0962デフォルトの名無しさん (ワッチョイ 4923-juwT)
垢版 |
2018/07/17(火) 21:15:46.48ID:yzTvG54n0
最近Swift始めた新人ですが教えてください。
UIControlEventsの定義で構造体なのに { get } という記述があるのが意味不なんですが、
これはどういう意味でしょうか?
もしプロトコル定義だったら「読み取りできるタイププロパティtouchDownを定義しろ」
という意味になると思うんですが、構造体なら「case touchDown」という記述になるじゃないでしょうか??

public struct UIControlEvents : OptionSet {
 public static var touchDown: UIControlEvents { get }
0965962 (ワッチョイ 4923-juwT)
垢版 |
2018/07/18(水) 07:15:12.63ID:KM8lntjZ0
なんとなくわかってきました。
まずcaseを使ってないのは、ビットマスクだからで
{ get }なのは読み取り専用にしたいから、
structでなぜ{ get }みたいな記述が出来るのかは、
NS_OPTIONSマクロがどっかに定義されていてそれが影響してるって感じですよね?
0966デフォルトの名無しさん (ブーイモ MM7b-L7So)
垢版 |
2018/07/19(木) 20:27:42.52ID:5hWYibsQM
1年程 0から勉強して来たが 後「 関数オブジェクト、型のキャスト、クロージャ」この辺が意味不明だw
俺が理解力無いだけなんだが
やっぱりどんなアプリ作り関係なしにこの辺も最低でも理解するべき所ですよね?
0972デフォルトの名無しさん (ワッチョイ cb8b-D20T)
垢版 |
2018/08/20(月) 22:54:38.78ID:/HpQ5J+h0
モバイルアプリのプロトタイプ作成でApp.jsを使うのって主流なんですか?
0977デフォルトの名無しさん (ワッチョイ 9f80-bWaM)
垢版 |
2018/09/18(火) 14:17:55.06ID:oV0RpWqN0
では
ブラウザ(ChromeとかSafariとか)で見てる画像を
保存するアプリを作りたいんだけど
https://joyplot.com/documents/2016/10/14/swift-file-send-recieve/
を見てdocument.typesにpublic.jpegとかを追加したんだが
いざSafariで共有ボタンを押しても
リストの中に自分で開発したアプリのアイコンが現れない

これは一体全体どういうことなのでしょう?
0978デフォルトの名無しさん (スッップ Sdbf-A5bn)
垢版 |
2018/09/18(火) 18:08:31.86ID:Nb2NWinwd
https://i.imgur.com/CofPscR.jpg
XcodeでSwiftによるアプリケーション開発 入門編をやってます。
「行の左に、赤色のエラー記号が表示されています」
と書かれてあるけど、実際には出ないです。
「赤色のエラー記号をクリックすると、エラーに関する詳しい情報が表示されます。クリックしてみてください。
クリックすると、そのコード行が赤色でハイライトされます。右側にエラーの説明が表示されます。
もう一度クリックすると、エラーメッセージが非表示になります。」
左にエラー記号が出ないので、右のエラー記号をクリックしたけれど、何も変わりません。
というか、最初からエラーの行がハイライトされています。クリックしたけれどエラーメッセージの非表示も出来ないです。
事前にXcodeで何か設定が必要なんでしょうか?

https://i.imgur.com/TFii2Wr.jpg
理解度チェックのこの画面が正しい画面なんでしょうか?
0985デフォルトの名無しさん (スップ Sd62-NPCL)
垢版 |
2018/09/23(日) 20:47:04.63ID:v+kGIGR5d
>>984
ありがとうございます
実装しないといけない関数は4つあるんですね…
サイトだと2つしか実装してないのに…

セクションのヘッダー・フッターに関する
2つの関数をとりあえず書いてnilを返しておいたら
ひとまずは無事動作しました!

しかしC言語はやったことあるのですが
iOSとかOOPのお作法が全然理解できなくて辛い…
0988デフォルトの名無しさん (ワッチョイ 3781-oE8l)
垢版 |
2018/10/01(月) 17:56:14.80ID:F0eg/Ivs0
Xcode10.0で、
Main.storyboardでボタン追加しようとしたら、
右下にあった検索窓消えてる!

よくよく見たら、二重丸◎ボタンを押すと、
Objectが選べるのね笑

マジ迷ったな。
レス数が950を超えています。1000を超えると書き込みができなくなります。

ニューススポーツなんでも実況