プログラミング言語Swift Part4 [無断転載禁止]©2ch.net

2017/06/27(火) 17:14:15.57ID:Hr6JyBjm0
>>47
これ?
https://stackoverflow.com/questions/24101718/swift-performance-sorting-arrays

なんか全く違うこと書いてる気がするんですけど
2017/06/27(火) 20:55:35.69ID:pNkPwliw0
おぷちまいずの有無でこんなに差があるってどうしたことやねんとは思うな
「こんなに」ってれべるじゃねーって感じw
2017/06/28(水) 06:07:00.53ID:dI1ZRAl10
そのページコメント欄の
Learn OpenGL ESってひとの書き込みが
わかりやすいかと。
言うほど差は無くないか?
2017/06/28(水) 13:22:05.20ID:Vq2TH+MW0
その人のはオプティマイズ有りきでしか言ってね?オプティマイズの有無がというのではないだろう
2017/06/28(水) 15:02:06.17ID:feiqJCoM0
え?標準のオプティマイズ無しでパフォーマンス語って何の意味があるの?
2017/06/28(水) 18:19:34.12ID:Vq2TH+MW0
って、>>53の最もいいねwって付いているのに及び付けてるのに言いに行けば?
何言ってんの?頭大丈夫?と思われるだけだと思うがw
2017/06/28(水) 21:50:10.42ID:feiqJCoM0
ド素人かな
-Ononeはデバッグ用であって速さなんか誰も求めてないぞ?
遅くなってもいいから色んなデバッグ用に有用な情報を埋め込むモードだぞ?
頭大丈夫?
2017/06/28(水) 23:43:55.56ID:Vq2TH+MW0
>>59
-O 自体はオプションであってなければコンパイルできないわけじゃないぞ?玄人さん
ちなみにちゃんとしたデバッグオプションは別にあるけどな

どうも、オプティマイズの意味がわかってなさそうにしか見えないな。デバッグ用って言い切ってしまうあたり、すげえな自称ど素人じゃない人はw
(ちなみに一般的にオプティマイズするとほげほげな場合もまあ稀にあるとかないとかw)

てか、なにをオプティマイズありきに必死なの?オ
プティマイズ有無でこんな差があるのは珍しすぎる、いったいなんなんだ?という技術的w興味は普通わくだろうと思うんだがな、自称ど素人じゃない人なら尚更
ただ、それだけだよ?
2017/06/29(木) 00:20:19.33ID:lD0R4OzI0
良くある最適化のトラブルとしては、基本的なインライン展開なんかでさえ期待通りに動かなくなるケースはあるから、デバッグというか、問題の切り分けに最適化なし。で走らせてみる必要がある。ってのは別に間違ってないと思うんだけど。
Swiftがどういうステップで機械語を作ってるか知らないけど、配列操作の話題については、ループの最適化とか、並列処理への展開とか、するしないで激烈に性能差が出るのも、まあ、そんなものだと思うし。
どの辺が問題なのかよくわかんない。
2017/06/29(木) 00:59:43.51ID:+CkROhDl0
何も分かってなさそうなやつが技術的興味とか笑かすわ
63名称未設定 (スプッッ Sdc2-OatX)
垢版 |
2017/06/29(木) 08:04:31.07ID:i/TjNHL0d
生成されるllvmコードを比較すりゃ良いだけ
2017/06/29(木) 08:16:07.02ID:3xD8aBqp0
>>63
llvmコード 読めるのか
すげーな
2017/06/29(木) 12:13:37.96ID:6R9S/rjX0NIKU
release設定ではデフォルトでオプティマイズ有りだしドキュメントにもオプティマイズしろって書いてあるし
逆にオプティマイズしたらデバッガがトレースできなくなるからdevelopビルドはデフォではオプティマイズされてない。
だからSwiftでreleaseするにはオプティマイズ有りきが前提でしょ
2017/06/29(木) 12:16:52.34ID:5wTQh4SOpNIKU
あれは全然人間が読めるコードじゃん、、、
むしろ、嗜みとして読めるようになっとけよ
2017/06/29(木) 13:35:36.43ID:3xD8aBqp0NIKU
>>66
すげーな
例えばllvmコードでFizzBuzz問題を書くとどんな感じになるの?
2017/06/29(木) 15:40:29.67ID:5wTQh4SOpNIKU
swiftでFizzBuzz問題のコード書いてemit-llvm-irとかでダンプしれ
その環境もないなら知らんわ
69名称未設定 (ニククエ 2dd9-ddzC)
垢版 |
2017/06/29(木) 15:52:53.03ID:k3Vsu0VT0NIKU
>>68
>emit-llvm-ir
ir = intermidiate representationなのね

Web Assembliesにllvmのコードが使われるって聞きました。
なんの事かよく知らんですけど、ブラウザで3Dゲームできるんだってねぇ。
2017/06/29(木) 19:08:15.98ID:3xD8aBqp0NIKU
>>68
「llvm fizzbuzz」でググったら出てきたわ
2017/06/30(金) 15:53:23.24ID:tKeIdFOUp
おう、良かったな。これでお前もLLVMコード読めるようになったじゃん。
すげーな
2017/06/30(金) 16:15:43.80ID:/Gd3ljh80
情報処理試験でCASL選択してたから余裕だったわ
73名称未設定 (ワッチョイ 2dd9-ddzC)
垢版 |
2017/06/30(金) 16:30:38.81ID:uEaqeql60
>>72
情報処理試験、Java選択してラッキーで合格した。
危なかった。
2017/06/30(金) 18:41:30.72ID:4ILxZYiVd
英語ができないから困った。
2017/07/02(日) 17:41:34.20ID:3QihPFXU0
>>49
だからさ、Cに頼るならObj-Cでよくね?
2017/07/02(日) 18:14:11.56ID:teNLnf+A0
Obj-Cは臭いし
2017/07/02(日) 19:30:18.59ID:wNTg6Zs00
swift使ってる奴のニセモノ感
2017/07/02(日) 21:41:02.03ID:teNLnf+A0
Obj-C使ってる奴の老害感
79名称未設定 (ワッチョイ 6d89-QA6g)
垢版 |
2017/07/03(月) 19:56:16.13ID:Oe7cPjto0
Obj-C、ワンポイント・レッスン

メソッド定義
(戻値)Keyword1:(型)arg1 Keyword2:(型)arg2 Keyword3:(型)arg3
メソッド呼出
[レシーバー Keyword1:arg1 Keyword2:arg2]
80名称未設定 (ワッチョイ 6d89-QA6g)
垢版 |
2017/07/03(月) 20:03:10.18ID:Oe7cPjto0
Obj-Cワンポイント
クラスの定義
@interface MyClass: NSObject {
NSString* message;
}
-(void)setMessage:(NSString*) str;
-(NSString*)message;
-(void)printMessage;
@end
クラスの実装
@implementation MyClass
-(void)setMessage:(NSString*) str {
message = str;
}
-(NSString*)message {
return message;
}
-(void)printMessage {
NSLog(@“%@“, message);
}
@end
81名称未設定 (ワッチョイ 6d89-QA6g)
垢版 |
2017/07/03(月) 20:14:27.49ID:Oe7cPjto0
Obj-Cワンポイント
インスタンス変数
@interface MyClass: NSObject {
NSString* message; // インスタンス変数
}
// インスタンス変数のプロパティ化
@property NSString* message;
@end
プロパティの実装
@implementation MyClass
@synthesize message;
@end
2017/07/03(月) 20:24:07.40ID:ipKiHhaqp
これは老害ですわ
なんでこんな古いObjCの記述をするんだよw

Modern Objective-Cを学び直すか、ObjCを捨ててSwiftを学ぶべきだな
83名称未設定 (ワッチョイ 5d3e-ddzC)
垢版 |
2017/07/03(月) 20:25:55.43ID:OHa8N9Mz0
昔覚えた内容のまま勉強してなさそう
84名称未設定 (ワッチョイ 6d89-QA6g)
垢版 |
2017/07/03(月) 21:11:40.36ID:Oe7cPjto0
>>82
じゃぁ、Modern Objective-Cを教えて!
85名称未設定 (ワッチョイ 6d89-QA6g)
垢版 |
2017/07/03(月) 21:16:53.75ID:Oe7cPjto0
Adopting Modern Objective-C
こんなん、見つけた。
2017/07/03(月) 21:21:52.45ID:kyA3jQmf0
最寄りのObjCスレをお訪ね下さい
2017/07/03(月) 21:24:06.77ID:Ws9FB70U0
#import <FrameWork/lib.h>
@interface MyClass : SuperClass
@property NSString *message;
- (void)printMessage;
@end

#import “MyClass.h”
@implementation MyClass
- (void)printMessage
{
NSLog(@“%@“, _message);
}
@end
88名称未設定 (ワッチョイ 2dd9-ddzC)
垢版 |
2017/07/04(火) 08:46:53.91ID:SYB/170I0
>>87

@synthesize message;
って不要なのか?

それから、_messageってインスタンス変数が宣言されてない様だが、
@propertyで暗黙的に宣言されるって事か?
2017/07/04(火) 08:54:22.69ID:b7D9LWA40
スレチを続けてる奴は老害というより単なるガイジだな
2017/07/04(火) 08:54:57.93ID:Qxx0eL4C0
>>88
そうだよ、古いなあw
91名称未設定 (ワッチョイ 5d3e-ddzC)
垢版 |
2017/07/04(火) 09:15:51.10ID:m/Gv5Z480
こっちでやれ

Objective-C [ObjC part:8.1];
http://mevius.2ch.net/test/read.cgi/tech/1414816517/
92名称未設定 (ワッチョイ 2dd9-ddzC)
垢版 |
2017/07/04(火) 09:18:17.07ID:SYB/170I0
>>87
>@property NSString *message;

@property (copy)NSString *message;
って書きかえろ!とwarningが出た。

これがModern Objective-Cなのか?
2017/07/04(火) 19:38:15.12ID:yMyy0KAw0
mutable/immutableをクラス分けでしか表現できない残念モダンなObjC
2017/07/04(火) 20:33:53.81ID:OZ38R0xE0
新概念!が出るたびに言語仕様に直接組み込んでは
後で仕様グダグダになる【モダン】より
なんでも「クラスの仕様です」で済ますObj-Cの方が
実はスマートなんじゃないかとずっと
2017/07/04(火) 21:06:00.57ID:9wEk0DKE0
ずっと?
2017/07/04(火) 22:11:03.46ID:Qxx0eL4C0
たいして変わんねえよ
2017/07/04(火) 22:55:14.38ID:yMyy0KAw0
Fast Enumだの@synthesisだのドット記法だの@リテラルだのBlocksだのinstancetypeだの...
ObjCほど後から後から醜いツギハギだらけの言語も無いと思うがね
2017/07/04(火) 23:37:51.97ID:GHKbda4D0
最初からCとオブジェクト機能を糊で貼り合わせたつぎはぎですしおすし
2017/07/05(水) 00:26:25.39ID:n9UY77Jq0
ObjectiveCを基準にすれば、他のだいたいのものは良いものだ。
2017/07/05(水) 03:23:30.19ID:tWDskeeGa
ずっとを最後に置くのはJ-Pop
2017/07/06(木) 08:24:03.45ID:wwtqdPx9p
>>97
その都度、新概念!素晴らしい!って絶賛続けた信者はスゴイ
Swiftも新言語!素晴らしい!って受け入れてくれればこうはならなかったろうに
2017/07/15(土) 10:59:18.56ID:f8adSER/M
DelphiかPysonで頼む
2017/07/17(月) 10:59:26.96ID:JU0JC70W0
>>98
おれはむしろそれが強みだと思ってるけどな
Cのソースがそのまま使えるなんて他言語ではないだろ
2017/07/17(月) 13:44:12.30ID:FFG/PowU0
NSObjectの上にCのソース貼るだけでもうクラスとして取り回しできるしな
2017/07/17(月) 13:53:18.01ID:JU0JC70W0
それをわかってくれるかぁ ゜*。(*´Д`)。*°
106名称未設定 (ワッチョイ c73e-29Ea)
垢版 |
2017/07/24(月) 13:42:45.73ID:0gmw+sp20
C++のfriend相当とか、Objective-Cのprotected相当のアクセス指定が欲しいな…
2017/07/30(日) 00:31:14.82ID:VamqXWED0
今のswiftで書いたアプリってMavericksではもう動かせんの?
108名称未設定 (ワッチョイ 4fd9-C+ox)
垢版 |
2017/08/02(水) 10:03:45.80ID:U0+1Pe9L0
>>107
Deployment Targetを10.6にしてやれば良いんじゃない?
そすれば、Mavericksどころかその前までOKかも。
2017/08/04(金) 20:34:31.27ID:gDYUh1090
mozc for iOS使おうと思ったら、日本語の変換候補が出てこない…(泣)
どうしたらいいんだよ…
2017/08/13(日) 13:03:17.45ID:0l+ExbA30
appstoreって2つのアカウント作って別名で登録してもいいの?
111名称未設定 (ワッチョイ 9789-xbpo)
垢版 |
2017/08/14(月) 19:01:32.69ID:IYYDr/y20
>>110
Apple IDを2つ作るって事?
Developer用Apple IDと、non-Developer用Apple ID2つ作ってる人は多いのでは?
2017/08/14(月) 20:51:18.74ID:DAjkqjQm0
>>111
2つのサークル別々に開発して作者名をかえたいの
113名称未設定 (ワッチョイ 733e-MmNF)
垢版 |
2017/09/01(金) 22:58:50.70ID:AsewW5Hc0
可変個の引数から別の可変個引数に、可変個扱いのまま渡す方法ってありますか?

func f(_ args: Any...) {
  sub(args) //これだと引数1個扱い
}
func sub(_ args: Any...) {
  
}
114名称未設定 (ワッチョイ 733e-MmNF)
垢版 |
2017/09/01(金) 23:18:07.75ID:AsewW5Hc0
補足
Array版を作るしかない?

func f(_ args: Any...) {
  sub(args)
}
func sub(_ args: Any...) {
  sub(args)
}
func sub(_ args: [Any]) {
  
}
2017/09/02(土) 00:56:49.48ID:15pBsg3N0
withVaListを使えばできるのかもしれないけど
Array版作ったほうが良さそう
https://stackoverflow.com/a/29401619
116名称未設定 (ワッチョイ 733e-MmNF)
垢版 |
2017/09/02(土) 06:14:40.94ID:OjeSc+FO0
>>115
ありがとうございます。
Cのva_list用で、可変個を可変個で、ってものではなさそうですね。
117名称未設定 (ワッチョイ 9163-b06s)
垢版 |
2017/11/16(木) 19:00:05.10ID:aijA5I6o0
UIApplication.shared.isNetworkActivityIndicatorVisibleはiPhone Xでは表示されないんかな?
118名称未設定 (ワッチョイ bd3e-b06s)
垢版 |
2017/11/16(木) 23:42:02.51ID:34jOvPxv0
表示されないっぽい
代替表示用してくれても良さそうなものを…
119名称未設定 (ワッチョイ bd3e-b06s)
垢版 |
2017/11/16(木) 23:42:52.24ID:34jOvPxv0
用して→用意して
120名称未設定 (ワッチョイ 07d1-5Bhd)
垢版 |
2017/11/25(土) 22:29:47.69ID:IlS9zeHP0
Macの市販アプリってGUIの表示がアプリ毎に違ってるけど
あれってMacの標準GUIの見た目だけカスタマイズしてるの?
それともGUIの仕組み自体を自前でプログラムで作ってるの?
121名称未設定 (ワッチョイW 5fcf-YPpG)
垢版 |
2017/11/26(日) 20:24:01.52ID:ybDI8cNy0
swiftでかいてるならだいたいカスタマイズ
unityとかなら全部てづくりかも
2017/12/10(日) 02:08:33.85ID:ugNCn7SFp
OpenGLとかMetal使ってるなら手作りするかそれ用のGUIライブラリ使うやろ
2017/12/29(金) 11:52:17.54ID:rll8YAgo0
今年も来た

詳解Swift第4版 荻原剛志(著)
https://www.amazon.co.jp/dp/B078ML9XZM/
2017/12/31(日) 09:59:48.55ID:gJX6c+E8M
第3版、まだ読みきってないのに
2018/01/01(月) 12:35:56.74ID:+6cLyIH40
詳解Swiftっていまいち詳解じゃないよね
載ってないこと多すぎ
126 【中吉】 【84円】 (ワッチョイ 6f3e-76Te)
垢版 |
2018/01/01(月) 13:25:54.42ID:nJ/vr14C0
言語仕様という点で日本語書籍でこれより詳解なのある?
2018/01/01(月) 13:52:43.36ID:L4dz/sdf0
Apple公式の奴を翻訳してくれたらそれで十分なんだけどな
あれ結構分かりやいいし
2018/01/01(月) 14:23:40.44ID:+6cLyIH40
>>126
ないな
日本語では一番・詳解Swift
って書名なら正しい
2018/01/01(月) 14:24:10.89ID:+6cLyIH40
間違えた
2018/01/01(月) 17:10:11.61ID:KvUlUoyq0
お、今回はKindle版も同時発売か
でも固定レイアウトなのね
2018/01/01(月) 17:11:31.53ID:ee2U5jcop
買い替えじゃなくてアップデートされるなら電子版買いたいな
2018/01/02(火) 18:40:27.20ID:uwzsrovu0
>>127 それがあれば一番だね

今回はiBooksStoreにも出てるよー
なぜかKindle版よりちょっと高いけど
2018/01/02(火) 19:35:40.27ID:8V3beYLz0
本読むくらい熱心なら、変更内容に加えて
経緯から議論まで追える最強のリストを読んでいった方が良い
https://apple.github.io/swift-evolution/

英語直が無理ならChromeのページ翻訳使えば良いし
134名称未設定 (ワッチョイ bbd9-H65A)
垢版 |
2018/01/05(金) 15:26:35.72ID:9i83wet40
Swift4 変更点

で、検索したら満足できる記事がヒット
2018/01/18(木) 10:05:10.01ID:F5hIKVS5M
iPhoneアプリの開発者離れが起きている。

アプリ提出の審査が理不尽で不公平になってしまって、iPhoneアプリの開発者離れが起きている。
アンドロイドにはKotlinが出てきて開発者が増えている。

Guideline 4.2 - Design - Minimum Functionality

アップルのGuideline 4.2の連発で簡単なアプリはもう提出しても審査には通らない。まだアンドロイドの方が通る。
簡単でなく多機能なアプリでも4.2を連発してくる。もはや作為的やっているとしか言いようがない。

開発者は開発情報のみなもとだった。それを閉め出してからiosの勢いがなくなった。
今からiphoneアプリやってもまず4.2で通らない。審査で落とされる。簡単な機能だけのアプリはまずリジェクトされる。
ちなみに複雑なアプリでも同じようなことが起きている。Rssリーダーのようなアプリでも機能が簡単すぎるといわれリジェクトされている。
アップルは信用できない。これは確か。ころころ方針を変える。昨日まで審査に通ったアプリが、今日から通らなくなるというのが普通にある。 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
2018/01/18(木) 13:25:42.19ID:SWQdnWJ60
Appleの審査がウザいのは同意だが、少なくともSwiftって言語自体はよくできてると思うんだがな
2018/01/18(木) 20:47:26.34ID:7kZaX7bD0
市場シェア
泥>>iOS
利益
iOS>>泥
2018/01/18(木) 21:15:46.97ID:QSTe5nUJ0
Swiftの変更も含め、開発者に負担かけすぎなんだよな
2018/01/19(金) 18:13:48.69ID:jrCtyd3/0
68k-> PowerPC-> Intel->ARM
toolbox-> carbon-> cocoa-> ?
pascal-> C-> objective-C -> swift
2018/01/19(金) 23:34:06.49ID:lHaNd0KF0
市場の影響やら色々あってやはりクロスプラットフォームが検討される

そこそこのアプリならCordova(TypeScript)、ゲームならUnity(C#)
Xamarin(C#)、Multi-OS Engine(Java / Kotlin)、Kotlin/Nativeとかもあって
Swiftは立ち位置が辛くなりつつある
2018/01/20(土) 00:25:28.94ID:L5ZieUsF0
GoogleがSwiftの開発者引き抜いてAndroidアプリもSwiftで開発出来るようにする
って噂があったけど、あれどうなったんだろうな

少し期待してるんだが
2018/01/20(土) 02:02:36.92ID:J8Qq1J9l0
コトリンの世話で手一杯
2018/01/23(火) 22:56:39.03ID:P4MrcF+80
https://iphone-mania.jp/news-200890/
>「Swiftは、プログラミング言語がオタクっぽすぎるという認識をもとに作られた。
>学生の多くはプログラミング言語を見て、”これはできない”と思ってしまう」と、クックCEOは語りました。

>「誰でも使い方をすぐ覚えられる、Apple製品のようなプログラミング言語をデザインしたかった」と、
>クック氏はSwiftの敷居の低さを強調しました。

Swiftはそこまでじゃねえな。それならAppleScriptぐらいにしないと。
2018/01/23(火) 23:39:33.33ID:JP5Z93fl0
Swiftはいい言語だと思うけど、やっぱこれからは小鳥が主流になるのかな?
Springも5になって対応して、Webもスマホも作れるし
2018/01/24(水) 00:10:41.66ID:EvvwHl3Y0
KotlinじゃiPhoneアプリ作れねーだろ
2018/01/24(水) 01:14:11.51ID:Slc30zGK0
BASICの昔から初心者の最初の理解を阻害しているのが
「型」の存在だ。というのは真理ではあるのだけど
「そういうことはオブジェクトに命令とクラスを渡す形にして
普段はあまり気にしなくていいようにしよう」って言語の後継です!つって
「なんじゃかんじゃわからんものになんじゃかんじゃわからないことするんですよ!進歩してるでしょ?」
って言われてもなんじゃかんじゃわからないソースになるだけだよねコレ?というか…
2018/01/24(水) 03:55:36.56ID:93wJNeG50
結局型を意識しなきゃコードは書けないと思う。初めてのプログラミング言語がSwiftだった人達が型を意識しないでいいだとかその他の理由でもいいけど、Swiftを分かりやすいと感じているかどうかが気になる。
148名称未設定 (ワッチョイ 75c5-ur/e)
垢版 |
2018/01/24(水) 06:13:02.40ID:i7+Qpdc30
型ってそんなにわかりにくいかねえ。$には文字列が入って%には整数が入るとか、
当時小学生だった自分にもわかりやすかったけどね。%と!と#の違いはともかく、$はぜんぜん違うものが入るからなぁ。
2018/01/24(水) 07:42:30.06ID:wE3p1EOU0
>>145
作れるよ
最終的なバイナリ生成のためXcodeをリモート接続経由で使うからどのみちmacは必要だけど

KotlinでのViewController
https://github.com/multi-os-engine/moe-samples-kotlin/blob/moe-master/KotlinRssReader/ios/src/main/kotlin/org/moe/kotlinrssreader/SimpleTableController.kt
2018/01/24(水) 09:07:50.03ID:EvvwHl3Y0
昔のBASICも型を意識させないようにしてたろ
方法は違うけど
2018/01/24(水) 09:20:13.18ID:EvvwHl3Y0
>>149
なんかめんどくさそう
2018/01/24(水) 09:58:12.37ID:nmNCI5eWM
Swiftはコーディングにあまり不満はないが、Buildにクソ長くて開発がままならん。
早くコンパイラーを何とかせい
2018/01/24(水) 10:12:47.55ID:wE3p1EOU0
>>151
クロスプラットフォームは多かれ少なかれ面倒なところはあるさ
2018/01/24(水) 11:23:25.39ID:93wJNeG50
>>152
推論させないで明示的に型を書けば早くなるでしょたぶん
2018/01/24(水) 13:19:08.05ID:wE3p1EOU0
Swiftの型推論は初動から風呂敷を広げ過ぎた
双方向推論は含めるべきではなかった
右辺値からの推論のみにしておけば型推論に関するビルド時間はここまで掛からなかったはず
2018/01/24(水) 14:17:14.93ID:wE3p1EOU0
let a = b( c() ) { d in e(d) }.f().g()

単方向(右辺値から)だと
・c()の戻り値型c_typeを導出
・b(c_type, func_type)の候補が一つになることをチェック
・func_typeからdを導出
・e(d)戻り値型を導出してfunc_typeと型チェック
・b(..)の戻り値型からb_type.f()を導出
・同様にfの戻り値型からg, gからaが決定

双方向だと e(*)の候補一覧からb(c_type, e_type*).f()が成立するものまで探し始める
bの引数の型が決まってない段階で
その絞り込みのためにf、さらにはgまで先読みして推論し始める
時間が掛かるだけでなくオーバーロードやエクステンションが絡んで
Ambiguousエラー出したり
LazySequence.map(..) -> LazyMapSequence<..> でなく
Sequence.map(..) -> [T] の方に間違って確定したりする
2018/01/24(水) 14:18:00.81ID:wE3p1EOU0
Swift3で推論に問題あったケースが、知っている範囲ではSwift4で正常になったので
かなり改善されているようだけどビルド時間はさらに犠牲になってそう

コーディングの利便性のために双方向の推論に対応した結果
ビルド時間が掛かり過ぎて型を明示するようになる本末転倒
2018/01/24(水) 16:08:47.94ID:EvvwHl3Y0
コンパイル時間が長くなっても、それを補えるぐらいコーディング時間が短縮されるなら、結果オーライだろ
2018/01/24(水) 17:16:22.21ID:7/sgEGqMM
>>154
基本昔からほぼ全てにきちんと型定義しているが
ビルドに20〜30分も掛かる。。。
ちょっとコーディングしてビルドすると、
またそのぐらい。。。
ビルド中に編集するとカラーボールがクルクルし出すし。
コーディングする暇がなくてめちゃ困る。

筐体が死にかけていてそうなら、喜んで買い換えるが。
これもAppleの罠ではないかとかと疑心暗鬼

ちなみにMBA2013 4GBね
2018/01/24(水) 17:52:02.29ID:wE3p1EOU0
全ての変数定義に型を明示しても
メソッドチェーンや引数に直接ラムダを記述しているなら型推論は発生している

1ステートメント内に暗黙の型有り
let a:Int = b( c() ) { d:Int in e(d) }.f().g()

極端だけどここまでしないと型推論は多少なりとも発生する
let lm:(Int)->Int = { (d:Int) in e(d) }
let retC:Int = c()
let retB:B = b(retC, lm)
let retF:F = retB.f()
let a:Int = retF.g()

実際にはそのビルドの20分とやらの大半は
一部のボトルネックになってるコードのせいという可能性も高いし
闇雲にステートメントを細分化する必要は無いけど
2018/01/24(水) 18:05:03.27ID:wE3p1EOU0
>>159
Pro買えば早くなるだろうけど
その前にビルド時間のボトルネックがあるか探すためにこの辺読んでみるのを勧める
https://medium.com/@johnsundell/improving-swift-compile-times-ee1d52fb9bd

-warn-long-expression-type-checking オプションとかもある
2018/01/24(水) 19:25:22.66ID:EvvwHl3Y0
今時メモリ4GBて
開発には厳しいだろ
2018/01/24(水) 19:35:45.83ID:BJVKiilC0
今年2018年だというのに5年前の4GのMBA使って遅いって言われてもなぁ
2018/01/25(木) 00:00:04.29ID:TElUKl9b0
>>148
ダートマスBASIC自体が学生にFORTRANでプログラム教えてたら
INT,DOUBLE,LONGとかの変数の種類の定義と概念で引っかかって
プログラミングの中心概念にサクッと進めないので
わざわざ数値型と文字型の二種類に変数型を固定した言語を作ったんやで。
「FOR-NEXT-STEPでSTEP0.5でも正しい回数回るようにとか苦労しましたw」と
作者がインタビューで答えててびっくりした。本当に高級言語だったんだと。
小学校のリコーダーが超高級木管楽器のプラスチックコピーだと知った時ぐらいの衝撃だったw
2018/01/25(木) 02:50:48.88ID:YC2I+R1V0
ビルド時間はSwift 2/Xcode 8に比べりゃだいぶ早くなったと思うけどね
まあそれでもObjCだけのプロジェクトに比べりゃはるかに長いけど
2018/01/25(木) 07:46:57.08ID:twpUMFOG0
>>161
ありがとう。
ボトルネックになってる箇所を探してみようと思う。
素直にMBPに買い換えるべきかな。
2018/01/25(木) 09:33:15.86ID:qgJud4om0
iMac Proにしろよ
サクサクだぞ
知らんけど
168名称未設定 (PH 0Hbf-Qclr)
垢版 |
2018/01/25(木) 15:42:31.84ID:1BO/OOZKH
「型」って言うほど重要なのか?
そもそもその出発点がおかしいんだろうな
2018/01/25(木) 15:54:46.78ID:qgJud4om0
重要だろ
整数は大きさで処理速度に影響するし、浮動小数点数はまた専用のプロセッサがある
型のちょっとした違いでアラインメントの影響とかでメモリを占める領域も違ってくるし、ひいては実行ファィルの大きさにも影響してくる
型を意識しないプログラマは半人前ですらない
2018/01/25(木) 20:11:04.15ID:td4l/5UZ0
型を重要と思わないプログラマって、適当にネタ選びやってる寿司職人みたいなもん
2018/01/26(金) 01:06:18.96ID:Qb9z6dfC0
>>167
個人開発だから購入する勇気が出ない。。。

>>169
同意!
swiftは型推論が売りだろうけど、後々のメンテナンス性だとか、デバッグを考えると型付しておかないと後々の収拾付かなくなるね。

早くこの問題はAppleさんに解決してもらいたい。
172名称未設定 (ワッチョイ 7e2c-Qclr)
垢版 |
2018/01/26(金) 01:22:31.74ID:VCAcFJbo0
>>169
多分それ30年前の知識のまま固執してなぁい?
mem. 1MB とか 1MHz 動作とかw

Int型に文字列突っ込んだら例外飛ばしてくるとか旧石器時代の話でしょ?
2018/01/26(金) 02:16:55.90ID:+0bXYr4i0
int型に文字列突っ込んでも問題ない言語とかあるのか?
174名称未設定 (スッップ Sdda-UEho)
垢版 |
2018/01/26(金) 18:41:54.53ID:BO2m7KnDd
>>171
型を明示することでかえって可読性や保守性が悪くなる場合に省略できるようにするのが、型推論のメリットなんじゃないの?
一番読みやすく保守しやすいコードが、型推論のビルド時間の短縮の為に、読みにくく保守しにくいコードに変えなければならないなら、失敗しているということだろう
175名称未設定 (スッップ Sdda-UEho)
垢版 |
2018/01/26(金) 18:42:48.69ID:BO2m7KnDd
>>173
c言語?
2018/01/26(金) 19:18:44.42ID:+0bXYr4i0
>>175
C言語でも無理
2018/01/26(金) 22:33:33.37ID:oeZJ5E9h0
>>176
int hoge = 'abcd';

まぁ文字列とは違うけど
2018/01/26(金) 23:27:45.91ID:+0bXYr4i0
文字列ではないな
ASCIIで表現した4バイトの数値
2018/01/26(金) 23:45:36.96ID:zWdYehWS0
>>174
型推論によってBuildが遅くなるのは確かに思想と逆行していることは理解できる。
ただ型を明示することで可読性や保守性を損なっているという感覚が理解できない。
プログラミング入門者だったらまあ納得できるが
2018/01/27(土) 07:37:02.97ID:wFui7sYU0
PH 0Hbf-Qclr がアホなだけ
2018/01/28(日) 10:13:22.57ID:KHlmF17Y0
>>176
int a = (int)"abcdefg";
printf((char *)a);

ってのはどう?
似たようなことして「問題なく」動いている古いプログラムもありそうだけど。
2018/01/28(日) 10:28:48.38ID:KHlmF17Y0
>>179
>>160の極端な例って可読性や保守性が悪くなってない?
型推論が、人間であれば文脈から自明である型を省略可能にすることで可読性や保守性を上げようとすることならば、
理想的ならば省略可能な型の記載をコンパイラの制限で記載しなければならないなら可読性や保守性を下げてることにならないか?
2018/01/28(日) 11:04:06.36ID:JZSRSRqa0
>>181
あるわけねーだろ
184名称未設定 (ワッチョイ 7ea7-Qclr)
垢版 |
2018/01/28(日) 11:21:35.61ID:f+MMvkKZ0
$test = 'abc';
$test++;
print $test; -> abd

perlくそワロタ
2018/01/28(日) 11:50:16.24ID:JZSRSRqa0
>>184
それと似たようなことは大概の言語でできるだろ
2018/01/28(日) 12:32:40.71ID:Ybff/SkvM
文字もインクリできるんですかw
2018/01/28(日) 12:50:25.70ID:JZSRSRqa0
文字がコードとして表現され大小関係もあるから、当然インクリもデクリもできる
2018/01/28(日) 13:27:37.36ID:3Z44HFBQ0
そろそろスレチな話題やめろや
2018/01/28(日) 18:17:00.06ID:wgrAfPT20
バージョンコードだけ書き直してアーカイブし直したら全ファイル再コンパイルの憂き目に遭うの何とかならないの
Swift/Objective-C問わず、というかxibとかも再コンパイルされるんでスレチかもしれんが…
2018/02/02(金) 20:24:10.75ID:O6tjxpUV00202
RxSwift嫌い!
2018/02/09(金) 01:04:25.01ID:DJQSVNnB0
☆ 私たち日本人の、日本国憲法を改正しましょう。現在、
衆議員と参議院の両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
192名称未設定 (ワッチョイW 62cf-7Au1)
垢版 |
2018/02/09(金) 02:01:27.03ID:ajBJpNxT0
改悪
193名称未設定 (ワッチョイWW 19d1-Ys2M)
垢版 |
2018/03/31(土) 14:50:11.53ID:SttHU6qh0
プログラミングはじめたばかりの初心者ですけど質問してもいいですか?
2018/03/31(土) 15:39:18.55ID:ayaYH3fwH
ダメです。
2018/04/21(土) 23:08:46.86ID:hmy7d/9T0
やっぱC言語だろ!
2018/05/19(土) 18:45:58.85ID:QsBE/P180
Objective-Cでいいよなぶっちゃけ
2018/07/24(火) 17:11:03.07ID:UTfu/0Uk0
fileprivate lazy var data: MyData = {
  return $0
}(MyData())

( ゚д゚ )
2018/08/24(金) 20:12:14.50ID:hzTJ725C0
アプリ公開手順がわかりやすいウェブサイト紹介願います
2018/08/24(金) 20:51:00.68ID:BjeP1H920
https://www.google.com/
2018/08/25(土) 00:48:03.75ID:0TPHm3zF0
>>199
シネ
2018/09/02(日) 14:46:43.03ID:VSM3ome90
swiftってDouble→Dicimalはキャストできるけど、Dicimal→Doubleはキャストできないの?
Dicimalでfmodみたいなのを使いたいけど見つからないから、Doubleに変換して計算しようと思ったんだけど…

>せっかく精度よく計算できるのに、Mathライブラリを利用するためにDouble型に変換しては意味がない。
て書いてあるサイトはあるから変換できるんだろうけど、変換のしかたがわかりません(T T)
2018/09/03(月) 07:29:42.29ID:kLM4M63d0
基本的にキャストはできないぞ
Double(i)とかで作り直せ
2018/09/03(月) 16:26:52.25ID:ma8cd78n0
そうなんですか。ありがとうございます(T T)
2018/10/06(土) 21:47:38.72ID:BrLoz+AY0
>>721
Swift playground 始めたばかりの素人ですが全クリする頃にはiOSアプリ作れるようになれますか?
自分にあった家計簿アプリがなくて作りたいと思ってます
2018/10/06(土) 21:49:00.17ID:BrLoz+AY0
アンカーは間違いです
206名称未設定 (ワッチョイ d4d2-IyWy)
垢版 |
2018/10/06(土) 22:21:12.07ID:wOPD3Y/s0
「無いものは作る」って言うのはとてもいいことです
2018/10/07(日) 09:49:31.22ID:jWIk98bsM
>>204
調べ続ける必要が有るけど、簡単なAppなら作る事ができるようになるでしょう
2018/10/16(火) 21:01:02.64ID:+xNWcM/rM
macOSのAppをXcodeで作ったんだけどMac App Storeを経由せずに配布したいのよ
デベロッパープログラムにお金払わないと無理?
2018/10/22(月) 22:52:14.71ID:GjBdtl7t0
オートレイアウトが意味不明なんだよ
2018/10/23(火) 00:18:15.37ID:18hromqS0
じゃあ autoresizingMask だけで書いてみたら?
2018/11/03(土) 10:31:35.73ID:niOVCFdzM
>>208
配布できるだろ
212名称未設定 (ワッチョイ 690c-ODKA)
垢版 |
2019/01/21(月) 23:02:49.81ID:xe+XFScy0
CGRectの引数のoriginとは何でしょうか?
ドキュメント読んだり調べたりしたけれどはっきりとはわかりませんでした。
Creates a rectangle with the specified origin and size.
明記された原点とサイズを持つ長方形を作る
とは書いていますが、
この”原点(origin)”はその長方形”内”におけるアンカーポイントの位置のことでしょうか、
それともsuperview座標における長方形のアンカーポイントの位置のことでしょうか。
座標の系がわかんねえ
時間がある神が居たらご教示いただけたら幸いです。
2019/01/21(月) 23:12:42.09ID:f3K8Ybd10
>>212
CoreGraphicsでは左下、UIKitでは左上
214名称未設定 (ワッチョイ 690c-ODKA)
垢版 |
2019/01/22(火) 02:05:25.63ID:QXXimgo50
>>213レスありがとうございます。
ただ、質問がうまくできてなかったみたいで、
聞きたかったことは、originがさすx,yはそのイメージの座標系におけるものでしょうか。
あるいは、viewの座標系におけるものでしょうか。
シミュレーターでoriginの値を色々変えてみましたが、いまいちピンと来ませんでした。
2019/01/22(火) 03:14:10.39ID:i0/0cpyla
親から見たそいつの位置です
2019/01/22(火) 08:03:23.23ID:fi7CDqih0
アンカーポイント(回転や拡大でのピン留め位置)はデフォルトでは中央とか
原点とアンカーポイントは別物
原点の位置は213で書いた通り

どこを0,0とするかはメソッド次第、大抵はsuperviewの原点を0,0としたもの
スクリーン原点を0,0とする場合もある
CGRectは単なる数値の入れ物
217名称未設定 (ワッチョイ 690c-ODKA)
垢版 |
2019/01/22(火) 08:40:01.19ID:QXXimgo50
>>215,>>126
スッキリしました!
ありがとうございます
すごく助かります
218名称未設定 (ワッチョイ ed0c-msPf)
垢版 |
2019/01/26(土) 05:40:20.41ID:naefrdUr0
>>212, >>216です。
助言をいただけたおかげでとりあえずConwey's Game Of LifeをSwiftで
カタチにはできました。
https://qiita.com/TrapedInABottle/items/91635fd7eb3db6ae8a29

ただ、重い。
どこで非効率的な処理をしているか指摘していただける方はいねえがぁ。
219名称未設定 (ワッチョイ ed0c-msPf)
垢版 |
2019/01/26(土) 05:41:38.44ID:naefrdUr0
あ、>>212 , >>214 , >>217でした
220名称未設定 (ワッチョイ 714e-cnES)
垢版 |
2019/01/26(土) 19:08:16.35ID:72UE6h1N0
>>218
大量描画を高速にするならMetalとかOpenGLとか使ってGPUに描かせないと。
2019/01/26(土) 23:25:44.71ID:2W6WY24L0
同じ書き方してもMetalでCompute Shaderに置き換えるだけで速くなるよこの場合
222名称未設定 (ワッチョイ 2758-6twX)
垢版 |
2019/02/16(土) 12:17:58.26ID:wyhS6wFG0
https://images-fe.ssl-images-amazon.com/images/I/517EbUXA6DL.jpg
2019/03/27(水) 00:59:54.81ID:gZAu2ajZ0
Swift 5
224名称未設定 (ワッチョイ 1b75-STzE)
垢版 |
2019/03/27(水) 02:06:16.50ID:UhEZh4XY0
どっかに差分分かりやすくまとめてくれないと追いつかない…
225名称未設定 (ドコグロ MM0b-STzE)
垢版 |
2019/03/27(水) 14:19:07.53ID:f7Sc8c92M
https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_release_notes/swift_5_release_notes_for_xcode_10_2
226名称未設定 (ワッチョイ 8ba3-MMF7)
垢版 |
2019/03/31(日) 13:56:02.40ID:GAfz2pSI0
>>225
ざっと読んだけどあんま変わってねーのな
227名称未設定 (ワッチョイ fb58-HJcM)
垢版 |
2019/04/03(水) 15:21:11.33ID:hpEJVX5q0
import Foundation

let dateFormatter = DateFormatter()
dateFormatter.dateStyle = .full
dateFormatter.locale = Locale(identifier: "ja_JP")
dateFormatter.calendar = Calendar(identifier: .japanese)
print(dateFormatter.string(from: Date(timeIntervalSinceNow: 60*60*24*30)))

令和まだか
228名称未設定 (ワッチョイ 8d89-wMV2)
垢版 |
2019/04/09(火) 13:16:26.76ID:5eh4ypGL0
Result type@Swift5のuse caseが判らん。
229名称未設定 (ワッチョイ 7d58-6zBh)
垢版 |
2019/04/09(火) 18:06:57.84ID:jrogST/40
これの話?
https://qiita.com/koher/items/7e92414082476fb87b76
2019/06/06(木) 18:55:46.75ID:Xy4pyHGnM0606
丸2年Swift勉強してきたが(合間合間に)まだ1つもアプリリリースできてない。しかし不思議と飽きない、ところでSwift2の本があったのでそれ見てコード写して勉強してるがエラーだらけで …こんなのやるだけ無駄かな?
2019/06/06(木) 19:00:58.88ID:HFUOO6K900606
それって勉強しているフリしてるだけじゃ・・・
2019/06/06(木) 19:05:15.86ID:Xy4pyHGnM0606
これは意味なさそうやな…リリースする時は10個位まとめて出した方がええからとおもて時間かかるんよなぁ
2019/06/06(木) 19:08:13.48ID:HFUOO6K900606
先ずは何でもいいから一つ完成させろよ。
アレもコレもと手を出していると、いつまで経っても完成したものができないぞ。
234名称未設定 (テトリスW 03e4-FZF1)
垢版 |
2019/06/06(木) 19:34:53.81ID:rxAEsIyB00606
丸二年勉強してて今時Swift2のテキストからコード拾ってるってちょっとどんな状態なのかイメージ出来ない。
もし英語にアレルギーなければ↓のサイトで最新バージョンで一通り勉強できるよ。無料だし

Hacking With Swift 100days of Swift
https://www.hackingwithswift.com/100
2019/06/06(木) 19:54:16.11ID:Xy4pyHGnM0606
ほとんど書籍からしか勉強してなかったから そんな動画もいいね 基礎的な事から紹介されてる様だ
いまスマホだから帰ってから見るわ ありがとさん
236名称未設定 (テトリスW 03e4-FZF1)
垢版 |
2019/06/06(木) 20:11:32.33ID:rxAEsIyB00606
動画は補助だね。
テキストがメイン。
効率的に記述できる技なんかも織り混ぜつつ、覚えた方が良いコードは敢えてリピートに入れずに徹底的に手で書かせてくれる。
そんな箇所を後で自分なりに書き直してみたりと、かなり美味しい。
よく考えられた教科書だよ。
2019/06/06(木) 20:24:49.63ID:M4duoceW00606
アプリリリースって審査を通すがかなり大変じゃない?
大手のバグフィックスリリースも含めて、全体の通過率4割じゃなかったっけ?
そういったものを除いた新規のもののみだと通過率がかなり厳しそう。
238名称未設定 (テトリス 13d9-vESq)
垢版 |
2019/06/06(木) 21:47:41.62ID:Yqd2/WDV00606
>>234
ちょっとプログラムに興味あるけど
初学者とかでもこの人の動画大丈夫?
239名称未設定 (ワッチョイW 03e4-FZF1)
垢版 |
2019/06/06(木) 22:28:02.11ID:rxAEsIyB0
>>238
お勧め。
動画は補助で、メインはテキスト。
全くの初学ならiBooksストアからダウンロードできる「Swiftによるアプリケーション開発:入門編」あたりをやっておくと良いかも。これ、残念ながら内容が少し古いんだけど、基本の部分は通用するし、レッスンがインタラクティブでわかりやすい。
2019/06/06(木) 22:39:46.16ID:Yqd2/WDV0
>>239
ありがとうございます。ちょっとがんばってみます!
英語の人聞き取りやすいし1日1時間のコンセプトもすばらしい
その前に入門編みてみます
241名称未設定 (ワッチョイW 03e4-FZF1)
垢版 |
2019/06/06(木) 22:42:04.11ID:rxAEsIyB0
英語大丈夫なら、やはりiBooksストアからダウンロードできる「App Development With Swift」の方が内容は新しい。
2019/06/06(木) 23:15:20.94ID:Lf4KUjQI0
>>230
本を読むなとは言わないが古い情報を読んでいる暇があるなら
まずは公式をあたれ

https://docs.swift.org/swift-book/RevisionHistory/RevisionHistory.html
https://docs.swift.org/swift-book/LanguageGuide/TheBasics.html
2019/06/07(金) 22:55:51.12ID:oDJlThlt0
>>227
なぜかPlaygroundだとダメなんだよな。
iOSアプリだったらシミュレータ、実機とも問題ない。
244名称未設定 (ワッチョイW 03e4-FZF1)
垢版 |
2019/06/07(金) 23:31:36.25ID:YkJU3b1t0
>>243
つXcode11(+macOS10.15)
245名称未設定 (ワッチョイ 8958-KOFD)
垢版 |
2019/06/07(金) 23:36:01.05ID:VCRI3J210
ほんとだ
PlaygroundでもmacOSだと
"令和元年7月7日 日曜日¥n"
で、iOSとtvOSだと
"平成31年7月7日 日曜日¥n"
だな

バグ報告しなされ
246名称未設定 (ワッチョイW 03e4-FZF1)
垢版 |
2019/06/07(金) 23:50:09.01ID:YkJU3b1t0
つうか、シミュレーターのバージョンがiOS12だと平成
iOS13だと令和
これはXcode10でも11でも変わらない

playgroundはXcode10では平成
Xcode11では令和
247名称未設定 (ワッチョイ 8958-KOFD)
垢版 |
2019/06/08(土) 06:40:20.30ID:vU6SqN5F0
11で治ってるならバグ報告要らんね
Bug Reporterがいつの間にかFeedback Assistantにリニューアルしてる
248名称未設定 (ワッチョイW 03e4-FZF1)
垢版 |
2019/06/08(土) 14:01:08.91ID:r0kbYvOO0
SwiftUIはDateFormatterのロケールに未対応
2019/08/14(水) 16:54:00.22ID:X8XFYxZG0
バカみたいな質問だが、アプリ作る時で分からない無い時 公式のリファレンスで調べたりまたはプラグインを導入もやるのが普通なのかな?
自分は欲しい機能がありどう書けば分からなければ ググってコードをコピペして書いてるのだがこれはアホみたいな作り方で非効率なのかな?
250名称未設定 (ワッチョイW dae4-/ovj)
垢版 |
2019/08/14(水) 17:14:40.97ID:llw+SUiw0
見つけたコードを読んで理解できてるなら良いんじゃない?
251名称未設定 (ワッチョイ 394e-4+nB)
垢版 |
2019/08/16(金) 01:03:57.25ID:UhLWgaGA0
むしろリファレンスだけでコードを書くのはかなりの非効率
動いてる実績のあるコードをコピペしたほうが5倍ぐらい速い

どんなSDKでもサンプルコードがついてるのはそのため
ドキュメントにAPIのめちゃくちゃ細かい挙動まで記述するのは、書く側も読む側も負担が大きい
API一覧から初期化時に呼ぶべきメソッドを抽出するためには、極論全部のメソッドの解説を読まなくちゃいけなくなるし

ただ、>>250の言ってるように、コピペしてわからないところを放置しないというのは大事だと思う
2019/08/16(金) 03:03:52.53ID:X/dGcB27a
>>250
>見つけたコードを読んで理解

盗んだバイクで走り出すのメロディーで読める
253名称未設定 (ワッチョイW 13e4-fuhf)
垢版 |
2019/08/16(金) 08:48:38.06ID:pw4Pwbb10
リファレンスもプロパティとメソッドの一覧とか引数となるクラスへのリンクくらいは整備してくれると有難いんだけどなぁ...
2019/08/30(金) 14:13:20.52ID:dTklQjGI0
Appleは英語圏以外のプログラマーを増やそうとは
思っていないのかな。
デベロッパー向けのリファレンスやメールなど
英文多いですよね。
例えば日本の子供達がSwiftを学ぼうと志しても
プログラミングよりも先に英語でつまずくと思う。
2019/08/30(金) 15:56:26.01ID:OTsga/RT0
その為にiPadでplaygroundが用意されている
256名称未設定 (ワッチョイW 13e4-MdH8)
垢版 |
2019/08/30(金) 18:07:41.54ID:aoANh/P30
プログラミング言語そのものからして、英語をある程度知らなきゃ、機能などが想像できなくてキツイよ。
若年層のコーディング教育は、まずは単純な動作のコード化から、手続き記述、組織化などを学ばせる方が良いと思う。そこではプログラミング言語なんて使わない。

日本人は大人でもこの辺りが弱い人が多い。
257名称未設定 (ワッチョイW 13e4-MdH8)
垢版 |
2019/08/30(金) 18:20:29.76ID:aoANh/P30
プログラミング言語を使わないってのはちょっと語弊が有るか...
導入は自然言語で行って徐々に語彙と文字を制限した環境に移行してルーチン基準を学ぶ辺りから専用の言語環境を用いる様にしていくイメージ。
日本語ベースで。
オブジェクト指向の言語をベースに日本語に置き換えて行けば叩き台は出来ると思う。
258名称未設定 (ワッチョイW 13e4-MdH8)
垢版 |
2019/08/30(金) 18:21:17.30ID:aoANh/P30
訂正
ルーチン基準→ルーチン記述
2019/08/30(金) 18:35:39.44ID:OTsga/RT0
scratchでも良くね?
260名称未設定 (ワッチョイW 13e4-MdH8)
垢版 |
2019/08/30(金) 18:58:30.75ID:aoANh/P30
PC上で走らすもんじゃないから、リアルの「辞書」みたいなものを想定してる。
国語、というか純粋に「言語」教育。
日本の言語教育プログラムには、書式の理解や作成とか事象の分析的・客観的記述とそのデコードといったカテゴリが抜け落ちてる。
小学校から高校くらいまでのスパンでしっかり教育すべきなんだけど。

その辺りが身についていればVBAマクロくらいはもっと多くの人が記述できるようになるよ。
2019/08/30(金) 20:09:43.87ID:OTsga/RT0
法文やればO.K.
2019/08/30(金) 20:10:39.48ID:OTsga/RT0
特に税法と金融証券取引法。
2019/09/11(水) 23:30:57.25ID:p1peNgsl0
実務優先でDBやらせる。
iTunesとSwift(スクリプト)でプレイリスト作成とか
264名称未設定 (ワッチョイ f7bb-fDnH)
垢版 |
2019/10/16(水) 12:51:14.86ID:ypA6ChT70
Xcode10.3からXcode11.1へupdateした。
macOSはMojave10.14.6のままで。
SwiftUIを初めてさわってみた。
UIKitを置き換えるFrameworkだなんて知らんかった。

数年後にはimport UIKitすればdeprecatedって警告されるのか?
とりあえず、link compilation
https://github.com/Juanpe/About-SwiftUI
2019/10/16(水) 12:54:10.11ID:ZgEqqmU80
>>264
>数年後にはimport UIKitすればdeprecatedって警告されるのか?

これマジこうなるからワロエナイ
266名称未設定 (ワッチョイ f7bb-fDnH)
垢版 |
2019/10/16(水) 18:25:45.14ID:ypA6ChT70
今更ながらWWDC2019の動画みてる。
WWDC 2019 _ Full - Platforms state of the union.

これ、超重要かも!
267名称未設定 (ワッチョイ f7bb-fDnH)
垢版 |
2019/10/16(水) 18:26:11.10ID:ypA6ChT70
>>266
https://www.youtube.com/watch?v=Wpu6HXo-5rw
268名称未設定 (ワッチョイ f7bb-fDnH)
垢版 |
2019/10/16(水) 18:36:56.79ID:ypA6ChT70
>>267
SwiftUIってUIKitと同時に使うもんだと思ってたけど、違った。
外付けのUSB-SSDへCatalinaをinstallしてXcode11をinstallしたほうが良さそうだ。
Xcode11@MojaveだとCanvasが動かん。
269名称未設定 (ワッチョイ f7bb-fDnH)
垢版 |
2019/10/16(水) 19:02:01.61ID:ypA6ChT70
>>267
こっちか!
https://developer.apple.com/videos/play/wwdc2019/103/
Platforms State of the Union
WWDC 2019 Platforms State of the Union

こんなResourceがあるなんて知らんかった。
2019/10/16(水) 19:20:16.71ID:3AiW3GnJ0
>>268
APFSでディスクに余裕があるなら別ボリュームにインストールする方法もある。
271名称未設定 (ワッチョイ f7bb-fDnH)
垢版 |
2019/10/16(水) 19:24:45.01ID:ypA6ChT70
>>270
THX
USB-SSD接続してinstaller起動した。
今ココ
macOS Catalinaをインストールするには再起動…
272名称未設定 (ワッチョイ f7bb-fDnH)
垢版 |
2019/10/16(水) 20:24:16.76ID:ypA6ChT70
Catalina install memo
1. reboot回数: 5
2. 残り時間を計算回数: 3, 16min, 1min, 15min
3. 最初の再起動直前から、ようこそ画面出現までのの時間: 22min

外付けSSD, 960GB, 3分割(2:1:1)した最後の区画(APFS)へinstall
久しぶりに新規installしたけど、設定が大変。
マウス感度とか、IMEの設定とか。
273名称未設定 (ワッチョイ f789-7U/E)
垢版 |
2019/10/16(水) 21:46:57.99ID:DFvgXDG70
https://blog.personal-factory.com/2019/08/22/platforms-state-of-the-union-no/
ここに冒頭部分のtranscriptが!
これってdownloadできるのか?downloadできるのはEnglish scriptだけだと思ったが。
274名称未設定 (ワッチョイ f789-7U/E)
垢版 |
2019/10/16(水) 21:49:30.30ID:DFvgXDG70
https://developer.apple.com/tutorials/swiftui/interfacing-with-uikit

UIKitとSwiftUIは共存できるっぽい。
275名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/17(木) 07:07:39.74ID:qfqB83MV0
❶@Stateを利用するには、Model側(Observable側)の下ごしらえが必要で
1. Observable準拠が必要
struct Order: Observable {
var includeSalt: Bool

}

2. プロパティー宣言時に@State属性付与
@State private var order: Order

❷ViewModel側(Observer側)で値の変更通知を受け取るには$マークの付与をインスタンス変数にする
$order.includeSalt

って事か?
276名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/17(木) 07:13:39.12ID:qfqB83MV0
>>272
CatalinaをinstallしてXcode11が動き始めたが、逆に動かないアプリを発見。
El media Playerで再生しようとしたswfファイル(TOEIC問題集)が動かない。

どうしよう?
外付けUSB-HDDにSierraをinstallしておくかぁ。
超、面倒だ。
277名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/17(木) 11:30:25.67ID:qfqB83MV0
>>276
Sierra install直後のDisk Usage: 20.31GB
createinstallmediaコマンドでUSB2 Pendriveにinstaller作成: 26min
reboot回数2回
install中残り時間15minと表示後、9.5minでrebootが掛かり、「ようこそ画面」が出現
278名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/17(木) 13:06:37.18ID:qfqB83MV0
やべ!
今更ながらWWDC2019 Keynote Speech見たけど、冒頭で感動しちまった。
279名称未設定 (ワッチョイ e389-XLgx)
垢版 |
2019/10/17(木) 15:42:52.17ID:S72nh9Bg0
なぜclassよりstructが速いのか?
なぜ、class UIButtonよりstruct Buttonが速いのか?

答え:
ある関数に値を渡す処理を記述する際、参照渡しは速いと教わる。値渡しはコピーに時間が掛かって時間を食うのだ。
しかし、関数内でその値に何度もアクセスする場合に、アクセスのたびに、参照先を見に行く処理が参照渡しには生じる。このため、参照渡しは遅くなる。

値渡しは、スタック内で処理が完了し、速い。
http://nex2t.blog.shinobi.jp/c言語/値渡しとポインタ渡しで実行速度比較-c言語-

だから、UIKitよりSwiftUIが速い。PlayGroundの用に、CanvasでLive Renderingできる。
280名称未設定 (ワッチョイ e389-XLgx)
垢版 |
2019/10/17(木) 15:46:12.75ID:S72nh9Bg0
>>279
Introducing SwiftUI: Building Your First App, 17m10sec around
281名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/17(木) 17:34:18.47ID:qfqB83MV0
>>280
やっと見終わった。
Introducing SwiftUI: Building Your First App
Safariで再生すると途中で止まる。
Chromeで再生すると解像度が低いのでソースがボヤける。

RoomsアプリのソースはGithubにあるのかな?
282名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/17(木) 18:27:03.46ID:qfqB83MV0
順番からは次見るべきは
SwiftUI Essensials
けど、関心のある
Data Flow Through SwiftUI
を見ることにする。
Property Wrapperの@State, @ObjectBindingの使いかたとか、
Identicalプロトコルが知りたい。

Xcode起動して、Help, Developer Documentationとして検索してもヒットしないぞぉ?
283名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/17(木) 18:30:51.67ID:qfqB83MV0
>>282
ObjectBinding、ってのは俺の勘違いで、
ObservedObjectってのが正解らしい。Developer Documentationでもヒットした。
しかし、Dash.appではヒットしない?
284名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/17(木) 18:32:52.13ID:qfqB83MV0
>>283
と思ったら、ObservedObjectはDash.appでもヒット!
落ち着け、俺!
285名称未設定 (ワッチョイW 12e4-LfQk)
垢版 |
2019/10/17(木) 18:43:26.55ID:EfOHH0rB0
なんなんこのひと
286名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/17(木) 19:12:46.93ID:qfqB83MV0
>>282
Identicalではなく、Identifiable Protocolだった。
これは簡単。
struct User: Identifiable {
var id: UUID = UUID()
var firstName: String
var lastName: String
}
let a = User(firstName: "OK", lastName: "NG")
print(a.id)
おっと、これが、Terminal.AppだとStack dumpを吐くのに、XcodeのPlaygroundでは上手く動く。なんで?
287名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/17(木) 20:49:54.92ID:qfqB83MV0
>>282
Data Flow Through SwiftUI
イタリア人の英語はワケワカメ
e.g.
Enviroment = エンバイロメンタ
2019/10/17(木) 21:07:28.67ID:ngqO/PtH0
ただでさえSwift人口少ないのに、お前みたいなキモいのがいるとますます減るだろがバカ
289名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/18(金) 10:20:18.19ID:fxqAwN0I0
>>287
Data Flow Through SwiftUI
これ見終わった。

Data Flow Through SwiftUI
これ、冒頭見てつまんなかったので、

Combine in Practice
Combineの実際、Combine Frameworkってimport Combineするのか?
これ見てみる。
290名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/18(金) 16:01:27.51ID:fxqAwN0I0
>>289
Combine in Practice
これ、ムズかった。
Promiseは非同期処理の最終結果。
Futureってなんだ?

debounceってのはハードウェア・スイッチのチャタリング防止装置をソフトウェアで実現したものって感じか?

@Published を付与すれば一撃でPublisherへ変身させる事ができるっぽい。
Promiseは良いとして、Future, Justって何だ?
ここに、解説があるっぽい。
https://dev.classmethod.jp/smartphone/swift-combine-framework-for-beginners/
291名称未設定 (ワッチョイ e3bb-Jl7d)
垢版 |
2019/10/18(金) 18:50:18.98ID:fxqAwN0I0
>>290
>Combine in Practice
こいつをみる前に
Introducing Combine
これを見るべきだったかも。

Reactiveプログラミング系のオブジェクト生成用の属性には、2種類あるみたい。
1. 非Combine系(import Combine不要)
2. Combine系
後者には、
Publisher, Subscriber, Operator
が含まれる。

前者には、State, Environment, Bindingとかあるっぽい。
2019/10/19(土) 11:42:30.69ID:juAJJAjQ0
>>279
UIButtonがViewに対してButtonがCellになっている
ように感じるのだが。
293名称未設定 (ワッチョイ 2f4e-hP6I)
垢版 |
2019/10/19(土) 20:58:59.81ID:0nGgsZQY0
>>279
参照渡しも値渡しも結局はメモリ上に構造体のようなものを置いているのなら、それの先頭アドレスから
何バイト先を見る、ってのが特定のメンバ変数を見るための実際の処理だろ。
それだけで考えたら、その領域がスタックだろうとヒープだろうとその速度に違いがあるとは思えないけどな。
違いがあるとすればキャッシュに載ってる可能性が高いかどうかぐらいじゃないの?
スタックのアクセスのほうが速いとする根拠は何?
294名称未設定 (ワッチョイ e389-XLgx)
垢版 |
2019/10/20(日) 02:53:29.00ID:OcITMPGt0
>>293
1. 参照渡しの場合に構造体メンバ変数へアクセスする場合:
構造体へのアドレス - > メンバ変数へのアドレス - > その値

2. 値渡しの場合に構造体メンバ変数へアクセスする場合:
メンバ変数へのアドレス - > その値
295名称未設定 (ワッチョイ 925a-Mdr6)
垢版 |
2019/11/30(土) 11:40:43.85ID:e56uHF5q0
ViewControllerどこ行った?

override func viewDidLoad() は?
296名称未設定 (ワッチョイ 925a-Mdr6)
垢版 |
2019/11/30(土) 11:46:43.13ID:e56uHF5q0
自己解決
297名称未設定 (ワッチョイ 03f3-MVf8)
垢版 |
2019/12/09(月) 22:37:47.57ID:p96E7fGL0
iPhoneアプリ開発の人たちは、swiftに移行してる
2020/01/17(金) 17:02:03.82ID:HEtmjc+G0
やっとtype(of:self)じゃなくてSelfが使えるようになった
299名称未設定 (ワッチョイ 3358-jocL)
垢版 |
2020/02/13(木) 03:47:50.22ID:VeLWY1mj0
Swift Playgrounds Mac版
https://apps.apple.com/jp/app/id1496833156
2020/02/14(金) 09:16:06.45ID:1vA6Uqyl0St.V
>>299
まだ出てなかったのね!
2020/02/28(金) 05:45:24.59ID:oichTAg80
せんせい質問∩(´・ω・`)

初心者質問でごめんなさい。
本を2冊くらい読んで、基礎はなんとなくわかったのだけど。

もっとあれこれとサンプルコードを見たいんですが、検索してもいまいちわかりません。
どこか「ここだ、ここ」って場所はあるんでしょうか?
2020/02/28(金) 09:17:38.05ID:xleR+gvo0
>>301
俺は数年前だけど、これから始めたよ

https://books.apple.com/jp/book/the-swift-programming-language-swift-4-2/id881256329
2020/02/28(金) 09:23:59.33ID:xleR+gvo0
>>301
新しいのが出てるっぽい

Apple Education「Swiftによるアプリケーション開発:入門編」 https://books.apple.com/jp/book/swift%E3%81%AB%E3%82%88%E3%82%8B%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E9%96%8B%E7%99%BA-%E5%85%A5%E9%96%80%E7%B7%A8/id1483864101
2020/02/28(金) 14:37:29.54ID:UwlDePgea
公式の日本語あるのか
はじめてしった
2020/02/28(金) 14:41:23.45ID:iGnEP3fW0
うわぁ最初にこれ知ってたら楽だったのにな。。。
306名称未設定 (JP 0H46-fDsF)
垢版 |
2020/02/28(金) 14:49:09.04ID:9/gZN5QQH
Xcode 10
だけど?
307名称未設定 (ワッチョイW cae4-sDoR)
垢版 |
2020/02/28(金) 21:00:19.36ID:w5v+lrA00
>>301
一択。
https://www.hackingwithswift.com/100
2020/03/01(日) 00:23:28.85ID:hT6zn7up0
先生たちありがとう
みて見る
2020/03/03(火) 10:02:44.88ID:OLcTt/e3M0303
変数Aが2以下、かつ変数Bが1から3
この場合はどのように書くのが良いでしょう?
310名称未設定 (ヒッナーW cae4-sDoR)
垢版 |
2020/03/03(火) 20:10:11.40ID:iGxl0uVF00303
普通にそのまま。
1〜3はレンジで。
2020/03/03(火) 22:57:52.21ID:7qVO/tHg0
なんか落とし穴でもあんの?
普通にそのまま以外思いつかないけど。
2020/03/03(火) 22:58:13.00ID:nNGisqGT0
その普通が分からないんでしょうが!
教えてくれても良かでしょ!
2020/03/03(火) 22:59:49.61ID:nNGisqGT0
複数の条件を繋げるのが分からない、そして1.から3が分からない
2020/03/03(火) 23:10:02.79ID:Qn2cWc8ja
&&
2020/03/03(火) 23:33:51.40ID:nNGisqGT0
if A => 2 && B ここ { }

ここが、、、分からんのです
316名称未設定 (ワッチョイW cae4-sDoR)
垢版 |
2020/03/03(火) 23:41:15.77ID:iGxl0uVF0
「レンジ演算子」で検索
317名称未設定 (ワッチョイW cae4-sDoR)
垢版 |
2020/03/03(火) 23:43:57.28ID:iGxl0uVF0
つうか、レンジ使わずにベタでも良いから頭捻って書いてみるのも悪くないよ。
条件考えられるでしょ。
2020/03/04(水) 00:00:03.57ID:QXp8YjwH0
if A
if B
でええやん
2020/03/04(水) 00:07:16.04ID:QXp8YjwH0
if A && B1 && B2
でも可
2020/03/04(水) 06:53:09.59ID:5j6/QZyd0
>>315
これが知りたいってこと?
正直何が分からないかが分からない。

if A <= 2 && (B >= 1 && B <= 3) {
}
2020/03/04(水) 10:22:02.64ID:DfMa9C+A0
俺は、昔codingは自分以外の人に分かりやすようにシンプルが一番って言われた。

if A <= 2 {
if (B >= 1 && B <= 3) {

}
}
2020/03/04(水) 18:13:55.98ID:YmpsK1hQ0
if文と不等号のみ

if A <= 2 {
if B >= 1 {
if B <= 3{
処理したいもの
}}}
2020/03/04(水) 22:41:18.61ID:brFNApOU0
分かりやすくという点では、文を分けることより名前に束縛する方が重要だと思うな
学習課題とかだと名前を付けようがないだろうけど
2020/03/05(木) 08:38:33.54ID:Ycp7hilO0
みなさんありがとう
読みやすさが大事、初心を思い出したよ!
2020/03/05(木) 18:19:00.68ID:rJa2tLCZa
初心者じゃないのかよwww
2020/03/05(木) 23:34:46.56ID:kaClGMJO0
なんというか、ちょっと簡潔に書いてみようってなる時期があるじゃない?
327名称未設定 (ワッチョイW 9fe4-2758)
垢版 |
2020/03/06(金) 18:46:59.70ID:rwezTMaa0
1...3 ~= b
2020/03/06(金) 19:22:37.06ID:+7pNEJgFa
ふぅ...(-。-)y-゜゜゜
ぽさあるな
2020/04/30(木) 14:37:30.88ID:UVy0Rg05M
CatalinaとXcode11でiOSアプリ作り始めるのでも>>303とか>>307がお勧め?

Single Viewのプロジェクト作成しただけでSwiftUIのHello World生成してくれたからSwiftUIで作る。
WebアプリとVBアプリ、Javaアプリ作るくらいはできる
330名称未設定 (ワッチョイW dfe4-EIz9)
垢版 |
2020/04/30(木) 15:07:42.56ID:0hoT5AD40
>>329
>>307はOSやXcodeのアップデートに追随して更新されてるよ。
SwiftUIなら、同サイトの↓がお勧め。

https://www.hackingwithswift.com/100/swiftui

https://www.hackingwithswift.com/quick-start/swiftui

電子書籍も販売されてるけど、これも終生無償アップデートという神対応。
WWDCの際には会期中に最新情報をサンプルコード付きでガンガン流してくれる。
2020/04/30(木) 17:42:17.27ID:UVy0Rg05M
>>330
ボリュームありますね。ありがとう
2020/04/30(木) 17:52:25.72ID:OJg9LZHg0
英語できると、いーなー……やっぱり(´・ω・`)
がんばってこれ読みながらやってみようかな。
333名称未設定 (ワッチョイW dfe4-EIz9)
垢版 |
2020/04/30(木) 20:20:33.67ID:0hoT5AD40
>>332
無料だし、100Daysは一回当たりそんなに長くないし。
Swiftの話題オンリーだから出てくる語彙は広くないから、慣れると思う。
サンプルコードも解説ごとに少しづつ書いてゆくスタイルだから、なんだったらコードを書いて動かしてみれば、解説で何を言っているのか理解する助けになるし。
(「ここまでではまだ動かない」とかも有るから、エラーが出たりしても慌てない心構えは必要)
なんせ情報量が違う。
100Days of Swiftのサンプルプロジェクトは30以上。どれもちゃんとアプリとして動くコードだし。
2020/04/30(木) 20:33:09.87ID:OJg9LZHg0
ありがとう。どうせ時間はあるんだ。やってみる。>>333
335名称未設定 (ワッチョイW dfe4-EIz9)
垢版 |
2020/04/30(木) 20:46:08.98ID:0hoT5AD40
可能ならApp Storeに出品...とか考えているなら、現状では100Days of Swift、あくまで趣味や勉強のため、とかストア出品は数年後もしかしたらという感じなら100Days of SwiftUIか上記かのどちらでもって感じだと思う。
全くの初心者だと、基礎の部分だけでも日本語でやっておくと、その後英語教材も使い易くなると思う。
Appleのブックストアで無料入手できる「Swiftによるアプリケーション開発: 入門編」はXcode10だけど、良いテキストだと思う。
336名称未設定 (ワッチョイ 1abb-O+HC)
垢版 |
2020/05/09(土) 08:25:05.96ID:+CR9kwas0
>>307
Day 24見てみた。
タダで見れるみたい。
337名称未設定 (ワッチョイW 6ae4-kDhV)
垢版 |
2020/05/09(土) 08:27:11.51ID:vovgZGMD0
>>336
全部無料だよ。
2020/05/12(火) 13:58:59.05ID:Cx74vRaV0
基本的で悪いが、ワードとかの矢印でひとつ戻るに相当する機能あるの?
2020/05/20(水) 14:49:24.94ID:QTVtXhpv0
100days 3日目でしんどい
完走に1年ぐらいかかりそう
でもこれ完走したらswiftマスターになれるんですよね?
340名称未設定 (ワッチョイW 9ae4-DaGB)
垢版 |
2020/05/20(水) 15:12:26.23ID:YyUWlZVB0
3ヶ月で三周してApp Storeデビューしたよ
語彙に慣れてくればスピードも上がるし、繰り返しの説明や確認の部分は斜め読みも出来る様になる。
DAY16からは実際に使えるアプリのプロジェクトが始まるし、グッと楽しくなってくる。

初心者の場合、基本の文法の部分はApple Book Storeで無料配布してる「Swiftによるアプリケーション開発: 入門編」辺りでやって、DAY16から始めても良いかも。
2020/05/20(水) 15:55:46.98ID:QTVtXhpv0
過疎スレでど平日に即レスありがとうございます

swiftのためにMacbookPro買った完全Mac初心者です
swiftUIってのが直感的にプログラミングできそうと感じたのと

一般人は将来パソコンを持たなくなって
そこで覇権を握るのはiPadOSだと思って
swiftに人生をかけようと思いました

基本がわかってないのでブックの入門編のクイズをちょっとやってみます
16日はまだまだ先ですが楽しみにがんばります
ちょっとモチベ回復しました
342名称未設定 (JP 0Hb6-mXcu)
垢版 |
2020/05/20(水) 21:13:42.41ID:DJXSGDFfH
君が実現しようと思っているものは
既にそのMacBookに搭載されてるんだよ

浅はかすぎて話にもならない
343名称未設定 (JP 0Hb6-mXcu)
垢版 |
2020/05/21(木) 21:34:37.85ID:unymD9kNH
https://toggl.com/blog/wp-content/uploads/2017/04/toggl-how-to-kill-the-dragon-with-9-programming-languages.jpg
2020/05/25(月) 17:31:57.27ID:JANloWJT0
基本的で悪いが、バックスラッシュってどうやって出すの?
345名称未設定 (ワッチョイW 9ae4-DaGB)
垢版 |
2020/05/25(月) 17:52:08.74ID:FZmjLMGR0
opt+\。
円マークを打つ機会が多いのでなければ
システム環境設定: キーボード/入力ソース/日本語 で、「“¥”で入力する文字」を「\(バックスラッシュ)」にしておく方が便利。
2020/05/25(月) 20:41:03.16ID:GuPCXf7B0
質問です。Swift専用のframeworkで教えてください。

frameworkで複数の.swiftをまとめて公開するサンプルを探しています。
メインのSwift class+別ファイルのenumをセットにしてframeworkで公開したいです。
推測するにmodulemapを自動生成でなく手で書くのではと考えたのですが、サンプルを見つけられていません。

objective-cで書くframeworkだと、複数ヘッダをumbrella headerに書けば良いのですが、swift専用の場合どのようにするのでしょうか?
2020/05/25(月) 23:25:47.11ID:pJtbsclX0
>>345
ありがとうございます
IDは変わってるかもしれないけど質問者です。
2020/05/25(月) 23:27:24.68ID:pJtbsclX0
Texでは\でいけたので同じだとおもってますた
349名称未設定 (ワッチョイ cabb-/uMT)
垢版 |
2020/05/26(火) 06:23:18.06ID:J5ctkVOJ0
>>343
loc = lines of codes
なんて、初めて知った。

slay = destroy
marvel = be surprised = 驚く
350名称未設定 (ワッチョイ cabb-/uMT)
垢版 |
2020/05/26(火) 06:26:06.90ID:J5ctkVOJ0
>>349
https://toggl.com/blog/kill-dragon-comic
2020/05/26(火) 06:57:59.07ID:5rtNnkpm0
よく特徴とらえてるな
クスッとなる
352名称未設定 (ワッチョイ cabb-/uMT)
垢版 |
2020/05/26(火) 06:59:24.78ID:J5ctkVOJ0
>>350
urge = ask strongly
353名称未設定 (ワッチョイ cabb-/uMT)
垢版 |
2020/05/26(火) 07:01:55.11ID:J5ctkVOJ0
>>346
Xcode起動して
File - New - Framework
としてProject作れば良いのでは?
moduemapの編集なんて不要だと思う。
2020/05/26(火) 14:34:14.41ID:kB8j6qh50
>>353
ありがとうございます。自動生成で正しく動くのですね。
もう一度試してみます。
355名称未設定 (ワッチョイ 33bb-IxRY)
垢版 |
2020/05/27(水) 07:46:17.50ID:A0RFO+gY0
XVim2 plug-in使ってる人居る?
俺は、Xcode11.4.1で使ってるけど、
Xcode11.5ではOK?

[Xcode 11.5 No loading box pops up · Issue #297 · XVimProject/XVim2](https://github.com/XVimProject/XVim2/issues/297)

plug-inのロードに失敗するらしいけど。
2020/05/31(日) 22:16:44.43ID:1H34/i6wp
基本でとても恐縮だが、コピペのcnt c とcnt v で使えんの?
357名称未設定 (ワッチョイW 93e4-BNr7)
垢版 |
2020/05/31(日) 23:27:42.73ID:acuiGLbP0
cmd+C, cmd+V
358名称未設定 (ワッチョイW 93e4-BNr7)
垢版 |
2020/05/31(日) 23:35:47.27ID:acuiGLbP0
ctrlキーはカーソルの移動や文字の選択、削除、入力ソースの切替など多用するけどね
359名称未設定 (ワッチョイ dabb-LZmE)
垢版 |
2020/06/05(金) 12:32:26.60ID:uTPGHMqn0
構造体のcomputed property、var bの様にJavaScriptの無名関数の呼出の様な書き方ができるなんて初めて知った。
これって、Swift5から?

struct A {
var a: Int {
2
}
var b = {
3
}()
}
let a = A()
print(a.a) // => 2
print(a.b) // => 3
2020/06/05(金) 12:53:58.17ID:jsefSIDU0
それはclosureでは?
2020/06/05(金) 13:48:56.23ID:tnNG3xPC0
ただのクロージャですね
2020/06/17(水) 22:10:52.62ID:niuUcool0
whileを使って自分の親のViewControllerを辿ってて欲しいカスタムViewControllerを取得したいんやが

var viewController = self.parent
while iet viewController = viewController, viewController is customController == false { 
 viewController = viewController.parent


return viewController as? customController

だとうまく取得できんねん
ええ方法あったら教えとくれ
2020/08/05(水) 22:21:11.71ID:dCWIMKmn0
すいません、教えてください。
Finderのようにキーボードで操作できるリストビューを作りたいのですが
TableviewやListを使い、選択行に色をつけるとかは自分でやらないと行けないのでしょうか。
もしくはそれに適した別のコンポーネントがあるのでしょうか?
2020/08/18(火) 10:10:42.19ID:s2O85+fq0
Swift でもWebAssembly を吐き出せるようになるみたいだね。
2020/10/11(日) 15:50:10.33ID:RKARoncNp
>>364 かなり進化してる。 正式リリースではないが使用に耐えるところまで来ている。
DOMkit でブラウザのDOMに直接アクセスできる。

https://swiftwasm.org/
ブログから読むと良い。
2020/11/19(木) 21:53:27.08ID:pud/oXsad
Dateformatクラスでdateformatプロパティにyyyy-MMddと指定したのに
date(from:"2020/11/11")がパースされてしまうのですが、厳密にするにはどうしたらよいでしょうか
isLenientの値を変えても変化ありませんでした
2020/11/26(木) 06:58:49.41ID:HIulkTTbM
引数の型がStringではないような?
368名称未設定 (ワッチョイW 87af-vHPT)
垢版 |
2020/12/15(火) 04:25:45.87ID:eAzN5TpN0
>>359
swift4てだとどう書くの?
369名称未設定 (ワッチョイW 37f4-Dlqg)
垢版 |
2020/12/18(金) 19:35:38.13ID:tveJ5h140
>>365
JS以外のいかなる言語もDOMに"直接"はアクセスできない。
WebAssemblyもそう。要望は来てるみたいだが計画はない。
なのでJS介しての呼び出し。
意識しなくてもよいかもしれないが"直接"ではなく間接。
キッチリオーバーヘッド出るから。
Microsoftもblazorで優良誤認誘ってるけどなんでみんなここ嘘つくんだ…
WebAssemblyの仕様調べれば分かるのに…
2020/12/25(金) 17:37:13.27ID:sQVKT6chpXMAS
>>369 内部でどう言う作りになっていようが、簡単にアクセスできることが善。

https://i.imgur.com/ddHKyMQ.jpg
https://i.imgur.com/R4dCRLf.jpg
2020/12/25(金) 21:41:33.40ID:CrbxO0q80XMAS
>DOMに直接アクセスできる。

>意識しなくてよいかも知れないが"直接"ではなく関節。キッチリオーバヘッド出るから。

>内部でどう言う作りになっていようが、簡単にアクセスできることが善。

>>370
こいつ全く話噛み合ってねえな。
>>369
ところで昔のWebKitでDOMを扱えたけどあれもJS経由なの?
https://developer.apple.com/documentation/webkit/deprecated_symbols/document_object_models_api_legacy
372名称未設定 (ワッチョイ 7fbb-k50j)
垢版 |
2021/07/05(月) 10:39:33.78ID:aRAIgmvi0
以下はコードの断片に現れる[apiService]は何を意味してるのでしょうか?

ちなみにapiServiceはlet変数で、queryをパラメータとするclosureで使われるapiSeviceの参照方法(weak, unowned or strong)を指定してる様に見えるのですけど...


let responseSubscriber = onCommitSubject
.flatMap { [apiService] query in
apiService.request(with: SearchRepositoryRequest(query: query))
以下略

出典
https://github.com/SatoTakeshiX/SwiftUICatalog
https://github.com/SatoTakeshiX/SwiftUICatalog/blob/master/GitHubApiClientSample/GitHubApiClientSample/Screen/Home/HomeViewModel.swift
373名称未設定 (ワッチョイ 7fbb-k50j)
垢版 |
2021/07/05(月) 10:45:21.38ID:aRAIgmvi0
>>372
ウゥーん、どうやら[apiService]の部分は
Capture Listと呼ばれる言語要素らしい。
374名称未設定 (ワッチョイ 7fbb-k50j)
垢版 |
2021/07/05(月) 10:50:59.00ID:aRAIgmvi0
>>373
強参照: [apiService]
弱参照 implicitly unwrapped: [unowned apiService]
弱参照: [weak apiService]

ref.
https://yamatooo.blog/entry/2021/03/26/083000
375名称未設定 (ワッチョイ 7fbb-k50j)
垢版 |
2021/07/05(月) 11:16:00.55ID:aRAIgmvi0
>>374
see in Language Guide.
Automatic Reference Counting, Resolving Strong Reference Cycles for Closures, Defining a Capture List.
376名称未設定 (ワッチョイ 7fbb-k50j)
垢版 |
2021/07/05(月) 12:17:21.25ID:aRAIgmvi0
7回読み勉強法の極意
1. 何度も読んでると、何が解っていて、不理解なのがどこなのか見えてくる。

flatMapってのはclosureの中でPublisherを動かしてもDownstreamを一本にしてくれるOperatorって事らしい。

Rubyのflattenが2重配列を解いてくれるのと同じ!
e.g.
[0, [1, 2]].flatten // => [0, 1, 2]
2021/08/11(水) 23:03:07.16ID:p+aUDYOna
swiftUIで画像を移動する方法がわからない
位置座標の数値に繰り返し加算して動かす方法ってないの?
なんか他の言語と感覚違ってて
慣れなんだろうけど
378名称未設定 (スププ Sd9f-cNPc)
垢版 |
2021/08/21(土) 03:05:10.16ID:BrmdSShNd
>>377
offsetやpositionでできるよ。
座標に@state変数をいれて。
2021/11/10(水) 01:33:49.74ID:xiom6+O50
ウィジェットってprint()動かないんだけどどうするんすか
2022/02/27(日) 00:10:12.08ID:GxW6qn2O0
別のSWIFTががが
381名称未設定 (JP 0H16-zHTs)
垢版 |
2022/02/27(日) 11:25:05.53ID:9gFTjU95H
海外送金とか一般人には無縁だからなw

マネーロンダリングチェックが厳しくなってから使わなくなったけどw
382名称未設定 (ワッチョイ 6f58-W8Ll)
垢版 |
2022/02/27(日) 17:12:13.72ID:bQc0XZlq0
ロシアではSWIFTが通らなくなる(ビルドエラー的な
383名称未設定 (ワッチョイ ff43-S2Aa)
垢版 |
2022/02/27(日) 17:27:51.85ID:aDMwJgQE0
コンパイルできなくなるんか
2022/02/28(月) 17:41:22.89ID:knxEXHKqa
ぷよぷよ〜!
2022/02/28(月) 21:42:19.95ID:ODpZO1Ns0
今版権はSEGAじゃないかな。
2022/03/01(火) 20:30:43.17ID:/se4xXwO0
XcodeとSwiftがガン、絶対にVScodeとflutterがいい。
387Mac歴34年の爺い (オッペケ Sr5f-X3fv)
垢版 |
2022/04/23(土) 09:56:57.48ID:gPLqfkE6r
>>386
何に対して癌なの?
Swiftに関するスレで、単に癌と言われても分からないよ。
388名称未設定 (ワッチョイ bc43-7LA/)
垢版 |
2022/04/26(火) 21:21:57.64ID:WRPtk5om0
おら、BASICの方が好きだな
389名称未設定 (アウアウウー Sa47-GWjr)
垢版 |
2023/02/01(水) 15:19:32.40ID:u5iuVq9Ha
はじめまして。swiftでiphoneアプリ作ろうと格闘中ですが、apiって自分で作るのはハードル高いの?企業が提供してるのを自分が使うイメージ?
2023/02/01(水) 16:23:14.01ID:FG2ZRU330
Firebase使えば?
391名称未設定 (ワッチョイW cec0-syx/)
垢版 |
2023/02/03(金) 08:41:43.61ID:TbkljcOH0
>>389
質問がよく分からないけどapiという仕組みを作るのは簡単だと思う、どのようなapiにするか中身による
392389 (アウアウウー Sa47-GWjr)
垢版 |
2023/02/03(金) 09:01:16.32ID:pkwSJLIia
>>390
うーん、よく分からん

>>391
簡単なのもあるんだ? 例えばお菓子情報を検索するアプリを作ろうと思って、その情報があるapiから引き出してくる訳だけど、そのapiを作る方法が分からず積んでるんですよー。
393名称未設定 (アウアウウー Sa47-syx/)
垢版 |
2023/02/03(金) 11:15:11.49ID:/LX3EUSMa
>>392
たぶんapiの意味を勘違いしてると思うよ、意味をググってみて。

お菓子情報DB <- apiはここ -> 作りたいApp

お菓子情報のデータベース(DB)をすでに誰かが作っていて、apiを公開(提供)してるならあとは使わせてもらうだけだよ。
自分でDBを作るならDBを読み書きする仕組み(api)を作るんだよ。
394392 (アウアウウー Sa47-GWjr)
垢版 |
2023/02/03(金) 17:06:00.53ID:MfOq3HSia
>>393
ありがとう。ググってみたらDBとアプリを繋ぐインターフェイスなんだね。本見てもわからなくて、お陰で凄いイメージできたっす。

単純なDBならgoogle sheetで作れそうだし、それをapi化すれば何とか形になりそうな気がする。
2023/02/04(土) 17:13:37.91ID:gPmeYaoh0
会社で希望してみたらOKでてM1Max搭載機にしてもらえたんだが、
クリーン→ビルド時間が半分以上減ったので快適になってありがたい
ほんとIntelなんだったんだろうな…
2023/02/04(土) 18:22:29.13ID:JeVoMfYY0
ストレージも高速化してるからな
397名称未設定 (スップ Sd5f-AMYP)
垢版 |
2023/02/04(土) 22:49:50.89ID:ROu5Xovad
初心者ですいません
テキストファイルのデータ全文を読み込んで表示したいです
以下のコードでは失敗している判定になってしまうのか読み込めず、catchの処理がされてしまいます
どこがダメなのでしょうか


# animals.txt
うさぎさん
かめさん
きりんさん
ぞうさん


let PATH = URL(string: "/Users/MYPC/Desktop/animals.txt")!

do {

var TXT_DATA = try String(contentsOf: PATH, encoding: .utf8)
print(TXT_DATA)
}
catch {
print("エラーが発生しました")
}
2023/02/04(土) 23:12:40.44ID:JeVoMfYY0
>>397
URL(string:

URL(fileURLWithPath:
に変える
399名称未設定 (スップ Sd5f-AMYP)
垢版 |
2023/02/04(土) 23:29:24.51ID:ROu5Xovad
>>398
できました!
ありがとうございます!
400名称未設定 (JP 0H03-jZ0L)
垢版 |
2023/02/04(土) 23:43:03.77ID:fjzZi0EPH
エラー時にメッセージも出ないのか
401名称未設定 (ワッチョイW 0f73-iuhE)
垢版 |
2023/02/10(金) 23:50:11.35ID:3hKl1UXF0
SwiftってAppleの作ったコンパイル型言語でなんとなくカッコ良さそう、速そうだから使ってみたけど
文の書き方が悪いのか知らんけどスクレイピング程度ならcurlやgrep組み合わせたシェルスクリプトの方が速い…
402名称未設定 (ワッチョイW cbc0-t27W)
垢版 |
2023/02/24(金) 07:57:19.60ID:R+5TCwsp0
その結果をスマホなんかで利用するからSwiftで書くんやないの?なにがしたいんだ
403名称未設定 (ワッチョイW 65b5-2pOO)
垢版 |
2023/02/24(金) 12:05:43.55ID:a585lW2i0
iOSアプリ作るために覚えるだけであって、それ以上でもそれ以下でもないと思う。
WEBサービス作らならPHPなりなんなりそれ用に覚えるだけ。
2023/04/10(月) 12:50:49.53ID:oh/wg/lt0
突然の質問で申し訳ないです。
title,caption,valueを持つクラスインスタンスの配列を作成したいと思っています。
ただし、Allay要素内のvalueはIntだったりStringだったり別個のインスタンスだったりします。
以下のようなコーディングをしてみたのですが、Root<Int>をRoot<Any>へ変換出来ない旨のコンパイルエラーが発生します。
対応策としてプロトコルにassociatedtypeを設定してRootで準拠させようとしてもRootの時点で型を決めないといけないようで
同様なエラーとなってしまいました。
ElementA(〜) as! Root<Any> は always fails ですし
var elementArray: [Root<some Any>] も同様の結果でした。
何か良い方法はないものでしょうか?

import Foundation

class Root<T: Any>: NSObject {
var title: String
var caption: String
var value: T
init(title: String, caption: String, value: T) {
self.title = title
self.caption = caption
self.value = value
}
}
class ElementA: Root<Int> {}
class ElementB: Root<String> {}
class ElementC: Root<NSObject> {}

var elementArray: [Root<Any>]
elementArray.append(ElementA(title: "A", caption: "CapA", value: 10))
elementArray.append(ElementB(title: "B", caption: "CapB", value: "ABC"))
elementArray.append(ElementC(title: "C", caption: "CapC", value: NSObject()))
2023/04/10(月) 13:02:33.94ID:KAEhlb8J0
AnyObjectにするとか?
2023/04/10(月) 13:10:18.54ID:oh/wg/lt0
404です。
以下訂正
誤:var elementArray: [Root<Any>]
正:var elementArray: [Root<Any>] = []

解決策の一つとして var elementArray: [Any] = [] とすればelementArray.append(〜)のエラーは解決しますが、
最後に以下を実行すると"Nothing"が3つ表示されます。
elementArray.forEach({print(($0 as? Root<Any>)?.value ?? "Nothing")})
当然と言えば当然なんですが、なんとかインチキでできないものかと・・・。
2023/04/10(月) 13:14:51.34ID:VlLpsHnQ0
変数を先に定義してもいいかもね。
あと一つのarrayに複数の変数入れるならinitとか使わんほうがいいとか
struct datafile {
let name: String
let size: Int
let time: Double
}
408名称未設定 (ワッチョイ c56e-1vwO)
垢版 |
2023/04/12(水) 09:19:15.10ID:ooV5Ncg30
404です。
遅くなってすみません。
頂いた内容などを参考に結果として以下のような形になりました。
ジェネリクスクラスを辞めてvalueをAnyとすることでRootを要素とするArrayを作ることができました。
ありがとうございます。
ただ、ElementAのvalueはIntであることが(人間は)判っているのに value as! Int で必ずキャストしないといけないのが難点ですね。

すみません、改行が多いと怒られませいた。次レスへ続きます。
409名称未設定 (ワッチョイ c56e-1vwO)
垢版 |
2023/04/12(水) 09:21:02.27ID:ooV5Ncg30
改行を減らすために少し見辛くてすみません。
import Foundation

class Root: NSObject {
var title: String
var caption: String
var value: Any
init(title: String, caption: String, value: Any) {
self.title = title
self.caption = caption
self.value = value
}
}
class ElementA: Root {init(title: String, caption: String, value: Int) {super.init(title: title, caption: caption, value: value)}}
class ElementB: Root {init(title: String, caption: String, value: String) {super.init(title: title, caption: caption, value: value)}}
class ElementC: Root {init(title: String, caption: String, value: NSObject) {super.init(title: title, caption: caption, value: value)}}

var elementArray: [Root] = []
elementArray.append(ElementA(title: "A", caption: "CapA", value: 10))
elementArray.append(ElementB(title: "B", caption: "CapB", value: "ABC"))
elementArray.append(ElementC(title: "C", caption: "CapC", value: NSObject()))

elementArray.forEach({print($0.value)})
410名称未設定 (ワッチョイ b5b1-hp37)
垢版 |
2024/01/30(火) 14:33:22.81ID:WmNtoPHn0
結局、>>208は無理ってこと?
2024/01/30(火) 22:07:59.02ID:LbAI0VQV0
>>410
2024/02/05(月) 23:44:19.37ID:8ig6Khva0
Appleがシステム構成のためのプログラミング言語「Pkl」をオープンソースでリリース
https://gigazine.net/news/20240205-apple-pkl/
413名称未設定 (ワッチョイ e9a5-chBO)
垢版 |
2024/08/16(金) 14:03:32.84ID:sro+h3w00
iPadのPlaygroundsでアプリが作れるそうですが
最新版はMacのPlaygroundsで
MacのアプリがBuildできるんでしょうか?
414名称未設定 (ワッチョイW 1f02-V315)
垢版 |
2024/08/23(金) 12:24:37.62ID:7qgXkpV90
どっかのスラム街かと思ってる
ゆうたろうがどこから辿るのかのワンパターン
415名称未設定 (ワッチョイW ffb1-Jvp7)
垢版 |
2024/08/23(金) 12:57:44.38ID:uRp4R0p30
それやりたい
SMならあるんじゃ
坊っちゃんスクリプトに次ぐ3大RPG!」
社会もロクに知らない層
https://i.imgur.com/fXz2M9K.jpeg
416名称未設定 (ワッチョイW 9fe9-N/ou)
垢版 |
2024/08/23(金) 14:21:54.69ID:Sm3TBLbC0
運転手に入れるといいぞ
https://i.imgur.com/hcnQ8mE.jpeg
レスを投稿する

16歳の水野カイトが封印の刀を見つけ、時間が裂けて黒い風と亡霊の侍が現れ、霊の時雨と契約して呪われた刀の継承者となる場面

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