C#, C♯, C#相談室 Part94 [無断転載禁止]©2ch.net

レス数が900を超えています。1000を超えると表示できなくなるよ。
2017/04/22(土) 15:36:53.26ID:S+KK7a41
■Visual Studio 2015 Community & Express (無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/

■コードを貼る場合はこちら
http://ideone.com/

■前スレ
C#, C♯, C#相談室 Part92 (実質93)
http://echo.2ch.net/test/read.cgi/tech/1485589613/

■次スレは>>970が建てる事
建てられない場合は他を指定する事。
2017/09/22(金) 15:17:35.43ID:lkenNsuH
オブジェクト指向でいう再利用性って、新しいものを作るときに
既存のソースファイルやDLLをコピペして使うというのとはちょっと意味合いが違うんだけどね
端的に言えば、同じ役割のクラスは同じクラスであるべき、ってことだ
あまり実感ないだろうけど、大規模な開発になってくると必ずそれが崩れてくるんだよ
822デフォルトの名無しさん
垢版 |
2017/10/11(水) 22:06:03.34ID:CxvWYCvq
C#でPDFファイルのテキストやそのテキストに張ってあるハイバーリンクのURLを
取り出したいんだが、どんな方法で可能でしょうか?
2017/10/11(水) 22:13:48.35ID:Qsqjym7k
>>821
東京-大阪間の飛行機と新幹線は同じクラスであるべきなんですか?
2017/10/11(水) 22:20:56.76ID:jolrOeyH
>>822
普通にファイル開いてそっからコピー
825デフォルトの名無しさん
垢版 |
2017/10/11(水) 22:24:38.71ID:CxvWYCvq
>>824
普通に開くってどうやって開くの?
サンプルコード教えて。
2017/10/11(水) 22:30:16.87ID:jolrOeyH
>>825
普通にバイナリファイルとして開く
コードも仕様もそこらにあるからぐぐれ
もともと印刷用だから癖はあるが簡単に読めるぞ
2017/10/12(木) 05:18:07.24ID:FxEVeaRl
あれってAPI提供されてないの?
828デフォルトの名無しさん
垢版 |
2017/10/12(木) 05:55:22.63ID:cp/CfqWL
OfficeやPDF テキスト抽出について
https://qiita.com/mash0510/items/caa41b1f1d8dc4b31ac6

うらる抽出は頑張って
2017/10/12(木) 15:07:41.48ID:o8TlX9Z0
>>822
1. そのままgrep (e.g. grep -a “http://www” pdf-file)
2. pdfgrep
3. pdftotext/pdftohtmlしてgrep

C#関係ないけど用を足すには十分
ハイパーリンクのurlとlink textを紐付けて抽出したいならpdftohtml
2017/10/12(木) 15:30:48.87ID:orqgo34x
C#宣伝してる奴がうざいんですが、どうしたらいんでしょうか?
2017/10/12(木) 15:38:31.04ID:iyTaH+M7
>>830
板違いなのが分からなければ諦めよう
2017/10/12(木) 16:03:05.22ID:o8TlX9Z0
>>830
F#をマスターしてF#を宣伝する

所詮マウンティング合戦だから
新しいマウンティングで対抗しよう
2017/10/12(木) 16:34:04.71ID:yeVmMHMU
>>831
>>832
了解です
834デフォルトの名無しさん
垢版 |
2017/10/12(木) 20:17:41.14ID:rmq6lCFL
>>830
WindowsならC#を推奨するのは間違っていないが?
2017/10/12(木) 20:25:21.77ID:6wxZWyrC
>>834
おまえみたいに読めない奴がうざいって意味であって、C#自体に文句を言ってるわけじゃないでしょ
836デフォルトの名無しさん
垢版 |
2017/10/12(木) 20:29:17.66ID:rmq6lCFL
>>835
自分でC#と言ってるのに、その人のことをC#と表現するからおかしい。

そんな解釈が難しいやりとりが普通の人間はプログラミングなんてやめた方がいい。
2017/10/12(木) 20:35:24.74ID:QAc7UiBI
そもそも、たかが1言語についてそこまで固執したり拒絶するのって、病的だよ。
たかが道具に、なんか人生を預けるレベルで考えてるのがキモイ。
自覚がないのが可哀想。病院で治るのかしらんけど。
2017/10/12(木) 20:40:12.22ID:wRjHo3Vb
なんでコード関係ない話だと盛り上がるんだろうな
2017/10/12(木) 20:42:29.44ID:QAc7UiBI
そういうときだけなんか書く俺みたいなバカが多いからだな
2017/10/12(木) 20:52:00.07ID:ILNtvg14
>>837
単にC#推奨してるだけで固執とか言い出す奴の方が病的じゃね?
C#使えなくて解雇でもされたのかよ w
841デフォルトの名無しさん
垢版 |
2017/10/12(木) 21:04:55.84ID:cp/CfqWL
かなり良い言語だと思うんだけどなあ
2017/10/12(木) 22:36:31.58ID:5L9LK4sR
つーか、最強でしょ(他の言語知らんけど
2017/10/12(木) 23:51:17.58ID:r624txD7
>>830
javaスレにご迷惑おかけしているようで
2017/10/13(金) 00:09:38.51ID:5nsLU4Yv
>>838
プログラマ以外でも参加できるから
845デフォルトの名無しさん
垢版 |
2017/10/13(金) 00:12:46.20ID:9ootMMuk
盛り上がってると思って、またvarかと思ったらバカだった
2017/10/13(金) 00:42:33.07ID:/02if2W5
varを採用してからというもの、C#は今はもうマイナーオワコン言語だからな。
マカー同様スレチで普及したがるのも無理はない。
2017/10/13(金) 01:43:46.38ID:l1jERKvk
>>846
お前Javaスレのキチガイか?
848デフォルトの名無しさん
垢版 |
2017/10/13(金) 02:27:14.63ID:DqOAXvoj
人気の証拠やね
2017/10/13(金) 02:51:53.86ID:GlXmqXn2
C#って、普及してる割にgithubのリポジトリ数が少ないと思うんですが、やっぱりサラリーマン向け言語だから趣味でコード書いて公開する人が少ないんですか?
2017/10/13(金) 03:18:45.27ID:2WV6tJ0M
業界談義はプログラマー板でってローカルルールすら守らないのは何で?
2017/10/13(金) 03:30:12.26ID:hGij+Jvi
ここ数年はGitHubランキング的なのを8-10位あたりでふらふらしてるけど
普及している割にというか「そんなもんじゃね?」という感覚だな
2017/10/13(金) 03:38:06.62ID:/02if2W5
事実から目を背けるなんてまるでマカーのようだ。フフフ、笑える。
2017/10/13(金) 07:49:55.20ID:1BwGqO5B
別にネガキャンとかじゃなくて普通の話題として振るけども

俺の周りの(趣味で)C#やってる人間がみんなKotlinに浮気しだしたんだが
そいつら曰く、
KotlinはなんとなくC#的な雰囲気あって良い
って薦めてくる

まだ触ったことないんだけど、実際のとこどうなの?
2017/10/13(金) 08:21:22.07ID:0vilsSxc
KotlinはなんとなくじゃなくてC#を名指しでリスペクト(公然と丸パクリ)してる
C#もこれまで拡張を繰り返してきて綻びや変えたいけど互換性の問題で今更変えられない部分が沢山出ているので、
それを全面的に見直して綺麗に整理してある
難点を挙げるとすれば、今のところ全体的には素直で普通な言語にまとまってはいるけど
Kotlinがパクリ元のC#やScalaによらずリリース後に独自に入れている部分については
節操がなくあまりセンスが良くなくてScala化の兆しが見えていることかな
あの調子だと結局はScalaみたいに破綻すると思うよ
2017/10/13(金) 08:23:13.20ID:vLRRsIkM
Kotlin [無断転載禁止]©2ch.net
http://mevius.2ch.net/test/read.cgi/tech/1456505161/
2017/10/13(金) 08:41:24.05ID:0vilsSxc
C#が優れてるのは、独自路線の大きな拡張を長期にわたって繰り返し続けているのに
大きな破綻なく複雑にもなりすぎず言語を維持できているという点だ
他の言語の悪いところを見つけるのは簡単だが、トップランナーとして新しいものを作っていくのは遥かに難しいんだよ
その意味ではKotlinは粗探しは非常に上手いが、後者のセンスはC#のように天才的なものは感じないね
2017/10/13(金) 10:40:17.30ID:c2xsGjmq
C#に対する不満てほとんどは
Windows自体か.NET Frameworkに対する文句だからな
2017/10/13(金) 10:42:45.04ID:kWGNHU+4
>>843
処分して、頼むわ
2017/10/13(金) 11:05:21.86ID:iKXV2/QB
linqのクエリ構文が出た時はどうなることかと思ったが、
メソッド構文が出て良かったよ
2017/10/13(金) 11:19:12.84ID:mWlYF3iB
MicrosoftはいまC#よりTypeScriptに力入れてんじゃないの
2017/10/13(金) 12:10:11.58ID:DI18WdpZ
>>860
どっちも
c#はほぼ.NET Coreと.NET Standardに全振り
2017/10/13(金) 12:21:05.14ID:rXsVXlwO
VSCodeは使いやすすぎてびっくりする
TypeScriptでインテリセンスが効くのはわかるが、型書いてない普通のJSでも余裕で効く
エスパーかと思うレベル
このままいくとVSもVSCodeに吸収されそうだね
2017/10/13(金) 12:36:56.29ID:/02if2W5
>>856
Javaが出てときと同じこと言ってる。同一人物か。
2017/10/13(金) 12:41:01.56ID:hGij+Jvi
VSもVSCodeに吸収されそうの意味がさっぱりわからんが
フォントレンダリングだけはちゃっちゃと同じにして

ちゅーかもういい加減Windows全域でフォントのヒンティング切っとけや
本来にもう少しマシなレンダリングできるのに完全に癌になってるじゃろ
2017/10/13(金) 13:12:20.54ID:n8HgMJNJ
やる気があればVistaの時点でやってただろうねw
どうしてMSみたいな大企業が作ってるOSがフリーのLinuxより酷い品質なのかちょっと理解できないけど
2017/10/13(金) 13:17:51.90ID:O16XdCSv
VScodeってそんな魅力的じゃないよ
どちらも使ってるけど総合力じゃ今のVSのほうが数段上

VSCodeも最初と比べるとどんどん起動が遅くなってきてる
2017/10/13(金) 13:42:36.90ID:mWlYF3iB
そらそうやろ
2017/10/13(金) 15:21:15.25ID:bQrnObX5
vscodeって単なるエディタだろ
2017/10/13(金) 15:37:07.18ID:vLRRsIkM
vsも単なるエディタだよね・・・
2017/10/13(金) 15:58:23.34ID:/02if2W5
C#がVB化してユーザーも低スキル化、DQN化したのが嫌われる原因だな。
2017/10/13(金) 16:05:55.56ID:qYIJYs/2
VBとC#なんか変わらんしユーザーというかこの板に変なのがいるだけ
>>869
vsってエディタは聞いたことない
2017/10/13(金) 16:12:38.74ID:/02if2W5
>>871 ←こいつです。
2017/10/13(金) 17:50:46.71ID:k6fDlhS2
マルチプラットフォームなwebプログラミング向けエディタ
って触れ込みだったのに今はVSと比較される様になったのか
2017/10/13(金) 18:32:29.21ID:KDqUmvjk
言語だけぽこぽこ新しいのがでてくるが、
そろそろ言語+標準クラスライブライというか、.NETやJavaみたいな新しい実行環境でてこねぇかな。
いまなら負の遺産を一掃してもっと素晴らしいやつができるはず
875デフォルトの名無しさん
垢版 |
2017/10/13(金) 18:38:11.70ID:tXRzEGrt
要は.NETをJVM化すればいいのか?
Coreがもう少し充実すればええんでね?
2017/10/13(金) 18:54:32.24ID:GNictDD2
>>869
IDEって知ってる?
2017/10/13(金) 18:58:38.89ID:n8HgMJNJ
JavaはともかくC#や.NETにガラガラポンが必要とは思わないな
2017/10/13(金) 19:15:51.57ID:vLRRsIkM
>>876
SATAに駆逐されたデータ転送規格だろ。そんくらい知ってるわ
2017/10/13(金) 19:34:09.07ID:r6+I6nXN
>>878
おもろないわー
2017/10/13(金) 21:44:12.59ID:/02if2W5
関西人がそんなヘタな突っ込みをするわけがない。
2017/10/13(金) 22:05:01.47ID:DPD6/A6x
>>871
まあ俺はほとんどエディタ代わりに使ってたりするけど... w
2017/10/13(金) 22:07:27.85ID:6pOkahl4
C#もそろそろ新言語への乗り換えの時期じゃないか
いつまでも残ってるダサい互換性を切ってnot nullとか新しい機能を導入してさ
C#は実験場にすればいい
2017/10/13(金) 22:12:20.87ID:/02if2W5
プラットフォームが先細りだから無駄な足掻き。
パソコンは名ばかりでもはやオフコン。業務でしか使われない。
884デフォルトの名無しさん
垢版 |
2017/10/13(金) 22:32:01.44ID:HAAysV2z
kotlinの読み方って
ことりん
でOK?
2017/10/13(金) 22:42:29.74ID:7WqKL+Sr
C#使い始めて何年も経つけど未だに乗り換えようと思うほど使いこなせない
思った通りのもの作れるし
2017/10/13(金) 22:43:43.87ID:l1jERKvk
>>882
c#8.0
2017/10/13(金) 23:06:44.79ID:/02if2W5
>>884
日本ではなべやかんって言われてる。
2017/10/14(土) 08:13:04.21ID:Sngz5bnk
我流で必要に迫られて始めたものの、汚いいVB6ちっくなコードしか書けない…
キチンとセオリーに則って基礎からやり直したい
とは言え、(どうせ、この先自分以外の誰かがソース開くことなんかねぇだろな…)と思うと、まぁいっか、と逃げてしまう
2017/10/14(土) 08:20:33.00ID:+XwGR1nT
>>884
ことぅりんっ
2017/10/14(土) 10:44:36.38ID:SVCVJk+z
>>888
惰性でいくら書いても無駄
良いコードを書くには良書を読むに限る
2017/10/14(土) 11:36:43.44ID:iAy6fmRl
目的がきれいなコード書くことならそれに向けて努力すべきだけど
動くものが作りたいならそんなのは遠回り
2017/10/14(土) 11:44:43.92ID:SVCVJk+z
動けばいいと言う奴のプログラムはえてして正しく動かないものだ
2017/10/14(土) 11:58:17.97ID:QGlvjmmK
オラクルのJavaシルバーに合格した。
C#も勉強したいが少し不安。
似てる部分が多いだけに頭が混乱しそう
2017/10/14(土) 16:02:23.40ID:1NT+cnAj
その場で書いて動かして後のこと考えなくていいなら汚いコードでもいいけど
長期的にメンテナンスすること考えたら多少手間でも綺麗なコード書いたほうが結局近道
2017/10/14(土) 16:03:40.35ID:POcZZiww
>>890
おすすめの良書教えて下さい
2017/10/14(土) 16:09:34.83ID:F+wwiVHB
>>894
C#なんてすぐバージョンが上がって推奨されてない書き方です、とか
時代についていけない老害とか馬鹿にされるんだぜ。使い捨てのコードを書く言語だよ。
2017/10/14(土) 16:11:41.65ID:0bz5HDJB
俺も動くものは作れるけど、汚いコードや一箇所仕様変更すると他の関数にまで影響が出て整備がほぼできないコード量産してるわ

整備不可なコードの山を見て、整備しやすいコードの書き方勉強しようとしてるけど、イディオム本読んだりデザインパターン少し調べてもイマイチ理解が深まらなかった
インターフェイスや継承はまったく使ってなかったけど、最近取り入れようとサンプルコード書いてます
2017/10/14(土) 16:26:44.70ID:gHhUphNv
リファクタリング(マーティンファウラー)
エリック・エヴァンスのドメイン駆動設計

C#の本じゃないけどな
2017/10/14(土) 17:13:18.55ID:RBWq+qGD
>>896
そんなことないよw

基本メソッドの中なんてブラックボックスで構わんが、
メソッドの切り分け方とか全体の設計方法に影響を与えるような変更なんか
そうしょっちゅうあるわけじゃないから。

2.0以降考えてもジェネリkック、ラムダ式、非同期メソッド、
あと強いて言えばオプション変数、これぐらいしかないでしょ
2017/10/14(土) 17:23:48.06ID:Gt2cFrms
taskとasync/awaitを忘れてるぞ
2017/10/14(土) 17:26:58.34ID:Gt2cFrms
>非同期メソッド
書いてあったわ
2017/10/14(土) 17:40:04.26ID:ipiotHZI
ジェネリック
ラムダ
var
System.Linq
匿名型
オーバーロード解決の強化
非同期

2.0使うとこの辺りが欲しくなる
903デフォルトの名無しさん
垢版 |
2017/10/14(土) 17:41:10.18ID:GRARGOD6
最近はC++でさえ、がんがん新しい機能取り入れてるからな
無理やり感は否めないけど
2017/10/14(土) 17:42:42.97ID:0bz5HDJB
まぁ実際すぐ動くもの欲しくなったら仕様変更考えない作りにする感じはある
余裕ある時じゃないと設計とか考えないから全然身に付かないけど
大手は分からないけど中小で入ったところは上層はコード共通化したがってたけど、PGはライブラリ各個で作って新機能追加の度に客先別コーティングしてたし、整備性を加えるのはそこそこ手間が掛かるのかなって印象
2017/10/14(土) 17:48:33.48ID:ipiotHZI
標準ライブラリとオープンソースをラップしてプロジェクト用のライブラリを作る
作業効率最適化とリスクを考えるとどうしてもこのラッピング作業が必要になる
社内ライブラリに変わったとしてもこのラッピング作業は必要だからプロジェクトの工数は減らせない
それどころかバグの多さやドキュメントの少なさを考えると社内ライブラリは害悪にすらなりうる
2017/10/14(土) 18:23:25.93ID:EAXt6Ted
refとかoutって使う?
2017/10/14(土) 18:33:33.69ID:+aeiapeN
>>906
TryParseが最初からout使う前提
refは呼び出し先でデータ加工して返すときに無いと面倒
あとどっちもwinapiとかアンマネージのライブラリのときによく使う印象
2017/10/14(土) 18:40:32.10ID:09BRVdeW
あと、2つ以上値を返すときは、今までrefかout使うのが便利だったが
タプルさん新型で、その需要は大分減ったかもしれんね
2017/10/14(土) 18:41:14.11ID:wCRGPfd0
俺は綺麗に書こうと努めてるが、他人のすごいスパゲッティコードを見たとき、
ある意味これはこれですごいなと思う。
俺なら発狂しそうだし、こんな長いコードよくメンテできるなと
これはこれですごいなとは思う。
2017/10/14(土) 18:56:56.78ID:XRdStdss
>>906
多用はしないけどないと困らない?
2017/10/14(土) 19:08:22.69ID:GDzf5CCz
>>909
同意
多分IQはあいつらの方が高いんだろうなって思う
彼らは複雑なものを複雑なまま扱えるからシンプルに置き換えて考えようって気にならないのかもしれない
2017/10/14(土) 19:35:40.73ID:2nqvspLu
メソッドの戻り値によく処理成否のエラーコードと処理結果のオブジェクトや例外情報をプロパティにした自作クラス使っているんだけど、C#7以降はValueTuple使ったほうが楽なのかね
2017/10/14(土) 20:04:11.88ID:TEHxzWsT
>>912
それは普通に例外使え
2017/10/14(土) 20:13:50.41ID:eGxiRqCm
>>907
>>908
ありがとう
>>910
今までは困ってなかったんだけど、あまり使い方を知らなかったせいだとおもう
2017/10/15(日) 10:21:44.73ID:g/8BaPWP
>>909
そういう人って、書いてから何年もごぶさたなコードだって苦もなく修正できるのかな?
だとすれば無条件に感心するけど
自分も作ってすぐのほかほかスパゲティなら勝手わかってるけど、ごぶさたで冷めた
スパゲティはさすがに細部がどうだったか覚えてなくて、麺をほぐすのに苦労するw
2017/10/15(日) 10:34:18.66ID:jiVarmiT
>>915
文系の記憶力を甘く見ない方がいい
あいつら暗記だけで受験や大学卒業まで乗り切ってきたんだぜ
数年前のスパゲティでもここどうなってんのって聞けばちゃんと答えを返してくる
2017/10/15(日) 10:38:44.41ID:pPHSVA6w
プログラミングも暗記がすべてだぞ
2017/10/15(日) 12:31:37.62ID:6sAES7rz
>>915
1ヶ月たってたら厳しいw
2017/10/15(日) 13:52:28.53ID:VwZ2wYnP
>>917
暗記で何とかなるプログラムしかやらないんだな
2017/10/15(日) 13:55:30.87ID:XWjA+gHr
staticタスクをwhileでずっと回してデータリストのデータを監視しててエラーがあったら注意喚起のフォームを開いたりフォームのラベルを変更したりしたいんだけど
staticだからタスクからインヴォーク使えないし、メインフォームに作ったフォーム開いたりするメソッドをデリゲートしようとしても静的フィールド〜でできなくて詰まった・・・

設計見直したほうがいいレベル?
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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