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
Swift part11 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ 2b11-WRiT)
2017/06/28(水) 17:58:29.74ID:KUDOoNV3086デフォルトの名無しさん (スップ 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で書いたんですけど
ありがとうございます!
助かりました。
ちなみに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がほぼそれなんだし
あくまでもSwiftっぽくなら、Objective-Cのでもええやろ?iOS APIがほぼそれなんだし
89デフォルトの名無しさん (JP 0H8a-FPdr)
2017/07/13(木) 17:57:36.12ID:gLbFU3lkH90デフォルトの名無しさん (ワッチョイ bc7b-svru)
2017/07/13(木) 22:54:25.78ID:60WI1OgY0 Cで出来てることはObjective-Cならそのままできる
91デフォルトの名無しさん (ササクッテロリ Sp39-oIZr)
2017/07/15(土) 09:53:18.00ID:sMrmZnSip92デフォルトの名無しさん (ササクッテロロ Spc1-6W30)
2017/07/16(日) 18:56:33.79ID:h3A0HejCp 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も似たようなもんだけどな
無駄にかっこ無くしたSwiftも似たようなもんだけどな
96デフォルトの名無しさん (ワッチョイ 4611-ReYe)
2017/07/17(月) 10:35:41.40ID:Mc06oZvK0 日本ではSwift大人気だけど、海外だとそれほど人気ないらしいね。
言語ランキングとかだと日本だけ異様に高いらしい。
言語ランキングとかだと日本だけ異様に高いらしい。
97デフォルトの名無しさん (ワッチョイ c66b-svru)
2017/07/17(月) 10:39:22.12ID:VuxDjspY098デフォルトの名無しさん (ワッチョイ 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が美しいとかω
shebangが美しいとかω
100デフォルトの名無しさん (ブーイモ MM98-cMRf)
2017/07/17(月) 16:28:59.78ID:5dSbIPaGM101デフォルトの名無しさん (ササクッテロレ Sp72-6W30)
2017/07/17(月) 22:42:54.90ID:PIFacTeJp スクリプトはPython一強になりつつあるな
コンパイラは何だかんだとJAVA、強者はC/C++で次点にC#が勢いを増しつつある感じ
コンパイラは何だかんだとJAVA、強者はC/C++で次点にC#が勢いを増しつつある感じ
102デフォルトの名無しさん (ワッチョイ 166d-e5K2)
2017/07/18(火) 07:56:20.08ID:Ttzd9ReG0103デフォルトの名無しさん (ワッチョイ d06c-Oo8n)
2017/07/19(水) 00:14:23.59ID:9uIEKdpP0 >>102
wikipedia見ただけだと凄そうなんだけど、どんなところがクソなの?
wikipedia見ただけだと凄そうなんだけど、どんなところがクソなの?
104デフォルトの名無しさん (ワッチョイ ba11-6W30)
2017/07/19(水) 03:21:11.49ID:dfarNNhW0 これからはDNAプログラミングの時代
105デフォルトの名無しさん (ササクッテロリ Sp39-e5K2)
2017/07/19(水) 12:36:23.74ID:BtGwiF1+p >>103
1. 目標として掲げた言語仕様に対する完成度がswift betaくらいに未完成
2. nimソースを他言語ソースにコンバートして、他言語ソースをネイティブバイナリにコンパイルという微妙なコンパイル手法
3. 1, 2に引きずられているのか書いたコードが仕様通りに動かない(バグったコードがバグるんじゃなく、正しいコードがバグる
Python好きだし期待してた頃もあったけど、一向に完成度が上がらないから諦めた
大企業スポンサーがつかない新興言語はどうしようもないんだなって, Apple/IBMがついてるSwiftはまだマシ
1. 目標として掲げた言語仕様に対する完成度がswift betaくらいに未完成
2. nimソースを他言語ソースにコンバートして、他言語ソースをネイティブバイナリにコンパイルという微妙なコンパイル手法
3. 1, 2に引きずられているのか書いたコードが仕様通りに動かない(バグったコードがバグるんじゃなく、正しいコードがバグる
Python好きだし期待してた頃もあったけど、一向に完成度が上がらないから諦めた
大企業スポンサーがつかない新興言語はどうしようもないんだなって, Apple/IBMがついてるSwiftはまだマシ
106デフォルトの名無しさん (ワッチョイ 8411-MZWZ)
2017/07/19(水) 16:09:56.39ID:wHc1xz6Y0 2の手法は良いと思うけどな
まぁ完成しないんじゃどうしようもないけど
まぁ完成しないんじゃどうしようもないけど
107デフォルトの名無しさん (ワッチョイ ace3-z+eH)
2017/07/19(水) 20:32:46.34ID:z7u2kxVf0 コンバートって
なんかの言語がPythonっぽい見た目だったらいいなーと思って作ったのだろうか
なんかの言語がPythonっぽい見た目だったらいいなーと思って作ったのだろうか
108デフォルトの名無しさん (ワッチョイ 96db-XVrW)
2017/07/19(水) 20:34:41.55ID:ydXVL5dr0 ただのトランスコンパイラ
109デフォルトの名無しさん (ササクッテロラ Sp1b-M4aJ)
2017/07/21(金) 13:51:26.30ID:aL8S5b5tp 一応、GCが付いてたりとランタイムに独自機能は乗ってるけどな
SwiftもObjCへのトランスコンパイラとして実装すれば良かったのかもしれないとふと思った
その程度だとApple公式PJになる意義はなかったかもだけど、今のSwiftランタイムの存在意義と比べてトントンじゃね
SwiftもObjCへのトランスコンパイラとして実装すれば良かったのかもしれないとふと思った
その程度だとApple公式PJになる意義はなかったかもだけど、今のSwiftランタイムの存在意義と比べてトントンじゃね
110デフォルトの名無しさん (ワッチョイ 47a9-bWGY)
2017/07/21(金) 20:51:00.68ID:FAsYkEFy0 >>109
objcって中身は動的言語みたいなもんだからメッセージ呼び出しのオーバーヘッドがかなりある。
objcって中身は動的言語みたいなもんだからメッセージ呼び出しのオーバーヘッドがかなりある。
111デフォルトの名無しさん (ワッチョイ bf6b-rqTR)
2017/07/21(金) 21:03:26.40ID:FKHXpg8D0 >>110
と思っていた時期が私にもありました
と思っていた時期が私にもありました
112デフォルトの名無しさん (ササクッテロロ Sp1b-O7UX)
2017/07/21(金) 21:32:57.35ID:vpGxs76Rp 呼び出しのオーバーヘッドもなにもクラス実体があるポインタアドレスに
まるっとデータ送ってるだけだから逆にリンカがコンパイル時に
「ここ」って指定してるのとどこがそんなに違うんですか?的な
まるっとデータ送ってるだけだから逆にリンカがコンパイル時に
「ここ」って指定してるのとどこがそんなに違うんですか?的な
113デフォルトの名無しさん (スプッッ Sd7f-2SPP)
2017/07/21(金) 21:50:28.57ID:P8NTwIcBd メッセージ式って、レシーバーが文字列解析してるとか?
114デフォルトの名無しさん (ワッチョイ 47d1-29Ea)
2017/07/21(金) 22:25:12.37ID:LSoQGIGd0 文字列解析はランタイムだろ
115デフォルトの名無しさん (ワッチョイ 6717-M4aJ)
2017/07/21(金) 22:30:29.43ID:VKToeNQS0 SwiftはObjCと違ってメッセージ呼び出しのダイナミックコールしないから早いんだぜって言ってたな
なお体感できるものだとは思えない
なお体感できるものだとは思えない
116デフォルトの名無しさん (ワッチョイ 6717-M4aJ)
2017/07/21(金) 22:31:33.55ID:VKToeNQS0 すまん語弊があるな、ダイナミックコールしないケースがある、が正しかった
117デフォルトの名無しさん (スッップ Sdff-dDxP)
2017/07/22(土) 15:09:54.42ID:/tUO2w1id まあ何と言われようと、OSX、iOSをここまで発展させてきたObjective-Cの実績は事実として存在している
118デフォルトの名無しさん (ワッチョイ 7fdb-3tmt)
2017/07/22(土) 15:18:51.98ID:95UuPgIe0 apple専用言語だから実績と言われてもピンと来ない
119デフォルトの名無しさん (ササクッテロロ Sp1b-O7UX)
2017/07/22(土) 15:43:16.95ID:vEH50o2zp iOSが毎年更新してるのにアホみたいに安定してる事実が
もう「あたりまえ」だと思われてるんだなぁ…
C/C++製の自分の足下の更新ペースと安定性を忘れきってるのが笑える。
もう「あたりまえ」だと思われてるんだなぁ…
C/C++製の自分の足下の更新ペースと安定性を忘れきってるのが笑える。
120デフォルトの名無しさん (ササクッテロラ Sp1b-3PLk)
2017/07/22(土) 15:59:40.76ID:WZvf35Ulp Cocoa, UIKitで他の言語が使えないからなぁ
ObjCだったから発展したんじゃなく、発展に合わせてObjCが普及したのが事実よな
Swiftでないと使えないという環境がないから普及しねぇ
Carthageも流行らなかったから普及に貢献してないし
ObjCだったから発展したんじゃなく、発展に合わせてObjCが普及したのが事実よな
Swiftでないと使えないという環境がないから普及しねぇ
Carthageも流行らなかったから普及に貢献してないし
121デフォルトの名無しさん (ワッチョイ bf6b-dDxP)
2017/07/22(土) 16:20:59.31ID:S//wJJE60 >>120
Objective-Cだから発展したというよりは、Objective-Cのままでも何ら問題がないということだろう
Objective-Cだから発展したというよりは、Objective-Cのままでも何ら問題がないということだろう
122デフォルトの名無しさん (ワッチョイ 6717-M4aJ)
2017/07/22(土) 21:33:30.66ID:IwEFmDCG0 Carbon(C++)からCocoa(ObjC)に切り替えて選択肢を無くした状態でObjCをゴリ押ししたからな
Swiftのゴリ押し、足りてないよー
Swiftのゴリ押し、足りてないよー
123デフォルトの名無しさん (スッップ Sdff-dDxP)
2017/07/22(土) 22:47:39.39ID:EDEdZkbmd >>122
あの時はそもそもOSが根本的に変わったけどな
あの時はそもそもOSが根本的に変わったけどな
124デフォルトの名無しさん (スッップ Sdff-dDxP)
2017/07/22(土) 22:49:41.31ID:EDEdZkbmd まあObjective-CはJobsが原点回帰(NeXT系譜)した感じだな
125デフォルトの名無しさん (ワッチョイ 47d1-29Ea)
2017/07/22(土) 23:41:33.63ID:QZvpiOv/0126デフォルトの名無しさん (ワッチョイ bf6b-dDxP)
2017/07/23(日) 00:09:20.02ID:+M2gaImH0 Swiftやってる連中はにわかが多いからしゃーない
127デフォルトの名無しさん (ササクッテロラ Sp1b-xsFk)
2017/07/23(日) 02:37:14.48ID:UbY0LF7+p >>118
ソニーが採用してただろ
ソニーが採用してただろ
128デフォルトの名無しさん (ササクッテロロ Sp1b-O7UX)
2017/07/23(日) 02:58:25.19ID:qsgDJx91p 旧MacOSはそういやPascal推しだったの思い出した
129デフォルトの名無しさん (ササクッテロラ Sp1b-3PLk)
2017/07/23(日) 07:21:28.71ID:m5jMFDpep Pascal, C/C++を拒否してObjCに強制誘導してるじゃないか、、、
同じようにSwiftも頼むよー
同じようにSwiftも頼むよー
130デフォルトの名無しさん (ワッチョイ 2748-dkZs)
2017/07/23(日) 08:39:16.33ID:b9v3bw3F0 C/C++が拒否されてるなんて全く感じたこと無いけど
C/C++でバリバリ書かれてるコードにちょっとCocoa APIをObj-Cで呼び出せばプログラムが完成するって感じだと思うけど
ObjCに強制誘導って思うのは、単にMac OS XのAPIを学びたくないからじゃないの?
C/C++でバリバリ書かれてるコードにちょっとCocoa APIをObj-Cで呼び出せばプログラムが完成するって感じだと思うけど
ObjCに強制誘導って思うのは、単にMac OS XのAPIを学びたくないからじゃないの?
131デフォルトの名無しさん (ワッチョイ 47d1-29Ea)
2017/07/23(日) 11:21:23.34ID:FXaeC0G60 強制誘導ってアホか?
Objective-CのベースだってMac OS X/OS X/macOSのバージョンアップによってC++に書き換えられてるし、CoreはCのままだし、OS X/CocoaはほぼNEXT STEPのまんまと言っていいくらい元々Objective-Cだし、IO KitはC++で書けだし
Objective-CのベースだってMac OS X/OS X/macOSのバージョンアップによってC++に書き換えられてるし、CoreはCのままだし、OS X/CocoaはほぼNEXT STEPのまんまと言っていいくらい元々Objective-Cだし、IO KitはC++で書けだし
132デフォルトの名無しさん (ワッチョイ bf6d-29Ea)
2017/07/23(日) 11:40:38.80ID:wBdpKyPw0 >>128
推しというか、Macの開発(ほんとの生み出す開発)はPascal/Assembleで作っていたんだなあというのは、どこぞの博物館で公開されたQuickDraw/MacPaintのソースでわかる
推すも何もそうだったらそうなるだろ、ドキュメントとか。だが、サード開発ではCが大多数(&CでPascal形式API呼ぶのにほぼツーカーで何も問題ない)で、Appleもそれにならうでしかないな
推しというか、Macの開発(ほんとの生み出す開発)はPascal/Assembleで作っていたんだなあというのは、どこぞの博物館で公開されたQuickDraw/MacPaintのソースでわかる
推すも何もそうだったらそうなるだろ、ドキュメントとか。だが、サード開発ではCが大多数(&CでPascal形式API呼ぶのにほぼツーカーで何も問題ない)で、Appleもそれにならうでしかないな
133デフォルトの名無しさん (ワッチョイ 477e-48IU)
2017/07/23(日) 12:24:47.14ID:+emKkgEz0 The 2017 Top Programming Languages
http://spectrum.ieee.org/computing/software/the-2017-top-programming-languages
http://spectrum.ieee.org/computing/software/the-2017-top-programming-languages
134デフォルトの名無しさん (ワッチョイ 477e-48IU)
2017/07/23(日) 12:29:34.74ID:+emKkgEz0 Google Search
Google Trends
Twitter
GitHub
Reddit
などなどを"X programming"っていうテンプレートで検索し、hits countsをrankingしたって事らしい。
Google Trends
GitHub
などなどを"X programming"っていうテンプレートで検索し、hits countsをrankingしたって事らしい。
135デフォルトの名無しさん (ササクッテロラ Sp1b-M4aJ)
2017/07/23(日) 12:31:12.51ID:m5jMFDpep >>130
ObjCをちょっと書かないとmacOS, iOSアプリが作れないように
Swiftをちょっと書かないとモノが作れないくらいのゴリ押しして欲しいなぁと
Appleは作りっぱなしで押さないし、信者はジョブズの聖遺物(ObjC)を崇めるし
Appleがゴリ押しした製品に寄生して銭稼ぎしようとbetaの頃に始めたのに悲しいよ
ObjCをちょっと書かないとmacOS, iOSアプリが作れないように
Swiftをちょっと書かないとモノが作れないくらいのゴリ押しして欲しいなぁと
Appleは作りっぱなしで押さないし、信者はジョブズの聖遺物(ObjC)を崇めるし
Appleがゴリ押しした製品に寄生して銭稼ぎしようとbetaの頃に始めたのに悲しいよ
136デフォルトの名無しさん (ワッチョイ bf6b-29Ea)
2017/07/23(日) 12:40:43.51ID:+M2gaImH0 世界初のWebブラウザはObjective-Cによって産み出された
まあどーでもいいけど、いまやWeb全盛の時代にそういう言語で最新のアプリが作れる環境が与えられてんだから少しくらい感慨というものを感じてもいいんじゃないの
まあどーでもいいけど、いまやWeb全盛の時代にそういう言語で最新のアプリが作れる環境が与えられてんだから少しくらい感慨というものを感じてもいいんじゃないの
137デフォルトの名無しさん (ワッチョイ bf6d-29Ea)
2017/07/23(日) 12:58:28.23ID:wBdpKyPw0 元々アホかなとは思ったが, >>135ぶりからアホってもんじゃねええ。Swift好きにも迷惑だと思うぞ
138デフォルトの名無しさん (ワッチョイ bf6d-29Ea)
2017/07/23(日) 13:19:23.25ID:wBdpKyPw0 >>130
C++を拒否というならSwiftによって/Swiftがだろうな、現在はw
macOS上のSwiftでは、まあ、Objevtive-C++でラッパー書いてそれをSwiftでだが、Linuxでぼちぼちっとじわっと使われているので、はよSwiftでC++のブリッジを(まあ、Cのインターフェースでラッパー作ればいいんだろうけど)
C++ブリッジの予定ないのかなあ
C++を拒否というならSwiftによって/Swiftがだろうな、現在はw
macOS上のSwiftでは、まあ、Objevtive-C++でラッパー書いてそれをSwiftでだが、Linuxでぼちぼちっとじわっと使われているので、はよSwiftでC++のブリッジを(まあ、Cのインターフェースでラッパー作ればいいんだろうけど)
C++ブリッジの予定ないのかなあ
139デフォルトの名無しさん (ササクッテロラ Sp1b-3PLk)
2017/07/23(日) 13:22:04.20ID:m5jMFDpep つ swiftpp
140デフォルトの名無しさん (ワッチョイ bf60-ST9I)
2017/07/23(日) 13:26:14.58ID:KVqGyOG90 Uiview.アニメーション関数を使いたいのですが、uiviewanimationoptionsの選択肢が
でてきれくれません。Youtubeを参考にしながら、optionsの部分をcurveLiniearに
したいのですが・・・cを入力しても候補が一切表示されず途方に暮れています。
どういった原因が考えられますか?助けてください。ゲーム作りたいです。
でてきれくれません。Youtubeを参考にしながら、optionsの部分をcurveLiniearに
したいのですが・・・cを入力しても候補が一切表示されず途方に暮れています。
どういった原因が考えられますか?助けてください。ゲーム作りたいです。
141デフォルトの名無しさん (ワッチョイ bf6d-29Ea)
2017/07/23(日) 13:27:23.92ID:wBdpKyPw0 >>139
macOS/Objevtive-C++ありきのじゃね?
macOS/Objevtive-C++ありきのじゃね?
142デフォルトの名無しさん (ブーイモ MMcf-0FYW)
2017/07/23(日) 13:49:07.88ID:Ach+AE6nM >>127
すげー初耳なんだけど
すげー初耳なんだけど
143デフォルトの名無しさん (フリッテル MM4f-bWGY)
2017/07/23(日) 16:19:01.64ID:rIJW0aWHM rustのメモリ管理の仕組みが採用されたらどんだけ幸せになれんのかな。
そもそもrustごと採用してくれれば良いのに
そもそもrustごと採用してくれれば良いのに
144デフォルトの名無しさん (ワッチョイ 7fe3-E/h9)
2017/07/23(日) 20:38:41.65ID:dr3Y8KYj0 Rust使いがあんまり幸せそうじゃない件
145デフォルトの名無しさん (ワッチョイ 7fe3-E/h9)
2017/07/23(日) 20:39:56.87ID:dr3Y8KYj0 いやそうでもないか…
言語仕様に振り回されてはいるが大概自分に原因を帰着してる
まだ信仰心旺盛なようだ
言語仕様に振り回されてはいるが大概自分に原因を帰着してる
まだ信仰心旺盛なようだ
146デフォルトの名無しさん (ワッチョイ 7f17-PyNh)
2017/07/23(日) 21:47:12.66ID:jwqjM4Na0 Rustなんか採用されたら気が狂うわ
147デフォルトの名無しさん (ワッチョイ 47a9-bWGY)
2017/07/24(月) 07:40:43.41ID:UKDzlT7I0 でも静的にメモリ管理を解決するって
どんだけ良いものか気になるんだよね。
どうせswift5辺りで採用されんだから、先にrustに触って先行学習してても良いかもね。
多分swiftに採用されたら下位互換性また壊れるぜ
どんだけ良いものか気になるんだよね。
どうせswift5辺りで採用されんだから、先にrustに触って先行学習してても良いかもね。
多分swiftに採用されたら下位互換性また壊れるぜ
148デフォルトの名無しさん (ササクッテロラ Sp1b-3PLk)
2017/07/24(月) 07:47:11.93ID:9l5j56yyp149デフォルトの名無しさん (ワッチョイ 476c-d1J2)
2017/07/24(月) 09:18:58.69ID:mOlqqWbM0 >>139
時々見る、この「つ」ってどういう意味?
時々見る、この「つ」ってどういう意味?
150デフォルトの名無しさん (ワントンキン MMbf-Y5fB)
2017/07/24(月) 09:21:05.48ID:3yF9COr6M 三重の県庁所在地じゃない?
151デフォルトの名無しさん (エムゾネ FFff-ea0C)
2017/07/24(月) 09:52:25.50ID:LhEoev6pF >>149
「つ」は、差し出す手のイメージ
「つ」は、差し出す手のイメージ
152デフォルトの名無しさん (フリッテル MM4f-bWGY)
2017/07/24(月) 10:26:23.68ID:1TXRI9GxM153デフォルトの名無しさん (ワッチョイ 476c-d1J2)
2017/07/24(月) 10:27:01.25ID:mOlqqWbM0 >>151
俺には「つ」が手に見えない。手のひら?手の甲?
俺には「つ」が手に見えない。手のひら?手の甲?
154デフォルトの名無しさん (ワッチョイ 476c-d1J2)
2017/07/24(月) 10:29:33.52ID:mOlqqWbM0 >>152
オブジェクトへの参照が1個、複数の別で、
unique_ptr, shared_ptrを使い分ける。
参照するだけで、所有しないweak_ptrってのもある。
要するにリファレンス・カウント式のメモリ管理なのだ。
Objective-Cの設計をC++が取り入れたのかな?
オブジェクトへの参照が1個、複数の別で、
unique_ptr, shared_ptrを使い分ける。
参照するだけで、所有しないweak_ptrってのもある。
要するにリファレンス・カウント式のメモリ管理なのだ。
Objective-Cの設計をC++が取り入れたのかな?
155デフォルトの名無しさん (ワッチョイ 476c-d1J2)
2017/07/24(月) 10:30:53.63ID:mOlqqWbM0 ちなみに、俺はC++を最近全然使ってない。C++詳しい人、
unique_ptr, shared_ptr, weak_ptr
の解説、よろしこ!
unique_ptr, shared_ptr, weak_ptr
の解説、よろしこ!
156デフォルトの名無しさん (フリッテル MM4f-bWGY)
2017/07/24(月) 10:47:25.46ID:1TXRI9GxM >>154
ただのリファレンスカウント方式ならrustとは違うで。
ただのリファレンスカウント方式ならrustとは違うで。
157デフォルトの名無しさん (ワッチョイ 6717-M4aJ)
2017/07/24(月) 10:49:27.16ID:d8RjP+270 逆だよ、C++のshared_ptrをObjCのARCに文法糖衣で取り込んだんだよ
>>152
unique_ptrは元々C++ boostのライブラリとして提供してたから出来るでしょ
ObjCもSwiftもそういう機能はライブラリじゃなく文法で取り込みたがるから言語更新待ちになるだけで
>>152
unique_ptrは元々C++ boostのライブラリとして提供してたから出来るでしょ
ObjCもSwiftもそういう機能はライブラリじゃなく文法で取り込みたがるから言語更新待ちになるだけで
158デフォルトの名無しさん (フリッテル MM4f-bWGY)
2017/07/24(月) 10:49:41.82ID:1TXRI9GxM リファレンスカウントは全然静的に解決しているメモリ管理機構じゃない。
rustのやり方はコンパイル時に指摘してくれるけど、リファレンスカウントはけっきょく動的に解決するわけだし。
それならとっくにswiftで実現してるし。ARCだろ。
rustのやり方はコンパイル時に指摘してくれるけど、リファレンスカウントはけっきょく動的に解決するわけだし。
それならとっくにswiftで実現してるし。ARCだろ。
159デフォルトの名無しさん (ワッチョイ 476c-d1J2)
2017/07/24(月) 11:07:27.25ID:mOlqqWbM0 >>157
Boost Software License - Version 1.0 - August 17th, 2003
って事は、Boostの方が歴史が古そうですなぁ。ObjCよりも。
俺、誤解してたわぁ。
Boost Software License - Version 1.0 - August 17th, 2003
って事は、Boostの方が歴史が古そうですなぁ。ObjCよりも。
俺、誤解してたわぁ。
160デフォルトの名無しさん (ワッチョイ 476c-d1J2)
2017/07/24(月) 11:11:24.98ID:mOlqqWbM0 Apple Inc. deploys ARC in their operating systems, such as macOS (OS X) and iOS.
Limited support (ARCLite)[5] has been available since Mac OS X Snow Leopard and iOS 4,
with complete support following in Mac OS X Lion and iOS 5.[6] Garbage collection was declared deprecated in OS X Mountain Lion,
in favor of ARC, and removed from the Objective-C runtime library in macOS Sierra.[7][8]
ref. en.Wikipedia://ARC
ARC Liteの出現は、2009, Snow Leopardからみたい。
Limited support (ARCLite)[5] has been available since Mac OS X Snow Leopard and iOS 4,
with complete support following in Mac OS X Lion and iOS 5.[6] Garbage collection was declared deprecated in OS X Mountain Lion,
in favor of ARC, and removed from the Objective-C runtime library in macOS Sierra.[7][8]
ref. en.Wikipedia://ARC
ARC Liteの出現は、2009, Snow Leopardからみたい。
161デフォルトの名無しさん (フリッテル MM4f-bWGY)
2017/07/24(月) 12:00:46.09ID:1TXRI9GxM rustのメモリ管理の仕組みを見てきたけどプリプロセッサで何とかなるというものじゃなかったから、
c++ならあると言うものじゃなかった。
言語仕様から改変か必要なものだったよ。
簡単に言えば、メモリの参照は一箇所に制限されて、そこからしかアクセスできないようにする。
たから、もしswiftでrustのメモリ管理機構が導入されたら、
100%既存のコードでは動かないし単純に変換もできない。
ロジックの見直しが必要だからね。
例えば配列にループアクセス中は
配列に対する変更操作はすべてコンパイルエラーになる。とか。
c++ならあると言うものじゃなかった。
言語仕様から改変か必要なものだったよ。
簡単に言えば、メモリの参照は一箇所に制限されて、そこからしかアクセスできないようにする。
たから、もしswiftでrustのメモリ管理機構が導入されたら、
100%既存のコードでは動かないし単純に変換もできない。
ロジックの見直しが必要だからね。
例えば配列にループアクセス中は
配列に対する変更操作はすべてコンパイルエラーになる。とか。
162デフォルトの名無しさん (ワッチョイ df6c-HXaS)
2017/07/24(月) 12:08:11.82ID:kuRPbSwp0 いやownership manifesto読めよお前ら
全部書いてあんのに
全部書いてあんのに
163デフォルトの名無しさん (ワッチョイ bf6d-29Ea)
2017/07/24(月) 14:33:26.45ID:wWQbQtbc0164デフォルトの名無しさん (ワッチョイ 476c-d1J2)
2017/07/24(月) 15:17:51.01ID:mOlqqWbM0 >>161
「メモリの参照は一箇所」
まあ、そうかもしれんけど、俺の理解では参照カウントを1以上に上げない
様なメモリ管理ポリシーを実践する事で、メモリリークは防げると思う。
それから、Instrumentsとdebuggerを活用するのが吉。
最近気がついたのが、command+IでInstruments leaksを起動して捕捉出来なかったメモリリークが、不思議な事に、break pointで一旦止めてdebuggerからInstruments leaksを起動すると捕捉できるんだよねぇ。
「メモリの参照は一箇所」
まあ、そうかもしれんけど、俺の理解では参照カウントを1以上に上げない
様なメモリ管理ポリシーを実践する事で、メモリリークは防げると思う。
それから、Instrumentsとdebuggerを活用するのが吉。
最近気がついたのが、command+IでInstruments leaksを起動して捕捉出来なかったメモリリークが、不思議な事に、break pointで一旦止めてdebuggerからInstruments leaksを起動すると捕捉できるんだよねぇ。
165デフォルトの名無しさん (ワッチョイ 5f91-lcSO)
2017/07/24(月) 22:22:24.32ID:QNE9e6LM0166デフォルトの名無しさん (ササクッテロル Sp1b-O7UX)
2017/07/24(月) 22:26:31.27ID:AAnKdxV0p =ア 【はい】
こういうのも👉に見えてなかったとか…
こういうのも👉に見えてなかったとか…
167デフォルトの名無しさん (ワッチョイ e711-E/h9)
2017/07/24(月) 22:40:40.19ID:Ip9wN0np0168デフォルトの名無しさん (ワッチョイ df6c-HXaS)
2017/07/24(月) 22:52:15.68ID:kuRPbSwp0 ノシ
169デフォルトの名無しさん (ワッチョイ e711-ea0C)
2017/07/24(月) 23:24:01.06ID:J5SFZDQ/0 >>153
手の平。
https://nanapi.com/ja/25657
https://m.chiebukuro.yahoo.co.jp/detail/q1410591729?__ysp=MmNoIOOBpA%3D%3D
[つ]は手を表現しています。
例えば、[( ・∀・)つ旦]というAAでしたら
旦はお茶のAAですので、
お茶をハイ、と差し出している様子を表しています。
2ちゃんねるでは省略形をよく用いますので
顔文字が省略されて[つ]のみで使用されます。
>>165
まじっす!
手の平。
https://nanapi.com/ja/25657
https://m.chiebukuro.yahoo.co.jp/detail/q1410591729?__ysp=MmNoIOOBpA%3D%3D
[つ]は手を表現しています。
例えば、[( ・∀・)つ旦]というAAでしたら
旦はお茶のAAですので、
お茶をハイ、と差し出している様子を表しています。
2ちゃんねるでは省略形をよく用いますので
顔文字が省略されて[つ]のみで使用されます。
>>165
まじっす!
170デフォルトの名無しさん (ワッチョイ 6797-cAwC)
2017/07/25(火) 00:35:48.08ID:pCPhayDn0 つ⌒□
馬券、車券、くじ券をすてている
馬券、車券、くじ券をすてている
171デフォルトの名無しさん (ワッチョイ 476c-d1J2)
2017/07/25(火) 11:28:49.52ID:uSdVU4/I0172デフォルトの名無しさん (ササクッテロラ Sp1b-xsFk)
2017/07/25(火) 13:50:52.52ID:gFjyvyPjp わかんねー奴の方が少数だから
173デフォルトの名無しさん (ワッチョイ 2748-dkZs)
2017/07/25(火) 18:36:52.92ID:MoMVyAkE0 >>135
つまりは皆が出来ないうちに自分だけはSwiftを沢山書けるようになっておけば、Swiftがゴリ押しされたときに先行者利益を得られると思ったけどそうはならなかったから悲しいってことだろ?
別にAppleが推してないなんてことないと思うし、Obj-Cを崇めてる奴なんていないと思うし、Swiftはまだまだバージョンごとに変更がある割には十分普及してると思うけどな
大体Swiftをちょっと書かないと作れないぐらいのレベルだったら大してSwiftの知識もいらないと思うし銭稼ぎできるようなもんでもないと思うんだけどな
はじめにObj-C使わなきゃいけなくなったときに本1,2冊ぐらいしか買ってないし、Swiftに関してはお金まったく書けてないし、金稼ぎできる要素がある気がしない
>>138
C++をブリッジするとなるとC++の複雑な機能全てをブリッジ出来なきゃ有用性が落ちそう
限定された機能で書かれたC++コードだけブリッジしてくれるとかだと結局C++側がそれ以外の機能使ってたらラッパー書かなきゃいけなくなるし、落とし所が難しそう
つまりは皆が出来ないうちに自分だけはSwiftを沢山書けるようになっておけば、Swiftがゴリ押しされたときに先行者利益を得られると思ったけどそうはならなかったから悲しいってことだろ?
別にAppleが推してないなんてことないと思うし、Obj-Cを崇めてる奴なんていないと思うし、Swiftはまだまだバージョンごとに変更がある割には十分普及してると思うけどな
大体Swiftをちょっと書かないと作れないぐらいのレベルだったら大してSwiftの知識もいらないと思うし銭稼ぎできるようなもんでもないと思うんだけどな
はじめにObj-C使わなきゃいけなくなったときに本1,2冊ぐらいしか買ってないし、Swiftに関してはお金まったく書けてないし、金稼ぎできる要素がある気がしない
>>138
C++をブリッジするとなるとC++の複雑な機能全てをブリッジ出来なきゃ有用性が落ちそう
限定された機能で書かれたC++コードだけブリッジしてくれるとかだと結局C++側がそれ以外の機能使ってたらラッパー書かなきゃいけなくなるし、落とし所が難しそう
174デフォルトの名無しさん (スッップ Sdff-dDxP)
2017/07/25(火) 21:49:06.28ID:GBfCSeDrd Swiftの完成度が最初から高ければ状況は違ったかもな
あとむだにWithout Cに走ったのは筋が悪かったと思うわ
あとむだにWithout Cに走ったのは筋が悪かったと思うわ
175デフォルトの名無しさん (ワッチョイ e711-E/h9)
2017/07/25(火) 22:11:09.32ID:GZGsW4rL0 C++ブリッジってそれもうwith C++だからな
テンプレート除けばそれなりに出来るだろうけど
テンプレート除いたC++に対応したところでだから何なのって話になるし
テンプレート除けばそれなりに出来るだろうけど
テンプレート除いたC++に対応したところでだから何なのって話になるし
176デフォルトの名無しさん (ワッチョイ bf6b-29Ea)
2017/07/26(水) 00:11:43.09ID:f0n9OFYu0 Without Cをぶち上げたんだからもうCに関わるなよ
韓国人かよ...
韓国人かよ...
177デフォルトの名無しさん (スッップ Sdff-dDxP)
2017/07/26(水) 00:29:39.23ID:qL2o6nlmd Cライクforもインクリメント、デクリメントもなくす無駄な徹底ぶりだからな
178デフォルトの名無しさん (ワッチョイ dfea-O7UX)
2017/07/26(水) 06:41:21.77ID:3wgr+b8u0 Pythonぽくて好きよ
179デフォルトの名無しさん (ワッチョイ 6783-bWGY)
2017/07/26(水) 12:41:46.12ID:p1ZvRLSy0 なんかswiftどんどん構文追加して複雑になってないか?
phpみたい
phpみたい
180デフォルトの名無しさん (ワッチョイ 27ed-M4aJ)
2017/07/26(水) 12:46:08.87ID:0VRUk0dC0 せめてObjCみたいって言ってくれよ
181デフォルトの名無しさん (ブーイモ MMff-0FYW)
2017/07/26(水) 12:53:13.70ID:3gkHvmLyM182デフォルトの名無しさん (ワッチョイ e711-msIr)
2017/07/26(水) 13:24:53.92ID:aZ/eqHae0 Without Cは言語仕様(構文)の話
183デフォルトの名無しさん (ワッチョイ df0d-wITz)
2017/07/26(水) 16:59:40.71ID:2aPuu4440 むしろ、Objective-Cの「インスタンスは母体クラスに[おまえのインスタンスを作れ]命令で作成します」とか
「クラス間の通信はクラス[命令:引数]で明示的に他のクラスに実行させてるとわかります」が好きだったので
そのあたりswiftが「退化」しちゃったのが嫌。
言語仕様とクラス仕様が分離しててクラスライブラリだけ進歩してくとか
ソース内で自他の表記がしっかり別れてて「ここであいつがこれやって次…」
と読めるのが気に入ってたのに
他のグチャグチャモダン言語と同じ言語仕様変更地獄と
ソースになんだかわからない誰かが作った記号が普通に混じりますって
これ、ずっとプログラミング文化の発展阻害してた奴だ…と
「クラス間の通信はクラス[命令:引数]で明示的に他のクラスに実行させてるとわかります」が好きだったので
そのあたりswiftが「退化」しちゃったのが嫌。
言語仕様とクラス仕様が分離しててクラスライブラリだけ進歩してくとか
ソース内で自他の表記がしっかり別れてて「ここであいつがこれやって次…」
と読めるのが気に入ってたのに
他のグチャグチャモダン言語と同じ言語仕様変更地獄と
ソースになんだかわからない誰かが作った記号が普通に混じりますって
これ、ずっとプログラミング文化の発展阻害してた奴だ…と
184デフォルトの名無しさん (ワッチョイ df6c-HXaS)
2017/07/26(水) 17:12:34.07ID:X3I7XP0c0185デフォルトの名無しさん (ワンミングク MMbf-Y5fB)
2017/07/26(水) 17:16:43.62ID:jBsCP9tYM >>184
いやわかるよ
いやわかるよ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- アメリカ、入国時に「日本人を含む外国人観光客の最大5年分のSNS履歴の提出」義務化へ 過去10年間に使用のメールアドレスや電話番号等も★2 [Hitzeschleier★]
- 立憲・小宮山議員、「牛乳=白い水」投稿を削除 批判殺到で「大変失礼申し上げました」 [少考さん★]
- 【中国外務省】日本への渡航自粛を再度呼びかけ 今度は「地震発生」を理由に [ぐれ★]
- 日本語が話せない「外国籍」の子が急増中、授業がストップ、教室から脱走も…先生にも大きな負担「日本語支援」追いつかず★3 [七波羅探題★]
- 内閣支持、微減59.9% 5割超が補正予算評価 時事通信世論調査 [どどん★]
- 【芸能】デパートで見つけたランドセルが衝撃価格! つまみ枝豆「どこかで規制しないと」に共感の声殺到 「全て同感」「高すぎます」★2 [冬月記者★]
- 愛国者「コピーという言葉は、文脈によって複数の意味を持ちます。これは事前通告とは言わない。」 [834922174]
- 【高市遺産】 ユネスコさん。日本の「匠の技」「屋台」「和紙」などを無形文化遺産に登録 🎉🎊 [485983549]
- 1時間後に退職を伝える😡
- 日本人のコメ離れが深刻、おまえらなんでコメ食わないんだ??? [974680522]
- 【画像】クリスマスケーキの予約の電話をしたんだけどすでに予約がいっぱいで断られちゃったよ…
- 自民党のヒゲ「トランプおやびんが中国に何も言ってくれない」 [834922174]
